From 2d3cc6e6b434bcd701e23a70df1c1d39301567d5 Mon Sep 17 00:00:00 2001 From: hl-valdemar Date: Sun, 18 Oct 2026 23:39:31 +0200 Subject: [PATCH] style: soften start screen typography and spacing --- README.md | 2 ++ Sources/App/TerebiApp.swift | 14 +++++++------- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index d8409d8..8be0b45 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,8 @@ Open one or more local files with **⌘O**, drag them onto the video, or use Fin The start screen uses a fixed 640 × 400-point two-pane window: Terebi's identity and version on the left; **Open…**, **Open URL…**, and the six most recently played local files or YouTube videos on the right. Opening media restores normal resizing; closing media returns to the fixed start size. Shortcut hints follow your configured bindings. **Open URL…** reveals a focused inline YouTube field. When the most recent item has saved progress, it appears once as a **Resume** row with its saved timestamp. Recent titles and ordering survive relaunches; failed opens are not added. Resolved streams are excluded because reopening them requires a fresh external handoff. The action pane scrolls, and drag-and-drop remains available. +Start-screen actions use 14-point text and begin 64 points below the top edge. Open actions have no idle fill; their background appears on hover or press. + | Action | Default shortcut | | --- | --- | | Play / pause | Space or K | diff --git a/Sources/App/TerebiApp.swift b/Sources/App/TerebiApp.swift index d4d4463..431ee9e 100644 --- a/Sources/App/TerebiApp.swift +++ b/Sources/App/TerebiApp.swift @@ -2146,11 +2146,11 @@ private struct PlayerContent: View { .font(.system(size: sidebarWidth < 160 ? 48 : 72, weight: .light)) .foregroundStyle(Color(SunsetPalette.accent)) .accessibilityHidden(true) - .padding(.top, max(48, size.height * 0.16)) + .padding(.top, max(48, size.height * 0.16) + 20) VStack(spacing: 6) { - Text("Terebi").font(.system(size: 23, weight: .semibold)) + Text("Terebi").font(.system(size: 20, weight: .semibold)) if let version = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String { - Text(version).font(.system(size: 17)).foregroundStyle(.secondary) + Text(version).font(.system(size: 14)).foregroundStyle(.secondary) } } .padding(.top, min(80, size.height * 0.14)) @@ -2173,7 +2173,7 @@ private struct PlayerContent: View { .foregroundStyle(.secondary) } } - .buttonStyle(StartScreenButtonStyle(prominent: true)) + .buttonStyle(StartScreenButtonStyle()) .accessibilityLabel("Open File…") Button(action: toggleYouTubeInput) { HStack { @@ -2214,16 +2214,16 @@ private struct PlayerContent: View { } if model.recentMedia.isEmpty { Text("Drop a media file or YouTube link here") - .font(.system(size: 12)) + .font(.system(size: 11)) .foregroundStyle(.secondary) .padding(.horizontal, 14) .padding(.top, 20) } } - .font(.system(size: 17, weight: .medium)) + .font(.system(size: 14, weight: .medium)) .disabled(!model.canOpen) .padding(.horizontal, size.width < 600 ? 14 : 30) - .padding(.top, 44) + .padding(.top, 64) .padding(.bottom, 24) } .frame(maxWidth: .infinity, maxHeight: .infinity)