expo-gl 11.3.0 → 11.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/android/build.gradle +2 -2
- package/ios/EXGL/EXGLContext.mm +31 -0
- package/ios/EXGL.xcframework/Info.plist +5 -5
- package/ios/EXGL.xcframework/ios-arm64/EXGL.framework/EXGL +0 -0
- package/ios/EXGL.xcframework/ios-arm64/EXGL.framework/Info.plist +0 -0
- package/ios/EXGL.xcframework/ios-arm64_x86_64-simulator/EXGL.framework/EXGL +0 -0
- package/ios/EXGL.xcframework/ios-arm64_x86_64-simulator/EXGL.framework/Info.plist +0 -0
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,13 @@
|
|
|
10
10
|
|
|
11
11
|
### 💡 Others
|
|
12
12
|
|
|
13
|
+
## 11.4.0 — 2022-07-07
|
|
14
|
+
|
|
15
|
+
### 🐛 Bug fixes
|
|
16
|
+
|
|
17
|
+
- Stop rendering when app is backgrounded on iOS. ([#17463](https://github.com/expo/expo/pull/17463) by [@wkozyra95](https://github.com/wkozyra95))
|
|
18
|
+
- Added support for React Native 0.69.x. ([#18006](https://github.com/expo/expo/pull/18006) by [@kudo](https://github.com/kudo))
|
|
19
|
+
|
|
13
20
|
## 11.3.0 — 2022-04-27
|
|
14
21
|
|
|
15
22
|
### 🐛 Bug fixes
|
package/android/build.gradle
CHANGED
|
@@ -3,7 +3,7 @@ apply plugin: 'kotlin-android'
|
|
|
3
3
|
apply plugin: 'maven-publish'
|
|
4
4
|
|
|
5
5
|
group = 'host.exp.exponent'
|
|
6
|
-
version = '11.
|
|
6
|
+
version = '11.4.0'
|
|
7
7
|
|
|
8
8
|
buildscript {
|
|
9
9
|
def expoModulesCorePlugin = new File(project(":expo-modules-core").projectDir.absolutePath, "ExpoModulesCorePlugin.gradle")
|
|
@@ -74,7 +74,7 @@ android {
|
|
|
74
74
|
minSdkVersion safeExtGet("minSdkVersion", 21)
|
|
75
75
|
targetSdkVersion safeExtGet("targetSdkVersion", 31)
|
|
76
76
|
versionCode 31
|
|
77
|
-
versionName "11.
|
|
77
|
+
versionName "11.4.0"
|
|
78
78
|
}
|
|
79
79
|
|
|
80
80
|
sourceSets.main {
|
package/ios/EXGL/EXGLContext.mm
CHANGED
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
@property (nonatomic, weak) EXGLObjectManager *objectManager;
|
|
21
21
|
@property (nonatomic, assign) BOOL isContextReady;
|
|
22
22
|
@property (nonatomic, assign) BOOL wasPrepareCalled;
|
|
23
|
+
@property (nonatomic) BOOL appIsBackgrounded;
|
|
23
24
|
|
|
24
25
|
@end
|
|
25
26
|
|
|
@@ -36,6 +37,7 @@
|
|
|
36
37
|
_eaglCtx = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES3] ?: [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES2];
|
|
37
38
|
_isContextReady = NO;
|
|
38
39
|
_wasPrepareCalled = NO;
|
|
40
|
+
_appIsBackgrounded = NO;
|
|
39
41
|
}
|
|
40
42
|
return self;
|
|
41
43
|
}
|
|
@@ -71,6 +73,29 @@
|
|
|
71
73
|
{
|
|
72
74
|
self->_contextId = UEXGLContextCreate();
|
|
73
75
|
[self->_objectManager saveContext:self];
|
|
76
|
+
|
|
77
|
+
// listen for foreground/background transitions
|
|
78
|
+
[[NSNotificationCenter defaultCenter] addObserver:self
|
|
79
|
+
selector:@selector(onApplicationDidBecomeActive:)
|
|
80
|
+
name:UIApplicationDidBecomeActiveNotification
|
|
81
|
+
object:nil];
|
|
82
|
+
[[NSNotificationCenter defaultCenter] addObserver:self
|
|
83
|
+
selector:@selector(onApplicationWillResignActive:)
|
|
84
|
+
name:UIApplicationWillResignActiveNotification
|
|
85
|
+
object:nil];
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
- (void)onApplicationWillResignActive:(NSNotification *)notification
|
|
89
|
+
{
|
|
90
|
+
_appIsBackgrounded = YES;
|
|
91
|
+
dispatch_sync(_glQueue, ^{
|
|
92
|
+
glFinish();
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
- (void)onApplicationDidBecomeActive:(NSNotification *)notification {
|
|
97
|
+
_appIsBackgrounded = NO;
|
|
98
|
+
[self flush];
|
|
74
99
|
}
|
|
75
100
|
|
|
76
101
|
- (void)prepare:(void(^)(BOOL))callback
|
|
@@ -117,6 +142,9 @@
|
|
|
117
142
|
|
|
118
143
|
- (void)flush
|
|
119
144
|
{
|
|
145
|
+
if (_appIsBackgrounded) {
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
120
148
|
[self runAsync:^{
|
|
121
149
|
UEXGLContextFlush(self->_contextId);
|
|
122
150
|
|
|
@@ -128,6 +156,9 @@
|
|
|
128
156
|
|
|
129
157
|
- (void)destroy
|
|
130
158
|
{
|
|
159
|
+
[[NSNotificationCenter defaultCenter] removeObserver:self name:UIApplicationDidBecomeActiveNotification object:nil];
|
|
160
|
+
[[NSNotificationCenter defaultCenter] removeObserver:self name:UIApplicationWillResignActiveNotification object:nil];
|
|
161
|
+
|
|
131
162
|
[self runAsync:^{
|
|
132
163
|
if ([self.delegate respondsToSelector:@selector(glContextWillDestroy:)]) {
|
|
133
164
|
[self.delegate glContextWillDestroy:self];
|
|
@@ -6,30 +6,30 @@
|
|
|
6
6
|
<array>
|
|
7
7
|
<dict>
|
|
8
8
|
<key>LibraryIdentifier</key>
|
|
9
|
-
<string>ios-
|
|
9
|
+
<string>ios-arm64</string>
|
|
10
10
|
<key>LibraryPath</key>
|
|
11
11
|
<string>EXGL.framework</string>
|
|
12
12
|
<key>SupportedArchitectures</key>
|
|
13
13
|
<array>
|
|
14
14
|
<string>arm64</string>
|
|
15
|
-
<string>x86_64</string>
|
|
16
15
|
</array>
|
|
17
16
|
<key>SupportedPlatform</key>
|
|
18
17
|
<string>ios</string>
|
|
19
|
-
<key>SupportedPlatformVariant</key>
|
|
20
|
-
<string>simulator</string>
|
|
21
18
|
</dict>
|
|
22
19
|
<dict>
|
|
23
20
|
<key>LibraryIdentifier</key>
|
|
24
|
-
<string>ios-
|
|
21
|
+
<string>ios-arm64_x86_64-simulator</string>
|
|
25
22
|
<key>LibraryPath</key>
|
|
26
23
|
<string>EXGL.framework</string>
|
|
27
24
|
<key>SupportedArchitectures</key>
|
|
28
25
|
<array>
|
|
29
26
|
<string>arm64</string>
|
|
27
|
+
<string>x86_64</string>
|
|
30
28
|
</array>
|
|
31
29
|
<key>SupportedPlatform</key>
|
|
32
30
|
<string>ios</string>
|
|
31
|
+
<key>SupportedPlatformVariant</key>
|
|
32
|
+
<string>simulator</string>
|
|
33
33
|
</dict>
|
|
34
34
|
</array>
|
|
35
35
|
<key>CFBundlePackageType</key>
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "expo-gl",
|
|
3
|
-
"version": "11.
|
|
3
|
+
"version": "11.4.0",
|
|
4
4
|
"description": "Provides GLView that acts as OpenGL ES render target and gives GL context object implementing WebGL 2.0 specification.",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"types": "build/index.d.ts",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"preset": "expo-module-scripts"
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"expo-gl-cpp": "~11.
|
|
40
|
+
"expo-gl-cpp": "~11.4.0",
|
|
41
41
|
"invariant": "^2.2.4"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
@@ -45,10 +45,10 @@
|
|
|
45
45
|
"@types/offscreencanvas": "2019.6.4",
|
|
46
46
|
"@types/webgl2": "^0.0.6",
|
|
47
47
|
"expo-module-scripts": "^2.0.0",
|
|
48
|
-
"react-test-renderer": "~
|
|
48
|
+
"react-test-renderer": "~18.0.0"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
51
|
"expo": "*"
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "e893ff2b01e108cf246cec02318c0df9d6bc603c"
|
|
54
54
|
}
|