|
|
@@ -91,8 +91,8 @@ class ViewController: NSViewController {
|
|
|
|
|
|
view.addSubview(sidebar)
|
|
|
view.addSubview(mainContentView)
|
|
|
- mainContentView.addSubview(headerView)
|
|
|
mainContentView.addSubview(contentContainer)
|
|
|
+ mainContentView.addSubview(headerView, positioned: .above, relativeTo: contentContainer)
|
|
|
|
|
|
sidebar.onDestinationSelected = { [weak self] destination in
|
|
|
self?.showDestination(destination)
|
|
|
@@ -110,8 +110,8 @@ class ViewController: NSViewController {
|
|
|
|
|
|
headerView.leadingAnchor.constraint(equalTo: mainContentView.leadingAnchor),
|
|
|
headerView.trailingAnchor.constraint(equalTo: mainContentView.trailingAnchor),
|
|
|
- headerView.topAnchor.constraint(equalTo: mainContentView.topAnchor, constant: 16),
|
|
|
- headerView.heightAnchor.constraint(equalToConstant: 44),
|
|
|
+ headerView.topAnchor.constraint(equalTo: mainContentView.topAnchor, constant: AppTheme.headerTopInset),
|
|
|
+ headerView.heightAnchor.constraint(equalToConstant: AppTheme.headerHeight),
|
|
|
|
|
|
contentContainer.leadingAnchor.constraint(equalTo: mainContentView.leadingAnchor),
|
|
|
contentContainer.trailingAnchor.constraint(equalTo: mainContentView.trailingAnchor),
|
|
|
@@ -123,7 +123,10 @@ class ViewController: NSViewController {
|
|
|
pinContentView(scanAndHomeContentView)
|
|
|
pinContentView(settingsContentView)
|
|
|
|
|
|
- contentTopBelowHeader = contentContainer.topAnchor.constraint(equalTo: headerView.bottomAnchor, constant: 8)
|
|
|
+ contentTopBelowHeader = contentContainer.topAnchor.constraint(
|
|
|
+ equalTo: headerView.bottomAnchor,
|
|
|
+ constant: AppTheme.contentBelowHeaderGap
|
|
|
+ )
|
|
|
contentTopBelowWindow = contentContainer.topAnchor.constraint(equalTo: mainContentView.topAnchor, constant: 12)
|
|
|
contentTopBelowHeader.isActive = true
|
|
|
|
|
|
@@ -189,14 +192,24 @@ class ViewController: NSViewController {
|
|
|
let container = NSView()
|
|
|
container.translatesAutoresizingMaskIntoConstraints = false
|
|
|
|
|
|
+ let panel = ContentPanelView()
|
|
|
+ panel.translatesAutoresizingMaskIntoConstraints = false
|
|
|
+
|
|
|
let scrollView = makeScrollView()
|
|
|
- container.addSubview(scrollView)
|
|
|
+ panel.addSubview(scrollView)
|
|
|
+ container.addSubview(panel)
|
|
|
|
|
|
+ let inset = AppTheme.contentPanelInset
|
|
|
NSLayoutConstraint.activate([
|
|
|
- scrollView.leadingAnchor.constraint(equalTo: container.leadingAnchor),
|
|
|
- scrollView.trailingAnchor.constraint(equalTo: container.trailingAnchor),
|
|
|
- scrollView.topAnchor.constraint(equalTo: container.topAnchor),
|
|
|
- scrollView.bottomAnchor.constraint(equalTo: container.bottomAnchor),
|
|
|
+ panel.leadingAnchor.constraint(equalTo: container.leadingAnchor, constant: inset),
|
|
|
+ panel.trailingAnchor.constraint(equalTo: container.trailingAnchor, constant: -inset),
|
|
|
+ panel.topAnchor.constraint(equalTo: container.topAnchor),
|
|
|
+ panel.bottomAnchor.constraint(equalTo: container.bottomAnchor, constant: -inset),
|
|
|
+
|
|
|
+ scrollView.leadingAnchor.constraint(equalTo: panel.leadingAnchor),
|
|
|
+ scrollView.trailingAnchor.constraint(equalTo: panel.trailingAnchor),
|
|
|
+ scrollView.topAnchor.constraint(equalTo: panel.topAnchor),
|
|
|
+ scrollView.bottomAnchor.constraint(equalTo: panel.bottomAnchor),
|
|
|
])
|
|
|
|
|
|
return container
|
|
|
@@ -286,7 +299,7 @@ class ViewController: NSViewController {
|
|
|
|
|
|
NSLayoutConstraint.activate([
|
|
|
titleLabel.centerXAnchor.constraint(equalTo: header.centerXAnchor),
|
|
|
- titleLabel.centerYAnchor.constraint(equalTo: header.centerYAnchor),
|
|
|
+ titleLabel.topAnchor.constraint(equalTo: header.topAnchor, constant: 2),
|
|
|
])
|
|
|
|
|
|
return header
|
|
|
@@ -345,7 +358,7 @@ class ViewController: NSViewController {
|
|
|
|
|
|
quickStartSection.leadingAnchor.constraint(equalTo: documentView.leadingAnchor, constant: AppTheme.contentPadding),
|
|
|
quickStartSection.trailingAnchor.constraint(equalTo: documentView.trailingAnchor, constant: -AppTheme.contentPadding),
|
|
|
- quickStartSection.topAnchor.constraint(equalTo: documentView.topAnchor, constant: 8),
|
|
|
+ quickStartSection.topAnchor.constraint(equalTo: documentView.topAnchor, constant: 20),
|
|
|
|
|
|
createPrintSection.leadingAnchor.constraint(equalTo: documentView.leadingAnchor, constant: AppTheme.contentPadding),
|
|
|
createPrintSection.trailingAnchor.constraint(equalTo: documentView.trailingAnchor, constant: -AppTheme.contentPadding),
|