diff --git a/quickstep/src/com/android/quickstep/views/DigitalWellBeingToast.java b/quickstep/src/com/android/quickstep/views/DigitalWellBeingToast.java index 4e89353103..4e7a0c415a 100644 --- a/quickstep/src/com/android/quickstep/views/DigitalWellBeingToast.java +++ b/quickstep/src/com/android/quickstep/views/DigitalWellBeingToast.java @@ -34,7 +34,7 @@ import com.android.systemui.shared.recents.model.Task; public final class DigitalWellBeingToast extends LinearLayout { public interface InitializeCallback { - void call(long t, boolean b); + void call(long remainingTimeMs, boolean isGroupLimit, String contentDescription); } private static final String TAG = DigitalWellBeingToast.class.getSimpleName(); @@ -66,7 +66,10 @@ public final class DigitalWellBeingToast extends LinearLayout { final boolean isGroupLimit = true; post(() -> { setRemainingTime(appRemainingTimeMs, isGroupLimit); - callback.call(appRemainingTimeMs, isGroupLimit); + callback.call( + appRemainingTimeMs, + isGroupLimit, + getContentDescriptionForTask(task, appRemainingTimeMs, isGroupLimit)); }); }); } @@ -94,4 +97,14 @@ public final class DigitalWellBeingToast extends LinearLayout { + mTask.getTopComponent().getPackageName(), e); } } + + private String getContentDescriptionForTask( + Task task, long appRemainingTimeMs, boolean isGroupLimit) { + return appRemainingTimeMs > 0 ? + getResources().getString( + R.string.task_contents_description_with_remaining_time, + task.titleDescription, + getText(appRemainingTimeMs, isGroupLimit)) : + task.titleDescription; + } } diff --git a/quickstep/src/com/android/quickstep/views/TaskView.java b/quickstep/src/com/android/quickstep/views/TaskView.java index a6a3b85301..9b26d08d7b 100644 --- a/quickstep/src/com/android/quickstep/views/TaskView.java +++ b/quickstep/src/com/android/quickstep/views/TaskView.java @@ -268,14 +268,9 @@ public class TaskView extends FrameLayout implements PageCallbacks { setIcon(task.icon); mDigitalWellBeingToast.initialize( mTask, - (appRemainingTimeMs, isGroupLimit) -> { + (appRemainingTimeMs, isGroupLimit, contentDescription) -> { mAppRemainingTimeMs = appRemainingTimeMs; - setContentDescription( - hasRemainingTime() ? - task.titleDescription + ". " - + DigitalWellBeingToast.getText( - appRemainingTimeMs, isGroupLimit) : - task.titleDescription); + setContentDescription(contentDescription); }); }); } else { diff --git a/res/values/strings.xml b/res/values/strings.xml index 7e5784d0bf..fb6eb43268 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -350,4 +350,6 @@ Failed: %1$s + + %1$s, %2$s