Commit Graph

2297 Commits

Author SHA1 Message Date
Carsten "Tomcat" Book
3d9f0a00a7 Backed out changeset 49f1c7ec4eca (bug 1185472) for bustage
--HG--
extra : rebase_source : 8f7a27c7fa3e19d70e3c09160e0442ff11851eab
2016-12-21 12:33:54 +01:00
David Parks
e931b523a6 Bug 1185472 - Only allow NPAPI HWNDs to be adopted by an HWND in the chrome process r=jmathies
Add the set of plugin process PIDs to PluginProcessParent and, when attempting to reparent plugin windows in the chrome process, validate that those windows originated with the plugin process (by checking the window's PID against the set in the PluginProcessParent).

--HG--
extra : rebase_source : f12fabb958d64def6f57ebbbccc39f8ef47ad9f4
2016-12-18 19:58:16 -08:00
Carsten "Tomcat" Book
9b6d97a4be Backed out changeset 1413fa802632 (bug 1031362) for test failures in pointerevents/test_touch_action.html
--HG--
extra : rebase_source : 937d349fb18e2368d4155364558027134c01fec6
2016-12-20 14:52:23 +01:00
Carsten "Tomcat" Book
9957ef81ce Backed out changeset bb1654cb6f30 (bug 1031362)
--HG--
extra : rebase_source : 31b5dceec22f1de279344f6eb131ede9193b6d10
2016-12-20 14:46:03 +01:00
Carsten "Tomcat" Book
925e83fb49 Backed out changeset 1d3072ee3656 (bug 1031362)
--HG--
extra : rebase_source : 5e1a1b9588f404b2f79599fdd9480b7efd29007c
2016-12-20 14:46:02 +01:00
Stone Shih
764b557d1e Bug 1031362 Part3: Rollup popups by WM_POINTERDOWN. r=jimm, smaug
MozReview-Commit-ID: FiefSHcMBIn
2016-11-29 15:31:21 +08:00
Stone Shih
2c0f3cacb5 Bug 1031362 Part2: Refine InkCollector to enable it only on Win7. r=smaug 2016-11-25 14:36:37 +08:00
Stone Shih
d908d1a2d4 Bug 1031362 Part1: Dispatching mouse events by handling pen generated WM_POINTER* messages. r=jimm,smaug 2016-11-20 10:24:46 +08:00
Nicholas Nethercote
3af5047314 Bug 1299335 (part 8) - Streamline nsIWidget::Enable. r=mstange.
This patch changes it from |NS_IMETHOD| to |virtual void| because every
implementation of these functions always returns |NS_OK|.

--HG--
extra : rebase_source : 07ee29c514bf35b97d7195c53bb5b9220d1ef961
2016-12-19 20:54:16 +11:00
Nicholas Nethercote
a28c8f38b2 Bug 1299335 (part 7) - Streamline nsIWidget::{Move,Resize}. r=mstange.
This patch changes them from |NS_IMETHOD| to |virtual void| because every
implementation of these functions always returns |NS_OK|.

--HG--
extra : rebase_source : 6207df5a46aeb6b8aaa0f697447a51bc6a6dc366
2016-12-19 20:54:03 +11:00
Nicholas Nethercote
d0912b2968 Bug 1299335 (part 4) - Streamline nsIWidget::HideWindowChrome. r=mstange.
This patch does the following.

- Removes the return value, because none of the call sites check it.

- Removes the empty implementations from the android nsIWidget instance,
  because it can use the nsBaseWidget one.

--HG--
extra : rebase_source : 0791d3cb05907d6b41879549b52f3a33018abf45
2016-12-16 10:54:12 +11:00
Nicholas Nethercote
1dab0c3072 Bug 1299335 (part 3) - Streamline nsIWidget::SetParent. r=mstange.
This patch removes its return value, because none of the call sites check it
except for one non-vital assertion.

--HG--
extra : rebase_source : 3471c4e22394b8a05c6708d0f8469686ffad9814
2016-12-16 10:54:11 +11:00
Nicholas Nethercote
efc5071ff2 Bug 1299335 (part 2) - Streamline nsIWidget::SetIcon. r=mstange.
This patch does the following.

- Removes the return value, because none of the call sites check it.

- Removes the empty implementations from several nsIWidget instances, because
  they can use the nsBaseWidget one.

--HG--
extra : rebase_source : a1a04193bc3940f1468c7c235f6d6e0341d0f1c2
2016-12-16 10:54:11 +11:00
Nicholas Nethercote
3970265787 Bug 1299335 (part 1) - Change some nsIWidget function return values from |NS_IMETHOD| to |virtual MOZ_MUST_USE nsresult|. r=jimm.
Specifically: OnDefaultButtonLoaded, AttachNativeKeyEvent, BeginMoveDrag,
BeginResizeDrag, GetAttention. These are all fallible functions whose result is
always checked.

The patch also moves some trivial function definitions from nsBaseWidget.cpp to
nsBaseWidget.h, and removes the android BeginResizeDrag() because it can
use the nsBaseWidget one.

--HG--
extra : rebase_source : ef32a41b547bcbc21f7df0043f683307470b136e
2016-12-16 10:54:02 +11:00
Ting-Yu Chou
68a9f20e40 Bug 1322459 part 3 - Remove duplicate mRefCnt in LSPAnnotationGatherer. r=Ehsan
MozReview-Commit-ID: 8XFO6LyyGus

--HG--
extra : rebase_source : 633cf7e68c67253dda6f55339447e62add1d5f3f
2016-12-13 15:57:17 +08:00
Ting-Yu Chou
f8f09a7949 Bug 1322459 part 2 - Remove duplicate mRefCnt in JumpListShortCut. r=Ehsan
MozReview-Commit-ID: CFt05fItCOu

--HG--
extra : rebase_source : 96364a52920a044758744fd471c73a82e5770616
2016-12-13 15:56:34 +08:00
Milan Sreckovic
5b302719f0 Bug 1285563: Part 2. If the second GPU is the active one, swap. r=milan
MozReview-Commit-ID: DP5eoOAfE23

--HG--
extra : rebase_source : 2d9df9aa2321a0c023211d276b5e8185df26aaed
2016-12-16 11:57:51 -05:00
Milan Sreckovic
adf986b2c5 Bug 1285563: Part 1. Track two GPU infos in arrays, easier for swap if the second is active. r=milan
MozReview-Commit-ID: FtfmxH1MfZx

--HG--
extra : rebase_source : 115edd2fa5e80f6de6faccfd1f90d3d60b46bd8c
2016-12-16 11:56:59 -05:00
Ting-Yu Chou
4f285bd583 Bug 1322458 - Fix kungFuDeathGrip errors that clang plugin reports on Windows. r=aklotz,Ehsan
MozReview-Commit-ID: FLTLZSg2yh9

--HG--
extra : rebase_source : e8aad8f35cffb3312e043a4fcec6296371baf432
2016-12-14 16:34:12 +08:00
Milan Sreckovic
87d622dd83 Bug 1321630: Allow remote desktop (RDP) acceleration on window versions higher than 8. r=vlad
MozReview-Commit-ID: 964xgsCIxij

--HG--
extra : rebase_source : f5553124e2730ea8cc9296f9551762dd8eef90a4
2016-12-01 15:14:42 -05:00
Makoto Kato
3c1874f9a5 Bug 1322752 - Cannot compile widget with bumping WINVER to 0x601. r=jimm
MozReview-Commit-ID: EEOgx4H1ZyL
2016-12-15 16:40:33 +09:00
Jean-Luc Bonnafoux
461ab7eb31 Bug 545066 - Clean up nsClipboard.cpp - braces added for if..else, no tabs, ident fix. r=jimm 2016-12-11 12:45:17 +01:00
Aaron Klotz
39b609a350 Bug 1323521: Prevent Windows touchscreen support from instantiating a11y; r=jimm
MozReview-Commit-ID: 3xV0b97lEre

--HG--
extra : rebase_source : 7edcc93d409ffcd50e0fe4307573c2660a274b28
extra : amend_source : 0b8f3fbc292b632b448c135ea55fa6f63d292b35
2016-12-14 12:20:48 -07:00
Carsten "Tomcat" Book
eb5f79ce29 Merge mozilla-central to autoland 2016-12-13 16:53:28 +01:00
Andrew McCreight
fccb0645ed Bug 1323042 - forbid MOZ_COUNT_{CTOR,DTOR} for nsISupports classes; r=froydnj 2016-12-12 09:27:58 -05:00
Nathan Froyd
826598caba Backout aba6c73511a2 (bug 1307961) for massive test bustage resulting in a CLOSED TREE; r=alltheorange 2016-12-12 08:45:46 -05:00
Andrew McCreight
e31b5489da Bug 1307961 - require consistent bloatview reporting for nsISupports classes; r=froydnj 2016-12-12 07:58:33 -05:00
Kevin Wern
b2052e9ddc Bug 1304044 - implement auxclick r=smaug
After click events with button 2 or 3 are fired, fire auxclick, a new
event intended to represent a non-primary mouse click. Because this
event, based on the design examples and blink's implementation, is
intended to be used with content listeners, always dispatch on content
listeners--not just those that force all events to be dispatched (i.e.
document/window). This diverges from the behavior of our click events
from non-primary buttons.

Eventually, we hope this will replace click events for non-primary
buttons. For now, leave those events for compatibility reasons.

Additionally, add handling of this new event, where necessary.

MozReview-Commit-ID: 8osozM4h6Ya

--HG--
extra : rebase_source : 558261dd0d0b9241efa84ca168c50455850af03a
2016-11-30 19:48:02 -05:00
David Parks
6ea0979c0f Bug 1273091 - Mouse cursor does not disappear in html5 fullscreen video on Windows. r=masayuki
When we jump to fullscreen, the OS sends a WM_MOUSELEAVE, which we turn into a eMouseExitFromWidget.  The eMouseEnterIntoWidget was previously only sent when the mouse moved into the widget, which required the mouse to move.  When entering fullscreen, we want the eMouseEnterIntoWidget to happen right away.
2016-11-28 10:46:15 -08:00
Stone Shih
dc05661157 Bug 1301708 - nsWindow::DealWithPopup() should do nothing at receiving WM_ACTIVATE for a popup window and its wParam includes WA_CLICKACTIVATE. r=masayuki
When the first time user clicks download panel popup to hide the drop marker popup, Windows fires WA_ACTIVATE with wParam includes WA_CLICKACTIVATE to the download panel. In that case the popupWindow is the drop marker. We shouldn't roll up popups by handling WA_ACTIVATE since we'll handle the rollup behavior with WM_LBUTTONDOWN message.

MozReview-Commit-ID: 43jCgdBjjUN

--HG--
extra : rebase_source : 371de468252e7716e2ffe30520939650f76a4222
2016-11-10 16:09:25 +08:00
Masayuki Nakano
f0bff83240 Bug 1318265 NativeKey shouldn't handle messages when mWidget has already been destroyed r=m_kato
When mWidget was already destroyed, anybody shouldn't dispatch WidgetEvent on it. Therefore, NativeKey::InitKeyEvent() has MOZ_CRASH() for detecting such dangerous bug and some users hit it.

Each message handler of NativeKey should check if mWidget has already gone.

Ideally, nsWindow shouldn't create NativeKey and try to handle the message with it. However, using NativeKey's message handlers can put some information to the log. Therefore, this patch doesn't touch nsWindow.

MozReview-Commit-ID: 4k5VfaKHPgG

--HG--
extra : rebase_source : 4269847fbdf5daa66244ce924ddc54feb5c6cd01
2016-11-17 19:02:30 +09:00
Ahmed (Gentz) El Gendy
8409f77b66 Bug 1234317 - Update mLastSizeMode when window size mode changes within Windows widget, avoids a window focus problem on Windows 10 with theme changes. r=jimm
MozReview-Commit-ID: FFpH8iZbxXK

--HG--
extra : rebase_source : 6d092566a4f20c07f2b8944c6a0e9e683dc39663
2016-10-26 16:49:11 -06:00
Aaron Klotz
f4b410fd2f Bug 1294903: Modify file and folder pickers to ensure that the background MTA thread is running if we're on Windows 7; r=jimm
MozReview-Commit-ID: LrbkeLMrgcS

--HG--
extra : rebase_source : 7cf20d2f10e7234cd63d692859a44faf8cdb98e9
2016-11-15 11:36:01 -07:00
Kan-Ru Chen
f8100451db Bug 1314254 - Add mozilla::ipc::IPCResult type and convert IPDL handlers to use new return type. r=billm
We will use the new type for the generated IPDL message handler
prototype to make sure correct error handling method is called.

MozReview-Commit-ID: AzVbApxFGZ0
2016-11-15 04:26:00 +01:00
David Anderson
2c5e03e62e Don't reset devices for each tab when the compositor resets. (bug 1316788, r=rhunt) 2016-11-14 11:47:01 -08:00
Masayuki Nakano
99651541fb Bug 791300 KeyboardLayout should respect following WM_(SYS)DEADCHAR messages for supporting chained dead keys r=m_kato
Currently, KeyboardLayout doesn't support chained dead keys because probably, the initial developer didn't expect there are such keyboard layout.  Additionally, if we'd try to handle them with KeyboardLayout, it'd need to create too big and too complicated table at loading such keyboard layout.  It's really nightmare.  Therefore, this patch takes different approach.

Currently, when WM_(SYS)KEYDOWN is received, KeyboardLayout (and NativeKey) respects following WM_(SYS)CHAR.  Similarly, this patch makes KeyboardLayout respect WM_(SYS)DEADCHAR when it handles dead key.  If WM_(SYS)KEYDOWN is followed by WM_DEADCHAR, that means that the key press is in a dead key sequence and not finishing the existing dead key sequence.  Therefore, when WM_(SYS)KEYDOWN is followed by WM_(SYS)DEADCHAR, KeyboardLayout activates dead key sequence.

For supporting dead key chain, this patch makes KeyboardLayout::mActiveDeadKey and KeyboardLayout::mDeadKeyShiftState arrays.  When dead keydown message is received, KeyboardLayout appends an item to each of them.  (I.e., when the array is not empty, it's in a dead key sequence.)

When WM_(SYS)KEYUP is received, KeyboardLayout checks if it's in mActiveDeadKey.  If it's included in the array, it initializes NativeKey as a dead keyup event.

Otherwise, when non-printable key (probably) is received in a dead key sequence, KeyboardLayout doesn't handle it as a part of the dead key sequence.  For example, a modifier key may be pressed for next key.  (Even if the keyboard layout maps text input to a non-printable key, we can ignore them because such key's KeyboardEvent.key value should be decided only with the virtual keyboard.)

MozReview-Commit-ID: 9n8B0YYuKCO

--HG--
extra : rebase_source : d18ca896829274d35cc8b7744c5e1645a9e78784
2016-11-10 23:24:33 +09:00
David Anderson
3ffb31894f Don't access gfxPlatform from WinCompositorWidget. (bug 1316481, r=mattwoodrow) 2016-11-09 20:49:09 -08:00
Jonathan Watt
07c5338755 Bug 1313525 - Remove the nsIPrintOptions interface. r=mstange
--HG--
rename : widget/nsIPrintOptions.idl => widget/nsIPrinterEnumerator.idl
2016-10-28 00:31:14 +01:00
Kartikaya Gupta
54c54c7a09 Bug 1315706 - Pass a wrapper struct to various CompositorWidget functions. r=dvander
This is the first step in using these functions without having a
LayerManagerComposite at all.

MozReview-Commit-ID: 2zkuB7Ox4Ut

--HG--
extra : rebase_source : b23988275f5851a2fd30bd3e8a9931107a224c66
2016-11-07 21:16:52 -05:00
Kartikaya Gupta
cb026d2536 Bug 1313170 - Use the widget-level touch injection instead of the OS-level touch injection for some tests. r=dvander
When using the InjectTouchInput API on Windows, the API requires that the caller
keep providing input frames (by calling the API function) at least every 100ms.
If the caller fails to do so, Windows can return an ERROR_TIMEOUT and throw
away the touch sequence. In some tests, it is hard for us to make this guarantee,
because we need to wait for other events between the touchdown and touchup. For
these tests, we can use the widget-level touch injection code that we have as
a fallback for the OS-level touch injection code. The widget-level touch
injection is less representative of real-world usage but allows us to bypass
the timeout problem.

MozReview-Commit-ID: EoVUSZmERUw

--HG--
extra : rebase_source : 4f7ca1a1e6da4479d51526e8f132f5cb23fceb49
2016-10-31 10:05:15 -04:00
Makoto Kato
57b13a9369 Bug 1312302 - Set dummy Selection during initializing TextStore. r=masayuki
When PC supports table mode, TextInputFramme.dll is loaded and it can be used for TIP.

When creating new TextStore object, selection might be nothing yet on e10s.  At this time, GetSelection will return E_FAIL since selection data isn't received yet.  If GetSelection returns error during SetFocus, TextInputFrame.dll will crash.

So we set temporary selection to avoid crash.


MozReview-Commit-ID: HyVSwvhXGJh

--HG--
extra : rebase_source : 9e4838ffc5c8d8cf0e67685c6c1da09ecba6c7a9
extra : amend_source : dda79c9380ee34c82a611fc6a6691cbe63aec63c
2016-10-25 17:53:38 +09:00
Dão Gottwald
998303abfe Bug 582951 - Use CSS outline for checkbox and radio button focus indicator. r=dbaron,jimm 2016-10-22 08:28:53 +02:00
Neil Deakin
68ac95182c Bug 1301673, use device pixels for the supplied drag position and the computed dragrectangle, r=tn 2016-10-19 15:01:39 -04:00
Neil Deakin
12c7b914da Bug 1301673, use more specific coordinates for screen position in drag calculations, r=tn 2016-10-19 15:01:39 -04:00
Eric Rahm
1eb4ae7e0d Bug 1309698 - Remove usage of nsISupportsArray from nsIDragService. r=smaug 2016-10-18 11:56:20 -07:00
Makoto Kato
7912a1dc20 Bug 1310453 - Check whether aUri isn't created. r=jimm
Since aUri is nullptr, Firefox will crash on shutdown.


MozReview-Commit-ID: E5ENWsjK7Px

--HG--
extra : rebase_source : d52a301ec0d313f303a98f1d463f9f1120ea44c8
2016-10-17 12:17:42 +09:00
Eric Rahm
52edf921c1 Bug 1310017 - Remove nsISupportsArray usage from nsITransferable and nsIFormatConverter. r=smaug
This converts |nsITransferable.flavorsTransferableCanExport| and
|nsITransferable.flavorsTransferableCanImport| to return a |nsIArray|.

|nsIFormatConverter.getInputDataFlavors| and
|nsIFormatConverter.getOutputDataFlavors| are updated as well.
2016-10-16 12:43:56 -07:00
Edwin Flores
5f13602836 Bug 1292311 - Blacklist nVidia drivers <= 187.45 for frequent shutdown crashes - r=jrmuizel 2016-10-13 10:54:16 +01:00
Masayuki Nakano
2fb6e9eb1c Bug 1303273 part.9 NativeKey::mFollowingCharMsgs should be AutoTArray r=m_kato
Similarly, NativeKey is a stack class and mFollowingCharMsgs which stores following char messages of WM_(SYS)KEYDOWN should be AutoTArray for preventing to use heap at handling inputs with usual keyboard layout.

5 is enough size for handling usual keyboard layout because we support only 5 or less characters per dead key sequence.

MozReview-Commit-ID: IphcIOmPW0C

--HG--
extra : rebase_source : 74ce6f9fef73df4b9bbccbbdd713470ff7357889
2016-10-07 14:38:14 +09:00
Masayuki Nakano
af0bc7745d Bug 1303273 part.8 UniCharsAndModifiers should use nsAutoString and AutoTArray to store characters and modifiers r=m_kato
Fortunately, UniCharsAndModifiers instances are only in stack.  Therefore, we can make it a stack class and use nsAutoString and AutoTArray for not using heap at handling inputs from usual keyboard layouts.

MozReview-Commit-ID: 9ZPbdjGst64

--HG--
extra : rebase_source : 06a21c20575747591c6bf1a55dff7e6e38884333
2016-10-07 14:32:45 +09:00