diff options
-rw-r--r-- | render/box_textarea.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/render/box_textarea.c b/render/box_textarea.c index 44f5c0b16..1586d71c4 100644 --- a/render/box_textarea.c +++ b/render/box_textarea.c @@ -239,6 +239,7 @@ bool box_textarea_create_textarea(html_content *html, textarea_flags ta_flags; plot_font_style_t fstyle; bool read_only = false; + bool disabled = false; struct form_control *gadget = box->gadget; const char *text; @@ -257,6 +258,11 @@ bool box_textarea_create_textarea(html_content *html, if (err != DOM_NO_ERR) return false; + err = dom_html_text_area_element_get_disabled( + textarea, &disabled); + if (err != DOM_NO_ERR) + return false; + /* Get the textarea's initial content */ err = dom_html_text_area_element_get_value(textarea, &dom_text); if (err != DOM_NO_ERR) @@ -270,6 +276,11 @@ bool box_textarea_create_textarea(html_content *html, if (err != DOM_NO_ERR) return false; + err = dom_html_input_element_get_disabled( + input, &disabled); + if (err != DOM_NO_ERR) + return false; + if (gadget->type == GADGET_PASSWORD) ta_flags = TEXTAREA_PASSWORD; else @@ -289,7 +300,7 @@ bool box_textarea_create_textarea(html_content *html, text = ""; } - if (read_only) + if (read_only || disabled) ta_flags |= TEXTAREA_READONLY; gadget->data.text.data.gadget = gadget; |