Move view modifier to separate file

This commit is contained in:
Balazs Perlaki-Horvath 2025-02-09 20:35:48 +01:00 committed by Kelson
parent 19bf6156e7
commit 78c6a06c2e
2 changed files with 35 additions and 14 deletions

View File

@ -17,21 +17,11 @@ import ActivityKit
import WidgetKit import WidgetKit
import SwiftUI import SwiftUI
struct WidgetBackgroundModifier: ViewModifier {
func body(content: Content) -> some View {
if #available(iOSApplicationExtension 17.0, *) {
content.containerBackground(for: .widget) {
Color.widgetBackground
}
.activityBackgroundTint(Color("WidgetBackground"))
} else {
content
.activityBackgroundTint(Color("WidgetBackground"))
}
}
}
struct DownloadsLiveActivity: Widget { struct DownloadsLiveActivity: Widget {
var isActivityFullScreen: Bool = false
// @Environment(\.isActivityFullscreen) var isActivityFullScreen has a bug, when min iOS is 16
// https://developer.apple.com/forums/thread/763594
var body: some WidgetConfiguration { var body: some WidgetConfiguration {
ActivityConfiguration(for: DownloadActivityAttributes.self) { context in ActivityConfiguration(for: DownloadActivityAttributes.self) { context in
// Lock screen/banner UI goes here // Lock screen/banner UI goes here

View File

@ -0,0 +1,31 @@
// This file is part of Kiwix for iOS & macOS.
//
// Kiwix is free software; you can redistribute it and/or modify it
// under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 3 of the License, or
// any later version.
//
// Kiwix is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Kiwix; If not, see https://www.gnu.org/licenses/.
import SwiftUI
struct WidgetBackgroundModifier: ViewModifier {
func body(content: Content) -> some View {
if #available(iOSApplicationExtension 17.0, *) {
content.containerBackground(for: .widget) {
Color.widgetBackground
}
.activityBackgroundTint(Color("WidgetBackground"))
} else {
content
.activityBackgroundTint(Color("WidgetBackground"))
}
}
}