Bug 245269

Summary: setBaseAndExtent not setting focus as requested
Product: WebKit Reporter: Jamie Birch <jamie>
Component: HTML EditingAssignee: Nobody <webkit-unassigned>
Status: RESOLVED CONFIGURATION CHANGED    
Severity: Normal CC: ahmad.saleem792, brian, gsnedders, karlcow, rniwa, webkit-bug-importer, wenson_hsieh
Priority: P2 Keywords: BrowserCompat, InRadar
Version: Safari Technology Preview   
Hardware: Mac (Apple Silicon)   
OS: macOS 12   
See Also: https://bugs.webkit.org/show_bug.cgi?id=244976
Attachments:
Description Flags
HTML file reproducing the issue. none

Jamie Birch
Reported 2022-09-16 01:36:29 PDT
Created attachment 462386 [details] HTML file reproducing the issue. STR: 1: Open attachment: setbaseandextent_not_setting_focus_as_requested_repro.html 2. Click the "Generate selection" button. Expected results: On-screen logger should report the resulting selection, which reflects the focusNode and focusOffset passed as parameters in the call to Selection.setBaseTextAndExtent(): { "focusNode": "#text:Text outside:", "focusOffset": 13, "anchorNode": "#text:_", "anchorOffset": 1 } Actual results: On-screen logger reports a different focusNode and focusOffset (the start of the text node from the neighbouring element): { "focusNode": "#text:_", "focusOffset": 0, "anchorNode": "#text:_", "anchorOffset": 1 } Firefox and Chrome produce the expected results.
Attachments
HTML file reproducing the issue. (2.76 KB, text/html)
2022-09-16 01:36 PDT, Jamie Birch
no flags
Radar WebKit Bug Importer
Comment 1 2022-09-21 20:44:54 PDT
Karl Dubost
Comment 2 2022-09-21 21:08:54 PDT
Ahmad Saleem
Comment 3 2023-03-14 16:58:48 PDT
I think Selection API ‘Live Range’ fixed it since now we are passing all WPT tests cases mentioned by Comment 02 and also in the attached, I am gettign “Expected Result” using WebKit ToT and Safari Technology Preview 165. { "focusNode": "#text:Text outside:", "focusOffset": 13, "anchorNode": "#text:_", "anchorOffset": 1 }
Ryosuke Niwa
Comment 4 2023-03-14 21:49:28 PDT
Nice
Note You need to log in before you can comment on or make changes to this bug.