Commit Graph

1325 Commits

Author SHA1 Message Date
Nicholas Nethercote
8a68e6fb83 Bug 1403868 (part 4) - Reduce tools/profiler/public/*.h to almost nothing in non-MOZ_GECKO_PROFILER builds. r=mstange.
Currently the Gecko Profiler defines a moderate amount of stuff when
MOZ_GECKO_PROFILER is undefined. It also #includes various headers, including
JS ones. This is making it difficult to separate Gecko's media stack for
inclusion in Servo.

This patch greatly simplifies how things are exposed. The starting point is:

- GeckoProfiler.h can be #included unconditionally;

- everything else from the profiler must be guarded by MOZ_GECKO_PROFILER.

In practice this introduces way too many #ifdefs, so the patch loosens it by
adding no-op macros for a number of the most common operations.

The net result is that #ifdefs and macros are used a bit more, but almost
nothing is exposed in non-MOZ_GECKO_PROFILER builds (including
ProfilerMarkerPayload.h and GeckoProfiler.h), and understanding what is exposed
is much simpler than before.

Note also that in BHR, ThreadStackHelper is now entirely absent in
non-MOZ_GECKO_PROFILER builds.
2017-10-04 09:11:18 +11:00
Nicholas Nethercote
d225f7151b Bug 1400460 - Rename nsIAtom as nsAtom. r=hiro.
(Path is actually r=froydnj.)

Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.

MozReview-Commit-ID: 91U22X2NydP

--HG--
rename : xpcom/ds/nsIAtom.h => xpcom/ds/nsAtom.h
extra : rebase_source : ac3e904a21b8b48e74534fff964f1623ee937c67
2017-10-03 09:05:19 +11:00
Sebastian Hengst
b29f365446 Backed out changeset f70d6fcdb760 (bug 1406631) for failing color related reftests like layout/reftests/writing-mode/ua-style-sheet-input-color-1.html on Android. r=backout 2017-10-07 20:08:12 +02:00
Emilio Cobos Álvarez
b7befbe6b5 Bug 1406631: Remove the color-picker-available system metric. r=xidorn
All our widgets support it with a constant true.

MozReview-Commit-ID: JMEItUsxYWq

--HG--
extra : rebase_source : a2661dce1ac191fdf098e631cd7878f0215643d5
2017-10-07 14:06:44 +02:00
Chris Coulson
4bb5b5c2f6 Bug 1405267 - Don't stub gdk_window_get_window_type in mozgtk2. r=karlt
--HG--
extra : amend_source : 3be7b98361af506cbf1fc0febd0c7c431a520cd0
2017-10-03 04:58:00 -04:00
Lee Salzman
83b1549723 Bug 1404323 - limit WindowSurfaceX11Image::Commit to clip bounds. r=gankro
MozReview-Commit-ID: 55GbZ2EHdbQ
2017-09-29 23:59:40 -04:00
Brad Werth
fb488ded4b Bug 1401063: Cache remaining gtk window and button colors to eliminate on-demand gtk calls in ::NativeGetColor. r=karlt
MozReview-Commit-ID: HbZqBUG0w7y

--HG--
extra : rebase_source : 0b26c22113c2cda49129006fe933f20719b7a679
2017-09-19 13:00:28 -07:00
Wes Kocher
519bb0922b Merge inbound to central, a=merge
MozReview-Commit-ID: EK8iFR1hSRp
2017-09-18 16:21:01 -07:00
Ryan Hunt
5823900855 Bug 1397083 - Don't use CopySurface when drawing theme with nsNativeThemeGTK. r=lsalzman
CopySurface doesn't respect any existing clips that are applied to the draw
target. It doesn't look like nsNativeThemeGTK uses CopySurface normally, but
when OMTP is enabled the draw target is a DrawTargetCapture which can't
LockBits() which causes us to use CopySurface. This can cause a reftest failure.

MozReview-Commit-ID: 1mYMhQB0r3M

--HG--
extra : rebase_source : d2683dee37ce32049d8daeee786cbb06ba624438
extra : amend_source : 59c48b66f733108636d52047a55889ee0c4e2746
2017-09-13 15:03:34 -04:00
Nicholas Nethercote
ebf1cb320b Bug 1400148 - Don't use -1 to represent an unset nsCursor. r=karlt.
Because UBSan complains about casting -1:

> runtime error: load of value 4294967295, which is not a valid value for type 'nsCursor'

--HG--
extra : rebase_source : 037a96700228ea0d427afa7c25c40490c701cdc4
2017-09-15 14:34:37 +10:00
Karl Tomlinson
00beb33110 bug 1396722 remove no-op ReleaseStyleContext() r=stransky+263117
MozReview-Commit-ID: DgKM0wrStrk

--HG--
extra : rebase_source : a26fdc5e5d6c63e21bb98a19ee7bf58042f9b3ba
2017-09-05 09:16:01 +12:00
Karl Tomlinson
648484651d bug 1384701 get system fonts in EnsureInit() which is on main thread even with servo r=manishearth
GTK should be used only from the main thread, but the specific symptom before
this change was that creating a GtkEntry causes
pango_cairo_font_map_get_default() to be called.  This function returns a
different font map on each thread.  The font map is leaked when StyleThreads
are leaked at exit.

Font caches are usually expensive and so using the existing font map on the
main thread is preferable.

A GtkEntry already exists on the main thread, as well as style contexts for
most other system fonts, and so it is more efficient to create these on the
main thread while the style contexts exist.

Doing this also avoids the need for Gecko_nsFont_InitSystem() to hold a global
lock to avoid concurrently calling into GTK through LookAndFeel::GetColor().

MozReview-Commit-ID: DSOwEUeYmtV

--HG--
extra : rebase_source : 971bc565e465b2d2482308006f68451ecaa6e264
2017-09-04 18:29:04 +12:00
Karl Tomlinson
645192c7d9 bug 1384701 get system font name and size from widget style context instead of GtkSettings r=manishearth
gtk_widget_get_settings() returns the same settings for all widgets [1] but
GTK actually uses specific fonts for each widget [2].

[1] https://git.gnome.org/browse/gtk+/tree/gtk/gtkwidget.c?h=3.22.19#n11637
[2] https://git.gnome.org/browse/gtk+/tree/gtk/gtkwidget.c?h=3.22.19#n10334

Changing to GtkStyleContext* will also make this easier to use from code where
the GtkStyleContext exists but not the GtkWidget, such as EnsureInit() in a
future patch.

MozReview-Commit-ID: 3NuTL5wRzm5

--HG--
extra : rebase_source : 8ca2ae009bdf4b15a82106425c98b6be786ad27b
2017-09-04 21:33:21 +12:00
Karl Tomlinson
f800034d87 bug 1384701 remove MOZ_WIDGET_GTK == 2 code from nsLookAndFeel r=manishearth
This old code no longer builds and is superseded by the GTK3 port.
See also bug 1278282.

MozReview-Commit-ID: 9KyrPuNAluv

--HG--
extra : rebase_source : 8d5de061743e0281bf4ed03c68286512e7b492e9
2017-09-04 17:36:17 +12:00
Masayuki Nakano
1166607c92 Bug 1387357 - IMContextWrapper::DispatchCompositionStart() should stop dispatching eCompositionStart if dispatching preceding eKeyDown event causes changing active IM context r=m_kato
If a keydown event handler moves focus like Ctrl+PageDown handler, IM context
may be changed to DISABLED or something.  In such case, native IME would stop
current composition because focus moving in Gecko causes making IME blurred.
However, IMContextWrapper::DispatchCompositionStart() always dispatches
eCompositionStart even in such case.

So, it should stop dispatching eCompositionStart if IME enabled state is
changed during dispatching the preceding keydown event.

Note that this patch moves the setter of mComposingContext from
OnStartCompositionNative() which is a signal listener of "preedit_start" to
DispatchCompositionStart() because if IME starts composition without
"preedit_start" signal, DispatchCompositionStart() will be called but
OnStartCompositionNative() isn't called.  However, this fix needs
mComposingContext.

MozReview-Commit-ID: F3F6NuCOrkJ

--HG--
extra : rebase_source : 513528eba0f29eb9b6ce8c5f47e4badbde9cbdb8
2017-09-04 20:18:43 +09:00
Alastor Wu
6a6ee2a0d7 Bug 1373888 - part3 : rename the topic of the wake lock. r=cpearce
For knowing the wake lock usage more clearly, we should use more specific topic name.

In OSX, you can use "$ pmset -g assertions" to check all the wakelock.
In Windows, using "$ powser -energy" to generate the energy report.

MozReview-Commit-ID: rAXnkxTvLc

--HG--
extra : rebase_source : 42ebf204673d3c913739f64c71c24af20d37c95d
2017-08-29 10:54:28 +08:00
Martin Stransky
4cb65b6801 Bug 1314928 - get link text color by GTK_STATE_FLAG_LINK on Gtk3 >= 3.12, r=karlt
MozReview-Commit-ID: BPR2AgoUx5H

--HG--
extra : rebase_source : c4670cd6b7df84dd00a4d04c3bfc582f917795da
2017-08-25 10:30:28 +02:00
Sebastian Hengst
ef86d4676d Backed out changeset 1f349caf1814 (bug 1314928) for bustage at widget/gtk/nsLookAndFeel.cpp:47: invalid conversion from 'int' to 'GtkStateFlags'. r=backout on a CLOSED TREE 2017-08-25 10:51:20 +02:00
Martin Stransky
572cfb016f Bug 1314928 - get link text color by GTK_STATE_FLAG_LINK on Gtk3 >= 3.12, r=karlt
MozReview-Commit-ID: BPR2AgoUx5H

--HG--
extra : rebase_source : ad688e0f6cbabcc64ebb62f2386f8346b3860855
2017-08-25 10:30:28 +02:00
Nicholas Nethercote
f582d96b98 Bug 1390428 (part 9) - Remove nsXPIDLCString. r=erahm.
This is straightforward, with only two notable things.

- `#include "nsXPIDLString.h" is replaced with `#include "nsString.h"`
  throughout, because all nsXPIDLString.h did was include nsString.h. The
  exception is for files which already include nsString.h, in which case the
  patch just removes the nsXPIDLString.h inclusion.

- The patch removes the |xpidl_string| gtest, but improves the |voided| test to
  cover some of its ground, e.g. testing Adopt(nullptr).

--HG--
extra : rebase_source : 452cc4a08046a1adb1a8099a7e85a1917de5add8
2017-08-17 15:29:03 +10:00
Nicholas Nethercote
8a72cf2251 Bug 1390428 (part 2, attempt 2) - Remove more nsXPIDLCString local variables. r=erahm.
--HG--
extra : rebase_source : 69d58b0cfb56efc6b03d8e2d7be2ce3c3e6cd843
2017-08-21 20:01:27 +10:00
Ryan Hunt
95c23d28b7 Bug 1377950 - Reset all compositors when GdkScreen "composited-changed" fires. r=karlt
MozReview-Commit-ID: 3vva2XgSa60

--HG--
extra : rebase_source : 099a54f38695a7a88d5ca3a0dfc8cb948bfffb63
2017-08-11 02:52:08 -05:00
Masatoshi Kimura
5b97708fef Bug 1387800 - Remove [deprecated] nsIFilePicker.show(). r=qdot
MozReview-Commit-ID: 81ZkeYdSPVW

--HG--
extra : rebase_source : 2f30565b8d5986ef6265027562f9842d0db2688e
2017-08-06 13:15:31 +09:00
Martin Stransky
9ed3f34e0f Bug 1389133 - don't invalidate style content for missing widgets, r=karlt
MozReview-Commit-ID: 2KfjYGvsiVv

--HG--
extra : rebase_source : 86984393bb22a7708089b5ed6da1201f9458e6e7
2017-08-10 18:07:41 +02:00
Brendan Dahl
02dc1567cd Bug 1387170 - Use custom clipboard constructor instead of singleton. r=jrmuizel
This allows instances of the clipboard to be created (like it
was pre-headless).
2017-08-09 09:49:50 -07:00
Sebastian Hengst
6b897a9aab merge mozilla-central to autoland. r=merge a=merge 2017-09-18 11:36:27 +02:00
Jan Steffens
b9f5c3fac3 Bug 1400175 - Stub gdk_screen_get_monitor_workarea in mozgtk2; r=karlt
MozReview-Commit-ID: 72K6U17JuoK

--HG--
extra : rebase_source : aa07eae27b5c37b204c45237e47d511acf45e2d3
2017-09-15 13:44:14 +02:00
Nicholas Nethercote
1a6f1a62fa Bug 1387381 - Remove nsXPIDLString local variables. r=erahm.
nsXPIDLStrings are marked as VOIDED upon initialization. Most of these local
nsXPIDLString variables are immediately set via getter_Copies(), which will
either assign a string value (using Adopt()) or do SetIsVoid(). These can be
trivially converted to nsString, which will get the same treatment.

The patch suitably converts the remaining nsXPIDLString local variable as well.

--HG--
extra : rebase_source : 5fff9f2c6844559198f601853f8db08564add7d5
2017-08-08 16:07:55 +10:00
Carsten "Tomcat" Book
e54b14cf9a merge mozilla-inbound to mozilla-central a=merge 2017-08-07 12:56:05 +02:00
Nicholas Nethercote
f941156987 Bug 1386600 - Change nsIStringBundle methods to return |AString| instead of |wstring|. r=emk,sr=dbaron.
This removes about 2/3 of the occurrences of nsXPIDLString in the tree. The
places where nsXPIDLStrings are null-checked are replaced with |rv| checks.

The patch also removes a couple of unused declarations from
nsIStringBundle.idl.

Note that nsStringBundle::GetStringFromNameHelper() was merged into
GetStringFromName(), because they both would have had the same signature.

--HG--
extra : rebase_source : ac40bc31c2a4997f2db0bd5069cc008757a2df6d
2017-08-04 14:40:52 +10:00
Manish Goregaokar
b74c4d0f69 Bug 1386915 - Add nsLookAndFeel::NativeInit() virtual call for initializing native-side state; r=jfkthame
MozReview-Commit-ID: 8XKSC1AOI0N
2017-08-06 15:41:08 -07:00
Manish Goregaokar
89df80e7d0 Bug 1386915 - Assert when nsLookAndFeel calls GTK off main thread; r=bholley
MozReview-Commit-ID: 9H9dE02bZel
2017-08-06 15:41:05 -07:00
Karl Tomlinson
7f6c7692a4 bug 1365556 invalidate widget style contexts after their ancestors are set r=stransky+263117
Although this is only known to affect buttons with builtin child widgets, it
is difficult to audit all GTK widgets for similar situations, and so the same
defense is applied to all widgets.

MozReview-Commit-ID: LMVXX3UYqR9

--HG--
extra : rebase_source : d327addad8d2b0e070c6ca86c6e38271c8431a23
2017-08-01 09:17:46 +12:00
Michael Smith
6fcebfbe5b Bug 1373739 - Make headless compositing Windows-compatible, in addition to Linux. r=dvander
To make the HeadlessCompositorWidget work under Windows as well as Linux, I had
to change the way that I hooked it into the existing CompositorWidget system.
Under GTK, the CompositorWidgetInitData and CompositorWidgetDelegate types
provided the information needed by the headless compositor widget already (the
widget client size). On Windows, however, the definitions of these types
differ, and the client size information is simply retrieved from the platform
APIs when needed.

After this patch, CompositorWidgetDelegate is renamed to
PlatformCompositorWidgetDelegate, and a new base class called
CompositorWidgetDelegate is added with "AsPlatformSpecificDelegate()" and
"AsHeadlessCompositorWidget()" methods. In non-headless mode, widgets use
AsPlatformSpecificDelegate() to access the Windows- and GTK-specific delegate
APIs. In headless mode, AsHeadlessCompositorWidget() is used to access the
singular CompositorWidget implementation for headless. Meanwhile, the
CompositorWidgetInitData IPDL type is made into a union which always contains a
headless-specific HeadlessCompositorWidgetInitData struct and under GTK and
Windows also contains an {X11,Win}CompositorWidgetInitData struct.

This also includes a small patch to ensure that the GPU process and
hardware-accelerated compositing are always disabled under headless mode. These
features weren't activated by default in the Linux environments I tested in, but
did end up activating (and then promptly crashing Firefox) when I tested on
Windows.

MozReview-Commit-ID: CocPoHBDV7H

--HG--
extra : rebase_source : 4581fa63aa3a9f32a8dc2672015a35b9be01b20f
2017-07-06 17:45:34 -07:00
Michael Smith
632f364e09 Bug 1373739 - Use ClientLayerManager in headless mode. r=dvander,jrmuizel
This fixes a series of issues uncovered by the Web Platform Tests.

The most immediately noticeable symptom was that, during shutdown, PuppetWidgets
on the client side attempted to delete shadow layers that were never created on
the compositor side. The usage of BasicLayerManager in all other widgets due to
headless mode meant that the PLayerTransactionParent was never initialized with
a layer manager, and thus discarded all transaction messages it received but not
delete layer messages.

The effects of only using BasicLayerManager in headless mode also showed up in
the web platform reftests, which ended up as blank white boxes in e10s mode as
the compositor thread never received paint instructions. Switching over to
using ClientLayerManager in headless mode causes these paint instructions to be
relayed.

In order to make ClientLayerManager work under headless mode, it was necessary
to implement a HeadlessCompositorWidget and hook that up to the CompositorWidget
creation function in widget/gtk. A follow-up patch will be necessary to hook up
the same for the other supported widget platforms.

MozReview-Commit-ID: 8vB3lrxP7iX

--HG--
extra : rebase_source : 4013aa856943c983b44266c4a83436b253bc7ab1
2017-06-21 08:50:02 -07:00
Nicholas Nethercote
72c884bf74 Bug 1384835 (part 3, attempt 2) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj.
--HG--
extra : rebase_source : d317b25be2ec21d1a60d25da3689e46cdce0b649
2017-07-31 14:28:48 +10:00
Masayuki Nakano
937a9124a5 Bug 1379797 - nsWindow::GetEditCommandsRemapped() should do nothing if given event wasn't created with a native event r=karlt
When aEvent.mNativeKeyEvent of nsWindow::GetEditCommandsRemapped() is nullptr, that means the event was created without a native event.  Typically, chrome script created the event.  In such case, we should not execute native key bindings because doing it exposes the OS settings to chrome script because that might cause some privacy issue.  Therefore, the method should do nothing with such event.

MozReview-Commit-ID: 7ZHZjZ3ligT
2017-07-20 06:42:09 -07:00
Kentaro Hayashi
ef93e64d0d Bug 1382142 - Fix a typo about MOZ_CONTAINER_GET_CLASS definition. r=karlt
There is no side-effects by this commit because this macro definition is
not used in actual implementation.

--HG--
extra : amend_source : 6075bacf7c0e2c10dd66dcfda8e28f16786d58de
2017-07-19 17:01:59 +09:00
Samael Wang
a4e6b1337a Bug 1350643 - Part 5.2: Use per-monitor gdkScaleFactor to set contentsScaleFactor & nsWindow::GetDesktopToDeviceScale if running in gtk/wayland. r=karlt
MozReview-Commit-ID: Grs4dUqvLew

--HG--
extra : rebase_source : a5524e08fea8fb3623a55c486b33e95c4212fa59
2017-06-16 11:13:59 +08:00
Samael Wang
a4ddae112e Bug 1350643 - Part 5.1: Get per-monitor dpi in ScreenHelperGTK & use the same value in nsWindow::GetDPI. r=karlt
MozReview-Commit-ID: 9dOkUEzuUL8

--HG--
extra : rebase_source : 26fdbcc54edf8a3f4f0b166a88f85f98313bfe39
2017-06-16 10:58:11 +08:00
Samael Wang
3810bc3903 Bug 1350643 - Part 3: Add GetDPI to nsIScreen & ScreenDetails. r=kanru
MozReview-Commit-ID: HEFyuYV26Wy

--HG--
extra : rebase_source : fb172f4ba99ab7119036ddf4ec1b3eeeaead186c
2017-06-06 18:09:34 +08:00
Samael Wang
44adcfaeea Bug 1350643 - Part 2: Use gdk functions to enumerate monitors instead of Xinerama. r=karlt
MozReview-Commit-ID: D9f65oZMBuV

--HG--
extra : rebase_source : e4dfa2ee593b9e06433569aaa8f3ec965fca5f2d
2017-06-06 17:57:54 +08:00
Samael Wang
c9d2b57f92 Bug 1350643 - Part 1: Rename gfxPlatformGtk::GetDPI/GetDPIScale to GetFontScaleDPI/GetFontScaleFactor to better distinguish from nsIWidget::GetDPI. r=karlt
MozReview-Commit-ID: 4fxMG1FBlM8

--HG--
extra : rebase_source : 767780c828b2a9914b5f3af3c2749568099bece1
2017-06-14 16:54:21 +08:00
Blake Kaplan
46f55c55cc Bug 1374862 - Avoid setting gHandled when we don't handle signals. r=masayuki
This avoids a fatal assertion for some key events when focus isn't on a text
input.

MozReview-Commit-ID: Hqr6LNW61Kn

--HG--
extra : rebase_source : adc954fc355044c91dc34e9e689a745da95e78c9
2017-06-20 17:03:09 -07:00
Nicholas Nethercote
c86dc10505 Bug 1380227 - Avoid many UTF16toUTF8 and UTF8toUTF16 conversions in nsStringBundle. r=emk.
Most of the names passed to nsIStringBundle::{Get,Format}StringFromUTF8Name
have one of the two following forms:

- a 16-bit C string literal, which is then converted to an 8-bit string in
  order for the lookup to occur;

- an 8-bit C string literal converted to a 16-bit string, which is then
  converted back to an 8-bit string in order for the lookup to occur.

This patch introduces and uses alternative methods that can take an 8-bit C
string literal, which requires changing some signatures in other methods and
functions. It replaces all C++ uses of the old methods.

The patch also changes the existing {Get,Format}StringFromName() methods so
they take an AUTF8String argument for the name instead of a wstring, because
that's nicer for JS code.

Even though there is a method for C++ code and a different one for JS code,
|binaryname| is used so that the existing method names can be used for the
common case in both languages.

The change reduces the number of NS_ConvertUTF8toUTF16 and
NS_ConvertUTF16toUTF8 conversions while running Speedometer v2 from ~270,000 to
~160,000. (Most of these conversions involved the string
"deprecatedReferrerDirective" in nsCSPParser.cpp.)

--HG--
extra : rebase_source : 3bee57a501035f76a81230d95186f8c3f460ff8e
2017-07-12 15:13:37 +10:00
Martin Stransky
fa30ab7210 Bug 1373249 - Enable OMTC for composited popups, r=karlt
MozReview-Commit-ID: 1G4P2B4CA3z

--HG--
extra : rebase_source : aad1dbbae6e589f8925c2224f242b878d44a3d64
2017-06-15 17:17:53 +02:00
Mats Palmgren
15925cc551 Bug 1377486 - Make nsWindow 'final' to possibly devirtualize some calls. r=tn
MozReview-Commit-ID: GrcIukJYmt6
2017-07-01 19:59:21 +02:00
Mats Palmgren
949cb19d0b Bug 1377348 - Make nsLookAndFeel final to allow the compiler to devirtualize some calls. r=tn
MozReview-Commit-ID: 7AoZKsTyb3O
2017-06-30 03:34:15 +02:00
Jed Davis
19ef5c3395 Bug 1360069 - Don't do unnecessary wakelock signaling from content processes. r=gcp
MozReview-Commit-ID: AqKGsWyHuXl

--HG--
extra : rebase_source : 36a30ee2e0ebdd3cfd180958d029d717b7449cd9
2017-04-24 21:19:33 -06:00
Jed Davis
c8c7f64bf6 Bug 1360069 - Deal with the case where WakeLockListener is never instantiated. r=gcp
Otherwise, with the next patch, xpcshell tests crash because
WakeLockListener::Shutdown tries to Release() nullptr.

MozReview-Commit-ID: AmD5b6NUqnP

--HG--
extra : rebase_source : dd856ea37e793a8c40f2baf1eb001f96b4d0ee35
2017-06-27 14:44:39 -07:00
Masayuki Nakano
a9fb7c2f23 Bug 1376407 - part2: Emulate selection when committing composition as collapsed to the end of composition r=m_kato
When you start new composition during converting with Mozc in e10s mode, the following things occur:

1. Mozc commits previous composition.
2. Gecko dispatches eCompositionCommit event.
3. Mozc sets new composition string (skipping composition start signal).
4. Gecko dispatches eCompositionStart and eCompositionChange event.
5. Selection is changed asynchronously.
6. Gecko sets position of IME windows.

At #4, Gecko stores start of composition as selection start, then, trying to adjust it at #5. However, new selection is caret position in new composition string. Therefore, it's not used for the adjustment. This causes that stored composition start offset is always the start of the previous composition (if the previous patch didn't change EnsureToCacheSelection() behavior). So, IMContextWrapper needs to compute proper composition start offset in this case.

The simplest fix is, modifying selection at #2 as which will be occurred in focused editor.  So, this patch makes the selection cache collapsed to the end of committing string.

Note that actual selection may be different if JS changes selection and/or the text in the focused editor. However, it doesn't matter. IMContextWrapper should behave as expected while current composition is active.

MozReview-Commit-ID: 221mDUd8yRP

--HG--
extra : rebase_source : 571b2de85ed6ea1fdadea73b7f95507937cc60e9
2017-06-27 03:11:25 -07:00
Masayuki Nakano
b67cd28522 Bug 1376407 - part1: IMContextWrapper should cache selected string instead of length of selection r=m_kato
IMContextWrapper::EnsureToCacheSelection() always queries actual selection when the caller needs selected string.  However, this may be expensive and this is bad behavior for the following patch because it wants to emulate selection range until receiving next selection change notification.

Therefore, this patch makes IMContextWrapper::Selection store selected string instead of just its length like other native IME handlers

Additionally, this patch renames IMContextWrapper::mSelectedString to IMContextWrapper::mSelectedStringRemovedByComposition for making the difference between it and the new string in Selection clearer.

MozReview-Commit-ID: 3bygvW7sKf4

--HG--
extra : rebase_source : b0835b8c1607ecd647444a4d984980943a6fd570
2017-06-27 02:46:08 -07:00
Bill McCloskey
f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Nicholas Nethercote
58786e1ea7 Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
Carsten "Tomcat" Book
8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00
Bill McCloskey
6b3e84ed5f Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
David Anderson
eda24ede27 Rename LayerManager::Composite to LayerManager::ScheduleComposite. (bug 1365879 part 17, r=mattwoodrow) 2017-06-20 01:17:21 -07:00
Carsten "Tomcat" Book
ea1b86680c Backed out changeset 9846de3bd954 (bug 1372405)
--HG--
extra : rebase_source : 5d4a48e8ec394c329994689d938d2a6e9b2752b0
2017-06-20 08:27:02 +02:00
Bill McCloskey
4592152411 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
Alexis Beingessner
adb013669b Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-13 11:00:10 -04:00
Henri Sivonen
432653453a Bug 1261841 part 2 - Use encoding_rs instead of uconv. r=emk,mystor.
MozReview-Commit-ID: 15Y5GTX98bv
2017-06-13 13:23:23 +03:00
Sebastian Hengst
f3bf820bfd Backed out changeset 3d1ce85e6348 (bug 1088760) for bustage, at least on Android at layout/generic/nsPluginFrame.cpp:1612. r=backout 2017-06-13 00:30:03 +02:00
Alexis Beingessner
c75211cb95 Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-12 17:32:48 -04:00
L. David Baron
88370e02d1 Bug 1367576 - Make IsWidgetStateSafe not truncate the bits that it needs to test. r=karlt
This fix a mistake that goes back to the original code from bug 174585
(gecko-dev 9611b23530, 2005-08-20).

(This makes me wonder how important the code is in the first place if it
didn't work correctly.)

MozReview-Commit-ID: B6q0o5n5hDw
2017-06-06 22:27:18 -07:00
L. David Baron
e04a5a47c6 Bug 1367576 - Shrink existing caches to the size that's actually needed. r=karlt
Now that, thanks to bug 1367577, we have the theme constants in an enum,
we can make these arrays smaller rather than assuming that the constants
might use any valid uint8_t value.

MozReview-Commit-ID: A6GjTarVurc
2017-06-06 22:27:18 -07:00
L. David Baron
d1ddf5e48e Bug 1367576 - Cache results of getting GTK widget borders. r=karlt
See comments in the header file.

This also clears out mSafeWidgetStates in ThemeChanged since that seems
like a good thing to do, and marks nsNativeThemeGTK as final.

MozReview-Commit-ID: 5Zne4eGbGlh
2017-06-06 22:27:18 -07:00
L. David Baron
ee1674ecc5 Bug 1367576 - Refactor to allow for caching of some gtk widget padding/border results. r=karlt
This refactors the two nearly-identical callsites into a method so that
I can do caching in that method in the next patch.

Note that there was a slight difference between them in that the
aWidgetFlags parameter to GetGtkWidgetAndState was only passed from one
callsite.  However, given that the aState parameter is null, this
doesn't cause any behavior differences.  (Some controls in
GetGtkWidgetAndState null-check aWidgetFlags and some don't!)

Note also that this makes it always assign a result (often zero).  This
is fine for both callsites; GetWidgetPadding previously assigned zero
right before the call, and GetWidgetBorder did so at the start of the
function (and wasn't modified in between, since it was immediately
before the switch that the modified code is a case in).

MozReview-Commit-ID: IKurwry3UTi
2017-06-06 22:27:17 -07:00
L. David Baron
06ad92ffc6 Bug 1367576 - Remove unused ishtml parameter to moz_gtk_get_widget_border. r=karlt
This was needed for the (now-unused) GTK2 version of the code.

MozReview-Commit-ID: GocgC4OZ76p
2017-06-06 22:27:17 -07:00
Chris H-C
c57d39227d bug 546387 - Don't try to set the GTK clipboard with null items r=karlt
It causes an assert failure in gtk which prints to the console.

MozReview-Commit-ID: A4106Z4rT36

--HG--
extra : rebase_source : 642c94a95cfa3939bc475e9139ee63caa78e3005
2017-05-26 11:50:13 -04:00
Karl Tomlinson
94ab0b4d5c Bug 1368597 label CompositorWidget and WindowSurface as Graphics BUG_COMPONENT r=rhunt
--HG--
extra : rebase_source : 5f2cf496030a5736424e66be1a3b8a53188d5e22
2017-05-30 14:29:22 +12:00
Martin Stransky
5f9fc84d1a Bug 1364355 - Implement UpdateOpaqueRegion() by gdk_window_set_opaque_region(), r=karlt
MozReview-Commit-ID: 50N99ZlvFUh

--HG--
extra : rebase_source : d095f93a858271c8a622f127724b06246e9f4bf9
2017-05-26 21:27:32 +02:00
Martin Stransky
0d7ee0c159 Bug 1364355 - Add support for using ARGB windows with OMTC when an X11 compositor is active. r=karlt
Authored by Andrew Comminos <andrew@comminos.com>

MozReview-Commit-ID: FIQBHSXgjMh

--HG--
extra : rebase_source : 1ae73bed3b2b933d11803ae3b93afbf3d1e1f570
2017-06-01 11:28:50 +02:00
Andrew Comminos
302c93427f Bug 1364355 - Enable argb visual for GTK window behind hidden preference mozilla.widget.use-argb-visuals, r=karlt
This preference is default to false and allows to experiment with transparent widgets on Gtk.
Original patch autor is Andrew Comminos <andrew@comminos.com>.

MozReview-Commit-ID: JZkCjBWny3m

--HG--
extra : rebase_source : 116c4977d7d7f3927e6a4df203584d8b9c9ad57b
2017-05-25 15:45:22 +02:00
Phil Ringnalda
c3d89ab945 Backed out 3 changesets (bug 1364355) for timeouts in test_panel_anchoradjust.xul
Backed out changeset 7cc2790574dc (bug 1364355)
Backed out changeset 2ee6598089a3 (bug 1364355)
Backed out changeset c4c2645ca8b7 (bug 1364355)

MozReview-Commit-ID: 5JEGvHeCWIv
2017-05-26 20:30:45 -07:00
Martin Stransky
eb881749c2 Bug 1364355 - Implement UpdateOpaqueRegion() by gdk_window_set_opaque_region(), r=karlt
MozReview-Commit-ID: 50N99ZlvFUh

--HG--
extra : rebase_source : 63bcdeaa5f7129a9f0d171d9826f33b8dc6bbe34
2017-05-26 21:27:32 +02:00
Martin Stransky
3d05b54851 Bug 1364355 - Add support for using ARGB windows with OMTC when an X11 compositor is active. r=karlt
Authored by Andrew Comminos <andrew@comminos.com>

MozReview-Commit-ID: FIQBHSXgjMh

--HG--
extra : rebase_source : 22885a2846ec0bc718196d6e16bacb37b0410b25
2017-05-25 15:55:20 +02:00
Andrew Comminos
f2d7adfe22 Bug 1364355 - Enable argb visual for GTK window behind hidden preference mozilla.widget.use-argb-visuals, r=karlt
This preference is default to false and allows to experiment with transparent widgets on Gtk.
Original patch autor is Andrew Comminos <andrew@comminos.com>.

MozReview-Commit-ID: JZkCjBWny3m

--HG--
extra : rebase_source : 18a3dd1ecb2ef87910307e3085a343a4d75403af
2017-05-25 15:45:22 +02:00
Mats Palmgren
297b9d70e1 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz
MozReview-Commit-ID: IbwWM0FL6HF

--HG--
extra : source : bbb688fe1ba3f5201a190c6e25b693ef7272ea2d
2017-05-21 17:15:00 +08:00
Carsten "Tomcat" Book
00d4ea331d Backed out changeset bbb688fe1ba3 (bug 1365614) 2017-05-22 15:45:31 +02:00
Mats Palmgren
e706869580 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz 2017-05-21 17:15:00 +08:00
Ryan VanderMeulen
96eca59299 Merge m-c to autoland. a=merge 2017-05-19 12:26:48 -04:00
Masayuki Nakano
872f694c63 Bug 1339543 part 4 Change nsIWidget::ExecuteNativeKeyBinding() to nsIWidget::GetEditCommands() which just retrieves edit commands for the type r=smaug
Now, nsIWidget::ExecuteNativeKeyBinding() isn't used by anybody for executing
edit commands.  Instead, they need array of edit commands for the key
combination.  So, the method should be renamed to GetEditCommands() and just
return edit commands as an array.

MozReview-Commit-ID: 4G0B1lJ8Lbe

--HG--
extra : rebase_source : 4a5829281d59677c773950c34d91a1cd8074d243
2017-05-19 17:49:41 +09: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
Karl Tomlinson
ff46e3c8cb bug 1362170 force a style resolution on context creation to set GTK 3.4 theming_engine r=stransky+263117
This works around a GTK bug that led to the default engine being used instead
for the first draw.

MozReview-Commit-ID: 4r48HNUgVBE

--HG--
extra : rebase_source : 83a964e02dba97cb0b52acde6b692d241c03ed57
2016-12-14 19:22:28 +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
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
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
Wes Kocher
514e230373 Merge inbound to central, a=merge 2017-04-13 17:24:01 -07:00
Kartikaya Gupta
b4341d2689 Merge m-c to graphics
MozReview-Commit-ID: EGaA6e4loBM
2017-04-13 11:08:02 -04:00
Kartikaya Gupta
aa20d100c1 Merge m-c to graphics
MozReview-Commit-ID: Ij5C7MUete4
2017-04-11 10:09:54 -04:00
sotaro
292e80ffe3 Bug 1354474 - Add FlushRendering() and Composite() support to WebRenderLayerManager r=mattwoodrow 2017-04-10 15:58:29 +09: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
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
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
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
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
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
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
734b25e05c Merge m-c to inbound, a=merge 2017-04-03 14:51:06 -07: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
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
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
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
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
Gaith
aaaabee676 Bug 1219464 - Replace PRLogModuleInfo usage with LazyLogModule in widget/. r=erahm
MozReview-Commit-ID: Ge7I8YlNqgM
2016-05-18 22:55:42 +03:00
Karl Tomlinson
a1f02152df 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
2017-03-27 20:32:55 +02:00
Karl Tomlinson
a230b9ad53 bug 1343802 consider scrollbar trough min-width/min-height properties r=jhorak+328198
in determining breadth of trough and scrollbar.

MozReview-Commit-ID: 3orNXdv6uZh
2017-03-27 20:32:51 +02:00
Karl Tomlinson
e9f17ddd35 bug 1343802 swap vertical scrollbar button dimensions for horizontal scrollbars r=jhorak+328198
MozReview-Commit-ID: 4fK0hFRWn1p
2017-03-27 20:32:47 +02:00
Karl Tomlinson
a9e3d6db57 bug 1343802 adjust scrollbar track border to prevent thumb expanding to fill available breadth r=jhorak+328198+328198
MozReview-Commit-ID: 7KJGnds0ngL
2017-03-27 20:32:42 +02:00
Karl Tomlinson
35bae617b5 bug 1343802 update notebook_has_tab_gap and scrollbar metrics after theme changes r=jhorak+328198
MozReview-Commit-ID: IRPXNwLe5Ey
2017-03-27 20:32:38 +02:00
Karl Tomlinson
b1ce163df0 bug 1343802 remove have_arrow_scaling, which was always true r=jhorak+328198
MozReview-Commit-ID: AeM2oKoPCTs
2017-03-27 20:32:33 +02:00
Karl Tomlinson
577cadd9fb 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
2017-03-27 20:32:29 +02:00
Karl Tomlinson
4a203a1408 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
2017-03-27 20:32:25 +02:00
Karl Tomlinson
1703a0f492 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
2017-03-27 20:32:20 +02:00
Karl Tomlinson
2af68f54bd bug 1343802 remove unused moz_gtk_enable_style_props r=jhorak+328198
MozReview-Commit-ID: KbAIRCyqmJ8
2017-03-27 20:32:16 +02:00
Sebastian Hengst
334b8a2719 Backed out changeset bc81d40f3290 (bug 1343802) for likely causing bug 1350875 and reviving bug 1332040. r=backout 2017-03-27 18:01:58 +02:00
Sebastian Hengst
b3e4da9f67 Backed out changeset 5dc7564d651b (bug 1343802) 2017-03-27 18:00:23 +02:00
Sebastian Hengst
579ea8c74c Backed out changeset 8c45140a2819 (bug 1343802) 2017-03-27 18:00:18 +02:00
Sebastian Hengst
9baf1aac8b Backed out changeset af279778b154 (bug 1343802) 2017-03-27 18:00:14 +02:00
Sebastian Hengst
2fe77fa5ac Backed out changeset 88ea23ae0627 (bug 1343802) 2017-03-27 18:00:10 +02:00
Sebastian Hengst
0dd66abf1e Backed out changeset 45330fa58671 (bug 1343802) 2017-03-27 18:00:05 +02:00
Sebastian Hengst
34f0350a5c Backed out changeset 9abd87cd2dff (bug 1343802) 2017-03-27 18:00:01 +02:00
Sebastian Hengst
d2abc82e65 Backed out changeset 7abbf6d092eb (bug 1343802) 2017-03-27 17:59:56 +02:00
Sebastian Hengst
80796b26f5 Backed out changeset 22f4dc6bb4db (bug 1343802) 2017-03-27 17:59:52 +02:00
Sebastian Hengst
18de691a0f Backed out changeset db84a68eaaec (bug 1343802) 2017-03-27 17:59:48 +02: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
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
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
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
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
Carsten "Tomcat" Book
c1edc7067d merge mozilla-inbound to mozilla-central a=merge 2017-03-13 15:22:26 +01:00
Masayuki Nakano
fee81e4718 Bug 1338369 part.2 nsWindow for GTK should consume Shift key state of eContextMenu event if it's caused by Shift+F10 r=karlt,smaug
Shift+F10 is also well-known shortcut key on Linux.  So, it should behave same as pressing ContextMenu key.  So, for allowing web page to prevent its default, nsWindow for GTK needs to consume Shift key state at dispatching eContextMenu key.

Additionally, we should allow to open context menu with Shift+ContextMenu because only ContextMenu key press can be prevented its default by web page.  Therefore, we should allow users to open context menu even with keyboard even if web content doesn't want it.

Note that Ctrl+Shift+F10 or Alt+Shift+F10 should behave same as Shift+ContextMenu key, but we should discuss later.

MozReview-Commit-ID: 1mPGKMTsrkv

--HG--
extra : rebase_source : 75dd8333b24f5e2f4ded4414b5e5ee85de253cc7
2017-03-09 18:53:24 +09:00
Stone Shih
229b4ba331 Bug 606885 - Fire drag events with keyboard modifiers. r=enn
--HG--
extra : rebase_source : c6e4ac37ea2397d86368cb59b0a68aa3a9f43d79
2017-02-17 11:29:42 +08:00
Andy Kluger
be28304603 Use GTK cursors for zoom-in or zoom-out css cursors (bug 1328724) r=karlt
get_gtk_cursor attempts to use themed cursor icons for most css cursor types,
but left these two out. Now it will try to use the theme for these as well,
and fall back to the generic FF set used previously.

MozReview-Commit-ID: 9QHV0mc5AxK

--HG--
extra : rebase_source : c03d01f6dc3a30a8f16def9f95cee14d18f7a8a1
2017-03-08 01:28:47 -05:00
Carsten "Tomcat" Book
78ac0ceba9 merge mozilla-inbound to mozilla-central a=merge 2017-03-08 16:59:42 +01:00
Jim Chen
53a1107cd1 Bug 1343075 - Use GeckoEditableSupport from PuppetWidget; r=masayuki r=rbarker r=snorp r=esawin
Bug 1343075 - 1a. Add TextEventDispatcherListener::GetIMEUpdatePreference; r=masayuki

Add a GetIMEUpdatePreference method to TextEventDispatcherListener to
optionally control which IME notifications are received by NotifyIME.
This patch also makes nsBaseWidget forward its GetIMEUpdatePreference
call to the widget's native TextEventDispatcherListener.

Bug 1343075 - 1b. Implement GetIMEUpdatePreference for all TextEventDispatcherListener; r=masayuki

This patch implements GetIMEUpdatePreference for all
TextEventDispatcherListener implementations, by moving previous
implementations of nsIWidget::GetIMEUpdatePreference.

Bug 1343075 - 2. Allow setting a PuppetWidget's native TextEventDispatcherListener; r=masayuki

In PuppetWidget, add getter and setter for the widget's native
TextEventDispatcherListener. This allows overriding of PuppetWidget's
default IME handling. For example, on Android, the PuppetWidget's native
TextEventDispatcherListener will communicate directly with Java IME code
in the main process.

Bug 1343075 - 3. Add AIDL interface for main process; r=rbarker

Add AIDL definition and implementation for an interface for the main
process that child processes can access.

Bug 1343075 - 4. Set Gecko thread JNIEnv for child process; r=snorp

Add a JNIEnv* parameter to XRE_SetAndroidChildFds, which is used to set
the Gecko thread JNIEnv for child processes. XRE_SetAndroidChildFds is
the only Android-specific entry point for child processes, so I think
it's the most logical place to initialize JNI.

Bug 1343075 - 5. Support multiple remote GeckoEditableChild; r=esawin

Support remote GeckoEditableChild instances that are created in the
content processes and connect to the parent process GeckoEditableParent
through binders.

Support having multiple GeckoEditableChild instances in GeckoEditable by
keeping track of which child is currently focused, and only allow
calls to/from the focused child by using access tokens.

Bug 1343075 - 6. Add method to get GeckoEditableParent instance; r=esawin

Add IProcessManager.getEditableParent, which a content process can call
to get the GeckoEditableParent instance that corresponds to a given
content process tab, from the main process.

Bug 1343075 - 7. Support GeckoEditableSupport in content processes; r=esawin

Support creating and running GeckoEditableSupport attached to a
PuppetWidget in content processes.

Because we don't know PuppetWidget's lifetime as well as nsWindow's,
when attached to PuppetWidget, we need to attach/detach our native
object on focus/blur, respectively.

Bug 1343075 - 8. Connect GeckoEditableSupport on PuppetWidget creation; r=esawin

Listen to the "tab-child-created" notification and attach our content
process GeckoEditableSupport to the new PuppetWidget.

Bug 1343075 - 9. Update auto-generated bindings; r=me
2017-03-07 22:34:39 -05:00
Nitish
600629af0a Bug 1334795 - nsWindow.cpp: remove two redundant return statements at the ends of functions with void return type. r=karlt
MozReview-Commit-ID: G4X2vXT6Eam

--HG--
extra : rebase_source : 98833d7161e29711da6a7f4e60458eec9fa9f3b2
2017-01-29 14:33:14 +05:30
Wes Kocher
e84fc624ff Merge inbound to central, a=merge
MozReview-Commit-ID: DpCZgRV1csS
2017-02-24 16:46:12 -08:00
Benjamin Smedberg
e2482f716f Bug 1338172 part E - make all the PPluginWidget stuff Windows-only. Rip out the GTK-specific native widget support from widget/gtk/nsWindow and elsewhere, r=jimm
MozReview-Commit-ID: J6E8sYcyX4U

--HG--
extra : rebase_source : 63aa9d4a603a7cc56e068ce05434fb7faceac751
extra : source : 9ee6c6f4e59c7967108a727a80e46d686b983a0b
2017-02-09 11:53:50 -05:00
Martin Stransky
c707dad541 Bug 1335705 - For Gtk > 3.20 determine scale trough size from trough CSS node and also add border/padding/margin, r=karlt
MozReview-Commit-ID: BhS9xkagvMp

--HG--
extra : amend_source : 9629956a6b06defb8275ee3ab36d2438968c0202
2017-02-22 11:56:28 +01:00
Martin Stransky
c5b2ec652e Bug 1335705 - Consider also margin when determine range widget slider size, r=karlt
MozReview-Commit-ID: 49UgRJFjvns

--HG--
extra : rebase_source : 680b47b4a346b65ea3cc6c6652b36e5f5def6e9a
2017-02-23 10:52:55 +01:00
Martin Stransky
b70e5069a9 Bug 1341296 - Move mozcontainer.c to cpp file, r=karlt
MozReview-Commit-ID: 2n18VlOMQod

--HG--
rename : widget/gtk/mozcontainer.c => widget/gtk/mozcontainer.cpp
extra : rebase_source : c463aff90a88c37c1fe5ba52b2b0c2a588df8f92
2017-02-22 09:49:54 +01:00
Lee Salzman
2f0c246fb8 Bug 1335827 - clean gtk window's surface provider before it gets destroyed. r=karlt
MozReview-Commit-ID: 5Aahub11ZRF
2017-02-21 10:16:14 -05:00
James Pearson
86efc730ec Bug 1333720 - Support Unknown/Unsupported widget type 13 and 17. r=karlt
--HG--
extra : rebase_source : 352781ae7ea9a890de752045923c86718abf763f
2017-02-17 09:58:00 -05:00
Tom Tromey
5f8f360823 Bug 1060419 - make log_print use Printf.h, r=froydnj
MozReview-Commit-ID: BIZ1GQEZ1vs

--HG--
extra : rebase_source : 2f1f0aa12493c44f352d9a7e8683e7bb72d2d75b
2016-12-15 20:16:31 -07:00
Nicholas Nethercote
334f89c567 Bug 1339327 (part 5) - Rename some profiler functions related to sleeping. r=mstange.
The new names make it clearer that these actions apply to just one thread.

- profiler_sleep_start() --> profiler_thread_sleep()
- profiler_sleep_end()   --> profiler_thread_wake()
- profiler_is_sleeping() --> profiler_thread_is_sleeping()
- GeckoProfilerSleepRAII --> GeckoProfilerThreadSleepRAII
- GeckoProfilerWakeRAII  --> GeckoProfilerThreadWakeRAII
2017-02-15 14:26:23 +11:00
Wes Kocher
4468d77e14 Backed out 5 changesets (bug 1338172) for linux crashtest failures a=backout
Backed out changeset 9ee6c6f4e59c (bug 1338172)
Backed out changeset 1c92fbfca20a (bug 1338172)
Backed out changeset 907d9c3d1043 (bug 1338172)
Backed out changeset e4994ab9d628 (bug 1338172)
Backed out changeset 6209f07e1f26 (bug 1338172)

MozReview-Commit-ID: 3f4xBRcGPqM
2017-02-14 14:31:54 -08:00
Benjamin Smedberg
dc59402254 Bug 1338172 part E - make all the PPluginWidget stuff Windows-only. Rip out the GTK-specific native widget support from widget/gtk/nsWindow and elsewhere, r=jimm
MozReview-Commit-ID: J6E8sYcyX4U

--HG--
extra : rebase_source : 18a7bd7d5180606201d93a25c766df7285405094
extra : histedit_source : ae893f87b074a7a17a0e56f835977fea074f25e8
2017-02-09 11:53:50 -05:00
Kartikaya Gupta
96c394d70c Merge m-c to graphics
MozReview-Commit-ID: AXRXwXgkOTv
2017-02-10 13:57:53 -05:00
Masayuki Nakano
5442d350f3 Bug 1337739 Create an enum eKeyLocation* for avoiding to use nsIDOMKeyEvent::DOM_KEY_LOCATION_* r=smaug
Currently, we use alias NS_VK_* for WidgetKeyboardEvent::mKeyCode.  Similarly, we should create alias enum for nsIDOMKeyEvent::DOM_KEY_LOCATION_*.  Then, we can reduce the length and avoid to include nsIDOMKeyEvent in some cpp files.

MozReview-Commit-ID: 5cs4zQ061Lc

--HG--
extra : rebase_source : e6a6edd27718b9e3d4a40b07902d029791876999
2017-02-08 21:04:22 +09:00
Kartikaya Gupta
ca041b7c5a Merge m-c to graphics
MozReview-Commit-ID: FOyS87VawTT
2017-01-25 08:52:04 -05:00
Kartikaya Gupta
c7fda3b4ca Merge m-c to graphics
MozReview-Commit-ID: KzmBdQoXRRI
2017-01-17 09:01:06 -05:00
Ryan Hunt
04951a435e Merge m-c to graphics 2017-01-13 10:14:22 -06:00
Karl Tomlinson
22bdd11ef6 bug 1328899 don't use GTK prelight and active state flags when drawing textfield-multiline background r=stransky+263117
This is consistent with GTK not setting these flags with GtkTextView
and GtkScrolledWindow.

The active flag was triggering @selected_bg_color with Ambiance.

This patch almost reverts the state flags to the logic prior to
cd7544affe40 but keeps the focused flag in the scrolled window.

MozReview-Commit-ID: IVY1sI2Hllw

--HG--
extra : rebase_source : 5774af02f7b6abfeab15bee5f35d941490c81514
2017-01-17 14:48:55 +13:00
Jamie Nicol
7a3e0c46f7 Bug 1319764 - Ensure Gtk window unmap workaround is actually used. r=karlt
We were miscounting the number of manual configure events which we
needed to send gtk as the workaround for bug 1225044, causing it not
to work in some cases. This is because configure events can come from
more sources than were counting.

Decrement mPendingConfigures only as far as zero, like
configure_request_count in gtk_window_configure_event().

MozReview-Commit-ID: GxpR2Zozxor

--HG--
extra : rebase_source : 9d02c4d019d8bea7a07c20fb1435d2f677ae6e28
2017-01-13 14:23:29 +00:00
Karl Tomlinson
ea5dc4dafd bug 1324256 consider scrollbar trough borders even for GTK versions < 3.20 r=jhorak+328198
This is needed for GTK themes with non-zero trough-border such as Greybird.

MozReview-Commit-ID: 8ERxq5Nia6F

--HG--
extra : rebase_source : 5e235b6ae9aab334b57a1f669c835eecbb6563fa
2017-01-09 19:33:27 +13:00
Kartikaya Gupta
ac6cc8ce06 Bug 1330037 - Propagate the CompositorOptions to all CompositorWidget instances. r=dvander
MozReview-Commit-ID: DFeeo2WNmhZ

--HG--
extra : rebase_source : d40bea7f726df007e3f079bb9576e1cbe17e3460
2017-01-12 17:29:42 -05:00
Kartikaya Gupta
5e2e8f8f8e Merge m-c to graphics
MozReview-Commit-ID: 5ovnMmSOiZX
2017-01-09 10:18:37 -05:00
Carsten "Tomcat" Book
bb28022e75 merge mozilla-inbound to mozilla-central a=merge 2017-01-09 10:33:05 +01:00
Kartikaya Gupta
7d2382b3c3 Merge m-c to graphics
MozReview-Commit-ID: 74RpKOFNVx4
2017-01-05 09:28:19 -05:00
Karl Tomlinson
9202053bc8 bug 1328352 set alpha component appropriately in operator over for -moz-field r=stransky+263117
MozReview-Commit-ID: AP9JfZTKDse

--HG--
extra : rebase_source : 1f92499b10d16670aa114a624c810846161ca386
2017-01-04 08:43:20 +13:00
Kartikaya Gupta
76d8274792 Merge m-c to graphics
MozReview-Commit-ID: FIRww20wbCc
2017-01-03 08:43:47 -05:00
Kartikaya Gupta
e9061f512a Merge m-c to graphics
MozReview-Commit-ID: 2dxsxfKGsg7
2016-12-30 09:36:28 -05:00
Karl Tomlinson
9e1122a84a bug 1320860 adjust textarea style contexts for GTK 3.20 theming ABI changes r=stransky+263117+263117
MozReview-Commit-ID: JTQO5bK5Yvv

--HG--
extra : rebase_source : beb69dd204d7459eca52ad8f995f60651f3d6188
2016-12-30 13:44:55 +13:00
Karl Tomlinson
510b23699f bug 1320860 consider textview root node background in addition to text node for -moz-appearance:textfield-multiline r=stransky+263117
This is necessary for GTK versions > 3.18 because windows no
longer clear their backgrounds since
https://git.gnome.org/browse/gtk+/commit/?id=580ea227a6bb19ad6c6d4766b3a36dbad24583f3
and Ambiance for 3.20 has a transparent background for the "text" window.
See bug 1324262.

MozReview-Commit-ID: 7HCCwfOv0LP

--HG--
extra : rebase_source : 3f4311bb976b3b7c6f17702688437c20395a4454
2016-12-30 12:54:28 +13:00
Karl Tomlinson
939f661d39 bug 1320860 consider textview root node background in addition to text node for -moz-field r=stransky+263117
This is necessary for GTK versions > 3.18 because windows no
longer clear their backgrounds since
https://git.gnome.org/browse/gtk+/commit/?id=580ea227a6bb19ad6c6d4766b3a36dbad24583f3
and Ambiance for 3.20 has a transparent background for the "text" window.
See bug 1324262.

MozReview-Commit-ID: FL16Gx1EQR

--HG--
extra : rebase_source : 59eeaef6b7b62a27ec7d729f26e526da51c9f32e
2017-01-03 13:08:07 +13:00
Karl Tomlinson
5f631b2b35 bug 1320860 introduce MOZ_GTK_TEXT_VIEW_TEXT and move MOZ_GTK_RESIZER to WidgetStyleCache r=stransky+263117+263117
The style context for MOZ_GTK_TEXT_VIEW is now created by copying from the
widget instead of caching a widget and using its context.

No rendering changes are expected, unless themes are animating GtkTextView
backgrounds.

MozReview-Commit-ID: 9aW61kMkKcb

--HG--
extra : rebase_source : 279c8b15e58c3f0fff51f41a4afacfebfbfa5739
2016-12-30 13:37:51 +13:00
Karl Tomlinson
5625dfc07e bug 1324886 with GTK versions < 3.8 draw menuitem background and frame only when in hover and not a separator r=stransky+263117
MozReview-Commit-ID: JdZbuXRbP9X

--HG--
extra : rebase_source : b1df1b4b7ac108f3ecd6c3890b165112f89556bb
2017-01-04 09:57:48 +13:00
Kartikaya Gupta
4233ee5fec Merge m-c to graphics
MozReview-Commit-ID: E0Sr26LKcZx
2016-12-21 10:16:15 -05:00
Karl Tomlinson
2041039808 bug 1320860 Back out changeset a6aabcb07a6e for causing bug 1322120 or bug 1324262
--HG--
extra : rebase_source : c77a5627ebb851b3f70da2917c68b9ae3683247b
2016-12-29 18:05:42 +13:00
Kartikaya Gupta
108f572510 Merge m-c to graphics
MozReview-Commit-ID: 6ocpYm7MBCV
2016-12-19 13:35:32 -05:00
Nicholas Nethercote
523bee37b8 Bug 1325234 (part 9) - Remove remaining NS_IMETHOD_ occurrences from nsIWidget. r=mstange.
|virtual T| is clearer than |NS_IMETHOD_(T)|.

--HG--
extra : rebase_source : 9c8f423d7a89782a4d790a50e137071271086eed
2016-12-21 15:27:20 +11:00
Nicholas Nethercote
e52b19470c Bug 1325234 (part 6) - Streamline nsIWidget::SetTitle. r=jimm.
This patch changes it from |NS_IMETHOD| to |virtual nsresult| because some call
sites are checked and others aren't.

--HG--
extra : rebase_source : 6723b9db709d1506dd394b1e85572309c1c2e2cf
2016-12-21 11:13:08 +11:00
Nicholas Nethercote
ea1e2ca6ce Bug 1325234 (part 5) - Streamline nsIWidget::SetCursor (both versions). r=jimm.
This patch changes one from |NS_IMETHOD| to |virtual nsresult| and the other to
|virtual void|.

--HG--
extra : rebase_source : 55af71c01dc75d6bf7c63191e9cfabc9f5368ffa
2016-12-21 11:13:08 +11:00
Nicholas Nethercote
0eaecf55da Bug 1325234 (part 4) - Streamline nsIWidget::{SetFocus,SetNonClientMargins}(). r=mstange.
This patch changes them from |NS_IMETHOD| to |virtual nsresult|.

--HG--
extra : rebase_source : 5e54c2fd340c393b33c9e1dcf20a80fe2f41b2f4
2016-12-21 11:13:08 +11:00
Nicholas Nethercote
da5978a842 Bug 1325234 (part 3) - Streamline nsIWidget::Show(). r=mstange.
This patch changes it from |NS_IMETHOD| to |virtual void|. The return value was
only checked in one low-value assertion and one other place where the check had
no useful effect (in nsCocoaWindow::HideWindowChrome()).

--HG--
extra : rebase_source : f6671e9e0e10ee18fb32f8b1c83f1e64c3d97e67
2016-12-21 11:12:54 +11:00
Nicholas Nethercote
e2d9e4ed68 Bug 1325234 (part 2) - Streamline nsIWidget::Invalidate(). r=jimm.
This patch changes it from |NS_IMETHOD| to |virtual void|. The return value was
only checked in one low-value assertion so I decided it wasn't needed.

--HG--
extra : rebase_source : 3523d9a086cf98c40d237d777f5dd471af0d7465
2016-12-20 09:55:32 +11:00
Dão Gottwald
608c30a483 Backed out changeset 6c2cedbdeb65 (bug 1322120) for causing bug 1324262 2016-12-18 22:27:43 +01:00
Kartikaya Gupta
44e6529919 Merge m-c to graphics
MozReview-Commit-ID: D5tvjU423oT
2016-12-16 10:23:35 -05:00
Carsten "Tomcat" Book
a244c7fb4a merge mozilla-inbound to mozilla-central a=merge 2016-12-16 16:04:50 +01:00
Kartikaya Gupta
dd70fb88f4 Merge m-c to graphics
MozReview-Commit-ID: C13IwWOpf64
2016-12-14 09:32:38 -05:00
Kartikaya Gupta
7383fcbb4a Merge m-c to graphics
MozReview-Commit-ID: KhxBqJbwxv8
2016-12-06 23:45:24 -05:00
Morris Tseng
1ea8752292 Merge mozilla-central to graphics. 2016-11-28 10:46:02 +08:00
Carsten "Tomcat" Book
a666835bf5 merge mozilla-inbound to mozilla-central a=merge
--HG--
extra : rebase_source : 7f6b0f633da54f747b30496110e5260a226fe249
2016-11-25 15:36:56 +01:00
Nathan Froyd
8d1051edff Bug 1321883 - remove unused variable in gtk2drawing.c; r=karlt 2016-12-12 03:04:48 -05:00
Kartikaya Gupta
fe327f303e Merge m-c to graphics
MozReview-Commit-ID: Cj1AAiaHUNH
2016-11-23 11:09:56 -05:00
Kartikaya Gupta
1edfa44b56 Merge m-c to graphics
MozReview-Commit-ID: E9vVT9ZNSAJ

--HG--
rename : layout/base/FrameLayerBuilder.cpp => layout/painting/FrameLayerBuilder.cpp
2016-11-22 10:21:45 -05:00
Karl Tomlinson
0510cb3db2 bug 1322120 use text node for field and selected colors r=stransky+263117
This adjustment is required for changes to MOZ_GTK_TEXT_VIEW in a6aabcb07a6e.
MOZ_GTK_TEXT_VIEW_TEXT now retrieves the equivalent node from WidgetStyleCache.

MozReview-Commit-ID: 2zfHCKMT0ov

--HG--
extra : rebase_source : 39edee068f44cf9d2f6cccffc89dcd7c2c2616d5
2016-12-08 10:39:36 -10:00
Kartikaya Gupta
d654e9aa16 Merge m-c to graphics
MozReview-Commit-ID: HlYQkwnswIh

--HG--
rename : gfx/layers/ipc/CompositorVsyncScheduler.h => gfx/layers/ipc/CompositorVsyncSchedulerOwner.h
rename : layout/style/test/test_flexbox_min_size_auto.html => layout/style/test/test_computed_style_min_size_auto.html
rename : config/external/nss/moz.build => security/moz.build
rename : config/external/nss/nss.symbols => security/nss.symbols
rename : testing/marionette/components/marionettecomponent.js => testing/marionette/components/marionette.js
rename : testing/web-platform/tests/XMLHttpRequest/event-upload-progress-crossorigin.sub.htm => testing/web-platform/tests/XMLHttpRequest/event-upload-progress-crossorigin.htm
rename : testing/web-platform/tests/XMLHttpRequest/send-non-same-origin.sub.htm => testing/web-platform/tests/XMLHttpRequest/send-non-same-origin.htm
rename : testing/web-platform/tests/html/browsers/history/the-location-interface/security_location_0.sub.htm => testing/web-platform/tests/html/browsers/history/the-location-interface/security_location_0.htm
rename : testing/web-platform/tests/html/browsers/the-window-object/security-window/window-security.sub.html => testing/web-platform/tests/html/browsers/the-window-object/security-window/window-security.html
rename : testing/web-platform/tests/html/browsers/windows/nested-browsing-contexts/frameElement.sub.html => testing/web-platform/tests/html/browsers/windows/nested-browsing-contexts/frameElement.html
rename : testing/web-platform/tests/html/browsers/windows/targeting-cross-origin-nested-browsing-contexts.sub.html => testing/web-platform/tests/html/browsers/windows/targeting-cross-origin-nested-browsing-contexts.html
rename : testing/web-platform/tests/html/dom/documents/dom-tree-accessors/Document.currentScript.sub.html => testing/web-platform/tests/html/dom/documents/dom-tree-accessors/Document.currentScript.html
rename : testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_specified.sub.html => testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_specified.html
rename : toolkit/components/places/tests/cpp/mock_Link.h => toolkit/components/places/tests/gtest/mock_Link.h
rename : toolkit/components/places/tests/cpp/moz.build => toolkit/components/places/tests/gtest/moz.build
rename : toolkit/components/places/tests/cpp/places_test_harness.h => toolkit/components/places/tests/gtest/places_test_harness.h
rename : toolkit/components/places/tests/cpp/places_test_harness_tail.h => toolkit/components/places/tests/gtest/places_test_harness_tail.h
rename : toolkit/components/places/tests/cpp/test_IHistory.cpp => toolkit/components/places/tests/gtest/test_IHistory.cpp
rename : browser/themes/shared/filters.svg => toolkit/themes/shared/filters.svg
rename : browser/themes/shared/downloads/menubutton-dropmarker.svg => toolkit/themes/shared/icons/menubutton-dropmarker.svg
extra : amend_source : b446cd55619aa09f6d48941ab201fb796738d217
2016-11-21 10:24:00 -05: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
Mozilla Graphics Team
9cc9061246 Bug 1317774 - Add non-gfx code needed to use WebRender in gecko. r=gfx
This completes the migration of code from the github branch to the graphics
project repo. At this point all webrender-related code should be disabled
unless --enable-webrender is provided in the mozconfig.

MozReview-Commit-ID: Dea8rxM6UPL
2016-11-16 08:54:51 -05:00
Karl Tomlinson
42b8d039df bug 1319353 CreateCSSNode: Copy classes from the parent style context to its corresponding node in the path r=stransky+263117
This is necessary for GTK to match CSS rules against classes on ancestor nodes
of style contexts constructed from paths.

It can be tested with the following in ~/.config/gtk-3.0/gtk.css

tooltip.background label {padding: 100px;}

MozReview-Commit-ID: EUQ9ndeSl1Z

--HG--
extra : rebase_source : 95c267c5495791a40e755aacf14a80c750fbedd2
2016-11-16 16:55:13 +13:00
Martin Stransky
871d79fd06 Bug 1320686 - [nsLookAndFeel] Get styles for menu label, button text and combobox text colors from WidgetCache. r=karlt
--HG--
extra : rebase_source : 716e78588f3dfddd67aa88a59789077d16ee4c9f
2016-12-01 05:09:00 -05:00
Phil Ringnalda
2160edf69f Backed out changeset eb4be9ed211e (bug 1319650) for reftest and chrome bustage
CLOSED TREE
2016-11-24 19:30:48 -08:00
Karl Tomlinson
777838332c 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 : 2091fc84a9ecb8b55e7d3e36e72cbd03ea826ac8
2016-11-23 16:41:57 +13:00
Karl Tomlinson
26e9c3ad6d bug 1317574 adjust menuitem padding and check/radio indicator position for changes in GTK 3.20 r=stransky+263117
MozReview-Commit-ID: DXTbezxpcqM

--HG--
extra : rebase_source : 10c19f3898baee680e856c5b86a17544a16a4fdb
2016-11-21 17:27:11 +13:00
Karl Tomlinson
faebf933c8 bug 1317574 rename subtract_margin and rectangle_inset to Inset* and swap InsetByMargin parameters for consistency r=stransky+263117
MozReview-Commit-ID: 8vgsoj4TGz0

--HG--
extra : rebase_source : 93958a959af0933b8318f5ad78360270407cdabb
2016-11-21 17:16:37 +13:00
Karl Tomlinson
759a5af4c7 bug 1317574 rename radio/check menuitem and indicator as used with ClaimStyleContext r=stransky+263117
The same name is retained for moz_gtk_widget_paint(), which is now more
consistent.

MozReview-Commit-ID: 9RtW66JQVGX

--HG--
extra : rebase_source : 3067daa4e9347cf689e9dccbd7e07578b52cf59c
2016-11-18 13:01:27 +13:00
Karl Tomlinson
d330e98d0d bug 1317574 use menuitem padding between menuitem and check indicator r=stransky+263117
MozReview-Commit-ID: JZSIVf8xppi

--HG--
extra : rebase_source : 645dff2f7cab024eef45f3cd6896015abd8e4a73
2016-11-15 15:57:46 +13:00
Karl Tomlinson
f1b0f33678 bug 1315668 construct menuitem style contexts from paths r=stransky+263117
instead of using the context belonging to a widget.
Only the style context is cached, instead of the whole widget.

Using the style context from a widget meant that rendering displayed the
initial appearance of animations after state changes, but there was no
invalidation to trigger the final rendering in the animations.

Style contexts constructed from paths do not incorporate animations.
(See gtk_css_path_node_update_style() in GTK.)  Therefore they provide the
appropriate rendering for Gecko's model, which is not expecting animations.

There is no mechanism available to display animations when using style
contexts constructed from paths, but the GtkWidget animation design is also
not suitable for rendering potentially multiple elements each in a different
state of their animation.

This contexts-from-paths approach can be extended also to other widget types,
but this is a smaller change intended for uplift to other branches to address
a regression in menuitem rendering.

MozReview-Commit-ID: EFV7swWQtm4

--HG--
extra : rebase_source : 689f7340007c889ce0eaeb3b4acd228d45ad0d6d
2016-11-15 17:11:14 +13:00
Karl Tomlinson
58fe36c651 bug 1315668 CreateStyleForWidget: store classes on context instead of path r=stransky+263117
CreateStyleForWidget() then provides the same behavior with
g_style_context_save() as contexts from widget root style nodes.

MozReview-Commit-ID: 6lRCp3XOoRr

--HG--
extra : rebase_source : ad161eef11e0dc70c8a487c204f109eceac3b1c4
2016-11-15 15:29:06 +13:00
Karl Tomlinson
7128eab794 bug 1315668 use style context instead of widget for menuitem dimensions r=stransky+263117
This is necessary to switch from caching GtkWidgets to caching
GtkStyleContexts only.

MozReview-Commit-ID: 6Rwinr4AY8l

--HG--
extra : rebase_source : 930a501b3ecd5f124631e3f96fd6ca7611d078ff
2016-11-15 16:11:38 +13:00
Karl Tomlinson
e8416905f1 bug 1315668 remove use of gtk_container_get_border_width from menuitems r=stransky+263117
The GtkContainer border-width property defaults to zero.  It is not influenced
by theme CSS.  While theme engines can theoretically modify default values for
properties of any class, I don't think that is something that needs to be
supported.

Removing this code is necessary to switch from caching GtkWidgets to caching
GtkStyleContexts only.

MozReview-Commit-ID: IxgM8qjfK3a

--HG--
extra : rebase_source : c5c94c19227d7e7d31c4a094bb4fb68f094ddb50
2016-11-14 16:13:50 +13: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
Thomas Wisniewski
4c82121568 Bug 140562 - Part 2: Remove the 2px extra padding on buttons for a prospective -moz-focus-inner ring, and just size that ring the same as the content frame (inflated by its CSS padding). r=dbaron 2016-12-02 01:11:48 -05:00
Wes Kocher
d360bdebf5 Merge inbound to central, a=merge 2016-12-01 15:31:47 -08:00
Lee Salzman
ca4aa1c411 Bug 1319554 - allow WindowSurfaceX11Image to render to any visual format. r=rhunt
MozReview-Commit-ID: JW4REAg1AKn
2016-12-01 12:15:58 -05:00
Lee Salzman
e2dc7cebf1 Backed out changeset d727d297aeee for wrong bug number (bug 1319544) 2016-12-01 12:14:50 -05:00
Lee Salzman
ebb504eed8 Bug 1319544 - allow WindowSurfaceX11Image to render to any visual format. r=rhunt
MozReview-Commit-ID: JW4REAg1AKn
2016-12-01 12:07:00 -05:00
Ryan VanderMeulen
7af8f38714 Merge m-c to autoland on a CLOSED TREE. a=merge 2016-11-30 13:27:46 -05:00
Karl Tomlinson
33ed3a5c42 bug 1320860 adjust textarea style contexts for GTK 3.20 theming ABI changes r=stransky+263117
MozReview-Commit-ID: 9aW61kMkKcb

--HG--
extra : rebase_source : 61f7699933735710ed8e516e5206900cff5c6fc0
2016-11-29 17:58:00 +13:00
Lee Salzman
e697b24685 Bug 1271100 - work around race in system Cairo's XShm usage. r=karlt
MozReview-Commit-ID: VGee6ungCz
2016-11-29 23:01:13 -05:00
Ryan VanderMeulen
a067050012 Backed out changeset 810b7212a529 (bug 1320686) for causing Valgrind leaks. 2016-11-29 21:16:06 -05:00
Martin Stransky
d4cb5817e1 Bug 1320686 - [nsLookAndFeel] Get styles for menu label, button text and combobox text colors from WidgetCache. r=karlt
--HG--
extra : rebase_source : 5eb0800de3da5ebb6e2deb1095c50aa218afd6e3
2016-11-28 06:44:00 -05:00
Karl Tomlinson
007ef6f95f bug 1315527 check root node of frame for border color if no border on the "border" subnode r=stransky+263117
Some themes do not draw the "border" subnode, but instead draw a border on the
frame root node.

MozReview-Commit-ID: Fx67mQhhYmz

--HG--
extra : rebase_source : 150168171d521df2c603541e33b10ca287b26b43
2016-11-21 18:07:48 +13:00
Karl Tomlinson
7aedf3100d bug 1323860 implement pre-3.20 MOZ_GTK_PROGRESS_CHUNK in WidgetStyleCache r=stransky
MozReview-Commit-ID: 1VOZKRw3gj4

--HG--
extra : amend_source : 4b1b21c8f0173b4968df7f2c46a7bd840f429ef0
2016-11-25 17:51:13 +13:00
Martin Stransky
b36168c508 Bug 1319753 - Use WidgetCache to get colors at nsLookAndFeelfor menuitems, text and tree view, r=karlt 2016-11-23 04:29:00 +01:00
Martin Stransky
92edc8a6ec Bug 1319075 - Use WidgetCache to get colors at nsLookAndFeel for GtkButton, GtkWindow, GtkScrollBar, r=karlt
Needs patch from Bug 1319066 to clean apply.
2016-11-23 02:00:00 +01:00
Martin Stransky
55195fe393 Bug 1319066 - Move complete GtkTooltip stack to WidgetCache. r=karlt
--HG--
extra : rebase_source : ba5b1f0bfc279a64328486de8a0cd63b8a44b08f
2016-11-23 21:14:58 -05:00
Karl Tomlinson
dae2522336 bug 1319355 remove unused MOZ_GTK_IMAGEMENUITEM r=stransky+263117
Unused since e7680c5fead3.

MozReview-Commit-ID: DYgeoJDxna9

--HG--
extra : rebase_source : 711a050a98594df315a63c7ffb3606b81e11f53b
2016-11-22 09:17:34 +13:00
Karl Tomlinson
d867015f02 bug 1319355 remove unused gtk_widget_path_append_for_widget stub r=stransky+263117
No longer required after 1693f10ca33e

MozReview-Commit-ID: ErlBjxO0cbl

--HG--
extra : rebase_source : 49a676fbfa3e5e018aeb5de5e08a541bd51856b7
2016-11-18 11:14:21 +13:00
Masatoshi Kimura
ad2ffe5a09 Bug 1331820 - Fix misuse of NS_NewNativeLocalFile in widget/gtk/. r=froydnj
MozReview-Commit-ID: 71jHwBg9e9s

--HG--
extra : rebase_source : efa058d75206bfe93bc97aca1015451bd4a197dc
2017-01-21 15:45:17 +09:00
Jan Horak
cf2b65692c Bug 1308936 - Draw tooltips correctly r=karlt
Tooltip widget is made in GTK3 as following tree:
* Tooltip window
 * Horizontal Box
   * Icon (not supported by Firefox)
   * Label
Each element can be fully styled by CSS of GTK theme so we have to draw all
elements with appropriate offset and full box model.

MozReview-Commit-ID: E9yYd5UWBu4

--HG--
extra : amend_source : 99539e914e8d3fa07f6bed8a315e40c7d593f277
2016-11-11 11:31:29 +13: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
Karl Tomlinson
d3a1edee46 bug 1303964 draw only background and frame of separator menuitems in GTK versions > 3.20 r=stransky+263117
In GTK 3.20, gtk_menu_item_draw() just draws the root widget gadget, depending
on the theme to style menu items with CSS name "separator" appropriately.

MozReview-Commit-ID: 6AIxPzFe0Rg

--HG--
extra : rebase_source : 58a1ab4c78d94cf186e923354332ecb30aa491f8
2016-11-17 11:08:33 +13:00
Karl Tomlinson
591c93a17d bug 1287036 draw separator menuitem background and frame behind separator in menu r=stransky+263117
as does gtk_menu_item_draw().

MozReview-Commit-ID: DgYVFklmTO2

--HG--
extra : rebase_source : adfd74208e24aa6e64ae2802d0722d65d22d7ebb
2016-11-17 11:04:13 +13:00
Karl Tomlinson
1d4e286029 bug 1287036 draw menuitem background even when not in hover r=stransky+263117
MozReview-Commit-ID: tuf5WXY0d4

--HG--
extra : rebase_source : 52c9afca0b35d867ebff6657140ca4ed94db01dc
2016-07-21 12:49:31 +12:00
Kartikaya Gupta
d84df5e838 Bug 1315477 - Remove some instances of static_cast'ing to ClientLayerManager. r=mattwoodrow
MozReview-Commit-ID: 2oqoOE4gZK0

--HG--
extra : rebase_source : eb4bebeb6b79ec83a285facf7fde61ecbd705c43
2016-11-07 11:38:44 -05:00
Karl Tomlinson
5ce06744be bug 1319957 don't realize widgets for their style r=stransky+263117
This was needed in GTK2 to get the style of the widget, but styles are almost
independent of widgets with GTK3, where realizing is not necessary to get the
style context.

MozReview-Commit-ID: GtL2FLDl9uA

--HG--
extra : rebase_source : 926e6b7fee9a15fe5c86be7327c60b146db11316
2016-06-21 19:07:45 +12:00
Sylvestre Ledru
a4563a219e Bug 1317973 - Use auto type specifier for variable declarations to improve code readability and maintainability r=tnikkel
MozReview-Commit-ID: 5RDrGaxV3E4

--HG--
extra : rebase_source : d79b2fe895a158c7caffb12f76773fde652c86f9
2016-11-16 15:22:36 +01:00
Sylvestre Ledru
44b5e91069 Bug 1317973 - Replace default bodies of special member functions with = default; r=tnikkel
MozReview-Commit-ID: EV0tM3A26XY

--HG--
extra : rebase_source : 3941138180638f14d47c47672da0aad45a0ab301
2016-11-16 15:23:37 +01:00
Sylvestre Ledru
537da966fe Bug 1317973 - Converts for(...; ...; ...) loops to use the new range-based loops in C++11. r=nical
MozReview-Commit-ID: 8QKcHVaVtPT

--HG--
extra : rebase_source : e19d6a61e3ab78aeaeb7661d31550b00890d2e1c
2016-12-01 12:06:43 +01:00