Граф коммитов

3 Коммитов

Автор SHA1 Сообщение Дата
Ehsan Akhgari 298702866a Bug 997805 - Correctly restore the placeholder text after the editor object is re-attached to a text control as a result of a reframe; r=bzbarsky
Recomputing the placeholder visibility does not require the placeholder div
itself to be present, as the only information required for that is the current
value of the text control which is present either way.  This patch fixes
nsTextEditorState::ValueWasChanged and nsTextEditorState::UpdatePlaceholderVisibility
to that effect.

But the real fix is in nsTextEditorState::UpdatePlaceholderText, where after
setting the placeholder text on the anonymous div, we redo the placeholder
visibility computation.  Since this function can be called from
HTMLTextAreaElement::CreatePlaceholderNode during frame construction, the
GetValue function may return the wrong value since the editor has not properly
been set up yet, resulting in this bug.  And this function call is useless
anyway, because changing the placeholder text does not really affect the
result of the visibility computation, so there is no need to do this work
in the first place.
2014-04-25 16:40:44 -04:00
Wes Kocher f08090e9a9 Backed out changeset 669fdba2ceef (bug 997805) for reftest bustage on a CLOSED TREE 2014-04-25 15:12:22 -07:00
Ehsan Akhgari c8f5bacca6 Bug 997805 - Correctly restore the placeholder text after the editor object is re-attached to a text control as a result of a reframe; r=bzbarsky
Recomputing the placeholder visibility does not require the placeholder div
itself to be present, as the only information required for that is the current
value of the text control which is present either way.  This patch fixes
nsTextEditorState::ValueWasChanged and nsTextEditorState::UpdatePlaceholderVisibility
to that effect.

But the real fix is in nsTextEditorState::UpdatePlaceholderText, where after
setting the placeholder text on the anonymous div, we redo the placeholder
visibility computation.  Since this function can be called from
HTMLTextAreaElement::CreatePlaceholderNode during frame construction, the
GetValue function may return the wrong value since the editor has not properly
been set up yet, resulting in this bug.  And this function call is useless
anyway, because changing the placeholder text does not really affect the
result of the visibility computation, so there is no need to do this work
in the first place.
2014-04-25 16:40:44 -04:00