Commit Graph

213 Commits

Author SHA1 Message Date
Sebastian Kaspari
fa692716a6 [components] Issue https://github.com/mozilla-mobile/android-components/issues/7123: (Merge day) browser-engine-gecko-beta (77) -> browser-engine-gecko (77) 2020-06-02 16:35:30 +02:00
Jonathan Almeida
4a7562291a [components] Issue https://github.com/mozilla-mobile/android-components/issues/7164: Do not complete WebPush responses exceptionally
With the previous patch, we fixed a bug where we need to check if a
subscription exists. This new (correct) behaviour broke our original
implementation of how to handle the null case in the engine.
2020-05-29 16:17:43 -04:00
ekager
53bfb5184d [components] For https://github.com/mozilla-mobile/android-components/issues/7132 - Update to new Autocomplete API 2020-05-27 14:58:44 -04:00
Tiger Oakes
ecbbc64d60 [components] Closes https://github.com/mozilla-mobile/android-components/issues/7023 - Add HistoryState to content state 2020-05-22 09:56:22 -07:00
Arturo Mejia
b301d8315f [components] Closes https://github.com/mozilla-mobile/android-components/issues/6917: Remove unused manual disabling of tracking protection 2020-05-21 16:52:17 -04:00
ekager
efaa39ca49 [components] Adds MediaFullscreenOrientationFeature 2020-05-19 16:13:48 +02:00
ekager
13a8e25103 [components] For https://github.com/mozilla-mobile/android-components/issues/6757 - Adds firstContentfulPaint callback and var to session 2020-05-13 20:44:34 -07:00
Jan-Erik Rediger
d5fa8c41b9 [components] Apply yamllint suggestions
That mostly adds the missing document begin marker (`---`) and removes
some trailing whitespace.
2020-05-11 14:25:30 +02:00
Sebastian Kaspari
d864812550 [components] Issue https://github.com/mozilla-mobile/android-components/issues/6872: (Merge day) browser-engine-gecko-beta (76) -> browser-engine-gecko (76) 2020-05-05 13:57:11 +02:00
Arturo Mejia
daf9e444c9 [components] Closes https://github.com/mozilla-mobile/android-components/issues/6851 improve social tracks categorization 2020-05-04 12:13:05 -04:00
Jonathan Almeida
b86fa6dfb5 [components] Close https://github.com/mozilla-mobile/android-components/issues/6601: Update targetSdkVersion to 29 2020-04-28 03:16:54 -04:00
MozLando
5ddc51cd59 [components] Merge https://github.com/mozilla-mobile/android-components/pull/6663
6663: Closes https://github.com/mozilla-mobile/android-components/issues/6228: Expose allowedInPrivateBrowsing control r=Amejia481,csadilek a=psymoon



Co-authored-by: Simon Chae <chaesmn@gmail.com>
2020-04-20 19:56:44 +00:00
Simon Chae
b28f7f286e [components] Closes https://github.com/mozilla-mobile/android-components/issues/6228: Expose allowedInPrivateBrowsing control 2020-04-20 15:55:40 -04:00
Christian Sadilek
91bd857570 [components] Closes https://github.com/mozilla-mobile/android-components/issues/6659: Awesomebar causes content resize which delays subsequent pageload 2020-04-16 18:13:16 -04:00
MozLando
129b57f999 [components] Merge https://github.com/mozilla-mobile/android-components/pull/6645
6645: Closes https://github.com/mozilla-mobile/android-components/issues/5748: Provide API to cancel add-on installation r=Amejia481,psymoon a=csadilek

This is working but ran into a crash that happens when cancelling too late (after the extension was downloaded but before it was installed): https://bugzilla.mozilla.org/show_bug.cgi?id=1629952

So, let's not wire up the UI just yet: https://github.com/mozilla-mobile/android-components/issues/6644

Notes:
- We may eventually turn the returned operation into a full `CompletableFuture`-like type that supports `cancel` as well, and remove our callbacks, but this is a pretty big refactoring that I am not fully convinced of yet :)
- Cancel returns another `GeckoResult` to indicate if cancellation worked, which I am wrapping in a `Deferred` so we can `await` on it and prevent another round of callbacks. This works out quite well in the UI: 1dbbd7eba0

Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2020-04-14 18:54:01 +00:00
Christian Sadilek
07acb2f5dc [components] Closes https://github.com/mozilla-mobile/android-components/issues/5748: Provide API to cancel add-on installation 2020-04-14 13:35:57 -04:00
Sebastian Kaspari
9312a769b8 [components] Issue https://github.com/mozilla-mobile/android-components/issues/6580: Do not launch media service for muted media.
Co-authored-by: Caleb Everett <everett.caleb@gmail.com>
2020-04-08 16:28:35 +02:00
Sebastian Kaspari
c1d6b32f04 [components] Issue https://github.com/mozilla-mobile/android-components/issues/6492: (Merge day) browser-engine-gecko-beta (75) -> browser-engine-gecko (75) 2020-04-07 19:25:40 +02:00
MozLando
5b6ddff60d [components] Merge https://github.com/mozilla-mobile/android-components/pull/6475
6475: Closes https://github.com/mozilla-mobile/android-components/issues/6314: Support fetching / downloading data URIs r=Amejia481,pocmo a=csadilek

With this we can fetch from data URIs and downloads "just work" (we don't require any special handling). So, e.g. this works now (which is also used by uBlock to save backups):

```html
<a href="data:text/plain;base64,SGVsbG8sIFdvcmxkIQ==" download="backup.txt">Backup</a>
```
08d370d32e/platform/chromium/vapi-common.js (L172)

GV didn't want to add API for it so I took a stab at adding this to our fetch libs: https://github.com/mozilla-mobile/android-components/issues/6314#issuecomment-606278886

@pocmo can you take a look since we looked at download stuff today :). I've time-boxed this and limited to base64 encoded URIs. The device and unit tests pass and the download works / can be tested here:

https://jsfiddle.net/nue9rg0L/2/

Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2020-04-02 18:25:20 +00:00
Christian Sadilek
b8ab3fdcf3 [components] Closes https://github.com/mozilla-mobile/android-components/issues/6314: Support fetching / downloading data URIs 2020-04-02 10:44:52 -04:00
Mugurell
28fa5298dd [components] For https://github.com/mozilla-mobile/android-components/issues/3182 - Separate behaviours depending on user's MotionEvents
There are currently 3 Views interested in handling user's MotionEvents:
- GeckoView which renders web content
- SwipeRefreshLayout which handles pull down to refresh
- BrowserToolbar which can be dynamically hidden

Each of them have different behaviours based on different conditions so I
- removed the coupling of BrowserToolbar and Geckoview from `NestedGeckoView`.
It's `onTouchEventForResult` will now only set behaviour for GeckoView.
- created a new EngineView enum to expose the `PanZoomController` possible
result of how a specific user touch was handled to any components that have a
reference to an instance of EngineView without the need to have
`concept-engine` as a dependency.
- implemented specific behaviour in `SwipeRefreshFeature` for the pull down to
refresh functionality and in the `BrowserToolbarBottomBehavior` for the dynamic
navigation bar functionality.

Mapped PanZoomController's INPUT_RESULT to a new enum in order to not enforce
the need of including geckoview as a dependency in all components interested in
how a user's `MotionEvent` was handled and also because webview doesn't expose
such values so we needed a wrapper for it's handled or not boolean return.
2020-04-01 17:39:24 +03:00
Sebastian Kaspari
2f36855bde [components] Closes https://github.com/mozilla-mobile/android-components/issues/6297: GeckoEngineView: Detach SelectionActionDelegate if session is no longer rendered.
Our sample browser smoke tests revealed a memory leak (https://github.com/mozilla-mobile/android-components/issues/6297). We attach a selection action delegate on
GeckoSession but we never clear it. This leads to us leaking GeckoEngineView and its Context/Activity
since the GeckoSession usually lives longer than any views.

Internally GeckoSession attaches and detaches its own selection delegate (since it also has a reference
to the activity). We are now doing the same if we are using a custom delegate.
2020-03-31 10:33:28 +02:00
Gabriel Luong
2498983b5d [components] Closes https://github.com/mozilla-mobile/android-components/issues/6352: Add contextId to BrowserState 2020-03-28 00:09:42 -04:00
MozLando
b0fdaf33af [components] Merge https://github.com/mozilla-mobile/android-components/pull/6244 https://github.com/mozilla-mobile/android-components/pull/6343 (part 1)
6244: For https://github.com/mozilla-mobile/android-components/issues/6242: Updates nestedScrolling handling r=pocmo a=sblatz



6343: Fix build of ui-test docker image r=rpappalax a=JohanLorenzo



Co-authored-by: Sawyer Blatz <sdblatz@gmail.com>
Co-authored-by: Johan Lorenzo <jlorenzo@mozilla.com>
2020-03-25 16:13:54 +00:00
Christian Sadilek
f78c6c38e8 [components] For https://github.com/mozilla-mobile/android-components/issues/2985: Expose base URL for web extension pages 2020-03-23 18:24:04 -04:00
Edouard Oger
8fb34a89da [components] Closes https://github.com/mozilla-mobile/android-components/issues/6012: Run the FxA extension on non-prod servers 2020-03-17 15:37:00 -04:00
Sawyer Blatz
9f1070e4cf [components] For https://github.com/mozilla-mobile/android-components/issues/6242: Updates nestedScrolling handling 2020-03-17 12:22:16 -07:00
MozLando
61ba8e6572 [components] Merge https://github.com/mozilla-mobile/android-components/pull/6182 https://github.com/mozilla-mobile/android-components/pull/6197 https://github.com/mozilla-mobile/android-components/pull/6270 https://github.com/mozilla-mobile/android-components/pull/6286 (part 3)
6182: https://github.com/mozilla-mobile/android-components/issues/3832: Add support for additional headers when loading url r=pocmo a=psymoon



6197: Import strings from android-l10n. r=jonalmeida a=mozilla-l10n-automation-bot

n/t

6270: For https://github.com/mozilla-mobile/android-components/issues/6269: Notify active sessions when all exceptions are removed. r=Amejia481 a=ValentinTimisica

I also updated the tests accordingly.
Made this change because the tracking protection icon is not updated after the
exceptions are removed.




6286: Closes https://github.com/mozilla-mobile/android-components/issues/6281: Do not automatically dismiss confirm dialogs r=Amejia481 a=csadilek

The feature to automatically dismiss can maybe be made more robust to not be affected by lifecycle changes (https://github.com/mozilla-mobile/android-components/issues/6281#issuecomment-599739212), but in either case we don't want to automatically dismiss confirmation dialogs, as these require user interaction before the next page load anyway.

Similar fix to: https://github.com/mozilla-mobile/android-components/pull/5704/

Co-authored-by: Simon Chae <chaesmn@gmail.com>
Co-authored-by: Mozilla L10n Automation Bot <release+l10n-automation-bot@mozilla.com>
Co-authored-by: ValentinTimisica <valentin.timisica@softvison.ro>
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2020-03-17 17:18:11 +00:00
Simon Chae
3e0d4de23a [components] Issue https://github.com/mozilla-mobile/android-components/issues/3832: Add support for additional headers when loading url 2020-03-17 10:28:19 -04:00
ValentinTimisica
805deaa8b1 [components] For https://github.com/mozilla-mobile/android-components/issues/6269: Notify active sessions when all exceptions are removed.
I also updated the tests accordingly.
Made this change because the tracking protection icon is not updated after the
exceptions are removed.
2020-03-17 12:58:29 +02:00
codrut.topliceanu
b10be65d61 [components] For https://github.com/mozilla-mobile/android-components/pull/7632 - EngineObserver clear searchTerms when navigating back 2020-03-11 10:47:38 +02:00
Christian Sadilek
ae53933ec5 [components] Closes https://github.com/mozilla-mobile/android-components/issues/4965: Refactoring to use new GV tab delegate for web extensions 2020-03-09 17:50:46 -04:00
MozLando
f15ed775f6 [components] Merge https://github.com/mozilla-mobile/android-components/pull/6165
6165: Closes https://github.com/mozilla-mobile/android-components/issues/6162: Provide API to speculatively create engine session r=pocmo a=csadilek

See https://github.com/mozilla-mobile/android-components/issues/6162#issuecomment-594093161.

Another advantage of decoupling this from `speculativeConnect` is that we can also handle private sessions. Applied to all 3 engine variants.  

Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2020-03-05 18:01:46 +00:00
Christian Sadilek
03cbd104b4 [components] Closes https://github.com/mozilla-mobile/android-components/issues/6162: Provide API to speculatively create engine session 2020-03-05 11:39:06 -05:00
Sebastian
368fde8f01 [components] Closes https://github.com/mozilla-mobile/android-components/issues/6180: Update browser-engine-gecko to GeckoView 74 RC2. 2020-03-05 17:32:52 +01:00
Simon Chae
100239143b [components] Closes https://github.com/mozilla-mobile/android-components/issues/6018: Do not load url during link if session is restored 2020-03-02 14:28:48 -05:00
Roger Yang
1af7864fad [components] Closes https://github.com/mozilla-mobile/android-components/issues/4021: Use save image candidate be used with video and audio elements 2020-02-28 11:20:16 -05:00
Jonathan Almeida
e219b970db [components] Closes https://github.com/mozilla-mobile/android-components/issues/6061: Complete callback on push subscription failures 2020-02-25 01:57:26 -05:00
Severin Rudie
00f4dfb880 [components] For https://github.com/mozilla-mobile/android-components/issues/6027, https://github.com/mozilla-mobile/fenix/issues/8411: remove deprecated Gecko autoplay runtime setting 2020-02-21 15:41:50 -08:00
Severin Rudie
af2f06b699 [components] For https://github.com/mozilla-mobile/android-components/issues/6027, https://github.com/mozilla-mobile/fenix/issues/8411: add support for autoplay site perms + fix related crash 2020-02-21 11:41:59 -08:00
Sawyer Blatz
7736829c1c [components] Fixes https://github.com/mozilla-mobile/android-components/issues/5978: Ensures captureThumbnail always executes callback 2020-02-18 16:00:06 -08:00
MickeyMoz
a7d7f1578c [components] Update GeckoView (release) (20200218-140918) 2020-02-18 14:15:45 +00:00
Severin Rudie
5b868c9ca0 [components] For https://github.com/mozilla-mobile/fenix/issues/5695: adds '{app} Search' to text selection context menu 2020-02-14 08:40:46 -08:00
Jonathan Almeida
5669499412 [components] Issue https://github.com/mozilla-mobile/android-components/issues/5873: (Merge day) browser-engine-gecko-beta (73) -> browser-engine-gecko (73) 2020-02-12 14:57:31 -05:00
MozLando
2cdbebd3ba [components] Merge https://github.com/mozilla-mobile/android-components/pull/5877
5877: Closes https://github.com/mozilla-mobile/android-components/issues/5875: onTitleChange blocking on history storage write r=grigoryk,pocmo a=csadilek

Looking through other call-sites, this seems save to move to an IO thread esp., as it writes to storage. We also already have a custom scope in the engine session which I am using here.

Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2020-02-11 15:10:11 +00:00
Christian Sadilek
97a8b9b896 [components] Closes https://github.com/mozilla-mobile/android-components/issues/5875: onTitleChange blocking on history storage write 2020-02-10 17:20:43 -05:00
Manuel Martin
e8224ba25b [components] WebExtensions refactor 2020-02-10 11:18:50 +01:00
Sawyer Blatz
f0f6d47247 [components] For https://github.com/mozilla-mobile/android-components/issues/2689: Refactors Error Pages to allow images
Co-authored-by: James Willcox <snorp@snorp.net>
Co-authored-by: Agi Sferro <agi@sferro.dev>
2020-01-21 11:18:14 -08:00
MozLando
404862af84 [components] Merge https://github.com/mozilla-mobile/android-components/pull/5642
5642: Closes https://github.com/mozilla-mobile/android-components/issues/5632 https://github.com/mozilla-mobile/android-components/issues/4699 Improve tracking protection use cases to delete individual exceptions. r=csadilek a=Amejia481




Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
2020-01-21 00:20:49 +00:00
Christian Sadilek
70570d5ac2 [components] Issue https://github.com/mozilla-mobile/android-components/issues/4470: Wire up API for page action support
- This is basically just a copy of our browser action API, with some
refactoring to make some types and methods generic
2020-01-20 17:41:21 -05:00