+ case R.id.action_sort: {
+ SharedPreferences appPreferences = PreferenceManager
+ .getDefaultSharedPreferences(this);
+
+ // Read sorting order, default to sort by name ascending
+ Integer sortOrder = appPreferences
+ .getInt("sortOrder", FileListListAdapter.SORT_NAME);
+
+ AlertDialog.Builder builder = new AlertDialog.Builder(this);
+ builder.setTitle(R.string.actionbar_sort_title)
+ .setSingleChoiceItems(R.array.actionbar_sortby, sortOrder, new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int which) {
+
+ switch (which) {
+ case 0:
+ sortByName(true);
+ break;
+ case 1:
+ sortByDate(false);
+ break;
+
+// TODO re-enable when server-side folder size calculation is available
+// case 2:
+// sortBySize(false);
+// break;
+ }
+
+ dialog.dismiss();
+
+ }
+ });
+ builder.create().show();
+ break;
+ }
+ case R.id.action_sync_account: {
+ startSynchronization();
+ break;
+ }
+ case R.id.action_upload: {
+ showDialog(DIALOG_CHOOSE_UPLOAD_SOURCE);
+ break;
+ }
+ case R.id.action_settings: {
+ Intent settingsIntent = new Intent(this, Preferences.class);
+ startActivity(settingsIntent);
+ break;
+ }
+ case R.id.action_logger: {
+ Intent loggerIntent = new Intent(getApplicationContext(), LogHistoryActivity.class);
+ startActivity(loggerIntent);
+ break;
+ }
+ case android.R.id.home: {
+ FileFragment second = getSecondFragment();
+ OCFile currentDir = getCurrentDir();
+ if ((currentDir != null && currentDir.getParentId() != 0) ||
+ (second != null && second.getFile() != null)) {
+ onBackPressed();
+
+ }
+ break;
+ }
+ default:
+ retval = super.onOptionsItemSelected(item);