From 1c9a8c597c18463cf7f3d7dd5e68aa534800c4f5 Mon Sep 17 00:00:00 2001 From: Helium314 Date: Mon, 27 Nov 2023 19:19:33 +0100 Subject: [PATCH] hide toolbar and pinned keys if device is locked, fixes #271 --- .../latin/suggestions/SuggestionStripView.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/src/main/java/org/dslul/openboard/inputmethod/latin/suggestions/SuggestionStripView.java b/app/src/main/java/org/dslul/openboard/inputmethod/latin/suggestions/SuggestionStripView.java index 1d58e4bba..deca7b4c2 100644 --- a/app/src/main/java/org/dslul/openboard/inputmethod/latin/suggestions/SuggestionStripView.java +++ b/app/src/main/java/org/dslul/openboard/inputmethod/latin/suggestions/SuggestionStripView.java @@ -7,6 +7,7 @@ package org.dslul.openboard.inputmethod.latin.suggestions; import android.annotation.SuppressLint; +import android.app.KeyguardManager; import android.content.ClipData; import android.content.ClipboardManager; import android.content.Context; @@ -18,6 +19,7 @@ import android.graphics.drawable.Drawable; import android.graphics.drawable.GradientDrawable; import android.graphics.drawable.ShapeDrawable; import android.graphics.drawable.shapes.OvalShape; +import android.os.Build; import android.text.TextUtils; import android.util.AttributeSet; import android.util.TypedValue; @@ -252,6 +254,14 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick pinnedVoiceKey.setVisibility(currentSettingsValues.mShowsVoiceInputKey ? VISIBLE : GONE); mToolbarKey.setImageDrawable(currentSettingsValues.mIncognitoModeEnabled ? mIncognitoIcon : mToolbarArrowIcon); mToolbarKey.setScaleX(mToolbarContainer.getVisibility() != VISIBLE ? 1f : -1f); + + // hide toolbar and pinned keys if device is locked + final KeyguardManager km = (KeyguardManager) getContext().getSystemService(Context.KEYGUARD_SERVICE); + final boolean hideClipboard = Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1 + ? km.isDeviceLocked() + : km.isKeyguardLocked(); + mToolbarKey.setVisibility(hideClipboard ? GONE : VISIBLE); + mPinnedKeys.setVisibility(hideClipboard ? GONE : VISIBLE); } public void setRtl(final boolean isRtlLanguage) {