diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 28c6b83..15a846f 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -2,7 +2,7 @@ All notable GoSentry changes are recorded in this file. -## 0.16.0 - 2026-07-27 +## 1.0.0 - 2026-07-27 **The window opens at the size it asks for, and the Jobs divider can be dragged.** diff --git a/src/app/version.go b/src/app/version.go index 260adf4..c11f844 100644 --- a/src/app/version.go +++ b/src/app/version.go @@ -3,4 +3,4 @@ package app // Version is the application version shown in the GUI and used by build // scripts in artifact names. It is a var rather than a const so release builds // can override it with Go ldflags when CI tags a build. -var Version = "0.16.0" +var Version = "1.0.0" diff --git a/src/ui/jobs_view_details.go b/src/ui/jobs_view_details.go index a475642..7e2fe11 100644 --- a/src/ui/jobs_view_details.go +++ b/src/ui/jobs_view_details.go @@ -60,6 +60,12 @@ func newDetailsPanel(firstJob job, rt *domain.JobRuntime, globalOverlapPolicy do // The height here is only a floor: the scroll grows to fill whatever space the // border layout gives it, so keep the minimum small so the whole window can be // shrunk on short (720p) screens. Long output stays reachable by scrolling. + // The width, unlike the height, is load-bearing outside this widget: it is the + // details pane's widest minimum, so it is also what keeps the metadata value + // column non-empty — captionValueLayout hands the value whatever is left after + // the caption and has no floor of its own (see its comment in layout.go). + // Lowering it narrows those values with nothing to warn about it; the user can + // only widen them, by dragging the jobs split divider left. d.commandOutputScroll.SetMinSize(fyne.NewSize(460, 70)) d.logs = widget.NewList( func() int { return len(d.selectedLogs) }, diff --git a/src/ui/layout.go b/src/ui/layout.go index e5bfb75..3c1f821 100644 --- a/src/ui/layout.go +++ b/src/ui/layout.go @@ -113,6 +113,13 @@ func (l fixedHeightLayout) Layout(objects []fyne.CanvasObject, size fyne.Size) { // stops it from growing with the window (as an even two-column grid would), so // the extra space a wider window provides goes entirely to the value column. It // expects exactly two children: caption first, value second. +// +// The value column has no minimum of its own: it gets whatever the container's +// width leaves, down to zero. What keeps it readable in the details pane is the +// 460 px minimum on commandOutputScroll (jobs_view_details.go), which is that +// pane's widest minimum and therefore its floor — a constant that exists for an +// unrelated reason. A new caller that gives this layout less width gets a value +// column that silently renders narrow or empty rather than one that clips. type captionValueLayout struct { captionWidth float32 }