fix: 主题模板真正应用到主面板渲染
根本问题: buildPanelView('main') 构建主面板时用的是
ui.colors.bgLight/bgDark(Monet 配色),完全不经过
getPanelBgColorInt/getPanelTextColorInt 的模板填充逻辑。
updatePanelBackground 虽然封装了统一取色,但实际没有在
主面板构建流程中被调用。
修复:
1. buildPanelView('main') 末尾调用 updatePanelBackground(panel)
应用统一主题色(Monet/模板/自定义)
2. 保留临时背景色避免构建过程中的裸窗口闪烁
This commit is contained in:
@@ -90,12 +90,15 @@ FloatBallAppWM.prototype.buildPanelView = function(panelType) {
|
|||||||
var panel = new android.widget.LinearLayout(context);
|
var panel = new android.widget.LinearLayout(context);
|
||||||
panel.setOrientation(android.widget.LinearLayout.VERTICAL);
|
panel.setOrientation(android.widget.LinearLayout.VERTICAL);
|
||||||
|
|
||||||
// 面板背景
|
// 面板背景:走统一主题色 API(支持 Monet、模板、自定义)
|
||||||
var bgDr = new android.graphics.drawable.GradientDrawable();
|
// 先用 updatePanelBackground 垫底,后续再加按钮等内容
|
||||||
// bgDr.setColor(bgColor);
|
// 先设一个临时背景避免裸窗口闪烁
|
||||||
bgDr.setColor(this.withAlpha(bgColor, this.config.PANEL_BG_ALPHA));
|
try {
|
||||||
bgDr.setCornerRadius(this.dp(16));
|
var tmpBg = new android.graphics.drawable.GradientDrawable();
|
||||||
panel.setBackground(bgDr);
|
tmpBg.setColor(this.withAlpha(bgColor, this.config.PANEL_BG_ALPHA));
|
||||||
|
tmpBg.setCornerRadius(this.dp(16));
|
||||||
|
panel.setBackground(tmpBg);
|
||||||
|
} catch(eTmp) {};
|
||||||
try { panel.setElevation(this.dp(8)); } catch(e) { safeLog(null, 'e', "catch " + String(e)); }
|
try { panel.setElevation(this.dp(8)); } catch(e) { safeLog(null, 'e', "catch " + String(e)); }
|
||||||
|
|
||||||
var padDp = this.config.PANEL_PADDING_DP;
|
var padDp = this.config.PANEL_PADDING_DP;
|
||||||
@@ -260,6 +263,8 @@ FloatBallAppWM.prototype.buildPanelView = function(panelType) {
|
|||||||
|
|
||||||
scroll.addView(grid);
|
scroll.addView(grid);
|
||||||
panel.addView(scroll);
|
panel.addView(scroll);
|
||||||
|
// 对主面板/查看器面板应用统一主题色(支持 Monet、模板、自定义)
|
||||||
|
try { this.updatePanelBackground(panel); } catch(eTheme) { safeLog(null, 'e', "catch " + String(eTheme)); }
|
||||||
return panel;
|
return panel;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -58,8 +58,8 @@
|
|||||||
"size": 243608
|
"size": 243608
|
||||||
},
|
},
|
||||||
"th_15_extra.js": {
|
"th_15_extra.js": {
|
||||||
"sha256": "2fe73f9ecd9fd199c0196d988fdb83f4deda6cb520b706e66e5089a3e74eb556",
|
"sha256": "b607620f1900c1bd93ccbec8d901d4de53b3d36e9373877f4264442f79b9b956",
|
||||||
"size": 90772
|
"size": 91173
|
||||||
},
|
},
|
||||||
"th_16_entry.js": {
|
"th_16_entry.js": {
|
||||||
"sha256": "e7c99c3dfbd6aedab05551426955081ae6cae034754f2f557cefa01dc75dc001",
|
"sha256": "e7c99c3dfbd6aedab05551426955081ae6cae034754f2f557cefa01dc75dc001",
|
||||||
@@ -68,5 +68,5 @@
|
|||||||
},
|
},
|
||||||
"keyId": "toolhub-targets-2026-rsa3072",
|
"keyId": "toolhub-targets-2026-rsa3072",
|
||||||
"schema": 2,
|
"schema": 2,
|
||||||
"version": 20260514180021
|
"version": 20260514180854
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
Ju9QZhVHF/Fckt99ViGxVKmeRnTCgXTqRMuXth2J6IRXDOX8LFxNAc2YxiPrOcIUaHKVgmH1N5mT8Yq0WQKxFJEOeSFHLx5JDsaP1RhXiF/8CfB4xPP6GitJdFlvySkJlEL3INuDHEUal2v31e62XUdvxigBIn6s2SIRxqy6IAFEWrny17rO784znlAeZf87fHL8vpAvAzXLTKB1PbuwHtU9rMywv68VHG1/al5W51BHWuXf7BxbEelK5KvjyZ37VCteI9zCOM3gRswVqKjg5A5fM9sU7Q9pV18Xd7PNtVSTchpnPK5oKjxNR36Ui1yI8aGSwemf/vGpyZDmfuVuPUb3qLxtJt9LQifRREYuZjQXdtehfIh8hRd7x+pw++piJbU/9V7++81a4I3aODhZsyG/A7I5MnMwqB0V6BFEWIDPpUxz/6vPYCscQQsQ7B58B9Pff0ygdqRkBBHJVP+2X1RA8g5GUxLN8IxFWAtMBLoWvintx9IezxHTUkb90bQQ
|
YpO3ffVeOE0E6fKsHxyle/g3031EKXMxmT/boxH1sVCo8qpPDIUJqgTnQspfRRQMDd6eT7AZHOaIhEiza4CutBEscQunsk6AYIg+xYbq7UBw05q1Z9zimQ8NiiVUeytzZsAhPKBD64hR5KLinE3ev/rqYvr0Tl/pyFJmyK8snEPDQGVBWcSMBd6ehmgZ7eF6w1MeCzljAbi8oUgwjszeRkTzNs58vNTu7yQ+kVt6+bKgC7EiEhKNS7c6sI1HfDrYusroeH6GjsvPQTwX+Tzs4/V0TBH7pNfzS7qPxDpR7bgTKLV4rRe2HKAFG5k3NPwKLT0OB4GCkSqXgEpugdt6eKVBm8qUSI2RdkOTCyNqdykDhZQq5jQvDlvoJl82ATHzdEBQTQJrNca6WAyWUPmKqEUjrGvu1BmybV0+oidpizUJOYx5YKCex+WlB6NDOoUWZy9xx4Wt+o4+vKpIt9Y65PuT6w3fDUzAti59fM7SSre3XZSFn0MBHk9Y15UkIvpq
|
||||||
|
|||||||
Reference in New Issue
Block a user