Commit Graph

99 Commits (7e870605d81cd10bda5d553dcd1aca427d9dd5fd)

Author SHA1 Message Date
Jonathan Almeida 5442798b38 Issue #20718: Show url if title is missing for inactive tabs 3 years ago
Jonathan Almeida d6bc93981d Issue #20663: Make inactive card collapsible
We use make the inactive tabs section of the tabstray collapsible in
this change, with a technical quirk: we want to make the "isExpanded"
state of the tabs stay for the lifetime of the app and not the tabs
tray, but this functionality does not exist.

In this patch, we're storing the UI state in a singleton class that
exists for the lifetime of the app, but a more concrete solution is to
use an AppStore that holds content like this, which we can land in a
future patch.
3 years ago
codrut.topliceanu 4b21f52db4 For #20310 - Adds Recently Closed button to tabsTray 3 years ago
Jonathan Almeida ca51ac6168 Issue #20664: Do not consider newly created tabs as inactive 3 years ago
Elise Richards 7fdade49ec
No issue: fix glean metrics tests for expired metrics (#20621)
* Remove references to preferences.open_links_in_private and preferences.private_search_suggestions in tests. These metrics have been expired and may be removed.

* Add ignores for performance metrics that have expired.

* Remove tabs_tray.cfr.dismiss and tabs_tray.cfr.go_to_settings telemetry probes.

* Remove metrics controller from signature and remove in tests
3 years ago
Jonathan Almeida 69d630f46c Issue #20349: Add inactive tab grouping to tabs tray 3 years ago
Sebastian Kaspari 971b419d77 Run ktlintFormat to adapt to latest formatting rules. 3 years ago
mcarare 8b13e382fd For #17917: Use View binding in lists. 3 years ago
codrut.topliceanu 3ae6472e16 For #20257 - Sets min no. of grid columns to 2 in TabsTray 3 years ago
codrut.topliceanu 083d50aafd For #20250 - Adds FLAG_SECURE to TabsTray dialog 3 years ago
Roger Yang e69f3dfbbb Closes #19090: Show snackbar on adding to bookmarks from tabs tray 3 years ago
Codrut Topliceanu af1c00a645
For #20195 - Adds tabsTray allowScreenshotsInPrivateMode check (#20203)
* For #20195 - Adds tabsTray allowScreenshotsInPrivateMode check
3 years ago
Roger Yang cabd004390 Closes #19182: Close Tabs Tray when sharing completes 3 years ago
Roger Yang 74c1cc82fb Closes #19921: Update appcompat and fragment dependencies to 1.3.x 3 years ago
codrut.topliceanu 37e2c6ceeb For #19739 - Adds start tabsTray with multiSelect support 3 years ago
Mihai Adrian Carare 9c9e26953f
For #19813: Invalidate tab tray adapter structure on screen rotation. (#20044) 3 years ago
mcarare df2efcf310 For #20024: Visit FAB after synced tabs in a11y traversal.
This helps focus on FAB without going through whole tab lists.
3 years ago
Jonathan Almeida 5be35df969 Revert "For #19739 - Adds start tabsTray with multiSelect support"
This reverts commit d8288f5e89.
3 years ago
Jonathan Almeida aeb186f79c Revert "For #19739 - Moves argument to initial state init"
This reverts commit f198e110d7.
3 years ago
codrut.topliceanu f198e110d7 For #19739 - Moves argument to initial state init 3 years ago
codrut.topliceanu d8288f5e89 For #19739 - Adds start tabsTray with multiSelect support 3 years ago
Mihai Adrian Carare 83a5aa2838
For #20007: Multiselect title is important for a11y just in select mode. (#20008) 3 years ago
Mugurell a1fa1a5df6 For #19135 - Offer more context for why STATE_HALF_EXPANDED is not used 3 years ago
Mugurell abeb8b5576 For #19135 - Set different offsets for expanded trays
As in the previous version of tabs tray when tray is expanded while in portrait
it should have a 40dp offset and when the tray is expanded while in landscape
it should have a 0dp offset - effectively making it fullscreen.

These values were set in code, always overriding the xml set value so I
removed that xml declaration.
3 years ago
Mugurell 3cbb67da5c For #19135 - Expand the tabs tray in landscape
Track the current orientation and collapse / expand it the tabs tray depending
on the orientation and the number of opened tabs.
3 years ago
Mugurell d7544337b8 For #19135 - Refactor the behavior code to support more functionality later
Setup a new TabSheetBehaviorManager with all the dependencies it needs to
set the initial tray's behavior.
This same manager will later be called to update behavior's properties.
3 years ago
mcarare d43acbd03d For #19938: Remove a11y workaround for tab tray new tab button.
Historically, button was introduced in a3dc565c10,
because FAB was not selectable by a11y in previous implementation of tab tray.
3 years ago
Sebastian Kaspari 4753a1d494 Complete browser-state migration and remove browser-session dependency.
Co-authored-by: Christian Sadilek <christian.sadilek@gmail.com>
3 years ago
Jonathan Almeida f06e3a6493 Issue #19178: Apply new styling to Synced Tabs list 3 years ago
codrut.topliceanu 5729137ddb For #19738 - Adds tests for SecureTabsTrayBinding.kt 3 years ago
codrut.topliceanu 0572cab97c For #19738 - Secure mode enabled in private tabs tray
Prevents screenshots while tabs tray with private tabs page is open.
3 years ago
Jonathan Almeida a64cac6c7f Issue #19792: Add content description for tab tray action button 3 years ago
Roger Yang 2e4635334a
Closes #19090: Show snackbar on adding to bookmarks from tabs tray (#19807) 3 years ago
Jonathan Almeida 811dd3e618 Issue #19809: Change default tab tray view to grid layout 3 years ago
Jonathan Almeida 27280e6683 Issue #19809: Remove Grid layout info banner in tabs tray 3 years ago
codrut.topliceanu 85c438798e For #19191 - Fixes missing multi-select checkmarks 3 years ago
Jonathan Almeida dc11c334b6 Issue #19112: Remove old tab tray code 3 years ago
Jonathan Almeida fc46ab2804 Close #19731: Track metrics before we dismiss the tabs tray 3 years ago
Jonathan Almeida 758700cbb0 Issue #19647: Navigate to browser from home via Synced Tabs page 3 years ago
Mugurell 3fb40e1f40 For #19475 - Introduce a DefaultTabsTrayInteractor
Refactored the TabsTrayFragment to not implement the TabsTrayInteractor which
among other advantages allowed for easier testing.
3 years ago
Mugurell dc26272381 For #19475 - Cleanup - respect naming scheme in TabsTrayController
In our current MVI implementation the View Interactors are first called in
response to a direct user action and contain methods following the
"onXXHappened" naming scheme and then delegate other Interactors / Controllers
for specific actions.

Controllers contain the business logic for actually updating the app's state
and offer methods following the "handleXXAction" naming scheme.
3 years ago
Jonathan Almeida ede909e858
Issue #19176: Exit select mode when removing tab (#19486) 3 years ago
Codrut Topliceanu d08b00717a
For #19091 - Fix Undo of close multiple tabs (#19466)
Fixes the issue where closing multiple selected tabs and then pressing Undo would only restore one of the tabs.
3 years ago
Jonathan Almeida f0d352f47e Issue #19002: Correct naming of pager viewholders 3 years ago
Jonathan Almeida a95a26b2c6 Issue #19002: Use a single BrowserTrayList for normal/private list
We now have a BrowserTrayList.
 - Renamed from `BaseBrowserTrayList`.
 - Removed the abstract `configuration` and used a `lateinit var`
 instead.
 - Removed `NormalBrowserTrayList` and `PrivateBrowserTrayList`.
3 years ago
Jonathan Almeida bd753d3f94 Issue #19002: Correct browser viewholder naming 3 years ago
Jonathan Almeida 809c82a9f9 Issue #19002: Move TabsTrayViewHolder to browser package 3 years ago
Jonathan Almeida 78af3d80b3 Issue #19002: Remove unused TrayItem interface 3 years ago
Jonathan Almeida e66983d093 Issue #19002: Use AbstractBinding from lib-state 3 years ago
Jonathan Almeida 392ace67d6 Issue #19175: Fix SyncTabs list not updating on changes
The main cause for this is that the `LifecycleProvider` needs to be set
to `State.RESUMED` to avoid the account manager's internal
`ObserverRegistry` from putting the UI observers into the paused state.

The rest of the changes is to rely the internal (safe) logic to
correctly sync and then update the tabs list.
3 years ago