Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(287)

Side by Side Diff: remoting/ios/utility.mm

Issue 475333004: Remove old Chromoting iOS client (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « remoting/ios/utility.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #if !defined(__has_feature) || !__has_feature(objc_arc)
6 #error "This file requires ARC support."
7 #endif
8
9 #import "Utility.h"
10
11 @implementation Utility
12
13 + (BOOL)isPad {
14 return (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad);
15 }
16
17 + (BOOL)isInLandscapeMode {
18 UIInterfaceOrientation orientation =
19 [UIApplication sharedApplication].statusBarOrientation;
20
21 if ((orientation == UIInterfaceOrientationLandscapeLeft) ||
22 (orientation == UIInterfaceOrientationLandscapeRight)) {
23 return YES;
24 }
25 return NO;
26 }
27
28 + (CGSize)getOrientatedSize:(CGSize)size
29 shouldWidthBeLongestSide:(BOOL)shouldWidthBeLongestSide {
30 if (shouldWidthBeLongestSide && (size.height > size.width)) {
31 return CGSizeMake(size.height, size.width);
32 }
33 return size;
34 }
35
36 + (void)showAlert:(NSString*)title message:(NSString*)message {
37 UIAlertView* alert;
38 alert = [[UIAlertView alloc] init];
39 alert.title = title;
40 alert.message = message;
41 alert.delegate = nil;
42 [alert addButtonWithTitle:@"OK"];
43 [alert show];
44 }
45
46 + (NSString*)appVersionNumberDisplayString {
47 NSDictionary* infoDictionary = [[NSBundle mainBundle] infoDictionary];
48
49 NSString* majorVersion =
50 [infoDictionary objectForKey:@"CFBundleShortVersionString"];
51 NSString* minorVersion = [infoDictionary objectForKey:@"CFBundleVersion"];
52
53 return [NSString
54 stringWithFormat:@"Version %@ (%@)", majorVersion, minorVersion];
55 }
56
57 + (void)bindTextureForIOS:(GLuint)glName {
58 glBindTexture(GL_TEXTURE_2D, glName);
59 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
60 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
61 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
62 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
63 }
64
65 + (void)logGLErrorCode:(NSString*)funcName {
66 GLenum errorCode = 1;
67
68 while (errorCode != 0) {
69 errorCode = glGetError(); // I don't know why this is returning an error
70 // on the first call to this function, but if I
71 // don't read it, then stuff doesn't work...
72 #if DEBUG
73 if (errorCode != 0) {
74 NSLog(@"glerror in %@: %X", funcName, errorCode);
75 }
76 #endif // DEBUG
77 }
78 }
79
80 + (void)drawSubRectToGLFromRectOfSize:(const webrtc::DesktopSize&)rectSize
81 subRect:(const webrtc::DesktopRect&)subRect
82 data:(const uint8_t*)data {
83 DCHECK(rectSize.width() >= subRect.width());
84 DCHECK(rectSize.height() >= subRect.height());
85 DCHECK(rectSize.width() >= (subRect.left() + subRect.width()));
86 DCHECK(rectSize.height() >= (subRect.top() + subRect.height()));
87 DCHECK(data);
88
89 glTexSubImage2D(GL_TEXTURE_2D,
90 0,
91 subRect.left(),
92 subRect.top(),
93 subRect.width(),
94 subRect.height(),
95 GL_RGBA,
96 GL_UNSIGNED_BYTE,
97 data);
98 }
99
100 + (void)moveMouse:(HostProxy*)controller
101 at:(const webrtc::DesktopVector&)point {
102 [controller mouseAction:point
103 wheelDelta:webrtc::DesktopVector(0, 0)
104 whichButton:0
105 buttonDown:NO];
106 }
107
108 + (void)leftClickOn:(HostProxy*)controller
109 at:(const webrtc::DesktopVector&)point {
110 [controller mouseAction:point
111 wheelDelta:webrtc::DesktopVector(0, 0)
112 whichButton:1
113 buttonDown:YES];
114 [controller mouseAction:point
115 wheelDelta:webrtc::DesktopVector(0, 0)
116 whichButton:1
117 buttonDown:NO];
118 }
119
120 + (void)middleClickOn:(HostProxy*)controller
121 at:(const webrtc::DesktopVector&)point {
122 [controller mouseAction:point
123 wheelDelta:webrtc::DesktopVector(0, 0)
124 whichButton:2
125 buttonDown:YES];
126 [controller mouseAction:point
127 wheelDelta:webrtc::DesktopVector(0, 0)
128 whichButton:2
129 buttonDown:NO];
130 }
131
132 + (void)rightClickOn:(HostProxy*)controller
133 at:(const webrtc::DesktopVector&)point {
134 [controller mouseAction:point
135 wheelDelta:webrtc::DesktopVector(0, 0)
136 whichButton:3
137 buttonDown:YES];
138 [controller mouseAction:point
139 wheelDelta:webrtc::DesktopVector(0, 0)
140 whichButton:3
141 buttonDown:NO];
142 }
143
144 + (void)mouseScroll:(HostProxy*)controller
145 at:(const webrtc::DesktopVector&)point
146 delta:(const webrtc::DesktopVector&)delta {
147 [controller mouseAction:point wheelDelta:delta whichButton:0 buttonDown:NO];
148 }
149
150 @end
OLDNEW
« no previous file with comments | « remoting/ios/utility.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698