Skip to content

refactor(ui): move features out of Settings, leaving it configuration - #51

Merged
SiteRelEnby merged 1 commit into
mainfrom
feat/settings-defeature
Jul 28, 2026
Merged

refactor(ui): move features out of Settings, leaving it configuration#51
SiteRelEnby merged 1 commit into
mainfrom
feat/settings-defeature

Conversation

@SiteRelEnby

@SiteRelEnby SiteRelEnby commented Jul 27, 2026

Copy link
Copy Markdown
Collaborator

Follow-up to #49. Part of #65.

#49 gave every feature a home in the drawer. This takes the feature entries back out of Settings, so each thing has one obvious place instead of two, and Settings goes back to being configuration.

Rows removed from Settings

Row Was Now
Reminders Settings > Notifications & Lock drawer > Engage
Relationships Settings > System drawer > System

Both are drawer destinations as of #49, and a feature listed in two places is exactly the ambiguity this set out to remove.

Routes off the settings/ prefix

The route names were the tell that these had been filed in the wrong drawer:

settings/notifications/reminders  ->  reminders
settings/relationships            ->  relationships
settings/relationships/graph      ->  relationships/graph
settings/support                  ->  support

Nothing outside SheafApp.kt referenced those strings (no deep links, notification intents or widgets), so this is contained.

Judgement calls

The relationship graph stays a drill-in from the relationships screen rather than becoming a drawer destination. It's a pan/zoom canvas: a drawer destination gets the bar/rail and an edge-swipe-to-open, and that edge-swipe would fight panning the graph. It's one tap from a drawer destination, which is enough.

Files and Support keep their Settings rows. Neither is a buried feature - Files is upload management that belongs with the other data tools, and Support is contact/policy info people reasonably look for in Settings. They're in the drawer too; duplicating a low-traffic info screen isn't the problem we were solving.

Settings after this

Account, Appearance, System (tags, custom fields, archived members), Safety, Data (files, export, import), Notifications & Lock (receiving, channels, devices, fronting notification, app lock), Server, Support, Danger zone, About. Configuration and data management, no features.

Testing

:app:assemblePlayRelease + :app:testPlayReleaseUnitTest green. Device checklist:

  • Settings > Notifications & Lock no longer lists Reminders; drawer > Reminders opens it and create/edit/delete still work
  • Settings > System no longer lists Relationships; drawer > Relationships opens it, types still manage, and the graph opens from there
  • Graph still pans and zooms without the drawer interfering, and still uses the full width
  • Back from Reminders / Relationships returns to Home rather than into Settings
  • Reminder edit (reminders/{id}) and create (reminders/new) both resolve to the right screen
  • Support opens from both the drawer and Settings

Remaining in this plan

  1. Pinnable bar slots (persisted pins + edit screen) instead of the fixed three.

Second half of the navigation rework. The drawer gave every feature a home;
this takes the feature entries back out of Settings so there is one obvious
place for each thing rather than two.

Reminders and Relationships lose their Settings rows: both are drawer
destinations now, and a feature listed in both places is the ambiguity we set
out to remove. Their routes move off the settings/ prefix accordingly, along
with Support and the relationship graph:

  settings/notifications/reminders  ->  reminders
  settings/relationships            ->  relationships
  settings/relationships/graph      ->  relationships/graph
  settings/support                  ->  support

The relationship graph deliberately stays a drill-in from the relationships
screen rather than becoming a drawer destination of its own: it is a pan/zoom
fight the panning.

Files and Support keep their Settings rows. Neither is a buried feature: Files
is upload management that belongs with the other data tools, and Support is
contact and policy info people reasonably look for in Settings.

Settings now holds account, appearance, notification configuration, safety,
data, server, system definitions, danger zone and about.
@SiteRelEnby
SiteRelEnby merged commit 33e9fa2 into main Jul 28, 2026
1 check passed
@SiteRelEnby
SiteRelEnby deleted the feat/settings-defeature branch July 28, 2026 00:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant