Граф коммитов

22051 Коммитов

Автор SHA1 Сообщение Дата
Jim Chen c3aa7c74d4 Bug 1353799 - 2. Update current composition when setting/removing spans; r=esawin
Update the composition when setting/removing spans, so that we update
the selection/cursor during a composition. However, we must limit any
updating to the current composition only (as indicated by the
keep-current-composition flag), because the Facebook comment box behaves
incorrectly if we repeatedly start and end new compositions.
2017-04-27 20:59:42 -04:00
Masayuki Nakano 3456c02e0a Bug 1358958 part.2 Implement TextInputHandler::InsertNewline() to handle "insertNewline:" command r=m_kato
Due to bug 1358958, simply inserting a line breaker with composition events doesn't work as expected in HTML editor.  Therefore, we need to dispatch "fake" Enter keypress event even if it's not handling Enter key actually or shouldn't dispatch keypress event anymore.

The method tries to dispatch Enter keypress event.  If it's handling Enter key press actually and can dispatch keypress event normally, it dispatches Enter keypress event as-is.  Otherwise, it tries to dispatch "fake" Enter keypress.  It doesn't have Control, Option and Command key state for emulating to insert a line breaker.  Additionally, its code value is not set to "Enter" because the fake key event isn't a physical key event.

If it cannot dispatch Enter keypress event, it dispatches composition events to insert "\n" even though it won't work in HTML editor.

MozReview-Commit-ID: 7AsJLKS8Tgz

--HG--
extra : rebase_source : 03a8628fd35eff404792691de0d2600f11ef1614
2017-04-27 21:44:58 +09:00
Masayuki Nakano e12339e622 Bug 1358958 part.1 Don't consume command when neither keydown nor keypress event was consumed r=m_kato
When typing Enter key when active keyboard layout is Korean IME and it has composition string, the composition string is committed and then, "insertNewline:" command is sent. However, TextInputHandler::DoCommandBySelector() consumes the command because the key event has already modified the composition string.

This patch makes TextInputHandler::DoCommandBySelector() consume the command if it's not handling keydown or neither dispatched keydown event nor dispatched keypress event (if it does) is consumed. Therefore, insertNewline:sender of nsChildView will be called later, then, it causes inserting a line break with a set of composition events.

MozReview-Commit-ID: Afr1FKZbUtL

--HG--
extra : rebase_source : 0c43986907553750b63bed0c95b3d5aaa1b16bea
2017-04-26 20:39:13 +09:00
David Anderson 689908c568 Make PLayerTransaction's constructor async. (bug 1350634, ipc_r=billm, r=mattwoodrow,kats)
PLayerTransaction's constructor was previously synchronous so we could
return a TextureFactoryIdentifier. This is quite reliably available
already in the case of opening a tab, due to RenderFrameParent knowing
which compositor it is attached to, so we can make the constructor
asynchronous.

In the top-level widget case, we add a new synchronous message to find
the TextureFactoryIdentifier.

--HG--
extra : rebase_source : 4b29b859aa5745fabe3db0fe68742328fc0af175
2017-04-26 10:32:57 -07:00
Masatoshi Kimura a4c9e326d4 Bug 1358758 - Use CSSIntRect for nsIFrame::GetScreenRect. r=kats
MozReview-Commit-ID: KXPL1ERbFDa

--HG--
extra : rebase_source : 263b18d1736b09bb62d914f066481281966b288c
2017-04-25 07:33:13 +09:00
Andrea Marchesini 8beb8af7d4 Bug 1357846 - Introducing nsIFilePicker.displaySpecialDirectory, r=smaug
nsIFilePicker.displaySpecialDirectory is a string that can be set to TmpD,
Desk, or any other special directory value. The real value of this directory
will be read in the parent process.
2017-04-26 18:20:19 +02:00
Sebastian Hengst ceff3b0678 Backed out changeset 1f9d0f8e65b9 (bug 1351548) 2017-04-26 13:13:05 +02:00
Sebastian Hengst f46ebb0d94 Backed out changeset aebb0ceeb20a (bug 1351548) 2017-04-26 13:12:53 +02:00
Shing Lyu 96b400c04a Bug 1351548 - Remove reftest-stylo.lists. r=bholley
MozReview-Commit-ID: Gn0fbS4PZ7i
2017-04-26 18:21:52 +08:00
Shing Lyu dae014d9d5 Bug 1351548 - Add stylo-vs-gecko expectations to reftest.lists. r=bholley
MozReview-Commit-ID: GOUGBsd05cn
2017-04-26 18:21:43 +08:00
Wes Kocher 5e8bdb175d Merge inbound to m-c a=merge
MozReview-Commit-ID: A85cs7Yriqj
2017-04-25 13:53:00 -07:00
Andrea Marchesini c4efbc7670 Bug 1358109 - Use IPCBlob in PFilePicker, r=smaug 2017-04-25 14:07:30 +02:00
Jeremy Chen 3e5064f08f Bug 1348173 - stylo: combined gecko side patch for -moz-border-*-colors support. r=heycam
MozReview-Commit-ID: 53gWkWKJNmV

--HG--
extra : rebase_source : 5bd1ddaf954533094c77a3ca5bdf9f3c3441056f
2017-04-25 14:50:44 +08:00
Iris Hsiao 28a432c0ec Backed out changeset 9c7c061b959f (bug 1348173) for hazard busted 2017-04-25 14:24:10 +08:00
Aryeh Gregor af57d2df0f Bug 1251198 - Remove various obsolete events from document.createEvent r=smaug
Other browsers do not support any of these (IIRC), telemetry reports
essentially zero usage, and supporting them is contrary to the DOM spec.

Notes on specific events:

CommandEvent and SimpleGestureEvent: These are not supposed to be
web-exposed APIs, so I hid the interfaces from web content too
(necessary to avoid test_all_synthetic_events.html failures).

DataContainerEvent: This was a non-standard substitute for CustomEvent
that seemed to have only one user, so I removed it entirely and switched
the user (MozillaFileLogger.js) to CustomEvent.

ScrollAreaEvent: This is entirely non-standard, but we apparently expose
it deliberately to web content, so I didn't see any reason to remove it
from createEvent.

SimpleGestureEvent and XULCommandEvent: Can still be created from
createEvent(), but not by content.

TimeEvent: This is still in because it has no constructor, so there's no
other way to create it.  Ideally we'd update the SMIL spec to add a
constructor.  I did remove TimeEvents.

MozReview-Commit-ID: 7Yi2oCl9SM2

--HG--
extra : rebase_source : 199ab921acfc531b8b85e77f90fcd799b03c887b
2017-04-20 15:45:37 +03:00
Jeremy Chen 9cd2c96926 Bug 1348173 - stylo: combined gecko side patch for -moz-border-*-colors support. r=heycam
1. add binding functions for -moz-border-*-colors support.

  In Gecko, we use double pointers to nsBorderColors to store -moz-border-*-colors.
  The computed values of -moz-border-*-colors are set by couple member functions.

  To pass the computed value from Servo to Gecko, we need support for these member
  functions as well. So, I'm adding some binding functions in this patch. The
  actual use of these bindings to pass/store the computed values is separated
  in the following patch, which should be a pure Servo change. See servo PR:
  https://github.com/servo/servo/pull/16586.

2. update test expectations for -moz-border-*-colors support.

  Note that with the support of -moz-border-*-colors, 165 mochitests and 17 reftests
  could be fixed.

MozReview-Commit-ID: KDbp8C6Aoqd

--HG--
extra : rebase_source : 7d9675d9ece091ea6957dcae7d28c39066e69035
2017-04-24 18:23:52 +08:00
Kit Cambridge c32b6bb66b Bug 1359290 - Fix "notifiction" typos. r=markh
MozReview-Commit-ID: 1d9QQUQckQW

--HG--
extra : rebase_source : 2c24a54476f0e970db8d18afae7c4232206b8bd2
2017-04-24 18:51:45 -07:00
Farmer Tseng 54235886c3 Bug 1345710 - part3: implement PDFViaEMFPrintHelper to convert PDF to EMF r=cjku,jwatt
This class helps draw a PDF file to a given Windows DC.

MozReview-Commit-ID: IjZAIcN3bND

--HG--
extra : rebase_source : 035dfbf5380316aacae8e1e1591d81971c47b843
2017-01-10 17:43:16 +08:00
Farmer Tseng 4971e86b5c Bug 1345710 - part2: implement a PDFiumEngineShim class to link to PDFium symbols r=cjku,jwatt
This class exposes an interface to PDFium library and takes care of loading and
linking to the appropriate PDFium symbols.

MozReview-Commit-ID: 32jZD6d0KFw

--HG--
extra : rebase_source : 1d0580cbc8dc8687656ce32654d679da54104a33
2016-12-02 12:02:56 +08:00
Farmer Tseng 377e7ae977 Bug 1345710 - part1: implement a WindowsEMF class to support Windows Enhance Metafile r=cjku,jwatt
WindowsEMF could be initialized with the path of a file where the EMF data
should be stored. If pass null point to the constructor that means the EMF data
are store in memory. Consumers can call GetDC() to get a HDC. It can be drawn to
generate the EMF output. After finishing with the HDC, call FinishDocument() to
finish writing the EMF output. Then consumers can call Playback() to play the
EMF's drawing commands onto the given DC. Once consumers don't use WindowsEMF
anymore, call ReleaseEMFHandle() to release object's handle. If the EMF output
is in memory, it is deleted. If it is on disk, it is not.

Consumers also can initialize WindowsEMF with an existing EMF file. They can
only use Playback().

MozReview-Commit-ID: 8hUsx8b2CXz

--HG--
extra : rebase_source : 99e38e61a00bfae45ec9102b3b23a095a7f3af1e
2016-12-02 11:43:44 +08:00
Farmer Tseng 3222ef2cdb Bug 1361949 - Add missing 'using namespace::widget' to widget/windows/nsDragService.cpp r=jwatt
Because ModifierKeyState is in the 'mozilla::widget' namespace, this file uses
it without qualification.

MozReview-Commit-ID: H6t3AqLjRwJ

--HG--
extra : rebase_source : 69b788761ee332cc94acc4be6ae6ce0bb50f0e98
2017-05-04 17:31:23 +08:00
Karl Tomlinson 606fb957aa bug 1319650 draw tab gap with tabpanel style context r=stransky+263117
This is more consistent with moz_gtk_tabpanels_paint() and avoids
modifying the tab style context.

MozReview-Commit-ID: HpKSVrpvO9b

--HG--
extra : rebase_source : f4d4da5dc8419671c8c27586f7b370837311744b
2016-11-29 18:50:20 +13:00
Karl Tomlinson fb0c2feb3e bug 1319650 mimic gtk_style_context_save() in WidgetStyleCache with a new context r=stransky+263117
This makes balancing with gtk_style_context_restore()/ReleaseStyleContext()
unnecessary, and the style resolution cached in the style contexts is not
invalidated so frequently.

MozReview-Commit-ID: BKwyqoQsjv2

--HG--
extra : rebase_source : 4733d66f8265007555cc17568033ece09e6cb2dc
2016-12-02 12:39:23 +13:00
Brendan Dahl a071a0f003 Bug 1356681 - Expand headless mode support for linux. r=automatedtester,jrmuizel,kanru
Full Firefox on Linux can now be run with a --headless flag.
This includes seven parts:
1) Running all marionette tests in headless mode.
2) Prevents crashes where Firefox calls into GTK.
3) Adds a headless screen helper which supports changing the headless
screen size with the environment variables MOZ_HEADLESS_WIDTH and
MOZ_HEADLESS_HEIGHT.
4) Supports simulating moving a headless window.
5) Adds a stubbed out nsSound implementation.
6) Supports simulating size mode changes of headless windows.
7) Adds the --headless flag for Firefox.
2017-05-18 17:47:10 -07:00
Wes Kocher 5717a4e446 Merge m-c to inbound, a=merge
MozReview-Commit-ID: EgmkxLul9DE
2017-05-18 17:19:40 -07:00
Kris Maglione 81e0fbc6ee Bug 1365660: Part 5c - Enable compositing for popups with remote content on OS-X. r=mstange
MozReview-Commit-ID: 90JJVJ2eR9C

--HG--
extra : rebase_source : 23acd7c81567fed7267271a24ebe187a11267b9e
2017-05-17 14:46:11 -07:00
Kris Maglione e162499bf5 Bug 1365660: Part 4 - Only enable APZ for popups which contain remote content. r=kats
We only ever need to enable APZ for popups which contain remote content. In
theory, enabling it for other popups shouldn't hurt, but having it enabled
adds overhead that we'd rather avoid, and causes painting issues under some
circumstances.

Ideally, the painting issues should be fixed, but disabling APZ is a good
short term workaround, and we should try to avoid the unnecessary overhead
either way.

MozReview-Commit-ID: AOivnTQBWQh

--HG--
extra : rebase_source : a1636aebdea84235e57922226c64fb987a4937a7
2017-05-16 14:28:20 -07:00
Kris Maglione 444c7656ff Bug 1365660: Part 2 - Add a HasRemoteContent flag to popup widgets that contain remote browsers. r=kats,bas
There are several behaviors that we only need to apply to popups which are
known to contain remote content. And since those behaviors can cause issues
elsewhere, we need to be able to identify popups which should contain remote
content, and treat them specially, where appropriate.

MozReview-Commit-ID: EMFrSP8lZiD

--HG--
extra : rebase_source : 5ee9da422081098d8099a048c7704008a06a7241
2017-05-17 10:16:25 -07:00
Jim Chen 96684881fe Bug 1365485 - Remove GeckoInterface.getDefaultChromeURI; r=droeh
Add getChromeUri/setChromeUri APIs to GeckoView, to allow each
GeckoView's chrome URI to be set individually. This lets us remove
GeckoInterface.getDefaultChromeURI. This patch also changes the default
chrome URI to the GeckoView default, and let Fennec specify its chrome
URI (browser.xul) inside GeckoApp.

MozReview-Commit-ID: Gkwbp8VyLcu
2017-05-18 18:09:20 -04:00
Jim Chen b5676f0d84 Bug 1365127 - Move history accessors from GeckoAppShell to GlobalHistory; r=droeh
Move checkUriVisited, markUriVisited, and setUriTitle from
GeckoApp/GeckoAppShell to GlobalHistory. Make them static and directly
accessible from native code, so that we can remove those methods from
GeckoInterface.

MozReview-Commit-ID: JrmlfeKibaW
2017-05-18 18:09:16 -04:00
Jim Chen 5412475e7c Bug 1365126 - Move shortcut creation to static methods in GeckoApplication; r=droeh
Move shortcut creation code in GeckoApp to GeckoApplication, and make
the methods static so that we can call them without a GeckoInterface
instance. This lets us remove GeckoInterface.createShortcut.

MozReview-Commit-ID: AUnQGI02Bk
2017-05-18 18:09:05 -04:00
Jim Chen 9fe9e6e1c3 Bug 1365122 - Move launchOrBringToFront from GeckoAppShell to GeckoApp; r=droeh
Move GeckoAppShell.launchOrBringToFront to GeckoApp, so that we can use
GeckoActivityMonitor to check whether BrowserApp is the current
foreground Activity. This lets us remove GeckoInterface.isForegrounded.

MozReview-Commit-ID: CgjnaNK8OGW
2017-05-18 18:09:04 -04:00
Stephen A Pohl ce1514ce6c Bug 1365825: Fix occasional crashes on OSX when handling custom shortcuts. r=mstange 2017-05-18 15:37:01 -04:00
Sebastian Hengst 9a4acf2991 Backed out changeset dec83a85f824 (bug 1358109) for failing mochitest dom/indexedDB/test/test_blob_worker_xhr_read_slice.html. r=backout 2017-04-24 15:44:10 +02:00
Andrea Marchesini 25e4c65c6d Bug 1358109 - Use IPCBlob in PFilePicker, r=smaug 2017-04-24 12:16:49 +02:00
Iris Hsiao 73a19d020e Backed out changeset 9f2fe5e3f78c (bug 1357307) for assertion failure at nsXPLookAndFeel.cpp 2017-04-24 15:28:01 +08:00
vincentliu 31140c21b1 Bug 1357307 - Make sure gfxPrefs instance is created before accessing it. r=milan 2017-04-24 14:10:17 +08:00
Iris Hsiao 8b9629d52e Merge mozilla-central to mozilla-inbound 2017-04-24 12:04:12 +08:00
Jim Mathies 8bca136933 Bug 1351676 - Add Windows theme related look and feel values to the content process look and feel cache. r=mconley
MozReview-Commit-ID: FFGLOnH2TQS

--HG--
extra : rebase_source : d72db64c56821fb657555b9308f3ed01a35f64fa
2017-04-13 11:13:49 -05:00
Sebastian Hengst 7fccfb74e9 merge mozilla-central to autoland. r=merge a=merge 2017-04-22 10:49:35 +02:00
Sebastian Hengst 473a1509ea merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 289I7nCINwK
2017-04-22 10:48:16 +02:00
Brendan Dahl 0dd2fb109f Bug 1353938 - Add a basic clipboard for headless.
Adds a headless clipboard that supports copying
and pasting text.
2017-04-21 15:21:51 -07:00
Markus Stange fcbd8c5f38 Bug 1355340 - Don't attempt to accumulate line scrolls for line scroll events. r=masayuki
MozReview-Commit-ID: 6xvqJBVupYo

--HG--
extra : rebase_source : b7918ff3cea65061f958ab18f9dd1ec1a5a9a208
2017-04-20 15:21:48 -04:00
Carsten "Tomcat" Book 975e251aff merge mozilla-inbound to mozilla-central a=merge 2017-04-21 10:57:02 +02:00
Masayuki Nakano d457e48592 Bug 1217700 part.4 Add automated tests for IMEContentObserver r=m_kato
IMEContentObserver notifies IME of 3 notifications at most when editor is changed.

The order is:
1. text change (with merged range if 2 or more change occurred during an edit transaction)
2. selection change (only the latest selection change. other changes occurred before that during an editor transaction are ignored)
3. position change (scrolled, resized, window moved, etc)

This does not check the behavior in designMode because some operation in testWithHTMLEditor() causes unexpected behavior, e.g., moving focus. It *might* be bug of design mode.  However, it doesn't matter for this bug.  The important thing of this bug is, there should be automated tests for IMEContentObserver.  And fortunately, IMEContentObserver does not check the type of editor.  So, it's enough to test only contenteditable element for HTMLEditor at least for now.  Therefore, I gave up to test it in designMode for now.

MozReview-Commit-ID: 7L6ZlbVMU2P

--HG--
extra : rebase_source : 8282fe7aa2f4d405f2576f05d46b60b044223855
2017-04-19 21:57:58 +09:00
Manish Goregaokar 0fbbeaac11 Bug 1349417 - Part 10: Use mutex to guard system font computation; r=bholley
MozReview-Commit-ID: CBKdItjolm9
2017-04-21 15:41:02 -07:00
Masayuki Nakano 7b52d07cd2 Bug 1217700 part.2 IMEContentObserver should observe all possible notifications and check if it should be notified when it occurs r=m_kato
IMEContentObserver can store pointer of IMENotificationRequests of its mWidget.  Therefore, it can check the requests dynamically when it receives content change or layout change.

This patch makes IMEContentObserver stores IMENotificationRequests as pointer and check it at every change notification received.  Additionally, notification request may be changed due to focus move or something.  Therefore, this patch makes IMEContentObserver and IMEContentObserver::IMENotificationSender() check if the notifications are still necessary.

MozReview-Commit-ID: 2uU2wN15D8v

--HG--
extra : rebase_source : 6086e0293343632df43087c767ad00521e764476
2017-04-13 14:32:12 +09:00
Masayuki Nakano 0789f7b595 Bug 1217700 part.1 nsIWidget should return reference to IMENotificationRequests r=m_kato
IMEContentObserver may need to change notifications to send when TextInputProcessor begins input transaction.  In current design, IMEContentObserver needs to retrieve IMENotificationRequests at every change.  However, if nsIWidget returns a reference to its IMENotificationRequests, IMEContentObserver can call it only once.

For that purpose, this patch changes nsIWidget::GetIMENotificationRequests() to nsIWidget::IMENotificationRequestsRef() and make it return |const IMENotificationRequests&|.  However, if the lifetime of the instance of IMENotificationRequest is shorter than the widget instance's, it's dangerous.  Therefore, it always returns TextEventDispatcher::mIMENotificationRequests.  TextEventDispatcher's lifetime is longer than the widget.  Therefore, this guarantees the lifetime.

On the other hand, widget needs to update TextEventDispatcher::mIMENotificationRequests before calls of nsIWidget::IMENotificationRequestsRef().  Therefore, this patch makes TextEventDispatcher update proper IMENotificationRequests when it gets focus or starts new input transaction and clear mIMENotificationRequests when it loses focus.

Note that TextEventDispatcher gets proper requests both from native text event dispatcher listener (typically, implemented by native IME handler class) and TextInputProcessor when TextInputProcessor has input transaction because even if TextInputProcessor overrides native IME, native IME still needs to know the content changes since they may get new input transaction after that.

However, there may not be native IME handler in content process.  If it runs in Android, PuppetWidget may have native IME handler because widget directly handles IME in e10s mode for Android.  Otherwise, native IME handler is in its parent process.  So, if TextInputHandler has input transaction in content process, PuppetWidget needs to behave as native event handler.  Therefore, this patch makes PuppetWidget inherit TextEventDispatcherListener and implements PuppetWidget::IMENotificationRequestsRef().

MozReview-Commit-ID: 2SW3moONTOX

--HG--
extra : rebase_source : d2634ada6c33dbf7a966fadb68608411ee24bfab
2017-04-15 01:35:58 +09:00
Chris Peterson 9149c50f65 Bug 1356843 - Fix -Wcomma warnings in widget/cocoa/nsDeviceContextSpecX.mm. r=spohl
clang's -Wcomma warning warns about suspicious use of the comma operator such as between two statements.

widget/cocoa/nsDeviceContextSpecX.mm:246:26 [-Wcomma] possible misuse of comma operator here
widget/cocoa/nsDeviceContextSpecX.mm:247:32 [-Wcomma] possible misuse of comma operator here

MozReview-Commit-ID: GhZQgNemLAE

--HG--
extra : rebase_source : 0bcc8d425ba700eb6025ad92b2999c16e07a082b
extra : source : 753076ad649966f1a9fa0c0e8bd3213ece860d28
2017-03-27 21:26:25 -07:00
Carsten "Tomcat" Book 7bcdfe36bc Merge mozilla-central to autoland 2017-04-19 10:57:24 +02:00
Carsten "Tomcat" Book 44e9c21039 merge mozilla-inbound to mozilla-central a=merge 2017-04-19 10:32:48 +02:00
Jim Chen 8c1d0c7cd6 Bug 1356563 - Only set global ready state on native widget loading; r=snorp
Our "chrome-document-loaded" observer may detect several different types
of widgets that can exist in the parent process, including the Android
nsWindow, PuppetWidget, etc. We should only set the global state to
ready when the first top-level nsWindow has loaded, and not just any
window.
2017-04-18 17:42:59 -04:00
Mike Hommey 33a7e408ce Bug 1357323 - Remove the gonk code that was referenced by the build system. r=gps
--HG--
extra : rebase_source : 1d30ebcbdbcf596c944e1eec981f85db341485e5
2017-04-18 17:46:39 +09:00
Mike Hommey 34e619d1c1 Bug 1357323 - Remove support for gonk in the build system. r=gps
Everything depending on the widget being gonk can go away, as well as
everything depending on MOZ_AUDIO_CHANNEL_MANAGER, which was only
defined on gonk builds under b2g/ (which goes away in bug 1357326).

--HG--
extra : rebase_source : 9f0aeeb7eea8417fa4e06d662d566d67ecaf2a24
2017-04-18 16:56:09 +09:00
Mike Conley 1f5fc5c065 Bug 1356575 - Don't warn on SetTransparencyMode on Windows if the mode isn't actually changing. r=jimm
MozReview-Commit-ID: J7dV0xKuEL7

--HG--
extra : rebase_source : bdf309e0fbae9d78a7b6968b3e43e0fdeb0edc94
2017-04-18 14:35:38 -04:00
Jim Mathies e1d348db3d Bug 1344907 - Fire observer events informing front end about changes in input method (touch vs. pointer input). r=masayuki
MozReview-Commit-ID: 4YOKD0tWZNN
2017-04-18 10:19:02 -05:00
Masatoshi Kimura df6ee97f6a Bug 1356218 - Make screen.colorDepth multi-monitor aware. r=jimm
MozReview-Commit-ID: JrQL23DgZsw

--HG--
extra : rebase_source : 932e17cc61ba1a7344b1740ed14ece0484200e32
2017-04-18 00:21:55 +09:00
Sebastian Hengst cfea98eabf merge mozilla-central to autoland. r=merge a=merge 2017-04-15 20:08:03 +02:00
Sebastian Hengst 8bd051237a merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: JpAhOPjgvkF
2017-04-15 19:59:24 +02:00
Markus Stange 10503b8ef0 Bug 1313977 - Don't round fractional mouse coordinates up, because doing so might push them outside the window. r=kats
On my machine, if I have my mouse cursor positioned flush against the right
edge of my screen (which is 1440x900@2x), locationInWindow has an x coordinate
of 1439.99609375. This value was rounded up to an integer screen coordinate of
2880, and for that coordinate we don't find a target APZC, and consequently
refuse to scroll.

MozReview-Commit-ID: CJic4g3Y6Ag

--HG--
extra : rebase_source : 6e2405e9370046b5359d3800c1d0f70c3059074e
2017-04-15 11:02:09 -04:00
Markus Stange 7463009e1d Bug 1348424 - Drop the window's reference to mColor before releasing it. r=spohl, a=dveditz
MozReview-Commit-ID: LwRZwLpFUtD

--HG--
extra : rebase_source : 4efacd0e82cdcca5a1ec6d459a91dc58cb424d20
extra : histedit_source : b52922153beb627f498ba46ecc7504e011760bc1
2017-04-07 18:07:50 -04:00
Masatoshi Kimura ea4c0cc826 Bug 1354020 - Use per-monitor v2 on Creators Update. r=jfkthame
MozReview-Commit-ID: FiO3DupULFu

--HG--
extra : rebase_source : f2d2018cb549a07f89e18a42f842886a7ef9c063
2017-04-07 07:14:14 +09:00
Masatoshi Kimura 14b8ca8af8 Bug 1356565 - Use AddFloatVarCache to cache layout.css.devPixelsPerPx. r=kanru
MozReview-Commit-ID: HZ9pBiU17H3

--HG--
extra : rebase_source : 4c8dba672927362e7ecace6d49ad1452af7bc1e2
extra : source : 348f81ec40a7894fbf1c7c5112beafb79970b956
2017-04-09 01:28:54 +09:00
Sebastian Hengst d8496d0a1f merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: EjT9dcum69m
2017-04-14 23:56:10 +02:00
Joel Maher 99137683e9 Bug 1355089 - add BUG_COMPONENT to widget/* files. r=mstange,jimm
MozReview-Commit-ID: 49Ug2HTqHnf
2017-04-14 05:54:36 -04:00
Masatoshi Kimura 7e1158fd16 Bug 1356023 - Remove nsIScreenManager.systemDefaultScale. r=jfkthame
MozReview-Commit-ID: 6Ha8XrJBSiU

--HG--
extra : rebase_source : a83a64acf01dc9d1a0593c0ddbff76f74809a79b
2017-04-13 07:20:35 +09:00
Markus Stange b2a8c14305 Bug 1348424 - Grab a reference to the window when swapping out its background color. r=spohl, a=dveditz
MozReview-Commit-ID: HS1AYyxfMWS

--HG--
extra : rebase_source : cad2cfae25d746a240d9c98cc61fc824f60d2e0e
2017-03-23 14:29:51 -04:00
Markus Stange c39ae07ad1 Bug 1354715 - Restore the right background color. r=spohl
MozReview-Commit-ID: K7SF3rNPWUT

--HG--
extra : rebase_source : 5eb41ffdb2c115ccb29f73fd94a25a359d66346e
2017-04-07 18:05:24 -04:00
Wes Kocher 514e230373 Merge inbound to central, a=merge 2017-04-13 17:24:01 -07:00
Wes Kocher 4fab232444 Merge autoland to central, a=merge 2017-04-13 13:03:43 -07:00
Eugen Sawin f6e5f80eca Bug 1351169 - [1.2] Update GeckoView's state after finishing window reattachment. r=jchen 2017-04-13 18:08:15 +02:00
Kartikaya Gupta b4341d2689 Merge m-c to graphics
MozReview-Commit-ID: EGaA6e4loBM
2017-04-13 11:08:02 -04:00
Wes Kocher 2986c817dc Merge autoland to central, a=merge CLOSED TREE 2017-04-12 15:13:30 -07:00
Wes Kocher 25d50f2c30 Merge inbound to central, a=merge 2017-04-12 14:39:09 -07:00
Kartikaya Gupta 2807504086 Merge m-c to graphics
MozReview-Commit-ID: 3cMszvTBvR8
2017-04-12 08:54:40 -04:00
Kartikaya Gupta aa20d100c1 Merge m-c to graphics
MozReview-Commit-ID: Ij5C7MUete4
2017-04-11 10:09:54 -04:00
sotaro a4ee7fc52d Bug 1354434 - Update PuppetWidget::Paint() as to handle WebRenderLayerManager r=mattwoodrow 2017-04-11 15:12:35 +09:00
Kartikaya Gupta 18bf4caba2 Merge m-c to graphics
MozReview-Commit-ID: ICVAgHmKVL4
2017-04-10 08:47:20 -04:00
sotaro 292e80ffe3 Bug 1354474 - Add FlushRendering() and Composite() support to WebRenderLayerManager r=mattwoodrow 2017-04-10 15:58:29 +09:00
Wes Kocher 5eabc03c18 Merge m-c to autoland a=merge 2017-04-10 16:55:21 -07:00
Brendan Dahl b082e33320 Bug 1353939 - Disable drag service in headless mode. r=jrmuizel
Drag service calls into GTK causing a crash in headless mode.
2017-04-10 11:30:52 -07:00
Sebastian Hengst 1828ea89ca Backed out changeset 7fdcabdbb675 (bug 1024669) for failing mda, GTest and talos jobs. r=backout on a CLOSED TREE 2017-04-10 19:05:44 +02:00
Carsten "Tomcat" Book 3a762886de Merge mozilla-central to mozilla-inbound 2017-04-07 15:33:03 +02:00
Wes Kocher 7da1f4c235 Merge m-c to inbound a=merge 2017-04-06 15:30:43 -07:00
Iris Hsiao d13a81eccb Merge mozilla-central to mozilla-inbound 2017-04-12 11:24:24 +08:00
Dylan Roeh 739267098f Bug 1322575 - Add private mode support to GeckoView. r=jchen,esawin 2017-04-11 16:53:20 -05:00
Milan Sreckovic 20edf8ccd6 Bug 1257375: If the first adapter found is 0/0, look for a valid device using the alternative approach (already used for the second GPU detection.) r=kats
MozReview-Commit-ID: FryxdDPUBtA

--HG--
extra : rebase_source : 38b04bbb718f20b6b8483be887cf868a0d5e4384
2017-04-11 21:39:20 -04:00
vincentliu bd535f2320 Bug 1343475 - Add labeling for InitWithCallback in nsNativeTheme::QueueAnimatedContentForRefresh(). r=smaug 2017-04-13 13:46:47 +08:00
vincentliu bd43511f7f Bug 1343475 - Add labeling for Dispatch in PuppetWidget::Invalidate(). r=smaug 2017-04-13 13:46:28 +08:00
Lee Salzman 2b00b214b7 Bug 1354619 - allow nsWindow::SetTransparencyMode when it preserves current mode. r=mconley
MozReview-Commit-ID: FEqPTGlpbjE
2017-04-12 16:36:20 -04:00
Masatoshi Kimura 8f857ca1d0 Bug 1353493 - Cache the return value for nsIWidget::DefaultScaleOverride(). r=kanru
MozReview-Commit-ID: ExP179bxbHe

--HG--
extra : rebase_source : cf242fe02c009fb4f37028000f63c0c1774546cc
extra : intermediate-source : aa0b3009c855c71279f404fb211126ae8bb07b85
extra : source : 80abe5b0a796774e8aef7690e7c8c0be6892f4c1
2017-04-06 23:30:09 +09:00
Masatoshi Kimura 6d0441a40a Bug 1352773 - Take into account DefaultScaleOverride in Screen::GetDefaultCSSScaleFactor. r=kanru
MozReview-Commit-ID: EJidy1NH3DX

--HG--
extra : rebase_source : d095c493de0acdd12cebc61b47d406a9547601ed
2017-04-05 22:11:34 +09:00
Kartikaya Gupta 035b0aa65f Bug 1354924 - Fix mousewheel multiplier prefs for external mouse devices on OS X. r=botond
The code in the OS X widget was calling ReceiveInputEvent on IAPZCTreeManager
with a ScrollWheelInput, which would bypass the multiplier code. This modifies
the widget to use a WidgetWheelEvent instead, so that it goes through the
IAPZCTreeManager multiplier handling for wheel inputs. Other platforms already
send wheel events in WidgetWheelEvent format so they don't have this problem.

MozReview-Commit-ID: 5gOOGnfD87W

--HG--
extra : rebase_source : f13c6e13a89ce450fa4f287eb30f054fe3fc326a
2017-04-11 09:39:06 -04:00
Masayuki Nakano 61ce5526c6 Bug 1296220 Rename nsIMEUpdatePreference to mozilla::widget::IMEUpdatePreference r=m_kato
MozReview-Commit-ID: 2rIXTlwA6my

--HG--
extra : rebase_source : a51be3edd717092738c2b5e8ccc4f60540712bfd
2017-04-11 21:24:55 +09:00
John Lin ab9060d531 Bug 1349883 - part 3: resolve decode promise according to buffer status. r=jya
MozReview-Commit-ID: JwOOi56t30Y

--HG--
extra : rebase_source : 48f0cc0bfde3f84cc0574c5a5da6c738112c843f
2017-04-07 17:07:02 +08:00
Masayuki Nakano fd9e71872c Bug 1347835 NativeKey should dispatch keypress events even if WM_KEYDOWN is processed by IME but followed by printable WM_(SYS)CHAR messages r=m_kato
Some IME may handle WM_KEYDOWN message before application and may set the keycode value to VK_PROCSSKEY but not do actually. Similarly, IME may handle WM_KEYDOWN message and replace following WM_CHAR messages with different characters.
Therefore, even if WM_KEYDOWN message comes with VK_PROCESSKEY, NativeKey shouldn't stop dispatching keypress events if it detects following printable char messages.

MozReview-Commit-ID: DcC2qgcLDrQ

--HG--
extra : rebase_source : 85c6a5dd5700b4032d1a21ed28b25c313cefa5cd
2017-04-10 15:32:02 +09:00
James Willcox 224324d56d Bug 1344347 - Move Android out-of-process decoder service into GeckoView r=jolin
MozReview-Commit-ID: QTnp95uhQV


--HG--
rename : mobile/android/base/aidl/org/mozilla/gecko/media/FormatParam.aidl => mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/media/FormatParam.aidl
rename : mobile/android/base/aidl/org/mozilla/gecko/media/ICodec.aidl => mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/media/ICodec.aidl
rename : mobile/android/base/aidl/org/mozilla/gecko/media/ICodecCallbacks.aidl => mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/media/ICodecCallbacks.aidl
rename : mobile/android/base/aidl/org/mozilla/gecko/media/IMediaDrmBridge.aidl => mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/media/IMediaDrmBridge.aidl
rename : mobile/android/base/aidl/org/mozilla/gecko/media/IMediaDrmBridgeCallbacks.aidl => mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/media/IMediaDrmBridgeCallbacks.aidl
rename : mobile/android/base/aidl/org/mozilla/gecko/media/IMediaManager.aidl => mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/media/IMediaManager.aidl
rename : mobile/android/base/aidl/org/mozilla/gecko/media/Sample.aidl => mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/media/Sample.aidl
rename : mobile/android/base/aidl/org/mozilla/gecko/media/SessionKeyInfo.aidl => mobile/android/geckoview/src/main/aidl/org/mozilla/gecko/media/SessionKeyInfo.aidl
rename : mobile/android/base/java/org/mozilla/gecko/media/AsyncCodec.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/AsyncCodec.java
rename : mobile/android/base/java/org/mozilla/gecko/media/AsyncCodecFactory.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/AsyncCodecFactory.java
rename : mobile/android/base/java/org/mozilla/gecko/media/Codec.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/Codec.java
rename : mobile/android/base/java/org/mozilla/gecko/media/CodecProxy.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/CodecProxy.java
rename : mobile/android/base/java/org/mozilla/gecko/media/FormatParam.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/FormatParam.java
rename : mobile/android/base/java/org/mozilla/gecko/media/GeckoMediaDrm.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/GeckoMediaDrm.java
rename : mobile/android/base/java/org/mozilla/gecko/media/GeckoMediaDrmBridgeV21.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/GeckoMediaDrmBridgeV21.java
rename : mobile/android/base/java/org/mozilla/gecko/media/GeckoMediaDrmBridgeV23.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/GeckoMediaDrmBridgeV23.java
rename : mobile/android/base/java/org/mozilla/gecko/media/JellyBeanAsyncCodec.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/JellyBeanAsyncCodec.java
rename : mobile/android/base/java/org/mozilla/gecko/media/MediaDrmProxy.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/MediaDrmProxy.java
rename : mobile/android/base/java/org/mozilla/gecko/media/MediaManager.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/MediaManager.java
rename : mobile/android/base/java/org/mozilla/gecko/media/RemoteMediaDrmBridge.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/RemoteMediaDrmBridge.java
rename : mobile/android/base/java/org/mozilla/gecko/media/RemoteMediaDrmBridgeStub.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/RemoteMediaDrmBridgeStub.java
rename : mobile/android/base/java/org/mozilla/gecko/media/SamplePool.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/SamplePool.java
rename : mobile/android/base/java/org/mozilla/gecko/media/SessionKeyInfo.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/SessionKeyInfo.java
rename : mobile/android/base/java/org/mozilla/gecko/mozglue/SharedMemory.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/mozglue/SharedMemory.java
2017-04-06 14:32:58 -05:00
Sotaro Ikeda 1b3f1e93ba Bug 1353958 - Add Gpu process reset handling for QuantumRender. r=kats
MozReview-Commit-ID: 6ZkB1ezyWlK
2017-04-06 12:56:10 -04:00
Masatoshi Kimura e4f7bfae30 Bug 1316717 - Use the system DPI scaling factor to calculate the icon size in GetGutterSize. r=jfkthame
We have to use the system scale here for consistency because GetThemePartSize and GetThemeMargins will always assume the system scale and callers of GetGutterSize will adjust the size using GetThemeDpiScaleFactor.

This patch will also fix an existing bug where native-themed elements are not scaled when layout.css.devPixelsPerPx has a non-default value on Windows 7.

MozReview-Commit-ID: ILHiOrkTPoT

--HG--
extra : rebase_source : 130dd313ed478d1fe8a9b88ce2705df985c817c3
2017-04-09 10:00:08 +09:00
Cervantes Yu cc5836fbae Bug 1024669 - Part 1: Annotate crash reports with thread names. r=gsvelto
NS_SetCurrentThreadName() is added as an alternative to PR_SetCurrentThreadName()
inside libxul. The thread names are collected in the form of crash annotation to
be processed on socorro.

MozReview-Commit-ID: 4RpAWzTuvPs
2017-02-07 18:57:23 +08:00
Mats Palmgren d0a6556067 Bug 1357655 part 2 - [css-ui] Add an explicit 'appearance:auto' to a couple of reftest that needs it.
MozReview-Commit-ID: 82ANStMIm5z
2017-04-21 02:24:19 +02:00
Randall Barker a606cd8b60 Bug 1335895 - Android GeckoView Dynamic Toolbar Version 3 r=botond,dvander,jchen,kats
This version of the Dynamic Toolbar moves the animation of the toolbar
from the Android UI thread to the compositor thread. All animation for
showing and hiding the toolbar are done with the compositor and a static
snapshot of the real toolbar.

MozReview-Commit-ID: BCe8zpbkWQt
2017-04-20 15:15:14 -07:00
Cervantes Yu 364e524eca Bug 1024669 - Part 1: Annotate crash reports with thread names. r=gsvelto
MozReview-Commit-ID: 4RpAWzTuvPs
2017-02-07 18:57:23 +08:00
Carsten "Tomcat" Book 02ddc23c74 Backed out changeset 7a52d887bcea (bug 1024669) for bustage 2017-04-10 11:43:49 +02:00
Cervantes Yu ece1ce1a7d Bug 1024669 - Part 1: Annotate crash reports with thread names. r=gsvelto
MozReview-Commit-ID: 4RpAWzTuvPs
2017-02-07 18:57:23 +08:00
Martin Stransky 4e48986e78 Bug 1353147 - Allow Gtk+ theme override, r=karlt
Allow to override Gtk+ theme for content process when e10s is enabled.

MozReview-Commit-ID: 1Kd2jLpBavA

--HG--
extra : rebase_source : b45171954ed9168e9d46511d53800044d91e5558
2017-04-04 22:30:12 +02:00
Wes Kocher 3d900a5d7e Merge inbound to central, a=merge 2017-04-05 14:16:37 -07:00
Mike Conley 6e00fea9a3 Bug 1344839 - Don't allow transparent top-level windows on Windows. r=jimm
MozReview-Commit-ID: 6bXHqDuUMw6

--HG--
extra : rebase_source : 0a9c115d135b9fa25e0c771da1c0ed7c0ff114d3
2017-03-21 22:15:55 -04:00
Mike Conley 2a1794a4f5 Bug 1344839 - Don't allow transparent top-level windows on GTK. r=karlt
MozReview-Commit-ID: 9UP1UYcaF2F

--HG--
extra : rebase_source : 9a47973c5127561b82d2ec9dc19b86459f7c1936
2017-03-21 22:15:36 -04:00
Stone Shih c2ff93f196 Bug 1345398 - Fire WidgetMouseEvent by handling pen generated mouse messages to get Windows native dnd supports. r=jimm
Due to Windows doesn't support dnd in the pen message handler, we can't handle and consume WM_POINTER* to fire WidgetMouseEvent. On the other hand, we can't get some pen related attributes from Windows mouse messages. This patch gets and caches the attributes by handling WM_POINTER* but not fire WidgetMouseEvent to support dnd and pen related attributes. When handling the subsequent Windows mouse messages, we use the cached attributes to fire WidgetMouseEvent. Considering we might need to use WM_POINTER* someday, use a preference to control the behavior.

MozReview-Commit-ID: 5E60KO1zo0W
2017-03-13 15:40:52 +08:00
Brendan Dahl a1f2e12af8 Bug 1338004 - Add headless browser mode. r=jrmuizel, r=ted
Supports creating a windowless browser on Linux without an X server. Most of the
changes are just adding branches to avoid calls in to GTK which calls
into X. Some of the bigger additions were adding a separate headless widget
which implements just enough to render a page. A headless look and
feel were also added since there are many calls into GTK in the platform
specific one.
2017-04-04 10:22:00 -04:00
Wes Kocher bceaacd2b8 Merge inbound to central, a=merge 2017-04-04 11:25:13 -07:00
Aryeh Gregor b03daa975a Bug 1314388 - Remove SVGZoomEvent; r=longsonr,smaug
Some code in SVGSVGElement.cpp might be unnecessary now, but Robert said
to leave it for a followup.

MozReview-Commit-ID: 8PpRGeGrREJ
2017-04-04 15:36:22 +03:00
Wes Kocher 734b25e05c Merge m-c to inbound, a=merge 2017-04-03 14:51:06 -07:00
Tom Ritter d6b740402b Bug 1351720 Add compiler guards for MOZ_WM_STARTA11Y r=jimm
MozReview-Commit-ID: FE53LsSAF2S

--HG--
extra : rebase_source : 8362ca200f00e1ab24646c81dbfedbab93ae3ffc
2017-03-29 11:18:24 -05:00
Martin Stransky 5141ddceb3 Bug 1158076 - postpone nsLookAndFeel module initialization, r=karlt
MozReview-Commit-ID: JY83xiXT1xf

--HG--
extra : rebase_source : a936ca56024f4e5c75830e492038ac2ca1a218ae
2017-03-30 15:03:50 +02:00
Martin Stransky 55a8aace48 Bug 1158076 - add prefs to enable GTK dark themes in each process, r=karlt
Add two new prefs (widget.chrome.allow-gtk-dark-theme and widget.content.allow-gtk-dark-theme) to enable dark
themes in chrome and content when e10s is enabled.

When e10s is disabled then widget.chrome.allow-gtk-dark-theme controls both chrome and web content settings.

That may be a bit confusing but it's going to be here for two releases only (Firefox 57 is going to have e10s enabled by default) and actually matches recent state when only one ENV pref is used for both chrome and web content.

The existing MOZ_ALLOW_GTK_DARK_THEME environment variable is still considered, but, now is like widget.chrome.allow-gtk-dark-theme, no longer affecting separate content processes.

MozReview-Commit-ID: CCwriA66CNj

--HG--
extra : rebase_source : 93e9a504af3e7570f82ddaf0890e374fe939e919
2017-03-31 10:40:07 +02:00
Sebastian Hengst 427e8f836d Backed out 2 changesets (bug 1314388) for timing out in dom/svg/test/test_zoom.xhtml. r=backout
Backed out changeset 804d8199aeca (bug 1314388)
Backed out changeset b7fab6a89c1d (bug 1314388)
2017-04-02 14:37:08 +02:00
Aryeh Gregor 4a039c1336 Bug 1314388 - Remove SVGZoomEvent; r=longsonr,smaug
Some code in SVGSVGElement.cpp might be unnecessary now, but Robert said
to leave it for a followup.

MozReview-Commit-ID: 8PpRGeGrREJ
2017-04-02 13:51:33 +03:00
Oriol 9d380b2acf Bug 1325980 - Get full GFX DLL paths from UserModeDriverName as a fallback. r=kats
MozReview-Commit-ID: 1DFr2okgAdQ
2017-04-01 15:46:41 -04:00
Farmer Tseng d754d0f933 Bug 1352368 - Remove some old Windows defines from WinMessages.h r=jwatt
These defines cause include ordering issues that can result in build errors if
WinMessages.h is included before certain Windows headers.

To solve this issue this commit simply removes those defines since nowadays we
require Visua Studio 2015 to build and no longer need them.

MozReview-Commit-ID: GHMU05GUwHM

--HG--
extra : rebase_source : fcaadb93be6ff43f36ba98f164018d93c98a4e22
2017-04-01 00:44:26 +08:00
Farmer Tseng 2f28a673b1 Bug 1352339 - Add missing 'using namespace mozilla' to nsWindowDbg.cpp r=jwatt
Needed because LogLevel is in the 'mozilla' namespace, but this file uses it
without qualification.

MozReview-Commit-ID: 5o2KV1GlcqM

--HG--
extra : rebase_source : 2b6bb2b6a6b0464b9c01c055101b23373d386c0f
2017-04-01 00:42:35 +08:00
Farmer Tseng 5baa803bf8 Bug 1352339 - Add missing WinCompositorWidget.h include to nsWindowsGfx.cpp r=jwatt
We need the definition of CompositorWidgetDelegate in order to use
mCompositorWidgetDelegate.

MozReview-Commit-ID: Gr5G0SvCckk

--HG--
extra : rebase_source : 17db54c13bebb97c2d39e2dc0b69b7ad28346385
2017-04-01 00:41:00 +08:00
Andrzej Hunt 86b076ed2e Bug 1338629 - Update annotation processing classpath to reflect SDK 25.3+ r=nalexander
It looks like Google decided to split these jars out a bit, so we need to piece
them all back together.

We could probably just query the sdk version instead, but I'm not 100% sure
know when this setup changed - moreover we don't know when (if?) the paths
are likely to change again. SDK 26.0 still has lint 25.3.1, so the SDK and
lint versions don't appear to be tied.

It seems that only the lint* jars are needed to compile 'build/annotationProcessor',
however we need all the remaining jars in the classpath when running that code
in 'widget/android/bindings'.

MozReview-Commit-ID: GAKwMrVXW55

--HG--
extra : rebase_source : 4e790aaccae8ccc3f151c39bf1ef4404b2581d7a
2017-03-30 18:55:02 -07:00
Wes Kocher 23ba88918a Merge m-c to autoland, a=merge 2017-03-31 17:52:17 -07:00
Wes Kocher 483fea00ef Merge inbound to central, a=merge 2017-03-31 17:48:18 -07:00
Kartikaya Gupta 6c77e5ee0c Bug 1351777 - Use a BasicLayerManager in the content process if the corresponding parent-side layer manager isn't connected to the compositor. r=dvander
There are scenarios where we have a TabParent in the UI process hooked up to
a PuppetWidget with a BasicLayerManager. Webextensions fall into this category.
In this scenario, the parent-side layer manager is not hooked up to
the compositor (that is, there is no entry in the CompositorBridge layer tree
state map for the layers id). However, the content-side still ends up creating
a ClientLayerManager or a WebRenderLayerManager, which expects the layers id to
be registered in the compositor. This results in brokenness (in the case of the
ClientLayerManager/PLayerTransaction) or crashes (in the case of WebRenderLayerManager/
PWebRenderBridge). Instead, this patch changes this scenario to have the content
process use a BasicLayerManager which seems safer.

MozReview-Commit-ID: 3f80aZrRrmD

--HG--
extra : rebase_source : 10ec78dd7daf1c1c889929f0d79e0b75675b4b05
2017-03-31 11:43:21 -04:00
Carsten "Tomcat" Book 24a3095c04 Merge mozilla-central to autoland 2017-03-31 14:49:11 +02:00
Carsten "Tomcat" Book 095969b8ee merge mozilla-inbound to mozilla-central a=merge 2017-03-31 14:45:33 +02:00
Munro Mengjue Chiang 8c7e3d6e57 Bug 1265755 - Support encoder case for CodecProxy; r=jolin
MozReview-Commit-ID: 4cEZQs8spo7

--HG--
extra : rebase_source : 33989d576cbd15194c5d740745fd5ddf35958346
2017-03-30 08:51:12 +08:00
Munro Mengjue Chiang 0d0b538b3e Bug 1265755 - separate JavaCallbacksSupport class declaration to a different header file; r=jolin
MozReview-Commit-ID: 7Vj3G47n2bu

--HG--
extra : rebase_source : 9dac50f9a4c405b2461e7f677c58beef7f634f6e
2017-03-30 08:30:23 +08:00
Carsten "Tomcat" Book 4ac9c2ffb1 Merge mozilla-central to mozilla-inbound 2017-03-31 14:47:54 +02:00
Eugen Sawin 80710c9297 Bug 1346542 - [1.2] Move state holder to GeckoView::Window and set ready state when reattaching to window. r=jchen 2017-03-31 13:12:21 +02:00
Kan-Ru Chen 3fd811aea7 Bug 1351630 - Override BaseWidget::GetWidgetScreen r=karlt
GetScreenBounds() is slow for the GTK port so we override and use
mBounds directly in nsWindow::GetWidgetScreen()

MozReview-Commit-ID: ICElOCEzswf

--HG--
extra : rebase_source : 2fb450cc9d933346cebfdbff0b32ea4130550395
2017-03-30 09:51:44 -04:00
Masatoshi Kimura 0190f40378 Bug 1351832 - Always put the primary monitor at the top of the screen list. r=kanru
MozReview-Commit-ID: 3ZrInOUJ5bj

--HG--
extra : rebase_source : 2f68012bfc8fc71e6dda241891e5964eb24e2c55
2017-03-30 22:49:10 +09:00
Kan-Ru Chen 21b3e0be8d Bug 1351246 - Check gdk_screen_get_default() for X. r=karlt
MozReview-Commit-ID: FJr7tdu1Rsp

--HG--
extra : rebase_source : 4daa2218f57b86a2fcb9f6b3f582bae7dd65b4a4
2017-03-29 08:29:58 -04:00
Emilio Cobos Álvarez 55e9a2ee3f Bug 1350140: Update test expectations. r=emilio
MozReview-Commit-ID: 4ZTM0r5KJfn

--HG--
extra : rebase_source : 139db22ea2b38d796c6d99707818a897104e091e
2017-03-24 09:25:12 +01:00
Makoto Kato bf5a003dc8 Bug 1348177 - Part 3. Remove GetProcAddress for shell32 to use Vista+/7+ API (widget part). r=jimm
It is unnecessary to use Vista/7+ API via GetProcAddress

MozReview-Commit-ID: ELxCJev2jaZ

--HG--
extra : rebase_source : e1207ce5416d603090bd572ba745a703dadd93bf
2017-03-17 11:05:04 +09:00
Sebastian Hengst 9ab0e7db64 Backed out changeset aaaf793a4dd0 (bug 1344839) for permafailing test_leaf_layers_partition_browser_window.xul on Windows 8 x64 debug. r=backout 2017-03-29 01:19:04 +02:00
Sebastian Hengst dbd9b6d728 Backed out changeset b6a97b374a6d (bug 1344839) 2017-03-29 01:18:22 +02:00
Kartikaya Gupta 042789f2a8 Bug 1351384 - Stop using the CompositorOptions to check if WebRender is enabled. r=dvander
I suspect that the PuppetWidget is trying to create the layer manager after
it has been connected to a TabChild but before the TabChild has populated the
CompositorOptions. This results in the PuppetWidget effectively getting an
uninitialized value for the CompositorOptions, and so it sometimes randomly
creates a WebRenderLayerManager, later resulting in a crash.

It seems like exposing the potentially-uninitialized CompositorOptions from
TabChild like this is a bad idea, so I'm removing that API and using the more
reliable gfxVars in PuppetWidget. This is fine for WebRender purposes because
we no longer care to allow having WR compositors co-exist with non-WR
compositors.

We may eventually want to remove the CompositorOptions entirely, but for now
the rest of the usage of it seems fine.

MozReview-Commit-ID: 6ekG8j1PskK

--HG--
extra : rebase_source : 0099e847ac356ca235969bcd81f47d65f49de2eb
2017-03-28 16:40:24 -04:00
Masatoshi Kimura b1aecb3f20 Bug 1351329 - Fix Windows implementation of defaultCSSScaleFactor. r=kanru
Unlike contentsScaleFactor, defaultCSSScaleFactor always uses WinUtils::LogToPhysFactor regardless of the DPI awareness. Bug 1194751 broke the implementation (probably unknowingly).

MozReview-Commit-ID: KjtnT2ebgHK

--HG--
extra : rebase_source : 6fe3d58293482563cc4fc4f16a91fa4a3c4c12da
2017-03-29 01:40:47 +09:00
Wes Kocher 914dd4b76c Merge inbound to m-c a=merge 2017-03-28 13:30:56 -07:00
Mike Conley 8adf6ac1c1 Bug 1344839 - Don't allow transparent top-level windows on Windows. r=jimm
MozReview-Commit-ID: 6bXHqDuUMw6

--HG--
extra : rebase_source : 34721cdf4096d9f132544069e178b3e53627e6ac
2017-03-21 22:15:55 -04:00
Mike Conley 87f33a89ed Bug 1344839 - Don't allow transparent top-level windows on GTK. r=karlt
MozReview-Commit-ID: 9UP1UYcaF2F

--HG--
extra : rebase_source : 33b5aa13466e642e335a0653f9f436bb64648c42
2017-03-21 22:15:36 -04:00
Kartikaya Gupta ec69fdebcf Merge m-c to graphics
MozReview-Commit-ID: I4ehbSXNLmS
2017-03-27 09:18:34 -04:00
Kartikaya Gupta 3956a6bca3 Merge m-c to graphics
MozReview-Commit-ID: FT418lFT961
2017-03-24 10:10:11 -04:00
Mason Chang 72173b1708 Bug 1348414 Always snapshot after no more paints are pending if WR is enabled. r=mattwoodrow 2017-03-22 12:20:00 -07:00
Carsten "Tomcat" Book 492970c342 merge mozilla-inbound to mozilla-central a=merge 2017-03-23 13:44:09 +01:00
Mats Palmgren 2feec4025d Bug 1333482 part 5 - [css-ui] Enable '-moz-appearance' support for some tests. r=dholbert
* * *
[mq]: sssssssss

MozReview-Commit-ID: 4wgnjld1rDt
2017-03-23 22:11:23 -07:00
Mats Palmgren 00b74113a3 Bug 1333482 part 4 - [css-ui] Amend all uses of '-moz-appearance:none' in tests to also specify 'appearance:none' (automated change). r=dholbert
MozReview-Commit-ID: BNOR5VRpV2E
2017-03-23 22:11:22 -07:00
Mats Palmgren 79cff05243 Bug 1333482 part 2 - [css-ui] Change all consumers of StyleDisplay::mAppearance to use the accessor UsedAppearance() instead, and make mAppearance/mMozAppearance private. r=dholbert
MozReview-Commit-ID: 8JwLsY1CLDJ
2017-03-23 22:11:18 -07:00
Jim Mathies 3c4ae3ad20 Bug 1342245 - Add support for accessibility.force_disabled=-1 (force enabled) on Windows. r=aklotz
MozReview-Commit-ID: 7cl6AI5ZFs9

--HG--
extra : rebase_source : e91751f0871a344c8d034e6852c311ac259efd01
2017-02-24 08:58:40 -06:00
Kan-Ru Chen dbb51ca5fc Bug 1194751 - Part 8. Implement ScreenHelperCocoa and delete old nsScreenManagerCocoa/nsScreenCocoa. r=mstange
ScreenHelperCocoa is the platform dependent part of the original
nsScreenManagerCocoa and nsScreenCocoa. It registers
NSApplicationDidChangeScreenParametersNotification and pushes updates
to ScreenManager. See patch part 4. for how ScreenManager works.

MozReview-Commit-ID: 1A5ha4Ys2dL

--HG--
rename : widget/cocoa/nsScreenManagerCocoa.h => widget/cocoa/ScreenHelperCocoa.h
rename : widget/cocoa/nsScreenManagerCocoa.mm => widget/cocoa/ScreenHelperCocoa.mm
extra : rebase_source : c7737e18656710c36f6c04ac71a17deeca3224a5
2017-03-09 19:34:49 +08:00
Kan-Ru Chen e2a9b2f533 Bug 1194751 - Part 7. Implement ScreenHelperWin and delete old nsScreenManagerWin/nsScreenWin. r=jimm
ScreenHelperWin is the platform dependent part of the original
nsScreenManagerWin and nsScreenWin. It listens the WM_DISPLAYCHANGE
message and pushes updates to ScreenManager. See patch part 4. for how
ScreenManager works.

MozReview-Commit-ID: 20A3ZQKmH9a

--HG--
rename : widget/windows/nsScreenManagerWin.cpp => widget/windows/ScreenHelperWin.cpp
rename : widget/windows/nsScreenManagerWin.h => widget/windows/ScreenHelperWin.h
extra : rebase_source : a3058c237d38f72103251802ab5f5bbd672e9b70
2017-03-09 19:32:31 +08:00
Kan-Ru Chen 1e8d2f14b9 Bug 1194751 - Part 6.1 change nsScreenManagerAndroid::ScreenForId to a concrete method. r=snorp
nsIScreen::GetId and nsIScreenManager::ScreenForId is removed in patch
part 6. These methods are still used by Fennec on Android to implement
Presentation API support so I changed them to concrete methods in
nsScreenAndroid and nsScreenManagerAndroid.

nsScreenAndroid and nsScreenManagerAndroid does not use the generic
Screen and ScreenManager class because its implementation is quite
different.

MozReview-Commit-ID: 4rxxIgvNxMb

--HG--
extra : rebase_source : 1f8a437f6a9465bd79ce9be37c9e3de6f6d7b2fd
2017-03-09 19:30:53 +08:00
Kan-Ru Chen 8ba424eabb Bug 1194751 - Part 6. Use mozilla::widget::ScreenManager in content process. r=mconley
This is the most important part of the patch series. It removes the
PScreenManager protocol and use ScreenManager directly in the content
processes.

Initial and subsequent updates are sent via PContent::RefreshScreens.
struct ScreenDetails are kept to serialize Screen over IPC.

nsIScreenManager::ScreenForNativeWidget is removed because
nsIWidget::GetWidgetScreen can replace it. nsIScreen::GetId is removed
because it's not useful for the more general Screen class.

MozReview-Commit-ID: 5dJO3isgBuQ

--HG--
extra : rebase_source : 06aa4e4fd56e2b2af1e7483aee7c0cc7f35bdb97
2017-03-09 19:30:26 +08:00
Kan-Ru Chen 824adc9354 Bug 1194751 - Part 5. Implement ScreenHelperGTK and delete old nsScreenManagerGtk/nsScreenGtk. r=karlt
ScreenHelperGTK is the platform dependent part of the original
nsScreenManagerGtk and nsScreenGtk. It registers monitors-changed
event listener from gtk and pushes updates to ScreenManager. See patch
part 4. for how ScreenManager works.

MozReview-Commit-ID: KBo7ZLFTjM3

--HG--
rename : widget/gtk/nsScreenManagerGtk.cpp => widget/gtk/ScreenHelperGTK.cpp
rename : widget/gtk/nsScreenManagerGtk.h => widget/gtk/ScreenHelperGTK.h
extra : rebase_source : 5607e31b62c928934cc45df7b2212428fbfd79c1
2017-03-09 19:29:44 +08:00
Kan-Ru Chen 53ad814f85 Bug 1194751 - Part 4. Add ScreenManager and Screen classes. r=jimm,karlt,mconley
ScreenManager takes the common parts of ScreenManagerWin,
ScreenManagerGtk and ScreenManagerCocoa. It caches all screen
information in the new Screen class. The cache are updated when the OS
notifies there is a monitor config change; all changes will be pushed to
content processes via PContent (patch part 6.)

Screen is a pure data object. All platform dependent logic will be in
widget specific helper classes.

Each process will have a singleton ScreenManager object. Widget
specific helper object is held alive by the ScreenManager when
necessary, for example to receive updates from the OS.

The change to to VsyncDispatcher.cpp is due to unified-build bustage.

ScreenManager::ScreenForNativeWidget is not implemented because it
will be removed in patch part 6.

MozReview-Commit-ID: 5ezytAXSqHp
***
fixup

MozReview-Commit-ID: DQtq3UVZytA

--HG--
extra : rebase_source : c1a5aac713de783586e93109fe3e197ffdc1a3ca
2017-03-14 18:44:54 +08:00
Kan-Ru Chen be1eeb353b Bug 1194751 - Part 3. Remove unused nsIScreen::rotation attribute. r=jimm
It's only used by gonk. Remove it will make removing PScreenManager easier.

MozReview-Commit-ID: GCHonrz30xK

--HG--
extra : rebase_source : 73fbb4263b246d42cc38dd7a30edda9014953a97
2017-03-09 19:16:33 +08:00
Kan-Ru Chen 31ae8ff78f Bug 1194751 - Part 2. Remove unused nsIScreen::LockMinimumBrightness and related methods. r=snorp
It's not used anywhere in gecko or addons. Remove it will make
removing PScreenManager easier.

MozReview-Commit-ID: K3BHnktO7wU

--HG--
extra : rebase_source : 6f481759d1fb82d222ea6a92ebfd50dbb6cb63d5
2017-03-09 19:16:29 +08:00
Kan-Ru Chen 841c421ce8 Bug 1194751 - Part 1. Remove nsIScreenManager::GetNumberOfScreens. r=jimm
It's not used anywhere. Remove it will make removing PScreenManager
easier.

MozReview-Commit-ID: 5dn8kDhTZVl

--HG--
extra : rebase_source : 96b8ddb18deee94ca256bfa118b60ceacfd2d677
2017-03-09 19:16:24 +08:00
Alastor Wu 7dad8534a8 Bug 1347648 - part1 : only request Android audio focus for audible media. r=snorp
For non-audible media, we shouldn't request audio focus because it might interrupt
other app who is playing music or podcast.

MozReview-Commit-ID: 25iWJktgKUw

--HG--
extra : rebase_source : ca96240967131d2d6cab00f7a39c0ef4e6f2df78
2017-03-27 10:59:04 +08:00
sotaro b98245c5fc Bug 1349476 - Remove LayersBackend::LAYERS_D3D9 type r=mattwoodrow 2017-03-23 11:00:41 +09:00
Bobby Holley 8c4e31302e Bug 1349815 - Avoid setting the static cache during the servo traversal. r=heycam
MozReview-Commit-ID: E9XC4kaCVd2
2017-03-22 21:20:23 -07:00
Carsten "Tomcat" Book 332688962a Merge mozilla-central to mozilla-inbound
--HG--
rename : testing/web-platform/tests/storage/interfaces.html => testing/web-platform/tests/storage/interfaces.https.html
2017-03-23 13:57:16 +01:00
Olli Pettay 92bb395acd Bug 1339758, click() and similar can return 0 from various coordinate properties, r=masayuki
--HG--
extra : rebase_source : 71547cc6655c39ffeba89676d315bdb9bacc5ff4
2017-03-23 12:57:44 +02:00
Boris Zbarsky ec233151ac Bug 1348331 part 2. Switch Preferences::RegisterCallback/RegisterCallbackAndCall consumers that want prefix matches to the new RefisterPrefixCallback(AndCall) APIs. r=froydnj,padenot
MozReview-Commit-ID: 2ebVZO4fN6i
2017-03-21 14:59:02 -04:00
Bob Owen c454d35621 Bug 1152353: Repost printer properties completion messages after nsAppShell::ProcessNextNativeEvent. r=jimm 2017-03-15 15:55:50 +00:00
Dan Banner cdf987089d Bug 1107904 - Remove packed.js and references to it as it is unused. r=standard8
MozReview-Commit-ID: K5TLF92pHq4

--HG--
extra : rebase_source : 295bf325a07fa8ec4c55a8babf5418588308dca6
2017-04-12 11:10:00 +01:00
Karl Tomlinson 4cf270684e bug 1343802 draw trough centered instead of filling the scrollbar r=jhorak+328198
to follow the behavior of version 3.20 GtkRange's contents_gadget.

MozReview-Commit-ID: BQE6mQqsan8

--HG--
extra : rebase_source : ee0f35da45f3da2248f50ee925fb7f8e9b848636
2017-03-23 18:17:49 +13:00
Karl Tomlinson 36050a07d8 bug 1343802 consider scrollbar trough min-width/min-height properties r=jhorak+328198
in determining breadth of trough and scrollbar.

MozReview-Commit-ID: 3orNXdv6uZh

--HG--
extra : rebase_source : ad840ac199569da2e2fed7aa5e37ecc48a022fe2
2017-03-22 15:53:49 +13:00
Karl Tomlinson cb62e93514 bug 1343802 swap vertical scrollbar button dimensions for horizontal scrollbars r=jhorak+328198
MozReview-Commit-ID: 4fK0hFRWn1p

--HG--
extra : rebase_source : 5342134f69a210f2afdcd835dbb4bbbde429b506
2017-03-21 20:50:36 +13:00
Karl Tomlinson 2e7cb463b0 bug 1343802 adjust scrollbar track border to prevent thumb expanding to fill available breadth r=jhorak+328198+328198
MozReview-Commit-ID: 7KJGnds0ngL

--HG--
extra : rebase_source : c14cb16e27423f2887348d392c7c37f1aa02082a
2017-03-23 18:31:16 +13:00
Karl Tomlinson d25338e822 bug 1343802 update notebook_has_tab_gap and scrollbar metrics after theme changes r=jhorak+328198
MozReview-Commit-ID: IRPXNwLe5Ey

--HG--
extra : rebase_source : 1b8a8691b793380421fc01e439050125fdfd71f2
2017-03-21 17:27:41 +13:00
Karl Tomlinson bf65720820 bug 1343802 remove have_arrow_scaling, which was always true r=jhorak+328198
MozReview-Commit-ID: AeM2oKoPCTs

--HG--
extra : rebase_source : f2013b07ff2f344107fac5e21ac491953f38ecc4
2017-03-21 17:12:34 +13:00
Karl Tomlinson 62cb3af124 bug 1343802 remove moz_gtk_get_scrollbar_widget() r=jhorak+328198
This was used with GTK2, but is now unnecessary as discussed in bug 1278282.

moz_gtk_init() is now called from only one place and so will be called only
once.

MozReview-Commit-ID: 2KwJop6qsV9

--HG--
extra : rebase_source : 5649f34914f03f8285eeaad7937d1ecab853649d
2017-03-21 17:14:55 +13:00
Karl Tomlinson 1acd8cdab1 bug 1343802 calculate scrollbar metrics in one place r=jhorak+328198
Changes in behavior are intended to be minimal, but this adds distinct
metrics for horizontal and vertical scrollbars even with GTK versions < 3.20.

Updates on theme changes will be restored in a subsequent patch.

MozReview-Commit-ID: 4vi2nKxCxW7

--HG--
extra : rebase_source : 5e968126af00a7c1ff0a45d2ba3b46a0a20424be
2017-03-23 18:23:26 +13:00
Karl Tomlinson 713232a30d bug 1343802 remove code for native scrollbar thumb border sizes r=jhorak+328198
There is no need to calculate thumb borders because thumb border-box sizes are
determined with GetMinimumWidgetSize, which includes GTK margin, border, and
padding, and the interior border width is irrelevant because thumbs have no
children.

MozReview-Commit-ID: K2N2RBJBRsB

--HG--
extra : rebase_source : c750cdf9c9722f7796c89b8083bf2bfd32fffcbb
2017-03-08 18:24:19 +13:00
Karl Tomlinson 8abe43df06 bug 1343802 remove unused moz_gtk_enable_style_props r=jhorak+328198
MozReview-Commit-ID: KbAIRCyqmJ8

--HG--
extra : rebase_source : 4b468d9b6bab63a69df389d1a7624272f9ec1a43
2017-03-06 17:19:26 +13:00
Florian Queze 37f2343b9a Bug 1356569 - Remove appendElement's last parameter when it is false, r=jaws. 2017-04-14 21:51:39 +02:00
Florian Queze 37ff4fc7cc Bug 1356569 - Remove addObserver's last parameter when it is false, r=jaws. 2017-04-14 21:51:38 +02:00
Marco Bonardo 19cfdf37f2 Bug 977177 - Update favicons API consumers. r=adw
Updates consumers to the new behavior.
Some consumers are changed to use  the "page-icon:" protocol, since it's not
trivial to join the icons table and get a single result out of it. In most cases
the join would return multiple results since a page can have multiple icon payloads.
These consumers for now will return the biggest payload, bug 1347532 will fix
some of them to properly pass a #size=NN fragment.
Note that, even before, these were just "moz-anno:favicon:" uris, and the
payload had to be fetched from the database.
Some other consumers for now just fallback to the largest payload, by passing 0
to GetFaviconURLForPage.

The favicon optimization still happens on the main-thread, bug 1346139 will
handle that problem.

Most of the changes involve handling the modified IconData objects, that now
retain an array of payloads, rather than just one. But note that .ico files are
not yet split into single frames, due to imagelib missing APIs that will be handled
in bug 1337402.
The other changes involve fixing queries to properly join with the new tables.

Finally, note that thanks to the FOREIGN KEYS support, removing from moz_icons or
moz_pages_w_icons will also remove relations from moz_icons_to_pages.

The system only supports square icons, so icons are resized based on their larger side.

This doesn't include new tests, those will be in a following changeset.

MozReview-Commit-ID: JUkpquhpS8y

--HG--
rename : toolkit/components/places/tests/unit/test_svg_favicon.js => toolkit/components/places/tests/favicons/test_svg_favicon.js
extra : rebase_source : fa49c4a81d6ab6b34a2f19ee4175e889a6e9d734
2016-09-28 16:14:30 +02:00
Andrea Marchesini 1f3049c002 Bug 1343212 - FilePicker child actor must not send Open() if it has been already distroyed, r=mccr8 2017-03-30 19:55:55 +02:00
Sebastian Hengst c9f5cc6b45 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 8nsStTZt40O
2017-03-18 16:24:53 +01:00
Jessica Jong 3c909e1184 Bug 1344642 - Part 1: Cleanup dom.forms.datepicker related code. r=smaug
This patch basically reverts Bug 825294.

--HG--
extra : rebase_source : 58b235bfddb5acd1ec0cf1afd8f34cbb8c4e09c1
2017-03-17 11:01:57 +08:00
Masayuki Nakano 87d8470a52 Bug 1347073 Get rid of UIEvent.isChar since it's not initialized properly on most platforms and the other browsers don't support this r=smaug
UIEvent.isChar is not supported by the other browsers and the value isn't initialized any platforms except on macOS. So, the value isn't useful and we have no reason to keep it.

MozReview-Commit-ID: 4BLpo88gSZj

--HG--
extra : rebase_source : ca950f8cb618a0cadc99ba4c80b5a8df94a20f27
2017-03-14 18:29:39 +09:00
Carsten "Tomcat" Book 3e0a5441c6 Merge mozilla-central to mozilla-inbound 2017-03-17 14:55:15 +01:00
Jim Chen b00f1b075f Bug 1344892 - Let native calls dispatch to XPCOM event queue; r=snorp
Bug 1344892 - 1. Add option to dispatch to priority queue; r=snorp

For the regular "gecko" option, change to dispatching to the XPCOM event
queue, and add a new "gecko_priority" option that dispatches calls to
the widget event queue. GeckoThread.waitOnGecko is changed to wait on
both the widget queue and the XPCOM queue. nsAppShell::SyncRunEvent is
changed to avoid a possible deadlock condition involving locking
sAppShellLock twice.

Bug 1344892 - 2. Update dispatchTo = "gecko" options; r=snorp

Update some existing dispatchTo = "gecko" options to "gecko_priority",
which typically involve UI events or JNI management calls like
disposeNative. As a rule, disposeNative is dispatched to the queue with
the least priority among the queues that other native members of the
same class dispatch to (i.e. "gecko_priority" if all other native
members dispatch to "gecko_priority", or "gecko" if any native members
dispatch to "gecko").

Bug 1344892 - 3. Update auto-generated bindings; r=me
2017-03-16 23:30:54 -04:00
Carsten "Tomcat" Book 468f7d8e9f merge mozilla-inbound to mozilla-central a=merge 2017-03-16 15:35:50 +01:00
Nicholas Nethercote e981884dca Bug 1347348 (part 5) - Remove an unnecessary profiler_is_active() calls. r=mstange.
profiler_get_profile() will return nullptr is the profiler is not active, so
there's no need to call profiler_is_active() just beforehand.

--HG--
extra : rebase_source : 9b7d4396599dc10230c5215492c9f63c48a4ff5e
2017-03-07 16:55:00 +11:00
Masayuki Nakano c038f800f7 Bug 1339331 TextEventDispatcher should replace \r in composition string with \n and TextComposition should allow to input \n with composition events r=m_kato
According to ATOK's behavior, IME may send different line breaker from its platform's standard.  Therefore, we should treat \r as \n too.

Additionally, currently, TextComposition doesn't allow to input \n with composition.  However, this was added for preventing to see odd control characters as boxes with code point.  Therefore, we should allow \n for IMEs. (It was allowed, this limitation is unexpected when I reviewed the patch to reject control characters in TextComposition.)

MozReview-Commit-ID: DzGSMgp89Av

--HG--
extra : rebase_source : 0644e5941a080583af8701546111fbf46ec646ec
2017-03-16 16:26:43 +09:00
Karl Tomlinson b969855019 bug 1346961 draw opaque scrollbar background on outermost scrollbar element even for GTK versions >= 3.20 r=jhorak+328198
MozReview-Commit-ID: BHsD1h4UQbs

--HG--
extra : rebase_source : 56cb7f915cfe1237375e735ca4e41826ac890c82
2017-03-16 18:02:27 +13:00
Masayuki Nakano eec9e38f44 Bug 1347433 part.4 Add automated tests to check if \n and \r\n in composition string are treated as expected r=m_kato
Although, TextComposition's bug, those tests are not checked with expected values, we should fix them later.

MozReview-Commit-ID: 89jehNqMnCH

--HG--
extra : rebase_source : 2c622396edef067b92393f1e5e5291db9105417a
2017-03-15 21:32:49 +09:00
Masayuki Nakano fc3e532636 Bug 1347433 part.3 TextEventDispatcher::PendingComposition::Flush() should replace native line breakers in the composition string before dispatching composition event r=m_kato
So, finally, Flush() should replace native line breakers in the composition string before dispatching composition events.  However, if the composition string was set by Set(), i.e., it's already been replaced with native line breakers, we shouldn't try to do it again due to performance reason.  Therefore, this patch adds |mReplacedNativeLineBreakers| to manage if it's already been called.

MozReview-Commit-ID: 5Y7ULWeP153

--HG--
extra : rebase_source : f825e45a7033c3c651e6324047e75c20f6c69b36
2017-03-15 19:09:30 +09:00
Masayuki Nakano 43c58f6aa5 Bug 1347433 part.2 Implement TextEventDispatcher::PendingComposition::ReplaceNativeLineBreakers() and TextEventDispatcher::PendingComposition::Set() should use it r=m_kato
MozReview-Commit-ID: 5mPiRGwUuej

--HG--
extra : rebase_source : 2d01998be5624188a94abd2dcda8f7ea6016e545
2017-03-15 18:59:34 +09:00
Masayuki Nakano aa1ef41139 Bug 1347433 part.1 Separate TextRange offset and length adjustment to AdjustRange() r=m_kato
First of all, replacing native line breakers with XP line breakers needs to adjust offset and length of each TextRange.  Therefore, we cannot just duplicate the code into TextEventDispatcher::PendingComposition::Flush().

For creating a new method to replace the native line breakers in PendingComposition::mString, we should separate range adjustment code to a static method, AdjustRange(), because we cannot use for loop simply because we need to adjust both mClauses and mCaret.

MozReview-Commit-ID: 5ycsN8EAs45

--HG--
extra : rebase_source : 0ef667669c9027958a0a955f4b883f70be89cbb3
2017-03-15 18:51:32 +09:00
Masayuki Nakano bd8834c19e Bug 1346499 Don't remove Ctrl nor Alt modifier state at dispatching eKeyPress event when the modifier doesn't change inputting character r=m_kato
Ctrl+Space causes WM_CHAR of ' '.  On the other native applications, you can input ' ' with this key combination though, we shouldn't allow this because we need to remove Ctrl and Alt modifier state at dispatching keypress event for the limitation of TextEditor but this is important key combination for custom shortcut keys.

So, when Ctrl or Alt key is pressed but it doesn't change the inputting character, i.e., the character can be inputted without Ctrl or Alt, we shouldn't remove those modifier state from eKeyPress event.

MozReview-Commit-ID: 7omLvNdQWzW

--HG--
extra : rebase_source : 66d5015567799c489d925ac2419358913f808d63
2017-03-14 00:32:50 +09:00
Kartikaya Gupta 0525357947 Bug 1343977 - Ensure that synthetic mouseclicks generated from touch gestures don't reopen rollups. r=botond,enndeakin+6102
Synthetic mouseevents generated from touch gestures are dispatched asynchronously
from the touch events. This means that the nsAutoRollup that the widget puts on
the stack during the dispatching of the touch events is no longer in scope when
we get around to firing the mouse events. As a result, the mouse events can end
up reopening rollups that got closed by the touch events and that shouldn't be
reopened. We fix this by stashing the rollup that was in scope while the touch
events were being dispatched, and make sure we keep that in scope for the
synthetic mouse events.

MozReview-Commit-ID: HjteKHfAqvD

--HG--
extra : rebase_source : 46217b1ba610ef193963ccab454a6f584af61a2b
2017-03-13 10:44:59 -04:00
Kartikaya Gupta 44f27a56e4 Bug 1343977 - Extract nsAutoRollup into a more self-contained class and clean it up some. No functional changes intended. r=enndeakin+6102
This just decouples nsAutoRollup from the widget class, which it isn't really
bound to anyway because the internal data is static. We'll need to be able to
use nsAutoRollup independently in the next patch.

MozReview-Commit-ID: 1dxSLTr4g1K

--HG--
extra : rebase_source : 6f6964ca046b6f88e5c99c944a08b1c563f17837
2017-03-13 10:44:56 -04:00