mirror of
https://github.com/zydeco/minivmac4ios.git
synced 2025-02-07 22:30:46 +00:00
don't annotate whole view controller with API_AVAILABLE(ios(13.4))
This commit is contained in:
parent
9d3f2bd98c
commit
5ab79e73e2
@ -10,12 +10,7 @@
|
|||||||
#import "ScreenView.h"
|
#import "ScreenView.h"
|
||||||
#import "KBKeyboardView.h"
|
#import "KBKeyboardView.h"
|
||||||
|
|
||||||
#ifdef __IPHONE_13_4
|
|
||||||
API_AVAILABLE(ios(13.4))
|
|
||||||
@interface ViewController : UIViewController <UIPointerInteractionDelegate, KBKeyboardViewDelegate>
|
|
||||||
#else
|
|
||||||
@interface ViewController : UIViewController <KBKeyboardViewDelegate>
|
@interface ViewController : UIViewController <KBKeyboardViewDelegate>
|
||||||
#endif
|
|
||||||
|
|
||||||
@property (weak, nonatomic) IBOutlet ScreenView *screenView;
|
@property (weak, nonatomic) IBOutlet ScreenView *screenView;
|
||||||
@property (nonatomic, getter=isKeyboardVisible) BOOL keyboardVisible;
|
@property (nonatomic, getter=isKeyboardVisible) BOOL keyboardVisible;
|
||||||
|
@ -13,21 +13,24 @@
|
|||||||
#import "KBKeyboardView.h"
|
#import "KBKeyboardView.h"
|
||||||
#import "KBKeyboardLayout.h"
|
#import "KBKeyboardLayout.h"
|
||||||
|
|
||||||
#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)
|
|
||||||
|
|
||||||
@interface ViewController () <UIViewControllerTransitioningDelegate, UIViewControllerAnimatedTransitioning>
|
@interface ViewController () <UIViewControllerTransitioningDelegate, UIViewControllerAnimatedTransitioning>
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
#ifdef __IPHONE_13_4
|
||||||
|
API_AVAILABLE(ios(13.4))
|
||||||
|
@interface ViewController (PointerInteraction) <UIPointerInteractionDelegate>
|
||||||
|
|
||||||
|
@end
|
||||||
|
#endif
|
||||||
|
|
||||||
@implementation ViewController
|
@implementation ViewController
|
||||||
{
|
{
|
||||||
KBKeyboardView *keyboardView;
|
KBKeyboardView *keyboardView;
|
||||||
UISwipeGestureRecognizer *showKeyboardGesture, *hideKeyboardGesture, *insertDiskGesture, *showSettingsGesture;
|
UISwipeGestureRecognizer *showKeyboardGesture, *hideKeyboardGesture, *insertDiskGesture, *showSettingsGesture;
|
||||||
UIControl *pointingDeviceView;
|
UIControl *pointingDeviceView;
|
||||||
UISwipeGestureRecognizerDirection modalPanePresentationDirection;
|
UISwipeGestureRecognizerDirection modalPanePresentationDirection;
|
||||||
#ifdef __IPHONE_13_4
|
id interaction;
|
||||||
UIPointerInteraction* interaction;
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (Point)mouseLocForCGPoint:(CGPoint)point {
|
- (Point)mouseLocForCGPoint:(CGPoint)point {
|
||||||
@ -39,22 +42,6 @@
|
|||||||
return mouseLoc;
|
return mouseLoc;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef __IPHONE_13_4
|
|
||||||
- (UIPointerRegion *)pointerInteraction:(UIPointerInteraction *)interaction regionForRequest:(UIPointerRegionRequest *)request defaultRegion:(UIPointerRegion *)defaultRegion API_AVAILABLE(ios(13.4)){
|
|
||||||
if (request != nil) {
|
|
||||||
Point mouseLoc = [self mouseLocForCGPoint:request.location];
|
|
||||||
// NSLog(@"Interaction: x2: %hi, y2: %hi", (short)mouseLoc.h, (short)mouseLoc.v);
|
|
||||||
[[AppDelegate sharedEmulator] setMouseX:mouseLoc.h Y:mouseLoc.v];
|
|
||||||
}
|
|
||||||
return defaultRegion;
|
|
||||||
}
|
|
||||||
|
|
||||||
- (UIPointerStyle *)pointerInteraction:(UIPointerInteraction *)interaction styleForRegion:(UIPointerRegion *)region {
|
|
||||||
return [UIPointerStyle hiddenPointerStyle];
|
|
||||||
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
- (void)viewDidLoad {
|
- (void)viewDidLoad {
|
||||||
[super viewDidLoad];
|
[super viewDidLoad];
|
||||||
[self installKeyboardGestures];
|
[self installKeyboardGestures];
|
||||||
@ -158,10 +145,12 @@
|
|||||||
pointingDeviceView = nil;
|
pointingDeviceView = nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"13.4")) {
|
#ifdef __IPHONE_13_4
|
||||||
|
if (@available(iOS 13.4, *)) {
|
||||||
interaction = [[UIPointerInteraction alloc] initWithDelegate: self];
|
interaction = [[UIPointerInteraction alloc] initWithDelegate: self];
|
||||||
[self.view addInteraction:interaction];
|
[self.view addInteraction:interaction];
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
BOOL useTrackPad = [[NSUserDefaults standardUserDefaults] boolForKey:@"trackpad"];
|
BOOL useTrackPad = [[NSUserDefaults standardUserDefaults] boolForKey:@"trackpad"];
|
||||||
Class pointingDeviceClass = useTrackPad ? [TrackPad class] : [TouchScreen class];
|
Class pointingDeviceClass = useTrackPad ? [TrackPad class] : [TouchScreen class];
|
||||||
@ -398,3 +387,21 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
#ifdef __IPHONE_13_4
|
||||||
|
API_AVAILABLE(ios(13.4))
|
||||||
|
@implementation ViewController (PointerInteraction)
|
||||||
|
- (UIPointerRegion *)pointerInteraction:(UIPointerInteraction *)interaction regionForRequest:(UIPointerRegionRequest *)request defaultRegion:(UIPointerRegion *)defaultRegion API_AVAILABLE(ios(13.4)){
|
||||||
|
if (request != nil) {
|
||||||
|
Point mouseLoc = [self mouseLocForCGPoint:request.location];
|
||||||
|
[[AppDelegate sharedEmulator] setMouseX:mouseLoc.h Y:mouseLoc.v];
|
||||||
|
}
|
||||||
|
return defaultRegion;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (UIPointerStyle *)pointerInteraction:(UIPointerInteraction *)interaction styleForRegion:(UIPointerRegion *)region {
|
||||||
|
return [UIPointerStyle hiddenPointerStyle];
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
||||||
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user