Bug 210935 - Resize cursor doesn't show if there's text under the resize control
Summary: Resize cursor doesn't show if there's text under the resize control
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: UI Events (show other bugs)
Version: Safari Technology Preview
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-04-23 14:36 PDT by Simon Fraser (smfr)
Modified: 2023-01-11 14:40 PST (History)
4 users (show)

See Also:


Attachments
Test (3.21 KB, text/html)
2020-04-23 14:36 PDT, Simon Fraser (smfr)
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Fraser (smfr) 2020-04-23 14:36:30 PDT
Created attachment 397385 [details]
Test

Hover over the resize cursor in the attached testcase. You don't see the resize cursor, instead getting an iBeam.
Comment 1 Ahmad Saleem 2022-10-29 11:24:43 PDT
It seems to be fixed with following Commit:

https://src.chromium.org/viewvc/blink?view=revision&revision=160554

It did changes here:

https://github.com/WebKit/WebKit/blob/9856bc8b756610ac4e3a4a2c480e6332f50e0cd7/Source/WebCore/page/EventHandler.cpp#L1544

___

Webkit (current):

inResizer = layerRenderer.layer()->isPointInResizeControl(roundedIntPoint(result.localPoint()));

Chrome Patch:

inResizer = layer->isPointInResizeControl(result.roundedPointInMainFrame(), ResizerForPointer);

*** Need to be changed ***

inResizer = layerRenderer.layer()->isPointInResizeControl(roundedIntPoint(result.roundedPointInMainFrame(), localPoint);

___

If someone can confirm the approach, I am happy to do PR. Only problem / build error might be that it could only accept 1 argument but now we are providing it two. For that, if we can do:

auto joined = roundedIntPoint(result.roundedPointInMainFrame(), localPoint);

and then pass on single argument.
Comment 2 Ahmad Saleem 2022-10-29 11:25:35 PDT
To this:

inResizer = layerRenderer.layer()->isPointInResizeControl(result.roundedPointInMainFrame(), localPoint);