remove duplicate web pref adjustment signals
This commit is contained in:
@ -13,12 +13,9 @@ import WebKit
|
||||
let webViewActionHandler: (WKScriptMessage, WKScriptMessageReplyHandler?) -> Void
|
||||
let navBarVisibilityRatioUpdater: (Double) -> Void
|
||||
|
||||
@Binding var increaseFontActionID: UUID?
|
||||
@Binding var decreaseFontActionID: UUID?
|
||||
@Binding var increaseMarginActionID: UUID?
|
||||
@Binding var decreaseMarginActionID: UUID?
|
||||
@Binding var increaseLineHeightActionID: UUID?
|
||||
@Binding var decreaseLineHeightActionID: UUID?
|
||||
@Binding var updateFontActionID: UUID?
|
||||
@Binding var updateMarginActionID: UUID?
|
||||
@Binding var updateLineHeightActionID: UUID?
|
||||
@Binding var annotationSaveTransactionID: UUID?
|
||||
@Binding var showNavBarActionID: UUID?
|
||||
@Binding var shareActionID: UUID?
|
||||
@ -81,33 +78,18 @@ import WebKit
|
||||
(webView as? WebView)?.dispatchEvent(.saveAnnotation(annotation: annotation))
|
||||
}
|
||||
|
||||
if increaseFontActionID != context.coordinator.previousIncreaseFontActionID {
|
||||
context.coordinator.previousIncreaseFontActionID = increaseFontActionID
|
||||
if updateFontActionID != context.coordinator.previousUpdateFontActionID {
|
||||
context.coordinator.previousUpdateFontActionID = updateFontActionID
|
||||
(webView as? WebView)?.updateFontSize()
|
||||
}
|
||||
|
||||
if decreaseFontActionID != context.coordinator.previousDecreaseFontActionID {
|
||||
context.coordinator.previousDecreaseFontActionID = decreaseFontActionID
|
||||
(webView as? WebView)?.updateFontSize()
|
||||
}
|
||||
|
||||
if increaseMarginActionID != context.coordinator.previousIncreaseMarginActionID {
|
||||
context.coordinator.previousIncreaseMarginActionID = increaseMarginActionID
|
||||
if updateMarginActionID != context.coordinator.previousUpdateMarginActionID {
|
||||
context.coordinator.previousUpdateMarginActionID = updateMarginActionID
|
||||
(webView as? WebView)?.updateMargin()
|
||||
}
|
||||
|
||||
if decreaseMarginActionID != context.coordinator.previousDecreaseMarginActionID {
|
||||
context.coordinator.previousDecreaseMarginActionID = decreaseMarginActionID
|
||||
(webView as? WebView)?.updateMargin()
|
||||
}
|
||||
|
||||
if increaseLineHeightActionID != context.coordinator.previousIncreaseLineHeightActionID {
|
||||
context.coordinator.previousIncreaseLineHeightActionID = increaseLineHeightActionID
|
||||
(webView as? WebView)?.updateLineHeight()
|
||||
}
|
||||
|
||||
if decreaseLineHeightActionID != context.coordinator.previousDecreaseLineHeightActionID {
|
||||
context.coordinator.previousDecreaseLineHeightActionID = decreaseLineHeightActionID
|
||||
if updateLineHeightActionID != context.coordinator.previousUpdateLineHeightActionID {
|
||||
context.coordinator.previousUpdateLineHeightActionID = updateLineHeightActionID
|
||||
(webView as? WebView)?.updateLineHeight()
|
||||
}
|
||||
|
||||
|
||||
@ -15,12 +15,9 @@ import WebKit
|
||||
@State private var navBarVisibilityRatio = 1.0
|
||||
@State private var showDeleteConfirmation = false
|
||||
@State private var progressViewOpacity = 0.0
|
||||
@State var increaseFontActionID: UUID?
|
||||
@State var decreaseFontActionID: UUID?
|
||||
@State var increaseMarginActionID: UUID?
|
||||
@State var decreaseMarginActionID: UUID?
|
||||
@State var increaseLineHeightActionID: UUID?
|
||||
@State var decreaseLineHeightActionID: UUID?
|
||||
@State var updateFontActionID: UUID?
|
||||
@State var updateMarginActionID: UUID?
|
||||
@State var updateLineHeightActionID: UUID?
|
||||
@State var annotationSaveTransactionID: UUID?
|
||||
@State var showNavBarActionID: UUID?
|
||||
@State var shareActionID: UUID?
|
||||
@ -149,12 +146,9 @@ import WebKit
|
||||
navBarVisibilityRatioUpdater: {
|
||||
navBarVisibilityRatio = $0
|
||||
},
|
||||
increaseFontActionID: $increaseFontActionID,
|
||||
decreaseFontActionID: $decreaseFontActionID,
|
||||
increaseMarginActionID: $increaseMarginActionID,
|
||||
decreaseMarginActionID: $decreaseMarginActionID,
|
||||
increaseLineHeightActionID: $increaseLineHeightActionID,
|
||||
decreaseLineHeightActionID: $decreaseLineHeightActionID,
|
||||
updateFontActionID: $updateFontActionID,
|
||||
updateMarginActionID: $updateMarginActionID,
|
||||
updateLineHeightActionID: $updateLineHeightActionID,
|
||||
annotationSaveTransactionID: $annotationSaveTransactionID,
|
||||
showNavBarActionID: $showNavBarActionID,
|
||||
shareActionID: $shareActionID,
|
||||
@ -202,12 +196,9 @@ import WebKit
|
||||
}
|
||||
.formSheet(isPresented: $showPreferencesPopover) {
|
||||
WebPreferencesPopoverView(
|
||||
increaseFontAction: { increaseFontActionID = UUID() },
|
||||
decreaseFontAction: { decreaseFontActionID = UUID() },
|
||||
increaseMarginAction: { increaseMarginActionID = UUID() },
|
||||
decreaseMarginAction: { decreaseMarginActionID = UUID() },
|
||||
increaseLineHeightAction: { increaseLineHeightActionID = UUID() },
|
||||
decreaseLineHeightAction: { decreaseLineHeightActionID = UUID() },
|
||||
updateFontAction: { updateFontActionID = UUID() },
|
||||
updateMarginAction: { updateMarginActionID = UUID() },
|
||||
updateLineHeightAction: { updateLineHeightActionID = UUID() },
|
||||
dismissAction: { showPreferencesPopover = false }
|
||||
)
|
||||
}
|
||||
|
||||
@ -15,12 +15,9 @@ final class WebReaderCoordinator: NSObject {
|
||||
var linkHandler: (URL) -> Void = { _ in }
|
||||
var needsReload = false
|
||||
var lastSavedAnnotationID: UUID?
|
||||
var previousIncreaseFontActionID: UUID?
|
||||
var previousDecreaseFontActionID: UUID?
|
||||
var previousIncreaseMarginActionID: UUID?
|
||||
var previousDecreaseMarginActionID: UUID?
|
||||
var previousIncreaseLineHeightActionID: UUID?
|
||||
var previousDecreaseLineHeightActionID: UUID?
|
||||
var previousUpdateFontActionID: UUID?
|
||||
var previousUpdateMarginActionID: UUID?
|
||||
var previousUpdateLineHeightActionID: UUID?
|
||||
var previousShowNavBarActionID: UUID?
|
||||
var previousShareActionID: UUID?
|
||||
var updateNavBarVisibilityRatio: (Double) -> Void = { _ in }
|
||||
|
||||
@ -10,12 +10,9 @@ public enum WebFont: String {
|
||||
}
|
||||
|
||||
public struct WebPreferencesPopoverView: View {
|
||||
let increaseFontAction: () -> Void
|
||||
let decreaseFontAction: () -> Void
|
||||
let increaseMarginAction: () -> Void
|
||||
let decreaseMarginAction: () -> Void
|
||||
let increaseLineHeightAction: () -> Void
|
||||
let decreaseLineHeightAction: () -> Void
|
||||
let updateFontAction: () -> Void
|
||||
let updateMarginAction: () -> Void
|
||||
let updateLineHeightAction: () -> Void
|
||||
let dismissAction: () -> Void
|
||||
|
||||
static let preferredWebFontSizeKey = UserDefaultKey.preferredWebFontSize.rawValue
|
||||
@ -29,20 +26,14 @@ public struct WebPreferencesPopoverView: View {
|
||||
@AppStorage(UserDefaultKey.preferredWebMargin.rawValue) var storedMargin = 360
|
||||
|
||||
public init(
|
||||
increaseFontAction: @escaping () -> Void,
|
||||
decreaseFontAction: @escaping () -> Void,
|
||||
increaseMarginAction: @escaping () -> Void,
|
||||
decreaseMarginAction: @escaping () -> Void,
|
||||
increaseLineHeightAction: @escaping () -> Void,
|
||||
decreaseLineHeightAction: @escaping () -> Void,
|
||||
updateFontAction: @escaping () -> Void,
|
||||
updateMarginAction: @escaping () -> Void,
|
||||
updateLineHeightAction: @escaping () -> Void,
|
||||
dismissAction: @escaping () -> Void
|
||||
) {
|
||||
self.increaseFontAction = increaseFontAction
|
||||
self.decreaseFontAction = decreaseFontAction
|
||||
self.increaseMarginAction = increaseMarginAction
|
||||
self.decreaseMarginAction = decreaseMarginAction
|
||||
self.increaseLineHeightAction = increaseLineHeightAction
|
||||
self.decreaseLineHeightAction = decreaseLineHeightAction
|
||||
self.updateFontAction = updateFontAction
|
||||
self.updateMarginAction = updateMarginAction
|
||||
self.updateLineHeightAction = updateLineHeightAction
|
||||
self.dismissAction = dismissAction
|
||||
}
|
||||
|
||||
@ -64,11 +55,11 @@ public struct WebPreferencesPopoverView: View {
|
||||
labelText: "Font Size:",
|
||||
onIncrement: {
|
||||
storedFontSize = min(storedFontSize + 2, 28)
|
||||
increaseFontAction()
|
||||
updateFontAction()
|
||||
},
|
||||
onDecrement: {
|
||||
storedFontSize = max(storedFontSize - 2, 10)
|
||||
decreaseFontAction()
|
||||
updateFontAction()
|
||||
}
|
||||
)
|
||||
|
||||
@ -77,11 +68,11 @@ public struct WebPreferencesPopoverView: View {
|
||||
labelText: "Margin:",
|
||||
onIncrement: {
|
||||
storedMargin = min(storedMargin + 45, 560)
|
||||
increaseMarginAction()
|
||||
updateMarginAction()
|
||||
},
|
||||
onDecrement: {
|
||||
storedMargin = max(storedMargin - 45, 200)
|
||||
decreaseMarginAction()
|
||||
updateMarginAction()
|
||||
}
|
||||
)
|
||||
}
|
||||
@ -90,11 +81,11 @@ public struct WebPreferencesPopoverView: View {
|
||||
labelText: "Line Spacing:",
|
||||
onIncrement: {
|
||||
storedLineSpacing = min(storedLineSpacing + 25, 300)
|
||||
increaseLineHeightAction()
|
||||
updateLineHeightAction()
|
||||
},
|
||||
onDecrement: {
|
||||
storedLineSpacing = max(storedLineSpacing - 25, 100)
|
||||
decreaseLineHeightAction()
|
||||
updateLineHeightAction()
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user