summaryrefslogtreecommitdiff
path: root/Source/Android/app/src/main/java
diff options
context:
space:
mode:
authorEder Bastos <bastos.eder@gmail.com>2015-05-10 11:07:16 -0400
committerEder Bastos <bastos.eder@gmail.com>2015-05-10 17:28:45 -0400
commitabaf41baa7ead3f4106a4493dc737cd9340bc448 (patch)
treeceb0cf716b17a67633fd54d090654f67e1f326b3 /Source/Android/app/src/main/java
parentca4bec35399185dc57e250b54d5308abbc4f464e (diff)
Add a subtitle to AddDirectoryActivity containing the currently displayed folder's path.
Diffstat (limited to 'Source/Android/app/src/main/java')
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/AddDirectoryActivity.java16
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/GameGridActivity.java9
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/FileAdapter.java35
3 files changed, 40 insertions, 20 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/AddDirectoryActivity.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/AddDirectoryActivity.java
index 04e6ffb9f6..1c536d8f91 100644
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/AddDirectoryActivity.java
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/AddDirectoryActivity.java
@@ -24,6 +24,7 @@ public class AddDirectoryActivity extends Activity implements FileAdapter.FileCl
public static final String KEY_CURRENT_PATH = BuildConfig.APPLICATION_ID + ".path";
private FileAdapter mAdapter;
+ private Toolbar mToolbar;
@Override
protected void onCreate(Bundle savedInstanceState)
@@ -32,8 +33,8 @@ public class AddDirectoryActivity extends Activity implements FileAdapter.FileCl
setContentView(R.layout.activity_add_directory);
- Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar_folder_list);
- setActionBar(toolbar);
+ mToolbar = (Toolbar) findViewById(R.id.toolbar_folder_list);
+ setActionBar(mToolbar);
RecyclerView recyclerView = (RecyclerView) findViewById(R.id.list_files);
@@ -46,7 +47,8 @@ public class AddDirectoryActivity extends Activity implements FileAdapter.FileCl
if (savedInstanceState == null)
{
path = Environment.getExternalStorageDirectory().getPath();
- } else
+ }
+ else
{
// Get the path we were looking at before we rotated.
path = savedInstanceState.getString(KEY_CURRENT_PATH);
@@ -71,7 +73,7 @@ public class AddDirectoryActivity extends Activity implements FileAdapter.FileCl
switch (item.getItemId())
{
case R.id.menu_up_one_level:
- mAdapter.setPath(mAdapter.getPath() + "/..");
+ mAdapter.upOneLevel();
break;
}
@@ -101,4 +103,10 @@ public class AddDirectoryActivity extends Activity implements FileAdapter.FileCl
finish();
}
+
+ @Override
+ public void updateSubtitle(String path)
+ {
+ mToolbar.setSubtitle(path);
+ }
}
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/GameGridActivity.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/GameGridActivity.java
index e5a8572e5b..bd922ecbed 100644
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/GameGridActivity.java
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/GameGridActivity.java
@@ -69,6 +69,8 @@ public final class GameGridActivity extends Activity
public void onClick(View view)
{
Intent fileChooser = new Intent(GameGridActivity.this, AddDirectoryActivity.class);
+
+ // The second argument to this method is read below in onActivityResult().
startActivityForResult(fileChooser, REQUEST_ADD_DIRECTORY);
}
});
@@ -85,9 +87,9 @@ public final class GameGridActivity extends Activity
/**
* Callback from AddDirectoryActivity. Applies any changes necessary to the GameGridActivity.
*
- * @param requestCode
- * @param resultCode
- * @param result
+ * @param requestCode An int describing whether the Activity that is returning did so successfully.
+ * @param resultCode An int describing what Activity is giving us this callback.
+ * @param result The information the returning Activity is providing us.
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent result)
@@ -99,6 +101,7 @@ public final class GameGridActivity extends Activity
// other activities might use this callback in the future (don't forget to change Javadoc!)
if (requestCode == REQUEST_ADD_DIRECTORY)
{
+ // Get the path the user selected in AddDirectoryActivity.
String path = result.getStringExtra(AddDirectoryActivity.KEY_CURRENT_PATH);
// Store this path as a preference.
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/FileAdapter.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/FileAdapter.java
index 2414883279..9ae238d36c 100644
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/FileAdapter.java
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/FileAdapter.java
@@ -26,12 +26,14 @@ public class FileAdapter extends RecyclerView.Adapter<FileViewHolder> implements
* Initializes the dataset to be displayed, and associates the Adapter with the
* Activity as an event listener.
*
- * @param gameList
+ * @param path A String containing the path to the directory to be shown by this Adapter.
+ * @param listener An Activity that can respond to callbacks from this Adapter.
*/
public FileAdapter(String path, FileClickListener listener)
{
mFileList = generateFileList(new File(path));
mListener = listener;
+ mListener.updateSubtitle(path);
}
/**
@@ -107,12 +109,12 @@ public class FileAdapter extends RecyclerView.Adapter<FileViewHolder> implements
* When a file is clicked, determine if it is a directory; if it is, show that new directory's
* contents. If it is not, end the activity successfully.
*
- * @param view
+ * @param view The View representing the file the user clicked on.
*/
@Override
public void onClick(final View view)
{
- String path = (String) view.getTag();
+ final String path = (String) view.getTag();
File clickedFile = new File(path);
@@ -135,6 +137,7 @@ public class FileAdapter extends RecyclerView.Adapter<FileViewHolder> implements
{
mFileList = fileList;
notifyDataSetChanged();
+ mListener.updateSubtitle(path);
}
}, 200);
}
@@ -148,7 +151,7 @@ public class FileAdapter extends RecyclerView.Adapter<FileViewHolder> implements
/**
* For a given directory, return a list of Files it contains.
*
- * @param directory
+ * @param directory A File representing the directory that should have its contents displayed.
* @return
*/
private ArrayList<FileListItem> generateFileList(File directory)
@@ -176,26 +179,32 @@ public class FileAdapter extends RecyclerView.Adapter<FileViewHolder> implements
return mPath;
}
- /**
- * Mostly just allows the activity's menu option to kick us up a level in the directory
- * structure.
- *
- * @param path
- */
public void setPath(String path)
{
- mPath = path;
- File parentDirectory = new File(path);
+ File directory = new File(path);
+
+ mFileList = generateFileList(directory);
+ notifyDataSetChanged();
+ mListener.updateSubtitle(path);
+ }
+
+ public void upOneLevel()
+ {
+ File currentDirectory = new File(mPath);
+ File parentDirectory = currentDirectory.getParentFile();
mFileList = generateFileList(parentDirectory);
notifyDataSetChanged();
+ mListener.updateSubtitle(mPath);
}
/**
- * Callback for when the user wants to add the visible directory to the library.
+ * Callback to the containing Activity.
*/
public interface FileClickListener
{
void finishSuccessfully();
+
+ void updateSubtitle(String path);
}
}