settingsVC ui fix

This commit is contained in:
True Zhuanjia
2026-08-25 16:10:19 +08:00
parent bd306ba07f
commit 78f385d732
3 changed files with 24 additions and 3 deletions
+3 -1
View File
@@ -162,7 +162,7 @@ static void ApplyAdaptiveTriggerEffect(GCDualSenseAdaptiveTrigger* trigger,
{
#if !TARGET_OS_TV
if (controller.hardware == ControllerHardwareG8PlusMFi) {
NSLog(@"[G8Rumble] route native rumble low=%hu high=%hu", lowFreqMotor, highFreqMotor);
// NSLog(@"[G8Rumble] route native rumble low=%hu high=%hu", lowFreqMotor, highFreqMotor);
[_gameSirG8MFiRumbler setLowFrequencyMotor:lowFreqMotor highFrequencyMotor:highFreqMotor];
return;
}
@@ -191,12 +191,14 @@ static void ApplyAdaptiveTriggerEffect(GCDualSenseAdaptiveTrigger* trigger,
return;
}
/*
NSLog(@"[G8Rumble] rumble request controller=%hu low=%hu high=%hu preference=%ld vendor=%@",
controllerNumber,
lowFreqMotor,
highFreqMotor,
(long)preference,
voidController.gamepad.vendorName);
*/
// physical controller connected:
switch (preference) {
+14
View File
@@ -192,6 +192,10 @@ public extension UISegmentedControl {
}
private func storePreviousSelectedSegmentIndex(_ value: Int) {
guard canStorePreviousSelectedSegmentIndex(value) else {
return
}
objc_setAssociatedObject(
self,
&previousSelectedSegmentIndexKey,
@@ -200,6 +204,16 @@ public extension UISegmentedControl {
)
}
private func canStorePreviousSelectedSegmentIndex(_ value: Int) -> Bool {
guard value != UISegmentedControl.noSegment else {
return true
}
guard value >= 0 && value < numberOfSegments else {
return false
}
return isEnabledForSegment(at: value)
}
private func storeLastKnownSelectedSegmentIndex(_ value: Int) {
objc_setAssociatedObject(
self,
@@ -1402,8 +1402,13 @@ static NSMutableSet* hostList;
// Enable frame pacing mode selector only if not in stream view AND not in performance mode
BOOL shouldEnableFrameQueueSettings = !_settingsExpandedInStreamView && (self.settingsViewController.renderingBackendSelector.selectedSegmentIndex != RENDER_METAL);
// [self.settingsViewController.framePacingModeSelector setEnabled:shouldEnableFrameQueueSettings];
[self.settingsViewController.framePacingModeSelector setEnabled:!_settingsExpandedInStreamView forSegmentAtIndex:FramePacingModeOff];
[self.settingsViewController.framePacingModeSelector setEnabled:!_settingsExpandedInStreamView forSegmentAtIndex:FramePacingModeLegacy];
if(self.settingsViewController.framePacingModeSelector.selectedSegmentIndex != FramePacingModeOff
&& self.settingsViewController.framePacingModeSelector.selectedSegmentIndex != FramePacingModeLegacy) {
[self.settingsViewController.framePacingModeSelector setEnabled:!_settingsExpandedInStreamView forSegmentAtIndex:FramePacingModeOff];
[self.settingsViewController.framePacingModeSelector setEnabled:!_settingsExpandedInStreamView forSegmentAtIndex:FramePacingModeLegacy];
}
else [self.settingsViewController.framePacingModeSelector setEnabled:!_settingsExpandedInStreamView];
if(FrameInterpolator.deviceSupportsInterpolation){
[self.settingsViewController.framePacingModeSelector setEnabled:_settingsViewController.framerateSelector.selectedSegmentIndex != _settingsViewController.framerateSelector.numberOfSegments-1