mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-03-02 08:56:55 +00:00
Update KQS task view layouts to new specs
The small size of the screenshots and make text look odd. Implementing new UI specs to improve this. - Updated icon position and size - Added some blur to the thumbnail Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED Fixes: 328259439 Fixes: 328692456 Test: opened KQS in dark and light mode Change-Id: I2b20100ddeb562291edf5f0bacbce916002eee45
This commit is contained in:
@@ -23,6 +23,7 @@ import android.content.res.Resources;
|
||||
import android.content.res.TypedArray;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.Canvas;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.View;
|
||||
import android.widget.ImageView;
|
||||
@@ -47,6 +48,8 @@ import kotlin.Unit;
|
||||
*/
|
||||
public class KeyboardQuickSwitchTaskView extends ConstraintLayout {
|
||||
|
||||
private static final float THUMBNAIL_BLUR_RADIUS = 1f;
|
||||
|
||||
@ColorInt private final int mBorderColor;
|
||||
|
||||
@Nullable private BorderAnimator mBorderAnimator;
|
||||
@@ -89,10 +92,10 @@ public class KeyboardQuickSwitchTaskView extends ConstraintLayout {
|
||||
@Override
|
||||
protected void onFinishInflate() {
|
||||
super.onFinishInflate();
|
||||
mThumbnailView1 = findViewById(R.id.thumbnail1);
|
||||
mThumbnailView2 = findViewById(R.id.thumbnail2);
|
||||
mIcon1 = findViewById(R.id.icon1);
|
||||
mIcon2 = findViewById(R.id.icon2);
|
||||
mThumbnailView1 = findViewById(R.id.thumbnail_1);
|
||||
mThumbnailView2 = findViewById(R.id.thumbnail_2);
|
||||
mIcon1 = findViewById(R.id.icon_1);
|
||||
mIcon2 = findViewById(R.id.icon_2);
|
||||
mContent = findViewById(R.id.content);
|
||||
|
||||
Resources resources = mContext.getResources();
|
||||
@@ -167,10 +170,7 @@ public class KeyboardQuickSwitchTaskView extends ConstraintLayout {
|
||||
@Nullable ImageView thumbnailView,
|
||||
@Nullable Task task,
|
||||
@Nullable ThumbnailUpdateFunction updateFunction) {
|
||||
if (thumbnailView == null) {
|
||||
return;
|
||||
}
|
||||
if (task == null) {
|
||||
if (thumbnailView == null || task == null) {
|
||||
return;
|
||||
}
|
||||
if (updateFunction == null) {
|
||||
@@ -182,19 +182,30 @@ public class KeyboardQuickSwitchTaskView extends ConstraintLayout {
|
||||
}
|
||||
|
||||
private void applyThumbnail(
|
||||
@NonNull ImageView thumbnailView, ThumbnailData thumbnailData) {
|
||||
@NonNull ImageView thumbnailView,
|
||||
ThumbnailData thumbnailData) {
|
||||
Bitmap bm = thumbnailData == null ? null : thumbnailData.thumbnail;
|
||||
|
||||
thumbnailView.setVisibility(VISIBLE);
|
||||
thumbnailView.setImageBitmap(bm);
|
||||
if (thumbnailView.getVisibility() != VISIBLE) {
|
||||
thumbnailView.setVisibility(VISIBLE);
|
||||
}
|
||||
thumbnailView.setImageDrawable(new BlurredBitmapDrawable(bm, THUMBNAIL_BLUR_RADIUS));
|
||||
}
|
||||
|
||||
private void applyIcon(@Nullable ImageView iconView, @Nullable Task task) {
|
||||
if (iconView == null || task == null) {
|
||||
if (iconView == null || task == null || task.icon == null) {
|
||||
return;
|
||||
}
|
||||
iconView.setVisibility(VISIBLE);
|
||||
iconView.setImageDrawable(task.icon);
|
||||
Drawable.ConstantState constantState = task.icon.getConstantState();
|
||||
if (constantState == null) {
|
||||
return;
|
||||
}
|
||||
if (iconView.getVisibility() != VISIBLE) {
|
||||
iconView.setVisibility(VISIBLE);
|
||||
}
|
||||
// Use the bitmap directly since the drawable's scale can change
|
||||
iconView.setImageDrawable(
|
||||
constantState.newDrawable(getResources(), getContext().getTheme()));
|
||||
}
|
||||
|
||||
protected interface ThumbnailUpdateFunction {
|
||||
|
||||
Reference in New Issue
Block a user