diff options
| -rw-r--r-- | services/autofill/java/com/android/server/autofill/ui/AutoFillUI.java | 8 | ||||
| -rw-r--r-- | services/autofill/java/com/android/server/autofill/ui/FillUi.java | 10 |
2 files changed, 17 insertions, 1 deletions
diff --git a/services/autofill/java/com/android/server/autofill/ui/AutoFillUI.java b/services/autofill/java/com/android/server/autofill/ui/AutoFillUI.java index 776fa1e58db8..375a72607aa5 100644 --- a/services/autofill/java/com/android/server/autofill/ui/AutoFillUI.java +++ b/services/autofill/java/com/android/server/autofill/ui/AutoFillUI.java @@ -18,6 +18,8 @@ package com.android.server.autofill.ui; import static android.view.autofill.AutofillManager.AutofillCallback.EVENT_INPUT_HIDDEN; import static android.view.autofill.AutofillManager.AutofillCallback.EVENT_INPUT_SHOWN; +import static com.android.server.autofill.ui.Helper.DEBUG; + import android.annotation.NonNull; import android.annotation.Nullable; import android.content.Context; @@ -160,7 +162,11 @@ public final class AutoFillUI { */ public void showFillUi(@NonNull AutofillId focusedId, @NonNull FillResponse response, @NonNull Rect anchorBounds, @Nullable String filterText, @NonNull String packageName) { - LogMaker log = (new LogMaker(MetricsProto.MetricsEvent.AUTOFILL_FILL_UI)) + if (DEBUG) { + Slog.d(TAG, "showFillUi(): id=" + focusedId + ", bounds=" + anchorBounds + " filter=" + + filterText); + } + final LogMaker log = (new LogMaker(MetricsProto.MetricsEvent.AUTOFILL_FILL_UI)) .setPackageName(packageName) .addTaggedData(MetricsProto.MetricsEvent.FIELD_AUTOFILL_FILTERTEXT_LEN, filterText == null ? 0 : filterText.length()) diff --git a/services/autofill/java/com/android/server/autofill/ui/FillUi.java b/services/autofill/java/com/android/server/autofill/ui/FillUi.java index 85eecdf72243..f432b27103db 100644 --- a/services/autofill/java/com/android/server/autofill/ui/FillUi.java +++ b/services/autofill/java/com/android/server/autofill/ui/FillUi.java @@ -326,6 +326,16 @@ final class FillUi { } public void show(int desiredWidth, int desiredHeight, Rect anchorBounds) { + try { + // TODO: temporary workaround to avoud system_server crashes. + unsafelyShow(desiredWidth, desiredHeight, anchorBounds); + } catch (RuntimeException e) { + Slog.w(TAG, "Error showing Anchored window: w=" + desiredWidth + ", h=" + + desiredHeight + ", b=" + anchorBounds, e); + } + } + + private void unsafelyShow(int desiredWidth, int desiredHeight, Rect anchorBounds) { final WindowManager.LayoutParams params = new WindowManager.LayoutParams(); params.setTitle("FillUi"); |