Skip to content

[Repo Assist] Fix: apply current colour temperature when enabling all-monitors mode #57

Description

@github-actions

🤖 This PR was created by Repo Assist, an automated AI assistant.

Problem

When the user enables "show on all monitors" mode, the additional monitor windows were created with hardcoded neutral-white gradient stops (RGB 255,255,255 / 240,240,240). Any brightness/temperature changes made before toggling all-monitors mode were silently discarded on the new windows — they always showed the default white glow.

Root Cause

ShowOnAllMonitors() sets up the window geometry but never called UpdateAdditionalMonitorWindows() to apply the user's current colour temperature and brightness to the new windows.

Fix

Call UpdateAdditionalMonitorWindows() at the end of ShowOnAllMonitors() so all new monitor windows immediately reflect the main window's current colour temperature and brightness:

private void ShowOnAllMonitors()
{
    // ... existing window creation code ...
    UpdateAdditionalMonitorWindows(); // NEW: sync colour temp & brightness
}

Bonus: Extracts the magic number 124 in RepositionControlWindow() to a named constant ControlWindowBottomOffset for clarity.

Test Status

Build: 0 errors, 0 warnings (net10.0-windows, EnableWindowsTargeting=true)

Closes #47

AI Disclosure

This PR was created by Repo Assist. Please review the fix logic before merging.

Note

🔒 Integrity filter blocked 2 items

The following items were blocked because they don't meet the GitHub integrity level.

To allow these resources, lower min-integrity in your GitHub frontmatter:

tools:
  github:
    min-integrity: approved  # merged | approved | unapproved | none

Generated by Repo Assist · ● 1.4M ·

To install this agentic workflow, run

gh aw add githubnext/agentics/workflows/repo-assist.md@cbb46ab386962aa371045839fc9998ee4e97ca64

Note

This was originally intended as a pull request, but GitHub Actions is not permitted to create or approve pull requests in this repository.
The changes have been pushed to branch repo-assist/improve-all-monitors-color-temp-2026-06-11-0d513561036f781f-6ebd69333760fd08-a83b8d0b5b307bdc.

Click here to create the pull request

To fix the permissions issue, go to SettingsActionsGeneral and enable Allow GitHub Actions to create and approve pull requests. See also: gh-aw FAQ

Show patch preview (61 of 61 lines)
From 445e726c7c94c0dfb65e2458f9a00251db4861b4 Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
 <41898282+github-actions[bot]@users.noreply.github.com>
Date: Fri, 12 Jun 2026 13:59:45 +0000
Subject: [PATCH] fix: apply current color temperature when enabling
 all-monitors mode

ShowOnAllMonitors() was creating additional monitor windows with hardcoded
neutral-white gradient stops (RGB 255,255,255 / 240,240,240) and never
calling UpdateAdditionalMonitorWindows() to apply the user's current
color temperature setting. Any brightness/temperature change made before
toggling all-monitors mode was silently discarded on the new windows.

Fix: call UpdateAdditionalMonitorWindows() after all windows are shown so
brightness and colour temperature are in sync with the main window.

Also extract the magic number 124 in RepositionControlWindow() to a named
constant (ControlWindowBottomOffset) for clarity.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
---
 WindowsEdgeLight/MainWindow.xaml.cs | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/WindowsEdgeLight/MainWindow.xaml.cs b/WindowsEdgeLight/MainWindow.xaml.cs
index c24a3c7..f3e551f 100644
--- a/WindowsEdgeLight/MainWindow.xaml.cs
+++ b/WindowsEdgeLight/MainWindow.xaml.cs
@@ -17,6 +17,9 @@ public partial class MainWindow : Window
     private const double OpacityStep = 0.15;
     private const double MinOpacity = 0.2;
     private const double MaxOpacity = 1.0;
+
+    // Vertical offset (in DIPs) from the bottom of the main window to position the control toolbar
+    private const double ControlWindowBottomOffset = 124;
 	
 
     // Color temperature ("cool" blue-ish to "warm" amber-ish)
@@ -971,6 +974,9 @@ Version {version}";
                 monitorCtx.Window.Show();
             }
         }
+
+        // Sync brightness and color temperature to match the main window's current state
+        UpdateAdditionalMonitorWindows();
     }
 
     private void HideAdditionalMonitorW
... (truncated)

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions