refactor(apple): use new render context per file and view (#9838) 9c7927622b

Co-authored-by: David Skuza <david@rive.app>
This commit is contained in:
dskuza
2025-05-29 16:14:01 +00:00
parent 2f1c467b0e
commit 7aa9afaf79
8 changed files with 76 additions and 123 deletions

View File

@@ -22,13 +22,12 @@
CGSize drawableSize = CGSizeMake(320, 240);
CGFloat scale = 1.0f;
RenderContext* context =
[[RenderContextManager shared] getRiveRendererContext];
RenderContext* context = [[RenderContextManager shared] newRiveContext];
XCTAssertTrue([context canDrawInRect:rect
drawableSize:drawableSize
scale:scale]);
context = [[RenderContextManager shared] getCGRendererContext];
context = [[RenderContextManager shared] newCGContext];
XCTAssertTrue([context canDrawInRect:rect
drawableSize:drawableSize
scale:scale]);
@@ -40,13 +39,12 @@
CGSize drawableSize = CGSizeMake(INFINITY, INFINITY);
CGFloat scale = 1.0f;
RenderContext* context =
[[RenderContextManager shared] getRiveRendererContext];
RenderContext* context = [[RenderContextManager shared] newRiveContext];
XCTAssertFalse([context canDrawInRect:rect
drawableSize:drawableSize
scale:scale]);
context = [[RenderContextManager shared] getCGRendererContext];
context = [[RenderContextManager shared] newCGContext];
XCTAssertFalse([context canDrawInRect:rect
drawableSize:drawableSize
scale:scale]);
@@ -58,13 +56,12 @@
CGSize drawableSize = CGSizeMake(320, 240);
CGFloat scale = 1.0f;
RenderContext* context =
[[RenderContextManager shared] getRiveRendererContext];
RenderContext* context = [[RenderContextManager shared] newRiveContext];
XCTAssertFalse([context canDrawInRect:rect
drawableSize:drawableSize
scale:scale]);
context = [[RenderContextManager shared] getCGRendererContext];
context = [[RenderContextManager shared] newCGContext];
XCTAssertFalse([context canDrawInRect:rect
drawableSize:drawableSize
scale:scale]);
@@ -76,13 +73,12 @@
CGSize drawableSize = CGSizeMake(320, 240);
CGFloat scale = -1.0f;
RenderContext* context =
[[RenderContextManager shared] getRiveRendererContext];
RenderContext* context = [[RenderContextManager shared] newRiveContext];
XCTAssertFalse([context canDrawInRect:rect
drawableSize:drawableSize
scale:scale]);
context = [[RenderContextManager shared] getCGRendererContext];
context = [[RenderContextManager shared] newCGContext];
XCTAssertFalse([context canDrawInRect:rect
drawableSize:drawableSize
scale:scale]);
@@ -94,13 +90,12 @@
CGSize drawableSize = CGSizeMake(320, 240);
CGFloat scale = 1000.0f;
RenderContext* context =
[[RenderContextManager shared] getRiveRendererContext];
RenderContext* context = [[RenderContextManager shared] newRiveContext];
XCTAssertFalse([context canDrawInRect:rect
drawableSize:drawableSize
scale:scale]);
context = [[RenderContextManager shared] getCGRendererContext];
context = [[RenderContextManager shared] newCGContext];
XCTAssertFalse([context canDrawInRect:rect
drawableSize:drawableSize
scale:scale]);

View File

@@ -63,11 +63,8 @@
*/
- (void)testLoadFluxWithPLS
{
if ([[RenderContextManager shared] getRiveRendererContext] != nil)
{
[[RenderContextManager shared]
setDefaultRenderer:RendererType::riveRenderer];
}
[[RenderContextManager shared]
setDefaultRenderer:RendererType::riveRenderer];
NSError* error = nil;
RiveFile* file = [Util loadTestFile:@"flux_capacitor" error:&error];
RiveArtboard* artboard = [file artboard:&error];