RESOLVED FIXED 56966
[GTK] window.innerWidth and window.innerHeight are wrong when using native scrollbars
https://bugs.webkit.org/show_bug.cgi?id=56966
Summary [GTK] window.innerWidth and window.innerHeight are wrong when using native sc...
Martin Robinson
Reported 2011-03-23 15:22:54 PDT
fast/overflow/horizontal-scroll-after-back.html fails on the bots. It appears that window.innerWidth and window.innerHeight do not include the space allocated for scrollbars, yet they should.
Attachments
Patch (6.17 KB, patch)
2011-03-23 15:31 PDT, Martin Robinson
no flags
Patch with better ChangeLog (6.48 KB, patch)
2011-04-26 16:57 PDT, Martin Robinson
no flags
Martin Robinson
Comment 1 2011-03-23 15:31:00 PDT
Martin Robinson
Comment 2 2011-03-23 15:43:51 PDT
Xan Lopez
Comment 3 2011-04-26 16:01:15 PDT
Comment on attachment 86710 [details] Patch Get out of the queue.
Martin Robinson
Comment 4 2011-04-26 16:08:57 PDT
Comment on attachment 86710 [details] Patch Remarking for review. The committed patch just skipped the original failing test. :)
Martin Robinson
Comment 5 2011-04-26 16:21:22 PDT
Comment on attachment 86710 [details] Patch r- because my ChangeLog is actually quite inadequate.
Martin Robinson
Comment 6 2011-04-26 16:57:07 PDT
Created attachment 91182 [details] Patch with better ChangeLog
Eric Seidel (no email)
Comment 7 2011-05-01 14:46:20 PDT
The commit-queue does a last-minute check before landing to make sure the bug is still open, the patch is still not-obsolete, and cq+ is still set. You never have to worry about racing the cq. You can land things yourself and it won't complain, you can also mark things cq-, and unless you're exceptionally unlucky you'll always win. :)
Martin Robinson
Comment 8 2011-05-01 14:48:33 PDT
(In reply to comment #7) > The commit-queue does a last-minute check before landing to make sure the bug is still open, the patch is still not-obsolete, and cq+ is still set. You never have to worry about racing the cq. You can land things yourself and it won't complain, you can also mark things cq-, and unless you're exceptionally unlucky you'll always win. :) Was this comment meant for another bug?
Eric Seidel (no email)
Comment 9 2011-05-01 14:52:59 PDT
(In reply to comment #8) > (In reply to comment #7) > > The commit-queue does a last-minute check before landing to make sure the bug is still open, the patch is still not-obsolete, and cq+ is still set. You never have to worry about racing the cq. You can land things yourself and it won't complain, you can also mark things cq-, and unless you're exceptionally unlucky you'll always win. :) > > Was this comment meant for another bug? Nope. Was replying mostly to comment #3. :)
Martin Robinson
Comment 10 2011-05-01 15:00:33 PDT
(In reply to comment #9) > Was this comment meant for another bug? Oh, I see. Here is the sequence of events in this case: 1. I opened this bug about a failing test. 2. I landed a patch with --no-close, referencing this bug. The patch skipped the test. 3. I uploaded a patch containing a real fix to this same bug. 4. Xan saw comment #2 and assumed the first patch fixed the bug. He removed the r? from the patch. I talked about this with Daniel Bates the other day and he said his tactic is to land the first (skiplist) patch and them mark the bug as REOPENED. Perhaps that would make things less confusing in the future.
Eric Seidel (no email)
Comment 11 2011-05-23 15:27:38 PDT
Comment on attachment 91182 [details] Patch with better ChangeLog Do other ports do similarly?
Martin Robinson
Comment 12 2011-05-23 21:16:14 PDT
(In reply to comment #11) > (From update of attachment 91182 [details]) > Do other ports do similarly? GTK+ is unique in itss ScrollView implementation because main frame scrollbars are drawn and owned by the containing GtkScrolledWindow. Thus, GTK+'s ScrollView must provide custom implementations of some ScrollView methods. At the same time GTK+ ScrollViews do not have a native widget backing them. At some point I'd like to increase code sharing, but it seems orthogonal to this patch.
Eric Seidel (no email)
Comment 13 2011-05-29 14:45:21 PDT
(In reply to comment #12) > (In reply to comment #11) > > (From update of attachment 91182 [details] [details]) > > Do other ports do similarly? > > GTK+ is unique in itss ScrollView implementation because main frame scrollbars are drawn and owned by the containing GtkScrolledWindow. Really? Doesn't the Mac port use native scrollbars too? Maybe those are drawn by the WebView though instead of an NSScrollView. > Thus, GTK+'s ScrollView must provide custom implementations of some ScrollView methods. At the same time GTK+ ScrollViews do not have a native widget backing them. I'm not sure I understand but I believe you this stuff is complicated. :) > At some point I'd like to increase code sharing, but it seems orthogonal to this patch. Yeah, I just worry that we're moving further from that, rather than closer.
Martin Robinson
Comment 14 2011-11-08 09:37:34 PST
This test is passing now that we've switched to using WebCore scrollbars in the DRT.
Martin Robinson
Comment 15 2011-11-08 09:38:06 PST
(In reply to comment #14) > This test is passing now that we've switched to using WebCore scrollbars in the DRT. I should mention that window.innerWidth and window.innerHeight are still incorrect when using native GTK+ main frame scrollbars.
Martin Robinson
Comment 16 2015-05-07 17:35:22 PDT
WebKit2 doesn't use native scrollbars.
Note You need to log in before you can comment on or make changes to this bug.