Read-only Git mirror of the Mercurial gecko repositories at https://hg.mozilla.org. How to contribute: https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html
Go to file
Masayuki Nakano 6ea1231fae Bug 1498823 - Make KeymapWrapper::FilterEvents() ignore synthesized KeyPress events r=m_kato
With an event filter method, we're logging all key events on any widgets to
check whether a key is pressed or not, to set
WidgetKeyboardEvent::mIsRepeat properly.  If iBus and Fcitx work as expected,
they synthesize key events with setting their own modifier state which indicate
the events are synthesized by IME.  In this expected case, synthesized key
events are not caught by the filter.

On the other hand, in some environment, they keep handling key events
asynchronously but they or something another module synthesizes key events
without the flag and such events are caught by the filter because the events
are posted into the event queue.  Therefore, we decide that such synthesized
events are always generated by auto-repeat (first events which are always
filtered by IME are treated as first press, and then, synthesized events are
treated as repeated events because of no key release events).

This patch makes KeymapWrapper::FilterEvents() ignore coming KeyPress
events if:
- the time is exactly same as previous KeyPress event
- and IMContextWrapper instance is now waiting a GDK_KEY_PRESS event
- and hardware_keycode of waiting GDK_KEY_PRESS event is same as
  keyCode of the KeyPress event

Differential Revision: https://phabricator.services.mozilla.com/D15380

--HG--
extra : moz-landing-system : lando
2018-12-28 07:02:05 +00:00
.cargo Bug 1504507 - Update serde branch for changes in WR PR #3264. r=kats 2018-11-05 13:14:07 +00:00
.vscode Bug 1514820 - Recommend a VSCode extension for IDL language highlighting r=jya 2018-12-18 19:43:33 +00:00
accessible Bug 1430149 - Don't define INITGUID when not needed. r=aklotz 2018-12-25 18:49:39 +01:00
browser Bug 1474376 - Update browser_devices_get_user_media_screen.js test w/window+screen, remove application test. r=jkt 2018-12-27 23:40:40 +00:00
build Bug 1515512 - Require rustc 1.31. r=glandium 2018-12-27 02:22:54 +00:00
caps Bug 1512029 part 1 - Stop calling JS_GetCompartmentPrincipals for system compartments. r=bzbarsky 2018-12-16 14:59:46 +00:00
chrome Bug 1511393 - Use c-basic-offset: 2 in Emacs mode line for C/C++ code. r=nbp 2018-12-01 04:52:05 +09:00
config Bug 1515843 - Stop building host static libraries. r=ted 2018-12-21 23:00:00 +00:00
db Backed out changeset 7408e4b312e9 (bug 1514683) because it's not the correct way to enable SQLITE_DBCONFIG_DEFENSIVE. 2018-12-21 20:44:51 -05:00
devtools Bug 1515951 - Update Debugger Frontend v112. r=bhackett 2018-12-27 12:25:41 -05:00
docshell Bug 1478742 - IPDLize nsDocShellLoadState; r=nika 2018-12-19 22:22:09 +00:00
dom Bug 1516576: Adjust dom/svg/*.cpp files to include their own header first. r=longsonr 2018-12-28 02:47:10 +00:00
editor Bug 1441619 - Add crashtest. r=masayuki 2018-12-18 15:09:52 +09:00
embedding Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
extensions Bug 1503393 - adjust tests for localhost proxying r=mayhemer 2018-12-03 16:28:14 +02:00
gfx Bug 1516062 - Turn on NEON when using gcc or clang on aarch64 r=jrmuizel 2018-12-26 16:27:08 +00:00
gradle/wrapper Bug 1509572 - Part 1: Bump Gradle wrapper to 4.10.2; decouple script from Gradle version. r=snorp 2018-11-26 21:42:27 +00:00
hal Bug 1511393 - Use c-basic-offset: 2 in Emacs mode line for C/C++ code. r=nbp 2018-12-01 04:52:05 +09:00
image Bug 1515800 - Rename some more GetCurrentTime methods to avoid winbase.h bustage r=birtles,bzbarsky 2018-12-21 05:37:58 +00:00
intl Bug 1513958 - Update Fluent.jsm to version 0.10.0. r=stas 2018-12-18 21:49:44 +00:00
ipc Bug 1515770 - don't generate commented-out skeleton implementations of IPDL protocols; r=froydnj 2018-12-21 15:03:26 +00:00
js Bug 1515963 - Add vixl::GdbDisassembleInstruction. r=sstangl 2018-12-27 18:52:32 +01:00
layout Bug 1508762 Part 2 - Fix a restyle bug if there's column-span:all under ib-split setting. r=dholbert 2018-12-28 02:25:40 +00:00
media Bug 1515461 - Make AVCaptureSession stopRunning synchronous; r=jib 2018-12-21 17:07:06 +00:00
memory Bug 1511251 - Remove redundant and costly assert. r=njn 2018-12-05 14:45:52 +00:00
mfbt Bug 1515434 - Only activate the deactivation of -Wc++2a-compat from clang 6 r=botond 2018-12-19 21:18:46 +00:00
mobile Backed out changeset 3c54ad1e420e (bug 1515966) for causing eslint failure on DownloadNotifications.jsm CLOSED TREE 2018-12-28 00:22:34 +02:00
modules Bug 1516241 - Disable LSNG pref on Nightly; r=gsvelto 2018-12-24 14:42:42 +01:00
mozglue Bug 1505482: Allow DLL patcher to resolve some backward short JMPs (r=aklotz) 2018-12-26 17:28:37 +00:00
netwerk Bug 1510241 - Proxy HttpChannel MIME blocking message to the child process. r=flod,dragana 2018-12-27 06:25:51 +00:00
nsprpub Bug 1477680, NSPR 4.20 RTM, no code change, only version number, r=me 2018-08-28 16:21:01 +02:00
other-licenses Bug 1514532 - the modules/libmar directory isn't clang formatted and there are a few deprecation warnings in app update code. r=mhowell 2018-12-17 11:17:21 -08:00
parser Bug 1374012 - Update to Expat 2.2.1. Part 18: various miscellaneous changes. r=erahm 2018-12-27 15:13:26 +00:00
python Bug 1515512 - Require rustc 1.31. r=glandium 2018-12-27 02:22:54 +00:00
security No Bug, mozilla-central repo-update HSTS HPKP remote-settings - a=repo-update r=RyanVM 2018-12-27 14:20:53 +00:00
services No Bug, mozilla-central repo-update HSTS HPKP blocklist remote-settings - a=repo-update r=RyanVM 2018-12-20 13:30:40 +00:00
servo Bug 1516365 - Update the Rust target version for bindgen. r=xidorn 2018-12-25 23:09:29 +00:00
startupcache Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
storage Bug 1513892 - Part 1: Cache usage in the database table; r=asuth 2018-12-21 06:26:25 +01:00
taskcluster Bug 1514087: [taskgraph] Add an option to not optimize target tasks in cron graphs; r=dustin 2018-12-26 14:43:34 +00:00
testing Bug 1516493 - Use process count for AWSY page load count and explicitly drop the preallocated process r=kmag 2018-12-28 03:41:05 +00:00
third_party Bug 1516304 - Re-vendor rust dependencies. r=kats 2018-12-25 01:11:35 +00:00
toolkit Merge inbound to mozilla-central a=merge 2018-12-27 23:56:49 +02:00
tools Bug 1515942 - Enable ESLint for gfx/ (manual fixes). r=kats 2018-12-27 09:45:01 +00:00
uriloader Bug 1394188 - Make tab labels not change during reload. r=bzbarsky,florian 2018-12-17 12:33:29 +00:00
view Bug 1322780 - Part 2: Support unprefixed min-content and max-content. r=mats,emilio 2018-12-18 18:47:37 +00:00
widget Bug 1498823 - Make KeymapWrapper::FilterEvents() ignore synthesized KeyPress events r=m_kato 2018-12-28 07:02:05 +00:00
xpcom Backed out 2 changesets (bug 1422235) for failing reftests: tests/layout/reftests/css-mediaqueries/mq_print_iframe_overflow-block-ref.html. CLOSED TREE 2018-12-24 22:31:38 +02:00
xpfe/appshell Bug 1514360 - Add nsIWindowMediator.getMostRecentBrowserWindow() r=Ehsan 2018-12-14 22:53:21 +00:00
.arcconfig Bug 1460463 - Update .arcconfig to make history mutable; r=gps 2018-05-09 23:49:52 +00:00
.clang-format Bug 1512716 - Re-indent NS_QUERYFRAME macros after clang-format. r=TYLin 2018-12-07 20:00:18 +00:00
.clang-format-ignore Bug 1513205 - Remove tests from the ignore list r=Ehsan 2018-12-13 20:36:45 +00:00
.cron.yml Bug 1514087: [taskgraph] Add an option to not optimize target tasks in cron graphs; r=dustin 2018-12-26 14:43:34 +00:00
.eslintignore Bug 1515942 - Enable ESLint for gfx/ (manual fixes). r=kats 2018-12-27 09:45:01 +00:00
.eslintrc.js Bug 1515942 - Enable ESLint for gfx/ (manual fixes). r=kats 2018-12-27 09:45:01 +00:00
.flake8 Bug 1508889 - Remove ipc/chromium from the lists of third-party code. r=Ehsan 2018-11-21 03:11:37 +00:00
.gdbinit Bug 1486903 - Add "ftl" command to dump frame subtree to .gdbinit. r=Ehsan 2018-08-28 20:20:21 +00:00
.gdbinit_python
.git-blame-ignore-revs Bug 1511501 - Add information about the tree-wide clang-format to .git-blame-ignore-revs r=kats 2018-12-04 05:01:02 +00:00
.gitignore Bug 1513450 - Do not ignore .rej/.orig files. r=firefox-build-system-reviewers,nalexander 2018-12-17 21:41:01 +00:00
.hg-annotate-ignore-revs Bug 1508324 - Create the .hg-annotate-ignore-revs file to be used with hg smart-annotate. r=ehsan DONTBUILD NPOTB 2018-11-30 01:16:10 -02:00
.hg-format-source Bug 1511181 - Quick fix for .hg-format-source that has an empty line. r=ehsan, a=aryx 2018-11-30 13:25:44 +02:00
.hgignore Bug 1513450 - Do not ignore .rej/.orig files. r=firefox-build-system-reviewers,nalexander 2018-12-17 21:41:01 +00:00
.hgtags No bug - Tagging mozilla-central 3386ff76878d83496bb822d09115c77472808b53 with FIREFOX_NIGHTLY_65_END a=release DONTBUILD CLOSED TREE 2018-12-10 07:29:08 -08:00
.lldbinit Bug 1481555: Use lldb's python API to summarise nsAtoms. r=froydnj 2018-08-08 15:11:22 +00:00
.mailmap
.taskcluster.yml BUG 1500166 - notify ciduty by email if a nightly hook fails + fix identation issue. r=tomprice 2018-12-20 18:39:43 +02:00
.trackerignore Bug 1486468 - Add .trackerignore file to avoid GNOME Tracker indexing mozilla-central files. r=ahal 2018-08-27 16:45:03 +02:00
.yamllint
.ycm_extra_conf.py
aclocal.m4 Bug 1513798 - Revert bug 638149 and leave it to configure to set -dead_strip. r=nalexander 2018-12-18 10:50:06 +09:00
AUTHORS Bug 1481409 - Use HTTPS protocol for Mozilla's Credits link in AUTHORS file r=mossop 2018-08-13 16:39:30 +00:00
build.gradle Bug 1506658 - Add @Nullable or @NonNull to all APIs. r=snorp,rbarker,geckoview-reviewers 2018-12-20 15:22:45 +00:00
Cargo.lock Bug 1516304 - Re-vendor rust dependencies. r=kats 2018-12-25 01:11:35 +00:00
Cargo.toml Bug 1507524 - Move webrender to gfx/wr. r=jrmuizel 2018-11-22 21:47:48 +00:00
client.mk Bug 1498031 - Merge code paths for running configure between Tup and Make based backends. r=firefox-build-system-reviewers,mshal 2018-10-16 22:21:36 +00:00
client.py
CLOBBER Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2018-12-10 07:58:12 -08:00
configure.in
configure.py Bug 1461836 - Write out complete configure dependencies from configure for consumption by make and non-make backends. r=mshal 2018-05-21 14:01:50 -07:00
GNUmakefile
gradle.properties
gradlew
LEGAL
LICENSE
mach
Makefile.in Bug 1498031 - Merge code paths for running configure between Tup and Make based backends. r=firefox-build-system-reviewers,mshal 2018-10-16 22:21:36 +00:00
moz.build Bug 1508248 - Update in-tree bugzilla metadata to use 'Firefox Build System :: Mach Core' for mach files r=froydnj 2018-11-19 13:35:14 +00:00
moz.configure Bug 1502457 - Move MOZILLA_OFFICIAL to init.configure. r=nalexander 2018-11-16 01:16:31 +00:00
mozilla-config.h.in Bug 1504022 - Map GetExceptionCode to a nop to avoid an error r=bobowen 2018-11-02 13:28:01 -05:00
old-configure.in Merge inbound to mozilla-central a=merge 2018-12-22 06:12:53 +02:00
package-lock.json Bug 1495397 - Update mozilla-central's package.json for being more generic, and move existing ESLint modules to dev dependencies. r=firefox-build-system-reviewers,nalexander 2018-10-01 17:28:45 +00:00
package.json Bug 1495397 - Update mozilla-central's package.json for being more generic, and move existing ESLint modules to dev dependencies. r=firefox-build-system-reviewers,nalexander 2018-10-01 17:28:45 +00:00
README.txt Bug 1480997 - Remove "Mozilla FTP server" link in README.txt r=mossop 2018-10-23 10:06:29 +00:00
settings.gradle
test.mozbuild

An explanation of the Mozilla Source Code Directory Structure and links to
project pages with documentation can be found at:

    https://developer.mozilla.org/en/Mozilla_Source_Code_Directory_Structure

For information on how to build Mozilla from the source code, see:

    https://developer.mozilla.org/en/docs/Build_Documentation

To have your bug fix / feature added to Mozilla, you should create a patch and
submit it to Bugzilla (https://bugzilla.mozilla.org). Instructions are at:

    https://developer.mozilla.org/en/docs/Creating_a_patch
    https://developer.mozilla.org/en/docs/Getting_your_patch_in_the_tree

If you have a question about developing Mozilla, and can't find the solution
on https://developer.mozilla.org, you can try asking your question in a
mozilla.* Usenet group, or on IRC at irc.mozilla.org. [The Mozilla news groups
are accessible on Google Groups, or news.mozilla.org with a NNTP reader.]

Nightly development builds can be downloaded from:

    https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central/
            - or -
    https://www.mozilla.org/firefox/channel/desktop/#nightly

Keep in mind that nightly builds, which are used by Mozilla developers for
testing, may be buggy.