summaryrefslogtreecommitdiff
path: root/ios
diff options
context:
space:
mode:
authorTor Lillqvist <tml@iki.fi>2013-04-16 14:32:06 +0200
committerTor Lillqvist <tml@iki.fi>2013-04-16 15:51:03 +0300
commitab49c55bbc7a5fc5b6509fe995abf42ce266ba9b (patch)
tree35e285360c7bc393e8fd1efddcb26037c6d347be /ios
parent5358b9ba4ffa8667192b11bbb654fcdbcd463e7a (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')
-rw-r--r--ios/experimental/LibreOffice/LibreOffice/AppDelegate.m2
-rw-r--r--ios/experimental/LibreOffice/LibreOffice/View.m18
-rw-r--r--ios/experimental/LibreOffice/LibreOffice/ViewController.m7
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: