Styling dialogs

pull/321/head
Alex Baker 9 years ago
parent e0d0f7280e
commit 370963428a

@ -6,7 +6,7 @@
<activity
android:name=".activities.DonationActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
android:theme="@style/TranslucentDialog" />
</application>

@ -27,7 +27,7 @@
<activity
android:name=".activities.DonationActivity"
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<service android:name=".location.GeofenceTransitionsIntentService"/>

@ -14,7 +14,7 @@ import org.tasks.billing.IabResult;
import org.tasks.billing.Inventory;
import org.tasks.billing.Purchase;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import java.util.ArrayList;
import java.util.List;
@ -23,7 +23,7 @@ import java.util.regex.Pattern;
import javax.inject.Inject;
public class DonationActivity extends InjectingActivity implements IabHelper.OnIabSetupFinishedListener,
public class DonationActivity extends InjectingAppCompatActivity implements IabHelper.OnIabSetupFinishedListener,
IabHelper.QueryInventoryFinishedListener, IabHelper.OnIabPurchaseFinishedListener,
IabHelper.OnConsumeFinishedListener, IabHelper.OnConsumeMultiFinishedListener {

@ -57,7 +57,7 @@ public class LocationPickerDialog extends InjectingDialogFragment implements Goo
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
activityPreferences.applyTheme();
activityPreferences.applyDialogTheme();
googleApi.connect(this);

@ -2,7 +2,7 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="@dimen/horizontal_page_margin"
android:paddingRight="@dimen/horizontal_page_margin"

@ -105,25 +105,25 @@
<activity
android:name=".activities.TimePickerActivity"
android:theme="@style/TasksDialog" />
android:theme="@style/Theme.AppCompat.Dialog" />
<activity
android:name=".activities.DateAndTimePickerActivity"
android:theme="@style/TasksDialog"
android:theme="@style/Theme.AppCompat.Dialog"
android:taskAffinity="" />
<activity
android:name=".activities.LocationPickerActivity"
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<activity
android:name=".activities.SortActivity"
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<activity
android:name=".activities.FilterSelectionActivity"
android:exported="true"
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<!-- Activity that displays task list -->
<activity
@ -325,21 +325,21 @@
android:excludeFromRecents="true"
android:launchMode="singleTask"
android:taskAffinity=""
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<activity
android:name=".reminders.SnoozeActivity"
android:excludeFromRecents="true"
android:launchMode="singleTask"
android:taskAffinity=""
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<activity
android:name=".reminders.NotificationActivity"
android:excludeFromRecents="true"
android:launchMode="singleTask"
android:taskAffinity=""
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<!-- tags -->
<receiver android:name="com.todoroo.astrid.tags.TagCustomFilterCriteriaExposer">
@ -396,7 +396,7 @@
<activity
android:name=".activities.ClearGtaskDataActivity"
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<!-- repeats -->
@ -428,7 +428,7 @@
<activity
android:name="com.todoroo.astrid.gcal.CalendarReminderActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
android:theme="@style/TranslucentDialog"/>
<activity
android:name="com.todoroo.astrid.gcal.CalendarAlarmListCreator"
@ -444,39 +444,39 @@
<activity
android:name=".activities.ClearAllDataActivity"
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<activity
android:name=".activities.PurgeDeletedActivity"
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<activity
android:name=".activities.DeleteCompletedActivity"
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<activity
android:name=".activities.DeleteCompletedEventsActivity"
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<activity
android:name=".activities.DeleteAllCalendarEventsActivity"
android:theme="@style/TasksDialog" />
android:theme="@style/TranslucentDialog" />
<!-- backup -->
<activity
android:name="org.tasks.activities.ExportTaskActivity"
android:theme="@style/ReminderDialog" />
android:theme="@style/TranslucentDialog" />
<activity
android:name="org.tasks.activities.ImportTaskActivity"
android:theme="@style/ReminderDialog" />
android:theme="@style/TranslucentDialog" />
<!-- premium -->
<activity
android:name="com.todoroo.astrid.files.AACRecordingActivity"
android:configChanges="orientation|screenSize"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
android:theme="@style/TranslucentDialog" />
<activity
android:name="com.todoroo.astrid.files.FileExplore"
android:theme="@style/TasksDialog"/>
android:theme="@style/TranslucentDialog"/>
<receiver android:name="com.todoroo.astrid.timers.TimerTaskCompleteListener">
<intent-filter>

@ -23,11 +23,7 @@ public class DialogUtilities {
* Displays a progress dialog. Must be run on the UI thread
*/
public static ProgressDialog progressDialog(Activity context, String text) {
return progressDialog(context, text, R.style.TasksDialog);
}
private static ProgressDialog progressDialog(Activity context, String text, int theme) {
ProgressDialog dialog = new ProgressDialog(context, theme);
ProgressDialog dialog = new ProgressDialog(context, R.style.TasksDialog);
dialog.setIndeterminate(true);
dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
dialog.setMessage(text);

@ -27,11 +27,15 @@ import com.todoroo.andlib.utility.DialogUtilities;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingListActivity;
import java.io.IOException;
import java.util.ArrayList;
import java.util.concurrent.TimeUnit;
import javax.inject.Inject;
/**
* This activity allows users to sign in or log in to Google Tasks
* through the Android account manager
@ -39,7 +43,7 @@ import java.util.concurrent.TimeUnit;
* @author Sam Bosley
*
*/
public class ActFmGoogleAuthActivity extends ListActivity {
public class ActFmGoogleAuthActivity extends InjectingListActivity {
private static final Logger log = LoggerFactory.getLogger(ActFmGoogleAuthActivity.class);
@ -59,6 +63,8 @@ public class ActFmGoogleAuthActivity extends ListActivity {
private boolean onSuccess = false;
private boolean dismissDialog = false;
@Inject DialogBuilder dialogBuilder;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@ -93,7 +99,7 @@ public class ActFmGoogleAuthActivity extends ListActivity {
super.onListItemClick(l, v, position, id);
int offsetPosition = position - 1; // Subtract 1 because apparently android counts the header view as part of the adapter.
if (offsetPosition >= 0 && offsetPosition < nameArray.length) {
final ProgressDialog pd = DialogUtilities.progressDialog(this, this.getString(R.string.gtasks_GLA_authenticating));
final ProgressDialog pd = dialogBuilder.newProgressDialog(R.string.gtasks_GLA_authenticating);
pd.show();
final Account a = accountManager.getAccountByName(nameArray[position - 1]);
accountName = a.name;
@ -166,7 +172,7 @@ public class ActFmGoogleAuthActivity extends ListActivity {
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == REQUEST_AUTHENTICATE && resultCode == RESULT_OK){
final ProgressDialog pd = DialogUtilities.progressDialog(this, this.getString(R.string.gtasks_GLA_authenticating));
final ProgressDialog pd = dialogBuilder.newProgressDialog(R.string.gtasks_GLA_authenticating);
pd.show();
final Account a = accountManager.getAccountByName(accountName);
getAuthToken(a, pd);
@ -174,5 +180,4 @@ public class ActFmGoogleAuthActivity extends ListActivity {
onAuthCancel();
}
}
}

@ -31,8 +31,8 @@ public class FilePickerBuilder extends AlertDialog.Builder implements DialogInte
private String[] files;
private FilenameFilter filter;
public FilePickerBuilder(Context ctx, int titleRes, File path) {
super(ctx);
public FilePickerBuilder(Context ctx, int titleRes, File path, int theme) {
super(ctx, theme);
filter = new FilenameFilter() {
@Override
public boolean accept(File dir, String s) {

@ -31,6 +31,7 @@ import com.todoroo.astrid.service.TaskService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.preferences.Preferences;
import org.xmlpull.v1.XmlSerializer;
@ -93,24 +94,23 @@ public class TasksXmlExporter {
}
@Inject
public TasksXmlExporter(TagDataDao tagDataDao, MetadataDao metadataDao, TaskService taskService, Preferences preferences) {
public TasksXmlExporter(TagDataDao tagDataDao, MetadataDao metadataDao, TaskService taskService,
Preferences preferences) {
this.tagDataDao = tagDataDao;
this.metadataDao = metadataDao;
this.taskService = taskService;
this.preferences = preferences;
}
public void exportTasks(final Context context, final ExportType exportType) {
public void exportTasks(final Context context, final ExportType exportType, DialogBuilder dialogBuilder) {
this.context = context;
this.exportCount = 0;
this.backupDirectory = preferences.getBackupDirectory();
this.latestSetVersionName = null;
handler = exportType == ExportType.EXPORT_TYPE_MANUAL ? new Handler() : null;
progressDialog = new ProgressDialog(context);
if(exportType == ExportType.EXPORT_TYPE_MANUAL) {
progressDialog.setIcon(android.R.drawable.ic_dialog_info);
progressDialog.setTitle(R.string.export_progress_title);
progressDialog = dialogBuilder.newProgressDialog();
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
progressDialog.setProgress(0);
progressDialog.setCancelable(false);
@ -119,6 +119,8 @@ public class TasksXmlExporter {
if(context instanceof Activity) {
progressDialog.setOwnerActivity((Activity) context);
}
} else {
progressDialog = new ProgressDialog(context);
}
new Thread(new Runnable() {

@ -91,9 +91,7 @@ public class TasksXmlImporter {
this.runAfterImport = runAfterImport;
handler = new Handler();
progressDialog = new ProgressDialog(context);
progressDialog.setIcon(android.R.drawable.ic_dialog_info);
progressDialog.setTitle(R.string.import_progress_title);
progressDialog = dialogBuilder.newProgressDialog();
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressDialog.setCancelable(false);
progressDialog.setIndeterminate(true);

@ -28,7 +28,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingFragmentActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.intents.TaskIntents;
import org.tasks.preferences.ActivityPreferences;
import org.tasks.preferences.BasicPreferences;
@ -38,7 +38,7 @@ import java.io.InputStream;
import javax.inject.Inject;
public class MissedCallActivity extends InjectingFragmentActivity {
public class MissedCallActivity extends InjectingAppCompatActivity {
private static final Logger log = LoggerFactory.getLogger(MissedCallActivity.class);

@ -15,14 +15,14 @@ import com.todoroo.astrid.voice.AACRecorder;
import com.todoroo.astrid.voice.AACRecorder.AACRecorderCallbacks;
import org.tasks.R;
import org.tasks.injection.InjectingActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.preferences.Preferences;
import java.util.concurrent.atomic.AtomicReference;
import javax.inject.Inject;
public class AACRecordingActivity extends InjectingActivity implements AACRecorderCallbacks {
public class AACRecordingActivity extends InjectingAppCompatActivity implements AACRecorderCallbacks {
public static final String RESULT_OUTFILE = "outfile"; //$NON-NLS-1$
public static final String RESULT_FILENAME = "filename"; //$NON-NLS-1$

@ -24,7 +24,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.preferences.ActivityPreferences;
import org.tasks.preferences.ResourceResolver;
@ -39,7 +39,7 @@ import javax.inject.Inject;
* https://github.com/mburman/Android-File-Explore
*
*/
public class FileExplore extends InjectingActivity {
public class FileExplore extends InjectingAppCompatActivity {
private static final Logger log = LoggerFactory.getLogger(FileExplore.class);

@ -8,13 +8,14 @@ import android.view.View.OnClickListener;
import android.widget.TextView;
import com.todoroo.andlib.utility.AndroidUtilities;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.preferences.BasicPreferences;
import com.todoroo.astrid.activity.TaskListActivity;
import com.todoroo.astrid.dao.TagDataDao;
import com.todoroo.astrid.data.TagData;
import org.tasks.R;
import org.tasks.injection.InjectingActivity;
import org.tasks.preferences.ActivityPreferences;
import org.tasks.preferences.ResourceResolver;
@ -22,7 +23,7 @@ import java.util.ArrayList;
import javax.inject.Inject;
public class CalendarAlarmListCreator extends InjectingActivity {
public class CalendarAlarmListCreator extends InjectingAppCompatActivity {
public static final String TOKEN_LIST_NAME = "listName"; //$NON-NLS-1$

@ -15,6 +15,7 @@ import com.todoroo.andlib.utility.AndroidUtilities;
import com.todoroo.andlib.utility.DateUtilities;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.preferences.BasicPreferences;
import com.todoroo.astrid.activity.TaskListActivity;
import com.todoroo.astrid.activity.TaskListFragment;
@ -25,7 +26,6 @@ import com.todoroo.astrid.service.StartupService;
import com.todoroo.astrid.tags.TagFilterExposer;
import org.tasks.R;
import org.tasks.injection.InjectingActivity;
import org.tasks.preferences.ActivityPreferences;
import org.tasks.preferences.ResourceResolver;
@ -33,7 +33,7 @@ import javax.inject.Inject;
import static org.tasks.date.DateTimeUtils.newDate;
public class CalendarReminderActivity extends InjectingActivity {
public class CalendarReminderActivity extends InjectingAppCompatActivity {
public static final String TOKEN_NAMES = "names";
public static final String TOKEN_EMAILS = "emails";

@ -5,17 +5,16 @@
*/
package com.todoroo.astrid.gtasks;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.MenuItem;
import com.todoroo.andlib.data.Property;
import com.todoroo.andlib.data.TodorooCursor;
import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.andlib.utility.DialogUtilities;
import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.dao.MetadataDao;
import com.todoroo.astrid.dao.StoreObjectDao;
@ -27,6 +26,7 @@ import com.todoroo.astrid.subtasks.OrderedListFragmentHelperInterface;
import com.todoroo.astrid.subtasks.SubtasksListFragment;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.ForActivity;
import org.tasks.preferences.ActivityPreferences;
import org.tasks.sync.IndeterminateProgressBarSyncResultCallback;
@ -49,6 +49,7 @@ public class GtasksListFragment extends SubtasksListFragment {
@Inject TaskAttachmentDao taskAttachmentDao;
@Inject ActivityPreferences preferences;
@Inject SyncThrottle syncThrottle;
@Inject DialogBuilder dialogBuilder;
private GtasksList list;
@ -106,15 +107,22 @@ public class GtasksListFragment extends SubtasksListFragment {
}
private void clearCompletedTasks() {
final ProgressDialog pd = new ProgressDialog(getActivity());
final ProgressDialog pd = dialogBuilder.newProgressDialog(R.string.gtasks_GTA_clearing);
final TodorooCursor<Task> tasks = taskService.fetchFiltered(filter.getSqlQuery(),
null, Task.ID, Task.COMPLETION_DATE);
pd.setMessage(this.getString(R.string.gtasks_GTA_clearing));
pd.show();
new Thread() {
new AsyncTask<Void, Void, Void>() {
ProgressDialog progressDialog = dialogBuilder.newProgressDialog(R.string.gtasks_GTA_clearing);
@Override
public void run() {
protected void onPreExecute() {
progressDialog.show();
}
@Override
protected Void doInBackground(Void... params) {
String listId = null;
try {
for (tasks.moveToFirst(); !tasks.isAfterLast(); tasks.moveToNext()) {
@ -130,22 +138,22 @@ public class GtasksListFragment extends SubtasksListFragment {
}
} finally {
tasks.close();
DialogUtilities.dismissDialog(getActivity(), pd);
}
if (listId != null) {
gtasksTaskListUpdater.correctMetadataForList(listId);
}
Activity activity = getActivity();
if (activity != null) {
activity.runOnUiThread(new Runnable() {
@Override
public void run() {
loadTaskListContent();
}
});
return null;
}
@Override
protected void onPostExecute(Void aVoid) {
if (progressDialog.isShowing()) {
progressDialog.dismiss();
}
loadTaskListContent();
}
}.start();
}.execute();
}
@Override

@ -29,6 +29,7 @@ import com.todoroo.astrid.gtasks.api.GtasksInvoker;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingListActivity;
import java.io.IOException;
@ -52,6 +53,7 @@ public class GtasksLoginActivity extends InjectingListActivity {
private static final Logger log = LoggerFactory.getLogger(GtasksLoginActivity.class);
@Inject GtasksPreferenceService gtasksPreferenceService;
@Inject DialogBuilder dialogBuilder;
private GoogleAccountManager accountManager;
private String[] nameArray;
@ -114,7 +116,7 @@ public class GtasksLoginActivity extends InjectingListActivity {
}
private void getAuthToken(Account account) {
final ProgressDialog pd = DialogUtilities.progressDialog(this, this.getString(R.string.gtasks_GLA_authenticating));
final ProgressDialog pd = dialogBuilder.newProgressDialog(R.string.gtasks_GLA_authenticating);
pd.show();
accountName = account.name;
getAuthToken(account, pd);
@ -173,7 +175,7 @@ public class GtasksLoginActivity extends InjectingListActivity {
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == REQUEST_AUTHENTICATE && resultCode == RESULT_OK){
final ProgressDialog pd = DialogUtilities.progressDialog(this, this.getString(R.string.gtasks_GLA_authenticating));
final ProgressDialog pd = dialogBuilder.newProgressDialog(R.string.gtasks_GLA_authenticating);
pd.show();
final Account a = accountManager.getAccountByName(accountName);
getAuthToken(a, pd);

@ -119,7 +119,7 @@ public class RepeatControlSet extends PopupControlSet {
dialogValue = 1;
}
new NumberPickerDialog(activity, new OnNumberPickedListener() {
new NumberPickerDialog(activity, preferences.getDialogTheme(), new OnNumberPickedListener() {
@Override
public void onNumberPicked(int number) {
setRepeatValue(number);

@ -15,6 +15,8 @@ import com.todoroo.astrid.activity.AstridActivity;
import com.todoroo.astrid.api.AstridApiConstants;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingAppCompatActivity;
import javax.inject.Inject;
import javax.inject.Singleton;
@ -44,20 +46,21 @@ public final class UpgradeService {
}
}
public static class UpgradeActivity extends Activity {
public static class UpgradeActivity extends InjectingAppCompatActivity {
private ProgressDialog dialog;
public static final String TOKEN_FROM_VERSION = "from_version"; //$NON-NLS-1$
private int from;
private boolean finished = false;
@Inject DialogBuilder dialogBuilder;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
from = getIntent().getIntExtra(TOKEN_FROM_VERSION, -1);
if (from > 0) {
dialog = DialogUtilities.progressDialog(this,
getString(R.string.DLG_upgrading));
dialog = dialogBuilder.newProgressDialog(R.string.DLG_upgrading);
new Thread() {
@Override
public void run() {

@ -31,9 +31,11 @@ public class TimerControlSet extends PopupControlSet implements TimerActionListe
TimeDurationTaskEditControlSet estimated, elapsed;
private final TextView displayEdit;
private ActivityPreferences preferences;
public TimerControlSet(ActivityPreferences preferences, final Activity activity) {
super(preferences, activity, R.layout.control_set_timers_dialog, R.layout.control_set_timers, R.string.TEA_timer_controls);
this.preferences = preferences;
displayEdit = (TextView) getView().findViewById(R.id.display_row_edit);
displayEdit.setText(R.string.TEA_timer_controls);
@ -81,7 +83,7 @@ public class TimerControlSet extends PopupControlSet implements TimerActionListe
public TimeDurationTaskEditControlSet(Activity activity, View v, IntegerProperty property, int timeButtonId) {
super(activity, -1);
this.property = property;
this.controlSet = new TimeDurationControlSet(activity, v, property, timeButtonId);
this.controlSet = new TimeDurationControlSet(activity, v, property, timeButtonId, preferences);
}
@Override

@ -42,10 +42,10 @@ public class NNumberPickerDialog extends AlertDialog implements OnClickListener
* @param separators text separating the spinners. whole array, or individual
* elements can be null
*/
public NNumberPickerDialog(Context context, OnNNumberPickedListener callBack,
public NNumberPickerDialog(Context context, int theme, OnNNumberPickedListener callBack,
String title, int[] initialValue, int[] incrementBy, int[] start,
int[] end, String[] separators) {
super(context);
super(context, theme);
mCallback = callBack;
setButton(DialogInterface.BUTTON_POSITIVE, context.getText(android.R.string.ok), this);

@ -23,9 +23,9 @@ public class NumberPickerDialog extends AlertDialog implements OnClickListener {
private final NumberPicker mPicker;
private final OnNumberPickedListener mCallback;
public NumberPickerDialog(Context context, OnNumberPickedListener callBack,
public NumberPickerDialog(Context context, int theme, OnNumberPickedListener callBack,
String title, int initialValue, int incrementBy, int start, int end) {
super(context);
super(context, theme);
mCallback = callBack;
setButton(DialogInterface.BUTTON_POSITIVE, context.getText(android.R.string.ok), this);

@ -16,6 +16,7 @@ import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.ui.NNumberPickerDialog.OnNNumberPickedListener;
import org.tasks.R;
import org.tasks.preferences.ActivityPreferences;
public class TimeDurationControlSet implements OnNNumberPickedListener, View.OnClickListener {
@ -26,11 +27,13 @@ public class TimeDurationControlSet implements OnNNumberPickedListener, View.OnC
private NNumberPickerDialog dialog = null;
private Task model;
private final IntegerProperty property;
private ActivityPreferences activityPreferences;
public TimeDurationControlSet(Activity activity, View view, IntegerProperty property,
int timeButtonId) {
int timeButtonId, ActivityPreferences activityPreferences) {
this.activity = activity;
this.property = property;
this.activityPreferences = activityPreferences;
timeButton = (TextView)view.findViewById(timeButtonId);
((View) timeButton.getParent()).setOnClickListener(this);
@ -78,7 +81,7 @@ public class TimeDurationControlSet implements OnNNumberPickedListener, View.OnC
@Override
public void onClick(View v) {
if(dialog == null) {
dialog = new NNumberPickerDialog(activity, this,
dialog = new NNumberPickerDialog(activity, activityPreferences.getDialogTheme(), this,
activity.getResources().getString(R.string.DLG_hour_minutes),
new int[] {0, 0}, new int[] {1, 5}, new int[] {0, 0},
new int[] {999, 59}, new String[] {":", null});

@ -3,17 +3,16 @@ package org.tasks.activities;
import android.content.DialogInterface;
import android.os.Bundle;
import com.todoroo.andlib.utility.DialogUtilities;
import com.todoroo.astrid.dao.Database;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.preferences.Preferences;
import javax.inject.Inject;
public class ClearAllDataActivity extends InjectingActivity {
public class ClearAllDataActivity extends InjectingAppCompatActivity {
@Inject Database database;
@Inject Preferences preferences;

@ -3,16 +3,15 @@ package org.tasks.activities;
import android.content.DialogInterface;
import android.os.Bundle;
import com.todoroo.andlib.utility.DialogUtilities;
import com.todoroo.astrid.gtasks.sync.GtasksSyncV2Provider;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import javax.inject.Inject;
public class ClearGtaskDataActivity extends InjectingActivity {
public class ClearGtaskDataActivity extends InjectingAppCompatActivity {
@Inject GtasksSyncV2Provider gtasksSyncV2Provider;
@Inject DialogBuilder dialogBuilder;

@ -11,12 +11,12 @@ import com.todoroo.astrid.service.TaskService;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.ui.ProgressDialogAsyncTask;
import javax.inject.Inject;
public class DeleteAllCalendarEventsActivity extends InjectingActivity {
public class DeleteAllCalendarEventsActivity extends InjectingAppCompatActivity {
@Inject TaskService taskService;
@Inject GCalHelper gcalHelper;

@ -13,12 +13,12 @@ import com.todoroo.astrid.service.TaskService;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.ui.ProgressDialogAsyncTask;
import javax.inject.Inject;
public class DeleteCompletedActivity extends InjectingActivity {
public class DeleteCompletedActivity extends InjectingAppCompatActivity {
@Inject TaskService taskService;
@Inject GCalHelper gcalHelper;

@ -12,12 +12,12 @@ import com.todoroo.astrid.service.TaskService;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.ui.ProgressDialogAsyncTask;
import javax.inject.Inject;
public class DeleteCompletedEventsActivity extends InjectingActivity {
public class DeleteCompletedEventsActivity extends InjectingAppCompatActivity {
@Inject TaskService taskService;
@Inject GCalHelper gcalHelper;

@ -4,17 +4,19 @@ import android.os.Bundle;
import com.todoroo.astrid.backup.TasksXmlExporter;
import org.tasks.injection.InjectingActivity;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingAppCompatActivity;
import javax.inject.Inject;
public class ExportTaskActivity extends InjectingActivity {
public class ExportTaskActivity extends InjectingAppCompatActivity {
@Inject TasksXmlExporter xmlExporter;
@Inject DialogBuilder dialogBuilder;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
xmlExporter.exportTasks(ExportTaskActivity.this, TasksXmlExporter.ExportType.EXPORT_TYPE_MANUAL);
xmlExporter.exportTasks(ExportTaskActivity.this, TasksXmlExporter.ExportType.EXPORT_TYPE_MANUAL, dialogBuilder);
}
}

@ -11,12 +11,12 @@ import com.todoroo.astrid.api.Filter;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.filters.FilterCounter;
import org.tasks.filters.FilterProvider;
import org.tasks.injection.InjectingFragmentActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.preferences.ActivityPreferences;
import javax.inject.Inject;
public class FilterSelectionActivity extends InjectingFragmentActivity {
public class FilterSelectionActivity extends InjectingAppCompatActivity {
public static final String EXTRA_FILTER_NAME = "extra_filter_name";
public static final String EXTRA_FILTER_SQL = "extra_filter_query";

@ -9,15 +9,17 @@ import com.todoroo.astrid.backup.TasksXmlImporter;
import com.todoroo.astrid.utility.Flags;
import org.tasks.R;
import org.tasks.injection.InjectingActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.preferences.ActivityPreferences;
import org.tasks.preferences.Preferences;
import javax.inject.Inject;
public class ImportTaskActivity extends InjectingActivity {
public class ImportTaskActivity extends InjectingAppCompatActivity {
@Inject TasksXmlImporter xmlImporter;
@Inject Preferences preferences;
@Inject
ActivityPreferences preferences;
private boolean initiatedImport;
@ -25,7 +27,7 @@ public class ImportTaskActivity extends InjectingActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AlertDialog filePicker =
new FilePickerBuilder(this, R.string.import_file_prompt, preferences.getBackupDirectory())
new FilePickerBuilder(this, R.string.import_file_prompt, preferences.getBackupDirectory(), preferences.getDialogTheme())
.setOnFilePickedListener(new FilePickerBuilder.OnFilePickedListener() {
@Override
public void onFilePicked(String filePath) {

@ -10,6 +10,9 @@ import org.tasks.dialogs.LocationPickerDialog;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.location.Geofence;
import org.tasks.location.OnLocationPickedHandler;
import org.tasks.preferences.ActivityPreferences;
import javax.inject.Inject;
public class LocationPickerActivity extends InjectingAppCompatActivity implements OnLocationPickedHandler, DialogInterface.OnCancelListener {
@ -17,10 +20,14 @@ public class LocationPickerActivity extends InjectingAppCompatActivity implement
public static final String EXTRA_GEOFENCE = "extra_geofence";
@Inject ActivityPreferences activityPreferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
activityPreferences.applyDialogTheme();
FragmentManager supportFragmentManager = getSupportFragmentManager();
LocationPickerDialog dialog = (LocationPickerDialog) supportFragmentManager.findFragmentByTag(FRAG_TAG_LOCATION_PICKER);
if (dialog == null) {

@ -14,12 +14,12 @@ import com.todoroo.astrid.service.TaskService;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.ui.ProgressDialogAsyncTask;
import javax.inject.Inject;
public class PurgeDeletedActivity extends InjectingActivity {
public class PurgeDeletedActivity extends InjectingAppCompatActivity {
@Inject TaskService taskService;
@Inject TaskDeleter taskDeleter;

@ -5,7 +5,6 @@ import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AlertDialog;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import com.todoroo.astrid.core.SortHelper;
@ -14,14 +13,18 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
import org.tasks.injection.InjectingFragmentActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.preferences.ActivityPreferences;
import org.tasks.preferences.Preferences;
import java.util.ArrayList;
import java.util.List;
import javax.inject.Inject;
import static com.todoroo.andlib.utility.AndroidUtilities.atLeastLollipop;
public class SortActivity extends InjectingFragmentActivity {
public class SortActivity extends InjectingAppCompatActivity {
private static final Logger log = LoggerFactory.getLogger(SortActivity.class);
@ -30,6 +33,7 @@ public class SortActivity extends InjectingFragmentActivity {
@Inject Preferences preferences;
@Inject DialogBuilder dialogBuilder;
@Inject ActivityPreferences activityPreferences;
private boolean manualEnabled;
private AlertDialog alertDialog;
@ -39,19 +43,21 @@ public class SortActivity extends InjectingFragmentActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
activityPreferences.applyDialogTheme();
manualEnabled = getIntent().getBooleanExtra(EXTRA_MANUAL_ENABLED, false);
ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_single_choice);
List<String> items = new ArrayList<>();
if (manualEnabled) {
adapter.add(getString(R.string.SSD_sort_drag));
items.add(getString(R.string.SSD_sort_drag));
}
adapter.add(getString(R.string.SSD_sort_auto));
adapter.add(getString(R.string.SSD_sort_due));
adapter.add(getString(R.string.SSD_sort_importance));
adapter.add(getString(R.string.SSD_sort_alpha));
adapter.add(getString(R.string.SSD_sort_modified));
items.add(getString(R.string.SSD_sort_auto));
items.add(getString(R.string.SSD_sort_due));
items.add(getString(R.string.SSD_sort_importance));
items.add(getString(R.string.SSD_sort_alpha));
items.add(getString(R.string.SSD_sort_modified));
selectedIndex = getIndex(preferences.getSortMode());
if (manualEnabled) {
@ -63,7 +69,7 @@ public class SortActivity extends InjectingFragmentActivity {
}
alertDialog = dialogBuilder.newDialog()
.setSingleChoiceItems(adapter, selectedIndex, new DialogInterface.OnClickListener() {
.setSingleChoiceItems(items.toArray(new String[items.size()]), selectedIndex, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
selectedIndex = which;

@ -10,7 +10,7 @@ import org.tasks.preferences.ActivityPreferences;
import javax.inject.Inject;
public class DialogBuilder {
private Activity activity;
private final Activity activity;
private final ActivityPreferences activityPreferences;
@Inject
@ -32,8 +32,14 @@ public class DialogBuilder {
}
public ProgressDialog newProgressDialog() {
ProgressDialog dialog = new ProgressDialog(activity, activityPreferences.getDialogTheme());
dialog.setMessage(activity.getString(R.string.DLG_wait));
return new ProgressDialog(activity, activityPreferences.getDialogTheme());
}
public ProgressDialog newProgressDialog(int messageId) {
ProgressDialog dialog = newProgressDialog();
dialog.setIndeterminate(true);
dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
dialog.setMessage(activity.getString(messageId));
dialog.setCancelable(false);
dialog.setCanceledOnTouchOutside(false);
return dialog;

@ -2,6 +2,7 @@ package org.tasks.injection;
import android.app.Activity;
import com.todoroo.astrid.actfm.ActFmGoogleAuthActivity;
import com.todoroo.astrid.actfm.FilterSettingsActivity;
import com.todoroo.astrid.actfm.TagSettingsActivity;
import com.todoroo.astrid.activity.BeastModePreferences;
@ -20,6 +21,7 @@ import com.todoroo.astrid.gcal.CalendarReminderActivity;
import com.todoroo.astrid.gtasks.GtasksPreferences;
import com.todoroo.astrid.gtasks.auth.GtasksLoginActivity;
import com.todoroo.astrid.reminders.ReminderPreferences;
import com.todoroo.astrid.service.UpgradeService;
import com.todoroo.astrid.widget.WidgetConfigActivity;
import org.tasks.activities.ClearAllDataActivity;
@ -90,7 +92,9 @@ import dagger.Provides;
SortActivity.class,
FilterSelectionActivity.class,
FileExplore.class,
DonationActivity.class
DonationActivity.class,
ActFmGoogleAuthActivity.class,
UpgradeService.UpgradeActivity.class
})
public class ActivityModule {

@ -1,28 +0,0 @@
package org.tasks.injection;
import android.app.Activity;
import android.os.Bundle;
import dagger.ObjectGraph;
public abstract class InjectingActivity extends Activity implements Injector {
private ObjectGraph objectGraph;
@Override
protected void onCreate(Bundle savedInstanceState) {
objectGraph = ((Injector) getApplication()).getObjectGraph().plus(new ActivityModule(this));
inject(this);
super.onCreate(savedInstanceState);
}
@Override
public void inject(Object caller) {
objectGraph.inject(caller);
}
@Override
public ObjectGraph getObjectGraph() {
return objectGraph;
}
}

@ -1,28 +0,0 @@
package org.tasks.injection;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import dagger.ObjectGraph;
public abstract class InjectingFragmentActivity extends FragmentActivity implements Injector {
private ObjectGraph objectGraph;
@Override
protected void onCreate(Bundle savedInstanceState) {
objectGraph = ((Injector) getApplication()).getObjectGraph().plus(new ActivityModule(this));
inject(this);
super.onCreate(savedInstanceState);
}
@Override
public void inject(Object caller) {
objectGraph.inject(caller);
}
@Override
public ObjectGraph getObjectGraph() {
return objectGraph;
}
}

@ -3,13 +3,11 @@ package org.tasks.reminders;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v7.app.AppCompatActivity;
import org.tasks.injection.InjectingFragmentActivity;
import org.tasks.injection.InjectingAppCompatActivity;
public class NotificationActivity extends InjectingFragmentActivity implements DialogInterface.OnDismissListener {
public class NotificationActivity extends InjectingAppCompatActivity implements DialogInterface.OnDismissListener {
private static final String FRAG_TAG_NOTIFICATION_FRAGMENT = "frag_tag_notification_fragment";

@ -13,12 +13,12 @@ import com.todoroo.astrid.service.TaskService;
import org.joda.time.DateTime;
import org.tasks.activities.DateAndTimePickerActivity;
import org.tasks.activities.TimePickerActivity;
import org.tasks.injection.InjectingFragmentActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import org.tasks.notifications.NotificationManager;
import javax.inject.Inject;
public class SnoozeActivity extends InjectingFragmentActivity implements SnoozeCallback, DialogInterface.OnCancelListener {
public class SnoozeActivity extends InjectingAppCompatActivity implements SnoozeCallback, DialogInterface.OnCancelListener {
private static final String FRAG_TAG_SNOOZE_DIALOG = "frag_tag_snooze_dialog";
private static final String EXTRA_PICKING_DATE_TIME = "extra_picking_date_time";

@ -59,7 +59,7 @@ public class BackupIntentService extends MidnightIntentService {
}
try {
xmlExporter.exportTasks(context, TasksXmlExporter.ExportType.EXPORT_TYPE_SERVICE);
xmlExporter.exportTasks(context, TasksXmlExporter.ExportType.EXPORT_TYPE_SERVICE, null);
} catch (Exception e) {
log.error(e.getMessage(), e);
}

@ -5,6 +5,7 @@ import android.app.ProgressDialog;
import android.os.AsyncTask;
import android.widget.Toast;
import org.tasks.R;
import org.tasks.dialogs.DialogBuilder;
public abstract class ProgressDialogAsyncTask extends AsyncTask<Void, Void, Integer> {
@ -20,7 +21,7 @@ public abstract class ProgressDialogAsyncTask extends AsyncTask<Void, Void, Inte
@Override
protected void onPreExecute() {
progressDialog = dialogBuilder.newProgressDialog();
progressDialog = dialogBuilder.newProgressDialog(R.string.DLG_wait);
progressDialog.show();
}

@ -9,11 +9,11 @@ import com.todoroo.astrid.service.TaskCreator;
import org.tasks.R;
import org.tasks.injection.ForApplication;
import org.tasks.injection.InjectingActivity;
import org.tasks.injection.InjectingAppCompatActivity;
import javax.inject.Inject;
public class VoiceCommandActivity extends InjectingActivity {
public class VoiceCommandActivity extends InjectingAppCompatActivity {
@Inject TaskCreator taskCreator;
@Inject @ForApplication Context context;

@ -13,9 +13,7 @@
<string name="backup_BPr_header">النسخ الإحتياطي</string>
<string name="backup_BAc_import">إستيراد مهام</string>
<string name="export_toast_no_tasks">لا يوجد مهام للتصدير.</string>
<string name="export_progress_title">تصدير...</string>
<string name="import_summary_title"> إستعادة المُلخَّص</string>
<string name="import_progress_title">إستيراد...</string>
<string name="read_permission_label">إذن المهام</string>
<string name="read_permission_desc">قراءة المهام، عرض فلتر المهمه</string>
<string name="write_permission_label">أخذ التصاريح</string>

@ -17,13 +17,11 @@
<string name="backup_BAc_export">Експортиране на задачи</string>
<string name="export_toast">Създадено е резервно копие %1$s на %2$s.</string>
<string name="export_toast_no_tasks">Няма задачи за експортиране</string>
<string name="export_progress_title">Експортиране...</string>
<string name="import_summary_title">Възстановяване на описанието</string>
<string name="import_summary_message">Файлът %1$s съдържа %2$s.\n\n
%3$s импортирани,\n
%4$s вече съществуват\n
%5$s имат грешки\n</string>
<string name="import_progress_title">Импортиране...</string>
<string name="import_progress_read">Прочитане на задачи %d...</string>
<string name="DLG_error_sdcard">Нямате достъп до папка: %s</string>
<string name="DLG_error_sdcard_general">SD картата не може да бъде достъпена!</string>

@ -14,9 +14,7 @@
<string name="backup_BAc_import">Importa tasques</string>
<string name="backup_BAc_export">Exporta tasques</string>
<string name="export_toast_no_tasks">Sense tasques que exportar</string>
<string name="export_progress_title">S\'està exportant...</string>
<string name="import_summary_title">Resum de Restauració</string>
<string name="import_progress_title">S\'està important...</string>
<string name="import_progress_read">S\'està llegint la tasca %d</string>
<string name="DLG_error_sdcard">No es pot accedir a la carpeta: %s</string>
<string name="DLG_error_sdcard_general">No s\'ha pogut accedir a la targeta SD.</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">Exportovat úkoly</string>
<string name="export_toast">Zálohovány %1$s do %2$s.</string>
<string name="export_toast_no_tasks">Žádné úkoly pro export.</string>
<string name="export_progress_title">Exportuji...</string>
<string name="import_summary_title">Souhrn obnovy</string>
<string name="import_summary_message">Soubor %1$s obsahuje %2$s.\n\n %3$s importováno,\n %4$s již existuje\n %5$s je chybných\n</string>
<string name="import_progress_title">Probíhá import...</string>
<string name="import_progress_read">Načítávání úkolu %d...</string>
<string name="DLG_error_sdcard">Chyba v přístupu k adresáři: %s</string>
<string name="DLG_error_sdcard_general">Chyba v přístupu k SD kartě!</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">Eksportér opgaver</string>
<string name="export_toast">Sikkerhedskopierede %1$s til %2$s.</string>
<string name="export_toast_no_tasks">Ingen opgaver at eksportere</string>
<string name="export_progress_title">Eksporterer...</string>
<string name="import_summary_title">Opsummering af gendannelse</string>
<string name="import_summary_message">Filen %1$s indeholdt %2$s.\n\n %3$s importeret,\n %4$s findes allerede\n %5$s indeholdt fejl\n</string>
<string name="import_progress_title">Importerer...</string>
<string name="import_progress_read">Læser opgave %d...</string>
<string name="DLG_error_sdcard">Kan ikke få adgang til mappen: %s</string>
<string name="DLG_error_sdcard_general">Kan ikke få adgang til dig SD-kort!</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">Aufgaben exportieren</string>
<string name="export_toast">Gesichert von %1$s bis %2$s.</string>
<string name="export_toast_no_tasks">Keine Aufgaben zu exportieren.</string>
<string name="export_progress_title">Es wird exportiert …</string>
<string name="import_summary_title">Zusammenfassung wiederherstellen</string>
<string name="import_summary_message">Datei %1$s enthielt %2$s Aufgaben.\n\n %3$s wurden importiert,\n %4$s waren schon vorhanden (übersprungen)\n %5$s waren fehlerhaft\n</string>
<string name="import_progress_title">Es wird importiert …</string>
<string name="import_progress_read">Aufgabe %d wird gelesen …</string>
<string name="DLG_error_sdcard">Ordner konnte nicht geöffnet werden: %s</string>
<string name="DLG_error_sdcard_general">Auf die SD-Karte konnte nicht zugegriffen werden!</string>

@ -14,13 +14,11 @@
<string name="backup_BAc_export">Εξαγωγή εργασιών</string>
<string name="export_toast">Αποθηκεύση ασφαλείας %1$s στο %2$s.</string>
<string name="export_toast_no_tasks">Δεν υπάρχουν εργασίες για εξαγωγή</string>
<string name="export_progress_title">Εξαγωγή...</string>
<string name="import_summary_title">Σύνοψη επαναφοράς</string>
<string name="import_summary_message">Αρχείο %1$s περιέχεται %2$s.\n\n
%3$s καταχωρήθηκε,\n
%4$s υπάρχει ήδηt\n
%5$s έχει σφάλματα\n</string>
<string name="import_progress_title">Εισαγωγή...</string>
<string name="import_progress_read">Ανάγνωση εργασίας %d...</string>
<string name="DLG_error_sdcard">Δεν υπάρχει πρόσβαση στον φάκελο: %s</string>
<string name="DLG_error_sdcard_general">Δεν υπάρχει πρόσβαση στην SD κάρτα!</string>

@ -17,10 +17,8 @@
<string name="backup_BAc_export">Exportar tareas</string>
<string name="export_toast">Respaldadas %1$s de %2$s.</string>
<string name="export_toast_no_tasks">No hay tareas para exportar</string>
<string name="export_progress_title">Exportando...</string>
<string name="import_summary_title">Resumen de restauración</string>
<string name="import_summary_message">El fichero %1$s contenia %2$s.\n\n %3$s importadas\n %4$s ya existian\n %5$s tenian errores\n</string>
<string name="import_progress_title">Importando...</string>
<string name="import_progress_read">Leyendo tarea %d...</string>
<string name="DLG_error_sdcard">No se puede acceder a la carpeta: %s</string>
<string name="DLG_error_sdcard_general">¡No se pudo acceder a su tarjeta de memoria SD!</string>

@ -17,10 +17,8 @@
<string name="backup_BAc_export">Exporter des tâches</string>
<string name="export_toast">Sauvegardé %1$s dans %2$s.</string>
<string name="export_toast_no_tasks">Pas de tâches à exporter</string>
<string name="export_progress_title">Exportation en cours…</string>
<string name="import_summary_title">Résumé de la restauration</string>
<string name="import_summary_message">Le fichier %1$s contenait %2$s.\n\n %3$s importées,\n %4$s existent déjà\n %5$s avaient des erreurs\n</string>
<string name="import_progress_title">Importation en cours…</string>
<string name="import_progress_read">Lecture de la tâche %d…</string>
<string name="DLG_error_sdcard">Impossible d\'accéder au dossier : %s</string>
<string name="DLG_error_sdcard_general">Impossible d\'accéder à la carte SD !</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">Esporta compiti</string>
<string name="export_toast">Backup di %1$s su %2$s eseguito.</string>
<string name="export_toast_no_tasks">Nessun compito da esportare.</string>
<string name="export_progress_title">Esportazione...</string>
<string name="import_summary_title">Ripristina sommario</string>
<string name="import_summary_message">Il File %1$s contiene %2$s.\n\n %3$s importati\n %4$s esiste già\n %5$s contiene errori\n</string>
<string name="import_progress_title">Importazione in corso...</string>
<string name="import_progress_read">Lettura compito %d...</string>
<string name="DLG_error_sdcard">Impossibile accedere alla cartella: %s</string>
<string name="DLG_error_sdcard_general">Impossibile accedere alla scheda SD!</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">ייצוא משימות</string>
<string name="export_toast">בוצע גיבוי של %1$s אל %2$s.</string>
<string name="export_toast_no_tasks">אין משימות לייצוא.</string>
<string name="export_progress_title">מייצאת...</string>
<string name="import_summary_title">סיכום פעולת השחזור</string>
<string name="import_summary_message">\"הקובץ \' %1$s\' הכיל %2$s משימות: \n\n %3$s יובאו,\n %4$s היו קיימות כבר,\nוב־%5$s היו שגיאות.\n\"</string>
<string name="import_progress_title">מייבאת...</string>
<string name="import_progress_read">קוראת משימה %d...</string>
<string name="DLG_error_sdcard">לא ניתן לגשת לתיקיה: %s</string>
<string name="DLG_error_sdcard_general">לא ניתן לגשת לכרטיס ה־SD שלך!</string>

@ -17,10 +17,8 @@
<string name="backup_BAc_export">タスクのエクスポート</string>
<string name="export_toast">%1$s を %2$s にバックアップしました。</string>
<string name="export_toast_no_tasks">エクスポートするタスクがありません</string>
<string name="export_progress_title">エクスポート中</string>
<string name="import_summary_title">復元の概要</string>
<string name="import_summary_message">ファイル %1$s の %2$s 中、\n\n成功: %3$s\n既に存在: %4$s\n失敗: %5$s\n</string>
<string name="import_progress_title">インポート中</string>
<string name="import_progress_read">タスク %d を読み込み中</string>
<string name="DLG_error_sdcard">フォルダ %s を開けません</string>
<string name="DLG_error_sdcard_general">SDカードにアクセスできません</string>

@ -15,13 +15,11 @@
<string name="backup_BAc_export">일정 내보내기</string>
<string name="export_toast">%1$s 를 %2$s 로 백업함.</string>
<string name="export_toast_no_tasks">내보낼 일정 없음.</string>
<string name="export_progress_title">내보내는 중...</string>
<string name="import_summary_title">간편 복원</string>
<string name="import_summary_message">파일 %1$s: %2$s 개의 일정 포함.\n\n
%3$s 개 가져오기 성공,\n
%4$s 개 이미 존재,\n
%5$s 개 에러 발생\n</string>
<string name="import_progress_title">가져오는 중...</string>
<string name="import_progress_read">일정 %d 읽는 중...</string>
<string name="DLG_error_sdcard">폴더에 접근 불가: %s</string>
<string name="DLG_error_sdcard_general">SD 카드에 접근할 수 없습니다!</string>

@ -10,10 +10,8 @@
<string name="backup_BAc_export">Eksporter oppgaver</string>
<string name="export_toast">Backup ferdig %1$s av %2$s.</string>
<string name="export_toast_no_tasks">Ingen oppgaver å eksportere</string>
<string name="export_progress_title">Eksporterer...</string>
<string name="import_summary_title">Gjennopprettingssammendrag</string>
<string name="import_summary_message">Filen %1$s inneholder %2$s.\n\n %3$s importert,\n %4$s eksisterer allerede\n %5$s inneholdt feil\n</string>
<string name="import_progress_title">Importerer...</string>
<string name="import_progress_read">Leser oppgave %d...</string>
<string name="DLG_error_sdcard">Får ikke tilgang til mappen: %s</string>
<string name="DLG_error_sdcard_general">Ditt SD-kort er ikke tilgjengelig!</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">Taken exporteren</string>
<string name="export_toast">Back-up gemaakt van %1$s naar %2$s.</string>
<string name="export_toast_no_tasks">Geen taken om te exporteren</string>
<string name="export_progress_title">Exporteren...</string>
<string name="import_summary_title">Samenvatting herstellen</string>
<string name="import_summary_message">Bestand %1$s bevat %2$s.\n\n %3$s geïmporteerd,\n %4$s bestaan al\n %5$s had fouten\n</string>
<string name="import_progress_title">Importeren…</string>
<string name="import_progress_read">Taak %d lezen...</string>
<string name="DLG_error_sdcard">Toegang geweigerd tot map: %s</string>
<string name="DLG_error_sdcard_general">Toegang tot SD-kaart geweigerd!</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">Eksportuj zadania</string>
<string name="export_toast">Zapisano %1$s do %2$s.</string>
<string name="export_toast_no_tasks">Brak zadań do eksportowania.</string>
<string name="export_progress_title">Eksportowanie...</string>
<string name="import_summary_title">Podsumowanie odzyskiwania</string>
<string name="import_summary_message">Plik %1$s zawiera %2$s.\n\n %3$s zaimportowanych,\n %4$s już istnieje\n %5$s zawiera błędy\n</string>
<string name="import_progress_title">Importowanie...</string>
<string name="import_progress_read">Czytanie zadania %d...</string>
<string name="DLG_error_sdcard">Brak dostępu do folderu: %s</string>
<string name="DLG_error_sdcard_general">Brak dostępu do Twojej karty SD!</string>

@ -14,10 +14,8 @@
<string name="backup_BAc_export">Exportar tarefas</string>
<string name="export_toast">Backups feitos: de %1$s para %2$s.</string>
<string name="export_toast_no_tasks">Nenhuma tarefa a exportar</string>
<string name="export_progress_title">Exportando...</string>
<string name="import_summary_title">Sumário da restauração</string>
<string name="import_summary_message">Arquivo %1$s contendo %2$s.\n\n %3$s importada(s),\n %4$s já existia(m)\n %5$s tinha(m) erro(s)\n</string>
<string name="import_progress_title">Importando...</string>
<string name="import_progress_read">Lendo tarefa %d...</string>
<string name="DLG_error_sdcard">Não foi possível acessar a pasta: %s</string>
<string name="DLG_error_sdcard_general">Não foi possível acessar seu cartão SD!</string>

@ -14,13 +14,11 @@
<string name="backup_BAc_export">Exportar tarefas</string>
<string name="export_toast">Backup de %1$s para %2$s.</string>
<string name="export_toast_no_tasks">Nenhuma tarefa para exportar.</string>
<string name="export_progress_title">A exportar...</string>
<string name="import_summary_title">Resumo de restauro</string>
<string name="import_summary_message">Ficheiro %1$s continha %2$s.\n\n
%3$s importadas,\n
%4$s já existiam\n
%5$s possuem erros\n</string>
<string name="import_progress_title">A importar...</string>
<string name="import_progress_read">A ler tarefa %d...</string>
<string name="DLG_error_sdcard">Não é possível aceder à pasta: %s</string>
<string name="DLG_error_sdcard_general">Não é possível aceder ao seu cartão SD!</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">Экспортировать задачи</string>
<string name="export_toast">Восстановлено %1$s в %2$s.</string>
<string name="export_toast_no_tasks">Нет задач для экспорта.</string>
<string name="export_progress_title">Экспортирование…</string>
<string name="import_summary_title">Итог восстановления</string>
<string name="import_summary_message">Файл %1$s содержал %2$s.\n\n %3$s импортировано,\n %4$s существовало\n %5$s с ошибками\n</string>
<string name="import_progress_title">Импортирование…</string>
<string name="import_progress_read">Чтение задачи %d…</string>
<string name="DLG_error_sdcard">Нет доступа к папке:%s</string>
<string name="DLG_error_sdcard_general">Нет доступа к карте памяти!</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">Exportovať úlohy</string>
<string name="export_toast">Zálohovaný %1$s do %2$s.</string>
<string name="export_toast_no_tasks">Žiadne úlohy na exportovanie</string>
<string name="export_progress_title">Exportovanie...</string>
<string name="import_summary_title">Obnoviť zhrnutie</string>
<string name="import_summary_message">Súbor %1$s obsahuje %2$s.\n\n %3$s importované,\n %4$s už existuje\n%5$s je chybných\n</string>
<string name="import_progress_title">Importovanie...</string>
<string name="import_progress_read">Čítanie úloh %d...</string>
<string name="DLG_error_sdcard">Chyba v prístupe k súboru: %s</string>
<string name="DLG_error_sdcard_general">Chyba v prístupe k SD karte!</string>

@ -15,13 +15,11 @@
<string name="backup_BAc_export">Izvozi opravke</string>
<string name="export_toast">Varnostna kopija za %1$s shranjena v %2$s.</string>
<string name="export_toast_no_tasks">Ni opravkov za izvoz.</string>
<string name="export_progress_title">Izvažam...</string>
<string name="import_summary_title">Povzetek obnove</string>
<string name="import_summary_message">Datoteka %1$s je vsebovala %2$s.\n\n
%3$s uvožen,\n
%4$s že obstaja\n
%5$s imel napake\n</string>
<string name="import_progress_title">Uvažam...</string>
<string name="import_progress_read">Berem opravek %d...</string>
<string name="DLG_error_sdcard">Datoteka:%s ni dostopna</string>
<string name="DLG_error_sdcard_general">Tvoja SD kartica ni dostopna.</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">Exportera uppgifter</string>
<string name="export_toast">Säkerhetskopierade %1$s till %2$s.</string>
<string name="export_toast_no_tasks">Inga uppgifter att exportera</string>
<string name="export_progress_title">Exporterar...</string>
<string name="import_summary_title">Återställningssammanfattning</string>
<string name="import_summary_message">Filen %1$s innehöll %2$s.\n\n %3$s importerade,\n %4$s existerar redan\n %5$s hade fel\n</string>
<string name="import_progress_title">Importerar...</string>
<string name="import_progress_read">Läser uppgift %d...</string>
<string name="DLG_error_sdcard">Mappåtkomst nekad: %s</string>
<string name="DLG_error_sdcard_general">SD-kort ej tillgängligt!</string>

@ -9,8 +9,6 @@
<string name="actfm_picture_gallery">เลือกจากคลังภาพ</string>
<string name="actfm_picture_clear">ล้างภาพ</string>
<string name="backup_BPr_header">สำรองข้อมูล</string>
<string name="export_progress_title">กำลังส่งออก...</string>
<string name="import_progress_title">กำลังนำเข้า...</string>
<string name="import_progress_read">กำลังอ่านแผนงาน %d...</string>
<string name="DLG_error_sdcard">ไม่สามารถเข้าถึงแฟ้ม: %s</string>
<string name="DLG_error_sdcard_general">ไม่สามารถเข้าถึง SD Card ได้!</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">Görevleri Dışa Aktar</string>
<string name="export_toast">%1$s şuraya yedeklendi: %2$s.</string>
<string name="export_toast_no_tasks">Dışa Aktarılacak Görev Yok.</string>
<string name="export_progress_title">Dışa Aktarılıyor...</string>
<string name="import_summary_title">Geri Alma Özeti</string>
<string name="import_summary_message">%1$s dosyası %2$s dosyasını kapsadı.\n\n %3$s içeri aktarıldı, \n %4$s zaten mevcut\n %5$s hatalar mevcut\n</string>
<string name="import_progress_title">İçe Aktarılıyor...</string>
<string name="import_progress_read">%d görev okunuyor..</string>
<string name="DLG_error_sdcard">%s dizinine erişilemedi.</string>
<string name="DLG_error_sdcard_general">Hafıza kartına erişemiyorum!</string>

@ -15,13 +15,11 @@
<string name="backup_BAc_export">Експорт завдань</string>
<string name="export_toast">Резервні копії %1$s для %2$s.</string>
<string name="export_toast_no_tasks">Відсутні завдання для експорту.</string>
<string name="export_progress_title">Експортування</string>
<string name="import_summary_title">Відновити підсумок</string>
<string name="import_summary_message">Файл %1$s містяться %2$s.\n\n
%3$s імпортовані,\n
%4$s вже існують\n
%5$s були помилки\n</string>
<string name="import_progress_title">Імпортування...</string>
<string name="import_progress_read">Читання завдання %d...</string>
<string name="DLG_error_sdcard">Немає доступу до папки: %s</string>
<string name="DLG_error_sdcard_general">Немає доступу до карти SD!</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">导出任务</string>
<string name="export_toast">已将 %1$s 备份至 %2$s。</string>
<string name="export_toast_no_tasks">没有要导出的任务。</string>
<string name="export_progress_title">导出中...</string>
<string name="import_summary_title">还原摘要</string>
<string name="import_summary_message">文件 %1$s 包含 %2$s 个任务。\n\n %3$s 个已导入,\n %4$s 个已存在\n %5$s 个存在错误\n</string>
<string name="import_progress_title">导入中...</string>
<string name="import_progress_read">读取任务 %d...</string>
<string name="DLG_error_sdcard">无法开启文件夹:%s</string>
<string name="DLG_error_sdcard_general">无法访问您的 SD 卡!</string>

@ -15,10 +15,8 @@
<string name="backup_BAc_export">匯出工作</string>
<string name="export_toast">備份 %1$s 至 %2$s.</string>
<string name="export_toast_no_tasks">沒有工作需匯出</string>
<string name="export_progress_title">匯出中...</string>
<string name="import_summary_title">還原摘要</string>
<string name="import_summary_message">檔案 %1$s 已包含 %2$s.\n\n %3$s 已匯入,\n %4$s 已存在\n %5$s 有問題\n</string>
<string name="import_progress_title">匯入中...</string>
<string name="import_progress_read">讀取工作 %d...</string>
<string name="DLG_error_sdcard">無法開啟資料夾: %s</string>
<string name="DLG_error_sdcard_general">無法存取您的SD卡!</string>

@ -3,6 +3,7 @@
<dimen name="navigation_drawer_width">260dp</dimen>
<dimen name="navigation_drawer_horizontal_margins">16dp</dimen>
<dimen name="widget_margin">8dp</dimen>
<dimen name="dialog_width">300dp</dimen>
<dimen name="task_edit_title_padding_top_bottom">18dp</dimen>
<dimen name="task_edit_padding_top_bottom">9dp</dimen>

@ -20,9 +20,6 @@
<string name="export_toast_no_tasks">No tasks to export.</string>
<!-- Progress Dialog Title for exporting -->
<string name="export_progress_title">Exporting...</string>
<!-- Backup: Title of Import Summary Dialog -->
<string name="import_summary_title">Restore summary</string>
@ -34,10 +31,7 @@ File %1$s contained %2$s.\n\n
%5$s had errors\n
</string>
<!-- Progress Dialog Title for importing -->
<string name="import_progress_title">Importing...</string>
<!-- Progress Dialog text for import reading task (%d -> task number)-->
<!-- Progress Dialog text for import reading task (%d -> task number)-->
<string name="import_progress_read">Reading task %d...</string>
<!-- Backup: Dialog when unable to open a file -->

@ -1,5 +1,14 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="TranslucentDialog" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowAnimationStyle">@android:style/Animation</item>
</style>
<!-- ========================================================== General -->
<style name="ActionBar.TitleText" parent="TextAppearance.AppCompat.Widget.ActionBar.Title">

@ -68,6 +68,8 @@
</style>
<style name="TasksDialogDark" parent="@style/Theme.AppCompat.Dialog">
<item name="android:minWidth">@dimen/dialog_width</item>
<item name="android:maxWidth">@dimen/dialog_width</item>
<item name="colorPrimary">@android:color/black</item>
<item name="colorPrimaryDark">@android:color/black</item>
<item name="colorAccent">@android:color/white</item>

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="LightBase" parent="Theme.AppCompat.Light.DarkActionBar">
<style name="LightBase" parent="Theme.AppCompat.Light.NoActionBar">
</style>
<style name="Tasks" parent="LightBase">
@ -68,6 +68,8 @@
</style>
<style name="TasksDialog" parent="@style/Theme.AppCompat.Light.Dialog">
<item name="android:minWidth">@dimen/dialog_width</item>
<item name="android:maxWidth">@dimen/dialog_width</item>
<item name="colorPrimary">@color/primary</item>
<item name="colorPrimaryDark">@color/primary_dark</item>
<item name="colorAccent">@color/primary</item>

Loading…
Cancel
Save