@Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { FileInfo fileInfo = mAdapter.getItem(position); if (fileInfo.isDir) { if (mFileSDCardHelper.isDoubleCardPhone) { SDCardInfo internalSdCardInfo = mFileSDCardHelper.getRoot(SDCardInfo.INTERNAL_SD); if (fileInfo.filePath.startsWith(internalSdCardInfo.path)) { mFileOperationHelper.go2Folder(1, fileInfo); } else { mFileOperationHelper.go2Folder(2, fileInfo); } } else { mFileOperationHelper.go2Folder(1, fileInfo); } this.finish(); } else { mFileOperationHelper.viewFile(this, fileInfo); } }
/* * (non-Javadoc) * * @see android.app.Activity#onContextItemSelected(android.view.MenuItem) */ @Override public boolean onContextItemSelected(MenuItem item) { int position = ((AdapterContextMenuInfo) item.getMenuInfo()).position; FileInfo fileInfo = mAdapter.getItem(position); if (fileInfo == null) { return true; } switch (item.getItemId()) { case MenuHelper.MENU_FAVORITE: mFileOperationHelper.onOperationFavorite(fileInfo); break; case MenuHelper.MENU_COPY: copyFile(fileInfo); finish(); break; case MenuHelper.MENU_COPY_PATH: mFileOperationHelper.onOperationCopyPath(fileInfo.filePath); break; case MenuHelper.MENU_MOVE: moveFile(fileInfo); finish(); break; case MenuHelper.MENU_SEND: mFileOperationHelper.onOperationSend(fileInfo); break; case MenuHelper.MENU_RENAME: mFileOperationHelper.onOperationRename(fileInfo, this); onReflush(); break; case MenuHelper.MENU_DELETE: mFileOperationHelper.onOperationDeleteFiles(fileInfo, this); onReflush(); break; case MenuHelper.MENU_INFO: mFileOperationHelper.onOperationInfo(fileInfo, this); break; default: break; } return true; }
@Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { MenuHelper.onCreateContextMenu( menu, false, mAdapter.getItem(((AdapterContextMenuInfo) menuInfo).position)); super.onCreateContextMenu(menu, v, menuInfo); }