Skip to content

Follow-ups from the v0.10.0 pre-release review (DPI window bounds, git busy key, unmerged status codes) #181

Closed

Description

@mortenaslo

Lower-severity findings from the v0.10.0 pre-release review that were deliberately not fixed before the release. Everything the review rated medium or higher went into the pre-release PR instead.

1. Window bounds restore under per-monitor DPI (from #175)

RestoreWindowState (MainWindow.xaml.cs, called from OnLoaded) applies the saved Left/Top/Width/Height after the window is already shown on the primary monitor. It clamps them against SystemParameters.VirtualScreen*, which is in primary-monitor DIPs. Now that the app is per-monitor DPI aware (v2), two cases misbehave:

  • Mixed-DPI setups: a saved position on a secondary monitor with a different scale triggers a DPI change and a resize while the window moves there. The saved size can drift from run to run, and the clamp can put the window in the wrong place.
  • First run after upgrading: the bounds were saved by the system-DPI build, in a different coordinate space.

Cosmetic only; no data is lost. Likely fix: apply the bounds in SourceInitialized, or via SetWindowPlacement, before the window is first shown.

2. Git busy-slot key before RepoRoot resolves (from #177)

GitRepoKey falls back to WorkingFolder while RepoRoot is still null. For a brief window after launch, two panes of the same repo can therefore hold different keys and run git operations at the same time. The second one fails on index.lock; nothing is lost.

3. ParseStatusV2 shows every unmerged entry as "UU" (from #177)

AA, DU and UD are all shown as UU. Separately, paths that git C-quotes even with core.quotePath=false (those containing ", \, a tab or a newline) are displayed still quoted. File counts are unaffected.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions