|
|
|
@ -115,7 +115,7 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt
|
|
|
|
|
private static final String PREFERENCE_ADD_INTRODUCTION = "net.micode.notes.introduction";
|
|
|
|
|
|
|
|
|
|
private enum ListEditState {
|
|
|
|
|
NOTE_LIST, SUB_FOLDER, CALL_RECORD_FOLDER, PRIVATE_FOLDER
|
|
|
|
|
NOTE_LIST, SUB_FOLDER, CALL_RECORD_FOLDER, PRIVATE_FOLDER, TRASH_FOLDER
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
private ListEditState mState;
|
|
|
|
@ -581,7 +581,10 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt
|
|
|
|
|
folderId);
|
|
|
|
|
if (!isSyncMode()) {
|
|
|
|
|
// if not synced, delete folder directly
|
|
|
|
|
DataUtils.batchDeleteNotes(mContentResolver, ids);
|
|
|
|
|
DataUtils.batchMoveToFolder(mContentResolver, ids, Notes.ID_TRASH_FOLER);
|
|
|
|
|
if (mState == ListEditState.TRASH_FOLDER){
|
|
|
|
|
DataUtils.batchDeleteNotes(mContentResolver, ids);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
// in sync mode, we'll move the deleted folder into the trash folder
|
|
|
|
|
DataUtils.batchMoveToFolder(mContentResolver, ids, Notes.ID_TRASH_FOLER);
|
|
|
|
@ -756,6 +759,12 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt
|
|
|
|
|
startAsyncNotesListQuery();
|
|
|
|
|
mTitleBar.setVisibility(View.GONE);
|
|
|
|
|
break;
|
|
|
|
|
case TRASH_FOLDER:
|
|
|
|
|
mCurrentFolderId = Notes.ID_ROOT_FOLDER;
|
|
|
|
|
mState = ListEditState.NOTE_LIST;
|
|
|
|
|
startAsyncNotesListQuery();
|
|
|
|
|
mTitleBar.setVisibility(View.GONE);
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
@ -851,6 +860,8 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt
|
|
|
|
|
getMenuInflater().inflate(R.menu.call_record_folder, menu);
|
|
|
|
|
}else if (mState == ListEditState.PRIVATE_FOLDER){
|
|
|
|
|
getMenuInflater().inflate(R.menu.private_folder, menu);
|
|
|
|
|
}else if (mState == ListEditState.TRASH_FOLDER){
|
|
|
|
|
getMenuInflater().inflate(R.menu.trash_folder, menu);
|
|
|
|
|
} else {
|
|
|
|
|
Log.e(TAG, "Wrong state:" + mState);
|
|
|
|
|
}
|
|
|
|
@ -933,7 +944,7 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void restoreDeletedNodes(){
|
|
|
|
|
mState = ListEditState.SUB_FOLDER;
|
|
|
|
|
mState = ListEditState.TRASH_FOLDER;
|
|
|
|
|
mCurrentFolderId = Notes.ID_TRASH_FOLER;
|
|
|
|
|
startAsyncNotesListQuery();
|
|
|
|
|
mTitleBar.setText("回收站");
|
|
|
|
@ -1150,6 +1161,16 @@ public class NotesListActivity extends Activity implements OnClickListener, OnIt
|
|
|
|
|
Log.e(TAG, "Wrong note type in SUB_FOLDER");
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case TRASH_FOLDER:
|
|
|
|
|
if (item.getType() == Notes.TYPE_NOTE) {
|
|
|
|
|
openNode(item);
|
|
|
|
|
} else if (item.getType() == Notes.TYPE_FOLDER
|
|
|
|
|
|| item.getType() == Notes.TYPE_SYSTEM) {
|
|
|
|
|
openFolder(item);
|
|
|
|
|
} else {
|
|
|
|
|
Log.e(TAG, "Wrong note type in PRIVATE_FOLDER");
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case PRIVATE_FOLDER:
|
|
|
|
|
if (item.getType() == Notes.TYPE_NOTE) {
|
|
|
|
|
openNode(item);
|
|
|
|
|