Chromium Code Reviews
DescriptionEnsure that the cursor visibility state is restored correctly on CursorManager creation.
We hide the cursor when we receive a touch down message and show it when we receive a normal mouse
message, i.e. a mouse message which is not synthesized by Windows in response to touch.
The CursorManager is the class which manages the cursor visibility state, etc. We have a single instance
of this class which has shared by all desktop chrome windows. When all the windows are closed, the cursor
manager instance is destroyed. When a new CursorManager instance is created on the same thread, it sets
the cursor visibility as true, regardless of the last visibility state, i.e. a user may have touched the window
and then closed it, etc.
Fix is to remember the last state of the cursor in a static variable in the CursorManager class, and use it to
initialize any new CursorManager instances.
BUG=447153
TEST=Covered by wm unittest CursorManagerCreateDestroyTest.VisibilityTest
Committed: https://crrev.com/712e1caac53b0cd18f48046c877bdeb2dad55fdb
Cr-Commit-Position: refs/heads/master@{#386156}
Patch Set 1 #
Messages
Total messages: 8 (3 generated)
|
|||||||||||||||||||||||||||||||||||||