From caf0e0b598c91f8191d840ac604bc132bffc3964 Mon Sep 17 00:00:00 2001 From: linshenjianlu Date: Sun, 3 May 2026 14:02:30 +0800 Subject: [PATCH] =?UTF-8?q?fix(panels):=20=E9=80=82=E9=85=8D=E8=BE=93?= =?UTF-8?q?=E5=85=A5=E6=B3=95=E5=BC=B9=E5=87=BA=E6=97=B6=E5=9B=BE=E6=A0=87?= =?UTF-8?q?=E9=80=89=E6=8B=A9=E5=99=A8=E9=AB=98=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- code/th_14_panels.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/code/th_14_panels.js b/code/th_14_panels.js index c2061ce..eacba13 100644 --- a/code/th_14_panels.js +++ b/code/th_14_panels.js @@ -3848,9 +3848,14 @@ FloatBallAppWM.prototype.showShortXIconPickerPopup = function(opts) { card.setPadding(padH, padV, padH, padV); card.setBackground(self.ui.createRoundDrawable(cardColor, self.dp(16))); - var cardHeight = Math.round(sh * 0.88); - var cardLp = new android.widget.FrameLayout.LayoutParams(panelWidth, cardHeight); - cardLp.gravity = android.view.Gravity.CENTER; + // 使用顶部锚定 + MATCH_PARENT 高度,避免输入法触发窗口 resize 后,居中卡片被上下裁切。 + // 之前 0.88 屏高 + CENTER 在 IME 弹出时会被压缩窗口居中裁剪,导致标题/搜索框移出屏幕。 + var cardLp = new android.widget.FrameLayout.LayoutParams( + panelWidth, + android.widget.FrameLayout.LayoutParams.MATCH_PARENT + ); + cardLp.gravity = android.view.Gravity.TOP | android.view.Gravity.CENTER_HORIZONTAL; + try { cardLp.setMargins(0, self.dp(12), 0, self.dp(12)); } catch(eCardMargin) { safeLog(null, 'e', "catch " + String(eCardMargin)); } card.setLayoutParams(cardLp); rootOverlay.addView(card);