Changeset 107072 in webkit


Ignore:
Timestamp:
Feb 8, 2012 4:34:24 AM (12 years ago)
Author:
commit-queue@webkit.org
Message:

CSS2 overflow: scrollbar not visible on SELECT elements when overflow: scroll is set.
https://bugs.webkit.org/show_bug.cgi?id=69993

Patch by Antaryami Pandia <antaryami.pandia@motorola.com> on 2012-02-08
Reviewed by Simon Fraser.

Source/WebCore:

The issue was that for overflow:scroll, currently webkit always places the horizontal
and vertical scrollbar. But Since the listbox renderer handles its scrolling,
we should not set scrollbar for list-box.

Tests: fast/css/getComputedStyle/computed-style-select-overflow.html

fast/forms/select-overflow-scroll-inherited.html
fast/forms/select-overflow-scroll.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlock):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateScrollInfoAfterLayout):

LayoutTests:

  • fast/css/getComputedStyle/computed-style-select-overflow-expected.txt: Added.
  • fast/css/getComputedStyle/computed-style-select-overflow.html: Added.
  • fast/forms/select-overflow-scroll-inherited.html: Added.
  • fast/forms/select-overflow-scroll.html: Added.
  • platform/gtk/fast/forms/select-overflow-scroll-expected.txt: Added.
  • platform/gtk/fast/forms/select-overflow-scroll-inherited-expected.txt: Added.
Location:
trunk
Files:
6 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r107071 r107072  
     12012-02-08  Antaryami Pandia  <antaryami.pandia@motorola.com>
     2
     3        CSS2 overflow: scrollbar not visible on SELECT elements when overflow: scroll is set.
     4        https://bugs.webkit.org/show_bug.cgi?id=69993
     5
     6        Reviewed by Simon Fraser.
     7
     8        * fast/css/getComputedStyle/computed-style-select-overflow-expected.txt: Added.
     9        * fast/css/getComputedStyle/computed-style-select-overflow.html: Added.
     10        * fast/forms/select-overflow-scroll-inherited.html: Added.
     11        * fast/forms/select-overflow-scroll.html: Added.
     12        * platform/gtk/fast/forms/select-overflow-scroll-expected.txt: Added.
     13        * platform/gtk/fast/forms/select-overflow-scroll-inherited-expected.txt: Added.
     14
    1152012-02-08  Nikolas Zimmermann  <nzimmermann@rim.com>
    216
  • trunk/Source/WebCore/ChangeLog

    r107067 r107072  
     12012-02-08  Antaryami Pandia  <antaryami.pandia@motorola.com>
     2
     3        CSS2 overflow: scrollbar not visible on SELECT elements when overflow: scroll is set.
     4        https://bugs.webkit.org/show_bug.cgi?id=69993
     5
     6        Reviewed by Simon Fraser.
     7
     8        The issue was that for overflow:scroll, currently webkit always places the horizontal
     9        and vertical scrollbar. But Since the listbox renderer handles its scrolling,
     10        we should not set scrollbar for list-box.
     11
     12        Tests: fast/css/getComputedStyle/computed-style-select-overflow.html
     13               fast/forms/select-overflow-scroll-inherited.html
     14               fast/forms/select-overflow-scroll.html
     15
     16        * rendering/RenderBlock.cpp:
     17        (WebCore::RenderBlock::layoutBlock):
     18        * rendering/RenderLayer.cpp:
     19        (WebCore::RenderLayer::updateScrollInfoAfterLayout):
     20
    1212012-02-08  Nikolas Zimmermann  <nzimmermann@rim.com>
    222
  • trunk/Source/WebCore/rendering/RenderBlock.cpp

    r107032 r107072  
    13271327
    13281328    // For overflow:scroll blocks, ensure we have both scrollbars in place always.
    1329     if (scrollsOverflow()) {
     1329    if (scrollsOverflow() && style()->appearance() != ListboxPart) {
    13301330        if (styleToUse->overflowX() == OSCROLL)
    13311331            layer()->setHasHorizontalScrollbar(true);
  • trunk/Source/WebCore/rendering/RenderLayer.cpp

    r107032 r107072  
    23382338   
    23392339    // overflow:scroll should just enable/disable.
    2340     if (renderer()->style()->overflowX() == OSCROLL)
     2340    if (m_hBar && renderer()->style()->overflowX() == OSCROLL)
    23412341        m_hBar->setEnabled(horizontalOverflow);
    2342     if (renderer()->style()->overflowY() == OSCROLL)
     2342    if (m_vBar && renderer()->style()->overflowY() == OSCROLL)
    23432343        m_vBar->setEnabled(verticalOverflow);
    23442344
Note: See TracChangeset for help on using the changeset viewer.