mirror of
https://github.com/zoriya/react-native-svg.git
synced 2025-12-06 07:06:11 +00:00
feat: add visionOS support (#2190)
This PR adds support for visionOS. I've migrated the `UIScreen` API to take `displayScale` from `currentTraitCollection` - same as I did in Core (https://github.com/facebook/react-native/pull/41214/files)
This commit is contained in:
committed by
GitHub
parent
2806bb2bee
commit
068820b3fa
@@ -19,7 +19,7 @@ Pod::Spec.new do |s|
|
||||
s.requires_arc = true
|
||||
|
||||
if fabric_enabled
|
||||
s.platforms = { :osx => "10.14", ios: '12.4', tvos: '11.0' }
|
||||
s.platforms = { :osx => "10.14", :ios => "12.4", :tvos => "11.0", :visionos => "1.0" }
|
||||
install_modules_dependencies(s)
|
||||
|
||||
s.subspec "common" do |ss|
|
||||
@@ -28,7 +28,7 @@ Pod::Spec.new do |s|
|
||||
ss.pod_target_xcconfig = { "HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)/common/cpp\"" }
|
||||
end
|
||||
else
|
||||
s.platforms = { :osx => "10.14", :ios => "10.0", :tvos => "9.2" }
|
||||
s.platforms = { :osx => "10.14", :ios => "10.0", :tvos => "9.2", :visionos => "1.0" }
|
||||
s.exclude_files = 'apple/Utils/RNSVGFabricConversions.h'
|
||||
s.dependency 'React-Core'
|
||||
end
|
||||
|
||||
@@ -245,10 +245,17 @@ UInt32 saturate(CGFloat value)
|
||||
CGSize boundsSize = bounds.size;
|
||||
CGFloat height = boundsSize.height;
|
||||
CGFloat width = boundsSize.width;
|
||||
CGFloat scale = 0.0;
|
||||
#if TARGET_OS_OSX
|
||||
CGFloat scale = [[NSScreen mainScreen] backingScaleFactor];
|
||||
scale = [[NSScreen mainScreen] backingScaleFactor];
|
||||
#else
|
||||
CGFloat scale = [[UIScreen mainScreen] scale];
|
||||
if (@available(iOS 13.0, *)) {
|
||||
scale = [UITraitCollection currentTraitCollection].displayScale;
|
||||
} else {
|
||||
#if !TARGET_OS_VISION
|
||||
scale = [[UIScreen mainScreen] scale];
|
||||
#endif
|
||||
}
|
||||
#endif // TARGET_OS_OSX
|
||||
NSUInteger iheight = (NSUInteger)height;
|
||||
NSUInteger iwidth = (NSUInteger)width;
|
||||
|
||||
Reference in New Issue
Block a user