Create and use logicalArticleFullscreenEnabled — so it can’t think it’s in fullscreen mode without fullscreen mode being allowed.

This commit is contained in:
Brent Simmons
2025-01-11 22:01:27 -08:00
parent 5c60e75435
commit dd8fb412ba
3 changed files with 10 additions and 6 deletions

View File

@@ -169,13 +169,17 @@ final class AppDefaults {
var articleFullscreenEnabled: Bool {
get {
return AppDefaults.bool(for: Key.articleFullscreenEnabled)
return articleFullscreenAvailable && AppDefaults.bool(for: Key.articleFullscreenEnabled)
}
set {
AppDefaults.setBool(for: Key.articleFullscreenEnabled, newValue)
}
}
var logicalArticleFullscreenEnabled: Bool {
articleFullscreenAvailable && articleFullscreenEnabled
}
var confirmMarkAllAsRead: Bool {
get {
return AppDefaults.bool(for: Key.confirmMarkAllAsRead)

View File

@@ -147,7 +147,7 @@ class ArticleViewController: UIViewController {
articleExtractorButton.buttonState = controller.articleExtractorButtonState
self.pageViewController.setViewControllers([controller], direction: .forward, animated: false, completion: nil)
if AppDefaults.shared.articleFullscreenEnabled {
if AppDefaults.shared.logicalArticleFullscreenEnabled {
controller.hideBars()
}
@@ -163,7 +163,7 @@ class ArticleViewController: UIViewController {
}
override func viewWillAppear(_ animated: Bool) {
let hideToolbars = AppDefaults.shared.articleFullscreenEnabled
let hideToolbars = AppDefaults.shared.logicalArticleFullscreenEnabled
if hideToolbars {
currentWebViewController?.hideBars()
} else {
@@ -255,7 +255,7 @@ class ArticleViewController: UIViewController {
@objc func willEnterForeground(_ note: Notification) {
// The toolbar will come back on you if you don't hide it again
if AppDefaults.shared.articleFullscreenEnabled {
if AppDefaults.shared.logicalArticleFullscreenEnabled {
currentWebViewController?.hideBars()
}
}

View File

@@ -675,7 +675,7 @@ private extension WebViewController {
topShowBarsView.translatesAutoresizingMaskIntoConstraints = false
view.addSubview(topShowBarsView)
if AppDefaults.shared.articleFullscreenEnabled {
if AppDefaults.shared.logicalArticleFullscreenEnabled {
topShowBarsViewConstraint = view.topAnchor.constraint(equalTo: topShowBarsView.bottomAnchor, constant: -44.0)
} else {
topShowBarsViewConstraint = view.topAnchor.constraint(equalTo: topShowBarsView.bottomAnchor, constant: 0.0)
@@ -695,7 +695,7 @@ private extension WebViewController {
topShowBarsView.backgroundColor = .clear
bottomShowBarsView.translatesAutoresizingMaskIntoConstraints = false
view.addSubview(bottomShowBarsView)
if AppDefaults.shared.articleFullscreenEnabled {
if AppDefaults.shared.logicalArticleFullscreenEnabled {
bottomShowBarsViewConstraint = view.bottomAnchor.constraint(equalTo: bottomShowBarsView.topAnchor, constant: 44.0)
} else {
bottomShowBarsViewConstraint = view.bottomAnchor.constraint(equalTo: bottomShowBarsView.topAnchor, constant: 0.0)