From b7ad4d35628170c30a33180bb43bce0f4a1dbae9 Mon Sep 17 00:00:00 2001 From: TrueZhuanjia Date: Mon, 20 Oct 2025 19:45:33 +0800 Subject: [PATCH] Fixed: on-screen widget default border alpha issue --- VoidLink/Input/CustomOSC/OnScreenButtonState.m | 2 +- VoidLink/Input/OnScreenWidgetView.swift | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/VoidLink/Input/CustomOSC/OnScreenButtonState.m b/VoidLink/Input/CustomOSC/OnScreenButtonState.m index 1adccb81..adcd608c 100644 --- a/VoidLink/Input/CustomOSC/OnScreenButtonState.m +++ b/VoidLink/Input/CustomOSC/OnScreenButtonState.m @@ -83,7 +83,7 @@ self.oscLayerSizeFactor = [decoder decodeFloatForKey:@"oscLayerSizeFactor"]; self.backgroundAlpha = [decoder containsValueForKey:@"backgroundAlpha"] ? [decoder decodeFloatForKey:@"backgroundAlpha"] : 0.5; self.labelAlpha = [decoder containsValueForKey:@"labelAlpha"] ? [decoder decodeFloatForKey:@"labelAlpha"] : 0.82; - self.borderAlpha = [decoder containsValueForKey:@"borderAlpha"] ? [decoder decodeFloatForKey:@"borderAlpha"] : self.labelAlpha*1.01; + self.borderAlpha = [decoder containsValueForKey:@"borderAlpha"] ? [decoder decodeFloatForKey:@"borderAlpha"] : 0.19; self.borderWidth = [decoder decodeFloatForKey:@"borderWidth"]; self.widgetShape = [decoder decodeObjectForKey:@"widgetShape"]; self.minStickOffset = [decoder decodeFloatForKey:@"minStickOffset"]; diff --git a/VoidLink/Input/OnScreenWidgetView.swift b/VoidLink/Input/OnScreenWidgetView.swift index 3f9b5eac..b1cec38d 100644 --- a/VoidLink/Input/OnScreenWidgetView.swift +++ b/VoidLink/Input/OnScreenWidgetView.swift @@ -74,7 +74,7 @@ import UIKit @objc public var borderWidth: CGFloat = 0.0 @objc public var backgroundAlpha: CGFloat = 0.5 @objc public var labelAlpha: CGFloat = 0.82 - @objc public var borderAlpha: CGFloat = 0.82 * 1.01 + @objc public var borderAlpha: CGFloat = 0.19 @objc public var vibrationStyle: Int = 6 @objc public var latestTouchLocation: CGPoint @objc public var selfViewOnTheRight: Bool = false @@ -467,13 +467,14 @@ import UIKit let realBackgroundAlpha = self.backgroundAlpha - 0.18 // offset to be consistent with legacy onScreen controller layer opacity self.backgroundColor = UIColor(white: 0.2, alpha: realBackgroundAlpha) // offset to be consistent with legacy onScreen controller layer opacity - borderAlpha = tweakBorderAlpha ? realBackgroundAlpha * 1.01 : borderAlpha - defaultBorderColor = UIColor(white: 0.2, alpha: borderAlpha).cgColor - self.layer.borderColor = defaultBorderColor + if tweakBorderAlpha { + borderAlpha = realBackgroundAlpha * 1.01 + defaultBorderColor = UIColor(white: 0.2, alpha: borderAlpha).cgColor + self.layer.borderColor = defaultBorderColor + } if widgetType == WidgetTypeEnum.touchPad { self.backgroundColor = UIColor.clear // make touchPad transparent - self.layer.borderColor = UIColor(white: 0.2, alpha: borderAlpha - 0.15).cgColor // reduced border alpha for touchPad } }