Restrict orientation locking to iPhone only

- Add device checks in Orientation enum to prevent locking on iPad
- Hide "Lock portrait mode" setting on iPad in BrowsingSettings
- Use Constants.isIPhone for consistent device detection
This commit is contained in:
Arkadiusz Fal
2025-11-23 13:41:03 +01:00
parent e6e69eb757
commit 36190e62f5
2 changed files with 13 additions and 1 deletions

View File

@@ -6,6 +6,12 @@ enum Orientation {
static var logger = Logger(label: "stream.yattee.orientation")
static func lockOrientation(_ orientation: UIInterfaceOrientationMask) {
// Orientation locking is only for iPhone, not iPad
guard Constants.isIPhone else {
logger.info("skipping orientation lock on iPad")
return
}
if let delegate = AppDelegate.instance {
delegate.orientationLock = orientation
@@ -18,6 +24,12 @@ enum Orientation {
}
static func lockOrientation(_ orientation: UIInterfaceOrientationMask, andRotateTo rotateOrientation: UIInterfaceOrientation? = nil) {
// Orientation locking and rotation is only for iPhone, not iPad
guard Constants.isIPhone else {
logger.info("skipping orientation lock and rotation on iPad")
return
}
lockOrientation(orientation)
guard let rotateOrientation else {