diff --git a/Source/Android/res/values-ja/strings.xml b/Source/Android/res/values-ja/strings.xml
index fa466cc25e..1231c753a7 100644
--- a/Source/Android/res/values-ja/strings.xml
+++ b/Source/Android/res/values-ja/strings.xml
@@ -19,6 +19,8 @@
ファイルサイズ:
+ クリア
+ ゲームリストからすべての項目を削除しますか?
ゲームリスト
フォルダの参照
設定
diff --git a/Source/Android/res/values/strings.xml b/Source/Android/res/values/strings.xml
index d9c8cee4f1..01d454c905 100644
--- a/Source/Android/res/values/strings.xml
+++ b/Source/Android/res/values/strings.xml
@@ -19,6 +19,8 @@
File Size:
+ Clear game list
+ Do you want to clear the game list?
Game List
Browse Folder
Settings
diff --git a/Source/Android/src/org/dolphinemu/dolphinemu/gamelist/GameListActivity.java b/Source/Android/src/org/dolphinemu/dolphinemu/gamelist/GameListActivity.java
index 62a9f34189..3678cf7637 100644
--- a/Source/Android/src/org/dolphinemu/dolphinemu/gamelist/GameListActivity.java
+++ b/Source/Android/src/org/dolphinemu/dolphinemu/gamelist/GameListActivity.java
@@ -7,8 +7,10 @@
package org.dolphinemu.dolphinemu.gamelist;
import android.app.Activity;
+import android.app.AlertDialog;
import android.app.Fragment;
import android.app.FragmentManager;
+import android.content.DialogInterface;
import android.content.Intent;
import android.content.res.Configuration;
import android.os.Bundle;
@@ -16,6 +18,7 @@ import android.support.v4.app.ActionBarDrawerToggle;
import android.support.v4.widget.DrawerLayout;
import android.view.*;
import android.widget.AdapterView;
+import android.widget.ArrayAdapter;
import android.widget.ListView;
import java.util.ArrayList;
import java.util.List;
@@ -248,6 +251,20 @@ public final class GameListActivity extends Activity
{
return super.onPrepareOptionsMenu(menu);
}
+
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu)
+ {
+ // Only show this in the game list.
+ if (this.mCurFragmentNum == 0)
+ {
+ MenuInflater inflater = getMenuInflater();
+ inflater.inflate(R.menu.gamelist_menu, menu);
+ return true;
+ }
+
+ return false;
+ }
@Override
public boolean onOptionsItemSelected(MenuItem item)
@@ -259,6 +276,38 @@ public final class GameListActivity extends Activity
return true;
}
+ // If clear game list is pressed.
+ if (item.getItemId() == R.id.clearGameList)
+ {
+ AlertDialog.Builder builder = new AlertDialog.Builder(this);
+ builder.setTitle(R.string.clear_game_list);
+ builder.setMessage(getString(R.string.clear_game_list_confirm));
+ builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener(){
+ public void onClick(DialogInterface dialog, int which)
+ {
+ String directories = NativeLibrary.GetConfig("Dolphin.ini", "General", "GCMPathes", "0");
+ int intDirs = Integer.parseInt(directories);
+
+ for (int i = 0; i < intDirs; i++)
+ {
+ NativeLibrary.SetConfig("Dolphin.ini", "General", "GCMPath" + i, "");
+ }
+
+ ArrayAdapter adapter = ((GameListFragment)GameListActivity.this.mCurFragment).getAdapter();
+ adapter.clear();
+ adapter.notifyDataSetChanged();
+ }
+ });
+ builder.setNegativeButton(R.string.no, new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int which)
+ {
+ // Do nothing. This just make "No" appear.
+ }
+ });
+
+ builder.show();
+ }
+
return super.onOptionsItemSelected(item);
}
diff --git a/Source/Android/src/org/dolphinemu/dolphinemu/gamelist/GameListFragment.java b/Source/Android/src/org/dolphinemu/dolphinemu/gamelist/GameListFragment.java
index 0866deba7a..b72509419f 100644
--- a/Source/Android/src/org/dolphinemu/dolphinemu/gamelist/GameListFragment.java
+++ b/Source/Android/src/org/dolphinemu/dolphinemu/gamelist/GameListFragment.java
@@ -51,6 +51,16 @@ public final class GameListFragment extends Fragment
*/
void onZeroFiles();
}
+
+ /**
+ * Gets the adapter for this fragment.
+ *
+ * @return the adapter for this fragment.
+ */
+ public GameListAdapter getAdapter()
+ {
+ return mGameAdapter;
+ }
private void Fill()
{