| Summary: | EventHandler::selectCursor() has broken resize over coordinate conversion code | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Simon Fraser (smfr) <simon.fraser> | ||||||
| Component: | UI Events | Assignee: | Simon Fraser (smfr) <simon.fraser> | ||||||
| Status: | RESOLVED FIXED | ||||||||
| Severity: | Normal | CC: | esprehn+autocc, ews-watchlist, fred.wang, glenn, gyuyoung.kim, kondapallykalyan, mitz, pdr, simon.fraser, webkit-bug-importer, zalan | ||||||
| Priority: | P2 | Keywords: | InRadar | ||||||
| Version: | WebKit Nightly Build | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| See Also: |
https://bugs.webkit.org/show_bug.cgi?id=101857 https://bugs.webkit.org/show_bug.cgi?id=156234 |
||||||||
| Attachments: |
|
||||||||
This is apparent in this very textfield, where you get the iBeam cursor over the resizer. Weirdly result.localPoint() is not local when set by RenderBlock::updateHitTestResult() Created attachment 397390 [details]
Patch
*** Bug 156234 has been marked as a duplicate of this bug. *** Comment on attachment 397390 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=397390&action=review > Source/WebCore/page/EventHandler.cpp:1546 > + // FIXME: With right right-aligned text in a box, the renderer here is usually a RenderText, which prevents showing the resize cursor: webkit.org/b/210935. too many rights. > Source/WebCore/page/EventHandler.cpp:1547 > + if (auto layer = downcast<RenderLayerModelObject>(*renderer).layer()) { not sure what the WebKit style at this point, but I'd prefer auto* layer = > not sure what the WebKit style at this point, but I'd prefer auto* layer =
what the WebKit style is even
Created attachment 397392 [details]
Patch
Committed r260615: <https://trac.webkit.org/changeset/260615> All reviewed patches have been landed. Closing bug and clearing flags on attachment 397392 [details]. |
This looks really wrong, and is broken: if (FrameView* view = m_frame.view()) inResizer = layer->isPointInResizeControl(view->windowToContents(roundedIntPoint(result.localPoint()))); Why windowToContents() on the localPoint from a HitTestResult?