From 2028e7b4b4298d91fa366887d50ed640c026143e Mon Sep 17 00:00:00 2001 From: chenjean Date: Mon, 3 Feb 2025 22:03:58 +0800 Subject: [PATCH] Increment TeX counters for the HCT migration about notification dismissed. Bug: 391672253 Flag: com.android.graphics.hwui.flags.high_contrast_text_small_text_rect Test: Ensure dismissing a notification from open settings does not trigger multiple counter increments Change-Id: I6ddccd40427cf2364d3fb5df4efaa0b16db26133 --- .../HighContrastTextMigrationReceiver.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/com/android/settings/accessibility/HighContrastTextMigrationReceiver.java b/src/com/android/settings/accessibility/HighContrastTextMigrationReceiver.java index 863689dddab..fbe192191f1 100644 --- a/src/com/android/settings/accessibility/HighContrastTextMigrationReceiver.java +++ b/src/com/android/settings/accessibility/HighContrastTextMigrationReceiver.java @@ -57,6 +57,8 @@ public class HighContrastTextMigrationReceiver extends BroadcastReceiver { @VisibleForTesting static final String ACTION_OPEN_SETTINGS = "com.android.settings.accessibility.ACTION_OPEN_HIGH_CONTRAST_TEXT_SETTINGS"; + private static final String ACTION_NOTIFICATION_DISMISSED = + "com.android.settings.accessibility.ACTION_HIGH_CONTRAST_TEXT_NOTIFICATION_DISMISSED"; @VisibleForTesting static final int NOTIFICATION_ID = R.string.accessibility_notification_high_contrast_text_title; @@ -87,6 +89,8 @@ public class HighContrastTextMigrationReceiver extends BroadcastReceiver { context.startActivity(settingsIntent); context.getSystemService(NotificationManager.class).cancel(NOTIFICATION_ID); + } else if (ACTION_NOTIFICATION_DISMISSED.equals(intent.getAction())) { + Counter.logIncrement("accessibility.value_hct_notification_dismissed"); } else if (ACTION_RESTORED.equals(intent.getAction())) { Log.i(TAG, "HCT attempted to be restored from backup; showing notification for userId: " + context.getUserId()); @@ -159,6 +163,13 @@ public class HighContrastTextMigrationReceiver extends BroadcastReceiver { .addAction(settingsAction) .setAutoCancel(true); } + + Intent deleteIntent = new Intent(context, HighContrastTextMigrationReceiver.class); + deleteIntent.setAction(ACTION_NOTIFICATION_DISMISSED); + PendingIntent deletePendingIntent = PendingIntent.getBroadcast(context, 0, + deleteIntent, PendingIntent.FLAG_IMMUTABLE); + notificationBuilder.setDeleteIntent(deletePendingIntent); + NotificationManager notificationManager = context.getSystemService(NotificationManager.class); NotificationChannel notificationChannel = new NotificationChannel(