This commit is contained in:
David Roman 2023-06-05 01:01:15 +01:00
parent 23b08e51fc
commit 78b4ea72b5
No known key found for this signature in database
GPG Key ID: 7058646EEFCB70A7
5 changed files with 68 additions and 28 deletions

View File

@ -17,7 +17,11 @@ extension iOSViewVersion<NavigationSplitViewType, UISplitViewController> {
@available(*, unavailable, message: "NavigationSplitView isn't available on iOS 15") @available(*, unavailable, message: "NavigationSplitView isn't available on iOS 15")
public static let v15 = Self.unavailable() public static let v15 = Self.unavailable()
public static let v16 = Self(for: .v16) public static let v16 = Self(for: .v16, selector: selector)
private static var selector: IntrospectionSelector<UISplitViewController> {
.default.withAncestorSelector(\.splitViewController)
}
} }
extension tvOSViewVersion<NavigationSplitViewType, UINavigationController> { extension tvOSViewVersion<NavigationSplitViewType, UINavigationController> {
@ -28,7 +32,11 @@ extension tvOSViewVersion<NavigationSplitViewType, UINavigationController> {
@available(*, unavailable, message: "NavigationSplitView isn't available on tvOS 15") @available(*, unavailable, message: "NavigationSplitView isn't available on tvOS 15")
public static let v15 = Self.unavailable() public static let v15 = Self.unavailable()
public static let v16 = Self(for: .v16) public static let v16 = Self(for: .v16, selector: selector)
private static var selector: IntrospectionSelector<UINavigationController> {
.default.withAncestorSelector(\.navigationController)
}
} }
#elseif canImport(AppKit) #elseif canImport(AppKit)
extension macOSViewVersion<NavigationSplitViewType, NSSplitView> { extension macOSViewVersion<NavigationSplitViewType, NSSplitView> {

View File

@ -17,7 +17,11 @@ extension iOSViewVersion<NavigationStackType, UINavigationController> {
@available(*, unavailable, message: "NavigationStack isn't available on iOS 15") @available(*, unavailable, message: "NavigationStack isn't available on iOS 15")
public static let v15 = Self.unavailable() public static let v15 = Self.unavailable()
public static let v16 = Self(for: .v16) public static let v16 = Self(for: .v16, selector: selector)
private static var selector: IntrospectionSelector<UINavigationController> {
.default.withAncestorSelector(\.navigationController)
}
} }
extension tvOSViewVersion<NavigationStackType, UINavigationController> { extension tvOSViewVersion<NavigationStackType, UINavigationController> {
@ -28,6 +32,10 @@ extension tvOSViewVersion<NavigationStackType, UINavigationController> {
@available(*, unavailable, message: "NavigationStack isn't available on tvOS 15") @available(*, unavailable, message: "NavigationStack isn't available on tvOS 15")
public static let v15 = Self.unavailable() public static let v15 = Self.unavailable()
public static let v16 = Self(for: .v16) public static let v16 = Self(for: .v16, selector: selector)
private static var selector: IntrospectionSelector<UINavigationController> {
.default.withAncestorSelector(\.navigationController)
}
} }
#endif #endif

View File

@ -14,17 +14,25 @@ extension IntrospectableViewType where Self == NavigationViewWithColumnsStyleTyp
#if canImport(UIKit) #if canImport(UIKit)
extension iOSViewVersion<NavigationViewWithColumnsStyleType, UISplitViewController> { extension iOSViewVersion<NavigationViewWithColumnsStyleType, UISplitViewController> {
public static let v13 = Self(for: .v13) public static let v13 = Self(for: .v13, selector: selector)
public static let v14 = Self(for: .v14) public static let v14 = Self(for: .v14, selector: selector)
public static let v15 = Self(for: .v15) public static let v15 = Self(for: .v15, selector: selector)
public static let v16 = Self(for: .v16) public static let v16 = Self(for: .v16, selector: selector)
private static var selector: IntrospectionSelector<UISplitViewController> {
.default.withAncestorSelector(\.splitViewController)
}
} }
extension tvOSViewVersion<NavigationViewWithColumnsStyleType, UINavigationController> { extension tvOSViewVersion<NavigationViewWithColumnsStyleType, UINavigationController> {
public static let v13 = Self(for: .v13) public static let v13 = Self(for: .v13, selector: selector)
public static let v14 = Self(for: .v14) public static let v14 = Self(for: .v14, selector: selector)
public static let v15 = Self(for: .v15) public static let v15 = Self(for: .v15, selector: selector)
public static let v16 = Self(for: .v16) public static let v16 = Self(for: .v16, selector: selector)
private static var selector: IntrospectionSelector<UINavigationController> {
.default.withAncestorSelector(\.navigationController)
}
} }
#elseif canImport(AppKit) #elseif canImport(AppKit)
extension macOSViewVersion<NavigationViewWithColumnsStyleType, NSSplitView> { extension macOSViewVersion<NavigationViewWithColumnsStyleType, NSSplitView> {

View File

@ -14,16 +14,24 @@ extension IntrospectableViewType where Self == NavigationViewWithStackStyleType
#if canImport(UIKit) #if canImport(UIKit)
extension iOSViewVersion<NavigationViewWithStackStyleType, UINavigationController> { extension iOSViewVersion<NavigationViewWithStackStyleType, UINavigationController> {
public static let v13 = Self(for: .v13) public static let v13 = Self(for: .v13, selector: selector)
public static let v14 = Self(for: .v14) public static let v14 = Self(for: .v14, selector: selector)
public static let v15 = Self(for: .v15) public static let v15 = Self(for: .v15, selector: selector)
public static let v16 = Self(for: .v16) public static let v16 = Self(for: .v16, selector: selector)
private static var selector: IntrospectionSelector<UINavigationController> {
.default.withAncestorSelector(\.navigationController)
}
} }
extension tvOSViewVersion<NavigationViewWithStackStyleType, UINavigationController> { extension tvOSViewVersion<NavigationViewWithStackStyleType, UINavigationController> {
public static let v13 = Self(for: .v13) public static let v13 = Self(for: .v13, selector: selector)
public static let v14 = Self(for: .v14) public static let v14 = Self(for: .v14, selector: selector)
public static let v15 = Self(for: .v15) public static let v15 = Self(for: .v15, selector: selector)
public static let v16 = Self(for: .v16) public static let v16 = Self(for: .v16, selector: selector)
private static var selector: IntrospectionSelector<UINavigationController> {
.default.withAncestorSelector(\.navigationController)
}
} }
#endif #endif

View File

@ -10,17 +10,25 @@ extension IntrospectableViewType where Self == TabViewType {
#if canImport(UIKit) #if canImport(UIKit)
extension iOSViewVersion<TabViewType, UITabBarController> { extension iOSViewVersion<TabViewType, UITabBarController> {
public static let v13 = Self(for: .v13) public static let v13 = Self(for: .v13, selector: selector)
public static let v14 = Self(for: .v14) public static let v14 = Self(for: .v14, selector: selector)
public static let v15 = Self(for: .v15) public static let v15 = Self(for: .v15, selector: selector)
public static let v16 = Self(for: .v16) public static let v16 = Self(for: .v16, selector: selector)
private static var selector: IntrospectionSelector<UITabBarController> {
.default.withAncestorSelector(\.tabBarController)
}
} }
extension tvOSViewVersion<TabViewType, UITabBarController> { extension tvOSViewVersion<TabViewType, UITabBarController> {
public static let v13 = Self(for: .v13) public static let v13 = Self(for: .v13, selector: selector)
public static let v14 = Self(for: .v14) public static let v14 = Self(for: .v14, selector: selector)
public static let v15 = Self(for: .v15) public static let v15 = Self(for: .v15, selector: selector)
public static let v16 = Self(for: .v16) public static let v16 = Self(for: .v16, selector: selector)
private static var selector: IntrospectionSelector<UITabBarController> {
.default.withAncestorSelector(\.tabBarController)
}
} }
#elseif canImport(AppKit) #elseif canImport(AppKit)
extension macOSViewVersion<TabViewType, NSTabView> { extension macOSViewVersion<TabViewType, NSTabView> {