Loading packages/SystemUI/src/com/android/systemui/pip/tv/PipManager.java +2 −2 Original line number Diff line number Diff line Loading @@ -708,7 +708,7 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio mActiveMediaSessionListener, null); updateMediaController(mMediaSessionManager.getActiveSessions(null)); for (int i = mListeners.size() - 1; i >= 0; i--) { mListeners.get(i).onPipEntered(); mListeners.get(i).onPipEntered(packageName); } updatePipVisibility(true); } Loading Loading @@ -758,7 +758,7 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio * because there's no guarantee for the PIP manager be return relavent information * correctly. (e.g. {@link isPipShown}). */ void onPipEntered(); void onPipEntered(String packageName); /** Invoked when a PIPed activity is closed. */ void onPipActivityClosed(); /** Invoked when the PIP menu gets shown. */ Loading packages/SystemUI/src/com/android/systemui/pip/tv/PipMenuActivity.java +2 −2 Original line number Diff line number Diff line Loading @@ -137,8 +137,8 @@ public class PipMenuActivity extends Activity implements PipManager.Listener { } @Override public void onPipEntered() { if (DEBUG) Log.d(TAG, "onPipEntered()"); public void onPipEntered(String packageName) { if (DEBUG) Log.d(TAG, "onPipEntered(), packageName=" + packageName); } @Override Loading packages/SystemUI/src/com/android/systemui/pip/tv/PipNotification.java +38 −5 Original line number Diff line number Diff line Loading @@ -23,6 +23,8 @@ import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; import android.content.pm.ParceledListSlice; import android.content.res.Resources; import android.graphics.Bitmap; Loading Loading @@ -50,6 +52,8 @@ public class PipNotification { private static final String ACTION_MENU = "PipNotification.menu"; private static final String ACTION_CLOSE = "PipNotification.close"; private final PackageManager mPackageManager; private final PipManager mPipManager; private final NotificationManager mNotificationManager; Loading @@ -59,13 +63,16 @@ public class PipNotification { private String mDefaultTitle; private int mDefaultIconResId; /** Package name for the application that owns PiP window. */ private String mPackageName; private boolean mNotified; private String mTitle; private String mMediaTitle; private Bitmap mArt; private PipManager.Listener mPipListener = new PipManager.Listener() { @Override public void onPipEntered() { public void onPipEntered(String packageName) { mPackageName = packageName; updateMediaControllerMetadata(); notifyPipNotification(); } Loading @@ -73,6 +80,7 @@ public class PipNotification { @Override public void onPipActivityClosed() { dismissPipNotification(); mPackageName = null; } @Override Loading @@ -88,6 +96,7 @@ public class PipNotification { @Override public void onMoveToFullscreen() { dismissPipNotification(); mPackageName = null; } @Override Loading Loading @@ -146,6 +155,8 @@ public class PipNotification { public PipNotification(Context context, BroadcastDispatcher broadcastDispatcher, PipManager pipManager) { mPackageManager = context.getPackageManager(); mNotificationManager = (NotificationManager) context.getSystemService( Context.NOTIFICATION_SERVICE); Loading Loading @@ -188,7 +199,7 @@ public class PipNotification { .setShowWhen(true) .setWhen(System.currentTimeMillis()) .setSmallIcon(mDefaultIconResId) .setContentTitle(!TextUtils.isEmpty(mTitle) ? mTitle : mDefaultTitle); .setContentTitle(getNotificationTitle()); if (mArt != null) { mNotificationBuilder.setStyle(new Notification.BigPictureStyle() .bigPicture(mArt)); Loading Loading @@ -220,14 +231,36 @@ public class PipNotification { } } } if (!TextUtils.equals(title, mTitle) || art != mArt) { mTitle = title; if (!TextUtils.equals(title, mMediaTitle) || art != mArt) { mMediaTitle = title; mArt = art; return true; } return false; } private String getNotificationTitle() { if (!TextUtils.isEmpty(mMediaTitle)) { return mMediaTitle; } final String applicationTitle = getApplicationLabel(mPackageName); if (!TextUtils.isEmpty(applicationTitle)) { return applicationTitle; } return mDefaultTitle; } private String getApplicationLabel(String packageName) { try { final ApplicationInfo appInfo = mPackageManager.getApplicationInfo(packageName, 0); return mPackageManager.getApplicationLabel(appInfo).toString(); } catch (PackageManager.NameNotFoundException e) { return null; } } private static PendingIntent createPendingIntent(Context context, String action) { return PendingIntent.getBroadcast(context, 0, new Intent(action), PendingIntent.FLAG_CANCEL_CURRENT); Loading Loading
packages/SystemUI/src/com/android/systemui/pip/tv/PipManager.java +2 −2 Original line number Diff line number Diff line Loading @@ -708,7 +708,7 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio mActiveMediaSessionListener, null); updateMediaController(mMediaSessionManager.getActiveSessions(null)); for (int i = mListeners.size() - 1; i >= 0; i--) { mListeners.get(i).onPipEntered(); mListeners.get(i).onPipEntered(packageName); } updatePipVisibility(true); } Loading Loading @@ -758,7 +758,7 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio * because there's no guarantee for the PIP manager be return relavent information * correctly. (e.g. {@link isPipShown}). */ void onPipEntered(); void onPipEntered(String packageName); /** Invoked when a PIPed activity is closed. */ void onPipActivityClosed(); /** Invoked when the PIP menu gets shown. */ Loading
packages/SystemUI/src/com/android/systemui/pip/tv/PipMenuActivity.java +2 −2 Original line number Diff line number Diff line Loading @@ -137,8 +137,8 @@ public class PipMenuActivity extends Activity implements PipManager.Listener { } @Override public void onPipEntered() { if (DEBUG) Log.d(TAG, "onPipEntered()"); public void onPipEntered(String packageName) { if (DEBUG) Log.d(TAG, "onPipEntered(), packageName=" + packageName); } @Override Loading
packages/SystemUI/src/com/android/systemui/pip/tv/PipNotification.java +38 −5 Original line number Diff line number Diff line Loading @@ -23,6 +23,8 @@ import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; import android.content.pm.ParceledListSlice; import android.content.res.Resources; import android.graphics.Bitmap; Loading Loading @@ -50,6 +52,8 @@ public class PipNotification { private static final String ACTION_MENU = "PipNotification.menu"; private static final String ACTION_CLOSE = "PipNotification.close"; private final PackageManager mPackageManager; private final PipManager mPipManager; private final NotificationManager mNotificationManager; Loading @@ -59,13 +63,16 @@ public class PipNotification { private String mDefaultTitle; private int mDefaultIconResId; /** Package name for the application that owns PiP window. */ private String mPackageName; private boolean mNotified; private String mTitle; private String mMediaTitle; private Bitmap mArt; private PipManager.Listener mPipListener = new PipManager.Listener() { @Override public void onPipEntered() { public void onPipEntered(String packageName) { mPackageName = packageName; updateMediaControllerMetadata(); notifyPipNotification(); } Loading @@ -73,6 +80,7 @@ public class PipNotification { @Override public void onPipActivityClosed() { dismissPipNotification(); mPackageName = null; } @Override Loading @@ -88,6 +96,7 @@ public class PipNotification { @Override public void onMoveToFullscreen() { dismissPipNotification(); mPackageName = null; } @Override Loading Loading @@ -146,6 +155,8 @@ public class PipNotification { public PipNotification(Context context, BroadcastDispatcher broadcastDispatcher, PipManager pipManager) { mPackageManager = context.getPackageManager(); mNotificationManager = (NotificationManager) context.getSystemService( Context.NOTIFICATION_SERVICE); Loading Loading @@ -188,7 +199,7 @@ public class PipNotification { .setShowWhen(true) .setWhen(System.currentTimeMillis()) .setSmallIcon(mDefaultIconResId) .setContentTitle(!TextUtils.isEmpty(mTitle) ? mTitle : mDefaultTitle); .setContentTitle(getNotificationTitle()); if (mArt != null) { mNotificationBuilder.setStyle(new Notification.BigPictureStyle() .bigPicture(mArt)); Loading Loading @@ -220,14 +231,36 @@ public class PipNotification { } } } if (!TextUtils.equals(title, mTitle) || art != mArt) { mTitle = title; if (!TextUtils.equals(title, mMediaTitle) || art != mArt) { mMediaTitle = title; mArt = art; return true; } return false; } private String getNotificationTitle() { if (!TextUtils.isEmpty(mMediaTitle)) { return mMediaTitle; } final String applicationTitle = getApplicationLabel(mPackageName); if (!TextUtils.isEmpty(applicationTitle)) { return applicationTitle; } return mDefaultTitle; } private String getApplicationLabel(String packageName) { try { final ApplicationInfo appInfo = mPackageManager.getApplicationInfo(packageName, 0); return mPackageManager.getApplicationLabel(appInfo).toString(); } catch (PackageManager.NameNotFoundException e) { return null; } } private static PendingIntent createPendingIntent(Context context, String action) { return PendingIntent.getBroadcast(context, 0, new Intent(action), PendingIntent.FLAG_CANCEL_CURRENT); Loading