Kaynağa Gözat

Refine main page typography and meeting tab bar spacing.

Reduce heading sizes and tune the platform tab bar shape, insets, and item spacing so the first screen matches the requested compact centered look.

Made-with: Cursor
huzaifahayat12 3 ay önce
ebeveyn
işleme
b3ff8cdeaa
1 değiştirilmiş dosya ile 22 ekleme ve 14 silme
  1. 22 14
      meetings_app/ViewController.swift

+ 22 - 14
meetings_app/ViewController.swift

@@ -141,15 +141,18 @@ private extension ViewController {
     }
 
     func meetingTypeTabs() -> NSView {
-        let shell = roundedContainer(cornerRadius: 20, color: palette.tabBarBackground)
+        let wrapper = NSView()
+        wrapper.translatesAutoresizingMaskIntoConstraints = false
+
+        let shell = roundedContainer(cornerRadius: 24, color: palette.tabBarBackground)
         shell.translatesAutoresizingMaskIntoConstraints = false
-        shell.heightAnchor.constraint(equalToConstant: 56).isActive = true
+        shell.heightAnchor.constraint(equalToConstant: 48).isActive = true
 
         let stack = NSStackView()
         stack.translatesAutoresizingMaskIntoConstraints = false
         stack.orientation = .horizontal
         stack.distribution = .fillEqually
-        stack.spacing = 10
+        stack.spacing = 4
 
         stack.addArrangedSubview(topTab("Meet", icon: "􀤆", selected: true))
         stack.addArrangedSubview(topTab("Zoom", icon: "􀤉", selected: false))
@@ -157,15 +160,20 @@ private extension ViewController {
         stack.addArrangedSubview(topTab("Zoho", icon: "􀯶", selected: false))
 
         shell.addSubview(stack)
+        wrapper.addSubview(shell)
         NSLayoutConstraint.activate([
-            shell.widthAnchor.constraint(greaterThanOrEqualToConstant: 700),
-            stack.leadingAnchor.constraint(equalTo: shell.leadingAnchor, constant: 10),
-            stack.trailingAnchor.constraint(equalTo: shell.trailingAnchor, constant: -10),
-            stack.topAnchor.constraint(equalTo: shell.topAnchor, constant: 8),
-            stack.bottomAnchor.constraint(equalTo: shell.bottomAnchor, constant: -8)
+            wrapper.widthAnchor.constraint(greaterThanOrEqualToConstant: 780),
+            shell.leadingAnchor.constraint(equalTo: wrapper.leadingAnchor),
+            shell.trailingAnchor.constraint(equalTo: wrapper.trailingAnchor),
+            shell.topAnchor.constraint(equalTo: wrapper.topAnchor),
+            shell.bottomAnchor.constraint(equalTo: wrapper.bottomAnchor),
+            stack.leadingAnchor.constraint(equalTo: shell.leadingAnchor, constant: 72),
+            stack.trailingAnchor.constraint(equalTo: shell.trailingAnchor, constant: -28),
+            stack.topAnchor.constraint(equalTo: shell.topAnchor, constant: 6),
+            stack.bottomAnchor.constraint(equalTo: shell.bottomAnchor, constant: -6)
         ])
 
-        return shell
+        return wrapper
     }
 
     func meetingUrlSection() -> NSView {
@@ -382,7 +390,7 @@ private extension ViewController {
     }
 
     func topTab(_ title: String, icon: String, selected: Bool) -> NSView {
-        let tab = roundedContainer(cornerRadius: 18, color: selected ? palette.primaryBlue : .clear)
+        let tab = roundedContainer(cornerRadius: 19, color: selected ? palette.primaryBlue : .clear)
         tab.translatesAutoresizingMaskIntoConstraints = false
 
         let iconLabelView = textLabel(icon, font: typography.tabIcon, color: palette.textPrimary)
@@ -466,10 +474,10 @@ private struct Typography {
     let sidebarIcon = NSFont.systemFont(ofSize: 12, weight: .medium)
     let sidebarItem = NSFont.systemFont(ofSize: 16, weight: .medium)
 
-    let pageTitle = NSFont.systemFont(ofSize: 31, weight: .semibold)
-    let sectionTitle = NSFont.systemFont(ofSize: 23, weight: .semibold)
-    let sectionTitleBold = NSFont.systemFont(ofSize: 29, weight: .bold)
-    let dateHeading = NSFont.systemFont(ofSize: 21, weight: .medium)
+    let pageTitle = NSFont.systemFont(ofSize: 27, weight: .semibold)
+    let sectionTitle = NSFont.systemFont(ofSize: 20, weight: .semibold)
+    let sectionTitleBold = NSFont.systemFont(ofSize: 25, weight: .bold)
+    let dateHeading = NSFont.systemFont(ofSize: 18, weight: .medium)
 
     let tabIcon = NSFont.systemFont(ofSize: 13, weight: .regular)
     let tabTitle = NSFont.systemFont(ofSize: 31 / 2, weight: .semibold)