Slim bottom tab bar to Apple height; remove redundant reload button; bump to 2.4
Build iOS App / Build .ipa and publish source (push) Successful in 25s

- Bottom tab bar: reduce vertical padding (8→4), icon size (20→18), and
  bottom inset (8→4) so it matches Apple's standard compact tab bar height
  (Apple Music etc.) instead of a tall bar.
- Remove the manual reload button from the loaded PR toolbar — the detail
  view auto-loads on appearance, so it was redundant clutter. The reload
  button is kept only on the error/retry state. Bump to 2.4.
This commit is contained in:
Hermes committed 2026-08-13 06:59:09 +00:00
1 parent 880cff9e68
commit 7399187fb4
2 files changed
+11 -12

No files matched your search

+4 -4
View File
@@ -187,7 +187,7 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 14;
CURRENT_PROJECT_VERSION = 15;
DEVELOPMENT_TEAM = "";
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_KEY_CFBundleDisplayName = "GiteaPR";
@@ -197,7 +197,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 2.3;
MARKETING_VERSION = 2.4;
PRODUCT_BUNDLE_IDENTIFIER = com.bueso.giteapr;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_EMIT_LOC_STRINGS = YES;
@@ -211,7 +211,7 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 14;
CURRENT_PROJECT_VERSION = 15;
DEVELOPMENT_TEAM = "";
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_KEY_CFBundleDisplayName = "GiteaPR";
@@ -221,7 +221,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 2.3;
MARKETING_VERSION = 2.4;
PRODUCT_BUNDLE_IDENTIFIER = com.bueso.giteapr;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_EMIT_LOC_STRINGS = YES;
+7 -8
View File
@@ -100,7 +100,6 @@ struct PRDetailView: View {
bottomTabBar
}
.toolbar {
ToolbarItem(placement: .primaryAction) { reloadButton }
if prIsOpen {
ToolbarItem(placement: .primaryAction) { mergeButton }
ToolbarItem(placement: .primaryAction) { reviewMenu }
@@ -132,17 +131,17 @@ struct PRDetailView: View {
}
/// Bottom tab bar: icon-only navigation between the PR's sections, in a
/// floating capsule style (like the latest iOS tab bars) rather than a
/// full-width bar.
/// compact floating capsule style matching Apple's standard tab bar
/// height (Apple Music etc.), not a tall bar.
private var bottomTabBar: some View {
HStack {
ForEach(DetailTab.allCases) { tab in
Button {
selectedTab = tab
} label: {
VStack(spacing: 2) {
VStack(spacing: 1) {
Image(systemName: tab.icon)
.font(.system(size: 20))
.font(.system(size: 18))
Text(tab.rawValue)
.font(.caption2)
}
@@ -151,15 +150,15 @@ struct PRDetailView: View {
}
}
}
.padding(.vertical, 8)
.padding(.vertical, 4)
.padding(.horizontal, 6)
.background(
Capsule()
.fill(.regularMaterial)
.shadow(color: .black.opacity(0.15), radius: 8, y: 2)
.shadow(color: .black.opacity(0.12), radius: 6, y: 1)
)
.padding(.horizontal, 16)
.padding(.bottom, 8)
.padding(.bottom, 4)
}
private var reviewMenu: some View {