Skip to content

UI Refinement#236

Merged
ravindu644 merged 19 commits into
ravindu644:devfrom
VizXtreme:ui
Jul 15, 2026
Merged

UI Refinement#236
ravindu644 merged 19 commits into
ravindu644:devfrom
VizXtreme:ui

Conversation

@VizXtreme

Copy link
Copy Markdown
Contributor

Detailed Changelog

Here is a detailed breakdown of the recent changes made to the project, ordered from newest to oldest.

9cb8cd2 - Update Init system dropdown menus to properly adapt to Light/Dark/AMOLED backgrounds

  • What changed: Applied the same dynamic background logic from DsDropdown to the 3-dot "More" menus inside the Systemd, Procd, and OpenRC container management screens.
  • Why: To ensure a perfectly cohesive experience across the entire app, allowing these menus to adapt gracefully to Light (surfaceContainer), Dark (surfaceContainerHigh), and pure AMOLED black modes.

9c91879 - Update Dropdown menu background to correctly adapt to light, dark, and AMOLED modes

  • What changed: Modified DsDropdown to dynamically calculate the theme state using the luminance of the app background.
  • Why: This enables the dropdown menu to accurately match the homepage cards in Light Mode, shift to a deeper dark in Dark Mode, and safely adapt to the pitch-black OLED tone when AMOLED mode is active.

55bb1a9 - Add Debugging header and wrap About dialog sections in grouped cards

  • What changed: Added a "Debugging" section title above the Generate Bug Report card. Inside the About Droidspaces dialog, the developers (Ravindu644, Telegram, Source Code) and contributors lists are now wrapped in nicely-padded grouped cards with matching floating dividers.
  • Why: To maintain the same premium design language established in the Settings page across all popups, and to clearly categorize the Bug Report tool.

9ca0bda - Fix overlapping separators and adapt Settings card backgrounds for Light Mode

  • What changed: Fixed a visual bug where full-width solid backgrounds from the internal ListItem components were creating phantom full-width separators. Also made the main Settings cards dynamically adapt to the surfaceContainer color in Light Mode to exactly match the home screen cards, while retaining surfaceContainerHigh in Dark/AMOLED modes.
  • Why: The internal ListItem background color was opaque by default, which contrasted with the card backgrounds in Light Mode. Setting the internal components to Color.Transparent exposed only the intentional floating separators.

3a2680c - Revamp settings page with grouped cards and separators

  • What changed: Encapsulated the Backend, Appearance, Bug Report, and About Droidspaces options into beautifully rounded grouped cards (24dp radius). Added thin floating separators (0.3f alpha) between items within each card. Also reduced the bottom padding beneath the "OK" button in the About Dialog. (Note: Includes a minor follow-up commit to fix a syntax error).
  • Why: To deliver a premium, modern, and highly cohesive interface that instantly wows the user, replacing the previously flat, unsectioned list.

5526d4d - Fix corner radius mismatch in ContainerCard unified control pill

  • What changed: Adjusted the border radius of the outer control pill in the Container screens.
  • Why: Previously, the outer border had a 12dp radius while the inner action buttons ("Start", "Stop", "Restart") had a 16dp radius, creating a mathematical and visual mismatch. By increasing the outer pill's radius to 20dp, it now perfectly wraps the 16dp buttons (accounting for the 4dp internal padding), resulting in a snug and visually cohesive layout.

ecb251f - Style 3-dot menus in init systems to match DropdownMenu

  • What changed: Standardized the popup menu styling across all init system manager screens (Systemd, Procd, and OpenRC).
  • Why: The 3-dot "More" menus in the service lists were using the default Material 3 styling, which looked out of place. They were updated to match the custom, premium look of the main dropdown menus—featuring 20dp rounded corners, a subtle 0.35f alpha outline border, and compatibility with the AMOLED black theme.

703f879 - Add missing Color import in DsDropdown

  • What changed: Added a missing import statement for androidx.compose.ui.graphics.Color in DsDropdown.kt.
  • Why: A previous commit introduced Color.Transparent to the dropdown styling, but the compiler failed the CI build because the Color class wasn't explicitly imported.

83ba7a1 - Fix dropdown menu not respecting amoled black mode

  • What changed: Disabled Material 3's automatic tonal elevation tinting on DsDropdown.kt components by setting the surfaceTint to transparent.
  • Why: When AMOLED mode was enabled, elevated surfaces like the dropdown menu were automatically receiving a slight grayish tint from the Material 3 design system, preventing them from being pure black. Disabling the tint ensures the dropdown background stays truly pitch black.

c0f42f1, d2f1ea6, & 6b66b7b - Add and Optimize ci_test.yml for faster builds

  • What changed: Created a new isolated CI/CD workflow (ci_test.yml) specifically tailored to speed up the GitHub Actions build pipeline.
  • Why: The original build process was slow due to sequential compilation across multiple architectures. The new workflow introduces heavy parallelization (using make -j and Gradle parallel flags) and leverages actions/cache@v4 to cache the native toolchains, drastically reducing overall build times.

f17f299 - Wrap dropdown popup in custom MaterialTheme to fix corner radius clipping

  • What changed: Wrapped the DropdownMenu component in a local MaterialTheme override to enforce a strict 20dp corner shape.
  • Why: The popup corners of the dropdown menu were slightly exceeding their outline border because the internal shape of the Material 3 dropdown didn't match the custom outline radius we applied. The local theme override forces the internal shape to match the outer shape perfectly.

c8f4c7f - Refactor components for localization, standard borders, and double-toggle fixes

  • What changed: Refactored multiple core UI components (SwitchItem, ToggleCard, HelpCard).
  • Why:
    1. Standardized all border opacities to a consistent 0.35f alpha for a uniform look across the app.
    2. Fixed a UX bug where interacting with certain interactive list items caused a "double-toggle" effect due to overlapping click listeners.

@VizXtreme VizXtreme changed the title UI UI Refinement Jul 15, 2026
@ravindu644
ravindu644 changed the base branch from main to dev July 15, 2026 16:26
@ravindu644
ravindu644 merged commit 2a782aa into ravindu644:dev Jul 15, 2026
2 checks passed
ravindu644 pushed a commit that referenced this pull request Jul 15, 2026
* ui: Customize dropdown menu styling to match Material card design

* ci: Add test builds vizx workflow

* ui: Refactor components for localization, standard borders, and double-toggle fixes

* ci: Add ui branch to trigger list in ci_test.yml

* ui: Wrap dropdown popup in custom MaterialTheme to fix corner radius clipping

* ci: Optimize ci_test.yml for faster builds

* ui: Fix dropdown menu not respecting amoled black mode

* fix: Add missing Color import in DsDropdown

* ui: Style 3-dot menus in init systems to match DropdownMenu

* ui: Fix PullToRefresh teleport animation on release

* ui: Fix corner radius mismatch in ContainerCard unified control pill

* ui: Revert PullToRefresh animation fix

* ui: Revamp settings page with grouped cards and separators, reduce About Dialog button spacing

* ui: Fix syntax error in SettingsScreen bug report card

* ui: Fix overlapping separators and match Settings card background with ContainerCard

* ui: Add Debugging header and wrap About dialog sections in grouped cards

* ui: Update Dropdown menu background to correctly adapt to light, dark, and AMOLED modes

* ui: Update Init system dropdown menus to properly adapt to Light/Dark/AMOLED backgrounds

* Delete .github/workflows/ci_test.yml
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.

2 participants