Changeset 143475 in webkit


Ignore:
Timestamp:
Feb 20, 2013 10:27:03 AM (11 years ago)
Author:
robert@webkit.org
Message:

input element with placeholder text and width set to 100% on focus causes overflow even after losing focus
https://bugs.webkit.org/show_bug.cgi?id=109020

Reviewed by David Hyatt.

Source/WebCore:

Tests: fast/forms/input-placeholder-layout-view.html

fast/forms/textarea-placeholder-layout-view.html

Placeholder elements don't affect layout so shouldn't contribute overflow either.

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::layout):

LayoutTests:

  • fast/forms/input-placeholder-layout-view-expected.html: Added.
  • fast/forms/input-placeholder-layout-view.html: Added.
  • fast/forms/textarea-placeholder-layout-view-expected.html: Added.
  • fast/forms/textarea-placeholder-layout-view.html: Added.
Location:
trunk
Files:
4 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r143470 r143475  
     12013-02-20  Robert Hogan  <robert@webkit.org>
     2
     3        input element with placeholder text and width set to 100% on focus causes overflow even after losing focus
     4        https://bugs.webkit.org/show_bug.cgi?id=109020
     5
     6        Reviewed by David Hyatt.
     7
     8        * fast/forms/input-placeholder-layout-view-expected.html: Added.
     9        * fast/forms/input-placeholder-layout-view.html: Added.
     10        * fast/forms/textarea-placeholder-layout-view-expected.html: Added.
     11        * fast/forms/textarea-placeholder-layout-view.html: Added.
     12
    1132013-02-20  Rouslan Solomakhin  <rouslan@chromium.org>
    214
  • trunk/Source/WebCore/ChangeLog

    r143471 r143475  
     12013-02-20  Robert Hogan  <robert@webkit.org>
     2
     3        input element with placeholder text and width set to 100% on focus causes overflow even after losing focus
     4        https://bugs.webkit.org/show_bug.cgi?id=109020
     5
     6        Reviewed by David Hyatt.
     7
     8        Tests: fast/forms/input-placeholder-layout-view.html
     9               fast/forms/textarea-placeholder-layout-view.html
     10
     11        Placeholder elements don't affect layout so shouldn't contribute overflow either.
     12
     13        * rendering/RenderTextControlSingleLine.cpp:
     14        (WebCore::RenderTextControlSingleLine::layout):
     15
    1162013-02-20  Mark Lam  <mark.lam@apple.com>
    217
  • trunk/Source/WebCore/rendering/RenderTextControlSingleLine.cpp

    r140286 r143475  
    178178        placeholderBox->style()->setWidth(Length(innerTextRenderer->width() - placeholderBox->borderAndPaddingWidth(), Fixed));
    179179        placeholderBox->style()->setHeight(Length(innerTextRenderer->height() - placeholderBox->borderAndPaddingHeight(), Fixed));
     180        bool neededLayout = placeholderBox->needsLayout();
    180181        bool placeholderBoxHadLayout = placeholderBox->everHadLayout();
    181182        placeholderBox->layoutIfNeeded();
     
    191192            // logic should be shared with RenderBlock::layoutBlockChild.
    192193            placeholderBox->repaint();
     194        }
     195        // The placeholder gets layout last, after the parent text control and its other children,
     196        // so in order to get the correct overflow from the placeholder we need to recompute it now.
     197        if (neededLayout) {
     198            m_overflow.clear();
     199            computeOverflow(clientLogicalBottom());
    193200        }
    194201    }
Note: See TracChangeset for help on using the changeset viewer.