Commit Graph

2163 Commits

Author SHA1 Message Date
Jim Chen
650ea22b30 Bug 1446729 - 2. Rename TextInputController to SessionTextInput; r=esawin
Following the naming scheme "SessionFoo" for GeckoSession sub-objects,
and "getFoo()" for getters of GeckoSession sub-objects, rename
TextInputController to SessionTextInput and getTextInputController() to
getTextInput().

MozReview-Commit-ID: 6GtgCjCLKhg
2018-03-18 05:38:55 -04:00
Nathan Froyd
c415bb3846 Bug 1448016 - make some Android widget constructors explicit; r=snorp
Attempting to stand up the static analysis for Android builds revealed
that we weren't being explicit enough.
2018-03-27 10:51:32 -04:00
Masayuki Nakano
90d8ea70fb Bug 1447866 - GeckoEditableSupport::SendIMEDummyKeyEvent() should set native key bindings to none before dispatching keyboard events which are marked as "processed by IME" r=esawin
When EditorEventListener receives keyboard events, it tries to execute
native key bindings which are stored by each keyboard event.  For performance
reason in e10s, TabParent initializes native key binding information of every
keyboard event before sending it to the remote process.  Therefore,
PuppetWidget checks if every keyboard event has native key binding information.
However, the native key binding information of dummy keyboard events marked as
"processed by IME" on Android are never initialized before sending PuppetWidget.
Therefore, we hit MOZ_ASSERT in PuppetWidget.

This patch makes GeckoEditableSuppor::SendIMEDummyKeyEvent() set native key
binding information to "none" before dispatching every keyboard event since
keyboard events during composition shouldn't cause any edit actions.

MozReview-Commit-ID: Bk532ahCQP6
2018-03-23 11:54:01 +09:00
Kartikaya Gupta
5df2dfffc9 Bug 1448490 - Make the layers id a struct instead of a uint64_t. r=mattwoodrow
The new struct is in LayersTypes.h, all the rest of the changes are just
replacing existing uint64_t instances with the new LayersId struct.

Note that there is one functional change, in
CompositorBridgeParent::DeallocPWebRenderBridgeParent, where we now
correctly convert the PipelineId to a LayersId before using it to index
into sIndirectLayerTrees, whereas before we were incorrectly just using
the mHandle part of the PipelineId.

MozReview-Commit-ID: GFHZSZiwMrP
2018-03-24 19:06:01 -04:00
James Willcox
e51d3b14f0 Bug 1422137 - Rename NativePanZoomController to PanZoomController r=rbarker
MozReview-Commit-ID: DUdekq4OV2e
2018-03-22 12:39:53 -05:00
Boris Zbarsky
72b3558850 Bug 1446711 part 7. Switch the nsIDOMMouseEvent::MOZ_SOURCE_* constants over to MouseEventBinding. r=qdot
We can't include MouseEventBinding.h in MouseEvents.h because that produces
this include loop:

MouseEventBinding.h -> UIEventBinding.h ->
nsGlobalWindow.h -> nsGlobalWindowInner.h -> nsRefreshDriver.h ->
AnimationEventDispatcher.h -> AnimationComparator.h -> Animation.h ->
EffectCompositor.h -> PseudoElementHashEntry.h -> Element.h ->
PointerEventHandler.h -> MouseEvents.h -> MouseEventBinding.h

MozReview-Commit-ID: 6FNksGil7uD
2018-03-20 00:16:06 -04:00
Bogdan Tara
f6affd371a Merge inbound to mozilla-central. a=merge 2018-03-17 12:29:57 +02:00
Kartikaya Gupta
60181110ea Bug 1441324 - Extract an APZInputBridge interface from IAPZCTreeManager. r=rhunt
This separates the methods that are used to deliver input events
synchronously over IPDL to the compositor; this interface will be
remoted over a new APZInputBridge IPDL protocol in future patches.

MozReview-Commit-ID: 1f3V9SUKlfW
2018-03-16 16:28:18 -04:00
Eitan Isaacson
f2159927ab Bug 1184142 - Support WebSpeech in GeckoView. r=snorp r=smaug 2018-03-16 12:08:00 +02:00
Adrian Wielgosik
6364cecc9c Bug 1445408 - Remove nsIDOMClientRect. r=bz
MozReview-Commit-ID: HP4E3cADa8i
2018-03-13 14:19:17 +01:00
Adrian Wielgosik
298a2c826b Bug 1445408 - Remove nsIDOMClientRectList. r=bz
MozReview-Commit-ID: 22sQNVs0wFP
2018-03-01 17:14:26 +01:00
Masayuki Nakano
b4f0c382a0 Bug 1343451 - part 5: Make GeckoEditableSupport dispatch dummy eKeyDown and eKeyUp event during composition always r=jchen
On Android, GeckoEditableSupport has already dispatched eKeyDown event and
eKeyUp event even during composition.  I.e., the pref which will be enabled
by bug 354358 has already been set to true only on Android.

On the other hand, GeckoEditableSupport does not dispatch them if content
listens to "input", "compositionstart", "compositionupdate" or
"compositionend".  So, different from the other platforms, we need additional
pref to make the new behavior behind pref.

Therefore, this patch adds a new pref,
"intl.ime.hack.on_any_apps.fire_key_events_for_composition", to override
existing "intl.ime.hack.on_ime_unaware_apps.fire_key_events_for_composition"
pref.  And sets mKeyCode and mKeyNameIndex of the dummy KeyboardEvents to
NS_VK_PROCESSKEY and KEY_NAME_INDEX_Process.

MozReview-Commit-ID: Fuy0Ir2xiO5
2018-02-27 17:24:35 +09:00
Nicholas Nethercote
d911a57ece Bug 1438678 - Pass early prefs via shared memory instead of the command line. r=bobowen,jld,glandium.
This patch replaces the large -intPrefs/-boolPrefs/-stringPrefs flags with
a short-lived, anonymous, shared memory segment that is used to pass the early
prefs.

Removing the bloat from the command line is nice, but more important is the
fact that this will let us pass more prefs at content process start-up, which
will allow us to remove the early/late prefs split (bug 1436911).

Although this mechanism is only used for prefs, it's conceivable that it could
be used for other data that must be received very early by children, and for
which the command line isn't ideal.

Notable details:

- Much of the patch deals with the various platform-specific ways of passing
  handles/fds to children.

  - Linux and Mac: we use a fixed fd (8) in combination with the new
    GeckoChildProcessHost::AddFdToRemap() function (which ensures the child
    won't close the fd).

  - Android: like Linux and Mac, but the handles get passed via "parcels" and
    we use the new SetPrefsFd() function instead of the fixed fd.

  - Windows: there is no need to duplicate the handle because Windows handles
    are system-wide. But we do use the new
    GeckoChildProcessHost::AddHandleToShare() function to add it to the list of
    inheritable handles. We also ensure that list is processed on all paths
    (MOZ_SANDBOX with sandbox, MOZ_SANDBOX without sandbox, non-MOZ_SANDBOX) so
    that the handles are marked as inheritable. The handle is passed via the
    -prefsHandle flag.

  The -prefsLen flag is used on all platforms to indicate the size of the
  shared memory segment.

- The patch also moves the serialization/deserialization of the prefs in/out of
  the shared memory into libpref, which is a better spot for it. (This means
  Preferences::MustSendToContentProcesses() can be removed.)

MozReview-Commit-ID: 8fREEBiYFvc
2018-02-16 17:54:16 +11:00
Jim Chen
c394d91b71 Bug 1442250 - 5. Reset native queue early when transferring; r=esawin
When we reset the old native queue when transferring to another session,
perform the reset right after the transfer() call, instead of in
onTransfer(), which is too late for clearing stale pending calls.

Then, after transferring to a new queue, let Gecko call Window.onReady
to set the new queue's state if needed. That way the Java queue state is
consistent with the Gecko state.

MozReview-Commit-ID: CUXGrhR4FCD
2018-03-09 12:34:38 -05:00
Jim Chen
337a65cd77 Bug 1442250 - 3. Track EventDispatcher attach/detach; r=esawin
In an "attach > detach > attach" sequence, detach will post a call to
disposeNative, so the sequence looks like "attach > detach > attach >
disposeNative". In that case, disposeNative will cancel attach. This
patch makes us ignore disposeNative in that case, so the second attach
works as intended.

MozReview-Commit-ID: Kr55PZcsPg1
2018-03-09 12:34:37 -05:00
Jim Chen
63180a405b Bug 1442250 - 2. Unregister then re-register all listeners on close; r=esawin
Ensure that we unregister and re-register all listeners on
closeWindow, so that the listeners are ready for any new windows that
are subsequently opened.

MozReview-Commit-ID: EKzCRS10odN
2018-03-09 12:34:37 -05:00
Michael Kaply
b5a6239d48 Bug 1342288 - Remove PresentationMediaPlayerManager. r=snorp
MozReview-Commit-ID: 4H46ahWTntR
2018-03-06 16:33:42 -06:00
Adrian Wielgosik
f49409cf50 Bug 1441270 - Remove unused WebGL parameter getters. r=jgilbert
MozReview-Commit-ID: 7PqaPG2STUs
2018-02-26 20:35:12 +01:00
Eugen Sawin
e259b1ce45 Bug 1410456 - Allow OMT access to Android system audio properties. r=esawin
MozReview-Commit-ID: 4YkiuzNkNu5
2018-02-20 15:37:06 +02:00
Narcis Beleuzu
6738eea84c Backed out 10 changesets (bug 1410456) for Android mochitest crashes, e.g. in test_postMessages.html. CLOSED TREE
Backed out changeset 7ec175446efd (bug 1410456)
Backed out changeset 94457911bb24 (bug 1410456)
Backed out changeset 5248a21216ae (bug 1410456)
Backed out changeset f182ab7885db (bug 1410456)
Backed out changeset e482347bdae3 (bug 1410456)
Backed out changeset f7b646045e06 (bug 1410456)
Backed out changeset 6a8ed4bf5d2f (bug 1410456)
Backed out changeset 1a9c687ec277 (bug 1410456)
Backed out changeset 82f6667c6758 (bug 1410456)
Backed out changeset 7bf358e3e01b (bug 1410456)
2018-02-26 15:58:20 +02:00
Eugen Sawin
e1c9de1bd4 Bug 1410456 - Allow OMT access to Android system audio properties. r=esawin
MozReview-Commit-ID: 4YkiuzNkNu5
2018-02-20 15:37:06 +02:00
James Willcox
5c4f4fd1d7 Bug 1432485 - Add GeckoSession.NavigationListener.onNewSession r=jchen,esawin
This allows apps to decide which GeckoSession should handle a load that
will be in a new window (e.g., window.open()).

MozReview-Commit-ID: BkJM93489Ga
2018-02-22 09:18:32 -06:00
Dorel Luca
27fe6752e3 Merge mozilla-inboud to mozilla-central. a=merge 2018-02-22 11:59:54 +02:00
Eugen Sawin
0478424983 Bug 1432235 - [1.2] Move GeckoView API classes to org.mozilla.geckoview. r=snorp,jchen 2018-02-22 00:46:26 +01:00
Adrian Wielgosik
9ed001b20f Bug 1439751 - Remove all members from nsIDOMHTMLInputElement. r=qdot
MozReview-Commit-ID: JVagEzvSONN
2018-02-20 23:10:44 +01:00
Valentin Gosu
58b69cefa1 Bug 1435671 - Reduce binary size by making NS_MutateURI.Apply not be a templated method r=mayhemer
We instead add a templated method NS_MutatorMethod that returns a std::function<nsresult(nsIURIMutator*)> which Apply then calls with mMutator as an argument.
The function returned by NS_MutatorMethod performs a QueryInterface, then calls the passed method with arguments on the result.

MozReview-Commit-ID: Jjqp7gGLG1D
2018-02-21 01:00:54 +01:00
nbeleuzu@mozilla.com
b62c960098 Backed out changeset c9dcce0a1068 (bug 1435671) for build bustages on nsIURIMutator.h. CLOSED TREE 2018-02-21 00:06:46 +02:00
Valentin Gosu
e594a13815 Bug 1435671 - Reduce binary size by making NS_MutateURI.Apply not be a templated method r=mayhemer
We instead add a templated method NS_MutatorMethod that returns a std::function<nsresult(nsIURIMutator*)> which Apply then calls with mMutator as an argument.
The function returned by NS_MutatorMethod performs a QueryInterface, then calls the passed method with arguments on the result.

MozReview-Commit-ID: Jjqp7gGLG1D
2018-02-20 22:39:40 +01:00
Dorel Luca
b66668a357 Backed out 9 changesets (bug 1410456) for Mochitest failure on mobile/android/tests/browser/chrome/test_media_playback.html
Backed out changeset 36f6b40dfa88 (bug 1410456)
Backed out changeset 19f3248502d9 (bug 1410456)
Backed out changeset 18ef18999175 (bug 1410456)
Backed out changeset 0ec75a56b4c7 (bug 1410456)
Backed out changeset f7eae1545d5e (bug 1410456)
Backed out changeset d59060ecd24c (bug 1410456)
Backed out changeset f996b9dce4a6 (bug 1410456)
Backed out changeset 1f75636b5bce (bug 1410456)
Backed out changeset c170d37b1a04 (bug 1410456)
2018-02-19 21:45:10 +02:00
Eugen Sawin
5f27330c48 Bug 1410456 - Allow OMT access to Android system audio properties. r=esawin
MozReview-Commit-ID: DQ8ubHECtBQ
2018-02-19 18:28:09 +02:00
Chris Peterson
767d8b1589 Bug 1436263 - Part 3: Remove virtual from final virtual function declarations. r=froydnj
MozReview-Commit-ID: 8pjYjEvQF42
2018-02-08 21:22:43 -08:00
Chris Peterson
6758bf6a84 Bug 1436263 - Part 1: Replace final override virtual function specifiers with just final. r=froydnj
MozReview-Commit-ID: DE5HkIhsZ6D
2018-02-05 22:46:57 -08:00
Boris Zbarsky
be90e72263 Bug 1436902 part 3. Replace usage of NS_IMPL_ISUPPORTS_INHERITED0 with NS_INLINE_DECL_REFCOUNTING_INHERITED when possible. r=mccr8
The change to RootAccessible.cpp fixes an obvious bug introduced in bug 741707.

The visibility changes in gfx/thebes are because NS_DECL_ISUPPORTS has a
trailing "public:" that those classes were relying on to have public
constructors.

MozReview-Commit-ID: IeB8KIJCGhU
2018-02-12 15:44:40 -05:00
Alex Gaynor
e8ab01e333 Bug 1407693 - Part 2 - when a child process crashes, write extra annotation data to a pre-opened file descriptor instead of creating a new file; r=gsvelto,rbarker
This removes the need for the content process to have permissions to create new
files on macOS, allowing more aggressive sandboxing.

MozReview-Commit-ID: 8agL5jwxDSL
2017-11-27 14:37:34 -06:00
Boris Zbarsky
565892490c Bug 1436508 part 16. Remove nsIDOMSimpleGestureEvent. r=masayuki
MozReview-Commit-ID: 8JDovhthKtx
2018-02-09 11:17:10 -05:00
Jim Chen
c11768023b Bug 1428182 - 8. Don't redefine keycodes when using unified headers; r=esawin
The unified headers already define the keycodes in
GeckoEditableSupport.cpp, so only define them ourselves when not using
unified headers (by checking the __ANDROID_API_X__ macros).

MozReview-Commit-ID: 3Ptakcm0rW
2018-01-30 14:08:23 -05:00
Cosmin Sabou
47d4fd2e15 Backed out 11 changesets (bug 1428182) for build bustages on pixman-inlines.h:29:10 on a CLOSED TREE
Backed out changeset 84c767de6202 (bug 1428182)
Backed out changeset 429433caa78c (bug 1428182)
Backed out changeset c576e9d1f68f (bug 1428182)
Backed out changeset 092662eab5eb (bug 1428182)
Backed out changeset 4dd7eaff3ab5 (bug 1428182)
Backed out changeset fbbb0745b139 (bug 1428182)
Backed out changeset 1d1278b289b7 (bug 1428182)
Backed out changeset 55891ffb3768 (bug 1428182)
Backed out changeset 4655e1b1b237 (bug 1428182)
Backed out changeset 377eada51b3c (bug 1428182)
Backed out changeset 17c0e373d921 (bug 1428182)
2018-01-30 01:22:33 +02:00
Jim Chen
1316377d4b Bug 1428182 - 8. Don't redefine keycodes when using unified headers; r=esawin
The unified headers already define the keycodes in
GeckoEditableSupport.cpp, so only define them ourselves when not using
unified headers (by checking the __ANDROID_API_X__ macros).

MozReview-Commit-ID: 3Ptakcm0rW
2018-01-29 17:38:14 -05:00
Nick Alexander
bd263914ea Bug 1419581 - Part 3: Guard PresentationMediaPlayer windows with MOZ_NATIVE_DEVICES. r=jchen
MozReview-Commit-ID: 3ZlVUMufn2g
2018-01-05 11:35:00 -08:00
Nick Alexander
38bcc77d4e Bug 1419581 - Part 2: Guard media Fennec JNI primitives with MOZ_NATIVE_DEVICES. r=jchen
MozReview-Commit-ID: 3NWZ6BL5Tlr
2017-12-06 20:28:04 -08:00
Narcis Beleuzu
d96559aa86 Merge autoland to mozilla-central. a=merge 2018-01-24 23:54:03 +02:00
Brindusan Cristian
40d299f257 Backed out 7 changesets (bug 1419581) as requested by nalexander a=backout
Backed out changeset 7f41dd3bbc2d (bug 1419581)
Backed out changeset d4d42899e5cd (bug 1419581)
Backed out changeset 78828bf781d7 (bug 1419581)
Backed out changeset 5224db0c36aa (bug 1419581)
Backed out changeset 072108d16590 (bug 1419581)
Backed out changeset f8b3e95f18e4 (bug 1419581)
Backed out changeset 5f7645a19bf1 (bug 1419581)
2018-01-24 22:28:19 +02:00
Valentin Gosu
a91ffced35 Bug 1432187 - Change code to use nsIStandardURLMutator.{init,setDefaultPort} r=mayhemer
MozReview-Commit-ID: K2Uy9ET3Ay6
2018-01-24 20:33:02 +01:00
Nick Alexander
a495afbfd9 Bug 1419581 - Part 3: Guard PresentationMediaPlayer windows with MOZ_NATIVE_DEVICES. r=jchen
MozReview-Commit-ID: 3ZlVUMufn2g
2018-01-05 11:35:00 -08:00
Nick Alexander
18871b100d Bug 1419581 - Part 2: Guard media Fennec JNI primitives with MOZ_NATIVE_DEVICES. r=jchen
MozReview-Commit-ID: 3NWZ6BL5Tlr
2017-12-06 20:28:04 -08:00
Louis Chang
365644ae80 Bug 1429307 - return zero padding for checkbox/radio instead of deflating the padding and border on android. r=mats
MozReview-Commit-ID: 1GkPK9ngrH6
2018-01-17 16:24:59 +08:00
Jim Chen
8192363b8c Bug 1430241 - Call PreventNativeKeyBindings for all key events in child; r=esawin
Call PreventNativeKeyBindings() for all key events to prevent triggering
an assertion in PuppetWidget.

MozReview-Commit-ID: 3x96p9baTze
2018-01-19 17:52:27 -05:00
Ryan VanderMeulen
e8c58c5f80 Backed out 7 changesets (bug 1419581) for incorrect android:debuggable. r=nalexander
Backed out changeset bd1e3857b5ba (bug 1419581)
Backed out changeset be888fa125dc (bug 1419581)
Backed out changeset 44bcb609e721 (bug 1419581)
Backed out changeset a7d75667c58b (bug 1419581)
Backed out changeset 2ea82ff4a757 (bug 1419581)
Backed out changeset 8f1655752d43 (bug 1419581)
Backed out changeset 65195aae48d8 (bug 1419581)
2018-01-17 15:54:22 -05:00
Nick Alexander
80764e64e7 Bug 1419581 - Part 3: Guard PresentationMediaPlayer windows with MOZ_NATIVE_DEVICES. r=jchen
MozReview-Commit-ID: 3ZlVUMufn2g
2018-01-05 11:35:00 -08:00
Nick Alexander
d1a131a9e7 Bug 1419581 - Part 2: Guard media Fennec JNI primitives with MOZ_NATIVE_DEVICES. r=jchen
MozReview-Commit-ID: 3NWZ6BL5Tlr
2017-12-06 20:28:04 -08:00