diff options
| author | Amith Yamasani <yamasani@google.com> | 2011-01-24 16:02:11 -0800 |
|---|---|---|
| committer | Amith Yamasani <yamasani@google.com> | 2011-01-24 16:24:55 -0800 |
| commit | a1d01841664131eca201acfaf747f1f187de10f6 (patch) | |
| tree | 981992084d4395ab9e3cc3c2bce3d98df55b78ec /src/com/android | |
| parent | 22c060ebd14bd92c67bd97f53d67bb06f0a215de (diff) | |
| download | packages_apps_Settings-a1d01841664131eca201acfaf747f1f187de10f6.tar.gz packages_apps_Settings-a1d01841664131eca201acfaf747f1f187de10f6.tar.bz2 packages_apps_Settings-a1d01841664131eca201acfaf747f1f187de10f6.zip | |
Tabletize Device administrator screen and fix the layout for DeviceAdminAdd.
Bug: 3376986
Convert the DeviceAdminSettings screen to a fragment, remove fat titlebar.
Convert the DeviceAdminAdd screen to layout nicely in the new holo DialogWhenLarge
style.
Change-Id: I20a9d16aed135a2178969dfff807075b0b79237c
Diffstat (limited to 'src/com/android')
| -rw-r--r-- | src/com/android/settings/DeviceAdminAdd.java | 22 | ||||
| -rw-r--r-- | src/com/android/settings/DeviceAdminSettings.java | 51 | ||||
| -rw-r--r-- | src/com/android/settings/Settings.java | 1 |
3 files changed, 38 insertions, 36 deletions
diff --git a/src/com/android/settings/DeviceAdminAdd.java b/src/com/android/settings/DeviceAdminAdd.java index 26bd88afa..63998e53f 100644 --- a/src/com/android/settings/DeviceAdminAdd.java +++ b/src/com/android/settings/DeviceAdminAdd.java @@ -64,11 +64,11 @@ public class DeviceAdminAdd extends Activity { DeviceAdminInfo mDeviceAdmin; CharSequence mAddMsgText; - TextView mTitle; ImageView mAdminIcon; TextView mAdminName; TextView mAdminDescription; TextView mAddMsg; + ImageView mAddMsgExpander; boolean mAddMsgEllipsized = true; TextView mAdminWarning; ViewGroup mAdminPolicies; @@ -149,15 +149,15 @@ public class DeviceAdminAdd extends Activity { } } mAddMsgText = getIntent().getCharSequenceExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION); - + setContentView(R.layout.device_admin_add); - mTitle = (TextView)findViewById(R.id.title); mAdminIcon = (ImageView)findViewById(R.id.admin_icon); mAdminName = (TextView)findViewById(R.id.admin_name); mAdminDescription = (TextView)findViewById(R.id.admin_description); mAddMsg = (TextView)findViewById(R.id.add_msg); + mAddMsgExpander = (ImageView) findViewById(R.id.add_msg_expander); mAddMsg.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { toggleMessageEllipsis(v); @@ -167,15 +167,15 @@ public class DeviceAdminAdd extends Activity { // toggleMessageEllipsis also handles initial layout: toggleMessageEllipsis(mAddMsg); - mAdminWarning = (TextView)findViewById(R.id.admin_warning); - mAdminPolicies = (ViewGroup)findViewById(R.id.admin_policies); - mCancelButton = (Button)findViewById(R.id.cancel_button); + mAdminWarning = (TextView) findViewById(R.id.admin_warning); + mAdminPolicies = (ViewGroup) findViewById(R.id.admin_policies); + mCancelButton = (Button) findViewById(R.id.cancel_button); mCancelButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { finish(); } }); - mActionButton = (Button)findViewById(R.id.action_button); + mActionButton = (Button) findViewById(R.id.action_button); mActionButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { if (mAdding) { @@ -269,6 +269,7 @@ public class DeviceAdminAdd extends Activity { mAddMsg.setVisibility(View.VISIBLE); } else { mAddMsg.setVisibility(View.GONE); + mAddMsgExpander.setVisibility(View.GONE); } if (!mRefreshing && mDPM.isAdminActive(mDeviceAdmin.getComponent())) { if (mActivePolicies.size() == 0) { @@ -285,7 +286,7 @@ public class DeviceAdminAdd extends Activity { setViewVisibility(mAddingPolicies, View.GONE); mAdminWarning.setText(getString(R.string.device_admin_status, mDeviceAdmin.getActivityInfo().applicationInfo.loadLabel(getPackageManager()))); - mTitle.setText(getText(R.string.active_device_admin_msg)); + setTitle(getText(R.string.active_device_admin_msg)); mActionButton.setText(getText(R.string.remove_device_admin)); mAdding = false; } else { @@ -303,7 +304,7 @@ public class DeviceAdminAdd extends Activity { setViewVisibility(mActivePolicies, View.GONE); mAdminWarning.setText(getString(R.string.device_admin_warning, mDeviceAdmin.getActivityInfo().applicationInfo.loadLabel(getPackageManager()))); - mTitle.setText(getText(R.string.add_device_admin_msg)); + setTitle(getText(R.string.add_device_admin_msg)); mActionButton.setText(getText(R.string.add_device_admin)); mAdding = true; } @@ -317,8 +318,7 @@ public class DeviceAdminAdd extends Activity { tv.setEllipsize(mAddMsgEllipsized ? TruncateAt.END : null); tv.setMaxLines(mAddMsgEllipsized ? getEllipsizedLines() : MAX_ADD_MSG_LINES); - ImageView iv = (ImageView) findViewById(R.id.add_msg_expander); - iv.setImageResource(mAddMsgEllipsized ? + mAddMsgExpander.setImageResource(mAddMsgEllipsized ? com.android.internal.R.drawable.expander_ic_minimized : com.android.internal.R.drawable.expander_ic_maximized); } diff --git a/src/com/android/settings/DeviceAdminSettings.java b/src/com/android/settings/DeviceAdminSettings.java index c3c74b659..310aae7cd 100644 --- a/src/com/android/settings/DeviceAdminSettings.java +++ b/src/com/android/settings/DeviceAdminSettings.java @@ -16,25 +16,21 @@ package com.android.settings; +import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; import android.app.Activity; -import android.app.AlertDialog; -import android.app.Dialog; -import android.app.ListActivity; +import android.app.ListFragment; import android.app.admin.DeviceAdminInfo; import android.app.admin.DeviceAdminReceiver; import android.app.admin.DevicePolicyManager; import android.content.ComponentName; import android.content.Context; -import android.content.DialogInterface; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.content.res.Resources; import android.os.Bundle; -import android.os.Handler; -import android.os.RemoteCallback; import android.util.Log; import android.view.LayoutInflater; import android.view.View; @@ -50,7 +46,7 @@ import java.util.ArrayList; import java.util.HashSet; import java.util.List; -public class DeviceAdminSettings extends ListActivity { +public class DeviceAdminSettings extends ListFragment { static final String TAG = "DeviceAdminSettings"; static final int DIALOG_WARNING = 1; @@ -58,18 +54,21 @@ public class DeviceAdminSettings extends ListActivity { DevicePolicyManager mDPM; final HashSet<ComponentName> mActiveAdmins = new HashSet<ComponentName>(); final ArrayList<DeviceAdminInfo> mAvailableAdmins = new ArrayList<DeviceAdminInfo>(); - + @Override - protected void onCreate(Bundle icicle) { + public void onCreate(Bundle icicle) { super.onCreate(icicle); + } - mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE); - - setContentView(R.layout.device_admin_settings); + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + mDPM = (DevicePolicyManager) getActivity().getSystemService(Context.DEVICE_POLICY_SERVICE); + return inflater.inflate(R.layout.device_admin_settings, container, false); } - + @Override - protected void onResume() { + public void onResume() { super.onResume(); updateList(); } @@ -82,16 +81,16 @@ public class DeviceAdminSettings extends ListActivity { mActiveAdmins.add(cur.get(i)); } } - + mAvailableAdmins.clear(); - List<ResolveInfo> avail = getPackageManager().queryBroadcastReceivers( + List<ResolveInfo> avail = getActivity().getPackageManager().queryBroadcastReceivers( new Intent(DeviceAdminReceiver.ACTION_DEVICE_ADMIN_ENABLED), PackageManager.GET_META_DATA); int count = avail == null ? 0 : avail.size(); for (int i=0; i<count; i++) { ResolveInfo ri = avail.get(i); try { - DeviceAdminInfo dpi = new DeviceAdminInfo(this, ri); + DeviceAdminInfo dpi = new DeviceAdminInfo(getActivity(), ri); if (dpi.isVisible() || mActiveAdmins.contains(dpi.getComponent())) { mAvailableAdmins.add(dpi); } @@ -104,16 +103,16 @@ public class DeviceAdminSettings extends ListActivity { getListView().setAdapter(new PolicyListAdapter()); } - + @Override - protected void onListItemClick(ListView l, View v, int position, long id) { + public void onListItemClick(ListView l, View v, int position, long id) { DeviceAdminInfo dpi = (DeviceAdminInfo)l.getAdapter().getItem(position); Intent intent = new Intent(); - intent.setClass(this, DeviceAdminAdd.class); + intent.setClass(getActivity(), DeviceAdminAdd.class); intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, dpi.getComponent()); startActivity(intent); } - + static class ViewHolder { ImageView icon; TextView name; @@ -125,7 +124,8 @@ public class DeviceAdminSettings extends ListActivity { final LayoutInflater mInflater; PolicyListAdapter() { - mInflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE); + mInflater = (LayoutInflater) + getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE); } public boolean hasStableIds() { @@ -175,13 +175,14 @@ public class DeviceAdminSettings extends ListActivity { } public void bindView(View view, int position) { + final Activity activity = getActivity(); ViewHolder vh = (ViewHolder) view.getTag(); DeviceAdminInfo item = mAvailableAdmins.get(position); - vh.icon.setImageDrawable(item.loadIcon(getPackageManager())); - vh.name.setText(item.loadLabel(getPackageManager())); + vh.icon.setImageDrawable(item.loadIcon(activity.getPackageManager())); + vh.name.setText(item.loadLabel(activity.getPackageManager())); vh.checkbox.setChecked(mActiveAdmins.contains(item.getComponent())); try { - vh.description.setText(item.loadDescription(getPackageManager())); + vh.description.setText(item.loadDescription(activity.getPackageManager())); } catch (Resources.NotFoundException e) { } } diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java index 1e54504b3..25327475c 100644 --- a/src/com/android/settings/Settings.java +++ b/src/com/android/settings/Settings.java @@ -333,4 +333,5 @@ public class Settings extends PreferenceActivity implements ButtonBarHandler { public static class AccountSyncSettingsActivity extends Settings { } public static class AccountSyncSettingsInAddAccountActivity extends Settings { } public static class CryptKeeperSettingsActivity extends Settings { } + public static class DeviceAdminSettingsActivity extends Settings { } } |
