57e0c8a166d2b378eed7c0008643ade6b184145f: Bug 1333459 - part4: Make EventStateManager resets "waiting reply from remote process" when the focused content isn't in remote process r=smaug
Masayuki Nakano <masayuki@d-toybox.com> - Fri, 21 Jul 2017 17:22:08 +0900 - rev 419176
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1333459 - part4: Make EventStateManager resets "waiting reply from remote process" when the focused content isn't in remote process r=smaug On macOS, we fall back eKeyPress event to native menu. Therefore, widget always requests a reply from remote process because it's difficult to check if the eKeyPress event will be sent to a remote process actually. If it's not sent to any remote processes, PresShell needs to dispatch the event into the DOM tree. Additionally, even if it's marked as "waiting reply from remote process", it needs to dispatch the DOM event in the main process first because we need to check if the key combination is reserved by chrome (if it's reserved, the eKeyPress event shouldn't be fired in the remote process). Therefore, this patch makes EventStateManager::PreHandleEvent() resets the state when focused content isn't in any remote processes and the event's propagation hasn't been stopped. Additionally, this patch makes PresShell::HandleEventInternal() checks WidgetEvent::PropgationStopped() with WidgetEvent::IsWaitingReplyFromRemoteProcess() before dispatching the event into the DOM tree. MozReview-Commit-ID: FmgL3rCuQ8y
73e6945ecfa74dff313c824201d4f06cc3e66424: Bug 1333459 - part3: Add automated tests into browser_accesskeys.js r=smaug
Masayuki Nakano <masayuki@d-toybox.com> - Fri, 07 Jul 2017 20:25:14 +0900 - rev 419175
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1333459 - part3: Add automated tests into browser_accesskeys.js r=smaug MozReview-Commit-ID: 4zH3kgnX6bM
a1d8dca634549c9fc5cda42a842253b29c5b462c: Bug 1333459 - part2-3: Make nsMenuBarListener::KeyPress() wait reply from remote process if the eKeyPress event will be sent to a remote process later r=smaug
Masayuki Nakano <masayuki@d-toybox.com> - Wed, 19 Jul 2017 18:39:34 +0900 - rev 419174
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1333459 - part2-3: Make nsMenuBarListener::KeyPress() wait reply from remote process if the eKeyPress event will be sent to a remote process later r=smaug nsMenuBarListener::KeyPress() is eKeyEvent listener in the system event group. If the target is a remote process, it shouldn't handle accesskey immediately because preceding eKeyDown event may be consumed in the remote process or eKeyPress event itself may be consumed in the remote process. This patch makes nsMenuBarListener::KeyPress() mark eKeyPress event as "waiting reply from remote process" only when the event matches with a menu item's accesskey and it will be send to a remote process later. Then, reply event should be handled in this method if it's available. MozReview-Commit-ID: KOpCVgElnca
ce1fe9986ce932b2d19ee240548b91176568f065: Bug 1333459 - part2-2: EventStateManager should check if it needs to wait reply from remote content before handling access keys r=smaug
Masayuki Nakano <masayuki@d-toybox.com> - Sat, 22 Jul 2017 10:50:41 +0900 - rev 419173
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1333459 - part2-2: EventStateManager should check if it needs to wait reply from remote content before handling access keys r=smaug Currently, access key is handled in EventStateManager::PreHandleEvent() with eKeyPress event, i.e., before dispatching it into the DOM tree, if the access key is registered in EventStateManager. So, the main process does not check if the preceding eKeyDown event is consumed in focused remote process. When preceding eKeyDown event is consumed in the main process, eKeyPress event won't be dispatched by widget. However, if remote process has focus, it's impossible widget to stop dispatching eKeyPress event because preceding eKeyDown event hasn't been handled in the focused remote process yet. Therefore, main process needs to post eKeyPress event to check if preceding eKeyDown event was consumed. When eKeyPress event is marked as "waiting reply from remote process", TabChild sends it back to the main process only when preceding eKeyDown event wasn't consumed. So, only when eKeyPress event is back to the main process, main process should handle accesskey with it. This patch makes EventStateManager::PreHandleEvent() check if a remote target has focus before handling accesskey. If a remote process has accesskey and there is an accesskey matching with eKeyPress event, it marks the event as "waiting reply from remote content" and stop propagation in the process. Finally, when eKeyPress event is sent back to TabParent, TabParent::RecvReplyKeyEvent() calls EventStateManager::HandleAccessKey() before dispatching the reply event into the DOM tree. MozReview-Commit-ID: KsOkakaIVzb
69b23bbdb956726868c15d9ce46896cf58d5c329: Bug 1333459 - part2-1: EventStateManager should have a way to check if there is accesskey which is executed by a specific keyboard event r=smaug
Masayuki Nakano <masayuki@d-toybox.com> - Thu, 20 Jul 2017 17:33:53 +0900 - rev 419172
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1333459 - part2-1: EventStateManager should have a way to check if there is accesskey which is executed by a specific keyboard event r=smaug Protected EventStateManager::HandleAccessKey() walks ESMs to handle access key and EventStateManager::ExecuteAccessKey() looks for an accesskey which matches given char code values and execute an accesskey if it finds a target. These names are hard to understand what they do and we need an option not to execute accesskey but looks for a target. Therefore, this patch renames the former to WalkESMTreeToHandleAccessKey() and the latter to LookForAccessKeyAndExecute(). Then, they take a new bool argument, aExecute. When it's true, LookForAccessKeyAndExecute() executes found accesskey. Otherwise, i.e., it's false, they return true if they find an accesskey target for the given event in the process. MozReview-Commit-ID: ETYbNmtTMGj
2d219d3f6dc453342267c55fdbdc355fc6d97568: Bug 1333459 - part1: Move methods of EventStateManager which check modifiers of access key to WidgetKeyboardEvent r=smaug
Masayuki Nakano <masayuki@d-toybox.com> - Thu, 06 Jul 2017 17:36:19 +0900 - rev 419171
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1333459 - part1: Move methods of EventStateManager which check modifiers of access key to WidgetKeyboardEvent r=smaug EventStateManager checks if every keypress event's modifiers match with access key modifiers which are in prefs. Moving related methods of this to WidgetKeyboardEvent makes EventStateManager simpler and we can hide the NS_MODIFIER_* constants (they may make developers confused between Modifiers of WidgetInputEvent) into WidgetEventImpl.cpp. MozReview-Commit-ID: 23NUQ51lJ1M
c200124f2eecc1dae1bae361085b64985e7ccd2f: servo: Merge #17826 - stylo: Remove the visited bit for now since it doesn't account for the pref (from emilio:visited-not-yet); r=emilio
Emilio Cobos Álvarez <emilio@crisal.io> - Sun, 23 Jul 2017 05:53:47 -0700 - rev 419170
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
servo: Merge #17826 - stylo: Remove the visited bit for now since it doesn't account for the pref (from emilio:visited-not-yet); r=emilio I'll fix before landing the Gecko changes for bug 1383307, so this doesn't break anything yet. Source-Repo: https://github.com/servo/servo Source-Revision: 5b3bb04d4afe0b6437226b58a24f5f6a5e829dfe
5bbd0f5f50b668815eaec1d456b909a573779472: servo: Merge #17825 - style: Move the RELEVANT_LINK_VISITED flag to servo (from emilio:is-visited); r=manishearth
Emilio Cobos Álvarez <emilio@crisal.io> - Sun, 23 Jul 2017 04:15:39 -0700 - rev 419169
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
servo: Merge #17825 - style: Move the RELEVANT_LINK_VISITED flag to servo (from emilio:is-visited); r=manishearth Bug: 1383307 Reviewed-by: Manishearth Source-Repo: https://github.com/servo/servo Source-Revision: 14b12eeb3b7ff110dbdb1f9672c2cbfad4133ae0
6ebe13962237030e0965bb65f0848026c3f7e097: merge mozilla-central to autoland. r=merge a=merge
Sebastian Hengst <archaeopteryx@coole-files.de> - Sun, 23 Jul 2017 11:28:06 +0200 - rev 419168
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
merge mozilla-central to autoland. r=merge a=merge
46246d4a56a1a0448ce9b5d19d2d40acf9f7e888: Bug 1378799 - Adjust the tracking protection toggle colors and dimensions for Photon. r=nhnt11
Johann Hofmann <jhofmann@mozilla.com> - Thu, 20 Jul 2017 17:31:37 +0200 - rev 419167
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1378799 - Adjust the tracking protection toggle colors and dimensions for Photon. r=nhnt11 MozReview-Commit-ID: G2XnkUuKz9r
b1e6304c5427104fdd351b0c0960e803d3b3cda0: Bug 1382964 - Part 5: Restore allowed heap write hazards to 3. r=xidorn
Cameron McCormack <cam@mcc.id.au> - Fri, 21 Jul 2017 16:44:23 +0800 - rev 419166
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1382964 - Part 5: Restore allowed heap write hazards to 3. r=xidorn MozReview-Commit-ID: LEJh0Gi2ltf
0f27092c9bd4781d37ff91ee52a8b4070f28aa3e: Bug 1382964 - Part 4: Remove now unused heap write hazard whitelist entry for CalcStyleDifferenceInternal. r=xidorn
Cameron McCormack <cam@mcc.id.au> - Fri, 21 Jul 2017 16:43:56 +0800 - rev 419165
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1382964 - Part 4: Remove now unused heap write hazard whitelist entry for CalcStyleDifferenceInternal. r=xidorn MozReview-Commit-ID: FEzDpUUhBri
b9d6e44a276fa19db3b171ae8f8b6fc1509bc16c: Bug 1382964 - Part 3: Add assertion to help heap write analysis. r=xidorn
Cameron McCormack <cam@mcc.id.au> - Sun, 23 Jul 2017 09:11:37 +0800 - rev 419164
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1382964 - Part 3: Add assertion to help heap write analysis. r=xidorn MozReview-Commit-ID: Lfa5Cijgqzp
65fb1f76ed5be8feefc81390eeb7ef7f36cbcca4: Bug 1382964 - Part 2: Assert we're on the main thread in nsCSSValueTokenStream::operator==. r=xidorn
Cameron McCormack <cam@mcc.id.au> - Sat, 22 Jul 2017 10:11:06 +0800 - rev 419163
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1382964 - Part 2: Assert we're on the main thread in nsCSSValueTokenStream::operator==. r=xidorn This helps the heap write analysis believe that the nsCSSValue comparison that nsStyleUIReset::CalcDifference does (for mSpecifiedWindowTransform, which won't have nsCSSValueTokenStream values in it) is safe. MozReview-Commit-ID: 4JvPC735D7i
0fed5a7719c1f524c28a80f699d7494d7af5d782: Bug 1382964 - Part 1: Don't cache URLValueData::mMightHaveRef when in a traversal. r=xidorn
Cameron McCormack <cam@mcc.id.au> - Fri, 21 Jul 2017 16:34:20 +0800 - rev 419162
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1382964 - Part 1: Don't cache URLValueData::mMightHaveRef when in a traversal. r=xidorn MozReview-Commit-ID: 2ucnu4vuaVg
5928d905c0bc0b28f5488b236444c7d7991cf8d4: No bug, Automated HPKP preload list update from host bld-linux64-spot-302 - a=hpkp-update
ffxbld - Sun, 23 Jul 2017 09:19:42 -0700 - rev 419161
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
No bug, Automated HPKP preload list update from host bld-linux64-spot-302 - a=hpkp-update
2b0f859bd071d73f9d4c6da60b9a45adef5f68cd: No bug, Automated HSTS preload list update from host bld-linux64-spot-302 - a=hsts-update
ffxbld - Sun, 23 Jul 2017 09:19:39 -0700 - rev 419160
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
No bug, Automated HSTS preload list update from host bld-linux64-spot-302 - a=hsts-update
23d9d005d92afdb5afabeae2ad672323c7d903ad: no bug - Bumping Fennec l10n changesets r=release a=l10n-bump
L10n Bumper Bot <release+l10nbumper@mozilla.com> - Sun, 23 Jul 2017 03:00:39 -0700 - rev 419159
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
no bug - Bumping Fennec l10n changesets r=release a=l10n-bump be -> ['android', 'android-api-15', 'android-multilocale'] zam -> ['android', 'android-api-15', 'android-multilocale']
fd3634c4b16d89e71adce46be4cf80297e2fbc56: merge mozilla-inbound to mozilla-central. r=merge a=merge
Sebastian Hengst <archaeopteryx@coole-files.de> - Sun, 23 Jul 2017 11:27:03 +0200 - rev 419158
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
merge mozilla-inbound to mozilla-central. r=merge a=merge MozReview-Commit-ID: Lanp1XedkmZ
680e1321476c3c58df4a53cf118a40b23b8a7f3b: Bug 1380996 - avoid intermittent 'TabListener.jsm is not allowed before handling user events' failure by blacklisting only before first paint, r=me.
Florian Quèze <florian@queze.net> - Sun, 23 Jul 2017 00:18:00 +0200 - rev 419157
Push 7566 by mtabara@mozilla.com at Wed, 02 Aug 2017 08:25:16 +0000
Bug 1380996 - avoid intermittent 'TabListener.jsm is not allowed before handling user events' failure by blacklisting only before first paint, r=me.
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 tip