cleanup Views
This commit is contained in:
@@ -2,14 +2,14 @@ import AppKit
|
||||
|
||||
@MainActor
|
||||
final class AppDelegate: NSObject, NSApplicationDelegate {
|
||||
var barController: PHController!
|
||||
var barController: BarController!
|
||||
var window: BarWindow!
|
||||
private var observers: [IPCObserver] = []
|
||||
|
||||
init(config: PHConfig, screen: NSScreen, theme: PHTheme, blocks: [PHBlock], debug: Bool = false) {
|
||||
super.init()
|
||||
|
||||
self.barController = PHController(config: config, screen: screen, theme: theme, blocks: blocks)
|
||||
self.barController = BarController(config: config, screen: screen, theme: theme, blocks: blocks)
|
||||
barController.debug = debug
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
import AppKit
|
||||
|
||||
final class BarWindowBackground: NSView {
|
||||
final class BackgroundView: NSView {
|
||||
var hasShadow: Bool {
|
||||
didSet { configureShadow() }
|
||||
}
|
||||
@@ -9,7 +9,7 @@ final class BarWindowBackground: NSView {
|
||||
didSet { configureBlur() }
|
||||
}
|
||||
|
||||
init(controller: PHController) {
|
||||
init(controller: BarController) {
|
||||
self.hasShadow = controller.theme.window.hasShadow
|
||||
self.blur = controller.theme.window.blur
|
||||
super.init(frame: .zero)
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
import SwiftUI
|
||||
|
||||
@MainActor
|
||||
final class PHController: ObservableObject {
|
||||
final class BarController: ObservableObject {
|
||||
let config: PHConfig
|
||||
let screen: NSScreen
|
||||
let theme: PHTheme
|
||||
@@ -36,7 +36,7 @@ final class PHController: ObservableObject {
|
||||
|
||||
// Style
|
||||
|
||||
extension PHController {
|
||||
extension BarController {
|
||||
func style(for block: PHBlock) -> PHThemeStyle {
|
||||
guard let style = theme.styles.first(where: { $0.name == block.styleName }) else {
|
||||
guard let defaultStyle = theme.styles.first(where: { $0.name == "default" }) else {
|
||||
@@ -50,7 +50,7 @@ extension PHController {
|
||||
|
||||
// Refresh
|
||||
|
||||
extension PHController {
|
||||
extension BarController {
|
||||
/// Start auto-refresh for every block.
|
||||
func startAutoRefresh() {
|
||||
for block in blocks {
|
||||
@@ -1,9 +1,9 @@
|
||||
import SwiftUI
|
||||
|
||||
struct BarView: View {
|
||||
@StateObject private var bar: PHController
|
||||
@StateObject private var bar: BarController
|
||||
|
||||
init(controller: PHController) {
|
||||
init(controller: BarController) {
|
||||
self._bar = StateObject(wrappedValue: controller)
|
||||
}
|
||||
|
||||
@@ -13,9 +13,9 @@ struct BarView: View {
|
||||
ForEach(bar.arrangedBlocks) { block in
|
||||
switch block.kind {
|
||||
case .text:
|
||||
TextBlock(block: block)
|
||||
TextBlockView(block: block)
|
||||
case .space:
|
||||
SpaceBlock(block: block)
|
||||
SpaceBlockView(block: block)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -24,9 +24,9 @@ struct BarView: View {
|
||||
ForEach(bar.centeredBlocks) { block in
|
||||
switch block.kind {
|
||||
case .text:
|
||||
TextBlock(block: block)
|
||||
TextBlockView(block: block)
|
||||
case .space:
|
||||
SpaceBlock(block: block)
|
||||
SpaceBlockView(block: block)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,12 +2,12 @@ import AppKit
|
||||
import SwiftUI
|
||||
|
||||
final class BarWindow: NSPanel {
|
||||
let barController: PHController
|
||||
let barController: BarController
|
||||
|
||||
var backgroundView: BarWindowBackground!
|
||||
var backgroundView: BackgroundView!
|
||||
var barView: NSHostingView<BarView>!
|
||||
|
||||
init(controller: PHController) {
|
||||
init(controller: BarController) {
|
||||
self.barController = controller
|
||||
|
||||
super.init(
|
||||
@@ -32,7 +32,7 @@ final class BarWindow: NSPanel {
|
||||
self.isRestorable = false
|
||||
self.displaysWhenScreenProfileChanges = true
|
||||
|
||||
self.backgroundView = BarWindowBackground(controller: barController)
|
||||
self.backgroundView = BackgroundView(controller: barController)
|
||||
backgroundView.autoresizingMask = [.width, .height]
|
||||
backgroundView.frame = self.contentView?.bounds ?? .zero
|
||||
|
||||
@@ -47,7 +47,7 @@ final class BarWindow: NSPanel {
|
||||
|
||||
extension BarWindow {
|
||||
/// Calculate window frame and position.
|
||||
static func computeFrame(from controller: PHController) -> NSRect {
|
||||
static func computeFrame(from controller: BarController) -> NSRect {
|
||||
let screenFrame = controller.screen.frame
|
||||
let height: CGFloat = 30
|
||||
let x = screenFrame.minX
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
import SwiftUI
|
||||
|
||||
struct SpaceBlock: View {
|
||||
struct SpaceBlockView: View {
|
||||
@ObservedObject var block: PHBlock
|
||||
|
||||
var width: CGFloat? {
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
import SwiftUI
|
||||
|
||||
struct TextBlock: View {
|
||||
@EnvironmentObject private var bar: PHController
|
||||
struct TextBlockView: View {
|
||||
@EnvironmentObject private var bar: BarController
|
||||
@ObservedObject var block: PHBlock
|
||||
|
||||
@State var hovering = false
|
||||
Reference in New Issue
Block a user