Commit Graph

28142 Commits

Author SHA1 Message Date
John Lin
2441080e34 Bug 1542440 - Recycle sample directly rather than through CodecProxy. r=jya
mJavaDecoder is invalid after the decoder is shut down and should never
be used.

Differential Revision: https://phabricator.services.mozilla.com/D26438

--HG--
extra : moz-landing-system : lando
2019-04-08 09:16:20 +00:00
Avery Berninger
fa0b54611b Bug 1523741 - Converting legacy aboutTelemetry to Fluent aboutTelemetry, r=jaws,flod,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D20417

--HG--
extra : moz-landing-system : lando
2019-04-08 09:15:16 +00:00
Makoto Kato
7b1052018a Bug 1530486 - FFTV+GV can't close Keyboard popup when pressing hardware back r=esawin
`EditorInfo.IME_ACTION_PREVIOUS` is used when clicking `Previous` key on FireTV's software keyboard.  This key on System's WebView closes software keyboard and doesn't generate any keyboard event such as `ENTER`. So we should close it like System's WebView.

Differential Revision: https://phabricator.services.mozilla.com/D25913

--HG--
extra : moz-landing-system : lando
2019-04-05 11:31:08 +00:00
Cosmin Sabou
2174454bff Backed out changeset 7e40ec0c948d (bug 1523741) for telemetry failures on aboutTelemetry.homeSection. 2019-04-06 20:44:55 +03:00
Avery Berninger
09dac60807 Bug 1523741 - Converting legacy aboutTelemetry to Fluent aboutTelemetry, r=jaws,flod,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D20417

--HG--
extra : moz-landing-system : lando
2019-04-06 00:54:52 +00:00
John Lin
e86d5d39e0 Bug 1540036 - p2: Check buffer and codec state before processing buffers. r=jya
HandleOutput() runs on Android binder thread pool and could be preempted
by RemoteDateDecoder task queue. That means ProcessOutput() could be scheduled
after ProcessShutdown() or ProcessFlush(). When that happens, aBuffer is no
long valid and should never be processed, and aSample can be
recycled immediately.
Also assert preconditions of buffers received from Java callbacks.

Differential Revision: https://phabricator.services.mozilla.com/D26189

--HG--
extra : moz-landing-system : lando
2019-04-05 21:01:56 +00:00
John Lin
fa9a0bc673 Bug 1540036 - p1: Handle buffer change for flush(). r=jya
When remote codec executes flush(), it throws away existing buffers:
- memorized buffers are no longer valid and need to be forgotten
- samples returned before flush() will have null buffers and should
  be released back to remote codec immediately.

Differential Revision: https://phabricator.services.mozilla.com/D26188

--HG--
extra : moz-landing-system : lando
2019-04-05 20:00:21 +00:00
Randall E. Barker
a7ed7c515a Bug 1531531 - Update GeckoView API implementation to use scrollToVisual() in place of window.scrollTo() r=geckoview-reviewers,botond,esawin,droeh
Differential Revision: https://phabricator.services.mozilla.com/D25491

--HG--
extra : moz-landing-system : lando
2019-04-05 20:09:55 +00:00
Makoto Kato
b2f37b7aad Bug 1474902 - Part 1. Set event time when translating to TAB key r=esawin
Summary:
Since event time isn't set when translating ENTER key to TAB key, comparing
event time hits an assertion.  So event time should be set.

Reviewers: esawin

Reviewed By: esawin

Bug #: 1474902

Differential Revision: https://phabricator.services.mozilla.com/D12883

--HG--
extra : rebase_source : 0d00bb0364b77b48645143ceb7eb20cad8663d48
extra : histedit_source : 44be4949d5d196458fa3b5ae3eb056340cf8575d
2019-04-05 16:59:47 +09:00
Makoto Kato
20f0f47eda Bug 1539827 - Use cmd_selectAll instead of nsISelectionController.selectAll on action bar r=geckoview-reviewers,esawin
After bug 676268 is landed, Gecko/Android supports `text/html` mime type on
clipboard. But copy command is sometimes failed after select all is executed.

`nsISelectionContoller.selectAll` is different of `cmd_selectAll`.
Since `cmd_selectAll` that is used on Firefox desktop doesn't select root
element, copy command always works well. So we should use it like desktop
browser on Fennec.

Also, GV already uses cmd_selectAll on action bar, so this is Fennec only.

Differential Revision: https://phabricator.services.mozilla.com/D25924

--HG--
extra : moz-landing-system : lando
2019-04-03 15:15:03 +00:00
Thomas Wisniewski
3c0b32cd63 Bug 1539916 - Update about:compat to show the proper URL and fix page-refresh glitches; r=kmag
Update about:compat to show the proper URL and fix page-refresh glitches

Differential Revision: https://phabricator.services.mozilla.com/D25487

--HG--
extra : moz-landing-system : lando
2019-04-04 23:47:03 +00:00
Agi Sferro
7409bb591e Bug 1542005 - Fix javadoc error in GeckoSession. r=geckoview-reviewers,rbarker
Differential Revision: https://phabricator.services.mozilla.com/D26219

--HG--
extra : moz-landing-system : lando
2019-04-04 18:56:40 +00:00
Nick Alexander
5fa2d6f5cf Bug 1533385 - Make GeckoView read configuration options from filesystem. r=droeh
The configuration file format is YAML and looks like:
```
prefs:
  foo.bar.boolean: true
  foo.bar.string: "string"
  foo.bar.int: 500
env:
  MOZ_LOG: nsHttp:5
args: [--marionette]
```
By default, if the consuming App is debuggable, GeckoView will read
configuration from `/data/local/tmp/$PACKAGE-geckoview-config.yaml` at
startup.

For consumers (including browsers) that want to allow the underlying
GeckoView to be remote controlled in some way, the
`GeckoRuntimeSettings.Builder.configFilePath()` method allows to avoid
the default behaviour depending on the `android:debuggable` flag.  For
example, release versions of Firefox for Android will want to allow
this configuration when appropriate App-level settings are toggled.

The additional configuration is appended after any existing configuration
methods, e.g., after anything specified using Intent argument extras
or existing `GeckoRuntimeSettings.Builder` methods.

Differential Revision: https://phabricator.services.mozilla.com/D25885

--HG--
extra : moz-landing-system : lando
2019-04-04 14:30:59 +00:00
Ciure Andrei
4116e08315 Merge inbound to mozilla-central. a=merge 2019-04-04 07:34:14 +03:00
Andreea Pavel
ebce4e7134 Backed out changeset 91b055c0dadb (bug 1533385) for breaking gv-junit at org.mozilla.geckoview.test on a CLOSED TREE 2019-04-04 04:28:47 +03:00
Nick Alexander
b03aa4ed38 Bug 1533385 - Make GeckoView read configuration options from filesystem. r=droeh
The configuration file format is YAML and looks like:
```
prefs:
  foo.bar.boolean: true
  foo.bar.string: "string"
  foo.bar.int: 500
env:
  MOZ_LOG: nsHttp:5
args: [--marionette]
```
By default, if the consuming App is debuggable, GeckoView will read
configuration from `/data/local/tmp/$PACKAGE-geckoview-config.yaml` at
startup.

For consumers (including browsers) that want to allow the underlying
GeckoView to be remote controlled in some way, the
`GeckoRuntimeSettings.Builder.configFilePath()` method allows to avoid
the default behaviour depending on the `android:debuggable` flag.  For
example, release versions of Firefox for Android will want to allow
this configuration when appropriate App-level settings are toggled.

The additional configuration is appended after any existing configuration
methods, e.g., after anything specified using Intent argument extras
or existing `GeckoRuntimeSettings.Builder` methods.

Differential Revision: https://phabricator.services.mozilla.com/D25885

--HG--
extra : moz-landing-system : lando
2019-04-03 23:51:17 +00:00
Nick Alexander
13610b62ba Bug 1522318 - Wait for Java debugger when MOZ_DEBUG_{CHILD_}WAIT_FOR_JAVA_DEBUGGER. r=esawin
Set `MOZ_DEBUG_WAIT_FOR_JAVA_DEBUGGER=1` in the environment to make the
main (Gecko) process wait for a Java debugger to connect.  This is a
superset of Android Studio's built-in debugging support so it won't be
particularly useful, but perhaps some folks want to use a different
jdwp debugger.

Set `MOZ_DEBUG_CHILD_WAIT_FOR_JAVA_DEBUGGER=suffix` in the environment
to make child processes wait for a Java debugger to connect.  This is
not easy in Android Studio.

The value ":tab" will make any child process with a process name with
suffix ":tab" wait.  N.b., the empty string "" is a suffix of all
process names and thus `MOZ_DEBUG_CHILD_WAIT_FOR_JAVA_DEBUGGER=` makes
all child processes wait.

Differential Revision: https://phabricator.services.mozilla.com/D25299

--HG--
extra : moz-landing-system : lando
2019-04-03 16:51:09 +00:00
Dennis Schubert
bf01bf0d29 Bug 1541211 - Remove existing UA overrides from ua-update.json.in. r=miketaylr
Differential Revision: https://phabricator.services.mozilla.com/D25920

--HG--
extra : moz-landing-system : lando
2019-04-03 14:41:59 +00:00
Matt Brubeck
c8269c5fcc Bug 1529972 - Add GeckoView API to control CSS prefers-color-scheme query. r=esawin,geckoview-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D24943

--HG--
extra : moz-landing-system : lando
2019-04-01 17:44:39 +00:00
Agi Sferro
0578d20e29 Bug 1538760 - Parse all output from checkstyle. r=nalexander
Previously |mach android checkstyle| would only parse one file output form
checkstyle (the app one).

This change makes it so it parses all files, also it reduces noise by
suppressing most output when the test passes.

Differential Revision: https://phabricator.services.mozilla.com/D24737

--HG--
extra : moz-landing-system : lando
2019-04-01 16:20:28 +00:00
Kris Maglione
b7a2002847 Bug 1538643: Fix unintended removal of FxAccountsPush from Android install manifest. r=backout
--HG--
extra : amend_source : 138208b8849e8bb67d1b66af71674c1c061623d0
2019-03-30 13:50:17 -07:00
Kris Maglione
1328b01d50 Bug 1525762: Part 6 - Stop dispatching theme change observers using JSON strings. r=aswan
Differential Revision: https://phabricator.services.mozilla.com/D24795

--HG--
extra : rebase_source : 67c14ffc0cc46c041617ae04d39107dd66949f88
extra : histedit_source : 51973c82f0014767c2ae947a00cdb7afe9478c35
2019-03-25 13:52:01 -07:00
Kris Maglione
6d78820c90 Bug 1525762: Part 3e - Get rid of LWTManager theme management code. r=aswan
--HG--
extra : rebase_source : 1dc3cc062f7ef0ce8c80822251b31dbf9cc8f133
extra : histedit_source : 0beb1de14bd4603fa34e7fa8a7178582e3e7d71f
2019-02-08 14:48:54 -08:00
Noemi Erli
73e1da0906 Merge inbound to mozilla-central. a=merge 2019-03-30 11:32:42 +02:00
Chris Manchester
324a762ea1 Bug 1535364 - Turn off jarlog re-ordering for Android PGO due to problems publishing APKs. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D25492

--HG--
extra : moz-landing-system : lando
2019-03-30 02:09:18 +00:00
Oana Pop Rus
a16538cfd6 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-03-30 00:11:11 +02:00
L10n Bumper Bot
4ecd91e12a no bug - Bumping Fennec l10n changesets r=release a=l10n-bump DONTBUILD
as -> removed
en-ZA -> removed
mai -> removed
or -> removed
2019-03-29 22:00:30 +00:00
Oana Pop Rus
a759d6f62b Merge inbound to mozilla-central. a=merge 2019-03-29 23:54:39 +02:00
Frederik Braun
092461b9a3 Bug 1512511 - Remove extra-privileges for input.mozilla.org. r=Gijs,MattN
There are domains that we give extra permissions.
Those should be hosted and operated by Firefox.
input.mozilla.org isn't and it also doesnt use extra permissions anymore.

Differential Revision: https://phabricator.services.mozilla.com/D13948

--HG--
extra : rebase_source : be9879b6f89ee6979975e697e052220fc839785e
extra : amend_source : 8a45cbbeadcda306313034ac22d6f43612780e3a
2019-03-29 12:47:21 -07:00
Francesco Lodolo (:flod)
7fbff6df10 Bug 1535300 - Remove locales from Nightly and Beta build of Fennec (as, en-ZA, mai, or) r=Callek
Differential Revision: https://phabricator.services.mozilla.com/D25362

--HG--
extra : moz-landing-system : lando
2019-03-29 17:01:37 +00:00
Emily Toop
d75296da81 Bug 1532582 - Display autofill popup in correct location.
This autofill popover was being displayed in the incorrect place because the display rect we were providing to the `AutofillManager` was the rect for the `GeckoView` and not the rect for the HTML element that the autofill popover was relating to.

1. Add view dimensions to info passed to autofill in `GeckoViewAutoFill`.
2. Use those view dimensions to calculate the correct location on the screen using `pageToScreenMatrix` in `GeckoSession`.

The resulting locations were incorrect, as the values used by `pageToScreenMatrix` were out of date. The `GeckoSession` was only notified about updated metrics during first composite, which meant that when the metrics changed during zoom and scroll on soft keyboard presentation, `GeckoSession` was unaware of it.

3. Update `GeckoSession` with new screen metrics when they change and not only during first composite.

Despite this change ensuring that `GeckoSession` always had the correct values for the viewport size and location, the request to provide the autofill location was made before the zoom and scroll was complete, meaning that even then out of date values were used during the calculation. The intial solution was to fire an event once zoom was complete, but despite this event being fired after the new screen size had been calculcated in `AsyncCompositionManager`, `GeckoSession` did not receive the values until after the event had been processed (the calls were out by 0.024ms).

5. Call new method `onScreenMetricsUpdated` inside `SessionTextInput` after screen metrics have been updated. Call `AutofillManager#notifyViewEntered` from this function.

This was not my preferred solution to this, but timing issues meant I could not find/think of an alternative way of delaying the calculation of the autofill popover location until after `GeckoSession` had been updated.

This patch currently fixes things on GV apps. Occasionally, on Fennec, the autofill view is out of alignment slightly. This needs further work.

Differential Revision: https://phabricator.services.mozilla.com/D25406

--HG--
extra : moz-landing-system : lando
2019-03-29 15:25:42 +00:00
Dorel Luca
a91d673cd5 Backed out changeset b6f5942c42bb (bug 1532582) for Eslint failure. CLOSED TREE 2019-03-29 16:37:21 +02:00
Emily Toop
65bf84e5c6 Bug 1532582 - Display autofill popup in correct location. r=geckoview-reviewers,snorp,kats
This autofill popover was being displayed in the incorrect place because the display rect we were providing to the `AutofillManager` was the rect for the `GeckoView` and not the rect for the HTML element that the autofill popover was relating to.

1. Add view dimensions to info passed to autofill in `GeckoViewAutoFill`.
2. Use those view dimensions to calculate the correct location on the screen using `pageToScreenMatrix` in `GeckoSession`.

The resulting locations were incorrect, as the values used by `pageToScreenMatrix` were out of date. The `GeckoSession` was only notified about updated metrics during first composite, which meant that when the metrics changed during zoom and scroll on soft keyboard presentation, `GeckoSession` was unaware of it.

3. Update `GeckoSession` with new screen metrics when they change and not only during first composite.

Despite this change ensuring that `GeckoSession` always had the correct values for the viewport size and location, the request to provide the autofill location was made before the zoom and scroll was complete, meaning that even then out of date values were used during the calculation. The intial solution was to fire an event once zoom was complete, but despite this event being fired after the new screen size had been calculcated in `AsyncCompositionManager`, `GeckoSession` did not receive the values until after the event had been processed (the calls were out by 0.024ms).

5. Call new method `onScreenMetricsUpdated` inside `SessionTextInput` after screen metrics have been updated. Call `AutofillManager#notifyViewEntered` from this function.

This was not my preferred solution to this, but timing issues meant I could not find/think of an alternative way of delaying the calculation of the autofill popover location until after `GeckoSession` had been updated.

This patch currently fixes things on GV apps. Occasionally, on Fennec, the autofill view is out of alignment slightly. This needs further work.

Differential Revision: https://phabricator.services.mozilla.com/D24397

--HG--
extra : moz-landing-system : lando
2019-03-29 12:49:26 +00:00
Petru Lingurar
ca307a61f1 Bug 1506231 - Top Sites tiles will show only one site for the same base url; r=JanH
Differential Revision: https://phabricator.services.mozilla.com/D24487

--HG--
extra : moz-landing-system : lando
2019-03-29 07:57:51 +00:00
Csoregi Natalia
c426d9feea Merge mozilla-central to autoland. CLOSED TREE 2019-03-29 07:28:47 +02:00
L10n Bumper Bot
ce03c323ae no bug - Bumping Fennec l10n changesets r=release a=l10n-bump DONTBUILD
bn -> default
bn-BD -> removed
bn-IN -> removed
2019-03-29 05:00:29 +00:00
James Willcox
73c7980cb9 Bug 1536044 - Fully disable jacoco builds for Android r=agi
Differential Revision: https://phabricator.services.mozilla.com/D25216

--HG--
extra : moz-landing-system : lando
2019-03-28 20:26:45 +00:00
Geoff Brown
322688e83f Bug 1519580 - Skip test_session_scroll_visual_viewport.html on android/pgo; r=jmaher
Skip mochitest-chrome test failing frequently on android/pgo. This directory of tests
only runs on Android 4.3, so the manifest annotation is simple.

Discussed in bug; see comment 17.

Differential Revision: https://phabricator.services.mozilla.com/D25274

--HG--
extra : moz-landing-system : lando
2019-03-28 19:01:32 +00:00
John Lin
364290c746 Bug 1308405 - p5: Memorize sample buffers in CodecProxy. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D24591

--HG--
extra : moz-landing-system : lando
2019-03-28 18:06:25 +00:00
John Lin
c668fd7d06 Bug 1308405 - p4: Separate buffer from sample object. r=snorp
To prevent new buffer object from being created per frame, either
Sample.CREATOR has to keep track of all buffers from every remote codec,
or the client must memorize seen buffers and avoid asking for them again
and again. The former saves client code from modifications but complicates
the implementation of Sample, a data structure class, while the latter
requires changes to client code but avoid overcomplicating Sample.CREATOR
implementation.

The 2nd approach is taken:
- move SampleBuffer out of Sample, and update clients accordingly
- add a new IPC method for clients to get the buffers only when needed

Differential Revision: https://phabricator.services.mozilla.com/D24590

--HG--
extra : moz-landing-system : lando
2019-03-28 18:06:23 +00:00
John Lin
529784a956 Bug 1308405 - p3: Use sample buffer class directly. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D24589

--HG--
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/SharedMemBuffer.java => mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/SampleBuffer.java
extra : moz-landing-system : lando
2019-03-28 18:06:19 +00:00
John Lin
385270e9ab Bug 1308405 - p2: Nodify and recycle sample objects. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D24588

--HG--
extra : moz-landing-system : lando
2019-03-28 18:05:08 +00:00
James Willcox
781081cb06 Bug 1538702 - Allow recreating GeckoSession.SessionState from String r=geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D24709

--HG--
extra : moz-landing-system : lando
2019-03-28 16:52:42 +00:00
Brindusan Cristian
b2d1b1aad3 Backed out changeset fc86bfeadfde (bug 1538702) as requested by snorp on irc for causing a merge conflict. 2019-03-28 18:52:37 +02:00
James Willcox
af5af0a0d1 Bug 1538702 - Allow recreating GeckoSession.SessionState from String r=geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D24709

--HG--
extra : moz-landing-system : lando
2019-03-28 16:42:29 +00:00
Francesco Lodolo (:flod)
df64b4e33f Bug 1538734 - Add Bengali (bn) to single and multilocales builds, remove bn-BD and bn-IN r=Callek
Differential Revision: https://phabricator.services.mozilla.com/D24722

--HG--
extra : moz-landing-system : lando
2019-03-28 13:13:26 +00:00
Francesco Lodolo (:flod)
f26673372a Bug 1539620 - Add a brand product string that doesn't change across different channels r=Pike
Differential Revision: https://phabricator.services.mozilla.com/D25193

--HG--
extra : moz-landing-system : lando
2019-03-28 11:44:41 +00:00
Oana Pop Rus
226e6c59d9 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-03-28 12:23:56 +02:00
Oana Pop Rus
47e94b5d6e Merge inbound to mozilla-central. a=merge 2019-03-28 12:11:35 +02:00
Mark Banner
dba6983e75 Bug 1415265 - Remove now unnecessary .eslintrc.js files or entries. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D23850

--HG--
extra : moz-landing-system : lando
2019-03-28 09:38:14 +00:00