Closed Bug 2011733 Opened 2 months ago Closed 1 month ago

Refactor `TabsTrayState`'s tab data models for Normal, Private, and Inactive

Categories

(Firefox for Android :: Tabs, task, P1)

All
Android
task

Tracking

()

RESOLVED FIXED
150 Branch
Tracking Status
firefox150 --- fixed

People

(Reporter: 007, Assigned: 007)

References

(Blocks 2 open bugs)

Details

(Whiteboard: [fxdroid][group4])

Attachments

(7 files)

In order to have different items within the Tab Manager, we'll need to have a wrapper abstraction around the tab data so we can support/display any number of item types.

We also duplicate a ton of tab data by keeping exact copies of every TabSessionState when we should instead only have the data necessary to render the Tab Manager.

As part of this ticket:

  • Create a sealed class parent type along the lines of TabItem
  • Created a sealed class child type along the lines of Tab to represent the new tab data model.
  • Create a sealed class child type for synced tabs.
  • Trim down the tab data retained in TabsTrayState, so it only has the data properties used to render the Tab Manager.

https://searchfox.org/firefox-main/source/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayStore.kt#45,47-48

See Also: → 2011736
Summary: Refactor `TabsTrayState`'s tab data model → Refactor `TabsTrayState`'s tab data models for Normal, Private, Inactive, and Synced
Assignee: nobody → nbond
Status: NEW → ASSIGNED
Blocks: 2016531
Priority: -- → P1
Summary: Refactor `TabsTrayState`'s tab data models for Normal, Private, Inactive, and Synced → Refactor `TabsTrayState`'s tab data models for Normal, Private, and Inactive
Blocks: 2018742
Attachment #9547386 - Attachment description: WIP: Bug 2011733 - Part 1 - Migrate `Page` to its own file → Bug 2011733 - Part 1 - Migrate `Page` to its own file
Attachment #9547387 - Attachment description: WIP: Bug 2011733 - Part 2 - Migrate `TabsTrayState` to its own file → Bug 2011733 - Part 2 - Migrate `TabsTrayState` to its own file
Attachment #9547388 - Attachment description: WIP: Bug 2011733 - Part 3 - Migrate `TabsTrayAction` and `TabSearchAction` to their own files → Bug 2011733 - Part 3 - Migrate `TabsTrayAction`, `TabGroupAction`, and `TabSearchAction` to their own files
Attachment #9547390 - Attachment description: WIP: Bug 2011733 - Part 4 - Move `TabsTrayStore` into `tabstray/redux/store` → Bug 2011733 - Part 4 - Move `TabsTrayStore` into `tabstray/redux/store`
Attachment #9547391 - Attachment description: WIP: Bug 2011733 - Part 5 - Move `TabsTrayReducer` into its own file → Bug 2011733 - Part 5 - Move `TabsTrayReducer` into its own file
Attachment #9547392 - Attachment description: WIP: Bug 2011733 - Part 6 - Refactor `TabsTrayState` to use a generic item type → Bug 2011733 - Part 6 - Refactor `TabsTrayState` to use a generic item type
Attachment #9547694 - Attachment description: WIP: Bug 2011733 - Part 7 - Filter down the tabs tray tab data to only the necessary parts → Bug 2011733 - Part 7 - Filter down the tabs tray tab data to only the necessary parts
Keywords: leave-open
Pushed by nbond@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/264aeb5c47a8 https://hg.mozilla.org/integration/autoland/rev/b7aa8522c5e2 Part 1 - Migrate `Page` to its own file r=android-reviewers,calu https://github.com/mozilla-firefox/firefox/commit/02cca3e031c7 https://hg.mozilla.org/integration/autoland/rev/76191fb5dd05 Part 2 - Migrate `TabsTrayState` to its own file r=android-reviewers,calu https://github.com/mozilla-firefox/firefox/commit/19b4f40bbaa4 https://hg.mozilla.org/integration/autoland/rev/829a4281fd18 Part 3 - Migrate `TabsTrayAction`, `TabGroupAction`, and `TabSearchAction` to their own files r=android-reviewers,calu https://github.com/mozilla-firefox/firefox/commit/196090d53f25 https://hg.mozilla.org/integration/autoland/rev/7ca7f5a74395 Part 4 - Move `TabsTrayStore` into `tabstray/redux/store` r=android-reviewers,calu https://github.com/mozilla-firefox/firefox/commit/069a4c74a214 https://hg.mozilla.org/integration/autoland/rev/078f1b187f1e Part 5 - Move `TabsTrayReducer` into its own file r=android-reviewers,calu
Keywords: leave-open
Pushed by nbond@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/e901ccc5826f https://hg.mozilla.org/integration/autoland/rev/b159eecae610 Part 6 - Refactor `TabsTrayState` to use a generic item type r=android-reviewers,calu https://github.com/mozilla-firefox/firefox/commit/37517e6657bc https://hg.mozilla.org/integration/autoland/rev/3c89e9a9eb58 Part 7 - Filter down the tabs tray tab data to only the necessary parts r=android-reviewers,jdelorenzo
Pushed by abutkovits@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/679541fd4c89 https://hg.mozilla.org/integration/autoland/rev/a3105f5a1c6b Revert "Bug 2011733 - Part 7 - Filter down the tabs tray tab data to only the necessary parts r=android-reviewers,jdelorenzo" for causing fenix failures.
Pushed by nbond@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/f552c8c6e442 https://hg.mozilla.org/integration/autoland/rev/d2acbe9033db Part 6 - Refactor `TabsTrayState` to use a generic item type r=android-reviewers,calu https://github.com/mozilla-firefox/firefox/commit/30ec465fe402 https://hg.mozilla.org/integration/autoland/rev/d6d34899c62a Part 7 - Filter down the tabs tray tab data to only the necessary parts r=android-reviewers,jdelorenzo
Status: ASSIGNED → RESOLVED
Closed: 1 month ago
Resolution: --- → FIXED
Target Milestone: --- → 150 Branch
Flags: needinfo?(nbond)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: