Browse Source

Keep enrolled single-class card at normal width.

Use a fixed card width when only one enrolled class is present so the card keeps the intended compact design instead of stretching across the content area.

Made-with: Cursor
huzaifahayat12 1 week ago
parent
commit
529945386d
1 changed files with 8 additions and 1 deletions
  1. 8 1
      classroom_app/ViewController.swift

+ 8 - 1
classroom_app/ViewController.swift

@@ -360,6 +360,7 @@ final class ViewController: NSViewController {
360
     private weak var schedulePageCardsScrollView: NSScrollView?
360
     private weak var schedulePageCardsScrollView: NSScrollView?
361
     private weak var enrolledPageHeadingLabel: NSTextField?
361
     private weak var enrolledPageHeadingLabel: NSTextField?
362
     private weak var enrolledPageCardsStack: NSStackView?
362
     private weak var enrolledPageCardsStack: NSStackView?
363
+    private let enrolledSingleCardWidth: CGFloat = 320
363
 
364
 
364
     // MARK: - Calendar page (custom month UI)
365
     // MARK: - Calendar page (custom month UI)
365
     private var calendarPageMonthAnchor: Date = Calendar.current.startOfDay(for: Date())
366
     private var calendarPageMonthAnchor: Date = Calendar.current.startOfDay(for: Date())
@@ -6118,10 +6119,16 @@ private extension ViewController {
6118
             return
6119
             return
6119
         }
6120
         }
6120
 
6121
 
6122
+        let isSingleCard = (courses.count == 1)
6121
         for course in courses {
6123
         for course in courses {
6122
             let card = enrolledClassCard(course: course)
6124
             let card = enrolledClassCard(course: course)
6123
             stack.addArrangedSubview(card)
6125
             stack.addArrangedSubview(card)
6124
-            card.widthAnchor.constraint(equalTo: stack.widthAnchor).isActive = true
6126
+            if isSingleCard {
6127
+                card.widthAnchor.constraint(equalToConstant: enrolledSingleCardWidth).isActive = true
6128
+                card.widthAnchor.constraint(lessThanOrEqualTo: stack.widthAnchor).isActive = true
6129
+            } else {
6130
+                card.widthAnchor.constraint(equalTo: stack.widthAnchor).isActive = true
6131
+            }
6125
         }
6132
         }
6126
     }
6133
     }
6127
 
6134