diff options
Diffstat (limited to 'core')
| -rw-r--r-- | core/java/android/widget/Toast.java | 14 | ||||
| -rw-r--r-- | core/res/res/layout/transient_notification.xml | 19 |
2 files changed, 29 insertions, 4 deletions
diff --git a/core/java/android/widget/Toast.java b/core/java/android/widget/Toast.java index 207f675..4b31af0 100644 --- a/core/java/android/widget/Toast.java +++ b/core/java/android/widget/Toast.java @@ -21,9 +21,11 @@ import android.annotation.StringRes; import android.app.INotificationManager; import android.app.ITransientNotification; import android.content.Context; +import android.content.pm.PackageManager; import android.content.res.Configuration; import android.content.res.Resources; import android.graphics.PixelFormat; +import android.graphics.drawable.Drawable; import android.os.Handler; import android.os.RemoteException; import android.os.ServiceManager; @@ -400,6 +402,18 @@ public class Toast { if (context == null) { context = mView.getContext(); } + + ImageView appIcon = (ImageView) mView.findViewById(android.R.id.icon); + if (appIcon != null) { + PackageManager pm = context.getPackageManager(); + Drawable icon = null; + try { + icon = pm.getApplicationIcon(packageName); + } catch (PackageManager.NameNotFoundException e) { + // nothing to do + } + appIcon.setImageDrawable(icon); + } mWM = (WindowManager)context.getSystemService(Context.WINDOW_SERVICE); // We can resolve the Gravity here by using the Locale for getting // the layout direction diff --git a/core/res/res/layout/transient_notification.xml b/core/res/res/layout/transient_notification.xml index daa9faf..fb1b430 100644 --- a/core/res/res/layout/transient_notification.xml +++ b/core/res/res/layout/transient_notification.xml @@ -18,24 +18,35 @@ */ --> -<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" - android:background="?android:attr/toastFrameBackground"> + android:clipChildren="false"> <TextView android:id="@android:id/message" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_weight="1" android:layout_gravity="center_horizontal" + android:layout_marginTop="-16dp" + android:layout_marginStart="-16dp" + android:layout_toRightOf="@android:id/icon" + android:layout_below="@android:id/icon" android:textAppearance="@style/TextAppearance.Toast" android:textColor="@color/bright_foreground_dark" android:shadowColor="#BB000000" android:shadowRadius="2.75" + android:background="?android:attr/toastFrameBackground" /> -</LinearLayout> + <ImageView + android:id="@android:id/icon" + android:layout_width="24dp" + android:layout_height="24dp" + android:layout_alignParentTop="true" + android:layout_alignParentStart="true"/> + +</RelativeLayout> |
