gecko-dev/widget/windows
Masayuki Nakano 6f3a61eba6 Bug 1305943 Don't consume following WM_SYSCHAR message for some key combinations which are reserved by the system r=m_kato
When key combination is reserved by the system, web apps shouldn't be able to consume the key events.  In such case, we've decided that we never expose the key events in web contents (including chrome contents).  Therefore, NativeKey stops dispatching keyboard events only for Alt+Space.

However, new code of the fix of bug 1300003 always consumes WM_SYSCHAR which follows WM_SYSKEYDOWN of Alt+Space.  This is the cause of bug 1305943.

For fixing this bug, NativeKey should have a helper method, IsReservedBySystem(), and when it returns true, it should do nothing when Handle*Message() is called and should not consume following WM_SYSCHAR messages at handling WM_*KEYDOWN.

Unfortunately, it's impossible to test this regression because nsDOMWindowUtils::SendNativeKeyEvent() may call nsIWidget::SynthesizeNativeKeyEvent() asynchronously.  See <https://dxr.mozilla.org/mozilla-central/source/dom/base/nsDOMWindowUtils.cpp#1105-1108>.  Therefore, it cannot return if it's consumed.

MozReview-Commit-ID: 9ABh2rYNkFs

--HG--
extra : rebase_source : 7416e45babccce3af795dc523f46dc00fdddc6c7
2016-09-30 17:32:34 +09:00
..
res
tests Bug 1286877 - do not set c-basic-offset for python-mode; r=gps 2016-07-14 10:16:42 -06:00
AudioSession.cpp Bug 1265386: Fix white-space errors in widget/, r=nfroyd 2016-07-22 10:56:13 +02:00
AudioSession.h Bug 1265953, part 2 - Convert much of the rest of the widget code from nsAutoPtr to UniquePtr. r=mstange 2016-04-19 21:51:25 +01:00
CompositorWidgetChild.cpp Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj 2016-08-24 14:47:04 +08:00
CompositorWidgetChild.h Bug 1289236. Remove ResizeTransparentWindow. r=dvander 2016-07-29 09:29:35 -04:00
CompositorWidgetParent.cpp Bug 1296746 - followup - fix silly typo; r=bustage 2016-09-14 19:53:59 -04:00
CompositorWidgetParent.h Bug 1289236. Remove ResizeTransparentWindow. r=dvander 2016-07-29 09:29:35 -04:00
GfxInfo.cpp Bug 1304360 - Add Windows 7 w/Intel drivers less than or equal to build ID 1749 to the blocklist for D3D9 layers r=milan 2016-09-27 16:10:02 -04:00
GfxInfo.h Backed out changeset 9ba0dd5271fe (bug 1286653) for permafailing xpcshell test test_TelemetryEnvironment.js | test_checkEnvironment on Windows 8 x64 debug. r=backout 2016-08-13 10:58:06 +02:00
IEnumFE.cpp
IEnumFE.h
IMMHandler.cpp Bug 1300140 - Return error when IME attribute array doesn't have valid. r=masayuki 2016-09-14 11:09:00 +09:00
IMMHandler.h Bug 1137561 part.3 Make IMMHandler use TextEventDispatcher r=m_kato 2016-03-16 13:47:48 +09:00
InkCollector.cpp Bug 1258808 - Part 2: Enhance Widget for Windows (Widget). r=smaug, f=btseng 2016-09-01 16:12:15 +08:00
InkCollector.h Bug 1258808 - Part 2: Enhance Widget for Windows (Widget). r=smaug, f=btseng 2016-09-01 16:12:15 +08:00
InProcessWinCompositorWidget.cpp Fix vsync sometimes not firing after the GPU process crashes. (bug 1305628, r=mattwoodrow) 2016-09-30 01:23:52 -07:00
InProcessWinCompositorWidget.h Implement vsync notification for remote compositors. (bug 1285625 part 3, r=mchang) 2016-07-19 11:56:07 -07:00
JumpListBuilder.cpp Bug 1265386: Fix white-space errors in widget/, r=nfroyd 2016-07-22 10:56:13 +02:00
JumpListBuilder.h Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat 2015-10-18 01:24:48 -04:00
JumpListItem.cpp Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat 2015-10-18 01:24:48 -04:00
JumpListItem.h Bug 1265386: Fix white-space errors in widget/, r=nfroyd 2016-07-22 10:56:13 +02:00
KeyboardLayout.cpp Bug 1305943 Don't consume following WM_SYSCHAR message for some key combinations which are reserved by the system r=m_kato 2016-09-30 17:32:34 +09:00
KeyboardLayout.h Bug 1305943 Don't consume following WM_SYSCHAR message for some key combinations which are reserved by the system r=m_kato 2016-09-30 17:32:34 +09:00
LSPAnnotator.cpp Bug 1268313: Part 7 - Move NS_NewRunnableMethod and friends to mozilla::NewRunnableMethod. r=froydnj 2016-05-05 01:45:00 -07:00
moz.build Bug 1259571 - Reduce tearing with basic layers on Windows r=dvander 2016-08-23 15:18:55 -07:00
mozwrlbase.h
nsAppShell.cpp Bug 1293117 (part 4) - Change many NS_IMETHODIMP occurrences to NS_IMETHOD. r=froydnj. 2016-08-08 10:54:47 +10:00
nsAppShell.h
nsBidiKeyboard.cpp Bug 1260091 - Move using SendBidiKeyboardNotify to WidgetUtils. r=masayuki 2016-05-19 17:47:49 +09:00
nsBidiKeyboard.h Bug 1033488 - Send RTL information to child process by WM_INPUTLANGCHANGE. r=masayuki 2016-03-11 17:48:10 +09:00
nsClipboard.cpp Bug 1260651 part.56 Rename nsHTMLEditor to mozilla::HTMLEditor and related stuff r=mccr8 2016-07-09 11:42:33 +09:00
nsClipboard.h Bug 860857, support custom datatransfer types using a special type, r=smaug,jmathies,mstange 2016-04-21 14:11:14 -04:00
nsColorPicker.cpp Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
nsColorPicker.h Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
nsDataObj.cpp Bug 1277106 - Part 2: Expand MOZ_UTF16() strings to u"" string literals. r=Waldo 2016-07-20 22:03:25 -07:00
nsDataObj.h Bug 664717 - Part 1: Switch to requestingPrincipal in nsITransferable. r=ckerschb 2016-07-01 16:01:11 +08:00
nsDataObjCollection.cpp
nsDataObjCollection.h Bug 1265386: Fix white-space errors in widget/, r=nfroyd 2016-07-22 10:56:13 +02:00
nsdefs.h Bug 1275744 - Reference MOZ_LOG in windows widget comments. r=erahm 2016-05-26 11:19:40 -07:00
nsDeviceContextSpecWin.cpp Bug 1299727 - Rename NS_WARN_IF_FALSE as NS_WARNING_ASSERTION. r=erahm. 2016-09-01 15:01:16 +10:00
nsDeviceContextSpecWin.h Bug 1278269 - Make a PrintTarget class and PrintTargetThebes subclass and convert all nsIDeviceContextSpec subclasses to use them. r=Bas 2016-06-03 11:27:31 +01:00
nsDragService.cpp Bug 1288760 - Fix point conversion in nsDragService::StartInvokingDragSession. r=jfkthame 2016-07-28 19:57:28 +09:00
nsDragService.h bug 1216916 clean up when InvokeDragSession() fails r=roc 2015-10-21 22:16:40 +13:00
nsFilePicker.cpp Bug 1295914, improve the label of the button of folder picker, r=baku,mstange,karlt,jimm 2016-08-24 02:07:21 +03:00
nsFilePicker.h Bug 1265386: Fix white-space errors in widget/, r=nfroyd 2016-07-22 10:56:13 +02:00
nsIdleServiceWin.cpp
nsIdleServiceWin.h Bug 1233444 - add override declarations for widget/windows/; r=roc 2015-12-16 11:58:46 -05:00
nsImageClipboard.cpp Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat 2015-10-18 01:24:48 -04:00
nsImageClipboard.h
nsLookAndFeel.cpp Bug 1302937 - Remove -moz-mac-lion-theme. r=mstange 2016-09-16 14:42:19 -04:00
nsLookAndFeel.h Bug 1243720 - Send accessibility theme state down to the content process on Windows. r=jimm 2016-02-03 15:49:36 -05:00
nsNativeDragSource.cpp
nsNativeDragSource.h
nsNativeDragTarget.cpp Bug 1259656 part.1 Rename WidgetEvent::refPoint to WidgetEvent::mRefPoint r=smaug 2016-04-18 23:09:02 +09:00
nsNativeDragTarget.h
nsNativeThemeWin.cpp Bug 1253979, use remote open state for select elements in theme to ensure active state is correct, r=jimm 2016-08-08 08:42:54 -04:00
nsNativeThemeWin.h Bug 1255214 - Only repaint GTK scrollbar button if its enablement actually changed. r=mstange 2016-04-20 19:49:09 -04:00
nsPrintOptionsWin.cpp Bug 1270447 Part 4: Remove redundant lines in nsPrintOptionsWin::DeserializeToPrintSettings. r=jimm 2016-05-29 19:53:40 +01:00
nsPrintOptionsWin.h
nsPrintSettingsWin.cpp Bug 1280159: Let paper type drive page size units on Windows. r=jimm 2016-06-30 10:01:10 +01:00
nsPrintSettingsWin.h Bug 1238964 Part 1: Hold new printable page sizes in print nsIPrintSettingsWin. r=jimm 2016-01-22 16:05:19 +00:00
nsScreenManagerWin.cpp Bug 890156 - patch 3 - Remove gfxWindowsPlatform::GetDPIScale and replace it with methods in WinUtils, ready for per-monitor DPI support. r=emk 2015-12-02 15:09:29 +00:00
nsScreenManagerWin.h Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
nsScreenWin.cpp Bug 1251624 - patch 2 - Check for scaling override (devPixelsPerPx setting) in nsScreenWin::GetDefaultCSSScaleFactor, for proper window positioning when a custom scale factor is used. r=emk 2016-02-27 15:44:59 +00:00
nsScreenWin.h Bug 1246382 - Screen rect in desktop pixels should not be affected by devPixelsPerPx override. r=emk 2016-02-08 12:53:10 +00:00
nsSound.cpp Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
nsSound.h
nsToolkit.cpp Bug 506815 - Replace MouseTrailer with TrackMouseEvent. r=jimm 2015-11-20 07:42:00 +01:00
nsToolkit.h Bug 506815 - Replace MouseTrailer with TrackMouseEvent. r=jimm 2015-11-20 07:42:00 +01:00
nsUXThemeConstants.h
nsUXThemeData.cpp Bug 1203574 - use ShowNA for everything except aero basic / aero lite, to get caption button metrics, r=jimm 2015-10-20 11:40:15 +01:00
nsUXThemeData.h
nsWidgetFactory.cpp Initialize nsAppShell in the GPU process. (bug 1294350 part 5, r=nfroyd) 2016-08-22 22:57:36 -07:00
nsWindow.cpp Bug 1300203 - Ensure that sLastMouseMovePoint is updated even for touch-induced WM_MOUSEMOVE messages. r=jimm 2016-09-29 15:15:00 -04:00
nsWindow.h Bug 1258808 - Part 2: Enhance Widget for Windows (Widget). r=smaug, f=btseng 2016-09-01 16:12:15 +08:00
nsWindowBase.cpp Bug 1300003 part.6 NativeKey shouldn't try to dispatch plugin events for removed char messages when mWidget won't dispatch plugin events r=m_kato 2016-09-15 00:16:18 +09:00
nsWindowBase.h Bug 1300003 part.6 NativeKey shouldn't try to dispatch plugin events for removed char messages when mWidget won't dispatch plugin events r=m_kato 2016-09-15 00:16:18 +09:00
nsWindowDbg.cpp
nsWindowDbg.h
nsWindowDefs.h Bug 1300937 part.2 Automated tests which synthesize native key events on Windows should specify scan code value explicitly r=smaug 2016-09-13 19:38:23 +09:00
nsWindowGfx.cpp Bug 1295742 - Add gfxCriticalNote for driver reset. r=jerry, r=dvander 2016-08-25 02:17:00 -04:00
nsWindowGfx.h Bug 1207741 - Remove gfxIntSize. r=nical. 2015-09-23 11:49:05 -07:00
nsWinGesture.cpp Bug 1259667 - part5: rename WidgetSimpleGestureEvent.delta to mDelta. r=masayuki 2016-05-10 04:16:55 +09:00
nsWinGesture.h Bug 1259666 part 1 - rename variable and definition change - r=masayuki 2016-04-21 19:32:59 -07:00
PCompositorWidget.ipdl Bug 1289236. Remove ResizeTransparentWindow. r=dvander 2016-07-29 09:29:35 -04:00
PlatformWidgetTypes.ipdlh Move CompositorWidget construction out of nsIWidget. (bug 1281998 part 5, r=jimm) 2016-07-01 01:15:16 -07:00
resource.h
TaskbarPreview.cpp Bug 1277156 - TaskbarPreview::Disable should check whether window is destroyed. r=jimm 2016-06-01 14:30:23 +09:00
TaskbarPreview.h Bug 1265953, part 2 - Convert much of the rest of the widget code from nsAutoPtr to UniquePtr. r=mstange 2016-04-19 21:51:25 +01:00
TaskbarPreviewButton.cpp
TaskbarPreviewButton.h Bug 1265386: Fix white-space errors in widget/, r=nfroyd 2016-07-22 10:56:13 +02:00
TaskbarTabPreview.cpp Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat 2015-10-18 01:24:48 -04:00
TaskbarTabPreview.h
TaskbarWindowPreview.cpp Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat 2015-10-18 01:24:48 -04:00
TaskbarWindowPreview.h Bug 1233444 - add override declarations for widget/windows/; r=roc 2015-12-16 11:58:46 -05:00
touchinjection_sdk80.h
TSFTextStore.cpp Bug 1305355 part.2 TSFTextStore shouldn't append any ranges when composition string is empty r=m_kato 2016-09-26 17:12:34 +09:00
TSFTextStore.h Bug 1273510 part.3 We should not return TS_E_NOLAYOUT when ATOK decides its suggest window r=m_kato 2016-08-17 14:07:54 +09:00
widget.rc
WidgetTraceEvent.cpp Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm. 2016-08-08 12:18:10 +10:00
WinCompositorWidget.cpp Bug 1259571 - Reduce tearing with basic layers on Windows r=dvander 2016-08-23 15:18:55 -07:00
WinCompositorWidget.h Bug 1259571 - Reduce tearing with basic layers on Windows r=dvander 2016-08-23 15:18:55 -07:00
WindowHook.cpp
WindowHook.h
WindowsUIUtils.cpp Bug 1289248 - Stop using MOZ_WINSDK_MAXVER outside configure. r=blassey,cpearce 2016-07-22 18:52:13 +09:00
WindowsUIUtils.h
WinIMEHandler.cpp Bug 1226522 - Show the on-screen keyboard from touch events even on machines lacking rotation sensors (such as touch-screen laptops). r=Gijs 2016-07-12 08:00:28 -04:00
WinIMEHandler.h Bug 1137561 part.1 Implement WinTextEventDispatcherListener as a singleton class for using TextEventDispatcher at handling native keyboard and IME events r=m_kato 2016-03-16 13:47:48 +09:00
WinMessages.h Bug 1257759 part.9 Implement nsWindow::OnKeyEventInPluginProcess() on Windows r=jimm 2016-04-15 17:02:36 +09:00
WinModifierKeyState.h Bug 1297013 part.3 Make NativeKey log its behavior r=m_kato 2016-09-21 13:29:34 +09:00
WinMouseScrollHandler.cpp Bug 1280513 part.2 WinMouseScrollHandler should use LazyLogModule instead of PR_NewLogModule() r=m_kato 2016-06-17 03:10:06 +09:00
WinMouseScrollHandler.h Bug 1280513 part.1 Rename LogKeyStateImpl() to MouseScrollHandler::MaybeLogKeyState() r=m_kato 2016-06-17 03:03:44 +09:00
WinNativeEventData.h Bug 1257759 part.5 PluginInstanceChild should post received native key event to chrome process if the key combination may be a shortcut key r=jimm 2016-04-19 20:09:37 +09:00
WinTaskbar.cpp Bug 1265386: Fix white-space errors in widget/, r=nfroyd 2016-07-22 10:56:13 +02:00
WinTaskbar.h
WinTextEventDispatcherListener.cpp Add WinCompositorWidgetProxy. (bug 1265975 part 1, r=jimm) 2016-05-04 22:00:13 -07:00
WinTextEventDispatcherListener.h Bug 1137561 part.1 Implement WinTextEventDispatcherListener as a singleton class for using TextEventDispatcher at handling native keyboard and IME events r=m_kato 2016-03-16 13:47:48 +09:00
WinUtils.cpp Bug 1304883: Modify mscom::MainThreadInvoker and Win32 widget to use atomic boolean to flag pending APCs; r=jimm 2016-09-22 15:07:01 -06:00
WinUtils.h Bug 1304883: Modify mscom::MainThreadInvoker and Win32 widget to use atomic boolean to flag pending APCs; r=jimm 2016-09-22 15:07:01 -06:00