Commit Graph

52 Commits

Author SHA1 Message Date
Arthur Edelstein
a22084bcd9 Bug 1433592 - Don't spoof ctrl key modifier for privacy.resistFingerprinting=true r=masayuki 2018-03-05 23:23:00 +02:00
Andreea Pavel
8314a3f558 Backed out changeset f15ab7984211 (bug 1433592) for failing browser chrome at browser/components/resistfingerprinting/test/browser/browser_spoofing_keyboard_event.js on a CLOSED TREE 2018-03-02 13:03:58 +02:00
Arthur Edelstein
14ac093b1f Bug 1433592 - Don't spoof ctrl key modifier for privacy.resistFingerprinting=true r=masayuki 2018-03-01 16:25:00 +02:00
Arthur Edelstein
cf93a60118 Bug 1438795 - Spoof KeyboardEvent.which for privacy.resistFingerprinting. r=masayuki, r=smaug 2018-02-20 16:51:00 -05:00
Boris Zbarsky
af56e4e28a Bug 1436902 part 2. Use NS_INLINE_DECL_REFCOUNTING_INHERITED for some classes that have otherwise-empty QI impls. r=mccr8
MozReview-Commit-ID: 95xACATqz7p
2018-02-12 15:43:55 -05:00
Boris Zbarsky
278eae49b7 Bug 1436508 part 12. Remove nsIDOMKeyEvent. r=masayuki
MozReview-Commit-ID: 8giqG5iHiIf
2018-02-09 11:17:10 -05:00
Boris Zbarsky
3e6529d189 Bug 1436508 part 9. Remove nsIDOMKeyEvent::DOM_KEY* constants. r=masayuki
MozReview-Commit-ID: JXCCrbaMcn
2018-02-09 11:17:09 -05:00
Boris Zbarsky
d235663dba Bug 1436508 part 8. Remove unused nsIDOMKeyEvent members. r=masayuki
MozReview-Commit-ID: 57xpY8vNfW2
2018-02-09 11:17:09 -05:00
Tim Huang
e21040baac Bug 1222285 - Part 1: Spoofing the keyboard event to mimc a certain keyboard layout according to the content-language of the document when 'privacy.resistFingerprinting' is true. r=arthuredelstein,masayuki,smaug
This patch makes Firefox to spoof keyboardEvent.code, keyboardEvent.keycode and
modifier states, for 'Shift', 'Alt', 'Control' and 'AltGraph', when 'privacy.resistFingerprinting'
is true. Firefox will spoof keyboard events as a certain keyboard layout according
to the content language of the document, for example, we use US English keyboard for
English content. Right now, it only supports English contents, we will add more
support for more languages later. The spoofing only affects content, chrome
can still see real keyboard events.

MozReview-Commit-ID: 40JPvwLmMMB
2017-08-29 11:33:27 +08:00
Nika Layzell
d6a3a1baba Bug 1414974 - Part 6: Change WebIDL bindings to refer to nsGlobalWindowInner rather than nsGlobalWindow, r=bz
MozReview-Commit-ID: KbCpDFoWyTe
2017-11-09 10:44:49 -05:00
Aryeh Gregor
aa778c0f48 Bug 1387828 - Reinstate support for initKeyboardEvent; r=smaug
https://github.com/w3c/uievents/issues/112

This is supported by all other UAs.  In the past we had compatibility
problems when trying to add support, but it seems these might be fixed
if we make all arguments optional beyond the first.

The interface chosen for the method is from the spec, which has been
updated to match Chrome.  This is also very similar to WebKit, but the
final four arguments are different from IE.

MozReview-Commit-ID: 36AeX1JwJTt
2017-08-06 16:52:39 +03:00
Masayuki Nakano
1f94e2fe88 Bug 1322736 part.2 Remove "after keydown" and "after keyup" events r=smaug
MozReview-Commit-ID: ICFPyDhgfh7
2016-12-16 16:01:51 +09:00
Masayuki Nakano
820c8ef01e Bug 1322736 part.1 Remove "before keydown" and "before keyup" events r=smaug
MozReview-Commit-ID: 3umPBwTowLc
2016-12-16 15:59:25 +09:00
Aryeh Gregor
5b4cbc571b Bug 1313943 - Legacy event initializers should all do nothing during dispatch; r=bkelly
DOM's initEvent says that it must do nothing during dispatch.  UI Events
says they behave the same as initEvent, so the legacy initializers
defined there also shouldn't do anything during dispatch.  Previously we
only did this for initEvent itself, but other legacy initializers would
function normally during dispatch.

Edge passes the wpt test that's updated in this commit.  Chrome passes
all but initCustomEvent.  It would be nice to expand the test to have
coverage for all our legacy initializers, but the likelihood of
real-world compat issues from this behavior is slim enough that I didn't
think it was worth the effort.

MozReview-Commit-ID: IYLOuwlPGSj
2016-11-01 17:19:59 +02:00
Masayuki Nakano
93601f2106 Bug 1254755 part.4 Rename WidgetKeyboardEvent::location to WidgetKeyboardEvent::mLocation r=smaug
MozReview-Commit-ID: CjT7izri6Vq
2016-05-12 18:17:22 +09:00
Masayuki Nakano
f75bc688b3 Bug 1254755 part.2 Rename WidgetKeyboardEvent::charCode to WidgetKeyboardEvent::mCharCode r=smaug
And mCharCode shouldn't be compared with NS_VK_*, nsIDOMKeyEvent::DOM_VK_*. Additionally, when it's compared with a character constant, cast isn't necessary.

MozReview-Commit-ID: JMT614copjG
2016-05-13 16:06:18 +09:00
Masayuki Nakano
55b60a37e4 Bug 1254755 part.1 Rename WidgetKeyboardEvent::keyCode to WidgetKeyboardEvent::mKeyCode r=smaug
And also WidgetKeyboardEvent::mKeyCode should be compared with NS_VK_* rather than nsIDOMKeyEvent::DOM_VK_*.

MozReview-Commit-ID: IKjQ1nr8XYe
2016-05-12 17:13:49 +09:00
Neil Deakin
30108e55a0 Bug 1101975, handle access keys in content process before menus, r=masayuki 2016-05-11 08:56:42 -04:00
Masayuki Nakano
76ca470b8f Bug 1257759 part.7 Add new internal events which represent key events on plugin r=smaug
If a plugin process posts native key events to the widget, it needs to check if the key combination is reserved by chrome because if it's reserved by chrome, the reserved shortcut key handler should be executed and the event shouldn't be handled by the focused plugin.

This patches add eKeyDownOnPlugin and eKeyUpOnPlugin.  nsXBLWindowKeyHandler will listen to them and handle them as normal keydown and keypress or keyup event.  Note that these events won't be fired on content in the default event group and won't be sent to the remote process.

MozReview-Commit-ID: H5OKPLtVdr6
2016-04-23 01:22:49 +09:00
chunminchang
c9f2ac2bd1 Bug 1110030 - part5 - Expose KeyboardEventInit dictionary. r=masayuki, r=smaug 2016-03-15 13:46:29 +08:00
Arata Furukawa
a3f2b4162e Bug 1259655 - part 1 Rename WidgetEventTime::time to WidgetEventTime::mTime r=masayuki
MozReview-Commit-ID: 7lBCEVkanvF
2016-03-28 13:29:42 +09:00
Kyle Huey
e95edb30a9 Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Masayuki Nakano
5b6ea82246 Bug 895274 part.15 Rename NS_KEY_AFTER_UP to eAfterKeyUp r=smaug 2015-08-29 08:58:28 +09:00
Masayuki Nakano
e87167ba2e Bug 895274 part.14 Rename NS_KEY_BEFORE_UP to eBeforeKeyUp r=smaug 2015-08-29 08:58:28 +09:00
Masayuki Nakano
7056a1116a Bug 895274 part.13 Rename NS_KEY_AFTERE_DOWN to eAfterKeyDown r=smaug 2015-08-29 08:58:28 +09:00
Masayuki Nakano
169a152c93 Bug 895274 part.12 Rename NS_KEY_BEFORE_DOWN to eBeforeKeyDown r=smaug 2015-08-29 08:58:27 +09:00
Masayuki Nakano
3533e4ee27 Bug 895274 part.11 Rename NS_KEY_DOWN to eKeyDown r=smaug 2015-08-29 08:58:27 +09:00
Masayuki Nakano
f2d4e68851 Bug 895274 part.10 Rename NS_KEY_UP to eKeyUp r=smaug 2015-08-29 08:58:27 +09:00
Masayuki Nakano
fc091c723d Bug 895274 part.9 Rename NS_KEY_PRESS to eKeyPress r=smaug 2015-08-29 08:58:27 +09:00
Masayuki Nakano
374fcf2d55 Bug 895274 part.5 Rename NS_EVENT_NULL to eVoidEvent r=smaug 2015-08-29 08:58:26 +09:00
Masayuki Nakano
d36f87a852 Bug 895274 part.3 Make the enum of event messages a named enum IGNORE IDL r=smaug 2015-08-26 21:56:59 +09:00
Masayuki Nakano
5473d2dcb9 Bug 895274 part.1 Rename WidgetEvent::message to WidgetEvent::mMessage r=smaug 2015-08-22 10:34:51 +09:00
Aryeh Gregor
6e1dae88e0 Bug 874842 - Return Event instead of nsIDOMEvent 2015-08-12 14:39:31 +03:00
Andrew McCreight
92010d3e4c Bug 1152551, part 2 - Fix mode lines in dom/. r=jst 2015-05-03 15:32:37 -04:00
Masayuki Nakano
5f6c4c9612 Bug 1124608 Support D3E EventModifierInit r=smaug 2015-04-13 16:16:13 +09:00
Masayuki Nakano
f1536d537d Bug 1119609 part.3 Implement converting methods from key/code value to key/code name index r=smaug 2015-02-19 15:50:19 +09:00
Masayuki Nakano
6d0278414d Bug 900372 Remove the warnings of renaming .key values r=smaug 2014-12-30 10:47:53 +09:00
Gina Yeh
5155a32fae Bug 989198, Patch 2: Implementation of BeforeAfterKeyboardEvent, sr=smaug, r=masayuki. 2014-11-03 15:05:32 +08:00
Ryan VanderMeulen
6434df9710 Backed out 6 changesets (bug 989198, bug 1082963) for causing bug 1083231.
Backed out changeset a7c972407578 (bug 1082963)
Backed out changeset 94d1b30bde00 (bug 989198)
Backed out changeset 01e064ceb505 (bug 989198)
Backed out changeset f5a538109e36 (bug 989198)
Backed out changeset 3ff227d79d74 (bug 989198)
Backed out changeset 186743fc6f6d (bug 989198)

CLOSED TREE
2014-10-16 12:57:18 -04:00
Gina Yeh
558913f1c8 Bug 989198, Patch 2: Implementation of BeforeAfterKeyboardEvent, sr=smaug, r=masayuki.
---
 dom/events/BeforeAfterKeyboardEvent.cpp          |   92 ++++++++++++++++++++++
 dom/events/BeforeAfterKeyboardEvent.h            |   45 +++++++++++
 dom/events/EventDispatcher.cpp                   |    3 +
 dom/events/KeyboardEvent.cpp                     |   60 ++++++++------
 dom/events/KeyboardEvent.h                       |    8 +-
 dom/events/moz.build                             |    2 +
 dom/events/test/test_all_synthetic_events.html   |    4 +
 dom/interfaces/events/nsIDOMEvent.idl            |    7 ++
 dom/tests/mochitest/general/test_interfaces.html |   48 ++++++-----
 dom/webidl/BeforeAfterKeyboardEvent.webidl       |   24 ++++++
 dom/webidl/moz.build                             |    1 +
 11 files changed, 250 insertions(+), 44 deletions(-)
 create mode 100644 dom/events/BeforeAfterKeyboardEvent.cpp
 create mode 100644 dom/events/BeforeAfterKeyboardEvent.h
 create mode 100644 dom/webidl/BeforeAfterKeyboardEvent.webidl
2014-10-14 15:09:20 +08:00
Masayuki Nakano
431e57750e Bug 1046101 part.5 Rename NS_KEY_EVENT to eKeyboardEventClass r=smaug 2014-08-04 14:28:48 +09:00
Masayuki Nakano
5dac7e446a Bug 1046101 part.1 Rename nsEventStructType to mozilla::EventClassID r=smaug 2014-08-04 14:28:46 +09:00
Masayuki Nakano
f52a19f2be Bug 1024864 Warn KeyboardEvent.key value change when KeyboardEvent.key is read and its key value is obsolete r=smaug 2014-06-14 11:24:16 +09:00
Masayuki Nakano
6a3eac713f Bug 865649 part.1 Implement KeyboardEvent.code r=smaug 2014-05-25 11:08:58 +09:00
Masayuki Nakano
2ff0cc40d5 Bug 999645 Cancel implementing KeyboardEvent.initKeyboardEvent() because it completely breaks feature detection in web apps r=smaug 2014-04-25 13:16:20 +09:00
Masayuki Nakano
783ce29390 Bug 930893 part.2 Implement KeyboardEvent.initKeyboardEvent() r=smaug 2014-04-14 15:37:48 +09:00
Masayuki Nakano
7d2a67ea0a Bug 930893 part.1 Implement constructor of KeyboardEvent r=smaug 2014-04-14 15:37:47 +09:00
Masayuki Nakano
1846735823 Bug 993234 part.1 Implement KeyboardEvent.isComposing r=smaug 2014-04-10 16:11:36 +09:00
Nathan Froyd
c29a24516f Bug 984538 - use static_cast in NS_NewDOM*Event rather than CallQueryInterface; r=smaug 2014-03-17 16:00:11 -04:00