Commit Graph

71 Commits (ea7c8255ae6ee148319009d8dc60b3be1cfda334)

Author SHA1 Message Date
Mugurell b993b94be1 For #12857 - Use Collection title when sharing tabs collection
Avoided passing the subject for sharing a collection of tabs in the ShareData
object since ShareData is part of a web standard.
4 years ago
ekager f4296fb77e For #13179 - Ensure we only dismiss share prompt once 4 years ago
Christian Sadilek 7be56ce4fa For #11798: Allow sharing of reader view pages 4 years ago
Tiger Oakes 4415702fa8 Add tests for share sheet 4 years ago
Tiger Oakes f0295048fa Remove Mockito 4 years ago
person808 9272026b7e For #10193 - Remove page title when sharing links 4 years ago
ekager ead3194d86 For #8759 - Allow recently used in share fragment to scroll 4 years ago
ValentinTimisica 9f265fd62f Fixes #10064: Open help articles in normal tab instead of custom tab 4 years ago
ekager 9ec1f8e2d8 For #8981 - Sort devices in share list by last access time 4 years ago
ekager c4e83367f6 For #6832 - Fix various fragment not attached to a context crashes 4 years ago
Jeff Boek 4cbb9aebaf
Cleans up nav_graph.xml (#9829)
* For #9751 - Cleans up homeFragment directions

* For #9751 - Uses global actions for fragments not owned by homeFragment

* For #9751 - Cleans up SearchFragment directions

* For #9751 - Removes settings action from DeleteBrowsingDataFragment

* For #9751 - Removes browser action from SettingsFragment

* For #9751 - Adds ManagePhoneFeature global action

* For #9751 - Clean up unused deletebrowsingfragment actions

* For #9751 - Cleans Up HistoryFragment actions

* For #9751 - Removes Home -> Search action

* For #9751 - Removes the Bookmark -> Browser action

* For #9751 - Cleans up bookmark fragment actions

* For #9751 - Cleans up actions from ShareController

* For #9751 - Removes defaultBrowserFragment to browserFragment action

* For #9751 - Removes about -> browser action

* For #9751 - Adds global action to TrackingProtectionFragment

* For #9751 - Removes exception -> browser action

* For #9751 - Removes login -> browser action

* For #9751 - Fixes LoginFragment directions

* For #9751 - Removes ExternalAppBrowser directions

* for #9751 - Cleans up actions

* For #9751 - Fixes unit tests

* For #9751 - Addresses nits in PR
4 years ago
ekager b8fba63be4 For #9890 - Do not display full screen snackbar with toolbar padding 4 years ago
Michael Comella 4437ddd536 No issue: Move Do and OpenClass to utils pkg.
They were both in their packages by themselves, which feels unnecessary.
Unfortunately, a utils pkg is discouraged by kotlin but we don't have a
better place for them right now. Maybe an annotations/ pkg for the
latter?
4 years ago
Abhay Agarwal 1c65bb8255 Closes #9495: Dismiss the ShareFragment in onPause() 4 years ago
Sawyer Blatz e3ed7ed268
Issue #9128 & #9222 & #9499: Refactors snackbar creation and fixes placement (#9628) 4 years ago
mcarare 7fbb1640b6 For #8759 Use activityName instead of packageName as app identification 4 years ago
mcarare 16e2f20471 For #8975: Separate title from url with line break when sharing links 4 years ago
Harshal Lele e318cd7d15 fix #8135 - remove getColorFromAttr 4 years ago
Mihai Branescu 9d972fa1d0 For #4231 added unit tests for most recent apps 4 years ago
Mihai Branescu fdbf63fb97 For #4231
Added kapt plugin + dependencies in order to be able to use Room
Added recent apps to share fragment (top 6)
Extracted dimens of share_to_apps.xml in the dimens file
4 years ago
Tiger Oakes 5faa22d611
Use createBlendModeColorFilterCompat (#8129) 4 years ago
David Walsh 1ee0243efa Fix 4021 - Provide tab title during share 4 years ago
Mihai Adrian 666b3d9627 For #7343: Handle sharing to multiple devices (#7409)
* For #7343 Do not allow multiple share to same device

* For #7343 Check current destination before dismissing share
4 years ago
Sawyer Blatz c7c4ad051a
For #6413: Adds more snackbar positioning logic (#7444)
* For #6413: Adds more snackbar positioning logic

* Refactor
5 years ago
Sawyer Blatz 3fb060f682
For #6413: Fixes snackbar positionining for bottom toolbar (#7415)
* For #6413: Fixes snackbar positionining for bottom toolbar

* For #6413: Cleans up snackbar usage
5 years ago
Suraj Shah 6cb3879caf For #7048: Network info migration (#7091)
* Fixes #7048.
Adds extension function to check if online or not based on capabilities
Modified `buildDeviceList`
Modifies tests

* Fixing lint error for max length
Fixing test in AppRequestInterceptorTest.kt

* Adds suppression for deprecation
Moving away from using anko for ConnectivityManager instance

* Creates ConnectivityManager extension component

* Fixes #7180
Refactors test cases to fix static mocks
5 years ago
Ryan Kelly 31f2e80ab0 Use feature-accounts-push, which replaces feature-sendtab. 5 years ago
Tiger Oakes fe034226a3
For #5783 - Web Share with Fenix share sheet (#6883) 5 years ago
Tiger Oakes 422faaf7c0 Add toolbar helpers (#6531) 5 years ago
Tiger Oakes 7e8f079269
Use ShareData with ShareFragment (#6698) 5 years ago
Tiger Oakes fdd7400ccc Use ViewModel for share fragment 5 years ago
Tiger Oakes 333ff8c941 Fixes #4528 - Prevent share menu from jumping
Plus a bunch of docs and refactoring
5 years ago
Tiger Oakes d5c3433041 Use the new fragment constructor 5 years ago
Denys M a4439ff373 For #3563. Use `ListAdapter` for App Share list. 5 years ago
Emily Kager e9a0f1f65d For #2078 - Filter Out Self in Share Sheet (#5641) 5 years ago
Colin Lee de93b05cac For #2754 Add tab cards to share sheet (#5493)
* For #2754 Add tab cards to share sheet

* For #2754: Fix background near rounded corners and ShareButtonAppearanceTest

* Add license to share_tab_item
5 years ago
Mugurell c5330c6880 For 5092 - Show a Snackbar with retry option if sharing to devices fails (#5158)
* For #5092 - Show a Snackbar with retry option if sharing to devices fails

ShareController will contain all the business logic for checking the result
status of the `share to device` operations. When this fails it will show a
snackbar which also offer the possibility to retry the just failed operation.
To allow this even in the event the user has closed the share fragment we'll
use a GlobalScope's coroutine.
Refactored out the TabsSharedCallback from ShareFragment because otherwise we
would have neede to sent through that the just failed operation. After the
refactor the ShareController is solely responsable for showing the right
snackbar and handling the retry actions.

* For #5092 - Refactor ShareControllerTest

* For #5092: Adds color theming of snackbars
5 years ago
ekager 464122fda1 For #5421 - Make share dialog scrim dismiss fragment 5 years ago
Jeff Boek 976c840047 For #3077 - Replaces connect another device dialog with a scree 5 years ago
Tiger Oakes 284cbab9ea Use .orEmpty() 5 years ago
Mihai Adrian bc16061939 For #3371: Show snackbar message when share fails with crash (#5210) 5 years ago
Emily Kager 9a4610f068 For #2897 - Add Action States To Share Sheet 5 years ago
Sawyer Blatz e240de7e31 For #4908: Adds telemetry for send tab 5 years ago
Petru Lingurar 46b09395f8 For #5067 - Refactor ShareControllerTest following the use of SendTabUseCases 5 years ago
Petru Lingurar f7087e46e3 Fix #5067 - Refactor ShareController to use SendTabUseCases
Navigation between app fragments uses ShareTab as arguments. The newly used
SendTabUseCases uses TabData which is not Parcelable.
For minimal changes we'll keep both data classes and ShareController will know
how to map between the two.
Removed the `sessionId` property of ShareTab as it isn't needed anymore.
5 years ago
Mugurell bf5b0e5cda For 4007 - Add unit tests for the Share Interactor, Controller and list Adapters 5 years ago
Mugurell e165868a53 For #4007 - Add ShareController for handling ShareFragment's business logic
`ShareController` defines a contract with all possible `ShareFragment`'s
behavior changes and comes with a default implementation -
`DefaultShareController`.
It is to be delegated by all `ShareFragment`s contained Views' Interactors
following any user interactions.
5 years ago
Mugurell 16eba61b25 For #4007 - ShareFragment will set the contained Views' state
ShareFragment which acts as a container would contain all business logic needed
for populating it's Views.
Data initialization should be done only once since the app state has no reason
to change after the ShareFragment is created and is done as soon as possible,
in onAttach().
Because of the expected short lifespan of this fragment, given the fact that
the state has no reason to change and we handle orientation changes ourselves
to keep things simple I didn't use a ViewModel to persist the state.
5 years ago
Mugurell 095870145f For #4007 - Refactor AppShareView in standalone Share Views
In an effort to respect the initial MVI architecture I've broken the
complex `AppShareView` in 3 separate Views
- `ShareCloseView`
- `ShareToAccountDevicesView`
- `ShareToAppsView`
They are standalone Views (extending LayoutContainer) which know nothing about
each other or their parent and so offer their container the possibility to
order or display them in any form later.
According to the lib-state contract they are only responsible to
- inflate themselves in their injected containerView
- render a certain state (to be added in later commits)
- delegate all user interaction to an associated Interactor
5 years ago
Mugurell 5e19741ddd For #4007 - Use camelCase for views referenced from code
As per #4341.
Also reformatted layouts to have a more consistent style.
Also refactored `AppShareRecyclerView` and `AccountDevicesShareRecyclerView` by
defining their LayoutManager in XML to reduce code complexity.
5 years ago