RESOLVED FIXED 199349
Tapping on the bottom part of youtube video behaves as if controls were visible
https://bugs.webkit.org/show_bug.cgi?id=199349
Summary Tapping on the bottom part of youtube video behaves as if controls were visible
zalan
Reported 2019-06-30 10:08:01 PDT
Attachments
Patch (7.08 KB, patch)
2019-06-30 10:13 PDT, zalan
no flags
Patch (12.46 KB, patch)
2019-06-30 20:04 PDT, zalan
no flags
Patch (12.49 KB, patch)
2019-06-30 20:30 PDT, zalan
no flags
Patch (12.49 KB, patch)
2019-06-30 20:36 PDT, zalan
no flags
Patch (12.75 KB, patch)
2019-07-01 12:13 PDT, zalan
no flags
zalan
Comment 1 2019-06-30 10:13:52 PDT
Brent Fulgham
Comment 2 2019-06-30 12:54:40 PDT
Comment on attachment 373192 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=373192&action=review Looks good. Is this ready for review? > Source/WebCore/page/ios/ContentChangeObserver.cpp:84 > + for (auto* parent = node.parentNode(); parent && i < 3; parent = parent->parentNode(), ++i) { What is magic about the grandparent node? Should this be encoded as a constant explaining it’s importance?
zalan
Comment 3 2019-06-30 12:59:53 PDT
(In reply to Brent Fulgham from comment #2) > Comment on attachment 373192 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=373192&action=review > > Looks good. Is this ready for review? Almost. > > > Source/WebCore/page/ios/ContentChangeObserver.cpp:84 > > + for (auto* parent = node.parentNode(); parent && i < 3; parent = parent->parentNode(), ++i) { > > What is magic about the grandparent node? Should this be encoded as a > constant explaining it’s importance? Will explain it in the final patch. Opacity behaves different in the context of hittesting than display: none or visibility: hidden.
zalan
Comment 4 2019-06-30 20:04:57 PDT
zalan
Comment 5 2019-06-30 20:30:28 PDT
zalan
Comment 6 2019-06-30 20:36:57 PDT
Simon Fraser (smfr)
Comment 7 2019-07-01 10:51:41 PDT
Comment on attachment 373208 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=373208&action=review > Source/WebCore/ChangeLog:9 > + Synthetic click event should not be dispatched to a node that is initially hidden and becomes visible by the touchStart event. Quality "hidden" here as including opacity:0. Also say that we're deliberately choose a different behavior from macOS.
zalan
Comment 8 2019-07-01 12:13:05 PDT
WebKit Commit Bot
Comment 9 2019-07-01 12:57:45 PDT
Comment on attachment 373247 [details] Patch Clearing flags on attachment: 373247 Committed r247015: <https://trac.webkit.org/changeset/247015>
WebKit Commit Bot
Comment 10 2019-07-01 12:57:47 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 11 2019-07-01 12:58:17 PDT
Daniel Bates
Comment 12 2019-07-04 22:51:09 PDT
Comment on attachment 373247 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=373247&action=review > Source/WebCore/page/ios/ContentChangeObserver.cpp:85 > + constexpr static unsigned numberOfAncestorsToCheckForOpacity = 4; The static is absolutely unnecessary here. constexpr static == constexpr unless the compiler is a piece of nonsensical garbage 😃. In my opinion I would remove the static. > Source/WebCore/page/ios/ContentChangeObserver.cpp:86 > + unsigned i = 0; In my opinion, it is more idiomatic to define this **in*** the for loop ()s <— also scopes it! > Source/WebCore/page/ios/ContentChangeObserver.cpp:88 > + if (!parent->renderStyle() || !parent->renderStyle()->opacity()) Use C++17 if init-statement? 🤷‍♂️ (My line of thinking...dumb compiler will do two calls instead of hoisting the load and doing one for renderStyle(); init-statement is unambiguous what to do...)
Note You need to log in before you can comment on or make changes to this bug.