FreeRDP
Loading...
Searching...
No Matches
RDPSessionViewController.h
1/*
2 RDP Session View Controller
3
4 Copyright 2013 Thincast Technologies GmbH, Author: Martin Fleisz
5
6 This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
7 If a copy of the MPL was not distributed with this file, You can obtain one at
8 http://mozilla.org/MPL/2.0/.
9 */
10
11#import <UIKit/UIKit.h>
12#import "RDPSession.h"
13#import "RDPKeyboard.h"
14#import "RDPSessionView.h"
15#import "RDPCursor.h"
16#import "AdvancedKeyboardView.h"
17#import "RDPKeyboardToolbarView.h"
18
20 : UIViewController <RDPSessionDelegate, AdvancedKeyboardDelegate, RDPKeyboardDelegate,
21 UIScrollViewDelegate, UITextFieldDelegate, UIGestureRecognizerDelegate,
22 UIPointerInteractionDelegate>
23{
24 // scrollview that hosts the rdp session view
25 IBOutlet UIScrollView *_session_scrollview;
26
27 // rdp session view
28 IBOutlet RDPSessionView *_session_view;
29
30 // rdp session toolbar
31 IBOutlet UIToolbar *_session_toolbar;
32 BOOL _session_toolbar_visible;
33
34 // dummy text field used to display the keyboard
35 IBOutlet UITextField *_dummy_textfield;
36
37 // dummy text field that has already been sent to the remote session
38 NSString *_sent_text;
39
40 // connecting view and the controls within that view
41 IBOutlet UIView *_connecting_view;
42 IBOutlet UILabel *_lbl_connecting;
43 IBOutlet UIActivityIndicatorView *_connecting_indicator_view;
44 IBOutlet UIButton *_cancel_connect_button;
45
46 // extended keyboard toolbar
47 RDPKeyboardToolbarView *_keyboard_toolbar;
48
49 // rdp session
50 RDPSession *_session;
51 BOOL _session_initilized;
52
53 // keyboard extension view
54 AdvancedKeyboardView *_advanced_keyboard_view;
55
56 // height of the system keyboard per orientation
57 CGFloat _keyboard_height_portrait;
58 CGFloat _keyboard_height_landscape;
59 CGSize _last_session_viewport_size;
60
61 CGPoint _prev_long_press_position;
62 CGPoint _cursor_view_position;
63 CGPoint _last_mouse_pan_location;
64 BOOL _has_cursor_view_position;
65 BOOL _has_user_moved_cursor;
66 BOOL _mouse_pan_active;
67 BOOL _long_press_active;
68 BOOL _mouse_drag_active;
69 BOOL _pointer_is_indirect;
70}
71
72- (id)initWithNibName:(NSString *)nibNameOrNil
73 bundle:(NSBundle *)nibBundleOrNil
74 session:(RDPSession *)session;
75
76@end