Blame client/iOS/Controllers/RDPSessionViewController.h

Packit 1fb8d4
/*
Packit 1fb8d4
 RDP Session View Controller
Packit Service 5a9772
Packit 1fb8d4
 Copyright 2013 Thincast Technologies GmbH, Author: Martin Fleisz
Packit Service 5a9772
Packit Service 5a9772
 This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
Packit Service 5a9772
 If a copy of the MPL was not distributed with this file, You can obtain one at
Packit Service 5a9772
 http://mozilla.org/MPL/2.0/.
Packit 1fb8d4
 */
Packit 1fb8d4
Packit 1fb8d4
#import <UIKit/UIKit.h>
Packit 1fb8d4
#import "RDPSession.h"
Packit 1fb8d4
#import "RDPKeyboard.h"
Packit 1fb8d4
#import "RDPSessionView.h"
Packit 1fb8d4
#import "TouchPointerView.h"
Packit 1fb8d4
#import "AdvancedKeyboardView.h"
Packit 1fb8d4
Packit Service 5a9772
@interface RDPSessionViewController
Packit Service 5a9772
    : UIViewController 
Packit Service 5a9772
                        RDPKeyboardDelegate, UIScrollViewDelegate, UITextFieldDelegate>
Packit 1fb8d4
{
Packit 1fb8d4
	// scrollview that hosts the rdp session view
Packit Service 5a9772
	IBOutlet UIScrollView *_session_scrollview;
Packit Service 5a9772
Packit 1fb8d4
	// rdp session view
Packit Service 5a9772
	IBOutlet RDPSessionView *_session_view;
Packit 1fb8d4
Packit Service 5a9772
	// touch pointer view
Packit Service 5a9772
	IBOutlet TouchPointerView *_touchpointer_view;
Packit Service 5a9772
	BOOL _autoscroll_with_touchpointer;
Packit Service 5a9772
	BOOL _is_autoscrolling;
Packit 1fb8d4
Packit 1fb8d4
	// rdp session toolbar
Packit Service 5a9772
	IBOutlet UIToolbar *_session_toolbar;
Packit Service 5a9772
	BOOL _session_toolbar_visible;
Packit Service 5a9772
Packit 1fb8d4
	// dummy text field used to display the keyboard
Packit Service 5a9772
	IBOutlet UITextField *_dummy_textfield;
Packit Service 5a9772
Packit Service 5a9772
	// connecting view and the controls within that view
Packit Service 5a9772
	IBOutlet UIView *_connecting_view;
Packit Service 5a9772
	IBOutlet UILabel *_lbl_connecting;
Packit Service 5a9772
	IBOutlet UIActivityIndicatorView *_connecting_indicator_view;
Packit Service 5a9772
	IBOutlet UIButton *_cancel_connect_button;
Packit Service 5a9772
Packit Service 5a9772
	// extended keyboard toolbar
Packit Service 5a9772
	UIToolbar *_keyboard_toolbar;
Packit Service 5a9772
Packit Service 5a9772
	// rdp session
Packit Service 5a9772
	RDPSession *_session;
Packit Service 5a9772
	BOOL _session_initilized;
Packit Service 5a9772
Packit 1fb8d4
	// flag that indicates whether the keyboard is visible or not
Packit 1fb8d4
	BOOL _keyboard_visible;
Packit Service 5a9772
Packit Service 5a9772
	// flag to switch between left/right mouse button mode
Packit Service 5a9772
	BOOL _toggle_mouse_button;
Packit Service 5a9772
Packit Service 5a9772
	// keyboard extension view
Packit Service 5a9772
	AdvancedKeyboardView *_advanced_keyboard_view;
Packit Service 5a9772
	BOOL _advanced_keyboard_visible;
Packit Service 5a9772
	BOOL _requesting_advanced_keyboard;
Packit Service 5a9772
	CGFloat _keyboard_last_height;
Packit Service 5a9772
Packit Service 5a9772
	// delayed mouse move event sending
Packit Service 5a9772
	NSTimer *_mouse_move_event_timer;
Packit Service 5a9772
	int _mouse_move_events_skipped;
Packit Service 5a9772
	CGPoint _prev_long_press_position;
Packit 1fb8d4
}
Packit 1fb8d4
Packit Service 5a9772
- (id)initWithNibName:(NSString *)nibNameOrNil
Packit Service 5a9772
               bundle:(NSBundle *)nibBundleOrNil
Packit Service 5a9772
              session:(RDPSession *)session;
Packit 1fb8d4
Packit 1fb8d4
@end