Merge branch 'noWaterMark' into OSCDebug
# Conflicts: # Limelight/Input/StreamView.m # Limelight/ViewControllers/StreamFrameViewController.m
This commit is contained in:
commit
6e3c982a22
5 files changed
+36
-22
No files matched your search
@@ -11,6 +11,7 @@
|
|||||||
#define REGULAR_NATIVE_TOUCH 1
|
#define REGULAR_NATIVE_TOUCH 1
|
||||||
#define PURE_NATIVE_TOUCH 2
|
#define PURE_NATIVE_TOUCH 2
|
||||||
#define ABSOLUTE_TOUCH 3
|
#define ABSOLUTE_TOUCH 3
|
||||||
|
#define OSC_TOOL_FINGERS 5
|
||||||
|
|
||||||
|
|
||||||
@interface TemporarySettings : NSObject
|
@interface TemporarySettings : NSObject
|
||||||
|
|||||||
@@ -105,14 +105,14 @@ static const double X1_MOUSE_SPEED_DIVISOR = 2.5;
|
|||||||
switch (settings.touchMode.intValue) {
|
switch (settings.touchMode.intValue) {
|
||||||
case REGULAR_NATIVE_TOUCH:
|
case REGULAR_NATIVE_TOUCH:
|
||||||
keyboardToggleRecognizer.immediateTriggering = false;
|
keyboardToggleRecognizer.immediateTriggering = false;
|
||||||
if(settings.onscreenControls.intValue == OnScreenControlsLevelCustom) keyboardToggleRecognizer.numberOfTouchesRequired = 3; //fixing keyboard taps to 3, in order to invoke OSC rebase in stream view by 4-finger tap.
|
// if(settings.onscreenControls.intValue == OnScreenControlsLevelCustom) keyboardToggleRecognizer.numberOfTouchesRequired = 3; //deprecated: fixing keyboard taps to 3, in order to invoke OSC rebase in stream view by 4-finger tap.
|
||||||
|
|
||||||
case PURE_NATIVE_TOUCH:
|
case PURE_NATIVE_TOUCH:
|
||||||
self->touchHandler = [[NativeTouchHandler alloc] initWithView:self andSettings:settings];break;
|
self->touchHandler = [[NativeTouchHandler alloc] initWithView:self andSettings:settings];break;
|
||||||
case RELATIVE_TOUCH:
|
case RELATIVE_TOUCH:
|
||||||
self->touchHandler = [[RelativeTouchHandler alloc] initWithView:self andSettings:settings];
|
self->touchHandler = [[RelativeTouchHandler alloc] initWithView:self andSettings:settings];
|
||||||
keyboardToggleRecognizer.immediateTriggering = false;
|
keyboardToggleRecognizer.immediateTriggering = false;
|
||||||
if(settings.onscreenControls.intValue == OnScreenControlsLevelCustom) keyboardToggleRecognizer.numberOfTouchesRequired = 3; //fixing keyboard taps to 3, in order to invoke OSC rebase in stream view by 4-finger tap.
|
// if(settings.onscreenControls.intValue == OnScreenControlsLevelCustom) keyboardToggleRecognizer.numberOfTouchesRequired = 3; //deprecated: fixing keyboard taps to 3, in order to invoke OSC rebase in stream view by 4-finger tap.
|
||||||
break;
|
break;
|
||||||
case ABSOLUTE_TOUCH:
|
case ABSOLUTE_TOUCH:
|
||||||
self->touchHandler = [[AbsoluteTouchHandler alloc] initWithView:self];
|
self->touchHandler = [[AbsoluteTouchHandler alloc] initWithView:self];
|
||||||
|
|||||||
@@ -2119,48 +2119,48 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Tap 4 fingers to change on-screen controller layout in stream view" : {
|
"Tap 5 fingers to change on-screen controller layout in stream view" : {
|
||||||
"extractionState" : "manual",
|
"extractionState" : "manual",
|
||||||
"localizations" : {
|
"localizations" : {
|
||||||
"zh-Hans" : {
|
"zh-Hans" : {
|
||||||
"stringUnit" : {
|
"stringUnit" : {
|
||||||
"state" : "translated",
|
"state" : "translated",
|
||||||
"value" : "在串流视图中轻按4根手指修改虚拟手柄布局"
|
"value" : "在串流视图中轻按5根手指修改虚拟手柄布局"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"zh-Hant" : {
|
"zh-Hant" : {
|
||||||
"stringUnit" : {
|
"stringUnit" : {
|
||||||
"state" : "translated",
|
"state" : "translated",
|
||||||
"value" : "在串流视图中轻按4根手指修改虚拟手柄布局"
|
"value" : "在串流视图中轻按5根手指修改虚拟手柄布局"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"zh-HK" : {
|
"zh-HK" : {
|
||||||
"stringUnit" : {
|
"stringUnit" : {
|
||||||
"state" : "translated",
|
"state" : "translated",
|
||||||
"value" : "在串流视图中轻按4根手指修改虚拟手柄布局"
|
"value" : "在串流视图中轻按5根手指修改虚拟手柄布局"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Tap 4 Fingers to Change OSC Layout in Stream View" : {
|
"Tap 5 Fingers to Change OSC Layout in Stream View" : {
|
||||||
"extractionState" : "manual",
|
"extractionState" : "manual",
|
||||||
"localizations" : {
|
"localizations" : {
|
||||||
"zh-Hans" : {
|
"zh-Hans" : {
|
||||||
"stringUnit" : {
|
"stringUnit" : {
|
||||||
"state" : "translated",
|
"state" : "translated",
|
||||||
"value" : "在串流视图中轻按4根手指修改虚拟手柄布局"
|
"value" : "在串流视图中轻按5根手指修改虚拟手柄布局"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"zh-Hant" : {
|
"zh-Hant" : {
|
||||||
"stringUnit" : {
|
"stringUnit" : {
|
||||||
"state" : "translated",
|
"state" : "translated",
|
||||||
"value" : "在串流视图中轻按4根手指修改虚拟手柄布局"
|
"value" : "在串流视图中轻按5根手指修改虚拟手柄布局"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"zh-HK" : {
|
"zh-HK" : {
|
||||||
"stringUnit" : {
|
"stringUnit" : {
|
||||||
"state" : "translated",
|
"state" : "translated",
|
||||||
"value" : "在串流视图中轻按4根手指修改虚拟手柄布局"
|
"value" : "在串流视图中轻按5根手指修改虚拟手柄布局"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -483,7 +483,7 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
|
|
||||||
- (void)showCustomOSCTip {
|
- (void)showCustomOSCTip {
|
||||||
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:[LocalizationHelper localizedStringForKey:@"Rebase in Stream View"]
|
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:[LocalizationHelper localizedStringForKey:@"Rebase in Stream View"]
|
||||||
message:[LocalizationHelper localizedStringForKey:@"Tap 4 fingers to change on-screen controller layout in stream view"]
|
message:[LocalizationHelper localizedStringForKey:@"Tap 5 fingers to change on-screen controller layout in stream view"]
|
||||||
preferredStyle:UIAlertControllerStyleAlert];
|
preferredStyle:UIAlertControllerStyleAlert];
|
||||||
UIAlertAction *okAction = [UIAlertAction actionWithTitle:[LocalizationHelper localizedStringForKey: @"Got it!"]
|
UIAlertAction *okAction = [UIAlertAction actionWithTitle:[LocalizationHelper localizedStringForKey: @"Got it!"]
|
||||||
style:UIAlertActionStyleDefault
|
style:UIAlertActionStyleDefault
|
||||||
@@ -513,11 +513,12 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
|
|
||||||
bool oscEnabled = ([self.touchModeSelector selectedSegmentIndex] == RELATIVE_TOUCH || [self.touchModeSelector selectedSegmentIndex] == REGULAR_NATIVE_TOUCH) && [self.onscreenControlSelector selectedSegmentIndex] != OnScreenControlsLevelOff;
|
bool oscEnabled = ([self.touchModeSelector selectedSegmentIndex] == RELATIVE_TOUCH || [self.touchModeSelector selectedSegmentIndex] == REGULAR_NATIVE_TOUCH) && [self.onscreenControlSelector selectedSegmentIndex] != OnScreenControlsLevelOff;
|
||||||
bool customOscEnabled = oscEnabled && [self.onscreenControlSelector selectedSegmentIndex] == OnScreenControlsLevelCustom;
|
bool customOscEnabled = oscEnabled && [self.onscreenControlSelector selectedSegmentIndex] == OnScreenControlsLevelCustom;
|
||||||
[self widget:self.keyboardToggleFingerNumSlider setEnabled:!customOscEnabled];
|
// [self widget:self.keyboardToggleFingerNumSlider setEnabled:!customOscEnabled];
|
||||||
if(customOscEnabled && !justEnteredSettingsViewDoNotOpenOscLayoutTool) {
|
if(customOscEnabled && !justEnteredSettingsViewDoNotOpenOscLayoutTool) {
|
||||||
[self.keyboardToggleFingerNumSlider setValue:3.0];
|
// [self.keyboardToggleFingerNumSlider setValue:3.0];
|
||||||
[self keyboardToggleFingerNumSliderMoved];
|
// [self keyboardToggleFingerNumSliderMoved];
|
||||||
[self.onscreenControllerLabel setText:[LocalizationHelper localizedStringForKey: @"Tap 4 Fingers to Change OSC Layout in Stream View"]];
|
[self keyboardToggleFingerNumSliderMoved]; // go to exclude 5 fingers
|
||||||
|
[self.onscreenControllerLabel setText:[LocalizationHelper localizedStringForKey: @"Tap 5 Fingers to Change OSC Layout in Stream View"]];
|
||||||
[self showCustomOSCTip];
|
[self showCustomOSCTip];
|
||||||
justEnteredSettingsViewDoNotOpenOscLayoutTool = false;
|
justEnteredSettingsViewDoNotOpenOscLayoutTool = false;
|
||||||
//if (self.layoutOnScreenControlsVC.isBeingPresented == NO)
|
//if (self.layoutOnScreenControlsVC.isBeingPresented == NO)
|
||||||
@@ -605,12 +606,13 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
[self widget:self.mousePointerVelocityFactorSlider setEnabled:[self.touchModeSelector selectedSegmentIndex] == RELATIVE_TOUCH]; // mouse velocity scaling works only in relative touch mode.
|
[self widget:self.mousePointerVelocityFactorSlider setEnabled:[self.touchModeSelector selectedSegmentIndex] == RELATIVE_TOUCH]; // mouse velocity scaling works only in relative touch mode.
|
||||||
|
|
||||||
// number of touches required to toggle keyboard will be fixed to 3 when OSC is enabled.
|
// number of touches required to toggle keyboard will be fixed to 3 when OSC is enabled.
|
||||||
[self widget:self.keyboardToggleFingerNumSlider setEnabled: !customOscEnabled]; // cancel OSC limitation for regular native touch,
|
// [self widget:self.keyboardToggleFingerNumSlider setEnabled: !customOscEnabled]; // cancel OSC limitation for regular native touch,
|
||||||
// when CustomOSC is enabled:
|
// when CustomOSC is enabled:
|
||||||
if(customOscEnabled) {
|
if(customOscEnabled) {
|
||||||
[self.keyboardToggleFingerNumSlider setValue:3.0];
|
// [self.keyboardToggleFingerNumSlider setValue:3.0];
|
||||||
[self.keyboardToggleFingerNumLabel setText:[LocalizationHelper localizedStringForKey:@"To Toggle Local Keyboard: Tap %d Fingers", (uint16_t)self.keyboardToggleFingerNumSlider.value]];
|
// [self.keyboardToggleFingerNumLabel setText:[LocalizationHelper localizedStringForKey:@"To Toggle Local Keyboard: Tap %d Fingers", (uint16_t)self.keyboardToggleFingerNumSlider.value]];
|
||||||
[self.onscreenControllerLabel setText:[LocalizationHelper localizedStringForKey: @"Tap 4 Fingers to Change OSC Layout in Stream View"]];
|
[self.onscreenControllerLabel setText:[LocalizationHelper localizedStringForKey: @"Tap 5 Fingers to Change OSC Layout in Stream View"]];
|
||||||
|
[self keyboardToggleFingerNumSliderMoved]; // go exclude 5 fingers
|
||||||
//if (self.layoutOnScreenControlsVC.isBeingPresented == NO)
|
//if (self.layoutOnScreenControlsVC.isBeingPresented == NO)
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
@@ -807,8 +809,19 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void) keyboardToggleFingerNumSliderMoved{
|
- (void) keyboardToggleFingerNumSliderMoved{
|
||||||
if (self.keyboardToggleFingerNumSlider.value > 10.5f) [self.keyboardToggleFingerNumLabel setText:[LocalizationHelper localizedStringForKey:@"Local Keyboard Toggle Disabled"]];
|
bool oscEnabled = ([self.touchModeSelector selectedSegmentIndex] == RELATIVE_TOUCH || [self.touchModeSelector selectedSegmentIndex] == REGULAR_NATIVE_TOUCH) && [self.onscreenControlSelector selectedSegmentIndex] != OnScreenControlsLevelOff;
|
||||||
else [self.keyboardToggleFingerNumLabel setText:[LocalizationHelper localizedStringForKey:@"To Toggle Local Keyboard: Tap %d Fingers", (uint16_t)self.keyboardToggleFingerNumSlider.value]]; // Initiate label display
|
bool customOscEnabled = oscEnabled && [self.onscreenControlSelector selectedSegmentIndex] == OnScreenControlsLevelCustom;
|
||||||
|
|
||||||
|
CGFloat sliderValue = self.keyboardToggleFingerNumSlider.value;
|
||||||
|
if(customOscEnabled){
|
||||||
|
// exclude 5 fingers when custom osc is enabled
|
||||||
|
if(sliderValue > OSC_TOOL_FINGERS - 1 && sliderValue < OSC_TOOL_FINGERS) [self.keyboardToggleFingerNumSlider setValue:4.0];
|
||||||
|
if(sliderValue >= OSC_TOOL_FINGERS && sliderValue < OSC_TOOL_FINGERS + 1) [self.keyboardToggleFingerNumSlider setValue:6.0];
|
||||||
|
}
|
||||||
|
|
||||||
|
sliderValue = self.keyboardToggleFingerNumSlider.value;
|
||||||
|
if(sliderValue > 10.5f) [self.keyboardToggleFingerNumLabel setText:[LocalizationHelper localizedStringForKey:@"Local Keyboard Toggle Disabled"]];
|
||||||
|
else [self.keyboardToggleFingerNumLabel setText:[LocalizationHelper localizedStringForKey:@"To Toggle Local Keyboard: Tap %d Fingers", (uint16_t)sliderValue]]; // Initiate label display, exclude 5 fingers.
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void) slideToMenuDistanceSliderMoved{
|
- (void) slideToMenuDistanceSliderMoved{
|
||||||
|
|||||||
@@ -66,7 +66,7 @@
|
|||||||
[self->_streamView removeGestureRecognizer:_oscLayoutTapRecoginizer];
|
[self->_streamView removeGestureRecognizer:_oscLayoutTapRecoginizer];
|
||||||
if((_settings.touchMode.intValue == RELATIVE_TOUCH || _settings.touchMode.intValue == REGULAR_NATIVE_TOUCH) && _settings.onscreenControls.intValue == OnScreenControlsLevelCustom){
|
if((_settings.touchMode.intValue == RELATIVE_TOUCH || _settings.touchMode.intValue == REGULAR_NATIVE_TOUCH) && _settings.onscreenControls.intValue == OnScreenControlsLevelCustom){
|
||||||
_oscLayoutTapRecoginizer = [[CustomTapGestureRecognizer alloc] initWithTarget:self action:@selector(layoutOSC)];
|
_oscLayoutTapRecoginizer = [[CustomTapGestureRecognizer alloc] initWithTarget:self action:@selector(layoutOSC)];
|
||||||
_oscLayoutTapRecoginizer.numberOfTouchesRequired = 4; //tap 4 fingers to invoke OSC rebase
|
_oscLayoutTapRecoginizer.numberOfTouchesRequired = OSC_TOOL_FINGERS; //tap a predefined number of fingers to open osc layout tool
|
||||||
_oscLayoutTapRecoginizer.tapDownTimeThreshold = 1;
|
_oscLayoutTapRecoginizer.tapDownTimeThreshold = 1;
|
||||||
_oscLayoutTapRecoginizer.delaysTouchesBegan = NO;
|
_oscLayoutTapRecoginizer.delaysTouchesBegan = NO;
|
||||||
_oscLayoutTapRecoginizer.delaysTouchesEnded = NO;
|
_oscLayoutTapRecoginizer.delaysTouchesEnded = NO;
|
||||||
|
|||||||
Reference in new issue
Block a user