Commit Graph

22714 Commits

Author SHA1 Message Date
sotaro
64faafc973 Bug 1391262 - Do not use remote LayerManager when its initialization fails r=dvander 2017-10-11 10:33:57 +09:00
Nicolas Silva
59e80c8f7e Bug 1393031 - Use shared memory to pass resource update data. r=jrmuizel 2017-09-14 18:48:55 +02:00
Nicolas Silva
38b33aa593 Bug 1393031 - Separate WebRenderAPI and ResourceUpdateQueue. r=sotaro 2017-09-04 13:59:42 +02:00
Nicolas Silva
4b7b1e5992 Bug 1393031 - Use the ResourceUpdateQueue API on the content side. r=jrmuizel 2017-09-04 13:59:36 +02: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
Adam Gashlin
d064e4ee67 Bug 1393685 - Cache the result of GetGutterSize to avoid expensive calls to GetThemeMargins(). r=jimm
--HG--
extra : amend_source : 040cddfc214b0d3ab57fc6644807395365275e1d
2017-09-05 17:40:00 -04:00
Sebastian Hengst
937b5d72b8 merge mozilla-central to autoland. r=merge a=merge 2017-09-25 12:02:51 +02:00
cku
db62fce416 Bug 1401888 - Part 3. Make EMFViaExtDLLHelper inherit from PDFViaEMFPrintHelper. r=fatseng
Reuse the code in PDFViaEMFPrintHelper.
MozReview-Commit-ID: 3NAVxuv2jJH

--HG--
extra : rebase_source : 059efda5fc232ec741557b32e6956a58dff76691
2017-09-21 15:43:34 +08:00
cku
80b1379b3e Bug 1401888 - Part 2. Implement PDFiumEngineShim::GetInstanceOrNull(const nsCString&) r=fatseng
With this change, we are able to load PDFium engine from different library.
MozReview-Commit-ID: ErAZCPRzRR5

--HG--
extra : rebase_source : f0421af9c70d69564ed8f96d32870314871aabef
2017-09-21 15:22:18 +08:00
cku
59db10f1d3 Bug 1401888 - Part 1. Move PDFiumEngineShim::Init to private section. r=fatseng
MozReview-Commit-ID: KK1wAv1KoPh

--HG--
extra : rebase_source : 7a7dfd78cec1356f607f1ee421388337aa03aaf2
2017-09-21 15:16:40 +08:00
Sebastian Hengst
57fbe8068c Backed out changeset 251b52554fee (bug 1403690) 2017-10-23 22:05:16 +02:00
Sebastian Hengst
1749b1aa33 Backed out changeset 9861b50e325b (bug 1403690) 2017-10-23 22:05:10 +02:00
Sebastian Hengst
d341bac932 Backed out changeset 7636f668f84e (bug 1403690) 2017-10-23 22:05:05 +02:00
Sebastian Hengst
c8eeffa2bc Backed out changeset cc5bcbafc6cc (bug 1403690) 2017-10-23 22:04:59 +02:00
Sebastian Hengst
94a3c53cb0 Backed out changeset 04439a161b82 (bug 1403690) 2017-10-23 22:04:54 +02:00
Sylvestre Ledru
d60d69e2cb Bug 1411001 - Remove the +x permissions on cpp & h files r=froydnj
MozReview-Commit-ID: DjDkL20wRg0

--HG--
extra : rebase_source : a343d83d1f4e97e4ba56d0f57fec93079df0b5ea
2017-10-23 20:59:55 +02:00
Brad Werth
91eed58ea8 Bug 1403690 Part 6: UIKit change nsLookAndFeel::NativeGetColor to use cached colors. r=ted
MozReview-Commit-ID: Jai4OLrNe6Y

--HG--
extra : rebase_source : b45148392575335731ff8bc39736a6a60fde2022
2017-10-10 13:50:58 -07:00
Brad Werth
b9c75c7ea9 Bug 1403690 Part 5: Android change pref and color caching to match approach used in gtk, macOS, and Windows. r=snorp
MozReview-Commit-ID: DoffjB9QMmH

--HG--
extra : rebase_source : eab0b074b80906447c5be341c218ea3687164ed4
2017-10-10 13:12:28 -07:00
Brad Werth
6595065d11 Bug 1403690 Part 4: gtk rearrange header and implementation to keep init and refresh functions together. r=karlt
MozReview-Commit-ID: ERsI916e7zf

--HG--
extra : rebase_source : 6e01cb852a05db87ebe7961773703ead9aee8a57
2017-10-10 14:12:47 -07:00
Brad Werth
bcfec672a0 Bug 1403690 Part 3: macOS change nsLookAndFeel::NativeGetColor to use cached colors. r=mstange
MozReview-Commit-ID: FHm6d2Vz2sJ

--HG--
extra : rebase_source : 822ad31f2efa86369c42d1108add38ed2af3c2b8
2017-10-02 17:13:48 -07:00
Brad Werth
640cfc0812 Bug 1403690 Part 2: Windows change nsLookAndFeel::NativeGetColor to use cached colors. r=jimm
MozReview-Commit-ID: 7CKUrtCYC0j

--HG--
extra : rebase_source : 7a1cd1af3adb78cd66289b718298cb4f8b3b7006
2017-10-02 16:17:05 -07:00
Sebastian Hengst
a78557217a Backed out changeset 69668003e827 (bug 1403690) 2017-10-23 18:21:20 +02:00
Sebastian Hengst
c3b0072997 Backed out changeset c8262b239d17 (bug 1403690) 2017-10-23 18:21:15 +02:00
Sebastian Hengst
a994da18d5 Backed out changeset 349f51081127 (bug 1403690) 2017-10-23 18:21:09 +02:00
Sebastian Hengst
3e61b2275b Backed out changeset 6a5e056b7fb9 (bug 1403690) 2017-10-23 18:21:04 +02:00
Sebastian Hengst
341b0e4ef3 Backed out changeset 29e6612a4083 (bug 1403690) 2017-10-23 18:20:58 +02:00
Brad Werth
b209e334e0 Bug 1403690 Part 6: UIKit change nsLookAndFeel::NativeGetColor to use cached colors. r=ted
MozReview-Commit-ID: Jai4OLrNe6Y

--HG--
extra : rebase_source : c2fc04b5d6c9a8ef213cb7e8fd60981128908d06
2017-10-10 13:50:58 -07:00
Brad Werth
1a8f92d44b Bug 1403690 Part 5: Android change pref and color caching to match approach used in gtk, macOS, and Windows. r=snorp
MozReview-Commit-ID: DoffjB9QMmH

--HG--
extra : rebase_source : 9e289e690382cc301effb1bb26a30d564cfa4364
2017-10-10 13:12:28 -07:00
Brad Werth
6c5f60148b Bug 1403690 Part 4: gtk rearrange header and implementation to keep init and refresh functions together. r=karlt
MozReview-Commit-ID: ERsI916e7zf

--HG--
extra : rebase_source : 580f72faf7b748644b7d2e25872eb57b929a6be1
2017-10-10 14:12:47 -07:00
Brad Werth
beec09dd81 Bug 1403690 Part 3: macOS change nsLookAndFeel::NativeGetColor to use cached colors. r=mstange
MozReview-Commit-ID: FHm6d2Vz2sJ

--HG--
extra : rebase_source : 9a92e8567b19aaa283cfc7d80f04ba7c3546742b
2017-10-02 17:13:48 -07:00
Brad Werth
fc748892e5 Bug 1403690 Part 2: Windows change nsLookAndFeel::NativeGetColor to use cached colors. r=jimm
MozReview-Commit-ID: 7CKUrtCYC0j

--HG--
extra : rebase_source : e7167a3a581a6bfa5025f23fea8ec5a4c56ed876
2017-10-02 16:17:05 -07:00
Jim Chen
2ec8c3aaff Bug 1378410 - 3. Update generated bindings; r=jchen
MozReview-Commit-ID: fKCoCqFmZk

--HG--
extra : rebase_source : a619627530b5216e591682f18f887ae2797cfeb7
2017-09-01 14:02:44 -04:00
sotaro
11c145a7c1 Bug 1394338 - Add WebRender error handling to RendererOGL r=nical 2017-08-30 09:10:22 +09:00
Alastor Wu
013f2364d5 Bug 1373888 - part8 : add log. r=cpearce
MozReview-Commit-ID: JyLXnA9J9Ic

--HG--
extra : rebase_source : 56545a7818f5c5ed3b11e31e7b5eb26ca214e19c
2017-08-29 15:28:28 +08:00
Alastor Wu
c599481d78 Bug 1373888 - part7 : modify platform wakelocks. r=cpearce,snorp,spohl
* OSX
Make the lock of the type kIOPMAssertionTypeNoDisplaySleep and kIOPMAssertionTypeNoIdleSleep
as a singleton. Won't need to require an extra lock.

* Windows
Add |mRequireForDisplay| to ensure the "audio-playing" won't overwrite the previous
display requirement.

* Android
Add "audio-playing" and "video-playing", and make sure the audio-lock won't be cancel
when receiving "WakeLockDelegate.STATE_LOCKED_BACKGROUND".

MozReview-Commit-ID: 97oNX7H2qij

--HG--
extra : rebase_source : 24fa8b267ad97d668fa55462d1f61ef5c92b632f
2017-08-29 15:28:23 +08:00
Alastor Wu
0be0a7c288 Bug 1373888 - part4 : request non-display wake lock for audio playing. r=cpearce,spohl
According to [1], kIOPMAssertionTypeNoDisplaySleep prevents display sleep and
kIOPMAssertionTypeNoIdleSleep prevents idle sleep.

We should use kIOPMAssertionTypeNoIdleSleep for audio playing, because it won't
need to block the display.

[1] https://developer.apple.com/library/content/qa/qa1340/_index.html

---

On Windows, ES_DISPLAY_REQUIRED forces display on, and ES_SYSTEM_REQUIRED forces
system on working state [2].

[2] https://msdn.microsoft.com/zh-tw/library/windows/desktop/aa373208(v=vs.85).aspx

MozReview-Commit-ID: Izs29PdzQOW

--HG--
extra : rebase_source : d0726131735b9cedf566f937204e585345b9d5e3
2017-08-29 15:25:34 +08: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
Wes Kocher
7ea5ed6e6a Merge m-c to autoland, a=merge
MozReview-Commit-ID: LEKykpTAKjv
2017-08-25 17:32:33 -07:00
Wes Kocher
68149d6a59 Merge inbound to central, a=merge
MozReview-Commit-ID: 3N9jinnrmjb
2017-08-25 16:21:57 -07: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
aceman
131c228477 Bug 1393547 - Add missing nsACString declarations in widget/nsPrimitiveHelpers.h. r=mconley 2017-08-24 11:18:00 -04:00
Tom Ritter
52deded719 Bug 1393536 Clean up unused variables in widget/ r=jimm
MozReview-Commit-ID: 9NBzIriF8NU

--HG--
extra : rebase_source : da185c4e55d066ec61b534d32a06d7d1819d35ca
2017-08-25 10:39:30 -05:00
Tom Ritter
74d0b2c8b2 Bug 1393528 Add parentheses to a confusing if statement r=jimm
MozReview-Commit-ID: rKnimtw55c

--HG--
extra : rebase_source : 7687a5e38803090ca56c18ffbff106fa50bef1b7
2017-08-24 12:34:09 -05: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
Wes Kocher
bd5fb0a92d Merge m-c to autoland, a=merge
MozReview-Commit-ID: AHOFLdPkEou
2017-08-23 18:08:30 -07:00
Makoto Kato
5251e6a945 Bug 1390097 - Revert a part of bug 1354020 changes. r=masayuki
Bug 1354020 causes that IMM-IME on Windows 7 doesn't work with --no-remote.  Although I think that this issue is OS or IME bug, when default window proceduce by RegisterClass is DefaultWindowProcW, Google Japanese IME doesn't work.

I am not sure why this issue occurs when lpfnWndProc is DefWidnowProcW and DDE isn't started.  But for workaround, we should revert a part of bug 1354020 changes.

MozReview-Commit-ID: BkxlZnm8mIh

--HG--
extra : rebase_source : 21c1d86fb5628dbd726a15e5057a536271cfb26d
2017-08-23 12:59:40 +09: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
Eric Rahm
a33f11e0f5 Bug 1391803 - Use nsStringFwd.h for forward declaring string classes. r=froydnj
We should not be declaring forward declarations for nsString classes directly,
instead we should use nsStringFwd.h. This will make changing the underlying
types easier.

--HG--
extra : rebase_source : b2c7554e8632f078167ff2f609392e63a136c299
2017-08-16 16:48:52 -07:00
Jessica Jong
3972937d8c Bug 1392549 - Pass mouse position to nsIRollupListener::Rollup in device pixels. r=mstange
MozReview-Commit-ID: Fr23CuZQLBz

--HG--
extra : amend_source : 86d059a838bde536cac4346ba952279dd5d03e24
2017-08-22 19:44:00 -04:00
Stone Shih
fca19b3588 Bug 1389314 Part3: Temporarily disable the input priority events when dnd is active. r=smaug.
MozReview-Commit-ID: AWfYmhjjsq0
2017-08-02 15:23:35 +08:00
Wes Kocher
6dd42e2664 Merge inbound to central, a=merge
MozReview-Commit-ID: BMWuqvmTljV
2017-08-22 17:07:23 -07:00
Farmer Tseng
73894c8888 Bug 1382509 - Part2. Remove the code from PDFiumEngineShim that allows for linking PDFium.dll r=jwatt
MozReview-Commit-ID: IAdCznwCWBf

--HG--
extra : rebase_source : 8f0fc1be93fec1a61b732682fbc8449117042ca6
2017-08-20 22:45:17 +08:00
Farmer Tseng
3e79fc2fc8 Bug 1382509 - Part1. Align the calling convention with PDFium in PDFiumEngineShim. r=glandium
MozReview-Commit-ID: GSci8sIHnYE

--HG--
extra : rebase_source : c16704fce19bf4700f9a12f5251c292d8b03db39
2017-08-20 22:45:00 +08:00
Sebastian Hengst
75955d0246 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 8fJX1xXgzhD
2017-08-22 11:49:04 +02: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
Markus Stange
fa53d431d3 Bug 1389908 - Make sure the NSColorPanel never has a dangling target, and make sure to set the new target before calling setColor. r=spohl
MozReview-Commit-ID: L71yb593eR2

--HG--
extra : rebase_source : e09fbf3a95ea445180d24c0ee81b153a57441b97
2017-08-21 19:16:22 -04:00
Henry Chang
25f77bb74d Bug 1349255 - Part 1: Make PBrowser.NotifyIMEFocus async to avoid UI jank. r=kanru,masayuki
Telemetry and some performance profiles show that Msg_NotifyIMEFocus can take
a few seconds to complete, and jank the browser. With bug 1217700, it removes
the necessity of sync Msg_NotifyIMEFocus, so in this patch we make this async
for performance improvement.

MozReview-Commit-ID: 15eUwMJ2Q7H

--HG--
extra : rebase_source : b463e6e881ca5ebec00d0f76e29ca103059b3ddd
2017-05-08 19:07:56 +08:00
James Willcox
c9abfc59d6 Bug 1126479 - Correctly set widget size mode on Android r=jchen
MozReview-Commit-ID: AfNWDsyQC95
2017-08-22 09:08:41 -05:00
Makoto Kato
fbad20099a Bug 1277095 - Look up dictionary by force touch. r=mstange
From 10.10.3, macOS supprts looking up dictionary by force touch.  So we should support it because this is supported by Chrome and Safari.

MozReview-Commit-ID: AcAhieMXOwe

--HG--
extra : rebase_source : 79c55830dfa023165731269780d813956e4e26f2
2016-11-16 12:50:37 +09:00
peter chang
b4c4e94ce2 Bug 1382680 Only add extended style WS_EX_COMPOSITED when using OMTC, r=bas,jimm
MozReview-Commit-ID: 3jwGmJxE8zL

--HG--
extra : rebase_source : 7b588a017a85eb47e74a4b3352b95ad07b5084e6
2017-08-16 16:55:15 +08:00
Makoto Kato
a9fee9289d Bug 1391164 - Unnecessary to use GetProcAddress for gesture APIs since we already drop XP and Vista. r=jimm
Since our platform requirement is Windows 7+, we don't need GetProcAddress for gesture APIs.  But nsWinGesture still uses GetProcAddress for Win7+ API.

MozReview-Commit-ID: 1COJqM4NJTD

--HG--
extra : rebase_source : d915c1f74f6f3f10287ae6d08892499c3d3e8da6
2017-08-18 09:47:36 +09:00
Wes Kocher
b1fc5e008c Merge inbound to central, a=merge
MozReview-Commit-ID: 4cWGBbMEU2x
2017-08-18 15:53:07 -07:00
Eric Rahm
0938982c90 Bug 1389598 - Part 4: Remove remaining gonk refs. r=froydnj
--HG--
extra : rebase_source : 063c7f95dda063eafabfa1921366bd1957b8fe73
2017-08-11 17:45:18 -07:00
Farmer Tseng
087ac8f9e7 Bug 1388951 - Add a gtest to compare the EMF output from our version of PDFium, to Chromium's. r=jwatt
Built pdfium_ref_x86.dll and pdfium_ref_x64.dll from google source tree. Use
them to generate an EMF as the reference.

MozReview-Commit-ID: GoaxU6nWXYM

--HG--
extra : rebase_source : 441d72cd409e105337eed7d763a29ef329ba2d58
2017-08-18 10:36:16 +08:00
Carsten "Tomcat" Book
99aa3f8e70 Merge mozilla-central to mozilla-inbound 2017-08-17 13:13:10 +02:00
Nicholas Nethercote
025461bde7 Bug 1390428 (part 1) - Remove many nsXPIDLCString local variables. r=erahm.
These are all easy cases where an nsXPIDLCString local variable is set via
getter_Copies() and then is only used in ways that nsCStrings can also be used
(i.e. no null checks or implicit conversions to |char*|).

In every case the patch trivially replaces the nsXPIDLCString with an
nsCString. (Also, there are a couple of unused nsXPIDLCString variables that
the patch simply removes.)
2017-08-16 13:58:35 +10:00
Bill McCloskey
9edd615af7 Bug 1382922 - Refactor event queue to allow multiple implementations (r=erahm)
This patch refactors the nsThread event queue to clean it up and to make it easier to restructure. The fundamental concepts are as follows:

Each nsThread will have a pointer to a refcounted SynchronizedEventQueue. A SynchronizedEQ takes care of doing the locking and condition variable work when posting and popping events. For the actual storage of events, it delegates to an AbstractEventQueue data structure. It keeps a UniquePtr to the AbstractEventQueue that it uses for storage.

Both SynchronizedEQ and AbstractEventQueue are abstract classes. There is only one concrete implementation of SynchronizedEQ in this patch, which is called ThreadEventQueue. ThreadEventQueue uses locks and condition variables to post and pop events the same way nsThread does. It also encapsulates the functionality that DOM workers need to implement their special event loops (PushEventQueue and PopEventQueue). In later Quantum DOM work, I plan to have another SynchronizedEQ implementation for the main thread, called SchedulerEventQueue. It will have special code for the cooperatively scheduling threads in Quantum DOM.

There are two concrete implementations of AbstractEventQueue in this patch: EventQueue and PrioritizedEventQueue. EventQueue replaces the old nsEventQueue. The other AbstractEventQueue implementation is PrioritizedEventQueue, which uses multiple queues for different event priorities.

The final major piece here is ThreadEventTarget, which splits some of the code for posting events out of nsThread. Eventually, my plan is for multiple cooperatively scheduled nsThreads to be able to share a ThreadEventTarget. In this patch, though, each nsThread has its own ThreadEventTarget. The class's purpose is just to collect some related code together.

One final note: I tried to avoid virtual dispatch overhead as much as possible. Calls to SynchronizedEQ methods do use virtual dispatch, since I plan to use different implementations for different threads with Quantum DOM. But all the calls to EventQueue methods should be non-virtual. Although the methods are declared virtual, all the classes used are final and the concrete classes involved should all be known through templatization.

MozReview-Commit-ID: 9Evtr9oIJvx
2017-08-16 20:55:43 -07:00
Markus Stange
83110207f4 Bug 1390888 - Stop drawing the titlebar highlight line. r=spohl
This line is subtle enough to not be noticeable with light titlebar fills,
and looks out of place with dark titlebar fills.

MozReview-Commit-ID: D0b4O2wry1F

--HG--
extra : rebase_source : 739adb837f8e756fc9619864877fc6faff31d1cf
2017-08-16 13:18:46 -04:00
Markus Stange
91c2215ec0 Bug 1390888 - Correctly draw into mTitlebarCGContext and invalidate the right parts if mTitlebarRect is not located at (0, 0). r=spohl
MozReview-Commit-ID: Jf0pt1wZxUo

--HG--
extra : rebase_source : dfa680c1b590075d709f0b3c530adda8d9c92059
2017-08-16 13:16:34 -04:00
Nicholas Nethercote
a83fefd956 Bug 1390036 (part 1) - Remove most remaining uses of nsXPIDLString. r=erahm.
CompareCacheHashEntry::mCrit[] is the only case where the nsXPIDLString-ness
was important. The patch adds an explicit SetIsVoid() call to that class's
constructor and changes some null checks to IsVoid() checks.

--HG--
extra : rebase_source : e68befcde4dd098bac2a550bc666eaf3bf1298d7
2017-08-11 18:31:22 +10:00
Michael Layzell
76fb615887 Bug 1384238 - Annotate BHR hangs which occur while there is a pending input event, r=smaug
MozReview-Commit-ID: HRPMw2IfEKB
2017-08-15 16:36:28 -04:00
Sebastian Hengst
b1e6b1efff Backed out changeset 6798fd30a785 (bug 1126479) 2017-08-15 18:30:03 +02:00
James Willcox
7087cb7ef4 Bug 1126479 - Correctly set widget size mode on Android r=jchen
MozReview-Commit-ID: AfNWDsyQC95
2017-08-15 09:29:57 -05:00
Yoshi Huang
60b7d9f697 Bug 1390398: fix failures on windows for new data: URI inheritance model. r=smaug 2017-08-15 18:09:28 +08:00
Mason Chang
cdb7204303 Bug 1389338 - Show Off Main Thread Status in about:support. r=rhunt 2017-08-14 21:08:18 -07:00
Wes Kocher
7a772df5bf Merge m-c to inbound, a=merge
MozReview-Commit-ID: BYZASFIrXxp
2017-08-14 17:58:17 -07:00
Milan Sreckovic
5c01b5706c Bug 1387514: Upgrade BaseRect (derived classes) width and height direct member variable use to instead use Width()/SetWidth() and Height()/SetHeight() in image/*. r=aosmond
MozReview-Commit-ID: 8gyxxLziVe7

--HG--
extra : rebase_source : c79e81e10c54106645539c590bf81a03a300a909
2017-08-14 08:29:56 -04:00
Chung-Sheng Fu
7a392d6952 Bug 1382499 - Enhance fingerprinting resistance for Touch API r=arthuredelstein,bz
MozReview-Commit-ID: 8nzOkvIvwrD

--HG--
extra : rebase_source : 15cfa77ffc639838d6345fa4bffc7079d8d198e7
2017-07-31 17:30:38 +08:00
Masayuki Nakano
5345065a53 Bug 1388647 - part2: Make IMEInputHandler of Cocoa widget handle request to commit/cancel composition synchronously r=m_kato
When Gecko started to support Cocoa widget, we needed to use NSInputManager.
That allowed applications to access only focused IME context.  Therefore, commit
composition request handler for Cocoa is designed as handling asynchronosly if
it's requested when the window is not active or is being inactivated.

Additionally, the asynchronous handling isn't perfect.  We hit some MOZ_ASSERT()
now in some places.  E.g., in SelectedRange(), it doesn't assume that it's
called during deactive.

On the other hand, NSInputManager was alreay obsolete and we already stopped using it
(bug 810225).  Instead, we're using NSTextInputContext and it allows applications
to access IME anytime.  Therefore, if we make IMEInputHandler handles commit/cancel
composition requests synchronsly, that behaves same as the other platforms.  So, we
can get rid of macOS specific issue completely.

MozReview-Commit-ID: X7aWmGq95x

--HG--
extra : rebase_source : a472a03e3ef6f424fe73c2d438b8326bed80278d
2017-08-09 18:41:19 +09:00
Stone Shih
55c5359fa6 Bug 1351148 Part4: Revise those test cases that have some tasks have to be processed before or after the synthesized key events. r=smaug.
Make sure input events are processed before or after the dependent tasks.

MozReview-Commit-ID: 8KfZnT2wjJR
2017-06-07 14:28:16 +08:00
Jim Chen
0977b07333 Bug 1382335 - 5. Check for shutdown in LayerViewSupport::OnResumedEvent; r=esawin
It wasn't enough to just check for `mWindow` in `OnResumedCompositor()`,
because the `LayerViewSupport` instance itself could have been released.
This patch now checks for both cases.

MozReview-Commit-ID: hSnFUhtp8m
2017-08-14 12:59:19 -04: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
Ryan VanderMeulen
24c9581b48 Backed out changeset fbf0e8609abb (bug 1390428) for Windows clipboard test failures on a CLOSED TREE. 2017-08-18 10:58:47 -04: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
Masatoshi Kimura
dec070e4cf Bug 1389460 - Remove @deprecated nsIDOMEventTarget.DispatchDOMEvent. r=smaug
MozReview-Commit-ID: E88DZK5sfwx

--HG--
extra : rebase_source : 64e1a47c9366a970f20ec459dde9b379a207e802
2017-08-07 02:28:52 +09:00
Wes Kocher
eb3058e466 Backed out 3 changesets (bug 1382499) for eslint failures a=backout
Backed out changeset 0ebb9924affa (bug 1382499)
Backed out changeset c25b50b0edc5 (bug 1382499)
Backed out changeset 1dcdc22d4919 (bug 1382499)

MozReview-Commit-ID: 9rygU1QF1kb
2017-08-11 13:49:34 -07:00
Wes Kocher
a5fc391fdf Merge m-c to autoland a=merge
MozReview-Commit-ID: LsPv9Mdodvf
2017-08-11 13:39:17 -07: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
Chung-Sheng Fu
c28d4be7b3 Bug 1382499 - Enhance fingerprinting resistance for Touch API r=arthuredelstein,bz
MozReview-Commit-ID: 8nzOkvIvwrD

--HG--
extra : rebase_source : 15cfa77ffc639838d6345fa4bffc7079d8d198e7
2017-07-31 17:30:38 +08:00
Stone Shih
665fb7cd54 Backed out changeset de4929e39b7e (bug 1351148) 2017-08-11 15:19:30 +08:00
Mason Chang
6f96537b8e Bug 1372602 Make child widgets not visible if the window around it isn't visible on OS X. r=mstange 2017-08-10 21:43:26 -07:00
Wes Kocher
936a9461f6 Merge inbound to m-c a=merge
MozReview-Commit-ID: KRQeIGmhAPA
2017-08-10 18:14:34 -07:00
Sebastian Hengst
51d351f567 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-08-10 17:41:11 +02:00
Masatoshi Kimura
6815cee2bd Bug 1387790 - Remove [deprecated] decodeImageData from imgITools. r=tnikkel
MozReview-Commit-ID: GZBYTPanHH6

--HG--
extra : rebase_source : f6ccc1a661533f7bdba8bb33bc9a85855b51ffae
2017-08-06 10:54:14 +09:00
Bill McCloskey
a7bc022071 Bug 1384336 - Stop using OS-level event loop in content process (r=mstange)
MozReview-Commit-ID: 1ouSlgGchWl
2017-08-09 21:24:20 -07:00
Bill McCloskey
81720f1abb Bug 1384336 - Fix to MainThreadInvoker to avoid deadlocks (r=aklotz)
When removing our Windows message loop pumping code in the content
process, a11y code on the MTA thread must have some way to wake up the
main thread. The main thread could be blocked either on a conditional
variable waiting for a Gecko event, or it could be blocked waiting on
a Windows HANDLE in IPC code (doing a sync message send). In the
former case, we wake it up by posting an event to the main thread. In
the latter case, we continue to use the asynchronous procedure call
mechanism.

MozReview-Commit-ID: FN6KWaGo9Zl
2017-08-09 21:24:20 -07:00
Ryan VanderMeulen
6eb7aef00e Merge m-c to autoland. a=merge 2017-08-09 18:51:26 -04:00
Ryan VanderMeulen
2e6670c78e Merge autoland to m-c. a=merge 2017-08-09 18:47:59 -04: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
Brendan Dahl
d1dd2ea172 Bug 1387168 - 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:46:51 -07:00
Carsten "Tomcat" Book
bb29fe249d Merge mozilla-central to autoland 2017-08-09 12:31:56 +02:00
Farmer Tseng
c7c31e6f60 bug 1358076 - Part2. Enable gtest for PDFViaEMFPrintHelper r=jwatt
MozReview-Commit-ID: BWzuisXJrhV

--HG--
extra : rebase_source : 56a76a6a9eaa6e48d633fd2a2a0a6ef8b818f813
2017-08-09 14:28:16 +08:00
Farmer Tseng
6891586bfd Bug 1358076 - Part1. Add a gtest to verify PDFViaEMFPrintHelper r=jwatt
PrinterTestPage.pdf is from
https://opensource.apple.com/source/cups/cups-136.9/cups/test/testfile.pdf

MozReview-Commit-ID: HSCD80QVQVt

--HG--
extra : rebase_source : f5f044834a369a896452c7731bc91d73c31f6277
2017-08-09 14:28:06 +08:00
Eric Rahm
fe18bf0131 Bug 1386825 - Part 4: Remove remaining instances of MOZ_B2G. r=froydnj
MozReview-Commit-ID: 8r4eMwiZ4Vg
2017-08-08 14:41:09 -07:00
Bob Owen
132c433aab Bug 1388048 - Check for failure of ResolveJunctionPointsAndSymLinks in GeckoChildProcessHost::GetPathToBinary. r=jimm
This patch also adds logging into ResolveJunctionPointsAndSymLinks to help diagnose issues that
might arise if the resolution fails or the path is not usable for some reason.
2017-08-07 17:27:10 +01:00
Eugen Sawin
4c19212863 Bug 1386240 - [2.0] Fix JNI wrappers. r=me 2017-08-08 19:20:44 +02:00
Eugen Sawin
14c89f86b5 Bug 1386240 - [1.3] Check success status when enabling or disabling geolocation events. r=jchen 2017-08-08 18:15:54 +02:00
Carsten "Tomcat" Book
e02df09b7c Merge mozilla-central to mozilla-inbound 2017-08-08 13:23:59 +02:00
Carsten "Tomcat" Book
0f16d437cc merge mozilla-inbound to mozilla-central a=merge 2017-08-08 13:18: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
Stone Shih
b27577d8d6 Bug 1351148 Part4: Revise those test cases that have some tasks have to be processed before or after the synthesized key events. r=smaug.
Make sure input events are processed before or after the dependent tasks.

MozReview-Commit-ID: 8KfZnT2wjJR
2017-06-07 14:28:16 +08:00
Christoph Kerschbaumer
28e9ff9691 Bug 1388028 - Update tests within widget/tests to comply with new data: URI inheritance model. r=smaug 2017-08-07 20:13:12 +02: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
Jan Henning
641e43da0b Bug 1266683 - Part 3 - Update notifyIMEContext JNI bindings to include private mode info. r=jchen
MozReview-Commit-ID: Gl2iRWxo9lE

--HG--
extra : rebase_source : 4b0aad157af22dcb96aeb68b199bfa9404902dea
2017-07-31 22:45:54 +02:00
Jan Henning
34bb1f8a36 Bug 1266683 - Part 2 - Add private browsing mode info to InputContext. r=masayuki
Android now supports telling an IME that it shouldn't store user-entered content into it's dictionary/language model/etc. and we want to automatically enable this in private browsing.

As the code that handles input on Android doesn't have any notion of tabs (and therefore of the difference between normal and private tabs), the best way to get that info across is to retrieve it directly within the IMEStateManager from the corresponding document and store it in the inputContext, which is then passed to Java for Fennec to handle.
Implementing this within Gecko also has the benefit that this part of the code can be used by other platforms as well should they want to support similar features in the future.

MozReview-Commit-ID: DsxjC4Ma7DR

--HG--
extra : rebase_source : f0940cb40170ab32cf5a172d07a61d083427be8a
2017-07-30 19:45:03 +02:00
Sebastian Hengst
39ccebaf18 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 9IxbB2vCH4S
2017-08-05 11:55:25 +02:00
Sebastian Hengst
f442f9745e merge mozilla-central to autoland. r=merge a=merge 2017-08-04 19:31:08 +02:00
Sebastian Hengst
765cc1b925 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: JhesEg4Bxjy
2017-08-04 19:28:27 +02:00
sotaro
a773ee4276 Bug 1354411 - Rebuild CompositorSessions if WebRender is disabled r=kats
When WebRender creation is failed, WebRender is disabled in gecko. There is a case that WebRenderBridgeParents exist when WebRender is disabled. To handle this, gecko needs to rebuild all CompositorSessions.

There is also a problem related to gfxVars::UseWebRender on compositor thread. If e10s is enabled, but no-gpu process(default on linux and mac), gfxVars::UseWebRender change is soon notified by compositor thread tasks. If WebRender creation failure happens at 2nd WebRender creation, several WebRenderBridgeParents for 1st WebRender could exist. IPC messages from WebRenderLayerManager are normally async, then there is a chance that the WebRenderBridgeParents receive the messages after the gfxVars::UseWebRender change. Further the gfxVars::UseWebRender change in content process could be delayed than WebRenderBridgeParents, then content process does not have a way to stop sending PWebRenderBridge IPC until the change of gfxVars::UseWebRender is received. WebRenderBridgeParent related tasks handle the message, but some tasks are done based on gfxVars::UseWebRender. At this time, gfxVars::UseWebRender returned false on compositor thread, then it cause unexpected result for WebRenderBridgeParent and WebRender. To addres this inconsistent situation, WebRenderBridgeParent related tasks on compositor thread stop to use gfxVars::UseWebRender.
2017-08-04 14:36:41 +09:00
Chris Pearce
c24490f1a2 Bug 1387219 - Remove code WakeLockListener support on XP and Vista. r=aklotz
billm reports that the runnable in this code is firing a lot, and since we
don't support XP/Vista we're not benefiting from this overhead.

MozReview-Commit-ID: Bpw1E9DxPpD

--HG--
extra : rebase_source : 580ef086e8d9ce12c42724c6671d9de87038beb4
2017-08-04 11:44:29 +12:00
Wes Kocher
2196b718d3 Merge inbound to central, a=merge
MozReview-Commit-ID: DlSLhaepjeU
2017-08-03 18:06:53 -07:00
Ehsan Akhgari
7fe0be04ed Bug 1386411 - Part 3: Inline some helper functions in Selection.cpp; r=bzbarsky 2017-08-03 17:05:19 -04:00
Jim Chen
e16afc583e Bug 1384828 - Use tid for UI thread detection; r=esawin
Use the UI thread's tid for checking if we're on the UI thread in Gecko.
This lets us get rid of `GeckoThread.registerUiThread`, in order to
avoid a race where we check for UI thread before `registerUiThread` is
called.

MozReview-Commit-ID: 11gAWgx4UZo
2017-08-03 13:06:16 -04:00
Jonathan Watt
de74546b63 Bug 1384589 - Document where the luminescence calculation for -moz-win-accentcolortext comes from. r=jimm
MozReview-Commit-ID: 51QIKmP8wOs
2017-07-27 09:37:10 +01:00
Sebastian Hengst
d9f6b67320 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-08-04 19:32:45 +02:00
Jim Chen
b70b6eb453 Bug 1382335 - 4. Check for shutdown in more LayerViewSupport functions; r=esawin
Check for shutdown so we don't crash on accessing a null window pointer.

MozReview-Commit-ID: FRky4dcuhrw
2017-08-04 13:21:06 -04:00
Masatoshi Kimura
866d87ee67 Bug 1361579 - Remove nsISimpleContentPolicy. r=Ehsan
MozReview-Commit-ID: BsjkGpTpe8I

--HG--
extra : rebase_source : 640807623fc70797932a0ee592b887d5c134b5f9
2017-08-03 17:50:00 +09:00
Masatoshi Kimura
e1f76e8883 Bug 1387802 - Remove [deprecated] methods from nsITaskbarPreviewController. r=jimm
MozReview-Commit-ID: 25cdKHqVLSh

--HG--
extra : rebase_source : f2dc739ad0f132cb1cc764cfa3ec11e83cbfa0c3
2017-08-06 13:35:02 +09:00
Wes Kocher
db7d003ae0 Merge m-c to autoland a=merge CLOSED TREE
MozReview-Commit-ID: Ko3lhAvzMJN
2017-08-03 18:22:09 -07:00
Alex Gaynor
11a211f901 Bug 1386308 - stop trying to change the display sleep settings from the content process; r=haik
Before this change we were trying to change the settings from both the content
and parent processes, so this doesn't change any functionality. This allows to
remove access to the com.apple.PowerManagement.control mach service from the
content process.

MozReview-Commit-ID: 3DOhqG5U6oz

--HG--
extra : rebase_source : dee0b97c444ae95cfc8f80cb0fb99aa9e2658d51
2017-08-01 12:22:42 -04:00
Michael Smith
11b0edbc50 Bug 1373739 - Make macOS compatible with the headless WPT changes. r=bdahl
MozReview-Commit-ID: BeDPpG6G6Iy

--HG--
extra : rebase_source : 1745c4a34cb35892bba2e65d5a9caac99d0171a7
2017-07-28 23:20:21 -07:00
Michael Smith
12625b29bf Bug 1373739 - Headless: use native look-and-feel on Win, hardcoded on Linux. r=bdahl
MozReview-Commit-ID: 3CB1n7ccy86

--HG--
extra : rebase_source : 4000cf950d09f4a4c3191706c11cec0031aec924
2017-07-05 19:41:21 -07:00
Michael Smith
478c17f71a Bug 1373739 - Hook HeadlessSound and HeadlessScreenHelper into Windows widgets. r=bdahl
MozReview-Commit-ID: 1KOlPyLmJaY

--HG--
extra : rebase_source : 6d87f2bc61b4edf7f55b4cf1eb1b2cff72d878b2
2017-07-11 14:01:00 -07: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
765d8e318e Bug 1373739 - Make headless widgets hidden by default, matching other platforms. r=bdahl
It seems that my reworking of how the z-index events are sent in the patch
pertaining to active window tracking made it so that we can have headless
widgets default to being invisible again, which matches the behavior on all
other platforms. This then allows us to avoid applying size mode change side
effects while a window/widget is invisible, matching the behavior on Windows and
allowing the relevant web platform tests to pass despite the low screen
resolution with which we run Windows VMs in testing (eg.
open-features-non-integer-height.html).

MozReview-Commit-ID: 3xnaEn7RImP

--HG--
extra : rebase_source : 0c573f92b02a58aca28c71dd897ae7a443f50844
2017-07-11 13:57:25 -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
Michael Smith
bb844faed7 Bug 1373739 - Simulate window activation events in headless mode. r=jrmuizel
This is necessary for focus events to propagate correctly. Otherwise,
/2dcontext/drawing-paths-to-the-canvas/drawFocusIfNeeded_004.html in the
Web Platform Tests fails, for example.

MozReview-Commit-ID: 69GItIaQWfr

--HG--
extra : rebase_source : 24eb487d35b273c8bd128c0e7450946b36467b7b
2017-06-21 08:51:39 -07:00
Michael Smith
f2f89289d9 Bug 1373739 - Constrain widget size to screen size in headless mode. r=jrmuizel
Every other widget backend ensures widget size is bounded to screen size, but
this check was missing from headless.

MozReview-Commit-ID: 6bKIAkdRxoO

--HG--
extra : rebase_source : 6494a347aba323b977b845a1b70555fb1ab53864
2017-06-22 15:31:32 -07:00
Masayuki Nakano
baead301db Bug 1386556 - TSFTextStore::GetIMENotificationRequests() should always return notification requests for sEnabledTextStore r=m_kato
Currently, TSFTextStore::GetIMENotificationRequests() tries to return notification requests for focused text store.  However, if there is sEnabledTextStore, all notifications will be sent for it.  Therefore, TSFTextStore::GetIMENotificationRequests() should return notifications for sEnabledTextStore without checking focused text store in the thread manager.

For example, we try to keep active composition even if we're being inactivated because Windows steals focus from us when our main process becomes busy but user may want to continue to compose the composition after our process becomes available.

Additionally, if TSFTextStore::GetIMENotificationRequests() doesn't return IMENotificationRequests::NOTIFY_DURING_DEACTIVE, sEnabledTextStore will be broken by NOTIFY_IME_OF_BLUR which will be sent by IMEStateManager::OnChangeFocusInternal().  However, when we're being activated, NOTIFY_IME_OF_FOCUS won't be notified because focused remote process keeps having IMEContentObserver.  Therefore, sEnabledTextStore won't be recreated and IME becomes unavailable.

Therefore, while sEnabledTextStore is not nullptr, TSFTextStore::GetIMENotificationRequests() needs all notifications even if it loses focus in the thread manager.

MozReview-Commit-ID: CC6gJIpHxUO

--HG--
extra : rebase_source : 02559fe8fea81b4247ef27043fc1d995981a9ba4
2017-08-02 18:30:16 +09:00
Nicholas Nethercote
5241bea863 Bug 1390428 (part 2) - Remove more nsXPIDLCString local variables. r=erahm.
These are all easy cases where an nsXPIDLCString local variable is set via
getter_Copies() and then is used in ways that rely on the implicit conversion
to |char*|. The patch uses get() and EqualsLiteral() calls to replace the
implicit conversions.
2017-08-16 13:58:55 +10:00
Sebastian Hengst
cbd7e56969 merge mozilla-central to autoland. r=merge a=merge 2017-08-01 11:25:13 +02:00
Nicholas Nethercote
73558eac3d Bug 1384834 (part 2) - Remove remaining uses of nsAdoptingCString. r=erahm.
--HG--
extra : rebase_source : 70a385a0a06bc88e728d51459e7460a68f15f7fb
2017-07-28 11:21:47 +10:00
Nicholas Nethercote
d18fdecf67 Bug 1384834 (part 1) - Remove remaining uses of nsAdoptingString. r=erahm.
--HG--
extra : rebase_source : c81ee11b9d08198a000979760a8e29a01e9498d0
2017-07-28 11:21:45 +10:00
Wes Kocher
3c2dc39278 Merge m-c to inbound, a=merge
MozReview-Commit-ID: BgPWEtPV0sy
2017-07-31 17:49:47 -07:00
Wes Kocher
179a07b6ba Merge inbound to central, a=merge
MozReview-Commit-ID: Dg4fbH8wbXt
2017-07-31 17:43:38 -07:00
Jim Chen
97a5cae544 Bug 1382335 - 3. Use XPCOM queue for disposing compositor native objects; r=esawin
There's some racing going on between compositor methods that use the
XPCOM queue and the disposeNative method that uses the priority queue.
Move everything to the XPCOM queue to fix this condition.

MozReview-Commit-ID: BUxotrpBVsW
2017-07-31 12:30:32 -04:00
Jim Chen
b9eff08b91 Bug 1382335 - 2. Revert workaround from bug 1372777; r=esawin
Introduce the crash again to get more crash reports for analysis.

MozReview-Commit-ID: DYq95o5RpzB
2017-07-31 12:30:13 -04:00
Jim Chen
54718c4c49 Bug 1382335 - 1. Record the type of null native pointers; r=esawin
Right now we throw NullPointerException with the message "Null native
pointer", but we can save the type of the native pointer in the message
to make it easier to categorize and analyze crashes. This patch uses the
__func__ feature to get the name of a particular template parameter
type.

MozReview-Commit-ID: GNWzIy91OD6
2017-07-31 12:30:13 -04:00
Masayuki Nakano
3bbd4cc2d5 Bug 1379997 - part2: Remove "intl.tsf.hack.ms_japanese_ime.do_not_associate_imc_on_win10" pref completely r=m_kato
"intl.tsf.hack.ms_japanese_ime.do_not_associate_imc_on_win10" should be unnecessary anymore because it failed to avoid the crash of MS-IME for Japanese but causing other regression.  Therefore, this patch removes it completely.

MozReview-Commit-ID: 91jjxfIYReW

--HG--
extra : rebase_source : d261f5bf77c14c41562495574d87364a7bb2d4fc
2017-08-01 00:13:57 +09:00
Botond Ballo
e54b8b4984 Bug 1105109 - Have the parent process notify APZ of the start and stop of autoscrolling. r=kats
The messages are routed through nsITabParent, nsIWidget, and IAPZCTreeManager
(the latter possibly remoted via PAPZCTreeManager if out-of-process compositing
is used).

MozReview-Commit-ID: 1zXzLa1fqpG

--HG--
extra : rebase_source : c482816ecbaec0a889d817851ee15be186b2a49c
2017-07-26 19:33:02 -04: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
Nicholas Nethercote
d4f9aa5530 Bug 1384835 (part 2, attempt 2) - Remove the Preferences::Get*String() variants that return nsAdoptingString. r=froydnj.
--HG--
extra : rebase_source : 6c24fbacb03d4adebe5f22b5e7fc60b069913f20
2017-07-31 14:23:50 +10:00
Nicholas Nethercote
581214bd8b Bug 1384835 (part 1, attempt 2) - Use nsA[C]String references instead of pointers for outparams of Get*String() pref functions. r=froydnj.
--HG--
extra : rebase_source : fe566945a55c281d8290634a5b55bed19415c839
2017-07-31 10:52:51 +10:00
Wes Kocher
316fd8283a Merge m-c to inbound, a=merge
MozReview-Commit-ID: KcxntLtRalL

--HG--
rename : taskcluster/actions/__init__.py => taskcluster/taskgraph/actions/__init__.py
rename : taskcluster/actions/add-new-jobs.py => taskcluster/taskgraph/actions/add-new-jobs.py
rename : taskcluster/actions/registry.py => taskcluster/taskgraph/actions/registry.py
rename : taskcluster/actions/retrigger.py => taskcluster/taskgraph/actions/retrigger.py
rename : taskcluster/actions/run_missing_tests.py => taskcluster/taskgraph/actions/run_missing_tests.py
rename : taskcluster/actions/test-retrigger-action.py => taskcluster/taskgraph/actions/test-retrigger-action.py
rename : taskcluster/actions/util.py => taskcluster/taskgraph/actions/util.py
2017-07-28 17:54:59 -07:00
Wes Kocher
40c3480d89 Merge inbound to central, a=merge
MozReview-Commit-ID: JNxfwQh0cac

--HG--
rename : gfx/layers/wr/WebRenderCompositableHolder.h => gfx/layers/wr/AsyncImagePipelineManager.h
2017-07-28 17:40:43 -07:00
Brendan Dahl
5dd8373329 Bug 1355147 - Use headless clipboard on macOS. r=jrmuizel
MozReview-Commit-ID: Fh0GHE34joE
2017-07-28 11:00:29 -07:00
Brendan Dahl
82161df837 Bug 1355147 - Expose IsHeadless on GfxInfo. r=jrmuizel
Allows marionette to check if the browser is in headless mode.

MozReview-Commit-ID: 2kaqO3HO9Ke
2017-07-28 11:00:28 -07:00
Brendan Dahl
987400a824 Bug 1355147 - Add basic support for headless mode on macOS. r=jrmuizel
MozReview-Commit-ID: 23Wchhimynz
2017-07-28 11:00:27 -07:00
Bill McCloskey
c6c1f4bbc9 Bug 1385413 - Remove thread parameter from onDispatchedEvent (r=erahm)
This parameter isn't used by any implementation of onDispatchedEvent,
and keeping the parameter makes later refactorings in this bug more difficult.

MozReview-Commit-ID: 90VY2vYtwCW
2017-07-28 13:09:06 -07:00
Carsten "Tomcat" Book
139661e8e4 Merge mozilla-central to mozilla-inbound 2017-07-28 15:25:58 +02:00
Carsten "Tomcat" Book
892bedca2e merge mozilla-inbound to mozilla-central a=merge 2017-07-28 15:24:39 +02:00
Sebastian Hengst
d7527a414d Backed out changeset 07b534f44740 (bug 1384835) for failing xpcshell's security/manager/ssl/tests/unit/test_cert_sha1.js checkCertErrorGenericAtTime on Linux x64 debug. r=backout 2017-07-28 10:30:29 +02:00
Sebastian Hengst
1d708511f0 Backed out changeset 5df4d8778602 (bug 1384835) 2017-07-28 10:29:29 +02:00
Sebastian Hengst
744a0a216b Backed out changeset ef5feef07bed (bug 1384835) 2017-07-28 10:29:24 +02:00
Carsten "Tomcat" Book
28bdd40776 Merge mozilla-central to mozilla-inbound 2017-07-28 09:48:24 +02:00
Carsten "Tomcat" Book
2ff6df9177 Backed out changeset 5198322f7a62 (bug 1351148) 2017-07-28 09:20:20 +02:00
Carsten "Tomcat" Book
6aa98d7df0 Merge mozilla-central to autoland 2017-07-28 09:50:36 +02:00
Carsten "Tomcat" Book
d360d49d2a merge mozilla-inbound to mozilla-central a=merge 2017-07-27 10:57:25 +02:00
Nicholas Nethercote
200d8ec18b Bug 1384835 (part 3) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj.
This is similar like the previous patch, but for the 8-bit string variants.
Also, it changes assignment to Adopt() in GetCString() and GetDefaultCString()
to avoid an extra copy.

--HG--
extra : rebase_source : eba805c3a7b809d5ccd6e853b1c9010db9477667
2017-07-27 16:45:10 +10:00
Tobias Schneider
3880ddff03 Bug 1382327 - (reftest) Rename reftest-print to reftest-paged. r=dbaron
--HG--
extra : rebase_source : c4e47e2de8d615c77e7e9ce88f6b21c9d15c92e4
2017-07-26 22:53:46 -07:00
Makoto Kato
dc2ee6bae4 Bug 1383659 - LookAndFeel::GetInt(LookAndFeel::eIntID_CaretBlinkTime) should cache caret blink rate. r=jimm
WebKit's Speedometer benchmark updates textbox to emulate text input. So it also updates caret position with focus.  And, nsCaret always gets current blink time when reseting caret via LookAndFeel.

When profiling speedometer benchmark, GetCaretBlinkTime somestimes show profiling stack.  This API gets data from kernel mode, so this isn't faster.

So, we should cache caret blink rate.

And when changing this rate via control panel, WM_SETTINGCHANGE is posted. So we should update this cache via this message.

MozReview-Commit-ID: IEIi25RvR1g

--HG--
extra : rebase_source : 4bc506acd67f2737cf44dc2a667c938efc7b4024
2017-07-27 18:53:34 +09:00
Nicholas Nethercote
0574a6b496 Bug 1384835 (part 2) - Remove the Preferences::Get*String() variants that return nsAdoptingString. r=froydnj.
Because we want to remove nsAdoptingString. We have other variants that don't
use nsAdoptingString, which can be used instead. There are three basic
patterns.

1. The easiest case is when we don't check for success.

> nsAdoptingString s = Preferences::GetString("foo");
> foo(s);

becomes:

> nsAutoString s;
> Preferences::GetString("foo", s);
> foo(s);

2. The next case is when we check if the result is empty.

> nsAdoptingString s = Preferences::GetString("foo");
> if (s.IsEmpty()) { ... }

becomes:

> nsAutoString s;
> Preferences::GetString("foo", s);
> if (s.IsEmpty()) { ... }

3. The final case is when we null check the result.

> nsAdoptingString s = Preferences::GetString("foo");
> if (s) { ... }

becomes:

> nsAutoString s;
> nsresult rv = Preferences::GetString("foo", s);
> if (NS_SUCCEEDED(rv)) { ... }

The patch also avoids some UTF8/UTF16 conversions in a few places.

--HG--
extra : rebase_source : f339b1a3dda4dc93979d38c30c001fbe77485b55
2017-07-25 20:36:14 +10:00
Nicholas Nethercote
f314cbcbe5 Bug 1384835 (part 1) - Use nsA[C]String references instead of pointers for outparams of Get*String() pref functions. r=froydnj.
This is basically a cosmetic change; references are the normal way to do string
outparams.

--HG--
extra : rebase_source : ffc5945f269bdcd3d4116755b56713e87a44b6cd
2017-07-25 19:12:56 +10:00
sotaro
b8bc54df5a Bug 1372880 - Add WebRender creation failure handling r=aosmond 2017-07-28 18:22:21 +09: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
Julian Seward
408d24da56 Bug 1382563 - Remove ns*String::AssignWithConversion. r=erahm.
This patch replaces four functions of the name AssignWithConversion which
are essentially wrappers around CopyASCIItoUTF16 and LossyCopyUTF16toASCII
with direct calls to the latter two functions.  The replaced functions are:

  void nsCString::AssignWithConversion( const nsAString& aData )
  void nsString::AssignWithConversion( const nsACString& aData )

  void nsTString_CharT::AssignWithConversion(
                            const incompatible_char_type* aData,
                            int32_t aLength = -1);

The last of the three exists inside the double-included nsTString* world and
so describes two functions, giving four in total.

This has two advantages:

* it removes code

* at the call points, it makes clear (from the replacement name) which
  conversion is being carried out.  The generic name "AssignWithConversion"
  doesn't make that obvious -- one had to infer it from the types.

The patch also removes two commented out lines from
editor/composer/nsComposerCommands.cpp, that appear to be related.  They are
at top level, where they would never have compiled.  They look like
leftovers from some previous change.

--HG--
extra : rebase_source : fb47bf450771c3c9ee3341dd14520f5da69ec4f5
2017-07-24 19:23:52 +02:00
Carsten "Tomcat" Book
740c6ff791 Merge mozilla-central to autoland 2017-07-28 15:27:47 +02:00
Masayuki Nakano
333068f586 Bug 1384027 - part2: Move PuppetWidget::NotifyIMEInternal() implementation to PuppetWidget::NotifyIME() which is a method of TextEventDispatcherListener, not nsIWidget r=m_kato
nsIWidget::NotifyIME() should call only TextEventDispatcher::NotifyIME() if it's necessary.  Then, TextEventDispatcher::NotifyIME() calls TextEventDispatcherListener::NotifyIME() if it's necessary.  E.g., requests to IME are necessary only for TextInputProcessor or native IME handler because the composition is only owned by one of them.  However, notifications are necessary for both of them since focused editor contents and its focus state are shared.

So, it doesn't need to call nsBaseWidget::NotifyIMEInternal() if all NotifyIMEInternal() implementations are moved to proper TextEventDispatcherListener::NotifyIME().  Currently, nsBaseWidget::NotifyIMEInternal() is implemented only by PuppetWidget.  It sends notifications and requests to the parent process for native IME.  Therefore, we can move NotifyIMEInternal() implementation to TextEventDispatcherListener::NotifyIME() which is implemented by PuppetWidget.

This patch moves PuppetWidget::NotifyIMEInternal() implementation to PuppetWidget::NotifyIME() of TextEventDispatcherListener class, not of nsIWidget and removes NotifyIMEInternal() completely.

With this change, handling order is changed.  Old behavior is, TextEventDispatcher::NotifyIME() calls TextEventDispatcherListener::NotifyIME() before handling NOTIFY_IME_OF_FOCUS and then, nsBaseWidget::NotifyIME() sends the notification to the parent process.  However, new behavior is, the notification is sent before TextEventDispatcher::NotifyIME() handles NOTIFY_IME_OF_FOCUS.  Therefore, with new handling order, TextEventDispatcher can have IME notification requests after setting focus correctly.  Additionally, TextEventDispatcher for PuppetWidget updates the notification requests at every event dispatch via TextEventDispatcher::BeginInputTransactionInternal() by the previous patch.

So, with those patches, IMEContentObserver can refer actual IME notification requests correctly even after we'll make focus notification to async message.

MozReview-Commit-ID: JwdQ68BjTXL

--HG--
extra : rebase_source : fbc7e311d83aab3b38fdd5c1b5c24d85458eb77b
2017-07-26 00:09:41 +09:00
Masayuki Nakano
e7a9572555 Bug 1384027 - part1: PuppetWidget should have TextEventDispatcher like nsIWidget instance in the parent process r=m_kato
In the parent process, every nsIWidget instance like nsWindow has TextEventDispatcher instance after dispatching a keyboard event or a composition event.  Then, TextEventDispatcher manages whether there is composition and handles NotifyIME.  However, PuppetWidget doesn't have it unless it synthesizes keyboard events or composition events for tests.
This causes PuppetWidget implementing nsIWidget::NotifyIME() with nsBaseWidget::NotifyIMEInternal() which is a virtual method only implemented by PuppetWidget.  For consistent implementation around here, we should move NotifyIMEInternal() implementation to TextEventDispatcherListener::NotifyIME() which is called by TextEventDispatcher::NotifyIME().  Then, PuppetWidget can handle NotifyIME() easier.

This patch creates TextEventDispatcher::BeginInputTransactionFor() which takes pointer to a dispatching event and pointer to PuppetWidget.  It emulates each corresponding event dispatcher method for managing composing state and begins input transaction for the dispatching event.

Unfortunately, this implementation is ugly due to duplicated code.  However, this is enough for now.  When we need to make TextEventDispatcher manage more states, we should add methods which are shared by both BeginInputTransactionFor() and event dispatcher method.

MozReview-Commit-ID: GeP028luZjR

--HG--
extra : rebase_source : ce71ce4d7ba52aeb12bff2c403c9a6df47ea3a11
2017-07-25 23:27:31 +09:00
James Willcox
d0bb12024d Bug 1381916 - Remove support for plugins on Android r=jchen,bsmedberg
MozReview-Commit-ID: AcAIC1QQew2
2017-07-31 12:25:16 -05:00
James Willcox
25dad4abf2 Bug 1381916 - Remove frontend support for plugins in Fennec r=nechen
MozReview-Commit-ID: Gkqe8Y5AMPV
2017-07-31 12:25:16 -05:00
kevin
47b2c10f66 Bug 1333912. Implement onvisibilitychange attribute on Document. r=bzbarsky 2017-07-26 16:22:42 -04:00
Bevis Tseng
95b18d794e Bug 1382172 - Name nsITimerCallback instances in native implementation. r=billm
--HG--
extra : rebase_source : 84de1abfcc30a6964144c2e6718a508c71027b65
2017-07-27 02:18:20 +08:00
Bevis Tseng
a7505864a8 Bug 1378930 - Part 2: Remove the aName parameter from SchedulerGroup/DocGroup/DispatcherTrait. r=billm
--HG--
extra : rebase_source : 11319e568a51d16754a6a9990f76c35c86c2bda7
2017-07-26 16:13:35 +08:00
Kartikaya Gupta
ba4b3b9101 Bug 1384233 - Remove SizePrintfMacros.h. r=froydnj
We have a minimum requirement of VS 2015 for Windows builds, which supports
the z length modifier for format specifiers. So we don't need SizePrintfMacros.h
any more, and can just use %zu and friends directly everywhere.

MozReview-Commit-ID: 6s78RvPFMzv

--HG--
extra : rebase_source : 009ea39eb4dac1c927aa03e4f97d8ab673de8a0e
2017-07-26 16:03:57 -04:00
Carsten "Tomcat" Book
198430bca2 merge mozilla-inbound to mozilla-central a=merge 2017-07-26 11:11:40 +02:00
Wes Kocher
f19f28adfd Merge m-c to autoland, a=merge
MozReview-Commit-ID: F1X8wKqbkg
2017-07-25 19:16:09 -07:00
Wes Kocher
65bbd0525a Merge inbound to central, a=merge
MozReview-Commit-ID: E4oXfAM1mtd
2017-07-25 19:04:37 -07:00
Brendan Dahl
cbbcce1fa2 Bug 1383078 - Use at minimum a 1,1 draw target in headless. r=jrmuizel 2017-07-25 09:04:54 -07:00
James Cheng
4843d195fb Bug 1382151 - Pause Exoplayer when mediaelement is paused. r=kikuo
MozReview-Commit-ID: 5MDBBP5vfpa

--HG--
extra : rebase_source : 9981585791cd359296ac7fef0fe0d7e900af6c61
2017-07-20 17:47:54 +08:00
Masayuki Nakano
22aa198848 Bug 1380652 - ContentCacheInParent::RequestIMEToCommitComposition() shouldn't handle the request synchronously when its TabParent has already sent eCompositionCommit(AsIs) event of the composition r=m_kato
If ContentCacheInParent::RequestIMEToCommitComposition() returns true after its TabParent has already sent eCompositionCommit(AsIs) event, ContentCacheInParent::OnEventNeedingAckHandled() will receive both eCompositionCommit(AsIs) and eCompositionCommitRequestHandled for a composition.  Then, that causes making mPendingCompositionCount decreased twice.  That causes the crash.

So, even if its TabParent already lost focus, it should return false after its TabParent sent eCompositionCommit(AsIs).

MozReview-Commit-ID: 6OylQtc8kgC

--HG--
extra : rebase_source : 9d8f2ab2b25f129ddbca75fcc8fb4bc7c3a96e56
2017-07-21 21:22:23 +09:00
Wes Kocher
1c6b33b69a Merge m-c to inbound, a=merge
MozReview-Commit-ID: AwACQvl2e5g

--HG--
extra : rebase_source : e70812f9a96acf1d0747cb7ea57afa1e2152283b
2017-07-25 19:09:39 -07:00
Jim Chen
ba6dd4ceb0 Bug 1382861 - 2. Don't use priority queue for GeckoView.Window and ThumbnailHelper; r=esawin
Use the regular XPCOM queue for those tasks because the priority queue
should only be used for input and other timing-sensitive tasks.

MozReview-Commit-ID: 5px0s0PJYrV
2017-07-25 17:26:14 -04:00
Jim Chen
454e868137 Bug 1382861 - 1. Replace jni::AbstractCall with nsIRunnable; r=esawin
The native binding code used `jni::AbstractCall` as the interface
between `ProxyNativeCall` and `DispatchToGeckoPriorityQueue`. However,
we already make use of `nsIRunnable` for dispatching to the XPCOM queue,
so we should just use `nsIRunnable` for the priority queue as well.

MozReview-Commit-ID: KmuNMZZkXX3
2017-07-25 17:25:58 -04:00
Jim Chen
84b7350f94 Bug 1351170 - Don't crash on selection exception in Beta; r=me
Don't crash when we encounter a selection exception when in Beta. Still
crash when in Nightly so we can investigate the source of the crash.
r=me for trivial patch.

MozReview-Commit-ID: HgmudX4VfWO
2017-07-25 15:32:53 -04:00
Carsten "Tomcat" Book
0c215343b0 merge mozilla-inbound to mozilla-central a=merge 2017-07-24 13:01:44 +02:00
Nicholas Nethercote
ac3e6bddb4 Bug 1382099 - Remove MOZ_WIDGET_GONK from media/, uriloader/, widget, /xpfe/. r=snorp.
--HG--
extra : rebase_source : 75fe5b8320d52c7316ca547f706b64f30250d28c
2017-07-24 10:08:55 +10:00
Wes Kocher
d45eb771f0 Merge m-c to inbound, a=merge
MozReview-Commit-ID: Ah48RzFU8Mt
2017-07-21 18:20:46 -07:00
Wes Kocher
051dc17e6c Merge inbound to central, a=merge CLOSED TREE
MozReview-Commit-ID: GYc8r8gnS0j
2017-07-21 18:12:55 -07:00
Ryan VanderMeulen
f4e3a91992 Merge m-c to inbound. a=merge 2017-07-21 09:40:28 -04:00
Sebastian Hengst
367f0ac5a2 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: IWRTFZdtzaE
2017-07-21 12:56:44 +02:00
Sylvestre Ledru
7c0ae251cd Bug 1381253 - Remove redundant control flow declarations rs=ehsan
MozReview-Commit-ID: FFxP4aMCbOL

--HG--
extra : amend_source : 3aec108430b11048f47ffe19d5da7ac5034770a9
2017-07-15 19:03:04 +02: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
Stone Shih
a930bf9910 Bug 1372097 Implement tangential pressure and twist on Mac. r=mstange.
MozReview-Commit-ID: 5eigFssLEGR
2017-06-12 16:25:49 +08:00
Andrew Osmond
69da7c2120 Bug 1381095 - Fallback correctly to non-WebRender if the GPU process/WebRender are disabled when creating a remote compositor session. r=dvander 2017-07-20 09:20:22 -04:00
Johann Hofmann
3eac596d72 Bug 1371219 - Add an inputSource attribute to XULCommandEvent. r=smaug
In the frontend we need to know if XUL buttons in the toolbar were
triggered by a touch event, so we're passing on the inputSource
in the command event.

MozReview-Commit-ID: DMvgZULk9hT

--HG--
extra : rebase_source : c455c8ec77e439bf02c1e3e8d34a36e1fb5e3bd0
2017-07-20 17:45:56 +02:00
Ryan VanderMeulen
d229288071 Merge m-c to autoland. a=merge
CLOSED TREE

--HG--
extra : amend_source : 2ab51304cc7df444f22c3aac001a1aba61faee3a
2017-07-21 09:42:41 -04:00
Dão Gottwald
f605598222 Bug 1379266 - Tweak -moz-win-accentcolortext formula to better match native title bars. r=jimm
MozReview-Commit-ID: 9unrhFI3sWh

--HG--
extra : rebase_source : 096198d640ee39c87d8495fe6e6e872544aa6478
2017-07-18 13:23:25 +02:00
Stone Shih
a5bccae405 Bug 1351148 Part4: Revise those test cases that have some tasks have to be processed before or after the synthesized key events. r=smaug.
Make sure input events are processed before or after the dependent tasks.

MozReview-Commit-ID: 8KfZnT2wjJR
2017-06-07 14:28:16 +08:00
Wes Kocher
b5bcc4905e Merge inbound to central, a=merge CLOSED TREE
MozReview-Commit-ID: CBL7SUEUGKV
2017-07-19 17:29:56 -07:00
Jim Chen
8b6bd21a0b Bug 1351170 - 2. Notify selection listeners after adjusting range offsets; r=smaug
`nsRange` registers mutation observers to adjust the range when content
changes. However, there are some cases where we adjust the start and/or
end offsets but don't notify selection listeners (i.e. we don't call
`nsRange::DoSetRange` to set the new range points, contrary to what the
comment above `nsRange::DoSetRange` says). This patch makes us call
`nsRange::DoSetRange` in those cases. The patch adds a testcase in
test_selectevents.html, and changes a few unexpected-pass cases in
test_composition_text_querycontent.xul that this patch fixed.

MozReview-Commit-ID: 73D8RYMS3MS

--HG--
extra : rebase_source : da0cc3073e4b8ad23c6f6eab42da5aa8b269cae9
2017-07-19 14:29:59 -04:00
Jim Chen
41148177ef Bug 1351170 - 1. Correctly calculate start offset for non-text nodes; r=masayuki
When the start node is a non-container node (i.e. <br>), and the start
offset is 0, we should not include a newline character for the node. For
example, for this range,

> <br/>hello
>  \___/

the start node/offset is (<br/>, 0) and end node/offset is ("hello", 1).
The calculated range offset should be 0, and the range length should be
2: 1 for the <br/> newline character plus 1 for "h".

The patch also ensures this behavior for pre-mode nsContentIterator, for
both start and end node adjustments. For start nodes, we include any
non-container nodes with offset 0 in the range. For end node, we exclude
any non-container nodes with offset 0 from the range.

MozReview-Commit-ID: Lt2tCLbapq7

--HG--
extra : rebase_source : 7d86b6cf04581f1cd71fa85f8c8586541b3a84e9
2017-07-19 14:29:59 -04:00
Ryan Hunt
017d292cac Bug 1382128 part 2 - Remove WrPoint, WrSize, WrRect, WrMatrix, and WrColor. r=kats
MozReview-Commit-ID: 9koNScu4CyE

--HG--
extra : rebase_source : 68185e949ddf2ae346a5d597d056a7f2d9ea7a28
2017-07-18 18:32:46 -04:00
Dão Gottwald
4b7389da4e Bug 1379938 - Rename the -moz-windows-accent-color-applies media query and make -moz-win-accentcolor available without it. r=jimm
MozReview-Commit-ID: 9zMr9JwkloF

--HG--
extra : rebase_source : 25e9cfa11dc0c3ff09e4e3aac18a53535cbcc27b
2017-07-19 16:38:49 +02:00
Ryan Hunt
3f3cb0a954 Bug 1382128 part 1 - Use a namespace in webrender_bindings. r=kats
MozReview-Commit-ID: 3JTMa9Ix5S7

--HG--
extra : rebase_source : 0bea14d9e395cab260d2db5135b1f64e9f82b2e2
2017-06-27 19:20:36 -04:00
Benjamin Smedberg
e92ddc293b Bug 1374038 - _exit() can call static destructors on Windows! So replace it with TerminateProcess which can't, r=jimm r=mstange
MozReview-Commit-ID: FSsOU85yA18

--HG--
extra : rebase_source : 7247a9940d7729e003af51c0cc7de15b08aa54d0
2017-07-17 16:06:15 -04:00
Andrew Osmond
094c212d54 Bug 1350408 - Gracefully handle failures in WebRenderLayerManager::Initialize to allow reinit. r=kats 2017-07-18 09:35:07 -04:00
Haik Aftandilian
09507f2814 Bug 1353064 - Add-on always prints at 100% due to missing nsPrintSettingsX::GetScaling() impl r=cosmo0920
MozReview-Commit-ID: AhIFJUfRrPJ

--HG--
extra : rebase_source : b01c8e6099df8de46c2e0ba983ac91738d648c84
2017-06-14 15:06:18 -07:00
Doug Thayer
7646a8ed3b Bug 1380629 - Check GetTheme result in nsNativeThemeWin r=jimm
The fix for bug 1373079 neglected the detail of OpenThemeData
that it can return null if no match is found for the specified
class name. The set of matching class data sections varies with
the default and the classic theme, and the classic theme doesn't
have matches for a few of the values that we try to get. This
causes us to pass a null theme to subsequent functions, which of
course breaks the layout.

MozReview-Commit-ID: 5LaR0qZlOzd

--HG--
extra : rebase_source : ba97163e5dfdd7127d550be54524e93f12195ffb
2017-07-17 13:55:28 -07:00
Milan Sreckovic
ebe72eb0d5 Bug 1359416: Allow blocklisting of D3D11 keyed mutex and block it for Intel Gen 6. r=bas,dvander
MozReview-Commit-ID: 2u7N5qhHhD1

--HG--
extra : rebase_source : 3a8ccc658d1b83d470f1bbeef4520779c1766919
2017-07-25 14:02:36 -04:00
Samael Wang
e90e4d4b15 Bug 1350643 - Part 7: Remove sync GetDPI/DefaultScale/WidgetRounding. Use primary screen's value until RecvShow. r=kanru
MozReview-Commit-ID: GlDMNecWp3j

--HG--
extra : rebase_source : 1f8573df8845c100172f41febc5a84bbcd069769
2017-05-19 18:20:18 +08:00
Samael Wang
f41a004bb1 Bug 1350643 - Part 6.2: Get per-monitor dpi in ScreenHelperWin & use the same value in nsWindow::GetDPI. r=jimm
MozReview-Commit-ID: 3oEvQe8zNJ0

--HG--
extra : rebase_source : b4c7d97ec1f701bbd1058ef40994f9874f6117cc
2017-06-16 11:16:47 +08:00
Samael Wang
b75d05055a Bug 1350643 - Part 6.1: Extract getting DPI logic from LogToPhysFactor & SystemScaleFactor to provide new functions MonitorDPI & SystemDPI. r=jimm
MozReview-Commit-ID: E9mXvFMM3pA

--HG--
extra : rebase_source : 1cc0f80c41054d6400d03b663f5b0037fbdb4cad
2017-06-16 01:11:41 +08: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
480a9d013c Bug 1350643 - Part 4.2: Use screen.dpi in nsChildView::GetDPI. r=mstange
MozReview-Commit-ID: AiGBxTNzxSp

--HG--
extra : rebase_source : 50dcdca6e6b63ab3cbae7e00ecc8c8e7e4f10b74
2017-06-16 10:55:09 +08:00
Samael Wang
e6f4039653 Bug 1350643 - Part 4.1: Get per-monitor dpi in ScreenHelperCocoa. r=mstange
MozReview-Commit-ID: OHa8h2sh26

--HG--
extra : rebase_source : 67d7be6a51ad81d0d2cfe48ad4c92d0a6ef3c666
2017-06-06 18:18:52 +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
Kris Maglione
86877fceef Bug 1381097: Part 1 - Add default-false pref to enable APZ in remote popups. r=kats
Ideally, we definitely want APZ in remote popup browsers for the sake of
responsiveness. However, there are currently some serious painting and
checkerboarding issues that make APZ popups unsuitable for release
populations.

Once these issues are addressed, we should enable the preference by default.
But given the relative lack of testing, and the issues we've seen so far, we
should keep the preference so that we can disable it with a hotfix if further
issues arise.

MozReview-Commit-ID: GOZRdsmLNZR

--HG--
extra : rebase_source : ce0f2ca029d951a9c65ec1482e065b6695793133
2017-07-15 12:01:36 -07:00
David Parks
1dc60d3f88 Bug 1373220 - Use correct window reference when setting parent window in Windows widget. r=jimm
SetParent removes the widget from the old parent widget and then sets its new one.  We were incorrectly using the new parent widget when we needed the old one.
2017-07-12 19:32:48 -07:00
Kris Maglione
d60e48a1e8 Bug 1378948: Remove unused layers.popups.compositing.enabled preference. r=trivial
MozReview-Commit-ID: Css0qzakw14
2017-07-15 11:03:07 -07:00
Wes Kocher
6d62b1970e Merge m-c to inbound, a=merge
MozReview-Commit-ID: 4kiY84LofOi
2017-07-14 17:19:10 -07:00
Wes Kocher
e9fa5c772a Merge inbound to central, a=merge
MozReview-Commit-ID: 8nlqm5dHCUQ
2017-07-14 17:14:43 -07:00
David Anderson
983fda7771 Remove the Intel HD Graphics blocklist entry for Advanced Layers. (bug 1380580, r=milan) 2017-07-14 16:35:10 -07:00
Milan Sreckovic
b60a342a2b Bug 1381074: Have downloadable blocklist recognize advanced layers. r=dvander
MozReview-Commit-ID: GlzDUQoAH6P

--HG--
extra : rebase_source : 0e32b40f1d4939431bad194706f623bbf4a3829b
2017-07-14 14:13:54 -04:00
James Cheng
950fc2b63c Bug 1379866 - Implement MediaResource Suspend and Resume in HLSResource. r=jolin
1. Pause the Exoplayer when navigating to another page and resume playback when navigating back.

2. Fix the OOM issue.

MozReview-Commit-ID: 5UGmBzpObsb

--HG--
extra : rebase_source : f8f268612687669e1b31881465600b02b3531c55
2017-07-14 01:29:00 +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
Brendan Dahl
80c9890f5c Bug 1376812 - Create default headless draw target. r=jrmuizel
Defining the default draw target avoids the previous mix of cairo
and d2d layers, which would trigger an assertion when capturing
a page with the widget layers.
2017-07-13 16:55:23 -07:00
Dão Gottwald
8f5c440b72 Backed out changeset 5a5d8de65b70 (bug 1379938) on CLOSED TREE 2017-07-13 23:16:12 +02:00
Farmer Tseng
9b1bba24c6 Bug 1380301 - Add windows.h include to nsLookAndFeel.h r=heycam
MozReview-Commit-ID: Js9Kc73VXS1

--HG--
extra : rebase_source : 05b984cc3aa219dddc10faf22de046d03144bf45
2017-07-13 13:36:31 +08:00
Farmer Tseng
225f9a9b82 Bug 1380301 - Add missing "#ifdef MOZ_ENABLE_SKIA_PDF" to nsDeviceContextSpecWin.h r=heycam
MozReview-Commit-ID: YxvOID7Xbp

--HG--
extra : rebase_source : 5e8b4e37e7f74e4f0eecd35b5e5366a7953cb996
2017-07-13 13:07:18 +08:00