diff --git a/src/main/AndroidManifest.xml b/src/main/AndroidManifest.xml
index ada723af3..fc1f6ee25 100644
--- a/src/main/AndroidManifest.xml
+++ b/src/main/AndroidManifest.xml
@@ -414,6 +414,10 @@
+
+
diff --git a/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java b/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java
index 7b68afb11..edda4a87a 100755
--- a/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java
+++ b/src/main/java/com/todoroo/astrid/activity/TaskEditFragment.java
@@ -75,6 +75,7 @@ import com.todoroo.astrid.utility.Flags;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.tasks.R;
+import org.tasks.activities.CalendarSelectionDialog;
import org.tasks.activities.LocationPickerActivity;
import org.tasks.activities.TimePickerActivity;
import org.tasks.dialogs.DialogBuilder;
@@ -150,7 +151,6 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
public static final int REQUEST_CODE_RECORD = 30;
public static final int REQUEST_CODE_ATTACH_FILE = 40;
- public static final int REQUEST_CODE_BEAST_MODE = 50;
// --- result codes
@@ -186,6 +186,7 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
private EditNoteActivity editNotes;
private HideUntilControlSet hideUntilControls;
private ReminderControlSet reminderControlSet;
+ private GCalControlSet gcalControl;
@InjectView(R.id.title) EditText title;
@InjectView(R.id.pager) ViewPager mPager;
@@ -358,7 +359,7 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
RepeatControlSet repeatControls = new RepeatControlSet(preferences, getActivity(), dialogBuilder);
controlSetMap.put(getString(R.string.TEA_ctrl_repeat_pref), repeatControls);
- GCalControlSet gcalControl = new GCalControlSet(gcalHelper, getActivity());
+ gcalControl = new GCalControlSet(gcalHelper, preferences, this);
controlSetMap.put(getString(R.string.TEA_ctrl_gcal), gcalControl);
// The deadline control set contains the repeat controls and the
@@ -406,7 +407,7 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
controls.add(filesControlSet);
controlSetMap.put(getString(R.string.TEA_ctrl_files_pref), filesControlSet);
- loadEditPageOrder(false);
+ loadEditPageOrder();
if (!showEditComments) {
commentsBar.setVisibility(View.GONE);
@@ -419,11 +420,7 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
new TaskEditBackgroundLoader().start();
}
- private void loadEditPageOrder(boolean removeViews) {
- if (removeViews) {
- basicControls.removeAllViews();
- }
-
+ private void loadEditPageOrder() {
ArrayList controlOrder = BeastModePreferences.constructOrderedControlList(preferences, getActivity());
String[] itemOrder = controlOrder.toArray(new String[controlOrder.size()]);
@@ -935,10 +932,6 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
createNewFileAttachment(recordedAudioPath, recordedAudioName, TaskAttachment.FILE_TYPE_AUDIO + "m4a"); //$NON-NLS-1$
} else if (requestCode == REQUEST_CODE_ATTACH_FILE && resultCode == Activity.RESULT_OK) {
attachFile(data.getStringExtra(FileExplore.RESULT_FILE_SELECTED));
- } else if (requestCode == REQUEST_CODE_BEAST_MODE) {
- loadEditPageOrder(true);
- new TaskEditBackgroundLoader().start();
- return;
}
actFmCameraModule.activityResult(requestCode, resultCode, data, new CameraResultCallback() {
diff --git a/src/main/java/com/todoroo/astrid/core/DefaultsPreferences.java b/src/main/java/com/todoroo/astrid/core/DefaultsPreferences.java
index c11ce705f..605fd1996 100644
--- a/src/main/java/com/todoroo/astrid/core/DefaultsPreferences.java
+++ b/src/main/java/com/todoroo/astrid/core/DefaultsPreferences.java
@@ -5,22 +5,19 @@
*/
package com.todoroo.astrid.core;
-import android.content.res.Resources;
+import android.content.Intent;
import android.os.Bundle;
-import android.preference.ListPreference;
import android.preference.Preference;
-import com.todoroo.andlib.utility.AndroidUtilities;
+import com.todoroo.astrid.gcal.AndroidCalendar;
import com.todoroo.astrid.gcal.GCalHelper;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import org.tasks.R;
+import org.tasks.activities.CalendarSelectionActivity;
import org.tasks.injection.InjectingPreferenceActivity;
import org.tasks.preferences.Preferences;
-import java.util.ArrayList;
-import java.util.Arrays;
+import java.util.List;
import javax.inject.Inject;
@@ -32,10 +29,11 @@ import javax.inject.Inject;
*/
public class DefaultsPreferences extends InjectingPreferenceActivity {
- private static final Logger log = LoggerFactory.getLogger(DefaultsPreferences.class);
+ private static final int REQUEST_CALENDAR_SELECTION = 10412;
@Inject Preferences preferences;
@Inject GCalHelper calendarHelper;
+ private Preference defaultCalendarPref;
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -43,85 +41,36 @@ public class DefaultsPreferences extends InjectingPreferenceActivity {
addPreferencesFromResource(R.xml.preferences_defaults);
- Preference defaultCalendarPref = findPreference(getString(R.string.gcal_p_default));
- try {
- initCalendarsPreference((ListPreference) defaultCalendarPref);
- } catch(Exception e) {
- log.error(e.getMessage(), e);
- }
- }
-
- private void setCalendarSummary(Object value) {
- ListPreference listPreference = (ListPreference) findPreference(getString(R.string.gcal_p_default));
- int index = AndroidUtilities.indexOf(listPreference.getEntryValues(), value);
- String setting = listPreference.getEntries()[index].toString();
- listPreference.setSummary(setting);
+ defaultCalendarPref = findPreference(getString(R.string.gcal_p_default));
+ defaultCalendarPref.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
+ @Override
+ public boolean onPreferenceClick(Preference preference) {
+ startActivityForResult(new Intent(DefaultsPreferences.this, CalendarSelectionActivity.class), REQUEST_CALENDAR_SELECTION);
+ return false;
+ }
+ });
+ setCalendarSummary(preferences.getStringValue(R.string.gcal_p_default));
}
- /**
- * Appends all user-modifiable calendars to listPreference.
- *
- * @param listPreference
- * preference to init
- */
- private void initCalendarsPreference(ListPreference listPreference) {
- Resources r = getResources();
- GCalHelper.CalendarResult calendars = calendarHelper.getCalendars();
-
- // Fetch the current setting. Invalid calendar id will
- // be changed to default value.
- String currentSetting = preferences.getStringValue(R.string.gcal_p_default);
-
- int currentSettingIndex = -1;
-
- ArrayList entries = new ArrayList<>();
- entries.addAll(Arrays.asList(r.getStringArray(R.array.EPr_default_addtocalendar)));
- entries.addAll(Arrays.asList(calendars.calendars));
-
- ArrayList entryValues = new ArrayList<>();
- entryValues.addAll(Arrays.asList(r.getStringArray(R.array.EPr_default_addtocalendar_values)));
- entryValues.addAll(Arrays.asList(calendars.calendarIds));
-
- listPreference.setEntries(entries.toArray(new CharSequence[entries.size()]));
- listPreference.setEntryValues(entryValues.toArray(new CharSequence[entryValues.size()]));
-
- listPreference.setValueIndex(0);
- listPreference.setEnabled(true);
-
- if (calendars.calendarIds.length == 0 || calendars.calendars.length == 0) {
- // Something went wrong when querying calendars
- // Leave the preference at disabled.
- return;
- }
-
- // Iterate calendars one by one, and fill up the list preference
- if (currentSetting != null) {
- for (int i=0; i calendars = calendarHelper.getCalendars();
+ for (AndroidCalendar calendar : calendars) {
+ if (calendar.getId().equals(calendarId)) {
+ defaultCalendarPref.setSummary(calendar.getName());
+ return;
}
}
+ defaultCalendarPref.setSummary(getString(R.string.none));
+ }
- if(currentSettingIndex == -1 || currentSettingIndex > calendars.calendarIds.length+1) {
- // Should not happen!
- // Leave the preference at disabled.
- log.debug("initCalendarsPreference: Unknown calendar.");
- currentSettingIndex = 0;
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+ if (requestCode == REQUEST_CALENDAR_SELECTION && resultCode == RESULT_OK) {
+ String calendarId = data.getStringExtra(CalendarSelectionActivity.EXTRA_CALENDAR_ID);
+ preferences.setString(R.string.gcal_p_default, calendarId);
+ setCalendarSummary(calendarId);
+ } else {
+ super.onActivityResult(requestCode, resultCode, data);
}
-
- listPreference.setValueIndex(currentSettingIndex);
- listPreference.setEnabled(true);
-
- listPreference.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
- @Override
- public boolean onPreferenceChange(Preference preference, Object newValue) {
- setCalendarSummary(newValue);
- return true;
- }
- });
- setCalendarSummary(listPreference.getValue());
}
}
diff --git a/src/main/java/com/todoroo/astrid/gcal/AndroidCalendar.java b/src/main/java/com/todoroo/astrid/gcal/AndroidCalendar.java
new file mode 100644
index 000000000..09c8555cd
--- /dev/null
+++ b/src/main/java/com/todoroo/astrid/gcal/AndroidCalendar.java
@@ -0,0 +1,21 @@
+package com.todoroo.astrid.gcal;
+
+public class AndroidCalendar {
+ private final String id;
+ private final String name;
+
+ public static final AndroidCalendar NONE = new AndroidCalendar("-1", "NONE");
+
+ public AndroidCalendar(String id, String name) {
+ this.id = id;
+ this.name = name;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public String getName() {
+ return name;
+ }
+}
diff --git a/src/main/java/com/todoroo/astrid/gcal/GCalControlSet.java b/src/main/java/com/todoroo/astrid/gcal/GCalControlSet.java
index 3c781ca74..0118a4b3c 100644
--- a/src/main/java/com/todoroo/astrid/gcal/GCalControlSet.java
+++ b/src/main/java/com/todoroo/astrid/gcal/GCalControlSet.java
@@ -10,26 +10,24 @@ import android.content.ContentValues;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
-import android.support.v4.app.FragmentActivity;
+import android.support.v4.app.FragmentManager;
import android.text.TextUtils;
import android.view.View;
import android.view.View.OnClickListener;
-import android.widget.AdapterView;
-import android.widget.AdapterView.OnItemSelectedListener;
-import android.widget.ArrayAdapter;
-import android.widget.Spinner;
+import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
+import com.todoroo.astrid.activity.TaskEditFragment;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.helper.TaskEditControlSetBase;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.tasks.R;
-
-import java.util.ArrayList;
-import java.util.Collections;
+import org.tasks.activities.CalendarSelectionDialog;
+import org.tasks.preferences.Preferences;
+import org.tasks.reminders.SnoozeDialog;
/**
* Control Set for managing repeats
@@ -37,63 +35,59 @@ import java.util.Collections;
* @author Tim Su
*
*/
-public class GCalControlSet extends TaskEditControlSetBase {
+public class GCalControlSet extends TaskEditControlSetBase implements CalendarSelectionDialog.CalendarSelectionHandler {
private static final Logger log = LoggerFactory.getLogger(GCalControlSet.class);
- private static final int title = R.string.gcal_TEA_addToCalendar_label;
+ private static final String FRAG_TAG_CALENDAR_SELECTION = "frag_tag_calendar_selection";
// --- instance variables
private final GCalHelper gcal;
+ private Preferences preferences;
+ private final TaskEditFragment taskEditFragment;
private Uri calendarUri = null;
- private final GCalHelper.CalendarResult calendars;
private boolean hasEvent = false;
- private Spinner calendarSelector;
private TextView calendar;
+ private ImageView cancelButton;
+ private String calendarId;
+ private String calendarName;
- public GCalControlSet(GCalHelper gcal, final FragmentActivity activity) {
- super(activity, R.layout.control_set_gcal_display);
+ public GCalControlSet(GCalHelper gcal, Preferences preferences, TaskEditFragment taskEditFragment) {
+ super(taskEditFragment.getActivity(), R.layout.control_set_gcal_display);
this.gcal = gcal;
- this.calendars = gcal.getCalendars();
+ this.preferences = preferences;
+ this.taskEditFragment = taskEditFragment;
}
@Override
protected void afterInflate() {
- calendarSelector = (Spinner) getView().findViewById(R.id.calendars);
- calendar = (TextView) getView().findViewById(R.id.calendar_display_which);
+ View view = getView();
+ calendar = (TextView) view.findViewById(R.id.calendar_display_which);
+ cancelButton = (ImageView) view.findViewById(R.id.clear_calendar);
calendar.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
- if (!hasEvent) {
- calendarSelector.performClick();
- } else {
+ if (hasEvent) {
viewCalendarEvent();
+ } else {
+ FragmentManager fragmentManager = taskEditFragment.getFragmentManager();
+ CalendarSelectionDialog fragmentByTag = (CalendarSelectionDialog) fragmentManager.findFragmentByTag(FRAG_TAG_CALENDAR_SELECTION);
+ if (fragmentByTag == null) {
+ fragmentByTag = new CalendarSelectionDialog();
+ fragmentByTag.show(fragmentManager, FRAG_TAG_CALENDAR_SELECTION);
+ }
+ fragmentByTag.setCalendarSelectionHandler(GCalControlSet.this);
}
}
});
- ArrayList items = new ArrayList<>();
- Collections.addAll(items, calendars.calendars);
- items.add(0, activity.getString(R.string.gcal_TEA_nocal));
-
- ArrayAdapter adapter = new ArrayAdapter<>(activity,
- android.R.layout.simple_spinner_item, items.toArray(new String[items.size()]));
-
- adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
- calendarSelector.setPromptId(title);
- calendarSelector.setAdapter(adapter);
- resetCalendarSelector();
- calendarSelector.setOnItemSelectedListener(new OnItemSelectedListener() {
+ cancelButton.setOnClickListener(new OnClickListener() {
@Override
- public void onItemSelected(AdapterView> arg0, View arg1, int arg2, long arg3) {
+ public void onClick(View v) {
+ clearEvent();
refreshDisplayView();
}
-
- @Override
- public void onNothingSelected(AdapterView> arg0) {
- //nothing
- }
});
}
@@ -111,28 +105,28 @@ public class GCalControlSet extends TaskEditControlSetBase {
boolean deleted = cursor.getCount() == 0;
if(deleted) {
- calendarUri = null;
- return;
+ clearEvent();
+ hasEvent = false;
+ } else {
+ hasEvent = true;
}
} finally {
cursor.close();
}
-
- hasEvent = true;
} catch (Exception e) {
log.error("unable-to-parse-calendar: " + model.getCalendarURI(), e);
}
} else {
hasEvent = false;
- calendarUri = null;
+ clearEvent();
}
refreshDisplayView();
}
- public void resetCalendarSelector() {
- if (calendarSelector != null) {
- calendarSelector.setSelection(calendars.defaultIndex + 1); // plus 1 for the no selection item
- }
+ private void clearEvent() {
+ calendarId = null;
+ calendarUri = null;
+ calendarName = null;
}
@Override
@@ -141,21 +135,17 @@ public class GCalControlSet extends TaskEditControlSetBase {
return;
}
- if ((gcal.isDefaultCalendarSet() || calendarSelector.getSelectedItemPosition() != 0) &&
- calendarUri == null) {
-
+ if ((preferences.isDefaultCalendarSet() || calendarId != null) && calendarUri == null) {
try{
ContentResolver cr = activity.getContentResolver();
ContentValues values = new ContentValues();
- String calendarId = calendars.calendarIds[calendarSelector.getSelectedItemPosition() - 1];
values.put("calendar_id", calendarId);
-
calendarUri = gcal.createTaskEvent(task, cr, values);
if(calendarUri != null) {
task.setCalendarUri(calendarUri.toString());
- if (calendarSelector.getSelectedItemPosition() != 0 && !hasEvent) {
+ if (!hasEvent) {
// pop up the new event
Intent intent = new Intent(Intent.ACTION_VIEW, calendarUri);
intent.putExtra("beginTime", values.getAsLong("dtstart"));
@@ -197,7 +187,7 @@ public class GCalControlSet extends TaskEditControlSetBase {
}
ContentResolver cr = activity.getContentResolver();
- Intent intent = new Intent(Intent.ACTION_EDIT, calendarUri);
+ Intent intent = new Intent(Intent.ACTION_VIEW, calendarUri);
Cursor cursor = cr.query(calendarUri, new String[] { "dtstart", "dtend" },
null, null, null);
try {
@@ -226,21 +216,22 @@ public class GCalControlSet extends TaskEditControlSetBase {
if (initialized) {
if (hasEvent) {
calendar.setText(R.string.gcal_TEA_showCalendar_label);
- } else if (calendarSelector.getSelectedItemPosition() != 0) {
- calendar.setText((String)calendarSelector.getSelectedItem());
+ cancelButton.setVisibility(View.GONE);
+ } else if (calendarName != null) {
+ calendar.setText(calendarName);
+ cancelButton.setVisibility(View.VISIBLE);
} else {
calendar.setTextColor(unsetColor);
- calendar.setText(R.string.gcal_TEA_none_selected);
+ calendar.setText(R.string.gcal_TEA_addToCalendar_label);
+ cancelButton.setVisibility(View.GONE);
}
} else {
- int index = calendars.defaultIndex;
- if (!TextUtils.isEmpty(model.getCalendarURI())) {
- calendar.setText(R.string.gcal_TEA_showCalendar_label);
- } else if (index >= 0 && index < calendars.calendars.length) {
- calendar.setText(calendars.calendars[index]);
- } else {
+ cancelButton.setVisibility(View.GONE);
+ if (TextUtils.isEmpty(model.getCalendarURI())) {
calendar.setTextColor(unsetColor);
- calendar.setText(R.string.gcal_TEA_none_selected);
+ calendar.setText(R.string.gcal_TEA_addToCalendar_label);
+ } else {
+ calendar.setText(R.string.gcal_TEA_showCalendar_label);
}
}
}
@@ -249,4 +240,16 @@ public class GCalControlSet extends TaskEditControlSetBase {
public int getIcon() {
return R.drawable.ic_event_24dp;
}
+
+ @Override
+ public void selectedCalendar(AndroidCalendar androidCalendar) {
+ this.calendarId = androidCalendar.getId();
+ this.calendarName = androidCalendar.getName();
+ refreshDisplayView();
+ }
+
+ @Override
+ public void dismiss() {
+
+ }
}
diff --git a/src/main/java/com/todoroo/astrid/gcal/GCalHelper.java b/src/main/java/com/todoroo/astrid/gcal/GCalHelper.java
index edc2730f5..01a3ad4ca 100644
--- a/src/main/java/com/todoroo/astrid/gcal/GCalHelper.java
+++ b/src/main/java/com/todoroo/astrid/gcal/GCalHelper.java
@@ -8,7 +8,6 @@ package com.todoroo.astrid.gcal;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.content.Context;
-import android.content.res.Resources;
import android.database.Cursor;
import android.database.CursorIndexOutOfBoundsException;
import android.net.Uri;
@@ -25,6 +24,8 @@ import org.tasks.R;
import org.tasks.injection.ForApplication;
import org.tasks.preferences.Preferences;
+import java.util.ArrayList;
+import java.util.List;
import java.util.TimeZone;
import javax.inject.Inject;
@@ -75,16 +76,8 @@ public class GCalHelper {
createTaskEventIfEnabled(t, true);
}
- public boolean isDefaultCalendarSet() {
- return getDefaultCalendar() != null && !getDefaultCalendar().equals("-1") && !getDefaultCalendar().equals("0");
- }
-
- private String getDefaultCalendar() {
- return preferences.getStringValue(R.string.gcal_p_default);
- }
-
private void createTaskEventIfEnabled(Task t, boolean deleteEventIfExists) {
- if (isDefaultCalendarSet()) {
+ if (preferences.isDefaultCalendarSet()) {
ContentResolver cr = context.getContentResolver();
Uri calendarUri = createTaskEvent(t, cr, new ContentValues(), deleteEventIfExists);
if (calendarUri != null) {
@@ -116,7 +109,7 @@ public class GCalHelper {
boolean valuesContainCalendarId = (values.containsKey(CALENDAR_ID_COLUMN) &&
!TextUtils.isEmpty(values.getAsString(CALENDAR_ID_COLUMN)));
if (!valuesContainCalendarId) {
- String calendarId = getDefaultCalendar();
+ String calendarId = preferences.getDefaultCalendar();
if (!TextUtils.isEmpty(calendarId)) {
values.put("calendar_id", calendarId);
}
@@ -157,7 +150,7 @@ public class GCalHelper {
}
private static String getCalendarId(Uri uri, ContentResolver cr) {
- Cursor calendar = cr.query(uri, new String[] { CALENDAR_ID_COLUMN }, null, null, null);
+ Cursor calendar = cr.query(uri, new String[]{CALENDAR_ID_COLUMN}, null, null, null);
try {
calendar.moveToFirst();
return calendar.getString(0);
@@ -253,71 +246,31 @@ public class GCalHelper {
}
}
- public static class CalendarResult {
- /** calendar names */
- public String[] calendars;
-
- /** calendar ids. null entry -> use default */
- public String[] calendarIds;
-
- /** default selection index */
- public int defaultIndex = -1;
- }
-
/**
* Appends all user-modifiable calendars to listPreference.
*/
- public CalendarResult getCalendars() {
+ public List getCalendars() {
ContentResolver cr = context.getContentResolver();
- Resources r = context.getResources();
Cursor c = cr.query(getCalendarContentUri(Calendars.CALENDAR_CONTENT_CALENDARS), Calendars.CALENDARS_PROJECTION,
Calendars.CALENDARS_WHERE, null, Calendars.CALENDARS_SORT);
try {
- // Fetch the current setting. Invalid calendar id will
- // be changed to default value.
- String defaultSetting = getDefaultCalendar();
-
- CalendarResult result = new CalendarResult();
+ List calendars = new ArrayList<>();
if (c == null || c.getCount() == 0) {
// Something went wrong when querying calendars. Only offer them
// the system default choice
- result.calendars = new String[] {
- r.getString(R.string.gcal_GCP_default) };
- result.calendarIds = new String[] { null };
- result.defaultIndex = 0;
- return result;
+ return calendars;
}
- int calendarCount = c.getCount();
-
- result.calendars = new String[calendarCount];
- result.calendarIds = new String[calendarCount];
-
- // Iterate calendars one by one, and fill up the list preference
- int row = 0;
int idColumn = c.getColumnIndex(Calendars.ID_COLUMN_NAME);
int nameColumn = c.getColumnIndex(Calendars.CALENDARS_DISPLAY_COL);
while (c.moveToNext()) {
String id = c.getString(idColumn);
String name = c.getString(nameColumn);
- result.calendars[row] = name;
- result.calendarIds[row] = id;
-
- // We found currently selected calendar
- if (defaultSetting != null && defaultSetting.equals(id)) {
- result.defaultIndex = row;
- }
-
- row++;
- }
-
- if (result.defaultIndex >= calendarCount) {
- result.defaultIndex = 0;
+ calendars.add(new AndroidCalendar(id, name));
}
-
- return result;
+ return calendars;
} finally {
if(c != null) {
c.close();
diff --git a/src/main/java/com/todoroo/astrid/service/TaskCreator.java b/src/main/java/com/todoroo/astrid/service/TaskCreator.java
index 11add37a6..35d52be2a 100644
--- a/src/main/java/com/todoroo/astrid/service/TaskCreator.java
+++ b/src/main/java/com/todoroo/astrid/service/TaskCreator.java
@@ -10,6 +10,7 @@ import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.gcal.GCalHelper;
import org.tasks.injection.ForApplication;
+import org.tasks.preferences.Preferences;
import javax.inject.Inject;
@@ -18,12 +19,15 @@ public class TaskCreator {
private final Context context;
private final TaskService taskService;
private final GCalHelper gcalHelper;
+ private Preferences preferences;
@Inject
- public TaskCreator(@ForApplication Context context, TaskService taskService, GCalHelper gcalHelper) {
+ public TaskCreator(@ForApplication Context context, TaskService taskService,
+ GCalHelper gcalHelper, Preferences preferences) {
this.context = context;
this.taskService = taskService;
this.gcalHelper = gcalHelper;
+ this.preferences = preferences;
}
public Task basicQuickAddTask(String title) {
@@ -40,7 +44,7 @@ public class TaskCreator {
}
public void addToCalendar(Task task, String title) {
- boolean gcalCreateEventEnabled = gcalHelper.isDefaultCalendarSet() && task.hasDueDate(); //$NON-NLS-1$
+ boolean gcalCreateEventEnabled = preferences.isDefaultCalendarSet() && task.hasDueDate(); //$NON-NLS-1$
if (!TextUtils.isEmpty(title) && gcalCreateEventEnabled && TextUtils.isEmpty(task.getCalendarURI())) {
Uri calendarUri = gcalHelper.createTaskEvent(task,
context.getContentResolver(), new ContentValues());
diff --git a/src/main/java/org/tasks/activities/CalendarSelectionActivity.java b/src/main/java/org/tasks/activities/CalendarSelectionActivity.java
new file mode 100644
index 000000000..b0b103388
--- /dev/null
+++ b/src/main/java/org/tasks/activities/CalendarSelectionActivity.java
@@ -0,0 +1,44 @@
+package org.tasks.activities;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.support.v4.app.FragmentManager;
+
+import com.todoroo.astrid.gcal.AndroidCalendar;
+
+import org.tasks.injection.InjectingAppCompatActivity;
+
+public class CalendarSelectionActivity extends InjectingAppCompatActivity implements CalendarSelectionDialog.CalendarSelectionHandler {
+
+ private static final String FRAG_TAG_CALENDAR_PREFERENCE_SELECTION = "frag_tag_calendar_preference_selection";
+
+ public static final String EXTRA_CALENDAR_ID = "extra_calendar_id";
+ public static final String EXTRA_CALENDAR_NAME = "extra_calendar_name";
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+
+ FragmentManager supportFragmentManager = getSupportFragmentManager();
+ CalendarSelectionDialog fragmentByTag = (CalendarSelectionDialog) supportFragmentManager.findFragmentByTag(FRAG_TAG_CALENDAR_PREFERENCE_SELECTION);
+ if (fragmentByTag == null) {
+ fragmentByTag = new CalendarSelectionDialog();
+ fragmentByTag.enableNone();
+ fragmentByTag.show(supportFragmentManager, FRAG_TAG_CALENDAR_PREFERENCE_SELECTION);
+ }
+ fragmentByTag.setCalendarSelectionHandler(this);
+ }
+
+ @Override
+ public void selectedCalendar(final AndroidCalendar androidCalendar) {
+ setResult(RESULT_OK, new Intent() {{
+ putExtra(EXTRA_CALENDAR_ID, androidCalendar.getId());
+ putExtra(EXTRA_CALENDAR_NAME, androidCalendar.getName());
+ }});
+ }
+
+ @Override
+ public void dismiss() {
+ finish();
+ }
+}
diff --git a/src/main/java/org/tasks/activities/CalendarSelectionDialog.java b/src/main/java/org/tasks/activities/CalendarSelectionDialog.java
new file mode 100644
index 000000000..dd3a6f468
--- /dev/null
+++ b/src/main/java/org/tasks/activities/CalendarSelectionDialog.java
@@ -0,0 +1,88 @@
+package org.tasks.activities;
+
+import android.app.Dialog;
+import android.content.DialogInterface;
+import android.os.Bundle;
+import android.support.annotation.NonNull;
+import android.support.v7.app.AlertDialog;
+import android.widget.ArrayAdapter;
+
+import com.google.common.base.Function;
+import com.todoroo.astrid.gcal.AndroidCalendar;
+import com.todoroo.astrid.gcal.GCalHelper;
+
+import org.tasks.R;
+import org.tasks.dialogs.DialogBuilder;
+import org.tasks.injection.InjectingDialogFragment;
+
+import java.util.List;
+
+import javax.annotation.Nullable;
+import javax.inject.Inject;
+
+import static com.google.common.collect.Lists.transform;
+
+public class CalendarSelectionDialog extends InjectingDialogFragment {
+
+ public void enableNone() {
+ enableNone = true;
+ }
+
+ public interface CalendarSelectionHandler {
+ void selectedCalendar(AndroidCalendar calendar);
+ void dismiss();
+ }
+
+ @Inject DialogBuilder dialogBuilder;
+ @Inject GCalHelper gCalHelper;
+ private CalendarSelectionHandler handler;
+ private boolean enableNone;
+
+ @NonNull
+ @Override
+ public Dialog onCreateDialog(Bundle savedInstanceState) {
+ final List calendars = gCalHelper.getCalendars();
+ List calendarNames = transform(calendars, new Function() {
+ @Nullable
+ @Override
+ public String apply(AndroidCalendar androidCalendar) {
+ return androidCalendar.getName();
+ }
+ });
+
+ ArrayAdapter adapter = new ArrayAdapter<>(getActivity(),
+ android.R.layout.simple_list_item_1, calendarNames);
+
+ AlertDialog.Builder builder = dialogBuilder.newDialog()
+ .setTitle(R.string.choose_calendar)
+ .setSingleChoiceItems(adapter, 0, new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, final int which) {
+ handler.selectedCalendar(calendars.get(which));
+ dialog.dismiss();
+ }
+ });
+ if (enableNone) {
+ builder.setNeutralButton(R.string.none, new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ handler.selectedCalendar(AndroidCalendar.NONE);
+ dialog.dismiss();
+ }
+ });
+ }
+
+ return builder.show();
+ }
+
+ @Override
+ public void onDismiss(DialogInterface dialog) {
+ super.onDismiss(dialog);
+
+ handler.dismiss();
+ }
+
+ public void setCalendarSelectionHandler(CalendarSelectionHandler handler) {
+ this.handler = handler;
+ }
+}
diff --git a/src/main/java/org/tasks/injection/ActivityModule.java b/src/main/java/org/tasks/injection/ActivityModule.java
index 19cc994cc..10050f229 100644
--- a/src/main/java/org/tasks/injection/ActivityModule.java
+++ b/src/main/java/org/tasks/injection/ActivityModule.java
@@ -23,6 +23,8 @@ import com.todoroo.astrid.reminders.ReminderPreferences;
import com.todoroo.astrid.service.UpgradeService;
import com.todoroo.astrid.widget.WidgetConfigActivity;
+import org.tasks.activities.CalendarSelectionActivity;
+import org.tasks.activities.CalendarSelectionDialog;
import org.tasks.activities.ClearAllDataActivity;
import org.tasks.activities.ClearGtaskDataActivity;
import org.tasks.activities.DeleteAllCalendarEventsActivity;
@@ -94,7 +96,8 @@ import dagger.Provides;
FileExplore.class,
DonationActivity.class,
ActFmGoogleAuthActivity.class,
- UpgradeService.UpgradeActivity.class
+ UpgradeService.UpgradeActivity.class,
+ CalendarSelectionActivity.class
})
public class ActivityModule {
diff --git a/src/main/java/org/tasks/injection/DialogFragmentModule.java b/src/main/java/org/tasks/injection/DialogFragmentModule.java
index d6ba4933e..46bde1759 100644
--- a/src/main/java/org/tasks/injection/DialogFragmentModule.java
+++ b/src/main/java/org/tasks/injection/DialogFragmentModule.java
@@ -4,6 +4,7 @@ import android.app.Activity;
import android.support.v4.app.DialogFragment;
import android.support.v4.app.FragmentActivity;
+import org.tasks.activities.CalendarSelectionDialog;
import org.tasks.dialogs.LocationPickerDialog;
import org.tasks.reminders.MissedCallDialog;
import org.tasks.reminders.NotificationDialog;
@@ -17,7 +18,8 @@ import dagger.Provides;
LocationPickerDialog.class,
NotificationDialog.class,
SnoozeDialog.class,
- MissedCallDialog.class
+ MissedCallDialog.class,
+ CalendarSelectionDialog.class
},
library = true)
public class DialogFragmentModule {
diff --git a/src/main/java/org/tasks/preferences/Preferences.java b/src/main/java/org/tasks/preferences/Preferences.java
index 0932ee1e1..f8b96fe4b 100644
--- a/src/main/java/org/tasks/preferences/Preferences.java
+++ b/src/main/java/org/tasks/preferences/Preferences.java
@@ -85,6 +85,15 @@ public class Preferences {
return getBoolean(WidgetConfigActivity.PREF_DARK_THEME + widgetId, legacySetting);
}
+ public boolean isDefaultCalendarSet() {
+ String defaultCalendar = getDefaultCalendar();
+ return defaultCalendar != null && !defaultCalendar.equals("-1") && !defaultCalendar.equals("0");
+ }
+
+ public String getDefaultCalendar() {
+ return getStringValue(R.string.gcal_p_default);
+ }
+
public boolean geofencesEnabled() {
return deviceInfo.supportsLocationServices() && getBoolean(R.string.p_geofence_reminders_enabled, true);
}
diff --git a/src/main/res/layout/control_set_gcal_display.xml b/src/main/res/layout/control_set_gcal_display.xml
index 03f967d32..9179bb9e1 100644
--- a/src/main/res/layout/control_set_gcal_display.xml
+++ b/src/main/res/layout/control_set_gcal_display.xml
@@ -8,18 +8,38 @@
android:layout_height="wrap_content"
android:orientation="horizontal">
-
+ android:orientation="horizontal"
+ android:layout_weight="100">
-
+
+
+
+
+
diff --git a/src/main/res/values-ar/strings.xml b/src/main/res/values-ar/strings.xml
index b716d5457..0402f2384 100644
--- a/src/main/res/values-ar/strings.xml
+++ b/src/main/res/values-ar/strings.xml
@@ -133,7 +133,6 @@
- الشهر القادم
العنوان يحتوي على..
- لا تضيف
حذف المهام المنتهية...
انتهاء الحذف
لا يوجد حساب قوقل للتزامن مع.
diff --git a/src/main/res/values-bg-rBG/strings.xml b/src/main/res/values-bg-rBG/strings.xml
index 45572d6fb..7fda15038 100644
--- a/src/main/res/values-bg-rBG/strings.xml
+++ b/src/main/res/values-bg-rBG/strings.xml
@@ -124,7 +124,6 @@
Списъкът създаден
Действия: %s
Настройки
- деактивирано
Изглед
Филтри за показване
Редактиране на опциите екрана
@@ -223,10 +222,7 @@
Грешка при добавяне на задачата към каледнара!
Добави към календара
Добави събитие към календара
- Не добавяй
- Към календара?
%s (завършено)
- Календар по подразбиране
В списък: ?
В списък GTasks...
Изчисти завършени задачи...
diff --git a/src/main/res/values-ca/strings.xml b/src/main/res/values-ca/strings.xml
index 47f97bbe2..c236a0ac4 100644
--- a/src/main/res/values-ca/strings.xml
+++ b/src/main/res/values-ca/strings.xml
@@ -84,7 +84,6 @@
Retorna la trucada a en/na %1$s a %2$s
Retorna la trucada a %s
Tasks: Paràmetres
- desactivat
Aparença
Restableix els valors predeterminats
Mostra el títol sencer de la tasca
@@ -131,10 +130,7 @@
Error afegint la tasca al calendari!
Afegeix al calendari
Obrir Event del Calendari
- No afegir
- Al calenari?
%s (completada)
- Calendari per defecte
S\'estan netejant les tasques completades...
Neteja les tasques completades
S\'està autenticant...
diff --git a/src/main/res/values-cs/strings.xml b/src/main/res/values-cs/strings.xml
index 6878aeeb4..a89faef86 100644
--- a/src/main/res/values-cs/strings.xml
+++ b/src/main/res/values-cs/strings.xml
@@ -113,7 +113,6 @@
Ne, děkuji.
Seznam vytvořen!
Nastavení
- deaktivován
Vzhled
Filtry pro zobrazení
Možnosti úprav zobrazení
@@ -200,10 +199,7 @@
Chyba při přidávání úkolu do kalendáře!
Vytvořit událost kalendáře
Otevřít událost v kalendáři
- Nepřidávat
- Přidat do kal.
%s (dokončeno)
- Výchozí kalendář
V seznamu: ?
V seznamu Google úkolů
Mažu hotové úkoly...
diff --git a/src/main/res/values-da/strings.xml b/src/main/res/values-da/strings.xml
index d287e6c17..3c711170a 100644
--- a/src/main/res/values-da/strings.xml
+++ b/src/main/res/values-da/strings.xml
@@ -113,10 +113,7 @@
Fejl ved tilføjelse af opgave til kalender!
Tilføj til kalender
Åbn kalender-begivenhed
- Tilføj ikke
- Til kalender?
%s (fuldført)
- Standardkalender
Google Tasks (beta!)
Du har $NUM der matcher: $FILTER
diff --git a/src/main/res/values-de/strings.xml b/src/main/res/values-de/strings.xml
index 5fef4adc6..3dd150305 100644
--- a/src/main/res/values-de/strings.xml
+++ b/src/main/res/values-de/strings.xml
@@ -119,7 +119,6 @@
Liste erstellt
Einzelaufgaben: %s
Tasks: Einstellungen
- deaktiviert
Erscheinungsbild
Angezeigte Filter
Bildschirmeinstellungen bearbeiten
@@ -211,10 +210,7 @@
Fehler beim Hinzufügen der Aufgabe zum Kalender!
In Kalender eintragen
Öffne Kalendereintrag
- Nicht eintragen
- In den Kalender?
%s (abgeschlossen)
- Standardkalender
In der Liste: ?
In GTasks-Liste …
Erledigte Aufgaben werden entfernt …
diff --git a/src/main/res/values-el/strings.xml b/src/main/res/values-el/strings.xml
index c9c16a5a2..f5711053d 100644
--- a/src/main/res/values-el/strings.xml
+++ b/src/main/res/values-el/strings.xml
@@ -112,7 +112,6 @@
Λίστα δημιουργήθηκε!
Αντικείμενα ενεργειών: %s
Ρυθμίσεις
- απενεργοποιημένο
Εμφάνιση
Φίλτρα για εμφάνιση
Επεξεργασία επιλογών εμφάνισης
@@ -202,10 +201,7 @@
Σφάλμα πρόσθεσης καθήκοντος στο ημερολόγιο!
Προσθήκη στο ημερολόγιο
Άνοιγμα event ημερολογίου
- Μήν προσθέσετε
- Προς ημερολόγιο?
%s (έχει ολοκληρωθεί)
- Προεπιλεγμένο ημερολόγιο
Στην λίστα: ;
Στην λίστα του GTasks...
Καθαρισμός ολοκληρωμένων εργασιών...
diff --git a/src/main/res/values-es/strings.xml b/src/main/res/values-es/strings.xml
index 9c4c9a78d..07b3ce60f 100644
--- a/src/main/res/values-es/strings.xml
+++ b/src/main/res/values-es/strings.xml
@@ -120,7 +120,6 @@
Lista creada
Acciones: %s
Tasks: Preferencias
- desactivada
Apariencia
Filtros a mostrar
Editar opciones de pantalla
@@ -212,10 +211,7 @@
¡Ocurrió un error al agregar la tarea al calendario!
Agregar al calendario
Abrir evento del calendario
- No agregar
- ¿Al calendario?
%s (completado)
- Calendario predeterminado
En la Lista: ?
en la Lista GTasks...
Limpiando tareas completadas...
diff --git a/src/main/res/values-fa/strings.xml b/src/main/res/values-fa/strings.xml
index bb34051cb..8ef30a6ab 100644
--- a/src/main/res/values-fa/strings.xml
+++ b/src/main/res/values-fa/strings.xml
@@ -87,7 +87,6 @@
خیر ممنون
لیست ساخته شد!
تنظیمات
- غیر فعال شده
ظاهر
فیلترها برای نمایش
ویرایش تنظیمات صفحه
@@ -157,9 +156,6 @@
خطا در اضافه کردن وظیفه به تقویم
اضاقه به تقویم
بازکردن رویداد تقویم
- اضافه نکن
- به تقویم؟
- تقویم پیش فرض
در حال حذف وظایف تکمیل شده
حذف انجام شد
اکانت گوگلی برای همگام سازی موجود نیست
diff --git a/src/main/res/values-fi/strings.xml b/src/main/res/values-fi/strings.xml
index 2e3508e11..156a06471 100644
--- a/src/main/res/values-fi/strings.xml
+++ b/src/main/res/values-fi/strings.xml
@@ -46,10 +46,7 @@
Virhe lisättäessä tapahtumaa kalenteriin!
Lisää kalenteri
Avaa tapahtumakalenteri
- Älä lisää
- Kalenteriin?
%s (valmistunut)
- Oletus kalenteri
Listalla: ?
Gtask lista...
Siivoa valmiit tehtävät...
diff --git a/src/main/res/values-fr/strings.xml b/src/main/res/values-fr/strings.xml
index e57acbf01..04f175590 100644
--- a/src/main/res/values-fr/strings.xml
+++ b/src/main/res/values-fr/strings.xml
@@ -120,7 +120,6 @@
Liste créée !
Choix d\'actions: %s
Tasks : Paramètres
- désactivé
Apparence
Filtres à afficher
Edition des options d\'affichage
@@ -214,10 +213,7 @@
Erreur d\'ajout de tâche à l\'agenda !
Créer un évènement d\'agenda
Ouvrir l\'événement de l\'agenda
- Ne pas ajouter
- Ajouter au calendrier?
%s (complété)
- Agenda par défaut
Dans la liste : ?
Dans la liste GTasks...
Suppression des tâches terminés
diff --git a/src/main/res/values-hu/strings.xml b/src/main/res/values-hu/strings.xml
index 8ed852ca0..b7299d68f 100644
--- a/src/main/res/values-hu/strings.xml
+++ b/src/main/res/values-hu/strings.xml
@@ -84,10 +84,7 @@
Nem sikerült a feladat hozzáadása a naptárhoz!
Hozzáadás a naptárhoz
Naptáresemény megnyitása
- Ne legyen hozzáadva
- Naptárhoz?
%s (befejezve)
- Alapértelmezett naptár
Befejezett feladatok törlése...
Törlés befejezve
Nincs elérhető Google fiók a szinkronizáláshoz.
diff --git a/src/main/res/values-it/strings.xml b/src/main/res/values-it/strings.xml
index 802afb500..7c386696d 100644
--- a/src/main/res/values-it/strings.xml
+++ b/src/main/res/values-it/strings.xml
@@ -121,7 +121,6 @@
Lista creata!
Azioni: %s
Tasks: Preferenze
- disattivato
Aspetto
Filtri da visualizzare
Modifica opzioni schermo
@@ -214,10 +213,7 @@ Se visualizzi questo errore più volte, ti consigliamo di cancellare tutti i dat
Errore durante l\'aggiunta dell\'attività al calendario!
Aggiungi al Calendario
Apri Calendario Eventi
- Non aggiungere
- Sul calendario?
%s (completato)
- Calendario Predefinito
Nella lista: ?
Nella lista GTasks...
Pulizia task completi...
diff --git a/src/main/res/values-iw/strings.xml b/src/main/res/values-iw/strings.xml
index 8813c3009..e713afe73 100644
--- a/src/main/res/values-iw/strings.xml
+++ b/src/main/res/values-iw/strings.xml
@@ -112,7 +112,6 @@
רשימה נוצרה!
פריטי פעולה: %s
הגדרות אסטריד
- מופסק
חזות
אילו מַסְנְנִים להציג
עריכת אפשרויות מסך
@@ -203,10 +202,7 @@
שגיאה בהוספת המשימה ליומן!
הוסף ליומן
פתח אירוע ביומן
- אל תוסיף
- ליומן?
%s (בוצעה)
- ברירת מחדל ליומן
ברשימה: ?
ברשימה של ״משימות גוגל״
מְסִירָה משימות שבוצעו...
diff --git a/src/main/res/values-ja/strings.xml b/src/main/res/values-ja/strings.xml
index 06daefcc6..e3d3b5874 100644
--- a/src/main/res/values-ja/strings.xml
+++ b/src/main/res/values-ja/strings.xml
@@ -122,7 +122,6 @@
リストが作成されました!
アクションアイテム: %s
Tasks: 設定
- アクティブにしない
外観
表示のフィルター
編集画面オプション
@@ -221,10 +220,7 @@
カレンダーへの登録に失敗しました
カレンダーに登録
カレンダーのイベントを開く
- 追加しないで
- カレンダーに?
%s(完了)
- 標準のカレンダー
リストにありますか ?
GTasks リストに...
完了したタスクをクリーニング中...
diff --git a/src/main/res/values-ko/strings.xml b/src/main/res/values-ko/strings.xml
index a6933e375..7ccdfc66c 100644
--- a/src/main/res/values-ko/strings.xml
+++ b/src/main/res/values-ko/strings.xml
@@ -119,7 +119,6 @@
목록을 만들었습니다!
활동 아이템: %s
설정
- 비활성화됨
보기 설정
표시할 필터
화면 설정 편집하기
@@ -214,10 +213,7 @@ Tasks의 백업에서 당신의 일정을 복구하시기 바랍니다.
달력에 일정 추가 실패!
달력에 일정 추가하기
달력 이벤트 열기
- 추가하지 않기
- 달력에?
%s (완료)
- 기본 달력
목록에: ?
GTasks 목록에...
완료한 일정을 삭제하는 중...
diff --git a/src/main/res/values-nb/strings.xml b/src/main/res/values-nb/strings.xml
index 0888399aa..c3cc51d91 100644
--- a/src/main/res/values-nb/strings.xml
+++ b/src/main/res/values-nb/strings.xml
@@ -62,7 +62,6 @@
Flere alternativer
Nei takk
Tasks: Innstillinger
- deaktivert
Utseende
Laster ...
Velg oppgaver å se på
@@ -108,9 +107,7 @@
Klarte ikke å legge oppgave til kalender!
Legg til i kalender
Åpne kalenderhendelse
- Ikke legg til
%s (fullført)
- Standardkalender
I liste: ?
Du har $NUM som matcher: $FILTER
Velg en fil
diff --git a/src/main/res/values-nl/strings.xml b/src/main/res/values-nl/strings.xml
index 23187047f..01895542b 100644
--- a/src/main/res/values-nl/strings.xml
+++ b/src/main/res/values-nl/strings.xml
@@ -122,7 +122,6 @@
Lijst gemaakt!
Actie-items: %s
Tasks: Instellingen
- uitgeschakeld
Uiterlijk
Te tonen filters
Scherm opties bewerken
@@ -218,10 +217,7 @@
Fout bij toevoegen taak aan agenda!
Toevoegen aan Agenda
Gebeurtenis openen
- Niet toevoegen
- Naar agenda?
%s (voltooid)
- Standaard agenda
In lijst: ?
In GTasks lijst...
Verwijderen voltooide taken...
diff --git a/src/main/res/values-pl/strings.xml b/src/main/res/values-pl/strings.xml
index 9fb11860d..46f65ae56 100644
--- a/src/main/res/values-pl/strings.xml
+++ b/src/main/res/values-pl/strings.xml
@@ -113,7 +113,6 @@
Lista utworzona!
Wydarzenia aktywne: %s
Tasks: Właściwości
- niekatywny
Wygląd
Pokazywane filtry
Edytuj ustawienia ekranu
@@ -206,10 +205,7 @@ i odzyskanie zadań z kopi zapasowej (Settings->Sync and backup->Backup-&g
Błąd podczas dodawania zadania do kalendarza!
Dodaj do kalendarza
Otwórz zdarzenie kalendarza
- Nie dodawaj
- Do kalendarza?
%s (ukończono)
- Domyślny kalendarz
Na liście: ?
Na liście GTasks...
Czyszczenie zakończonych zadań...
diff --git a/src/main/res/values-pt-rBR/strings.xml b/src/main/res/values-pt-rBR/strings.xml
index e55dbc58e..02893af67 100644
--- a/src/main/res/values-pt-rBR/strings.xml
+++ b/src/main/res/values-pt-rBR/strings.xml
@@ -112,7 +112,6 @@
Lista criada!
Itens de ação: %s
Tasks: Configurações
- desativado
Aparência
Filtros a mostrar
Editar opções da tela
@@ -202,10 +201,7 @@
Erro ao inserir a tarefa no calendário!
Inserir no calendário
Abrir evento no calendário
- Não adicionar
- Para o calendário?
%s (concluído)
- Calendário padrão
Na lista: ?
No Google Tasks...
Limpando tarefas concluídas...
diff --git a/src/main/res/values-pt/strings.xml b/src/main/res/values-pt/strings.xml
index 47626e482..f6243a206 100644
--- a/src/main/res/values-pt/strings.xml
+++ b/src/main/res/values-pt/strings.xml
@@ -123,7 +123,6 @@
Lista criada!
Itens de ação: %s
Definições
- desativada
Aspeto
Filtros a mostrar
Opções do ecrã de edição
@@ -222,10 +221,7 @@ das tarefas através de um backup em Definições->Sincronização e backup-&
Erro ao adicionar tarefa ao calendário!
Adicionar ao calendário
Abrir evento no calendário
- Não adicionar
- Ao calendário?
%s (terminada)
- Calendário predefinido
Na lista: ?
Na lista GTasks
Removendo tarefas terminadas
diff --git a/src/main/res/values-ru/strings.xml b/src/main/res/values-ru/strings.xml
index 56620679c..d8443ab3e 100644
--- a/src/main/res/values-ru/strings.xml
+++ b/src/main/res/values-ru/strings.xml
@@ -122,7 +122,6 @@
Список создан!
Пункты события: %s
Tasks: Настройки
- выключен
Интерфейс
Показать фильтры
Редактировать настройки экрана
@@ -221,10 +220,7 @@
Ошибка при добавлении задачи в календарь!
Добавить в календарь
Открыть событие календаря
- Не добавлять
- Добавить в календарь
%s (выполнено)
- Календарь по умолчанию
В Списке: ?
В GTask Список...
Очистка выполненных задач...
diff --git a/src/main/res/values-sk/strings.xml b/src/main/res/values-sk/strings.xml
index 3ba2ead7c..062d2b9a5 100644
--- a/src/main/res/values-sk/strings.xml
+++ b/src/main/res/values-sk/strings.xml
@@ -121,7 +121,6 @@
Zoznam vytvorený!
Položky akcie: %s
Nastavenia
- deaktivovaný
Vzhľad
Filtre pre zobrazenie
Možnosti úprav zobrazenia
@@ -214,10 +213,7 @@
Chyba pridania úlohy do kalendára!
Pridať do kalendára
Otvoriť udalosť kalendára
- Nepridávať
- Do kalendára?
%s (dokončené)
- Predvolený kalendár
V zozname: ?
V GTasks zozname...
Zbaviť sa dokončených úloh
diff --git a/src/main/res/values-sl-rSI/strings.xml b/src/main/res/values-sl-rSI/strings.xml
index ef427e44f..959ef4a25 100644
--- a/src/main/res/values-sl-rSI/strings.xml
+++ b/src/main/res/values-sl-rSI/strings.xml
@@ -116,7 +116,6 @@
Seznam ustvarjen!
Število izvedbenih opravil: %s
Nastavitve
- deaktivirano
Izgled
Filtri za prikaz
Uredi možnosti zaslona
@@ -206,10 +205,7 @@
Napaka pri dodajanju opravila!
Dodaj v koledar
Odpri dogodek v koledarju
- Ne dodaj
- Na koledar?
%s (končani)
- Privzeti koledar
V seznamu: ?
Na GNaloge seznamu...
Brišem dokončane opravke...
diff --git a/src/main/res/values-sv/strings.xml b/src/main/res/values-sv/strings.xml
index b65bc47b6..5e1176537 100644
--- a/src/main/res/values-sv/strings.xml
+++ b/src/main/res/values-sv/strings.xml
@@ -113,7 +113,6 @@
Listan skapades!
Saker att göra: %s
Inställningar
- inaktiverad
Utseende
Filter att visa
Ändra skärminställningar
@@ -200,10 +199,7 @@ och återställer dina aktuella uppgifter från en backup
Misslyckades med att lägga uppgift till kalender!
Skapa kalenderhändelse
Öppna kalenderhändelse
- Lägg inte till
- Till kalender
%s (avslutad)
- Standardkalender
I listan: ?
I lista på Google Uppgifter...
Rensar bort färdiga uppgifter...
diff --git a/src/main/res/values-th/strings.xml b/src/main/res/values-th/strings.xml
index 8d2625d82..31b3dddfe 100644
--- a/src/main/res/values-th/strings.xml
+++ b/src/main/res/values-th/strings.xml
@@ -69,7 +69,6 @@
ชื่อที่มีคำว่า: ?
เปิดเหตุการณ์ปฏิทิน
%s (เสร็จสิ้นแล้ว)
- ปฏิธินตั้งต้น
เสร็จเรียบร้อยแล้ว!
หลับ..
การเกิดซ้ำ
diff --git a/src/main/res/values-tr/strings.xml b/src/main/res/values-tr/strings.xml
index 968010a70..f7389074a 100644
--- a/src/main/res/values-tr/strings.xml
+++ b/src/main/res/values-tr/strings.xml
@@ -101,7 +101,6 @@
Hayır teşekkürler
Liste oluşturuldu!
Tasks: Ayarlar
- devre dışı
Görünüm
Görev Düzenleme Ekranı yerleşimini özelleştir
Varsayılanlara sıfırla
@@ -181,9 +180,7 @@
Takvime görev eklenmesinde hata!
Takvime Ekle
Takvim Olayı Aç
- Ekleme
%s (tamamlandı)
- Öntanımlı Takvim
Liste içinde: ?
Gtasks Listesi içinde...
Tamamlanan görevler temizleniyor...
diff --git a/src/main/res/values-uk/strings.xml b/src/main/res/values-uk/strings.xml
index a99604218..7b1a77ec3 100644
--- a/src/main/res/values-uk/strings.xml
+++ b/src/main/res/values-uk/strings.xml
@@ -116,7 +116,6 @@
Список створений!
Список дій: %s
Налаштування
- деактивовані
Інтерфейс
Показати фільтри
Редагувати налаштування екрану
@@ -211,10 +210,7 @@
Помилка при додаванні завдання в календар!
Додати до календаря
Відкрити календарну подію
- Не додавати
- До календаря?
%s (завершено)
- Календар по замовчуванню
В списку: ?
В GTasks списку...
Очищення виконаних завдань
diff --git a/src/main/res/values-zh-rCN/strings.xml b/src/main/res/values-zh-rCN/strings.xml
index 8924d0f95..c0d584c4c 100644
--- a/src/main/res/values-zh-rCN/strings.xml
+++ b/src/main/res/values-zh-rCN/strings.xml
@@ -84,7 +84,6 @@
创建列表
也许以后
清单小助理:设置
- 禁用
外观
自定义设定菜单屏幕
恢复默认值
@@ -161,9 +160,7 @@
添加任务到日历时失败!
建立日程表事件
打开日程表事件
- 不要添加
%s (已完成)
- 默认日程表
列表内容: ?
在Google任务列表中...
正在清除已完成任务……
diff --git a/src/main/res/values-zh-rTW/strings.xml b/src/main/res/values-zh-rTW/strings.xml
index fd030cff7..0bb26f579 100644
--- a/src/main/res/values-zh-rTW/strings.xml
+++ b/src/main/res/values-zh-rTW/strings.xml
@@ -110,7 +110,6 @@
列表建立了!
行動事項:%s
Tasks: 偏好
- 禁用
外觀
編輯畫面選項
自定義設定菜單屏幕
@@ -191,9 +190,7 @@
工作加入行事曆錯誤
建立行事曆事項
打開行事曆事項
- 事件開啟錯誤!
%s (已完成)
- 預設行事曆
列表內容: ?
在Google任務工作列表中...
正在清除已完成任務工作……
diff --git a/src/main/res/values/keys.xml b/src/main/res/values/keys.xml
index 86ddf3cda..2ebfe9270 100644
--- a/src/main/res/values/keys.xml
+++ b/src/main/res/values/keys.xml
@@ -171,11 +171,6 @@
p_end_at_deadline
-
-
- - -1
-
-
@@ -266,8 +261,4 @@
- @string/ring_nonstop
-
- - @string/EPr_deactivated
-
-
diff --git a/src/main/res/values/strings-core.xml b/src/main/res/values/strings-core.xml
index 3ae469bb8..5f7d83b1a 100644
--- a/src/main/res/values/strings-core.xml
+++ b/src/main/res/values/strings-core.xml
@@ -287,8 +287,7 @@
Settings
-
- deactivated
+ None
Appearance
diff --git a/src/main/res/values/strings-gcal.xml b/src/main/res/values/strings-gcal.xml
index 4e7d3fd29..58c9d9d4d 100644
--- a/src/main/res/values/strings-gcal.xml
+++ b/src/main/res/values/strings-gcal.xml
@@ -12,22 +12,15 @@
Add to Calendar
-
+
+ Choose Calendar
+
Open Calendar Event
-
- Don\'t add
-
- To calendar?
-
%s (completed)
-
- Default Calendar
-
-
diff --git a/src/main/res/xml/preferences_defaults.xml b/src/main/res/xml/preferences_defaults.xml
index 3899c9ce6..c3679fb3c 100644
--- a/src/main/res/xml/preferences_defaults.xml
+++ b/src/main/res/xml/preferences_defaults.xml
@@ -41,10 +41,9 @@
android:entryValues="@array/EPr_default_reminders_mode_values"
android:key="@string/p_default_reminders_mode_key"
android:title="@string/EPr_default_reminders_mode_title" />
-
+ android:title="@string/EPr_default_addtocalendar_title"
+ android:summary="@string/none"/>