diff --git a/VoidLink/Input/CommandManager.swift b/VoidLink/Input/CommandManager.swift index 652d1b39..a44bc239 100644 --- a/VoidLink/Input/CommandManager.swift +++ b/VoidLink/Input/CommandManager.swift @@ -115,7 +115,7 @@ import UIKit "OSCBACK" ] - @objc public static let touchPadCmds: [String] = ["LSVPAD", "RSVPAD", "LSPAD", "RSPAD", "DS4TOUCH", "MOUSEPAD", "DPAD", "TRACKBALL", "WASDPAD", "ARROWPAD"] + @objc public static let touchPadCmds: [String] = ["LSVPAD", "RSVPAD", "LSPAD", "RSPAD", "DS4TOUCH", "MOUSEPAD", "MOUSEWHEEL", "WHEEL", "DPAD", "TRACKBALL", "WASDPAD", "ARROWPAD"] @objc public static let directionPads: [String] = ["DPAD", "WASDPAD", "ARROWPAD"] @objc public static let stickTouchPads: [String] = ["LSVPAD", "RSVPAD", "LSPAD", "RSPAD"] @objc public static let nonVectorStickPads: [String] = ["LSPAD", "RSPAD"] diff --git a/VoidLink/Input/OnScreenWidgetView.swift b/VoidLink/Input/OnScreenWidgetView.swift index cc5dd5ea..be536be3 100644 --- a/VoidLink/Input/OnScreenWidgetView.swift +++ b/VoidLink/Input/OnScreenWidgetView.swift @@ -1238,7 +1238,7 @@ import UIKit if quickDoubleTapDetected { self.showl3r3Indicator() self.sendComboButtonsDownEvent(comboStrings: self.comboButtonStrings)} - case "DPAD", "WASDPAD", "ARROWPAD": + case "DPAD", "WASDPAD", "ARROWPAD", "MOUSEWHEEL", "WHEEL": if allSpawnedTouchesCount == 1 {showLrudBall(at: touchBeganLocation)} if quickDoubleTapDetected { self.sendComboButtonsDownEvent(comboStrings: self.comboButtonStrings) @@ -1508,6 +1508,9 @@ import UIKit case "DPAD", "WASDPAD", "ARROWPAD": self.updateTouchLocation(touch: touches.first!) handleLrudTouchMove() + case "MOUSEWHEEL","WHEEL": + self.updateTouchLocation(touch: touches.first!) + LiSendHighResScrollEvent(Int16(self.deltaY*7.5*self.sensitivityFactorY)) default: break } diff --git a/VoidLink/ViewControllers/CustomOSCViewControl/LayoutOnScreenControlsViewController.m b/VoidLink/ViewControllers/CustomOSCViewControl/LayoutOnScreenControlsViewController.m index fd8b0caf..74236532 100644 --- a/VoidLink/ViewControllers/CustomOSCViewControl/LayoutOnScreenControlsViewController.m +++ b/VoidLink/ViewControllers/CustomOSCViewControl/LayoutOnScreenControlsViewController.m @@ -763,7 +763,19 @@ bool showSensitivityFactorStack = selectedWidgetView.hasSensitivityTweak; bool showStickIndicatorOffsetStack = selectedWidgetView.hasStickIndicator; - self.sensitivityXStack.hidden = self.sensitivityYStack.hidden = !showSensitivityFactorStack; + self.sensitivityXStack.hidden = !showSensitivityFactorStack || [selectedWidgetView.cmdString containsString:@"MOUSEWHEEL"] || [selectedWidgetView.cmdString containsString:@"WHEEL"]; + self.sensitivityYStack.hidden = !showSensitivityFactorStack; + if(showSensitivityFactorStack){ + if([selectedWidgetView.cmdString containsString:@"MOUSEWHEEL"] || [selectedWidgetView.cmdString containsString:@"WHEEL"]){ + [self.sensitivityYSlider setMinimumValue:-4]; + [self.sensitivityYSlider setMaximumValue:4]; + } + else{ + [self.sensitivityYSlider setMinimumValue:0]; + [self.sensitivityYSlider setMaximumValue:8]; + } + } + self.stickIndicatorOffsetStack.hidden = !showStickIndicatorOffsetStack; self.mouseDownButtonStack.hidden = !([selectedWidgetView.cmdString containsString:@"MOUSEPAD"] && selectedWidgetView.widgetType == WidgetTypeEnumTouchPad); self.decelerationRateStack.hidden = !([selectedWidgetView.cmdString containsString:@"TRACKBALL"] && selectedWidgetView.widgetType == WidgetTypeEnumTouchPad); diff --git a/VoidLink/ViewControllers/SettingsViewController.m b/VoidLink/ViewControllers/SettingsViewController.m index 0b550dc0..0e4e1fdf 100644 --- a/VoidLink/ViewControllers/SettingsViewController.m +++ b/VoidLink/ViewControllers/SettingsViewController.m @@ -602,7 +602,6 @@ BOOL isCustomResolution(int resolutionSelected) { [self addSetting:self.hdrStack ofId:@"hdrStack" withInfoTag:![self hdrSupported] withDynamicLabel:NO to:videoSection]; [self addSetting:self.yuv444Stack ofId:@"yuv444Stack" withInfoTag:YES withDynamicLabel:NO to:videoSection]; [self addSetting:self.pipStack ofId:@"pipStack" withInfoTag:YES withDynamicLabel:NO to:videoSection]; - [self addSetting:self.pipStack ofId:@"pipStack" withInfoTag:YES withDynamicLabel:NO to:videoSection]; [self addSetting:self.framePacingStack ofId:@"framePacingStack" withInfoTag:YES withDynamicLabel:NO to:videoSection]; [self addSetting:self.frameQueueSizeStack ofId:@"frameQueueSizeStack" withInfoTag:NO withDynamicLabel:YES to:videoSection];