Closed Bug 1432859 Opened 7 years ago Closed 7 years ago

Control key functions don't work on Google Docs or Facebook when privacy.resistFingerprinting = true

Categories

(Core :: DOM: UI Events & Focus Handling, defect)

defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1433592

People

(Reporter: firefox, Unassigned)

Details

User Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0 Build ID: 20180122144257 Steps to reproduce: On Firefox (Nightly) 60.0a, I visited Google Docs and Facebook with privacy.resistFingerprinting manually set to true, and tried to use control keys on a document (on Google Docs) or a status update text box (on Facebook). Actual results: The website did not properly handle the select all (Ctrl + A), copy (Ctrl + C) and paste (Ctrl + V) control keys. It instead just typed whatever the letter after Ctrl was - so pressing Ctrl + A would result in the letter A being typed. On Facebook, the same behaviour occurred when typing a status update, but in addition when typing Ctrl + A the text present in the text box before pressing the key combination is highlighted. I wrote some more details about this here: https://support.mozilla.org/en-US/questions/1201297 The issue went away when I set privacy.resistFingerprinting back to default (false). Expected results: Correct control functionality, i.e. select all, copy, paste, etc.
Component: Untriaged → Event Handling
Product: Firefox → Core
I noticed this too, in my case on Github. The issue seems to be that ctrl + c fires a event for the c key (lacking the ctrl modifier key). I guess all ctrl + KEY combination stop working when KEY itself fires an event. I used https://arthuredelstein.github.io/tordemos/keyboard.html to compare Tor Current implementation with Nightly's reimplementation. (The page linked is broken on Nightly for some reason, just copy the JS of the page into the console manually.) In Nightly: event = keydown key = c charCode = 0 which = 67 code = KeyC keyCode = 67 location = 0 altKey = false ctrlKey = false metaKey = false shiftKey = false ModifierState: event = keypress key = c charCode = 99 which = 99 code = KeyC keyCode = 0 location = 0 altKey = false ctrlKey = false metaKey = false shiftKey = false ModifierState: event = keyup key = c charCode = 0 which = 67 code = KeyC keyCode = 67 location = 0 altKey = false ctrlKey = false metaKey = false shiftKey = false ModifierState: In Tor Browser: event = keydown key = c charCode = 0 which = 67 code = KeyC keyCode = 67 location = 0 altKey = false ctrlKey = true metaKey = false shiftKey = false ModifierState: Control event = keypress key = c charCode = 99 which = 99 code = KeyC keyCode = 0 location = 0 altKey = false ctrlKey = true metaKey = false shiftKey = false ModifierState: Control event = keyup key = Control charCode = 0 which = 17 code = ControlLeft keyCode = 17 location = 1 altKey = false ctrlKey = false metaKey = false shiftKey = false ModifierState:
For reference, Bug 1404608 appears to be what introduced the feature in FF 60.
Status: UNCONFIRMED → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
Component: Event Handling → User events and focus handling
You need to log in before you can comment on or make changes to this bug.