Commit Graph

97 Commits (1f633edd7d4436f20ead4ba657b1284b94cca0c6)

Author SHA1 Message Date
Brais Gabín 1f633edd7d For #23046 - Align detekt config between Fenix and Android Components
Co-authored-by: Gabriel Luong <gabriel.luong@gmail.com>
2 years ago
mcarare cb14837bc6 For #24098: Update tests for tabs tray metrics. 2 years ago
mcarare 1f18f62a5a For #24098: Remove wrapper from tabs tray metrics. 2 years ago
Gabriel Luong a6c8f8b313 For #24252 - Rename destructive attribute to textWarning 2 years ago
Alexandru2909 ef678b4d17 Fixes #24188 - Use app_name for InactiveTabAutoClose message 2 years ago
Gabriel Luong 90e49c71d6 For #24107 - Use Layer1 for tab tray list item background color 2 years ago
Gabriel Luong a0f8c2a1a5 For #24102 - Use Layer Accent Opaque color for the selected tab tray item background in list view 2 years ago
Gabriel Luong 50a7a8499c For #24080 - Use layer accent non opaque for the tabs tray and history selected background color 2 years ago
Gabriel Luong bf70616d93 For #23713 - Replace @color/secondary_text_normal_theme with @color/fx_mobile_text_color_secondary 2 years ago
Gabriel Luong 5bbf8437b3 For #23711 - Replace @color/primary_text_normal_theme with @color/fx_mobile_text_color_primary 2 years ago
Alexandru2909 d7803e6dc7 For #14954 - Use TabSessionState.id to check if tab is selected 2 years ago
Gabriel Luong 39c6067b03
For #23350 - Revert changes from removing duplicate icons that already exists in ui-icons (#23527)
* Revert "For #23121 - Override @color/mozac_ui_icons_fill with ?primaryText attribute"

This reverts commit 12347c9999.

* Revert "For #23121 - Replace @drawble/ic_share with @drawable/mozac_ic_share"

This reverts commit bbf6ce3f0c.

* Revert "For #23121 - Replace @drawble/ic_storage_enabled with @drawable/mozac_ic_storage"

This reverts commit 930c7bf3b3.

* Revert "For #23121 - Replace @drawble/ic_notifications_enabled with @drawable/mozac_ic_notification"

This reverts commit 9069b57c24.

* Revert "For #23121 - Replace @drawble/ic_microphone_enabled with @drawable/mozac_ic_microphone"

This reverts commit 53216f3f4a.

* Revert "For #23121 - Replace @drawble/ic_location_enabled with @drawable/mozac_ic_location"

This reverts commit 9ee9aafd87.

* Revert "For #23121 - Replace @drawble/ic_autoplay_disabled with @drawable/mozac_ic_autoplay_blocked"

This reverts commit b045a5e203.

* Revert "For #23121 - Replace @drawble/ic_camera_enabled with @drawable/mozac_ic_video"

This reverts commit 62842db131.

* Revert "For #23121 - Replace @drawble/mozac_ic_extensions_black with @drawable/mozac_ic_extensions"

This reverts commit c020a9da10.

* Revert "For #23121 - Replace @drawble/ic_top_sites with @drawable/mozac_ic_pin"

This reverts commit ca67b0a752.

* Revert "For #23121 - Replace @drawble/ic_search with @drawable/mozac_ic_search"

This reverts commit 02d9197945.

* Revert "For #23121 - Replace @drawble/ic_readermode with @drawable/mozac_ic_reader_mode"

This reverts commit cf8592c709.

* Revert "For #23121 - Replace @drawble/ic_menu with @drawable/mozac_ic_menu"

This reverts commit a1ac019024.

* Revert "For #23121 - Replace @drawble/ic_login with @drawable/mozac_ic_login"

This reverts commit 541c56b589.

* Revert "For #23121 - Replace @drawble/ic_internet with @drawable/mozac_ic_globe"

This reverts commit 4d8adce85e.

* Revert "For #23121 - Replace @drawble/ic_download with @drawable/mozac_ic_download"

This reverts commit ef026d3ec2.

* Revert "For #23121 - Replace @drawble/ic_lock with @drawable/mozac_ic_lock"

This reverts commit 18591d5dd8.

* Revert "For #23121 - Replace @drawble/ic_desktop with @drawable/mozac_ic_device_desktop"

This reverts commit ad33e3c1e1.

* Revert "For #23121 - Replace @drawble/ic_close with @drawable/mozac_ic_close"

This reverts commit a9f0fefac2.

* Revert "For #23121 - Replace @drawble/ic_delete with @drawable/mozac_ic_delete"

This reverts commit 33dc752ef2.

* Revert "For #23121 - Replace @drawble/ic_chevron_up with @drawable/mozac_ic_arrowhead_up"

This reverts commit 5bf937cfd3.

* Revert "For #23121 - Replace @drawble/ic_chevron_down with @drawable/mozac_ic_arrowhead_down"

This reverts commit 0fadd68112.

* Revert "For #23121 - Replace @drawble/ic_back_button with @drawable/mozac_ic_back"

This reverts commit bea766e785.

* Revert "For #23121 - Replace @drawable/ic_arrowhead_right with @drawable/mozac_ic_arrowhead_right"

This reverts commit 5a6f349ea8.

* Revert "For #23121 - Replace @drawable/ic_new with @drawable/mozac_ic_new"

This reverts commit ae38410106.

* Revert "For #23121 - Replace @drawable/ic_addons_extensions with @drawable/mozac_ic_extensions"

This reverts commit 9352946afc.
2 years ago
Gabriel Luong 33dc752ef2 For #23121 - Replace @drawble/ic_delete with @drawable/mozac_ic_delete 2 years ago
Gabriel Luong 268ba9b39d For #23266 - Update the tabs tray multi-select background color to @color/fx_mobile_layer_color_accent 2 years ago
Roger Yang 047ec890b2 Closes #22550: Refactor search term tab grouping logic to rely on middleware 2 years ago
Gabriel Luong ddc806e8bc For #22978 - Replace @color/foundation_normal_theme with @color/fx_mobile_layer_color_1 2 years ago
mavduevskiy 89f5e96d73
For #18160: Show a prompt when trying to leave private browsing with active downloads (#22912)
Co-authored-by: mike a <mavduevskiy@gmail.com>
2 years ago
Jonathan Almeida 01ba8959ce Issue #22757: Check the parent cast to AbstractBrowserTrayList first
We re-use the same ViewHolders in search term groups, so when we need to
cast to a AbstractBrowserTrayList for tab reordering, we need to check
our parent correctly first.
2 years ago
Christian Sadilek 6637f61088
Support tab movement/reordering (#22751)
* Adds basic support for tab reordering via drag-and-drop selected tabs

* ktlint/detekt formatting

* Use defaultTabsFilter (now not private) instead of getter

* Convert from position+filter API to target+placeAfter
Unfortunately I still need the filter passed around a bit

* Handle inactive tabs' holder being children of the RecyclerView of the normal tabs
Don't go through LayoutManager needlessly

* Non-working use tabID the whole way. Does not compile.

* Fix to do direct tab ID and use grid setting directly

* Remove non-null assertion. Now fully works for "other" tabs.

* Prevent grouped tabs from being dragged

* Remove unused import

* Add/fix comments

* Do API version check and use deprecated startDrag if too old.

* Build process fails: both outdated and too new, so reverting to just too new

* Use deprecated function and suppress warning

* fix space

* Suppress "TooManyFunctions" on DefaultTabsTrayController

* Repeatedly update tab movement during drag

* Remove multi-tab movement, only allow dragging if tab groups disabled, fix tab positioning during movement
I'm forced to suppress LongParameterList to get the settings information where it needs to go though

* Remove settings argument and corresponding long args suppression: instead get settings from parent AbstractBrowserTrayList's context

* New UI: Select a tab and then, while holding down, start dragging

* Revert to using before/after boolean to accomodate delays
Move drag transparency to start of drag

* Use new BlankDragShadowBuilder and DraggableItemAnimator to handle tab movement

* Replace Pair<>s with data classes

* Only drag if exactly 1 tab selected, don't consume drag event if not used

* Auto-scroll tab tray while dragging near top/bottom edge

* Remove unexpected scrolling on tab bind (triggered when tab is selected)

* Fix broken scroll behavior during dragging

* Cleanup for ktlint/detekt

* Constantly set elevation during drag in case of update
Clean code at drag start

* Add custom drag start behavior

* Add drag distance constant, do all touch-drag behavior in OnTouchListener

* Disable parent vertical scrolling on drag start, fix detekt ComplexCondition

* Minor cleanup/comments

* Revert removal of scroll on bind, this was related to something different

* Correction to prepareForDrop to match documentation- doesn't seem to have any effect

* Simplify via unchecked typecast, use ViewCompat

* Use ViewConfiguration.scaledTouchSlop instead of arbitrary 30px

* Added tabReorderingFeature flag, split drag interactor to separate function to satisfy complexity requirement

Co-authored-by: Steven Knipe <ssk97@case.edu>
Co-authored-by: ssk97 <knipesteven@gmail.com>
Co-authored-by: Sebastian Kaspari <s.kaspari@gmail.com>
2 years ago
Noah Bond de1c6b0dae
Tab group count telemetry (#22479)
* For #22410 - Refactored tab sorter metrics into a middleware

* For #22410 - Created distribution metric for tab group sizes

* For #22410 - Created tests for tabs tray middleware

* For #22410 - Merge fixes

* For #22410 - Added PR number to metric

* For #22410 - Fixed unit tests post merge. Added waitUntilIdle to new tests.

* For #22410 - Added missing line to middleware to have the Store process actions

* For #22410 - Updated metric expiration to December

* For #22410 - PR Feedback

* For #22410 - Removed else from middleware when
3 years ago
Mugurell 685da115c9 For #22442 - Don't display history group if already in Jump back in 3 years ago
Mugurell d4a6facd81 For #22155 - Store inactive tabs count telemetry when user opens tabs tray
Setting this value in FenixApplication.onCreate was buggy because of a race
with restoring BrowserState.
Setting it here would ensure a better granularity of the events and so to more
accurate reporting.
3 years ago
Jonathan Almeida 08b15689b1 Close #22305: Use TabsTrayStore for populating adapters 3 years ago
Jonathan Almeida f16300392d Close #22305: Add tab state into the TabsTrayStore 3 years ago
Mugurell f9b67091c6 For #22155 - New BrowserState.actualInactiveTabs public method
This allows querying from all throughout the app which of the current tabs are
inactive while taking into consideration whether the feature is enabled or not
such that when the feature is disabled it will always return an empty result.
3 years ago
Jonathan Almeida 9bb49585ea No issue: Merge our inactive tab interactor/controllers 3 years ago
Jonathan Almeida f363b145f2 No issue: Remove unused InactiveTabState code 3 years ago
Roger Yang a46905b5e7 Issue #22057: Add search term groups telemetry 3 years ago
Jonathan Almeida 8c43ccc0f6 Issue #20704: Use AppStore for inactive expanded state 3 years ago
Arturo Mejia a2c7dfb26e For #22170: Add telemetry for the auto-close prompt 3 years ago
Arturo Mejia d943be0e53 For #22034: Inactive tabs prompt is redisplayed after dismissing by turning on Auto close 3 years ago
Gabriel Luong 100547130e For #21776 - Add package path to TabGroupViewHolder 3 years ago
Gabriel Luong b54698a3f2 For #21776 - Class member can have 'private' visibility 3 years ago
Gabriel Luong 660300f770 For #21776 - Replace 'isEmpty' with 'ifEmpty' 3 years ago
Gabriel Luong d854c282da For #21776 - Remove val from constructor parameter that are never used as a property 3 years ago
Jonathan Almeida 7666f0e4c2 No issue: Replace TabsTray.Tab with TabSessionState
Co-authored-by: Arturo Mejia <arturomejiamarmol@gmail.com>
3 years ago
Arturo Mejia ee8c4de62d For #21986 Confirmation when people set tabs to auto-close
For #22034 Inactive tabs prompt is redisplayed after dismissing by turning on Auto close
3 years ago
Roger Yang 70fc6fc20f Close #22061: Let TabSorter decide if title header should be shown in tabs tray 3 years ago
Roger Yang b5c15280f7 No issue: Only report telemetry when tabs tray is first opened 3 years ago
Noah Bond 826249497a
MR2 Inactive tabs telemetry (#21908)
* For #21903 - Added telemetry for interacting with inactive tabs

* For #21903 - Added missing inactive tab delete count event to delete all event

* For #21903 - Added PR numbers to metrics

* For #21903 - Updated broken unit tests. Resolved critical lint warning.

* For #21903 - Fixed inactive tabs setting toggle metric

* For #21903 - Updated FenixApp unit test

* For #21903 - Updated newline character in Metrics. Set inactive tab metrics' lifetime to default. Updated expiration to Nov 2022. Refactored inactive tabs metric to be a single metric.

* PR: addendum for last commit that missed a file

* For #21903 - Changed logic check for reporting inactive tab count

* PR: fixed merge conflict

* For #21903 - Removed tab close tracking when the user closes ALL inactive tabs

* For #21903 - Removed individual tab close metric verify from CLOSE ALL test

* For #21903 - Updated inactive tabs toggle setting expiration to match the expiration of the other events

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
3 years ago
Roger Yang 60f7f766da Issue #21893: Keep search group when second to last search term tab is removed 3 years ago
Arturo Mejia 25c784b684 For #21906 ⁃ Remove old copy form inactive tabs section 3 years ago
Jonathan Almeida 9780dac846 No issue: Always show Make inactive for debug builds 3 years ago
Jonathan Almeida 722ab9f3ca Issue #21794: Remove rotation; rely on state activated
It seems like we no longer need to use rotation for the chevron, since
we are now using two different icons within the `ic_chevon` that change
depending on the `state_activated`.
3 years ago
Arturo Mejia 08256ac68c For #21791 Adds tab auto-close prompt 3 years ago
Roger Yang 4ad494075a Issue #21686: Stop using internally stored tabs list in adapters 3 years ago
Jonathan Almeida 74fd043290 Issue #21686: Move submitList calls into TabsAdapter
Co-authored-by: Roger Yang <royang@mozilla.com>
3 years ago
Gabriel Luong 04e75ace19 For #21756 - Refactor TopSites out of home.sessioncontrol 3 years ago
codrut.topliceanu b1a5025610 For #21708 - Fixes missing header bottom border
The bottom gray border of the header item from the Inactive Tabs section was correctly set when collapsing or expanding said section, but not on init. So if the section was initialized collapsed the gray border would not be present.
3 years ago
Jonathan Almeida b8946f807a Issue #21671: Remove Recently Closed from Inactive Tabs 3 years ago