refactor(core): split tabs.rs by tab concern

tabs.rs had grown to 538 lines — past the 500-line ceiling — and was
mixing four unrelated concerns:

- `tab_navigation` (URL changes + history back/forward)
- `tab_metadata` (title, favicon, zoom, favorite/pin, sort, sync flag)
- `tab_archive_restore` (un-archive entry points + query matching)
- core CRUD (open / close / move-to-space + private helpers)

Each split file lives below 250 lines and only pulls the `ely_domain`
types and crate helpers it actually uses. `active_tab_mut` and the
`TabUrlUpdate` enum get `pub(super)` so siblings can reach them; no
behaviour change.
This commit is contained in:
2026-05-18 14:20:58 -04:00
parent 4cbd1c8870
commit db7cd2f9bc
5 changed files with 339 additions and 318 deletions
+3
View File
@@ -38,9 +38,12 @@ mod sync_plugin_settings;
mod sync_profiles;
mod sync_reading_list;
mod sync_site_permissions;
mod tab_archive_restore;
mod tab_group_order;
mod tab_groups;
mod tab_lifecycle;
mod tab_metadata;
mod tab_navigation;
mod tab_order;
mod tab_selection;
mod tabs;