mirror of https://github.com/encounter/SDL.git
Added a hint SDL_HINT_APPLE_TV_REMOTE_SWIPES_AS_ARROW_KEYS to prevent turning Apple TV remote swipes into arrow key events
This commit is contained in:
parent
61261e59bc
commit
9338a619f8
|
@ -355,6 +355,16 @@ extern "C" {
|
||||||
*/
|
*/
|
||||||
#define SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION "SDL_APPLE_TV_REMOTE_ALLOW_ROTATION"
|
#define SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION "SDL_APPLE_TV_REMOTE_ALLOW_ROTATION"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief A variable controlling whether the Apple TV remote swipes are
|
||||||
|
* translated into arrow key events
|
||||||
|
*
|
||||||
|
* This variable can be set to the following values:
|
||||||
|
* "0" - Swipes are not translated into arrow key events
|
||||||
|
* "1" - Swipes are translated into arrow key events (the default)
|
||||||
|
*/
|
||||||
|
#define SDL_HINT_APPLE_TV_REMOTE_SWIPES_AS_ARROW_KEYS "SDL_APPLE_TV_REMOTE_SWIPES_AS_ARROW_KEYS"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief A variable controlling whether the Android / iOS built-in
|
* \brief A variable controlling whether the Android / iOS built-in
|
||||||
* accelerometer should be listed as a joystick device, rather than listing
|
* accelerometer should be listed as a joystick device, rather than listing
|
||||||
|
|
|
@ -24,6 +24,7 @@
|
||||||
|
|
||||||
#include "SDL_uikitview.h"
|
#include "SDL_uikitview.h"
|
||||||
|
|
||||||
|
#include "SDL_hints.h"
|
||||||
#include "../../events/SDL_mouse_c.h"
|
#include "../../events/SDL_mouse_c.h"
|
||||||
#include "../../events/SDL_touch_c.h"
|
#include "../../events/SDL_touch_c.h"
|
||||||
#include "../../events/SDL_events_c.h"
|
#include "../../events/SDL_events_c.h"
|
||||||
|
@ -42,23 +43,25 @@
|
||||||
- (instancetype)initWithFrame:(CGRect)frame
|
- (instancetype)initWithFrame:(CGRect)frame
|
||||||
{
|
{
|
||||||
if ((self = [super initWithFrame:frame])) {
|
if ((self = [super initWithFrame:frame])) {
|
||||||
/* Apple TV Remote touchpad swipe gestures. */
|
|
||||||
#if TARGET_OS_TV
|
#if TARGET_OS_TV
|
||||||
UISwipeGestureRecognizer *swipeUp = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeGesture:)];
|
if (SDL_GetHintBoolean(SDL_HINT_APPLE_TV_REMOTE_SWIPES_AS_ARROW_KEYS, SDL_TRUE)) {
|
||||||
swipeUp.direction = UISwipeGestureRecognizerDirectionUp;
|
/* Apple TV Remote touchpad swipe gestures. */
|
||||||
[self addGestureRecognizer:swipeUp];
|
UISwipeGestureRecognizer *swipeUp = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeGesture:)];
|
||||||
|
swipeUp.direction = UISwipeGestureRecognizerDirectionUp;
|
||||||
|
[self addGestureRecognizer:swipeUp];
|
||||||
|
|
||||||
UISwipeGestureRecognizer *swipeDown = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeGesture:)];
|
UISwipeGestureRecognizer *swipeDown = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeGesture:)];
|
||||||
swipeDown.direction = UISwipeGestureRecognizerDirectionDown;
|
swipeDown.direction = UISwipeGestureRecognizerDirectionDown;
|
||||||
[self addGestureRecognizer:swipeDown];
|
[self addGestureRecognizer:swipeDown];
|
||||||
|
|
||||||
UISwipeGestureRecognizer *swipeLeft = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeGesture:)];
|
UISwipeGestureRecognizer *swipeLeft = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeGesture:)];
|
||||||
swipeLeft.direction = UISwipeGestureRecognizerDirectionLeft;
|
swipeLeft.direction = UISwipeGestureRecognizerDirectionLeft;
|
||||||
[self addGestureRecognizer:swipeLeft];
|
[self addGestureRecognizer:swipeLeft];
|
||||||
|
|
||||||
UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeGesture:)];
|
UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipeGesture:)];
|
||||||
swipeRight.direction = UISwipeGestureRecognizerDirectionRight;
|
swipeRight.direction = UISwipeGestureRecognizerDirectionRight;
|
||||||
[self addGestureRecognizer:swipeRight];
|
[self addGestureRecognizer:swipeRight];
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
self.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
|
self.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
|
||||||
|
|
Loading…
Reference in New Issue