Remove unused classes, update translations

* AlarmDatabase
* TransitionalAlarm
* AstridDialog
* FeedbackPromptDialogs
* TouchInterceptingFrameLayout
* Update Spanish (judmezago)
pull/46/head
Alex Baker 11 years ago
parent 283423cd27
commit 65f990f927

@ -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<Task> tasks = dao.query(Query.select(Task.ID));
try {
assertEquals(0, tasks.getCount());
} finally {
tasks.close();
}
}
}

@ -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";
}
}
}

@ -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() {

@ -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 <tim@todoroo.com>
*
*/
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<TransitionalAlarm> dao = new DatabaseDao<TransitionalAlarm>(TransitionalAlarm.class, this);
@Override
protected String getName() {
return NAME;
}
@Override
protected int getVersion() {
return VERSION;
}
@Override
public Table[] getTables() {
return TABLES;
}
public DatabaseDao<TransitionalAlarm> 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;
}
}

@ -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 <tim@todoroo.com>
*
*/
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<TransitionalAlarm> cursor) {
this();
readPropertiesFromCursor(cursor);
}
public void readFromCursor(TodorooCursor<TransitionalAlarm> cursor) {
super.readPropertiesFromCursor(cursor);
}
@Override
public long getId() {
return getIdHelper(ID);
};
// --- parcelable helpers
private static final Creator<Task> CREATOR = new ModelCreator<Task>(Task.class);
@Override
protected Creator<? extends AbstractModel> getCreator() {
return CREATOR;
}
}

@ -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;
}
}

@ -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();
}
}

@ -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;
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

@ -1,91 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
** Copyright (c) 2012 Todoroo Inc
**
** See the file "LICENSE" for the full license governing this code.
-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/dialog_root"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="15dip"
android:layout_marginRight="15dip"
android:orientation="horizontal">
<LinearLayout
android:layout_width="260dip"
android:layout_height="fill_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="5dip"
android:layout_marginRight="5dip"
android:layout_marginBottom="20dip"
android:layout_marginLeft="10dip">
<TextView
android:id="@+id/dialog_title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="@android:color/white"
android:layout_weight="1"/>
</LinearLayout>
<include layout="@layout/astrid_speech_bubble"/>
</LinearLayout>
<LinearLayout
android:layout_width="170dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:orientation="vertical">
<ImageView
android:id="@+id/dismiss"
android:layout_width="25dip"
android:layout_height="25dip"
android:scaleType="fitCenter"
android:layout_gravity="right"
android:layout_marginBottom="10dip"
android:src="@drawable/ic_menu_close"/>
<Button
android:id="@+id/button0"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip"
android:layout_marginBottom="10dip"
android:textColor="@android:color/white"
android:textSize="20sp"
android:visibility="gone"
android:background="?attr/asThemeTextColor"/>
<Button
android:id="@+id/button1"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip"
android:layout_marginBottom="10dip"
android:textColor="@android:color/white"
android:textSize="20sp"
android:visibility="gone"
android:background="?attr/asThemeTextColor"/>
<Button
android:id="@+id/button2"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip"
android:layout_marginBottom="10dip"
android:textColor="@android:color/white"
android:textSize="20sp"
android:visibility="gone"
android:background="?attr/asThemeTextColor"/>
</LinearLayout>
</LinearLayout>

@ -1,76 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
** Copyright (c) 2012 Todoroo Inc
**
** See the file "LICENSE" for the full license governing this code.
-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/dialog_root"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="10dip"
android:paddingRight="10dip"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="5dip"
android:layout_marginRight="5dip"
android:layout_marginBottom="20dip"
android:layout_marginLeft="5dip">
<TextView
android:id="@+id/dialog_title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="@android:color/white"
android:layout_weight="1"/>
<ImageView
android:id="@+id/dismiss"
android:layout_width="25dip"
android:layout_height="25dip"
android:scaleType="fitCenter"
android:src="@drawable/ic_menu_close"/>
</LinearLayout>
<include layout="@layout/astrid_speech_bubble"/>
<Button
android:id="@+id/button0"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:layout_marginLeft="5dip"
android:layout_marginRight="5dip"
android:layout_marginBottom="10dip"
android:textColor="@android:color/white"
android:visibility="gone"
android:textSize="20sp"
android:background="?attr/asThemeTextColor"/>
<Button
android:id="@+id/button1"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:layout_marginLeft="5dip"
android:layout_marginRight="5dip"
android:layout_marginBottom="10dip"
android:textColor="@android:color/white"
android:textSize="20sp"
android:visibility="gone"
android:background="?attr/asThemeTextColor"/>
<Button
android:id="@+id/button2"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:layout_marginLeft="5dip"
android:layout_marginRight="5dip"
android:layout_marginBottom="10dip"
android:textColor="@android:color/white"
android:textSize="20sp"
android:visibility="gone"
android:background="?attr/asThemeTextColor"/>
</LinearLayout>

@ -1,76 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
** Copyright (c) 2012 Todoroo Inc
**
** See the file "LICENSE" for the full license governing this code.
-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/dialog_root"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="10dip"
android:paddingRight="10dip"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="5dip"
android:layout_marginRight="5dip"
android:layout_marginBottom="20dip"
android:layout_marginLeft="5dip">
<TextView
android:id="@+id/dialog_title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="@android:color/white"
android:layout_weight="1"/>
<ImageView
android:id="@+id/dismiss"
android:layout_width="25dip"
android:layout_height="25dip"
android:scaleType="fitCenter"
android:src="@drawable/ic_menu_close"/>
</LinearLayout>
<include layout="@layout/astrid_speech_bubble"/>
<Button
android:id="@+id/button0"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:layout_marginLeft="5dip"
android:layout_marginRight="5dip"
android:layout_marginBottom="10dip"
android:textColor="@android:color/white"
android:textSize="20sp"
android:visibility="gone"
android:background="?attr/asThemeTextColor"/>
<Button
android:id="@+id/button1"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:layout_marginLeft="5dip"
android:layout_marginRight="5dip"
android:layout_marginBottom="10dip"
android:textColor="@android:color/white"
android:textSize="20sp"
android:visibility="gone"
android:background="?attr/asThemeTextColor"/>
<Button
android:id="@+id/button2"
android:layout_width="fill_parent"
android:layout_height="35dip"
android:layout_marginLeft="5dip"
android:layout_marginRight="5dip"
android:layout_marginBottom="10dip"
android:textColor="@android:color/white"
android:textSize="20sp"
android:visibility="gone"
android:background="?attr/asThemeTextColor"/>
</LinearLayout>

@ -1,41 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/feedback_banner"
android:layout_width="match_parent"
android:layout_height="43dip"
android:gravity="center_vertical"
android:background="?attr/asThemeTextColor"
android:orientation="horizontal" >
<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginLeft="10dip"
android:gravity="center_vertical"
style="@style/TextAppearance"
android:textSize="14sp"
android:textStyle="bold"
android:textColor="?attr/asTextColorInverse"
android:layout_weight="1"
android:text="@string/feedback_banner_text"/>
<ImageView
android:id="@+id/positiveFeedback"
android:layout_width="24dip"
android:layout_height="26dip"
android:gravity="center"
android:scaleType="fitCenter"
android:layout_marginRight="10dip"
android:src="@drawable/icn_thumbsup"/>
<ImageView
android:id="@+id/negativeFeedback"
android:layout_width="24dip"
android:layout_height="26dip"
android:gravity="center"
android:scaleType="fitCenter"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip"
android:src="@drawable/icn_thumbsdown"/>
</LinearLayout>

@ -257,15 +257,6 @@
<string name="EPr_manage_delete_all_gcal_status">%d Kalendereinträge gelöscht!</string>
<string name="TWi_loading">Ladevorgang …</string>
<string name="WCA_title">Aufgaben zum Anzeigen wählen …</string>
<string name="feedback_positive_title">Tasks bewerten?</string>
<string name="feedback_positive_body">Schön, dass ich helfen konnte. Gibst du mir eine 5-Sterne-Bewertung?</string>
<string name="feedback_negative_title">Bewertung hinterlassen?</string>
<string name="feedback_negative_body">Tut mir leid, dass es ein Problem gibt</string>
<string name="feedback_activity_error">Huch, kann die Berwertungsfunktion des Markets nicht starten. Sie ist vielleicht auf deinem Gerät nicht verfügbar</string>
<string name="feedback_positive_button">Tasks bewerten</string>
<string name="feedback_negative_button">Bewertung hinterlassen</string>
<string name="feedback_not_now">Nicht jetzt</string>
<string name="feedback_banner_text">Wie läuft es mit Tasks?</string>
<string name="task_killer_help">Es scheint Sie benutzen eine Anwendung die Prozesse killen kann (%s)! Falls möglich setzen Sie Tasks auf die Liste der davon ausgenommenen Prozesse damit es nicht gekillt wird. Andernfalls kann Tasks Sie nicht über fällige Tasks informieren.\n</string>
<string name="task_killer_help_ok">Ich werde Tasks nicht killen!</string>
<string name="DB_corrupted_title">Fehler in der Datenbank</string>

@ -237,9 +237,16 @@
</string-array>
<string name="EPr_task_row_style_title">Estilo de fila: %s</string>
<string name="EPr_use_filters_title">Usar filtros</string>
<string name="EPr_use_filters_subtitle">Permite crear filtros personalizados</string>
<string name="EPr_show_quickadd_controls">Controles avanzados de adiciona rápida</string>
<string name="EPr_hide_plus_button">Ocultar botón de adición</string>
<string name="EPr_menu_items">Objetos del menú</string>
<string name="EPr_list_view">Vista de listas</string>
<string name="EPr_show_task_edit_comments">Mostrar comentarios durante la edición de tareas</string>
<string name="EPr_taskRowPrefs_title">Apariencia de la fila de tareas</string>
<string name="EPr_cal_end_or_start_at_due_time">Fecha del evento en calendario</string>
<string name="EPr_cal_end_at_due_time">Terminar eventos de calendario en fecha límite</string>
<string name="EPr_cal_start_at_due_time">Iniciar eventos del calendario en fecha límite</string>
<string name="EPr_force_phone_layout">Usar diseño de teléfono</string>
<string name="EPr_manage_header">Administrar tareas antiguas</string>
<string name="EPr_manage_delete_completed">Borrar tareas completadas</string>
@ -269,6 +276,7 @@ Tasks podría no avisarle cuanto venza una tarea.\n</string>
<string name="DB_corrupted_body">\"¡Oh-oh! Es posible que tu base de datos esté corrupta. Si ves éste error con frecuencia, te sugerimos que limpies toda la información (Configuración-&gt;Sincronización y respaldos-&gt;Administrar tareas pasadas-&gt;Limpiar toda la información) y recuperar tus tareas de un respaldo (Configuración-&gt;Sincronización y respaldos-&gt;Respaldos-&gt;Importar tareas) en Tasks.\"</string>
<string name="market_unavailable">Desafortunadamente el Market no está disponible para tu sistema</string>
<string name="EPr_defaults_header">Configuración por defecto de nuevas tareas.</string>
<string name="EPr_defaults_summary">Prioridad, fecha limite, añadir al calendario</string>
<string name="EPr_default_urgency_title">Fecha límite por defecto</string>
<string name="EPr_default_urgency_desc">Actualmente: %s</string>
<string name="EPr_default_importance_title">Prioridad predeterminada</string>
@ -317,6 +325,7 @@ Tasks podría no avisarle cuanto venza una tarea.\n</string>
<string name="CFA_type_intersect">también</string>
<string name="CFA_context_chain">%s cumple el criterio</string>
<string name="CFA_context_delete">Eliminar fila</string>
<string name="CFA_help">Mantén presionado un ítem para ver opciones adicionales</string>
<string name="CFA_button_add">Añadir Criterio</string>
<string name="CFA_button_view">Ver</string>
<string name="CFA_button_save">Guardar &amp; ver</string>
@ -331,6 +340,7 @@ Tasks podría no avisarle cuanto venza una tarea.\n</string>
<item>Próxima semana</item>
<item>Próximo mes</item>
</string-array>
<string name="CFC_importance_text">¿Prioridad mínima?</string>
<string name="CFC_importance_name">Prioridad...</string>
<string name="CFC_tag_text">Lista: ?</string>
<string name="CFC_tag_name">Lista...</string>
@ -426,6 +436,7 @@ Tasks podría no avisarle cuanto venza una tarea.\n</string>
<string name="p_files_dir_desc">Archivos adjuntos de tareas guardados en: %s</string>
<string name="p_files_dir_desc_default">Directorio predeterminado</string>
<string name="premium_speech_bubble_2">¡Ordena un año y ahorra un 25%%!</string>
<string name="TEA_reminders_group_label">Recordar configuración</string>
<string name="TEA_reminder_label">Recordarme:</string>
<string name="TEA_reminder_due">Cuando la tarea es finalizada</string>
<string name="TEA_reminder_overdue">Cuando la tarea está retrasada</string>
@ -434,6 +445,12 @@ Tasks podría no avisarle cuanto venza una tarea.\n</string>
<string name="TEA_reminder_mode_once">Una vez</string>
<string name="TEA_reminder_mode_five">Cinco veces</string>
<string name="TEA_reminder_mode_nonstop">Hasta que cancele la alarma</string>
<string name="TEA_reminder_when">cuando</string>
<string name="TEA_reminder_due_short">límite</string>
<string name="TEA_reminder_overdue_short">retrasado</string>
<string name="TEA_reminder_randomly_short">aleatoriamente</string>
<string name="TEA_reminder_display_one">Recordarme %s</string>
<string name="TEA_reminder_display_multiple">Recordar %s</string>
<string-array name="TEA_reminder_random">
<item>una hora</item>
<item>un día</item>
@ -595,6 +612,7 @@ Tasks podría no avisarle cuanto venza una tarea.\n</string>
<string name="repeat_enabled">Repeticiones</string>
<string name="repeat_every">Cada %d</string>
<string name="repeat_interval_prompt">Intervalo de repetición</string>
<string name="repeat_never">Sin repetir</string>
<string name="repeat_dont">No repetir</string>
<string-array name="repeat_interval_short">
<item>d</item>
@ -650,6 +668,7 @@ Tasks podría no avisarle cuanto venza una tarea.\n</string>
<string name="tag_no_title_error">Por favor, ¡introduce un nombre para la primera lista!</string>
<string name="tag_FEx_add_new">Nueva</string>
<string name="tag_FEx_header">Listas</string>
<string name="tag_FEx_untagged">Sin Categoría</string>
<string name="tag_cm_rename">Renombrar lista</string>
<string name="tag_cm_delete">Eliminar lista</string>
<string name="DLG_delete_this_tag_question">¿Eliminar esta lista: %s? (Ninguna tarea será eliminada.)</string>

@ -266,15 +266,6 @@
<string name="AOA_internal_author">L\'équipe d\'Tasks</string>
<string name="TWi_loading">Chargement…</string>
<string name="WCA_title">Sélectionnez les tâches à afficher…</string>
<string name="feedback_positive_title">Evaluer Tasks ?</string>
<string name="feedback_positive_body">Content de savoir que je suis utile ! Prenez un instant pour nous donner 5 étoiles </string>
<string name="feedback_negative_title">Laisser un avis?</string>
<string name="feedback_negative_body">Désolé de voir que vous avez des problèmes</string>
<string name="feedback_activity_error">Oups ! Nous n\'avons pas pu lancer la section commentaires -- ce n\'est peut-être pas disponible sur votre appareil</string>
<string name="feedback_positive_button">Evaluer Tasks</string>
<string name="feedback_negative_button">Laisser un avis</string>
<string name="feedback_not_now">Plus tard</string>
<string name="feedback_banner_text">Comment fonctionne Tasks pour vous?</string>
<string name="task_killer_help">Il semble que vous utilisiez un logiciel capable de fermer les processus (%s) ! Si vous pouvez, ajoutez Tasks à la liste d\'exception afin qu\'il ne soit pas fermé. Sinon, Tasks ne pourra probablement pas vous avertir lorsque vos tâches seront dues.\n</string>
<string name="task_killer_help_ok">Je n\'éliminerai pas Tasks !</string>
<string name="DB_corrupted_title">Base de donnée corrompue</string>

@ -272,15 +272,6 @@
<string name="AOA_internal_author">아스트리드 팀</string>
<string name="TWi_loading">로드 중…</string>
<string name="WCA_title">열람할 일정 선택...</string>
<string name="feedback_positive_title">평가할까요?</string>
<string name="feedback_positive_body">도움이 되었다니 기쁘네요! 평가를 위해 잠시 시간을 내주실래요?</string>
<string name="feedback_negative_title">피드백을 남길까요?</string>
<string name="feedback_negative_body">문제가 있다니 미안합니다</string>
<string name="feedback_activity_error">마켓의 피드백 부분을 열수가 없습니다--당신의 기기에서 이용할 수 없는 것 같습니다.</string>
<string name="feedback_positive_button">아스트리드 평가하기</string>
<string name="feedback_negative_button">피드백 남기기</string>
<string name="feedback_not_now">지금은 안 됨</string>
<string name="feedback_banner_text">당신에게 아스트리드는 어땠습니까?</string>
<string name="task_killer_help">프로세스(%s)를 강제종료할 수 있는 앱을 사용하고 있는 것 같습니다!
가능하면 강제종료되지 않도록 제외목록에 포함시켜 주시기바랍니다.
강제종료시 일정이 완료되어도 알려줄 수 없습니다.\n</string>

@ -265,15 +265,6 @@
<string name="EPr_manage_delete_all_gcal_status">%d agenda-items verwijderd!</string>
<string name="TWi_loading">Laden…</string>
<string name="WCA_title">Selecteer weer te geven taken...</string>
<string name="feedback_positive_title">Beoordeel Tasks?</string>
<string name="feedback_positive_body">Fijn dat ik kon helpen! Heb je een momentje om ons een 5-ster waardering te geven?</string>
<string name="feedback_negative_title">Geef feedback?</string>
<string name="feedback_negative_body">Jammer te horen dat we problemen hebben</string>
<string name="feedback_activity_error">Oeps! Het is niet gelukt om de market review sectie te starten--mogelijk is het niet beschikbaar op je apparaat.</string>
<string name="feedback_positive_button">Beoordeel Tasks</string>
<string name="feedback_negative_button">Geef feedback</string>
<string name="feedback_not_now">Niet nu</string>
<string name="feedback_banner_text">Hoe werkt Tasks voor jou?</string>
<string name="task_killer_help">U gebruikt waarschijnlijk een applicatie die processen kan afsluiten (%s)! Voeg Tasks indien mogelijk toe aan de lijst met uitgezonderde programma\'s. Als u dit niet doet kan Tasks u niet helpen met taken herinneren!\n</string>
<string name="task_killer_help_ok">Tasks niet afsluiten</string>
<string name="DB_corrupted_title">Database Corrupt</string>

@ -258,9 +258,6 @@
<string name="AOA_internal_author">Zespół Tasks</string>
<string name="TWi_loading">Ładowanie...</string>
<string name="WCA_title">Wybierz zadania do wyświetlenia</string>
<string name="feedback_positive_title">Ocenić Tasks?</string>
<string name="feedback_positive_body">Cieszę się, że mogłem pomóc! Masz chwilę aby pomóc nam pięciogwiazdkową oceną?</string>
<string name="feedback_not_now">Nie teraz</string>
<string name="task_killer_help">Wygląda na to, że używasz aplikacji, która zabija procesy (%s)! Jeśli możesz, dodaj Tasks do listy wyjątków. Nieaktywny program Tasks nie będzie Ci przypominać o zadaniach do wykonania.\n</string>
<string name="task_killer_help_ok">Nie zabiję Tasks!</string>
<string name="DB_corrupted_title">Uszkodzona baza danych</string>

@ -261,8 +261,6 @@
<string name="AOA_internal_author">Команда Tasks</string>
<string name="TWi_loading">Загрузка...</string>
<string name="WCA_title">Выберите задачи для просмотра…</string>
<string name="feedback_positive_title">Уровень задачи</string>
<string name="feedback_banner_text">Как задачи работают для Вас?</string>
<string name="task_killer_help">Возможно вы используете менеджер задач (%s). По возможности добавьте Tasks в список исключений иначе возможны сложности с напоминаниями.\n</string>
<string name="task_killer_help_ok">Я не хочу убивать Tasks!</string>
<string name="DB_corrupted_title">Поврежденная база данных</string>

@ -267,15 +267,6 @@
<string name="AOA_internal_author">Команда Tasks</string>
<string name="TWi_loading">Завантаження...</string>
<string name="WCA_title">Виберіть завдання для перегляду...</string>
<string name="feedback_positive_title">Оцінити Tasks?</string>
<string name="feedback_positive_body">Приємно бути корисним! Допоможіть нам 5-ма зірками рейтингу?</string>
<string name="feedback_negative_title">Залишити відгук?</string>
<string name="feedback_negative_body">Сумно чути, що у Вас проблеми</string>
<string name="feedback_activity_error">Упс! Ми не можемо запустити розділ для коментарів на вашому пристрої</string>
<string name="feedback_positive_button">Оцінити Tasks</string>
<string name="feedback_negative_button">Залишити відгук</string>
<string name="feedback_not_now">Не зараз</string>
<string name="feedback_banner_text">Як Tasks працює для вас?</string>
<string name="task_killer_help">Можливо ви використовуєте менеджер завдань (%s)!
По можливості додайте Tasks в список виключень,
інакше можливі складнощі з нагадуваннями. \n</string>

@ -614,24 +614,6 @@
<!-- ============================================================= Misc == -->
<string name="feedback_positive_title">Rate Tasks?</string>
<string name="feedback_positive_body">Glad I\'m helpful! Got a moment to help us with a 5-star rating?</string>
<string name="feedback_negative_title">Leave feedback?</string>
<string name="feedback_negative_body">Sorry to hear that we\'re having issues</string>
<string name="feedback_activity_error">Oops! We weren\'t able to launch the market feedback section--it might not be available on your device.</string>
<string name="feedback_positive_button">Rate Tasks</string>
<string name="feedback_negative_button">Leave feedback</string>
<string name="feedback_not_now">Not now</string>
<string name="feedback_banner_text">How\'s Tasks working for you?</string>
<!-- Displayed when task killer found. %s => name of the application -->
<string name="task_killer_help">
It looks like you are using an app that can kill processes (%s)! If you can,

Loading…
Cancel
Save