From b281f48aef5503b36979ff6aa591184da58611a9 Mon Sep 17 00:00:00 2001 From: Sam Bosley Date: Tue, 24 Jan 2012 17:20:11 -0800 Subject: [PATCH] Popup for tag settings activity --- .../andlib/utility/AndroidUtilities.java | 11 ++++ astrid/AndroidManifest.xml | 3 +- .../astrid/actfm/EditPeopleControlSet.java | 2 +- .../astrid/actfm/TagSettingsActivity.java | 60 ++++++++++++++----- .../todoroo/astrid/actfm/TagViewActivity.java | 2 - astrid/res/layout/tag_settings_activity.xml | 26 ++++++++ astrid/res/values/styles.xml | 17 ++++++ .../astrid/activity/FilterListActivity.java | 3 +- .../astrid/activity/TaskEditActivity.java | 2 +- .../todoroo/astrid/service/ThemeService.java | 12 +++- .../todoroo/astrid/ui/DateAndTimeDialog.java | 2 +- .../todoroo/astrid/ui/PopupControlSet.java | 2 +- 12 files changed, 119 insertions(+), 23 deletions(-) diff --git a/api/src/com/todoroo/andlib/utility/AndroidUtilities.java b/api/src/com/todoroo/andlib/utility/AndroidUtilities.java index 7d5f535da..b1d1a7f1d 100644 --- a/api/src/com/todoroo/andlib/utility/AndroidUtilities.java +++ b/api/src/com/todoroo/andlib/utility/AndroidUtilities.java @@ -26,6 +26,7 @@ import android.content.Context; import android.content.Intent; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; +import android.content.res.Configuration; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.net.ConnectivityManager; @@ -736,4 +737,14 @@ public class AndroidUtilities { } } + /** + * Returns true if the screen is large or xtra large + * @param context + * @return + */ + public static boolean isTabletSized(Context context) { + int screenSize = context.getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK; + return (screenSize >= Configuration.SCREENLAYOUT_SIZE_LARGE); + } + } diff --git a/astrid/AndroidManifest.xml b/astrid/AndroidManifest.xml index fca3a1e55..34d3c956a 100644 --- a/astrid/AndroidManifest.xml +++ b/astrid/AndroidManifest.xml @@ -325,7 +325,8 @@ + android:windowSoftInputMode="stateHidden" + android:theme="@style/Theme_Dialog"/> + @android:color/white + useLogo|showHome|showTitle + @drawable/icon_48 + @color/red_text_color + diff --git a/astrid/src/com/todoroo/astrid/activity/FilterListActivity.java b/astrid/src/com/todoroo/astrid/activity/FilterListActivity.java index d550f448e..89f36957f 100644 --- a/astrid/src/com/todoroo/astrid/activity/FilterListActivity.java +++ b/astrid/src/com/todoroo/astrid/activity/FilterListActivity.java @@ -176,7 +176,8 @@ public class FilterListActivity extends ListFragment { public void onClick(View v) { Intent intent = TagsPlugin.newTagDialog(getActivity()); getActivity().startActivityForResult(intent, REQUEST_NEW_LIST); - AndroidUtilities.callOverridePendingTransition(getActivity(), R.anim.slide_left_in, R.anim.slide_left_out); + if (!AndroidUtilities.isTabletSized(getActivity())) + AndroidUtilities.callOverridePendingTransition(getActivity(), R.anim.slide_left_in, R.anim.slide_left_out); } }); diff --git a/astrid/src/com/todoroo/astrid/activity/TaskEditActivity.java b/astrid/src/com/todoroo/astrid/activity/TaskEditActivity.java index 8100c4246..ec9cefa2d 100755 --- a/astrid/src/com/todoroo/astrid/activity/TaskEditActivity.java +++ b/astrid/src/com/todoroo/astrid/activity/TaskEditActivity.java @@ -478,7 +478,7 @@ public final class TaskEditActivity extends Fragment { } private void constructWhenDialog(View whenDialogView) { - int theme = ThemeService.getDialogTheme(); + int theme = ThemeService.getEditDialogTheme(); whenDialog = new Dialog(getActivity(), theme); Button dismissDialogButton = (Button) whenDialogView.findViewById(R.id.when_dismiss); diff --git a/astrid/src/com/todoroo/astrid/service/ThemeService.java b/astrid/src/com/todoroo/astrid/service/ThemeService.java index d2dea7959..e696863ec 100644 --- a/astrid/src/com/todoroo/astrid/service/ThemeService.java +++ b/astrid/src/com/todoroo/astrid/service/ThemeService.java @@ -29,7 +29,7 @@ public class ThemeService { return R.style.Theme_White; } - public static int getDialogTheme() { + public static int getEditDialogTheme() { int themeSetting = ThemeService.getTheme(); int theme; if (themeSetting == R.style.Theme || themeSetting == R.style.Theme_Transparent) { @@ -40,4 +40,14 @@ public class ThemeService { return theme; } + public static int getDialogTheme() { + int themeSetting = ThemeService.getTheme(); + int theme; + if (themeSetting == R.style.Theme || themeSetting == R.style.Theme_Transparent) { + theme = R.style.Theme_Dialog; + } else { + theme = R.style.Theme_Dialog_White; + } + return theme; + } } diff --git a/astrid/src/com/todoroo/astrid/ui/DateAndTimeDialog.java b/astrid/src/com/todoroo/astrid/ui/DateAndTimeDialog.java index c7c10a0cb..1f9c1fd17 100644 --- a/astrid/src/com/todoroo/astrid/ui/DateAndTimeDialog.java +++ b/astrid/src/com/todoroo/astrid/ui/DateAndTimeDialog.java @@ -26,7 +26,7 @@ public class DateAndTimeDialog extends Dialog { private DateAndTimeDialogListener listener; public DateAndTimeDialog(Context context, long startDate) { - super(context, ThemeService.getDialogTheme()); + super(context, ThemeService.getEditDialogTheme()); /** 'Window.FEATURE_NO_TITLE' - Used to hide the title */ requestWindowFeature(Window.FEATURE_NO_TITLE); diff --git a/astrid/src/com/todoroo/astrid/ui/PopupControlSet.java b/astrid/src/com/todoroo/astrid/ui/PopupControlSet.java index e2c2ea3dc..58e39453e 100644 --- a/astrid/src/com/todoroo/astrid/ui/PopupControlSet.java +++ b/astrid/src/com/todoroo/astrid/ui/PopupControlSet.java @@ -62,7 +62,7 @@ public abstract class PopupControlSet extends TaskEditControlSet { } protected Dialog buildDialog(int title, final DialogInterface.OnClickListener okListener, DialogInterface.OnCancelListener cancelListener) { - int theme = ThemeService.getDialogTheme(); + int theme = ThemeService.getEditDialogTheme(); final Dialog d = new Dialog(activity, theme); if (title == 0) d.requestWindowFeature(Window.FEATURE_NO_TITLE);