mirror of
https://github.com/jellyfin/Swiftfin.git
synced 2024-12-13 00:47:33 +00:00
32 lines
967 B
Swift
32 lines
967 B
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) 2022 Jellyfin & Jellyfin Contributors
|
|
//
|
|
|
|
import UIKit
|
|
|
|
extension CGSize {
|
|
|
|
static func Circle(radius: CGFloat) -> CGSize {
|
|
CGSize(width: radius, height: radius)
|
|
}
|
|
|
|
// From https://gist.github.com/jkosoy/c835fea2c03e76720c77
|
|
static func aspectFill(aspectRatio: CGSize, minimumSize: CGSize) -> CGSize {
|
|
var minimumSize = minimumSize
|
|
let mW = minimumSize.width / aspectRatio.width
|
|
let mH = minimumSize.height / aspectRatio.height
|
|
|
|
if mH > mW {
|
|
minimumSize.width = minimumSize.height / aspectRatio.height * aspectRatio.width
|
|
} else if mW > mH {
|
|
minimumSize.height = minimumSize.width / aspectRatio.width * aspectRatio.height
|
|
}
|
|
|
|
return minimumSize
|
|
}
|
|
}
|