From 65f990f9272f26b402da42b8391596e775bd3424 Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Thu, 31 Oct 2013 08:32:05 -0500 Subject: [PATCH] Remove unused classes, update translations * AlarmDatabase * TransitionalAlarm * AstridDialog * FeedbackPromptDialogs * TouchInterceptingFrameLayout * Update Spanish (judmezago) --- .../todoroo/astrid/dao/DatabaseDaoTests.java | 34 ------ .../todoroo/astrid/test/DatabaseTestCase.java | 8 -- .../astrid/activity/TaskListFragment.java | 43 -------- .../todoroo/astrid/legacy/AlarmDatabase.java | 80 -------------- .../astrid/legacy/TransitionalAlarm.java | 103 ------------------ .../com/todoroo/astrid/ui/AstridDialog.java | 84 -------------- .../astrid/ui/FeedbackPromptDialogs.java | 49 --------- .../ui/TouchInterceptingFrameLayout.java | 42 ------- .../main/res/drawable-hdpi/icn_thumbsdown.png | Bin 3006 -> 0 bytes .../main/res/drawable-hdpi/icn_thumbsup.png | Bin 2976 -> 0 bytes .../res/drawable-xhdpi/icn_thumbsdown.png | Bin 1471 -> 0 bytes .../main/res/drawable-xhdpi/icn_thumbsup.png | Bin 1439 -> 0 bytes .../src/main/res/drawable/icn_thumbsdown.png | Bin 2508 -> 0 bytes astrid/src/main/res/drawable/icn_thumbsup.png | Bin 2524 -> 0 bytes .../res/layout-land/astrid_dialog_view.xml | 91 ---------------- .../main/res/layout/astrid_dialog_view.xml | 76 ------------- .../layout/astrid_dialog_view_portrait.xml | 76 ------------- .../src/main/res/layout/feedback_prompt.xml | 41 ------- astrid/src/main/res/values-de/strings.xml | 9 -- astrid/src/main/res/values-es/strings.xml | 19 ++++ astrid/src/main/res/values-fr/strings.xml | 9 -- astrid/src/main/res/values-ko/strings.xml | 9 -- astrid/src/main/res/values-nl/strings.xml | 9 -- astrid/src/main/res/values-pl/strings.xml | 3 - astrid/src/main/res/values-ru/strings.xml | 2 - astrid/src/main/res/values-uk/strings.xml | 9 -- astrid/src/main/res/values/strings-core.xml | 18 --- 27 files changed, 19 insertions(+), 795 deletions(-) delete mode 100644 astrid/src/instrumentTest/java/com/todoroo/astrid/dao/DatabaseDaoTests.java delete mode 100644 astrid/src/main/java/com/todoroo/astrid/legacy/AlarmDatabase.java delete mode 100644 astrid/src/main/java/com/todoroo/astrid/legacy/TransitionalAlarm.java delete mode 100644 astrid/src/main/java/com/todoroo/astrid/ui/AstridDialog.java delete mode 100644 astrid/src/main/java/com/todoroo/astrid/ui/FeedbackPromptDialogs.java delete mode 100644 astrid/src/main/java/com/todoroo/astrid/ui/TouchInterceptingFrameLayout.java delete mode 100644 astrid/src/main/res/drawable-hdpi/icn_thumbsdown.png delete mode 100644 astrid/src/main/res/drawable-hdpi/icn_thumbsup.png delete mode 100644 astrid/src/main/res/drawable-xhdpi/icn_thumbsdown.png delete mode 100644 astrid/src/main/res/drawable-xhdpi/icn_thumbsup.png delete mode 100644 astrid/src/main/res/drawable/icn_thumbsdown.png delete mode 100644 astrid/src/main/res/drawable/icn_thumbsup.png delete mode 100644 astrid/src/main/res/layout-land/astrid_dialog_view.xml delete mode 100644 astrid/src/main/res/layout/astrid_dialog_view.xml delete mode 100644 astrid/src/main/res/layout/astrid_dialog_view_portrait.xml delete mode 100644 astrid/src/main/res/layout/feedback_prompt.xml diff --git a/astrid/src/instrumentTest/java/com/todoroo/astrid/dao/DatabaseDaoTests.java b/astrid/src/instrumentTest/java/com/todoroo/astrid/dao/DatabaseDaoTests.java deleted file mode 100644 index 344050c0d..000000000 --- a/astrid/src/instrumentTest/java/com/todoroo/astrid/dao/DatabaseDaoTests.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.todoroo.astrid.dao; - -import com.todoroo.andlib.data.TodorooCursor; -import com.todoroo.andlib.sql.Query; -import com.todoroo.astrid.data.Task; -import com.todoroo.astrid.test.DatabaseTestCase; - -public class DatabaseDaoTests extends DatabaseTestCase { - - private TaskDao dao; - - @Override - protected void setUp() throws Exception { - super.setUp(); - RemoteModelDao.setOutstandingEntryFlags(RemoteModelDao.OUTSTANDING_ENTRY_FLAG_RECORD_OUTSTANDING); - } - - public void testFailedTransactionCreatesNoRows() { - dao = new TaskDao(); - dao.setDatabase(database); - - Task t = new Task(); - t.setValue(Task.TITLE, "Should not appear"); - dao.createNew(t); - - TodorooCursor tasks = dao.query(Query.select(Task.ID)); - try { - assertEquals(0, tasks.getCount()); - } finally { - tasks.close(); - } - } - -} diff --git a/astrid/src/instrumentTest/java/com/todoroo/astrid/test/DatabaseTestCase.java b/astrid/src/instrumentTest/java/com/todoroo/astrid/test/DatabaseTestCase.java index 13daf415e..5e67560e0 100644 --- a/astrid/src/instrumentTest/java/com/todoroo/astrid/test/DatabaseTestCase.java +++ b/astrid/src/instrumentTest/java/com/todoroo/astrid/test/DatabaseTestCase.java @@ -8,7 +8,6 @@ package com.todoroo.astrid.test; import com.todoroo.andlib.service.ContextManager; import com.todoroo.andlib.test.TodorooTestCaseWithInjector; import com.todoroo.astrid.dao.Database; -import com.todoroo.astrid.legacy.AlarmDatabase; import com.todoroo.astrid.provider.ProviderTestUtilities; import com.todoroo.astrid.service.AstridDependencyInjector; @@ -67,11 +66,4 @@ public class DatabaseTestCase extends TodorooTestCaseWithInjector { return "databasetest"; } } - - public static class TestAlarmsDatabase extends AlarmDatabase { - @Override - public String getName() { - return "alarmstest"; - } - } } diff --git a/astrid/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java b/astrid/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java index 5e5e4007b..5f1b19e2b 100644 --- a/astrid/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java +++ b/astrid/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java @@ -37,7 +37,6 @@ import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.AdapterContextMenuInfo; import android.widget.AdapterView.OnItemClickListener; -import android.widget.LinearLayout; import android.widget.ListView; import android.widget.TextView; @@ -89,7 +88,6 @@ import com.todoroo.astrid.subtasks.SubtasksUpdater; import com.todoroo.astrid.sync.SyncProviderPreferences; import com.todoroo.astrid.tags.TaskToTagMetadata; import com.todoroo.astrid.timers.TimerPlugin; -import com.todoroo.astrid.ui.FeedbackPromptDialogs; import com.todoroo.astrid.ui.QuickAddBar; import com.todoroo.astrid.utility.AstridPreferences; import com.todoroo.astrid.utility.Flags; @@ -610,47 +608,6 @@ public class TaskListFragment extends SherlockListFragment implements OnSortSele refreshFilterCount(); initiateAutomaticSync(); - -// showFeedbackPrompt(); - } - - private void showFeedbackPrompt() { - if (!(this instanceof TagViewFragment) && - (DateUtilities.now() - Preferences.getLong(PREF_LAST_FEEDBACK_TIME, 0)) > FEEDBACK_TIME_INTERVAL && - taskService.getUserActivationStatus()) { - final LinearLayout root = (LinearLayout) getView().findViewById(R.id.taskListParent); - if (root.findViewById(R.id.feedback_banner) == null) { - final View feedbackPrompt = getActivity().getLayoutInflater().inflate(R.layout.feedback_prompt, root, false); - - feedbackPrompt.findViewById(R.id.positiveFeedback).setOnClickListener(new OnClickListener() { - @Override - public void onClick(View v) { - try { - root.removeView(feedbackPrompt); - FeedbackPromptDialogs.showFeedbackDialog((AstridActivity) getActivity(), true); - Preferences.setLong(PREF_LAST_FEEDBACK_TIME, DateUtilities.now()); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - - feedbackPrompt.findViewById(R.id.negativeFeedback).setOnClickListener(new OnClickListener() { - @Override - public void onClick(View v) { - try { - root.removeView(feedbackPrompt); - FeedbackPromptDialogs.showFeedbackDialog((AstridActivity) getActivity(), false); - Preferences.setLong(PREF_LAST_FEEDBACK_TIME, DateUtilities.now()); - } catch (Exception e) { - e.printStackTrace(); - } - } - }); - - root.addView(feedbackPrompt, 0); - } - } } protected boolean isCurrentTaskListFragment() { diff --git a/astrid/src/main/java/com/todoroo/astrid/legacy/AlarmDatabase.java b/astrid/src/main/java/com/todoroo/astrid/legacy/AlarmDatabase.java deleted file mode 100644 index 554489545..000000000 --- a/astrid/src/main/java/com/todoroo/astrid/legacy/AlarmDatabase.java +++ /dev/null @@ -1,80 +0,0 @@ -/** - * Copyright (c) 2012 Todoroo Inc - * - * See the file "LICENSE" for the full license governing this code. - */ -package com.todoroo.astrid.legacy; - -import com.todoroo.andlib.data.AbstractDatabase; -import com.todoroo.andlib.data.DatabaseDao; -import com.todoroo.andlib.data.Table; - -/** - * Database wrapper - * - * @author Tim Su - * - */ -public class AlarmDatabase extends AbstractDatabase { - - // --- constants - - /** - * Database version number. This variable must be updated when database - * tables are updated, as it determines whether a database needs updating. - */ - public static final int VERSION = 1; - - /** - * Database name (must be unique) - */ - public static final String NAME = "alarms"; - - /** - * List of table/ If you're adding a new table, add it to this list and - * also make sure that our SQLite helper does the right thing. - */ - public static final Table[] TABLES = new Table[] { - TransitionalAlarm.TABLE - }; - - // --- implementation - - private final DatabaseDao dao = new DatabaseDao(TransitionalAlarm.class, this); - - @Override - protected String getName() { - return NAME; - } - - @Override - protected int getVersion() { - return VERSION; - } - - @Override - public Table[] getTables() { - return TABLES; - } - - public DatabaseDao getDao() { - return dao; - } - - @Override - protected synchronized void onCreateTables() { - StringBuilder sql = new StringBuilder(); - sql.append("CREATE INDEX IF NOT EXISTS a_task ON "). - append(TransitionalAlarm.TABLE).append('('). - append(TransitionalAlarm.TASK.name). - append(')'); - database.execSQL(sql.toString()); - } - - @Override - protected boolean onUpgrade(int oldVersion, int newVersion) { - return false; - } - -} - diff --git a/astrid/src/main/java/com/todoroo/astrid/legacy/TransitionalAlarm.java b/astrid/src/main/java/com/todoroo/astrid/legacy/TransitionalAlarm.java deleted file mode 100644 index 17897d462..000000000 --- a/astrid/src/main/java/com/todoroo/astrid/legacy/TransitionalAlarm.java +++ /dev/null @@ -1,103 +0,0 @@ -/** - * Copyright (c) 2012 Todoroo Inc - * - * See the file "LICENSE" for the full license governing this code. - */ -package com.todoroo.astrid.legacy; - - -import android.content.ContentValues; - -import com.todoroo.andlib.data.AbstractModel; -import com.todoroo.andlib.data.Property; -import com.todoroo.andlib.data.Property.LongProperty; -import com.todoroo.andlib.data.Table; -import com.todoroo.andlib.data.TodorooCursor; -import com.todoroo.astrid.data.Task; - -/** - * Data Model which represents an alarm. This is a transitional class - - * Alarms are moved over to metadata - * - * @author Tim Su - * - */ -public class TransitionalAlarm extends AbstractModel { - - // --- table - - public static final Table TABLE = new Table("alarm", TransitionalAlarm.class); - - // --- properties - - /** ID */ - public static final LongProperty ID = new LongProperty( - TABLE, ID_PROPERTY_NAME); - - /** Associated Task */ - public static final LongProperty TASK = new LongProperty( - TABLE, "task"); - - /** Alarm Time */ - public static final LongProperty TIME = new LongProperty( - TABLE, "time"); - - /** List of all properties for this model */ - public static final Property[] PROPERTIES = generateProperties(TransitionalAlarm.class); - - // --- constants - - /** this alarm was already triggered */ - public static final int TYPE_TRIGGERED = 0; - - /** this alarm is single-shot */ - public static final int TYPE_SINGLE = 1; - - /** this alarm repeats itself until turned off */ - public static final int TYPE_REPEATING = 2; - - // --- defaults - - /** Default values container */ - private static final ContentValues defaultValues = new ContentValues(); - - static { - // - } - - @Override - public ContentValues getDefaultValues() { - return defaultValues; - } - - // --- data access boilerplate - - @Deprecated - public TransitionalAlarm() { - super(); - } - - public TransitionalAlarm(TodorooCursor cursor) { - this(); - readPropertiesFromCursor(cursor); - } - - public void readFromCursor(TodorooCursor cursor) { - super.readPropertiesFromCursor(cursor); - } - - @Override - public long getId() { - return getIdHelper(ID); - }; - - // --- parcelable helpers - - private static final Creator CREATOR = new ModelCreator(Task.class); - - @Override - protected Creator getCreator() { - return CREATOR; - } - -} diff --git a/astrid/src/main/java/com/todoroo/astrid/ui/AstridDialog.java b/astrid/src/main/java/com/todoroo/astrid/ui/AstridDialog.java deleted file mode 100644 index c446df5d6..000000000 --- a/astrid/src/main/java/com/todoroo/astrid/ui/AstridDialog.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.todoroo.astrid.ui; - -import android.app.Dialog; -import android.view.View; -import android.widget.Button; -import android.widget.LinearLayout; -import android.widget.TextView; - -import com.todoroo.astrid.activity.AstridActivity; - -import org.tasks.R; - -public class AstridDialog extends Dialog { - - private final Button[] buttons; - private final TextView title; - private final TextView message; - private final LinearLayout root; - - public AstridDialog(AstridActivity activity, boolean forcePortrait) { - super(activity, R.style.ReminderDialog); - setContentView(forcePortrait ? R.layout.astrid_dialog_view_portrait : R.layout.astrid_dialog_view); - - buttons = new Button[3]; - buttons[0] = (Button) findViewById(R.id.button0); - buttons[1] = (Button) findViewById(R.id.button1); - buttons[2] = (Button) findViewById(R.id.button2); - - title = (TextView) findViewById(R.id.dialog_title); - message = (TextView) findViewById(R.id.reminder_message); - root = (LinearLayout) findViewById(R.id.dialog_root); - - findViewById(R.id.dismiss).setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - dismiss(); - } - }); - setOwnerActivity(activity); - } - - public AstridDialog setButtonText(int resId, int buttonIndex) { - buttons[buttonIndex].setText(resId); - buttons[buttonIndex].setVisibility(View.VISIBLE); - return this; - } - - public AstridDialog setButtonColor(int color, int buttonIndex) { - buttons[buttonIndex].setBackgroundColor(color); - return this; - } - - public AstridDialog setButtonListener(View.OnClickListener listener, int buttonIndex) { - buttons[buttonIndex].setOnClickListener(listener); - return this; - } - - public void setButtonListeners(View.OnClickListener... listeners) { - int index = 0; - for (View.OnClickListener l : listeners) { - buttons[index].setOnClickListener(l); - index++; - if (index >= buttons.length) { - break; - } - } - } - - public AstridDialog setAstridText(int resId) { - message.setText(resId); - return this; - } - - public AstridDialog setAstridTitle(int resId) { - title.setText(resId); - return this; - } - - public AstridDialog addView(View v, int index) { - root.addView(v, index); - return this; - } - -} diff --git a/astrid/src/main/java/com/todoroo/astrid/ui/FeedbackPromptDialogs.java b/astrid/src/main/java/com/todoroo/astrid/ui/FeedbackPromptDialogs.java deleted file mode 100644 index 18f44ce72..000000000 --- a/astrid/src/main/java/com/todoroo/astrid/ui/FeedbackPromptDialogs.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.todoroo.astrid.ui; - -import android.content.Intent; -import android.net.Uri; -import android.view.View; -import android.widget.Toast; - -import com.todoroo.astrid.activity.AstridActivity; - -import org.tasks.R; - -public class FeedbackPromptDialogs { - - public static void showFeedbackDialog(final AstridActivity activity, boolean positive) { - final AstridDialog d = new AstridDialog(activity, false); - - int titleRes = positive ? R.string.feedback_positive_title : R.string.feedback_negative_title; - int bodyRes = positive ? R.string.feedback_positive_body : R.string.feedback_negative_body; - int buttonRes = positive ? R.string.feedback_positive_button : R.string.feedback_negative_button; - - final String url = positive ? "https://play.google.com/store/apps/details?id=org.tasks&write_review=true" : "http://weloveastrid.com/problem_astrid_android.html"; - - d.setAstridTitle(titleRes) - .setAstridText(bodyRes) - .setButtonText(buttonRes, 0) - .setButtonText(R.string.feedback_not_now, 1) - .setButtonListeners(new View.OnClickListener() { - @Override - public void onClick(View v) { - Intent intent = new Intent(Intent.ACTION_VIEW, - Uri.parse(url)); - try { - activity.startActivity(intent); - } catch (Exception e) { - Toast.makeText(activity, R.string.feedback_activity_error, Toast.LENGTH_LONG).show(); - } - d.dismiss(); - } - }, new View.OnClickListener() { - @Override - public void onClick(View v) { - d.dismiss(); - } - }); - - d.show(); - } - -} diff --git a/astrid/src/main/java/com/todoroo/astrid/ui/TouchInterceptingFrameLayout.java b/astrid/src/main/java/com/todoroo/astrid/ui/TouchInterceptingFrameLayout.java deleted file mode 100644 index 1ca669722..000000000 --- a/astrid/src/main/java/com/todoroo/astrid/ui/TouchInterceptingFrameLayout.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * Copyright (c) 2012 Todoroo Inc - * - * See the file "LICENSE" for the full license governing this code. - */ -package com.todoroo.astrid.ui; - -import android.content.Context; -import android.graphics.Color; -import android.util.AttributeSet; -import android.view.KeyEvent; -import android.widget.FrameLayout; - -public class TouchInterceptingFrameLayout extends FrameLayout { - - public interface InterceptTouchListener { - public boolean didInterceptTouch(KeyEvent event); - } - - private InterceptTouchListener mListener; - - public TouchInterceptingFrameLayout(Context context, AttributeSet attrs) { - super(context, attrs); - setBackgroundColor(Color.TRANSPARENT); - } - - @Override - public boolean dispatchKeyEvent(KeyEvent event) { - if (mListener != null && mListener.didInterceptTouch(event)) { - return true; - } - return super.dispatchKeyEvent(event); - } - - public InterceptTouchListener getInterceptTouchListener() { - return mListener; - } - - public void setInterceptTouchListener(InterceptTouchListener mListener) { - this.mListener = mListener; - } -} diff --git a/astrid/src/main/res/drawable-hdpi/icn_thumbsdown.png b/astrid/src/main/res/drawable-hdpi/icn_thumbsdown.png deleted file mode 100644 index a95a68989153f8b37c44f9653c9aacd67057cfe3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3006 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 CsS;fP diff --git a/astrid/src/main/res/drawable/icn_thumbsdown.png b/astrid/src/main/res/drawable/icn_thumbsdown.png deleted file mode 100644 index 1ff4902e1537ccbb5f0d08c18d42293c96d0856c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2508 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 xUVy8s - - - - - - - - - - - - - - - - -