Skip to content

Settings UI Improvements#511

Open
imbercal wants to merge 10 commits intoloopandlearn:devfrom
imbercal:SettingsUI
Open

Settings UI Improvements#511
imbercal wants to merge 10 commits intoloopandlearn:devfrom
imbercal:SettingsUI

Conversation

@imbercal
Copy link
Contributor

Streamlines the Settings menu with cleaner navigation, reduced redundancy, and improved control layouts. No logic changes - UI/UX only.

Changes

Menu Item Renaming

Removed redundant "Settings" suffix from all menu items since they're already inside the Settings screen - eg General Settings -> General

Navigation Improvements

Moved Community and About into the More page, reordered and aligned items within the settings pages to a more streamlined view. Merged Alarms into app settings as ability to add alarms is already in Alarms page. Changed the modal that appears on managing tabs to be a full page, consistent with all other menu items.

Fix: App Icon on About LoopFollow page

Units Picker

  • Changed picker style from .segmented to .menu (cleaner, less prominent for a rarely-changed setting)
  • Moved from the main Settings menu (Data Settings section) to the top of General Settings

Volume Level Stepper (Alarm Settings)

The Volume Level stepper changed its label text on every +/- tap (e.g., "Volume Level: 50%" → "Volume Level: 55%"), causing text reflow.

Fix: Split into fixed label + value + hidden-label stepper:

Volume Level          75%  [–] [+]

@bjorkert
Copy link
Contributor

Hi,

Thanks for the contribution!
To make the review easier, especially for those who don’t read the code in detail, could you please add before-and-after screenshots for the affected views?

@imbercal
Copy link
Contributor Author

Sorry for the delay in doing some screenshots - been a bit busy! I've just done from the Mac desktop version, let me know if you want some from iOS although the changes are effectively the same.

Settings before changes

Before - settings menu Before - alarm settings Before - general settings

Settings post changes

After - settings menu After - general settings After - alarm settings After - about

@bjorkert
Copy link
Contributor

Thanks for the screen shots @imbercal!

@codebymini, you are also redoing the settings navigation. How do you see these changes align with what you are doing?

Copy link
Collaborator

@codebymini codebymini left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will collide with changes in #522 and #516.

@bjorkert
Copy link
Contributor

bjorkert commented Mar 9, 2026

Hi @imbercal, thanks for this work — the UI polish looks great in the screenshots (removing redundant "Settings" suffixes, the cleaner volume stepper, the About page with app icon).

Unfortunately this PR now has merge conflicts with dev. Since it was opened, PR #516 landed significant changes to several of the same files — specifically the navigation/menu system, tab customization, and MoreMenuViewController. There are 7 overlapping files:

  • SettingsMenuView.swift
  • TabCustomizationModal.swift
  • MoreMenuViewController.swift
  • MainViewController.swift
  • GeneralSettingsView.swift
  • GraphSettingsView.swift
  • project.pbxproj

These are all core navigation files, so the conflicts are likely non-trivial to resolve.

A suggestion that might make this easier: consider breaking this PR into smaller, independent pieces. For example:

  1. Settings label cleanup + Volume stepper fix — The menu item renaming (removing "Settings" suffix) and the volume stepper label fix are self-contained changes within individual settings views (AlarmSettingsView, BackgroundRefreshSettingsView, NightscoutSettingsView, etc.). Most of these files don't overlap with New stats #516 at all.

  2. About page — The new AboutView.swift and app icon display asset are entirely new files with no conflicts.

  3. NavigationRow helper — Also a new file, no conflicts.

  4. Navigation restructuring — The SettingsMenuView, MoreMenuViewController, and TabCustomizationModal changes are where the real conflicts live. These would need to be reworked against the new tab system from New stats #516.

Parts 1–3 could likely be merged quickly with minimal or no conflict resolution. Part 4 would need a rebase against the current dev branch and probably some rethinking to align with the new tab/menu architecture from #516.

This kind of conflict is just a natural part of open source — two people independently improving the same area. The good news is that most of your changes (the per-view cleanups, About page, NavigationRow) are independent and can go in without much fuss. Let us know how you'd like to proceed!

@imbercal
Copy link
Contributor Author

Thanks

I've been working on updates already to this to resolve the conflicts - hoping to have ready early next week.

Thanks

Tom

@marionbarker
Copy link
Collaborator

Thank you for your contribution.

Closing in favor of PR #541 which was just merged into dev. Feel free to provide comments after looking at dev: v4.6.10 or newer. Some of your suggestions were incorporated.

The LoopFollowDocs are also being updated before we release dev to main.

@imbercal
Copy link
Contributor Author

@marionbarker Thanks for the update, and glad to hear some of the suggestions made it in.

I do want to share some honest feedback though — I'd commented just last week that I was actively working through the conflict resolution and expected to have it ready early this week, so it was a bit surprising to see this closed in the meantime in favour of a PR that doesn't address some of the more fundamental UI improvements.

I think it's worth reflecting on the contributor experience here — when someone invests time in a PR, signals they're actively working to resolve conflicts, and then sees it closed without warning in favour of something else, it's pretty discouraging. For an open source project to thrive it needs to attract and retain new contributors, and this kind of experience makes it hard to justify the effort of contributing again.

From an end-user and docs perspective, frequent structural changes to settings navigation do create some churn, so I hope the remaining items can find their way in over time.

@marionbarker
Copy link
Collaborator

I’m sorry. I knew you had been warned of the other work that was ongoing, but I missed reading the message exchanges in detail. I see there were parts of this independent of what 516 and 541 changed. I reopened this PR. You can chose to continue this PR or start a new one. We do not mean to discourage contributions.

@marionbarker marionbarker reopened this Mar 15, 2026
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.

5 participants