diff options
author | Tor Lillqvist <tml@iki.fi> | 2013-04-16 14:32:06 +0200 |
---|---|---|
committer | Tor Lillqvist <tml@iki.fi> | 2013-04-16 15:51:03 +0300 |
commit | ab49c55bbc7a5fc5b6509fe995abf42ce266ba9b (patch) | |
tree | 35e285360c7bc393e8fd1efddcb26037c6d347be /ios/experimental | |
parent | 5358b9ba4ffa8667192b11bbb654fcdbcd463e7a (diff) |
More orientation experimentation and hacking
Now it re-orients and re-sizes the LO "frame" correctly upon rotation,
but it still starts wrongly if starting in landscape orientation.
Change-Id: I4c12a7e00d687391435a47400b6e8b4c7e49bdda
Diffstat (limited to 'ios/experimental')
-rw-r--r-- | ios/experimental/LibreOffice/LibreOffice/AppDelegate.m | 2 | ||||
-rw-r--r-- | ios/experimental/LibreOffice/LibreOffice/View.m | 18 | ||||
-rw-r--r-- | ios/experimental/LibreOffice/LibreOffice/ViewController.m | 7 |
3 files changed, 18 insertions, 9 deletions
diff --git a/ios/experimental/LibreOffice/LibreOffice/AppDelegate.m b/ios/experimental/LibreOffice/LibreOffice/AppDelegate.m index 2285f04f412e..ea3f5357c951 100644 --- a/ios/experimental/LibreOffice/LibreOffice/AppDelegate.m +++ b/ios/experimental/LibreOffice/LibreOffice/AppDelegate.m @@ -62,6 +62,8 @@ static View *theView; [self.window addGestureRecognizer: tapRecognizer]; + NSLog(@"statusBarOrientation: %d", [[UIApplication sharedApplication] statusBarOrientation]); + if (UIInterfaceOrientationIsLandscape([[UIApplication sharedApplication] statusBarOrientation])) lo_set_view_size(applicationFrame.size.height, applicationFrame.size.width); else diff --git a/ios/experimental/LibreOffice/LibreOffice/View.m b/ios/experimental/LibreOffice/LibreOffice/View.m index 430839223c41..56e4e0ea0451 100644 --- a/ios/experimental/LibreOffice/LibreOffice/View.m +++ b/ios/experimental/LibreOffice/LibreOffice/View.m @@ -15,8 +15,9 @@ - (void)drawRect:(CGRect)rect { NSLog(@"drawRect: %dx%d@(%d,%d)", (int) rect.size.width, (int) rect.size.height, (int) rect.origin.x, (int) rect.origin.y); + NSLog(@"statusBarOrientation: %d", [[UIApplication sharedApplication] statusBarOrientation]); - NSDate *startDate = [NSDate date]; + // NSDate *startDate = [NSDate date]; CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSaveGState(context); @@ -27,23 +28,22 @@ CGContextScaleCTM(context, 1, -1); break; case UIInterfaceOrientationLandscapeLeft: - CGContextTranslateCTM(context, self.frame.size.width, self.frame.size.height); - CGContextRotateCTM(context, M_PI/2); - CGContextScaleCTM(context, -1, 1); + CGContextTranslateCTM(context, 0, self.frame.size.width); + CGContextScaleCTM(context, 1, -1); break; case UIInterfaceOrientationLandscapeRight: - CGContextRotateCTM(context, -M_PI/2); - CGContextScaleCTM(context, -1, 1); + CGContextTranslateCTM(context, 0, self.frame.size.width); + CGContextScaleCTM(context, 1, -1); break; case UIInterfaceOrientationPortraitUpsideDown: - CGContextTranslateCTM(context, self.frame.size.width, 0); - CGContextScaleCTM(context, -1, 1); + CGContextTranslateCTM(context, 0, self.frame.size.height); + CGContextScaleCTM(context, 1, -1); break; } lo_render_windows(context, rect); CGContextRestoreGState(context); - NSLog(@"drawRect: lo_render_windows took %f s", [[NSDate date] timeIntervalSinceDate: startDate]); + // NSLog(@"drawRect: lo_render_windows took %f s", [[NSDate date] timeIntervalSinceDate: startDate]); } - (void) tapGesture:(UIGestureRecognizer *)gestureRecognizer diff --git a/ios/experimental/LibreOffice/LibreOffice/ViewController.m b/ios/experimental/LibreOffice/LibreOffice/ViewController.m index 58da5db5aa06..a0c4985c2c77 100644 --- a/ios/experimental/LibreOffice/LibreOffice/ViewController.m +++ b/ios/experimental/LibreOffice/LibreOffice/ViewController.m @@ -25,6 +25,13 @@ NSLog(@" frame=%dx%d@(%d,%d)", (int)rect.size.width, (int)rect.size.height, (int)rect.origin.x, (int)rect.origin.y); } +- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation +{ + (void) fromInterfaceOrientation; + + NSLog(@"didRotateFromInterfaceOrientation: statusBarOrientation: %d interfaceOrientation: %d", [[UIApplication sharedApplication] statusBarOrientation], [self interfaceOrientation]); +} + @end // vim:set shiftwidth=4 softtabstop=4 expandtab: |