|
@@ -24,6 +24,7 @@ import android.Manifest;
|
|
import android.accounts.Account;
|
|
import android.accounts.Account;
|
|
import android.app.DatePickerDialog;
|
|
import android.app.DatePickerDialog;
|
|
import android.content.DialogInterface;
|
|
import android.content.DialogInterface;
|
|
|
|
+import android.content.Intent;
|
|
import android.os.AsyncTask;
|
|
import android.os.AsyncTask;
|
|
import android.os.Bundle;
|
|
import android.os.Bundle;
|
|
import android.support.annotation.NonNull;
|
|
import android.support.annotation.NonNull;
|
|
@@ -51,6 +52,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult;
|
|
import com.owncloud.android.operations.RefreshFolderOperation;
|
|
import com.owncloud.android.operations.RefreshFolderOperation;
|
|
import com.owncloud.android.services.ContactsBackupJob;
|
|
import com.owncloud.android.services.ContactsBackupJob;
|
|
import com.owncloud.android.ui.activity.ContactsPreferenceActivity;
|
|
import com.owncloud.android.ui.activity.ContactsPreferenceActivity;
|
|
|
|
+import com.owncloud.android.ui.activity.Preferences;
|
|
import com.owncloud.android.ui.fragment.FileFragment;
|
|
import com.owncloud.android.ui.fragment.FileFragment;
|
|
import com.owncloud.android.utils.DisplayUtils;
|
|
import com.owncloud.android.utils.DisplayUtils;
|
|
import com.owncloud.android.utils.PermissionUtil;
|
|
import com.owncloud.android.utils.PermissionUtil;
|
|
@@ -74,9 +76,6 @@ public class ContactsBackupFragment extends FileFragment implements DatePickerDi
|
|
@BindView(R.id.contacts_automatic_backup)
|
|
@BindView(R.id.contacts_automatic_backup)
|
|
public SwitchCompat backupSwitch;
|
|
public SwitchCompat backupSwitch;
|
|
|
|
|
|
- @BindView(R.id.contacts_header_restore)
|
|
|
|
- public TextView contactsRestoreHeader;
|
|
|
|
-
|
|
|
|
@BindView(R.id.contacts_datepicker)
|
|
@BindView(R.id.contacts_datepicker)
|
|
public AppCompatButton contactsDatePickerBtn;
|
|
public AppCompatButton contactsDatePickerBtn;
|
|
|
|
|
|
@@ -96,6 +95,7 @@ public class ContactsBackupFragment extends FileFragment implements DatePickerDi
|
|
private static final String KEY_CALENDAR_YEAR = "CALENDAR_YEAR";
|
|
private static final String KEY_CALENDAR_YEAR = "CALENDAR_YEAR";
|
|
private ArbitraryDataProvider arbitraryDataProvider;
|
|
private ArbitraryDataProvider arbitraryDataProvider;
|
|
private Account account;
|
|
private Account account;
|
|
|
|
+ private boolean showSidebar = true;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -106,6 +106,10 @@ public class ContactsBackupFragment extends FileFragment implements DatePickerDi
|
|
|
|
|
|
setHasOptionsMenu(true);
|
|
setHasOptionsMenu(true);
|
|
|
|
|
|
|
|
+ if (getArguments() != null) {
|
|
|
|
+ showSidebar = getArguments().getBoolean(ContactsPreferenceActivity.EXTRA_SHOW_SIDEBAR);
|
|
|
|
+ }
|
|
|
|
+
|
|
final ContactsPreferenceActivity contactsPreferenceActivity = (ContactsPreferenceActivity) getActivity();
|
|
final ContactsPreferenceActivity contactsPreferenceActivity = (ContactsPreferenceActivity) getActivity();
|
|
|
|
|
|
account = (Account) getArguments().get(ContactListFragment.ACCOUNT);
|
|
account = (Account) getArguments().get(ContactListFragment.ACCOUNT);
|
|
@@ -186,11 +190,16 @@ public class ContactsBackupFragment extends FileFragment implements DatePickerDi
|
|
getActivity().getContentResolver());
|
|
getActivity().getContentResolver());
|
|
|
|
|
|
OCFile folder = storageManager.getFileByPath(path[0]);
|
|
OCFile folder = storageManager.getFileByPath(path[0]);
|
|
- RefreshFolderOperation operation = new RefreshFolderOperation(folder, System.currentTimeMillis(),
|
|
|
|
- false, false, false, storageManager, account, getContext());
|
|
|
|
|
|
|
|
- RemoteOperationResult result = operation.execute(account, getContext());
|
|
|
|
- return result.isSuccess();
|
|
|
|
|
|
+ if (folder != null) {
|
|
|
|
+ RefreshFolderOperation operation = new RefreshFolderOperation(folder, System.currentTimeMillis(),
|
|
|
|
+ false, false, false, storageManager, account, getContext());
|
|
|
|
+
|
|
|
|
+ RemoteOperationResult result = operation.execute(account, getContext());
|
|
|
|
+ return result.isSuccess();
|
|
|
|
+ } else {
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -202,10 +211,8 @@ public class ContactsBackupFragment extends FileFragment implements DatePickerDi
|
|
.getFolderContent(backupFolder, false);
|
|
.getFolderContent(backupFolder, false);
|
|
|
|
|
|
if (backupFiles == null || backupFiles.size() == 0) {
|
|
if (backupFiles == null || backupFiles.size() == 0) {
|
|
- contactsRestoreHeader.setVisibility(View.GONE);
|
|
|
|
contactsDatePickerBtn.setVisibility(View.GONE);
|
|
contactsDatePickerBtn.setVisibility(View.GONE);
|
|
} else {
|
|
} else {
|
|
- contactsRestoreHeader.setVisibility(View.VISIBLE);
|
|
|
|
contactsDatePickerBtn.setVisibility(View.VISIBLE);
|
|
contactsDatePickerBtn.setVisibility(View.VISIBLE);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -223,10 +230,15 @@ public class ContactsBackupFragment extends FileFragment implements DatePickerDi
|
|
boolean retval;
|
|
boolean retval;
|
|
switch (item.getItemId()) {
|
|
switch (item.getItemId()) {
|
|
case android.R.id.home:
|
|
case android.R.id.home:
|
|
- if (contactsPreferenceActivity.isDrawerOpen()) {
|
|
|
|
- contactsPreferenceActivity.closeDrawer();
|
|
|
|
|
|
+ if (showSidebar) {
|
|
|
|
+ if (contactsPreferenceActivity.isDrawerOpen()) {
|
|
|
|
+ contactsPreferenceActivity.closeDrawer();
|
|
|
|
+ } else {
|
|
|
|
+ contactsPreferenceActivity.openDrawer();
|
|
|
|
+ }
|
|
} else {
|
|
} else {
|
|
- contactsPreferenceActivity.openDrawer();
|
|
|
|
|
|
+ Intent settingsIntent = new Intent(getContext(), Preferences.class);
|
|
|
|
+ startActivity(settingsIntent);
|
|
}
|
|
}
|
|
retval = true;
|
|
retval = true;
|
|
break;
|
|
break;
|