fix(settings): keep the full window inside its monitor work area
Center the bounded Settings window rather than retaining an offscreen cascading position. Record actual26/26 focused and106/106 native success and preserve current distributed acceptance. Co-Authored-By: Codex <noreply@openai.com> Signed-off-by: James Maes <jmaes@dmdbrands.com>
This commit is contained in:
5 files changed
+57
-7
No files matched your search
@@ -2,6 +2,34 @@
|
||||
|
||||
Updated: 2026-10-11
|
||||
|
||||
## Exact9d5c0d1 native acceptance passes; Settings placement corrected locally - 2026-10-11
|
||||
|
||||
Exact CI38188145397 focused26/26 and full native106/106 pass, zero failures/skips.
|
||||
Actual TRX proves repeated physical Contents/source synchronization, offscreen
|
||||
Nord palette/default pixel/save/reopen, future-schema export, trimmed full-title
|
||||
hover/click, both Printing cases and raw-inline provenance. Retain current-focused-
|
||||
9d5c0d1.log/current-native-9d5c0d1.log and reader-regressions-38188145397 actual
|
||||
TRX/screenshots. Full native duration9m45. Installed114614880391 is live; no
|
||||
current published/installed/coexistence/signature result inferred.
|
||||
|
||||
Inspect actual theme-manager and Printing Settings screenshots. Controls/palettes
|
||||
are native and explicit, but default OS cascading position pushes right/bottom
|
||||
edges beyond the hosted monitor. FitWindow previously constrained size only;
|
||||
MoveAndResize now centers the complete resized window inside its actual monitor
|
||||
work area. Extend the existing native layout case with independent virtual-
|
||||
desktop containment, preserving its resizing/draft checks. Zero-warning Release
|
||||
and full formatting pass locally; fresh runtime/screenshots required. Hold the
|
||||
next push until current full installed execution is terminal.
|
||||
|
||||
Review gate currently fails because no maintainer-owned automated review record
|
||||
exists for the exact head; never fabricate acknowledgement. Shared signing/
|
||||
license/inventory/AppKit Help/template Help PRs31/32/36/29/4 remain unmerged drafts
|
||||
with no reviews, actual starter remotewindows-app-template. Protected release
|
||||
environment has no signing variables. User-selected OS defaults/Explorer, owner
|
||||
layout feedback, reviewed shared/license requirements, genuine current-head
|
||||
review and deployed Azure/shipped signing remain required. No Azure retry, local
|
||||
input, preview55472 changes, shared merge, tags or production publication.
|
||||
|
||||
## Exact1bfab22 terminal evidence retained; corrective candidate ready - 2026-10-11
|
||||
|
||||
CI38187115859 is terminal: focused23/26 and native102/106 fail, zero skips.
|
||||
|
||||
+10
-6
@@ -1,16 +1,20 @@
|
||||
# Development Tasks
|
||||
|
||||
- [x] Exact9d5c0d1 full native106/106 and focused26/26 pass, zero skips; retain actual TRX/Settings screenshots and logs.
|
||||
- [x] Correct observed offscreen Settings placement by centering size/position in the actual monitor work area; zero-warning build/format pass.
|
||||
- [ ] Verify whole-window visibility and inspect complete Settings screenshots on the next exact head; preserve current live installed run before pushing.
|
||||
|
||||
- [x] Retain terminal1bfab22 native102/106, focused23/26 and published600-second/no-TRX evidence; same four failures, installed lifecycle not reached.
|
||||
|
||||
- [x] Retain exact1bfab22 focused23/26 TRX; long-title tooltip/physical activation passes, offscreen Nord/future-theme lookup and source alignment fail.
|
||||
- [x] Prepare native scrolling of the owned virtualized theme list to realize the same exact IDs before unchanged selection/assertions/deadline.
|
||||
- [ ] Execute offscreen palette/default and existing future-schema/export acceptance with local49f0556 repeat-heading correction on the next exact pushed head.
|
||||
- [x] Exact9d5c0d1 focused26/26/native106/106 prove offscreen palette/default, existing future-schema/export and repeat-heading correction; zero skips.
|
||||
|
||||
- [x] Restore trusted heading Tag on the new Contents content Grid so repeat ItemClick can identify the selected row; local zero-warning build/format pass.
|
||||
- [ ] Verify the unchanged repeated physical Contents activation/source alignment case on the next exact pushed head; client input coordinates are not screen bounds.
|
||||
- [x] Exact9d5c0d1 unchanged repeated physical Contents/source alignment passes; pointer diagnostics use client coordinates.
|
||||
|
||||
- [x] Prepare accessible native theme palette previews, state labels and explicit default radio selection with unchanged copied-draft/save semantics.
|
||||
- [ ] Execute actual theme palette pixels/default/save/reopen acceptance and inspect its Settings screenshot on the exact next hosted head.
|
||||
- [x] Exact9d5c0d1 actual palette pixels/default/save/reopen passes and Settings screenshot inspected; new placement correction remains pending.
|
||||
- [x] Retain terminal b2ecc8c focused23/24/native101/102 and published600-second timeout/no TRX; only source alignment fails in completed suites.
|
||||
- [x] Prepare fixture-only closure of all owned windows before unchanged FlaUI close/kill fallback; preserve cases/assertions/deadlines.
|
||||
- [ ] Verify whole published/installed completion and corrected actual source/tooltip/default status on the next exact head.
|
||||
@@ -18,7 +22,7 @@
|
||||
- [x] Prepare truthful General effective `.md` default status with bounded read-only Windows querying and automatic/manual refresh;7 actual read-only/isolated adapter tests pass.
|
||||
- [ ] Verify actual General status/refresh and user-selected OS chooser/Explorer behavior on an installed build; registration alone is not default selection.
|
||||
- [x] Exactb2ecc8c focused23/24: both Printing cases/raw-inline/picker/Contents options pass, zero skips; retain remaining physical alignment failure.
|
||||
- [ ] Verify trim-only tooltip placement and actual long-title physical activation plus the unchanged source alignment regression on the next exact hosted head.
|
||||
- [x] Exact9d5c0d1 trimmed tooltip/physical activation and unchanged source alignment pass in focused/full native suites.
|
||||
|
||||
- [x] Retain terminal b5e519e published98/100 TRX: same raw-fold/source-click failures, zero skips; installed lifecycle phase not reached.
|
||||
|
||||
@@ -58,7 +62,7 @@
|
||||
- [x] Update the threat model, renderer attributions and shipped library notices.
|
||||
- [x] Verify first-reader hosted browser acceptance: 13 native/UI tests passed on f1756d2.
|
||||
- [x] Verify live reload/browser network scenarios and retain actual theme screenshots on head 77dd04d.
|
||||
- [ ] Discuss the desired first release and Windows-specific behavior with the owner.
|
||||
- [x] Owner authorizes signed stable1.0/dev releases with the requested Windows-specific controls/defaults; publication still requires all gates.
|
||||
- [x] Implement/test directory watching and validated relative viewport state for saves/replacements/deletion recovery.
|
||||
- [x] Complete actual browser save/lock/replacement/deletion/scroll acceptance (issue #6): hosted native/UI 26/26; published 26/26; installed stable/dev 25/25 each.
|
||||
- [x] Port Darin's 20 built-in themes and persistent document selection; validate schema, font escaping and invariant CSS.
|
||||
@@ -195,7 +199,7 @@ checks below do not substitute for current native/distributed acceptance.
|
||||
- [ ] Pass hosted CI on the actual current implementation; retain native/published/installed TRXs, screenshots and real PDFs.
|
||||
- [x] Implement gclo-style separate stable/dev package IDs and installed-channel title/data identity;586 core tests/100% measured lines pass.
|
||||
- [x] Prepare simultaneous owned stable/dev windows/profiles/registrations, real AppKit updates with a live unchanged sibling, and stable uninstall preserving dev;64 tooling tests/all configured analyzer rules pass.
|
||||
- [ ] Verify the new simultaneous phase on a fresh exact hosted head; actual secondary activation/default chooser remain separate requirements.
|
||||
- [x] Exact53755ab actual simultaneous windows/profiles/isolated updates/uninstall phase passes; current-head distributed acceptance and OS chooser remain separate requirements.
|
||||
- [ ] Diagnose dbda6d4 focused17/20 failures with retained native color/focus/hidden-section evidence; preserve exact assertions and remove temporary debug probes before release.
|
||||
- [ ] Adopt the reviewed/published owned-file signing builder; verify actual Azure resource/profile/publisher and repository-bound OIDC/profile-signer permission.
|
||||
- [ ] Obtain genuine current-head maintainer review acknowledgement, complete required checks and merge.
|
||||
|
||||
@@ -118,3 +118,16 @@ FrameworkElement; an already selected row produces no SelectionChanged event.
|
||||
The unchanged actual physical source/Contents regression must verify this on the
|
||||
next head. Pointer diagnostics are client coordinates, not screen-space bounds;
|
||||
the earlier direct coordinate/tooltip-interception inference was not established.
|
||||
|
||||
## Exact current native proof and placement finding
|
||||
|
||||
Exact9d5c0d1 / CI38188145397 focused26/26 and native106/106 pass, zero skips.
|
||||
Actual repeat-click/source geometry, palette pixels/default/save/reopen, future
|
||||
schema export, trimmed tooltip/physical activation, Printing and raw-inline cases
|
||||
pass. Retain actual TRX/screenshots under reader-regressions-38188145397 and both
|
||||
current native/focused logs. Current distributed acceptance remains live.
|
||||
|
||||
Actual Settings screenshots reveal the window extends beyond the monitor despite
|
||||
its bounded size. Local FitWindow now centers the resized window in its monitor
|
||||
work area; the existing native layout test adds desktop containment. Build/format
|
||||
pass; fresh rendered visibility and full runtime acceptance remain required.
|
||||
@@ -85,7 +85,9 @@ internal sealed partial class SettingsWindow : Window
|
||||
{
|
||||
double scale = this.DpiScale();
|
||||
global::Windows.Graphics.RectInt32 area = Microsoft.UI.Windowing.DisplayArea.GetFromWindowId(AppWindow.Id, Microsoft.UI.Windowing.DisplayAreaFallback.Primary).WorkArea;
|
||||
AppWindow.Resize(new global::Windows.Graphics.SizeInt32(Math.Min((int)(960 * scale), area.Width), Math.Min((int)(720 * scale), area.Height)));
|
||||
int width = Math.Min((int)(960 * scale), area.Width);
|
||||
int height = Math.Min((int)(720 * scale), area.Height);
|
||||
AppWindow.MoveAndResize(new global::Windows.Graphics.RectInt32(area.X + (area.Width - width) / 2, area.Y + (area.Height - height) / 2, width, height));
|
||||
if(AppWindow.Presenter is Microsoft.UI.Windowing.OverlappedPresenter presenter)
|
||||
{
|
||||
presenter.PreferredMinimumWidth = Math.Min((int)(640 * scale), area.Width);
|
||||
|
||||
@@ -275,6 +275,9 @@ public partial class AppTests
|
||||
Window window = session.TopLevelWindows().Single(element => string.Equals(element.Name, session.DisplayName + " — Settings", StringComparison.Ordinal)).AsWindow();
|
||||
Assert.True(session.MainWindow.IsEnabled);
|
||||
Assert.True(window.Patterns.Transform.Pattern.CanResize.Value);
|
||||
var desktop = new System.Drawing.Rectangle(User32.GetSystemMetrics(SystemMetric.SM_XVIRTUALSCREEN), User32.GetSystemMetrics(SystemMetric.SM_YVIRTUALSCREEN),
|
||||
User32.GetSystemMetrics(SystemMetric.SM_CXVIRTUALSCREEN), User32.GetSystemMetrics(SystemMetric.SM_CYVIRTUALSCREEN));
|
||||
Assert.True(desktop.Contains(window.BoundingRectangle), "The complete Settings window must fit on the actual desktop.");
|
||||
window.Patterns.Transform.Pattern.Resize(780, 600);
|
||||
session.WaitForElement("ReadingAppearanceWidth").Patterns.RangeValue.Pattern.SetValue(320);
|
||||
session.WaitFor(() => session.FindInApp(cf => cf.ByAutomationId("ReadingAppearanceLimit")) is { IsEnabled: true } control ? control : null, "the immediate width save");
|
||||
|
||||
Reference in new issue
Block a user