Bug 87680

Summary: Restore original value of mock scrollbars enabled in InternalSettings
Product: WebKit Reporter: Caio Marcelo de Oliveira Filho <cmarcelo>
Component: New BugsAssignee: Marcelo Lira <marcelo.lira>
Status: RESOLVED FIXED    
Severity: Critical CC: abarth, dglazkov, gustavo, gyuyoung.kim, jamesr, morrita, ossy, philn, rakuco, webkit.review.bot, xan.lopez
Priority: P1    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch
none
Patch
none
Archive of layout-test-results from ec2-cr-linux-01
none
Patch
none
Archive of layout-test-results from ec2-cr-linux-04
none
Patch
none
Patch
none
Patch
none
Patch none

Caio Marcelo de Oliveira Filho
Reported 2012-05-28 15:29:28 PDT
Restore original value of mock scrollbars enabled in InternalSettings
Attachments
Patch (2.49 KB, patch)
2012-05-28 15:38 PDT, Caio Marcelo de Oliveira Filho
no flags
Patch (2.32 KB, patch)
2012-05-28 15:56 PDT, Caio Marcelo de Oliveira Filho
no flags
Patch (5.26 KB, patch)
2012-05-28 16:18 PDT, Caio Marcelo de Oliveira Filho
no flags
Archive of layout-test-results from ec2-cr-linux-01 (5.58 MB, application/zip)
2012-05-28 19:01 PDT, WebKit Review Bot
no flags
Patch (6.70 KB, patch)
2012-05-29 03:37 PDT, Caio Marcelo de Oliveira Filho
no flags
Archive of layout-test-results from ec2-cr-linux-04 (6.05 MB, application/zip)
2012-05-29 09:56 PDT, WebKit Review Bot
no flags
Patch (11.03 KB, patch)
2012-09-03 12:12 PDT, Marcelo Lira
no flags
Patch (14.48 KB, patch)
2012-09-10 11:40 PDT, Marcelo Lira
no flags
Patch (11.89 KB, patch)
2012-09-11 08:22 PDT, Marcelo Lira
no flags
Patch (11.06 KB, patch)
2012-09-11 10:00 PDT, Marcelo Lira
no flags
Caio Marcelo de Oliveira Filho
Comment 1 2012-05-28 15:38:52 PDT
Caio Marcelo de Oliveira Filho
Comment 2 2012-05-28 15:46:20 PDT
In Qt port this setting was leaking causing other tests to FAIL because sizes of the elements were wrong. Some ports do reset this setting in their DRTs, but Qt didn't. In general, I think that InternalSettings should properly restore all its properties to their original values.
Caio Marcelo de Oliveira Filho
Comment 3 2012-05-28 15:49:30 PDT
One example of problem was to run: Tools/Scripts/run-webkit-tests fast/dom/window-scroll-scaling.html fast/dynamic/008.html 008.html fails without the patch, but when run-webkit-tests retry it, it passes, marking it as flaky.
Caio Marcelo de Oliveira Filho
Comment 4 2012-05-28 15:56:18 PDT
Caio Marcelo de Oliveira Filho
Comment 5 2012-05-28 16:11:07 PDT
Fixing the export files for GTK and Mac. I'll upload a new patch soon.
Caio Marcelo de Oliveira Filho
Comment 6 2012-05-28 16:11:18 PDT
Fixing the export files for GTK and Win. I'll upload a new patch soon.
Build Bot
Comment 7 2012-05-28 16:17:30 PDT
Caio Marcelo de Oliveira Filho
Comment 8 2012-05-28 16:18:42 PDT
WebKit Review Bot
Comment 9 2012-05-28 19:01:22 PDT
Comment on attachment 144408 [details] Patch Attachment 144408 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/12846330 New failing tests: css1/font_properties/font_size.html css1/box_properties/border_left_width.html css1/basic/class_as_selector.html css1/font_properties/font_family.html css1/box_properties/border_bottom.html css1/box_properties/border_bottom_width.html css1/box_properties/border_right_width.html css1/basic/id_as_selector.html css1/basic/inheritance.html css1/box_properties/border.html css1/color_and_background/background_position.html css1/box_properties/border_right_inline.html css1/box_properties/border_left.html css1/cascade/cascade_order.html css1/color_and_background/background.html css1/conformance/forward_compatible_parsing.html css1/box_properties/border_top.html css1/box_properties/border_style.html css1/formatting_model/height_of_lines.html css1/basic/containment.html css1/color_and_background/background_attachment.html css1/basic/comments.html css1/classification/white_space.html css1/color_and_background/background_repeat.html css1/font_properties/font.html css1/formatting_model/floating_elements.html css1/classification/display.html css1/classification/list_style_type.html
WebKit Review Bot
Comment 10 2012-05-28 19:01:29 PDT
Created attachment 144424 [details] Archive of layout-test-results from ec2-cr-linux-01 The attached test failures were seen while running run-webkit-tests on the chromium-ews. Bot: ec2-cr-linux-01 Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'> Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
Csaba Osztrogonác
Comment 11 2012-05-29 00:04:34 PDT
*** Bug 87700 has been marked as a duplicate of this bug. ***
Caio Marcelo de Oliveira Filho
Comment 12 2012-05-29 03:37:21 PDT
Caio Marcelo de Oliveira Filho
Comment 13 2012-05-29 03:37:57 PDT
Comment on attachment 144503 [details] Patch Getting some feedback from Chromium EWS while I try to make sure I can test this locally.
Caio Marcelo de Oliveira Filho
Comment 14 2012-05-29 03:38:12 PDT
(In reply to comment #13) > (From update of attachment 144503 [details]) > Getting some feedback from Chromium EWS while I try to make sure I can test this locally. this = chromium failures
WebKit Review Bot
Comment 15 2012-05-29 09:56:14 PDT
Comment on attachment 144503 [details] Patch Attachment 144503 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/12843564 New failing tests: css1/font_properties/font_size.html css1/box_properties/border_left_width.html css1/basic/class_as_selector.html css1/font_properties/font_family.html css1/box_properties/border_bottom.html css1/box_properties/border_bottom_width.html css1/box_properties/border_right_width.html css1/basic/id_as_selector.html css1/basic/inheritance.html css1/box_properties/border.html css1/color_and_background/background_position.html css1/box_properties/border_right_inline.html css1/box_properties/border_left.html css1/cascade/cascade_order.html css1/color_and_background/background.html css1/conformance/forward_compatible_parsing.html css1/box_properties/border_top.html css1/box_properties/border_style.html css1/formatting_model/height_of_lines.html css1/basic/containment.html css1/color_and_background/background_attachment.html css1/basic/comments.html css1/classification/white_space.html css1/color_and_background/background_repeat.html css1/font_properties/font.html css1/formatting_model/floating_elements.html css1/classification/display.html css1/classification/list_style_type.html
WebKit Review Bot
Comment 16 2012-05-29 09:56:20 PDT
Created attachment 144573 [details] Archive of layout-test-results from ec2-cr-linux-04 The attached test failures were seen while running run-webkit-tests on the chromium-ews. Bot: ec2-cr-linux-04 Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'> Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
Caio Marcelo de Oliveira Filho
Comment 17 2012-05-31 12:38:21 PDT
I couldn't reproduce the problems locally. In my pixel tests I get the scrollbar images just fine. Chromium port developers, any idea of what could be going on?
Csaba Osztrogonác
Comment 18 2012-06-28 00:22:22 PDT
*** Bug 90091 has been marked as a duplicate of this bug. ***
Csaba Osztrogonác
Comment 19 2012-06-28 00:28:47 PDT
(In reply to comment #18) > *** Bug 90091 has been marked as a duplicate of this bug. *** One more problem because of this bug. ^^^^^^^^^^ I had to skip a test to hide this bug (and make testing work on Qt port ... ) http://trac.webkit.org/changeset/121414
Csaba Osztrogonác
Comment 20 2012-06-28 04:11:31 PDT
Here is a solution for Qt port only: https://bugs.webkit.org/show_bug.cgi?id=90155 We can revert that out once this general fix lands.
Marcelo Lira
Comment 21 2012-09-03 12:12:45 PDT
Adam Barth
Comment 22 2012-09-03 12:43:16 PDT
Is there non-Qt code that should change in this patch as well?
Caio Marcelo de Oliveira Filho
Comment 23 2012-09-03 12:47:40 PDT
(In reply to comment #22) > Is there non-Qt code that should change in this patch as well? It seems to me DRT implementations of other ports that are resetting this shouldn't need anymore. Similar change than what was done for Qt DRT.
Adam Barth
Comment 24 2012-09-03 12:51:52 PDT
Perhaps we should change them all at the same time.
Marcelo Lira
Comment 25 2012-09-03 13:00:16 PDT
(In reply to comment #24) > Perhaps we should change them all at the same time. I'll try.
Marcelo Lira
Comment 26 2012-09-05 08:57:13 PDT
(In reply to comment #24) > Perhaps we should change them all at the same time. Taking a closer look, I would rather have this patch as it is and fill bugs for the other ports to follow. I prefer not to mess around with ports I can't perfectly understand, build or test (mac for instance). Since the cr-linux build machine is green, and it run the tests, it's safe that the patch will not interfere with the ones still using mock scrollbars in their DRTs.
Marcelo Lira
Comment 27 2012-09-10 11:40:59 PDT
Adam Barth
Comment 28 2012-09-10 12:37:15 PDT
Comment on attachment 163173 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=163173&action=review > Tools/DumpRenderTree/chromium/TestShell.cpp:-252 > - m_prefs.mockScrollbarsEnabled = true; Why did you remove this line? It seems that will stop compositing/ tests from having mock scrollbars.
Marcelo Lira
Comment 29 2012-09-10 13:17:00 PDT
(In reply to comment #28) > (From update of attachment 163173 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=163173&action=review > > > Tools/DumpRenderTree/chromium/TestShell.cpp:-252 > > - m_prefs.mockScrollbarsEnabled = true; > > Why did you remove this line? It seems that will stop compositing/ tests from having mock scrollbars. The initial state of the mock scroll bars should be set by the tests via javascript. For example, some tests include LayoutTests/compositing/resources/mock_scrollbars.js that sets the mock scroll bars like this: window.internals.settings.setMockScrollbarsEnabled(true);
Adam Barth
Comment 30 2012-09-10 13:22:09 PDT
Do all the compositing tests do that or does this patch change the behavior?
Marcelo Lira
Comment 31 2012-09-10 13:44:13 PDT
(In reply to comment #30) > Do all the compositing tests do that or does this patch change the behavior? The compositing tests that deal with geometry include the javascript that set the initial value of the mock scroll bars. It's reasonable to expect that the chromium DRT settings gives the same results as the one in the mentioned javascript, since all ports must have similar results in the tests. Besides, the cr-linux buildbot will run the chromium tests and we will see.
James Robinson
Comment 32 2012-09-10 13:55:13 PDT
Comment on attachment 163173 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=163173&action=review >>> Tools/DumpRenderTree/chromium/TestShell.cpp:-252 >>> - m_prefs.mockScrollbarsEnabled = true; >> >> Why did you remove this line? It seems that will stop compositing/ tests from having mock scrollbars. > > The initial state of the mock scroll bars should be set by the tests via javascript. > For example, some tests include LayoutTests/compositing/resources/mock_scrollbars.js > that sets the mock scroll bars like this: > > window.internals.settings.setMockScrollbarsEnabled(true); No, that's incorrect. We want to explicitly override the mock scrollbar setting for this directory without setting the value in javascript. If you want to patch this please preserve this behavior for chromium DRT.
Marcelo Lira
Comment 33 2012-09-11 08:19:45 PDT
(In reply to comment #32) > (From update of attachment 163173 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=163173&action=review > > >>> Tools/DumpRenderTree/chromium/TestShell.cpp:-252 > >>> - m_prefs.mockScrollbarsEnabled = true; > >> > >> Why did you remove this line? It seems that will stop compositing/ tests from having mock scrollbars. > > > > The initial state of the mock scroll bars should be set by the tests via javascript. > > For example, some tests include LayoutTests/compositing/resources/mock_scrollbars.js > > that sets the mock scroll bars like this: > > > > window.internals.settings.setMockScrollbarsEnabled(true); > > No, that's incorrect. We want to explicitly override the mock scrollbar setting for this directory without setting the value in javascript. If you want to patch this please preserve this behavior for chromium DRT. Ok, I'll remove the changes to chromium DRT.
Marcelo Lira
Comment 34 2012-09-11 08:22:52 PDT
Adam Barth
Comment 35 2012-09-11 09:18:21 PDT
Comment on attachment 163366 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=163366&action=review > Tools/DumpRenderTree/efl/DumpRenderTreeChrome.cpp:-194 > - DumpRenderTreeSupportEfl::setMockScrollbarsEnabled(true); Everything in this patch looks fine except this line. It seems EFL will no longer use mock scrollbars everywhere after this patch. Perhaps we should leave this line unchanged?
Marcelo Lira
Comment 36 2012-09-11 10:00:55 PDT
Adam Barth
Comment 37 2012-09-11 10:44:10 PDT
Comment on attachment 163393 [details] Patch Thanks!
WebKit Review Bot
Comment 38 2012-09-11 11:30:49 PDT
Comment on attachment 163393 [details] Patch Clearing flags on attachment: 163393 Committed r128210: <http://trac.webkit.org/changeset/128210>
WebKit Review Bot
Comment 39 2012-09-11 11:30:56 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.