mirror of https://github.com/tasks/tasks
Replace import/export activities with dialogs
parent
7f0b4b850b
commit
659cd0a76b
@ -1,28 +0,0 @@
|
||||
package org.tasks.activities;
|
||||
|
||||
import android.os.Bundle;
|
||||
|
||||
import com.todoroo.astrid.backup.TasksXmlExporter;
|
||||
|
||||
import org.tasks.dialogs.DialogBuilder;
|
||||
import org.tasks.injection.ActivityComponent;
|
||||
import org.tasks.injection.InjectingAppCompatActivity;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
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, dialogBuilder);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void inject(ActivityComponent component) {
|
||||
component.inject(this);
|
||||
}
|
||||
}
|
@ -1,56 +0,0 @@
|
||||
package org.tasks.activities;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
|
||||
import com.todoroo.astrid.backup.TasksXmlImporter;
|
||||
|
||||
import org.tasks.analytics.Tracker;
|
||||
import org.tasks.files.FileExplore;
|
||||
import org.tasks.injection.ActivityComponent;
|
||||
import org.tasks.injection.InjectingAppCompatActivity;
|
||||
import org.tasks.preferences.Preferences;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
public class ImportTaskActivity extends InjectingAppCompatActivity {
|
||||
|
||||
private static final int REQUEST_PICKER = 1000;
|
||||
|
||||
@Inject TasksXmlImporter xmlImporter;
|
||||
@Inject Preferences preferences;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
startActivityForResult(new Intent(this, FileExplore.class) {{
|
||||
putExtra(FileExplore.EXTRA_START_PATH, preferences.getBackupDirectory().getAbsolutePath());
|
||||
}}, REQUEST_PICKER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void inject(ActivityComponent component) {
|
||||
component.inject(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||
if (requestCode == REQUEST_PICKER) {
|
||||
if (resultCode == Activity.RESULT_OK) {
|
||||
String filePath = data.getStringExtra(FileExplore.EXTRA_FILE);
|
||||
xmlImporter.importTasks(ImportTaskActivity.this, filePath, new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
finish();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
finish();
|
||||
}
|
||||
} else {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,45 @@
|
||||
package org.tasks.dialogs;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.app.ProgressDialog;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.NonNull;
|
||||
|
||||
import com.todoroo.astrid.backup.TasksXmlExporter;
|
||||
|
||||
import org.tasks.injection.InjectingNativeDialogFragment;
|
||||
import org.tasks.injection.NativeDialogFragmentComponent;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
public class ExportTasksDialog extends InjectingNativeDialogFragment {
|
||||
|
||||
public static ExportTasksDialog newExportTasksDialog() {
|
||||
return new ExportTasksDialog();
|
||||
}
|
||||
|
||||
@Inject DialogBuilder dialogBuilder;
|
||||
@Inject TasksXmlExporter tasksXmlExporter;
|
||||
|
||||
ProgressDialog progressDialog;
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public Dialog onCreateDialog(Bundle savedInstanceState) {
|
||||
progressDialog = dialogBuilder.newProgressDialog();
|
||||
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
|
||||
progressDialog.setProgress(0);
|
||||
progressDialog.setCancelable(false);
|
||||
progressDialog.setIndeterminate(false);
|
||||
progressDialog.show();
|
||||
|
||||
setCancelable(false);
|
||||
tasksXmlExporter.exportTasks(getActivity(), TasksXmlExporter.ExportType.EXPORT_TYPE_MANUAL, progressDialog);
|
||||
return progressDialog;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void inject(NativeDialogFragmentComponent component) {
|
||||
component.inject(this);
|
||||
}
|
||||
}
|
@ -0,0 +1,47 @@
|
||||
package org.tasks.dialogs;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.app.ProgressDialog;
|
||||
import android.os.Bundle;
|
||||
|
||||
import com.todoroo.astrid.backup.TasksXmlImporter;
|
||||
|
||||
import org.tasks.injection.InjectingNativeDialogFragment;
|
||||
import org.tasks.injection.NativeDialogFragmentComponent;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
public class ImportTasksDialog extends InjectingNativeDialogFragment {
|
||||
|
||||
public static ImportTasksDialog newImportTasksDialog(String path) {
|
||||
ImportTasksDialog importTasksDialog = new ImportTasksDialog();
|
||||
Bundle args = new Bundle();
|
||||
args.putString(EXTRA_PATH, path);
|
||||
importTasksDialog.setArguments(args);
|
||||
return importTasksDialog;
|
||||
}
|
||||
|
||||
public static final String EXTRA_PATH = "extra_path";
|
||||
|
||||
@Inject TasksXmlImporter xmlImporter;
|
||||
@Inject DialogBuilder dialogBuilder;
|
||||
|
||||
@Override
|
||||
public Dialog onCreateDialog(Bundle savedInstanceState) {
|
||||
Bundle arguments = getArguments();
|
||||
String path = arguments.getString(EXTRA_PATH);
|
||||
ProgressDialog progressDialog = dialogBuilder.newProgressDialog();
|
||||
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
|
||||
progressDialog.setCancelable(false);
|
||||
progressDialog.setIndeterminate(true);
|
||||
progressDialog.show();
|
||||
setCancelable(false);
|
||||
xmlImporter.importTasks(getActivity(), path, progressDialog);
|
||||
return progressDialog;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void inject(NativeDialogFragmentComponent component) {
|
||||
component.inject(this);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue