tabCapture cursor rendering of carret inaccurate
Reported by
thembr...@gmail.com,
Apr 6 2016
|
|||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36 Steps to reproduce the problem: a) Position of mirrored caret cursor is inaccurate: 1. use tabCapture API to get a video stream of a tab 2. Move cursor over selectable text or input field on a website Expected behavior: cursor should be in mirrored at the same position. What went wrong: See here for a side-by-side view on Linux (right window is the tabCapture API output) https://www.youtube.com/watch?v=RIOjD68aZBk The mirrored cursor is in in the wrong position (too much down by a few pixels) Or here (cursor moving in a straight line, mirrored one jumps around): https://youtu.be/NVnInx2TuHU b) same setup as above, but now select text on the website (slowly). Expected behavior: caret cursor should be mirrored while selecting text. What went wrong: See at 0:13 of the video https://youtu.be/RIOjD68aZBk?t=13s Caret cursor is hidden while selecting text. c) Cursor not mirrored while window has no focus move cursor over website while an other window has focus Expected behavior: cursor should be mirrored too and change when hovering links etc. What went wrong: cursor is not mirrored at all: See https://www.youtube.com/watch?v=rp7jQCRHvwI&feature=youtu.be (developer tools have focus) What is the expected behavior? What went wrong? see above Did this work before? N/A Chrome version: 49.0.2623.110 Channel: stable OS Version: Flash Version: Shockwave Flash 21.0 r0 Same behavior both on Linux and ChromeOS (I did not test this any other platforms) Implementation Bug of the cursor mirroring: https://crbug.com/550555
,
Apr 25 2016
regarding #1: custom cursors are now rendered in 52.0.2715.0 (tested on OSX).
,
May 5 2016
Unable to repro this issue on Ubuntu Trusty (14.04) for Google Chrome Stable Version - 50.0.2661.94 Screen-recordings are attached. @thembrown: Could you please perform the steps mentioned beneath and let us know your observations. 1. Update your Google Chrome to Latest Stable Version - 50.0.2661.94 2. Re-test the same on a clean profile [chrome://settings -> Add Person] Thank you.
,
May 5 2016
Hi, sorry. My description was a bit imprecise. The rendering in Chrome is fine in all cases - just the cursor rendered in the media stream obtained by the tabCapture API is broken. An easy way to reproduce would be to cast the content of the tab to a Chromecast (using the Google Cast extension).
,
May 5 2016
Just re-checked on 50.0.2661.75 with an mew/empty profile directory. Still able to reproduce: https://youtu.be/ZYvzZhW_qIs If you don't have a Chromecast at hand, you could also use https://chrome.google.com/webstore/detail/screencastify-screen-vide/mmeijimgabbpbgpdklnllpncmdofkcpn?hl=en with Tab recording. It applies a workaround for this issue through a injected content-script in the meanwhile, but it'll still record chrome-internal pages like chrome://version AS-IS where content-scripts cannot be injected. That's what I used to record those videos. However I'm also able to reproduce it the same way with tab-mirroring using Google Cast.
,
May 5 2016
Sidenote: It seems that the cursor mirroring implementation ( https://crbug.com/550555 ) always assumes that cursors are anchored at the to-right corner. Which causes non-arrow cursors like the caret to be positioned incorrectly and jump around.
,
May 5 2016
Thank you for providing more feedback. Adding requester "rnimmagadda@chromium.org" for another review and adding "Needs-Review" label for tracking. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 6 2016
@isheriff: Could you please look into this issue and let us know if this related to the issue - 550555 ? Thank you.
,
May 6 2016
"anchored at the to-right corner" should read: anchored at the top-left corner (i.e. 0,0 in CSS "cursor:" coordinates)
,
May 6 2016
Thank you for providing more feedback. Adding requester "rnimmagadda@chromium.org" for another review and adding "Needs-Review" label for tracking. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 6 2016
What is the use case for mirroring cursor without the tab in focus ? I think that is intentional at this point. Lets keep this bug to track the inaccurate carret display.
,
May 6 2016
I don't have a real use-case for this, I was just confused to see an accidentally un-focused tab repond to mouse (hover) events as usual without seeing the cursor mirrored. Admittedly this is probably not very important in practice.
,
Oct 6 2016
,
Oct 22 2016
I see this at home on my Windows machine as well. I think comment #6 accurately explains the problem. qiangchen: Since you recently worked on a mouse cursor rendering bug, would you be willing to take this on? Should be a simple math/position adjustment, taking into account the hot point coordinate of the cursor?
,
Oct 24 2016
I can take a look. But I do not think #6 explains correctly, as by code reading, I found hot point processing explicitly. So there must be something else.
,
Nov 15 2016
Bumping to M57. Please update if that's wrong.
,
Jan 10 2017
With the fix to issue 676687 , this issue should be fixed now. Please try with Canary on Win or Chromium ToT (M57 and later)on Linux.
,
Jan 10 2017
dbbrooks: Can you please perform verification testing of tab mirroring cursor rendering with Chromecast? The following cursor issues (i.e., how the cursor is rendered on the Chromecast) should be gone on all of Win+Mac+CrOS: 1. The hot point of the cursor should be accounted for. That means for an arrow, the click point is the tip of the arrow; for the text caret, the click point is approx. the middle (vertically) of the text caret; for the pointy hand (over buttons), the click point should be at the tip (or a little bit underneath) the finger. You can determine this by slowly moving the mouse into and out of text boxes or buttons on a page. 2. The various cursors should be rendered correctly (i.e., correct graphics). On Windows, the text caret used to be semi-invisible; but that was a bug. It should look just like what the user sees on the local screen; or a suitable substitute. 3. The position of the cursor is correct regardless of the browser window size. So, please try resizing the browser window randomly and make sure the cursor on the Chromecast corresponds to what you see on the local machine (e.g., if pointing at the first letter of a sentence, it should be the same on the Chromecast). 4. The position of the cursor should be correct whether using a high-DPI (e.g., Retina) display or not, regardless of browser window size. Thanks!
,
Jan 11 2017
I still need to test retina and CrOS, but here's an update since I hit an issue.
The text caret is invisible on Win (well it's rendered in white I think). Win 57.0.2978.0 {#442756}
,
Jan 11 2017
Just finished, CrOS and Mac (+ retina display) look good. It's just the issue mentioned in #19. So I can't mark this as verified yet. |
|||||||||||
►
Sign in to add a comment |
|||||||||||
Comment 1 by thembr...@gmail.com
, Apr 6 2016