Files
frameworks_base/services/java/com/android/server/am/LaunchWarningWindow.java
Adam Powell 947f782411 Fix bug 3245465 - Themed dialog icons
Added light/dark versions of holo dialog icons. Apps using
AlertDialogs that wish to use the system dialog icon should use
setIconAttribute(android.R.attr.alertDialogIcon) instead of
setIcon(android.R.drawable.ic_alert_dialog).

Change-Id: I40793a3164478be5ffa045ededfcab8210753a4b
2011-01-08 13:09:51 -08:00

41 lines
1.9 KiB
Java

package com.android.server.am;
import com.android.internal.R;
import android.app.Dialog;
import android.content.Context;
import android.util.TypedValue;
import android.view.Window;
import android.view.WindowManager;
import android.widget.ImageView;
import android.widget.TextView;
public class LaunchWarningWindow extends Dialog {
public LaunchWarningWindow(Context context, ActivityRecord cur, ActivityRecord next) {
super(context, R.style.Theme_Toast);
requestWindowFeature(Window.FEATURE_LEFT_ICON);
getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
| WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);
setContentView(R.layout.launch_warning);
setTitle(context.getText(R.string.launch_warning_title));
TypedValue out = new TypedValue();
getContext().getTheme().resolveAttribute(android.R.attr.alertDialogIcon, out, true);
getWindow().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON, out.resourceId);
ImageView icon = (ImageView)findViewById(R.id.replace_app_icon);
icon.setImageDrawable(next.info.applicationInfo.loadIcon(context.getPackageManager()));
TextView text = (TextView)findViewById(R.id.replace_message);
text.setText(context.getResources().getString(R.string.launch_warning_replace,
next.info.applicationInfo.loadLabel(context.getPackageManager()).toString()));
icon = (ImageView)findViewById(R.id.original_app_icon);
icon.setImageDrawable(cur.info.applicationInfo.loadIcon(context.getPackageManager()));
text = (TextView)findViewById(R.id.original_message);
text.setText(context.getResources().getString(R.string.launch_warning_original,
cur.info.applicationInfo.loadLabel(context.getPackageManager()).toString()));
}
}