Commit Graph

199 Commits

Author SHA1 Message Date
Christian Sadilek
8777fc0c62 [components] Closes https://github.com/mozilla-mobile/android-components/issues/4553: Migrate WindowFeature to browser-state 2019-10-31 15:31:50 -04:00
Christian Sadilek
8e20a15bba [components] Issue https://github.com/mozilla-mobile/android-components/issues/4810: Add tests 2019-10-21 15:25:04 -04:00
MozLando
96cbdc2300 [components] Merge https://github.com/mozilla-mobile/android-components/pull/4798
4798: Set parentId to session before adding tab r=csadilek a=mawen7



Co-authored-by: mawen7 <mawen7@users.noreply.github.com>
2019-10-21 18:22:49 +00:00
MozLando
f1afa5bc4a [components] Merge https://github.com/mozilla-mobile/android-components/pull/4773
4773: Closes https://github.com/mozilla-mobile/android-components/issues/4749: Fix for bug 1522829 r=pocmo a=csadilek

We basically already have the parent session everywhere we need it, we now just forward the corresponding engine session so we can pass it along to GeckoView e.g. when opening a new (regular or private) tab, and when reacting to window requests.

@pocmo one discussion point is whether or not we have to create an engine session for the parent if it's no longer there (e.g. when re-loading a child tab after a restart). I decided **not** to do that as we'd be loading all parent sessions on startup and the child session should already have the right state.

Also, I didn't want to overload the method as named args with default values make this easy enough to read in Kotlin. 

Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2019-10-21 16:58:21 +00:00
mawen7
08f35681e4 [components] Set parentId to session before adding tab 2019-10-19 19:11:15 +02:00
Christian Sadilek
a5cc73dd18 [components] Closes https://github.com/mozilla-mobile/android-components/issues/4749: Fix for bug 1522829 2019-10-17 18:44:40 -04:00
Christian Sadilek
a24d7c5287 [components] Closes https://github.com/mozilla-mobile/android-components/issues/3720: Incorrect selection notification when session removed 2019-10-15 16:42:40 -04:00
Arturo Mejia
b64e1891d0 [components] Closes https://github.com/mozilla-mobile/android-components/issues/4469: Add API for supporting WebExtension browserActions 2019-10-11 17:01:52 +02:00
Arturo Mejia
5864df650c [components] For issue https://github.com/mozilla-mobile/android-components/issues/3264 Display the OFF_FOR_A_SITE tracking protection state. 2019-10-07 09:59:19 -04:00
MozLando
e621e9ac8f [components] Merge https://github.com/mozilla-mobile/android-components/pull/4609
4609: Fix find in page not working with fresh install r=csadilek a=VMadalin

### Description
Fixed issue: https://github.com/mozilla-mobile/reference-browser/issues/915

The `engineSession` is null on `FindInPageInteractor` because the `bind()` method set it as null via `session.engineState.engineSession`. 
<img width="752" alt="Screenshot 2019-10-02 at 08 25 39" src="https://user-images.githubusercontent.com/18151158/66025739-799e8e00-e4f7-11e9-944d-73ab86d45485.png">

Finally and after deep research I discover the problem is related with the tabs, when `EngineStateReducer.reduce()` is called for the first time no one has add the new tab created and without it it's imposible to propagate the `GeckoEngineSession` to the `BrowserState`

```
2019-10-02 17:50:58.885 8585-9964/org.mozilla.samples.browser: UnlinkEngineSessionAction
2019-10-02 17:50:58.891 8585-9964/org.mozilla.samples.browser: LinkEngineSessionAction
2019-10-02 17:50:58.919 8585-9964/org.mozilla.samples.browser: AddTabAction  // after link
```

### Pull Request checklist
<!-- Before submitting the PR, please address each item -->
- [x] **Quality**: This PR builds and passes detekt/ktlint checks (A pre-push hook is recommended)
- [x] **Tests**: This PR includes thorough tests or an explanation of why it does not
- [ ] **Changelog**: This PR includes [a changelog entry](https://github.com/mozilla-mobile/android-components/blob/master/docs/changelog.md) or does not need one
- [x] **Accessibility**: The code in this PR follows [accessibility best practices](https://github.com/mozilla-mobile/shared-docs/blob/master/android/accessibility_guide.md) or does not include any user facing features

### After merge
- [ ] **Milestone**: Make sure issues closed by this pull request are added to the [milestone](https://github.com/mozilla-mobile/android-components/milestones) of the version currently in development.
- [ ] **Breaking Changes**: If this is a breaking change, please push a draft PR on [Reference Browser](https://github.com/mozilla-mobile/reference-browser) to address the breaking issues.


Co-authored-by: Madalin Valceleanu <devmobile@vmadalin.com>
2019-10-02 22:10:55 +00:00
Madalin Valceleanu
81262f4a2a [components] Closes https://github.com/mozilla-mobile/android-components/issues/4612: Find in page not working when opening tab using TabsUseCases 2019-10-02 23:51:33 +02:00
Christian Sadilek
49c7f20089 [components] For https://github.com/mozilla-mobile/android-components/issues/4289: Remove promptRequest property from Session 2019-10-02 14:21:02 -04:00
Arturo Mejia
e5b3be8953 [components] For issue https://github.com/mozilla-mobile/android-components/issues/3264 Add api for interacting with the tracking protection
exceptions.
2019-09-27 12:19:57 -04:00
Sebastian Kaspari
e6e0bc1fa4 [components] Issue https://github.com/mozilla-mobile/android-components/issues/4421: Remove download property from Session. 2019-09-25 16:13:25 +02:00
Christian Sadilek
d9bcf47798 [components] Closes https://github.com/mozilla-mobile/android-components/issues/4514: Do not restore parent tab ID for collections 2019-09-24 11:20:52 -04:00
Denys M
b95c932f81 [components] For https://github.com/mozilla-mobile/android-components/issues/4460. Fix detekt warning about license in project files. 2019-09-24 01:01:03 +04:00
MozLando
eb2fcd98bd [components] Merge https://github.com/mozilla-mobile/android-components/pull/4400
4400: Preserve parent id during convert from tab session to state r=rocketsroger a=mawen7



Co-authored-by: mawen7 <mawen7@users.noreply.github.com>
2019-09-18 00:56:12 +00:00
Tiger Oakes
321f2165dc [components] Fix https://github.com/mozilla-mobile/android-components/issues/4418 - Clear manifest on location change 2019-09-16 11:13:48 -07:00
mawen7
0a5d821a03 [components] Preserve parent id during convert from tab session to state 2019-09-13 12:15:56 +02:00
Maurya Talisetti
d4a1170db2 [components] Issue https://github.com/mozilla-mobile/android-components/issues/3663 Clear session icon if URL host changes
Earlier, session icon was cleared whenever URL chagned. But, that resulted in no icon in the scenario of same-host URL redirects. Now, we are clearing session icon only if the scheme and host part of the URL changes.
2019-09-13 09:58:02 +02:00
Christian Sadilek
5102a8be3d [components] Closes https://github.com/mozilla-mobile/android-components/issues/4292: Add FindResult to browser-state 2019-09-11 10:38:02 -04:00
MozLando
f2fdb320b2 [components] Merge https://github.com/mozilla-mobile/android-components/pull/4374
4374: Closes https://github.com/mozilla-mobile/android-components/issues/4290: Add PromptRequest to browser-state r=pocmo a=csadilek

Same as for `Download` and `HitResult` consumables.

Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
2019-09-11 10:21:44 +00:00
Christian Sadilek
328d4c50a3 [components] Closes https://github.com/mozilla-mobile/android-components/issues/4290: Add PromptRequest to browser-state 2019-09-10 14:13:31 -04:00
Christian Sadilek
e90d04bac1 [components] Closes https://github.com/mozilla-mobile/android-components/issues/4348: Empty toolbar after switching from custom tab to browser 2019-09-09 15:08:10 -04:00
Christian Sadilek
961e9d8d6d [components] Closes https://github.com/mozilla-mobile/android-components/issues/3558: browser-state: Add engine session state and keep in sync 2019-09-06 14:10:14 -04:00
Christian Sadilek
0cb71c28fc [components] Make BrowserAction names consistent 2019-09-05 16:11:38 -04:00
Christian Sadilek
9b28cad809 [components] Closes https://github.com/mozilla-mobile/android-components/issues/4284: Sync downloads between browser-session and browser-state
Co-authored-by: Sebastian Kaspari <s.kaspari@gmail.com>
2019-09-04 20:27:04 -04:00
Christian Sadilek
03b4e2e474 [components] Closes https://github.com/mozilla-mobile/android-components/issues/4285: Add HitTarget to browser-state 2019-09-04 16:01:32 -04:00
Sebastian Kaspari
5b175f3c56 [components] Issue https://github.com/mozilla-mobile/android-components/issues/4257, https://github.com/mozilla-mobile/android-components/issues/4279: Move intent related code from browser-session to feature-intent. 2019-09-02 17:39:33 +02:00
Christian Sadilek
b51324ba7d [components] Closes https://github.com/mozilla-mobile/android-components/issues/3544: Add custom tab config to browser-state 2019-08-29 17:51:12 -04:00
MozLando
bb85646724 [components] Merge https://github.com/mozilla-mobile/android-components/pull/4218
4218: Closes https://github.com/mozilla-mobile/android-components/issues/3952 - Add Digital Asset Link processing r=jonalmeida a=NotWoods

Uses `AbstractCustomTabsService` to record the package name of the custom tab launching app, 
then use it to later verify Digital Asset Links.

A store is used to track the validation state of the Digital Asset Links. (Naming TBD.)



Co-authored-by: Tiger Oakes <toakes@mozilla.com>
2019-08-29 19:42:28 +00:00
Tiger Oakes
c840754502 [components] Closes https://github.com/mozilla-mobile/android-components/issues/3952 - Add Digital Asset Link processing 2019-08-29 15:11:51 -04:00
Sebastian Kaspari
780dbd669b [components] Issue https://github.com/mozilla-mobile/android-components/issues/4119: Synchronize tracking protection state between browser-session and browser-state. 2019-08-29 18:34:58 +02:00
Tiger Oakes
45f1b4a896 [components] Remove customtabs methods in browser-session 2019-08-20 11:29:04 -04:00
Arturo Mejia
044628b17d [components] Closes https://github.com/mozilla-mobile/android-components/issues/4098, https://github.com/mozilla-mobile/android-components/issues/4110: Exposing new categories of content blocking. 2019-08-14 12:28:25 -04:00
Grisha Kruglov
9b60decf19 [components] For https://github.com/mozilla-mobile/android-components/issues/4083: make findSessionById thread-safe 2019-08-12 12:03:33 +02:00
Tiger Oakes
5377ef2f1a [components] Closes https://github.com/mozilla-mobile/android-components/issues/4004 - Increase limit for LongMethod rule 2019-08-02 13:34:17 -04:00
Tiger Oakes
5ef6caf5c5 [components] Closes https://github.com/mozilla-mobile/android-components/issues/3873 - Support custom navigation bar color 2019-07-30 14:55:28 -04:00
Tiger Oakes
1d3e3a6b4a [components] Fixes https://github.com/mozilla-mobile/android-components/issues/1884 - Intent code to feature-customtabs 2019-07-23 13:10:00 -04:00
Sebastian Kaspari
65eb041b7f [components] Closes https://github.com/mozilla-mobile/android-components/issues/3310: browser-engine-gecko-nightly: Automatically recover and restore if content process is killed. 2019-07-23 18:06:08 +02:00
Christian Sadilek
1bb77a5027 [components] Closes https://github.com/mozilla-mobile/android-components/pull/3680: Synchronize icons between browser-store and session 2019-07-22 14:23:56 -04:00
Tiger Oakes
708e1dd908 [components] Fixes https://github.com/mozilla-mobile/android-components/issues/3516 - Use response to determine file name 2019-07-19 14:09:49 -04:00
Arturo Mejia
773f9e92a2 [components] Closes https://github.com/mozilla-mobile/android-components/issues/3788: Expose to which category a blocked tracker belongs. 2019-07-19 08:31:31 -07:00
Tiger Oakes
e2d79ee386 [components] Issue https://github.com/mozilla-mobile/android-components/issues/2747 - Split intent processors 2019-07-16 16:42:01 -04:00
Sebastian Kaspari
f9305d96e3 [components] Issue https://github.com/mozilla-mobile/android-components/issues/3432: Synchronize adding multiple tabs between SessionManager and BrowserStore. 2019-07-15 13:37:24 +02:00
Sebastian Kaspari
d2a619dc58 [components] Issue https://github.com/mozilla-mobile/android-components/issues/3432: Add AddMultipleTabsAction to add multiple tabs at once to BrowserStore. 2019-07-15 13:37:24 +02:00
Sebastian Kaspari
a7563b9edd [components] Issue https://github.com/mozilla-mobile/android-components/issues/3432: Add method to SessionManager to add multiple Sessions at once. 2019-07-15 13:37:24 +02:00
Christian Sadilek
aa2bba778e [components] Closes https://github.com/mozilla-mobile/android-components/issues/3639: browser-state: Add onLowMemory behavior 2019-07-12 11:07:05 -04:00
Christian Sadilek
7fa782c657 [components] Closes https://github.com/mozilla-mobile/android-components/pull/3680: Synchronize thumbnails between browser-store and session 2019-07-11 10:22:30 -04:00
Christian Sadilek
3b63eb3a77 [components] Closes https://github.com/mozilla-mobile/android-components/issues/3721: Restored sessions do not get a BrowserStore assigned 2019-07-10 13:01:44 -04:00