widget resize improvement

This commit is contained in:
True Zhuanjia committed 2026-05-12 19:09:44 +08:00
1 parent 96d997d41e
commit c734030e87
2 files changed
+10 -6

No files matched your search

+5 -2
View File
@@ -1124,6 +1124,9 @@ import ObjectiveC.runtime
self.showStickIndicator() self.showStickIndicator()
self.updateStickIndicator() self.updateStickIndicator()
} }
if self.isDirectionPad {
self.setupLrudDirectionIndicatorlayers()
}
if self.isFolder { if self.isFolder {
QUICK_TAP_TIME_INTERVAL = 0.15 QUICK_TAP_TIME_INTERVAL = 0.15
} }
@@ -1655,14 +1658,14 @@ import ObjectiveC.runtime
downIndicator.isHidden = true downIndicator.isHidden = true
} }
if !touchPointAnchored { if !touchPointAnchored || OnScreenWidgetView.editMode {
let axisdiameter = self.getDiameter(lengthFactor: UIDevice.current.userInterfaceIdiom == .phone ? 0.27 : 0.35) let axisdiameter = self.getDiameter(lengthFactor: UIDevice.current.userInterfaceIdiom == .phone ? 0.27 : 0.35)
let axisSize = CGSize(width: axisdiameter, height: axisdiameter) let axisSize = CGSize(width: axisdiameter, height: axisdiameter)
self.stickWheelAxis.removeFromSuperlayer() self.stickWheelAxis.removeFromSuperlayer()
self.stickWheelAxis = GraphicUtils.makeSVGLayer(from: "StickWheelAxis-0.75", in: self.layer, targetSize: axisSize) self.stickWheelAxis = GraphicUtils.makeSVGLayer(from: "StickWheelAxis-0.75", in: self.layer, targetSize: axisSize)
GraphicUtils.changeColor(layer: self.stickWheelAxis, color: UIColor(white: 1, alpha: 0.5)) GraphicUtils.changeColor(layer: self.stickWheelAxis, color: UIColor(white: 1, alpha: 0.5))
self.layer.addSublayer(self.stickWheelAxis) self.layer.addSublayer(self.stickWheelAxis)
self.stickWheelAxis.isHidden = false self.stickWheelAxis.isHidden = !OnScreenWidgetView.editMode
} }
setupMovementThresholdPreviewLayersIfNeeded() setupMovementThresholdPreviewLayersIfNeeded()
@@ -1930,13 +1930,14 @@ final class LayoutOnScreenControlsViewController: UIViewController, OnScreenWidg
} }
@objc private func widgetSizeSliderMoved(_ sender: UISlider) { @objc private func widgetSizeSliderMoved(_ sender: UISlider) {
widgetSizeLabel.text = LocalizationHelper.localizedString(forKey: "Size: %.2f", sender.value)
widgetHeightLabel.text = LocalizationHelper.localizedString(forKey: "Height: %.2f", sender.value)
widgetHeightSlider.value = sender.value
if let selectedWidgetView, widgetViewSelected { if let selectedWidgetView, widgetViewSelected {
selectedWidgetView.translatesAutoresizingMaskIntoConstraints = true selectedWidgetView.translatesAutoresizingMaskIntoConstraints = true
let aspectRatio = selectedWidgetView.heightFactor / selectedWidgetView.widthFactor
selectedWidgetView.widthFactor = CGFloat(sender.value) selectedWidgetView.widthFactor = CGFloat(sender.value)
selectedWidgetView.heightFactor = CGFloat(sender.value) selectedWidgetView.heightFactor = selectedWidgetView.widthFactor * aspectRatio
widgetSizeLabel.text = LocalizationHelper.localizedString(forKey: "Size: %.2f", sender.value)
widgetHeightLabel.text = LocalizationHelper.localizedString(forKey: "Height: %.2f", selectedWidgetView.heightFactor)
widgetHeightSlider.value = Float(selectedWidgetView.heightFactor)
} }
if let selectedControllerLayer, controllerLayerSelected { if let selectedControllerLayer, controllerLayerSelected {
layoutOSC.resizeControllerLayer(with: selectedControllerLayer, and: CGFloat(sender.value)) layoutOSC.resizeControllerLayer(with: selectedControllerLayer, and: CGFloat(sender.value))