fix: reduce color picker swipe ghosting
This commit is contained in:
@@ -4673,6 +4673,29 @@ FloatBallAppWM.prototype.showPopupOverlay = function(opts) {
|
|||||||
var popupBackEligible = false;
|
var popupBackEligible = false;
|
||||||
var popupBackActive = false;
|
var popupBackActive = false;
|
||||||
var popupBackMoved = false;
|
var popupBackMoved = false;
|
||||||
|
var popupBackVisualActive = false;
|
||||||
|
function beginPopupBackVisual(v) {
|
||||||
|
try {
|
||||||
|
if (popupBackVisualActive || !v) return;
|
||||||
|
popupBackVisualActive = true;
|
||||||
|
// ColorOS overlay 上拖动带 elevation 的圆角卡片容易留下阴影/拖影;拖动期间临时去掉阴影。
|
||||||
|
try { v.animate().cancel(); } catch(eAnimCancel) {}
|
||||||
|
try { v.setAlpha(1); v.setScaleX(1); v.setScaleY(1); } catch(eResetVisual) {}
|
||||||
|
try { v.setElevation(0); } catch(eElev0) {}
|
||||||
|
try { v.setLayerType(android.view.View.LAYER_TYPE_NONE, null); } catch(eLayer0) {}
|
||||||
|
try { v.invalidate(); root.invalidate(); } catch(eInv0) {}
|
||||||
|
} catch(eBeginVisual) {}
|
||||||
|
}
|
||||||
|
function endPopupBackVisual(v) {
|
||||||
|
try {
|
||||||
|
popupBackVisualActive = false;
|
||||||
|
if (!v) return;
|
||||||
|
try { v.setAlpha(1); v.setScaleX(1); v.setScaleY(1); } catch(eResetVisual2) {}
|
||||||
|
try { v.setElevation(self.dp(10)); } catch(eElevRestore) {}
|
||||||
|
try { v.setLayerType(android.view.View.LAYER_TYPE_NONE, null); } catch(eLayerRestore) {}
|
||||||
|
try { v.invalidate(); root.invalidate(); } catch(eInvRestore) {}
|
||||||
|
} catch(eEndVisual) {}
|
||||||
|
}
|
||||||
var card = new JavaAdapter(android.widget.LinearLayout, {
|
var card = new JavaAdapter(android.widget.LinearLayout, {
|
||||||
onInterceptTouchEvent: function(ev) {
|
onInterceptTouchEvent: function(ev) {
|
||||||
try {
|
try {
|
||||||
@@ -4703,7 +4726,7 @@ FloatBallAppWM.prototype.showPopupOverlay = function(opts) {
|
|||||||
if (validDir && adx > slop && adx > ady * 0.9) {
|
if (validDir && adx > slop && adx > ady * 0.9) {
|
||||||
popupBackActive = true;
|
popupBackActive = true;
|
||||||
popupBackMoved = true;
|
popupBackMoved = true;
|
||||||
try { this.animate().cancel(); } catch(eCancel) {}
|
beginPopupBackVisual(this);
|
||||||
try { this.setTranslationX(dx); } catch(eTx) {}
|
try { this.setTranslationX(dx); } catch(eTx) {}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -4740,9 +4763,10 @@ FloatBallAppWM.prototype.showPopupOverlay = function(opts) {
|
|||||||
popupBackMoved = false;
|
popupBackMoved = false;
|
||||||
popupBackEdge = -1;
|
popupBackEdge = -1;
|
||||||
if (ok) {
|
if (ok) {
|
||||||
this.animate().translationX(dir * panelWidth).alpha(0.96).setDuration(150).withEndAction(new java.lang.Runnable({ run: function() { closePopup(); } })).start();
|
this.animate().translationX(dir * panelWidth).setDuration(130).withEndAction(new java.lang.Runnable({ run: function() { endPopupBackVisual(card); closePopup(); } })).start();
|
||||||
} else {
|
} else {
|
||||||
this.animate().translationX(0).alpha(1).setDuration(160).start();
|
var that = this;
|
||||||
|
this.animate().translationX(0).setDuration(140).withEndAction(new java.lang.Runnable({ run: function() { endPopupBackVisual(that); } })).start();
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -4752,7 +4776,7 @@ FloatBallAppWM.prototype.showPopupOverlay = function(opts) {
|
|||||||
popupBackEligible = false;
|
popupBackEligible = false;
|
||||||
popupBackMoved = false;
|
popupBackMoved = false;
|
||||||
popupBackEdge = -1;
|
popupBackEdge = -1;
|
||||||
try { this.setTranslationX(0); this.setAlpha(1); } catch(eReset) {}
|
try { this.setTranslationX(0); this.setAlpha(1); endPopupBackVisual(this); } catch(eReset) {}
|
||||||
try { safeLog(self.L, 'w', 'popup back touch fail: ' + String(eTouch)); } catch(eLog2) {}
|
try { safeLog(self.L, 'w', 'popup back touch fail: ' + String(eTouch)); } catch(eLog2) {}
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -62,8 +62,8 @@
|
|||||||
"size": 23906
|
"size": 23906
|
||||||
},
|
},
|
||||||
"th_14_panels.js": {
|
"th_14_panels.js": {
|
||||||
"sha256": "c014e103cccc083c47e1bd6646e9bf56621f3696b1db2f9a81fa6e37fd5991fd",
|
"sha256": "41936972f45eb010d3138acc2462ec29e99c2ae64ecdcf085539ded5b66224da",
|
||||||
"size": 274859
|
"size": 276108
|
||||||
},
|
},
|
||||||
"th_14_schema_editor.js": {
|
"th_14_schema_editor.js": {
|
||||||
"sha256": "5669d0b5a16f770bed24eedee24203df57f7cbc7910c840931e533adac1ef146",
|
"sha256": "5669d0b5a16f770bed24eedee24203df57f7cbc7910c840931e533adac1ef146",
|
||||||
@@ -80,5 +80,5 @@
|
|||||||
},
|
},
|
||||||
"keyId": "toolhub-targets-2026-rsa3072",
|
"keyId": "toolhub-targets-2026-rsa3072",
|
||||||
"schema": 2,
|
"schema": 2,
|
||||||
"version": 20260522221302
|
"version": 20260522222253
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
jrjLCzwfZFg36cyiTezt+pUr5KLOjP8TdEQvnw4Kh2hAWxwhIM3spgt7sIhspiD9bGeeR7NlRpNiNslxpW7PtT/cVdQS7fq11ZtrEK59ZgWLMcFIioZwsAYO1kdFkgzfMshW9Gb8RCOJkk1TofUNf7LCe/S69S5qb2LA14S0/yihHbFwQg6uIf9yLqPS6HHyUCDWta9csivRng9PHrOtGpPZ7hqJMdIQlzvZzH28ahqb13CIdrcgJcLK3jR67LjmePuzB4Z+CUKmDJ4bkhwnl8IsDGxOnuc4q8iCbe+p6aRrU2yaeeT3z2/9EkdQ+iwWjcp1krsqURtY1Zw8yFiUWSDKTo6ejUWbvgY0Y/0YUlcNcIeIuJEx1PuRcvDMQ5YrkvsG9WWruXvMXP8zWxqkHa2WYeqSuqpDwl1JaPiDeT5b0PJz59NxyMlBqe0yJJ6N1Ae+9fVXzWN4PiB6zFjNW5P61g8t5c67mt4l1891gsN3UOReoj/6NBesatjmJJoo
|
F/qTOCzsNyLTRjDB9xB1/fxhSja2q8SY/vbMoIahSZZSbB0tggzzc5rsr0o61HyGiw9zGzkUDfcKy44rAjCEIlhtFt5kFRMrxnPThp1k7/n15jUCaOaY7X0OMxqqeb3hv/1+CXTBUP0a0sQxflqWu5NK1aKIkuRCMLM3kX4d5F9Q9yEDJwtcUDt2cBSSvfhKgs9yik3uHvnhJIWjrszBSjQt3PADdBzInzp3vmpM79ZogG9omF9lcJaKna47iG1BppsIjKK7R6Qw28uv4UfPG1hdfsEb2RzpRR7S/vhVZnpejjCveDNowEanpP+GmYutz7dt4Zr+gvtdFppmzmK6UjtNxSdu7LTVdibST7AQo6qRWnLI1ckjFCchsMSqCRu3XUVXDgBk17V82rt0Y8st1MQhsqvdPs86X063inGmBFyev2XwXrXwGZefZz2PDAUrVnkzyrmGGaF8G6Fm+BX7GQS1gINBnJ7hsEAOX5HYRT2HU/Qrsl/UIPjkO/jkmfhx
|
||||||
|
|||||||
Reference in New Issue
Block a user