jellyflood/Swiftfin/App/AppDelegate.swift

33 lines
1.2 KiB
Swift

//
// Swiftfin is subject to the terms of the Mozilla Public
// License, v2.0. If a copy of the MPL was not distributed with this
// file, you can obtain one at https://mozilla.org/MPL/2.0/.
//
// Copyright (c) 2025 Jellyfin & Jellyfin Contributors
//
import PreferencesView
import UIKit
class AppDelegate: NSObject, UIApplicationDelegate {
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil
) -> Bool {
true
}
func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask {
if let scene = UIApplication.shared.connectedScenes.first(where: { $0.activationState == .foregroundActive }) as? UIWindowScene,
let topViewController = scene.keyWindow?.rootViewController,
let presentedViewController = topViewController.presentedViewController,
let preferencesHostingController = presentedViewController as? UIPreferencesHostingController
{
return preferencesHostingController.supportedInterfaceOrientations
}
return UIDevice.isPad ? .allButUpsideDown : .portrait
}
}