Skip to content

Add live settings and accent themes - #5

Open
ognjeeen wants to merge 6 commits into
masterfrom
feature/settings-preferences
Open

Add live settings and accent themes#5
ognjeeen wants to merge 6 commits into
masterfrom
feature/settings-preferences

Conversation

@ognjeeen

Copy link
Copy Markdown
Owner

Summary

  • add a dedicated Settings window for theme, widget layout, displayed limit, and Windows startup preferences
  • move Codex activity setup into Settings and improve light-theme contrast and toggle motion
  • add five locally persisted, theme-aware accent colors

Testing

  • dotnet restore .\CodexUsageWidget.slnx
  • dotnet build .\CodexUsageWidget.slnx -c Release --no-restore
  • dotnet test .\CodexUsageWidget.slnx -c Release --no-build (125 tests passed)

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d0fcd1b732

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +5 to +8
Width="468"
Height="700"
ResizeMode="NoResize"
WindowStartupLocation="CenterOwner"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Make Settings fit the monitor's effective work area

On a 768-pixel-high display at 125% DPI, the effective work area is roughly 614 DIPs, so this fixed 700-DIP, non-resizable window cannot fit onscreen. Because the inner ScrollViewer is measured against the oversized window rather than the visible work area, controls near the bottom—especially activity-hook actions—can remain unreachable; cap the window height to its current monitor's work area and let the scroll viewer consume the reduced space.

AGENTS.md reference: AGENTS.md:L45-L46

Useful? React with 👍 / 👎.

Comment on lines +307 to +309
private void ShowSettings()
{
var shouldReturnToTaskbar = _displayMode == WidgetDisplayMode.TaskbarIndicator;

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Prevent duplicate Settings dialogs

If another Settings request reaches the dispatcher while ShowDialog() is running its nested message loop—for example from the still-active notification-area icon—this method does not inspect _settingsWindow or _isSettingsOpen and creates another modal dialog. The nested call overwrites _settingsWindow, and closing it clears the field while the original dialog remains open, so subsequent usage-availability and startup-rollback updates no longer reach that dialog; reuse and activate the existing instance as the removed setup-window controller did.

AGENTS.md reference: AGENTS.md:L17-L19

Useful? React with 👍 / 👎.

- Distinguish Windows app and system theme preferences
- Keep accent buttons synchronized with palette changes
- Constrain settings height to the monitor work area
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