From e34abd5739142b7fec3a4480d22d2335e7d20ae9 Mon Sep 17 00:00:00 2001 From: sigmabeta Date: Sun, 10 Jan 2016 12:10:02 -0500 Subject: Move TvMainActivity to ui.main package --- .../dolphinemu/activities/TvMainActivity.java | 250 -------------------- .../dolphinemu/ui/main/TvMainActivity.java | 251 +++++++++++++++++++++ 2 files changed, 251 insertions(+), 250 deletions(-) delete mode 100644 Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/TvMainActivity.java create mode 100644 Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java (limited to 'Source/Android/app/src/main/java') diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/TvMainActivity.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/TvMainActivity.java deleted file mode 100644 index 6d580eaafb..0000000000 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/TvMainActivity.java +++ /dev/null @@ -1,250 +0,0 @@ -package org.dolphinemu.dolphinemu.activities; - -import android.app.Activity; -import android.app.ActivityOptions; -import android.app.FragmentManager; -import android.content.Intent; -import android.database.Cursor; -import android.os.Bundle; -import android.support.v17.leanback.app.BrowseFragment; -import android.support.v17.leanback.database.CursorMapper; -import android.support.v17.leanback.widget.ArrayObjectAdapter; -import android.support.v17.leanback.widget.CursorObjectAdapter; -import android.support.v17.leanback.widget.HeaderItem; -import android.support.v17.leanback.widget.ListRow; -import android.support.v17.leanback.widget.ListRowPresenter; -import android.support.v17.leanback.widget.OnItemViewClickedListener; -import android.support.v17.leanback.widget.Presenter; -import android.support.v17.leanback.widget.Row; -import android.support.v17.leanback.widget.RowPresenter; - -import org.dolphinemu.dolphinemu.R; -import org.dolphinemu.dolphinemu.adapters.GameRowPresenter; -import org.dolphinemu.dolphinemu.adapters.SettingsRowPresenter; -import org.dolphinemu.dolphinemu.model.Game; -import org.dolphinemu.dolphinemu.model.TvSettingsItem; -import org.dolphinemu.dolphinemu.ui.main.MainPresenter; -import org.dolphinemu.dolphinemu.ui.main.MainView; -import org.dolphinemu.dolphinemu.utils.StartupHandler; -import org.dolphinemu.dolphinemu.viewholders.TvGameViewHolder; - -public final class TvMainActivity extends Activity implements MainView -{ - private MainPresenter mPresenter = new MainPresenter(this); - - private BrowseFragment mBrowseFragment; - - private ArrayObjectAdapter mRowsAdapter; - - @Override - protected void onCreate(Bundle savedInstanceState) - { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_tv_main); - - final FragmentManager fragmentManager = getFragmentManager(); - mBrowseFragment = (BrowseFragment) fragmentManager.findFragmentById( - R.id.fragment_game_list); - - // Set display parameters for the BrowseFragment - mBrowseFragment.setHeadersState(BrowseFragment.HEADERS_ENABLED); - mBrowseFragment.setTitle(getString(R.string.app_name)); - mBrowseFragment.setBadgeDrawable(getResources().getDrawable( - R.drawable.ic_launcher, null)); - mBrowseFragment.setBrandColor(getResources().getColor(R.color.dolphin_blue_dark)); - - buildRowsAdapter(); - - mPresenter.onCreate(); - - mBrowseFragment.setOnItemViewClickedListener( - new OnItemViewClickedListener() - { - @Override - public void onItemClicked(Presenter.ViewHolder itemViewHolder, Object item, RowPresenter.ViewHolder rowViewHolder, Row row) - { - // Special case: user clicked on a settings row item. - if (item instanceof TvSettingsItem) - { - TvSettingsItem settingsItem = (TvSettingsItem) item; - mPresenter.handleOptionSelection(settingsItem.getItemId()); - } - else - { - TvGameViewHolder holder = (TvGameViewHolder) itemViewHolder; - // Start the emulation activity and send the path of the clicked ISO to it. - Intent intent = new Intent(TvMainActivity.this, EmulationActivity.class); - - intent.putExtra("SelectedGame", holder.path); - intent.putExtra("SelectedTitle", holder.title); - intent.putExtra("ScreenPath", holder.screenshotPath); - - ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation( - TvMainActivity.this, - holder.imageScreenshot, - "image_game_screenshot"); - - startActivity(intent, options.toBundle()); - } - } - }); - - // Stuff in this block only happens when this activity is newly created (i.e. not a rotation) - if (savedInstanceState == null) - StartupHandler.HandleInit(this); - } - - /** - * MainView - */ - - @Override - public void setVersionString(String version) - { - // No-op - } - - @Override - public void refresh() - { - recreate(); - } - - @Override - public void refreshFragmentScreenshot(int fragmentPosition) - { - // No-op (For now) - } - - @Override - public void launchSettingsActivity() - { - SettingsActivity.launch(this); - } - - @Override - public void launchFileListActivity() - { - AddDirectoryActivity.launch(this); - } - - @Override - public void showGames(int platformIndex, Cursor games) - { - ListRow row = buildGamesRow(platformIndex, games); - - // Add row to the adapter only if it is not empty. - if (row != null) - { - mRowsAdapter.add(row); - } - } - - /** - * Callback from AddDirectoryActivity. Applies any changes necessary to the GameGridActivity. - * - * @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) - { - mPresenter.handleActivityResult(requestCode, resultCode); - } - - private void buildRowsAdapter() - { - mRowsAdapter = new ArrayObjectAdapter(new ListRowPresenter()); - - // For each platform - for (int platformIndex = 0; platformIndex <= Game.PLATFORM_ALL; ++platformIndex) - { - mPresenter.loadGames(platformIndex); - } - - mRowsAdapter.add(buildSettingsRow()); - - mBrowseFragment.setAdapter(mRowsAdapter); - } - - private ListRow buildGamesRow(int platform, Cursor games) - { - // Create an adapter for this row. - CursorObjectAdapter row = new CursorObjectAdapter(new GameRowPresenter()); - - // If cursor is empty, don't return a Row. - if (!games.moveToFirst()) - { - return null; - } - - row.changeCursor(games); - row.setMapper(new CursorMapper() - { - @Override - protected void bindColumns(Cursor cursor) - { - // No-op? Not sure what this does. - } - - @Override - protected Object bind(Cursor cursor) - { - return Game.fromCursor(cursor); - } - }); - - String headerName; - switch (platform) - { - case Game.PLATFORM_GC: - headerName = "GameCube Games"; - break; - - case Game.PLATFORM_WII: - headerName = "Wii Games"; - break; - - case Game.PLATFORM_WII_WARE: - headerName = "WiiWare"; - break; - - case Game.PLATFORM_ALL: - headerName = "All Games"; - break; - - default: - headerName = "Error"; - break; - } - - // Create a header for this row. - HeaderItem header = new HeaderItem(platform, headerName); - - // Create the row, passing it the filled adapter and the header, and give it to the master adapter. - return new ListRow(header, row); - } - - private ListRow buildSettingsRow() - { - ArrayObjectAdapter rowItems = new ArrayObjectAdapter(new SettingsRowPresenter()); - - rowItems.add(new TvSettingsItem(R.id.menu_refresh, - R.drawable.ic_refresh_tv, - R.string.grid_menu_refresh)); - - rowItems.add(new TvSettingsItem(R.id.menu_settings, - R.drawable.ic_settings_tv, - R.string.grid_menu_settings)); - - rowItems.add(new TvSettingsItem(R.id.button_add_directory, - R.drawable.ic_add_tv, - R.string.add_directory_title)); - - // Create a header for this row. - HeaderItem header = new HeaderItem(R.string.settings, getString(R.string.settings)); - - return new ListRow(header, rowItems); - } -} diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java new file mode 100644 index 0000000000..27ccfa2f9d --- /dev/null +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java @@ -0,0 +1,251 @@ +package org.dolphinemu.dolphinemu.ui.main; + +import android.app.Activity; +import android.app.ActivityOptions; +import android.app.FragmentManager; +import android.content.Intent; +import android.database.Cursor; +import android.os.Bundle; +import android.support.v17.leanback.app.BrowseFragment; +import android.support.v17.leanback.database.CursorMapper; +import android.support.v17.leanback.widget.ArrayObjectAdapter; +import android.support.v17.leanback.widget.CursorObjectAdapter; +import android.support.v17.leanback.widget.HeaderItem; +import android.support.v17.leanback.widget.ListRow; +import android.support.v17.leanback.widget.ListRowPresenter; +import android.support.v17.leanback.widget.OnItemViewClickedListener; +import android.support.v17.leanback.widget.Presenter; +import android.support.v17.leanback.widget.Row; +import android.support.v17.leanback.widget.RowPresenter; + +import org.dolphinemu.dolphinemu.R; +import org.dolphinemu.dolphinemu.activities.AddDirectoryActivity; +import org.dolphinemu.dolphinemu.activities.EmulationActivity; +import org.dolphinemu.dolphinemu.activities.SettingsActivity; +import org.dolphinemu.dolphinemu.adapters.GameRowPresenter; +import org.dolphinemu.dolphinemu.adapters.SettingsRowPresenter; +import org.dolphinemu.dolphinemu.model.Game; +import org.dolphinemu.dolphinemu.model.TvSettingsItem; +import org.dolphinemu.dolphinemu.utils.StartupHandler; +import org.dolphinemu.dolphinemu.viewholders.TvGameViewHolder; + +public final class TvMainActivity extends Activity implements MainView +{ + private MainPresenter mPresenter = new MainPresenter(this); + + private BrowseFragment mBrowseFragment; + + private ArrayObjectAdapter mRowsAdapter; + + @Override + protected void onCreate(Bundle savedInstanceState) + { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_tv_main); + + final FragmentManager fragmentManager = getFragmentManager(); + mBrowseFragment = (BrowseFragment) fragmentManager.findFragmentById( + R.id.fragment_game_list); + + // Set display parameters for the BrowseFragment + mBrowseFragment.setHeadersState(BrowseFragment.HEADERS_ENABLED); + mBrowseFragment.setTitle(getString(R.string.app_name)); + mBrowseFragment.setBadgeDrawable(getResources().getDrawable( + R.drawable.ic_launcher, null)); + mBrowseFragment.setBrandColor(getResources().getColor(R.color.dolphin_blue_dark)); + + buildRowsAdapter(); + + mPresenter.onCreate(); + + mBrowseFragment.setOnItemViewClickedListener( + new OnItemViewClickedListener() + { + @Override + public void onItemClicked(Presenter.ViewHolder itemViewHolder, Object item, RowPresenter.ViewHolder rowViewHolder, Row row) + { + // Special case: user clicked on a settings row item. + if (item instanceof TvSettingsItem) + { + TvSettingsItem settingsItem = (TvSettingsItem) item; + mPresenter.handleOptionSelection(settingsItem.getItemId()); + } + else + { + TvGameViewHolder holder = (TvGameViewHolder) itemViewHolder; + // Start the emulation activity and send the path of the clicked ISO to it. + Intent intent = new Intent(TvMainActivity.this, EmulationActivity.class); + + intent.putExtra("SelectedGame", holder.path); + intent.putExtra("SelectedTitle", holder.title); + intent.putExtra("ScreenPath", holder.screenshotPath); + + ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation( + TvMainActivity.this, + holder.imageScreenshot, + "image_game_screenshot"); + + startActivity(intent, options.toBundle()); + } + } + }); + + // Stuff in this block only happens when this activity is newly created (i.e. not a rotation) + if (savedInstanceState == null) + StartupHandler.HandleInit(this); + } + + /** + * MainView + */ + + @Override + public void setVersionString(String version) + { + // No-op + } + + @Override + public void refresh() + { + recreate(); + } + + @Override + public void refreshFragmentScreenshot(int fragmentPosition) + { + // No-op (For now) + } + + @Override + public void launchSettingsActivity() + { + SettingsActivity.launch(this); + } + + @Override + public void launchFileListActivity() + { + AddDirectoryActivity.launch(this); + } + + @Override + public void showGames(int platformIndex, Cursor games) + { + ListRow row = buildGamesRow(platformIndex, games); + + // Add row to the adapter only if it is not empty. + if (row != null) + { + mRowsAdapter.add(row); + } + } + + /** + * Callback from AddDirectoryActivity. Applies any changes necessary to the GameGridActivity. + * + * @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) + { + mPresenter.handleActivityResult(requestCode, resultCode); + } + + private void buildRowsAdapter() + { + mRowsAdapter = new ArrayObjectAdapter(new ListRowPresenter()); + + // For each platform + for (int platformIndex = 0; platformIndex <= Game.PLATFORM_ALL; ++platformIndex) + { + mPresenter.loadGames(platformIndex); + } + + mRowsAdapter.add(buildSettingsRow()); + + mBrowseFragment.setAdapter(mRowsAdapter); + } + + private ListRow buildGamesRow(int platform, Cursor games) + { + // Create an adapter for this row. + CursorObjectAdapter row = new CursorObjectAdapter(new GameRowPresenter()); + + // If cursor is empty, don't return a Row. + if (!games.moveToFirst()) + { + return null; + } + + row.changeCursor(games); + row.setMapper(new CursorMapper() + { + @Override + protected void bindColumns(Cursor cursor) + { + // No-op? Not sure what this does. + } + + @Override + protected Object bind(Cursor cursor) + { + return Game.fromCursor(cursor); + } + }); + + String headerName; + switch (platform) + { + case Game.PLATFORM_GC: + headerName = "GameCube Games"; + break; + + case Game.PLATFORM_WII: + headerName = "Wii Games"; + break; + + case Game.PLATFORM_WII_WARE: + headerName = "WiiWare"; + break; + + case Game.PLATFORM_ALL: + headerName = "All Games"; + break; + + default: + headerName = "Error"; + break; + } + + // Create a header for this row. + HeaderItem header = new HeaderItem(platform, headerName); + + // Create the row, passing it the filled adapter and the header, and give it to the master adapter. + return new ListRow(header, row); + } + + private ListRow buildSettingsRow() + { + ArrayObjectAdapter rowItems = new ArrayObjectAdapter(new SettingsRowPresenter()); + + rowItems.add(new TvSettingsItem(R.id.menu_refresh, + R.drawable.ic_refresh_tv, + R.string.grid_menu_refresh)); + + rowItems.add(new TvSettingsItem(R.id.menu_settings, + R.drawable.ic_settings_tv, + R.string.grid_menu_settings)); + + rowItems.add(new TvSettingsItem(R.id.button_add_directory, + R.drawable.ic_add_tv, + R.string.add_directory_title)); + + // Create a header for this row. + HeaderItem header = new HeaderItem(R.string.settings, getString(R.string.settings)); + + return new ListRow(header, rowItems); + } +} -- cgit v1.2.3 From 7ff558886aca256d533298ccb417fdae7c7e3aaa Mon Sep 17 00:00:00 2001 From: sigmabeta Date: Sun, 10 Jan 2016 13:00:01 -0500 Subject: Refactor EmulationActivity to be launched exclusively by its static launcher method --- .../dolphinemu/activities/EmulationActivity.java | 20 +++++++++++++++++ .../dolphinemu/adapters/GameAdapter.java | 25 ++++++---------------- .../dolphinemu/adapters/GameRowPresenter.java | 2 +- .../dolphinemu/dialogs/GameDetailsDialog.java | 14 ++++++------ .../dolphinemu/ui/main/TvMainActivity.java | 20 ++++++----------- 5 files changed, 41 insertions(+), 40 deletions(-) (limited to 'Source/Android/app/src/main/java') diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/EmulationActivity.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/EmulationActivity.java index 04b5149a0e..1f16e39592 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/EmulationActivity.java +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/activities/EmulationActivity.java @@ -1,5 +1,7 @@ package org.dolphinemu.dolphinemu.activities; +import android.app.Activity; +import android.app.ActivityOptions; import android.app.Fragment; import android.content.Intent; import android.os.Bundle; @@ -30,6 +32,7 @@ import org.dolphinemu.dolphinemu.fragments.EmulationFragment; import org.dolphinemu.dolphinemu.fragments.LoadStateFragment; import org.dolphinemu.dolphinemu.fragments.MenuFragment; import org.dolphinemu.dolphinemu.fragments.SaveStateFragment; +import org.dolphinemu.dolphinemu.ui.main.MainPresenter; import java.util.List; @@ -659,4 +662,21 @@ public final class EmulationActivity extends AppCompatActivity { return mSelectedTitle; } + + public static void launch(Activity activity, String path, String title, String screenshotPath, int position, View sharedView) + { + Intent launcher = new Intent(activity, EmulationActivity.class); + + launcher.putExtra("SelectedGame", path); + launcher.putExtra("SelectedTitle", title); + launcher.putExtra("ScreenPath", screenshotPath); + launcher.putExtra("GridPosition", position); + + ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation( + activity, + sharedView, + "image_game_screenshot"); + + activity.startActivityForResult(launcher, MainPresenter.REQUEST_EMULATE_GAME, options.toBundle()); + } } diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameAdapter.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameAdapter.java index 205447e054..fd8784f81c 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameAdapter.java +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameAdapter.java @@ -1,8 +1,6 @@ package org.dolphinemu.dolphinemu.adapters; import android.app.Activity; -import android.app.ActivityOptions; -import android.content.Intent; import android.database.Cursor; import android.database.DataSetObserver; import android.graphics.Bitmap; @@ -19,7 +17,6 @@ import org.dolphinemu.dolphinemu.R; import org.dolphinemu.dolphinemu.activities.EmulationActivity; import org.dolphinemu.dolphinemu.dialogs.GameDetailsDialog; import org.dolphinemu.dolphinemu.model.GameDatabase; -import org.dolphinemu.dolphinemu.ui.main.MainPresenter; import org.dolphinemu.dolphinemu.viewholders.GameViewHolder; /** @@ -217,22 +214,12 @@ public final class GameAdapter extends RecyclerView.Adapter impl { GameViewHolder holder = (GameViewHolder) view.getTag(); - // Start the emulation activity and send the path of the clicked ISO to it. - Intent intent = new Intent(view.getContext(), EmulationActivity.class); - - intent.putExtra("SelectedGame", holder.path); - intent.putExtra("SelectedTitle", holder.title); - intent.putExtra("ScreenPath", holder.screenshotPath); - intent.putExtra("GridPosition", holder.getAdapterPosition()); - - ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation( - (Activity) view.getContext(), - holder.imageScreenshot, - "image_game_screenshot"); - - ((Activity) view.getContext()).startActivityForResult(intent, - MainPresenter.REQUEST_EMULATE_GAME, - options.toBundle()); + EmulationActivity.launch((Activity) view.getContext(), + holder.path, + holder.title, + holder.screenshotPath, + holder.getAdapterPosition(), + holder.imageScreenshot); } /** diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameRowPresenter.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameRowPresenter.java index 3b0b8095ce..40228ac19c 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameRowPresenter.java +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameRowPresenter.java @@ -14,7 +14,7 @@ import org.dolphinemu.dolphinemu.viewholders.TvGameViewHolder; /** * The Leanback library / docs call this a Presenter, but it works very - * similarly to a RecyclerView.ViewHolder. + * similarly to a RecyclerView.Adapter. */ public final class GameRowPresenter extends Presenter { diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/dialogs/GameDetailsDialog.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/dialogs/GameDetailsDialog.java index ac193c9fb1..714db42e9f 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/dialogs/GameDetailsDialog.java +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/dialogs/GameDetailsDialog.java @@ -4,7 +4,6 @@ package org.dolphinemu.dolphinemu.dialogs; import android.app.AlertDialog; import android.app.Dialog; import android.app.DialogFragment; -import android.content.Intent; import android.os.Bundle; import android.support.design.widget.FloatingActionButton; import android.view.View; @@ -70,18 +69,19 @@ public final class GameDetailsDialog extends DialogFragment textDescription.setText(getArguments().getString(ARGUMENT_GAME_DESCRIPTION)); textCountry.setText(country); textDate.setText(getArguments().getString(ARGUMENT_GAME_DATE)); + buttonLaunch.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // Start the emulation activity and send the path of the clicked ROM to it. - Intent intent = new Intent(view.getContext(), EmulationActivity.class); - - intent.putExtra("SelectedGame", getArguments().getString(ARGUMENT_GAME_PATH)); - intent.putExtra("SelectedTitle", getArguments().getString(ARGUMENT_GAME_TITLE)); - - startActivity(intent); + EmulationActivity.launch(getActivity(), + getArguments().getString(ARGUMENT_GAME_PATH), + getArguments().getString(ARGUMENT_GAME_TITLE), + getArguments().getString(ARGUMENT_GAME_SCREENSHOT_PATH), + -1, + imageGameScreen); } }); diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java index 27ccfa2f9d..543c3ddacd 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java @@ -1,7 +1,6 @@ package org.dolphinemu.dolphinemu.ui.main; import android.app.Activity; -import android.app.ActivityOptions; import android.app.FragmentManager; import android.content.Intent; import android.database.Cursor; @@ -73,19 +72,14 @@ public final class TvMainActivity extends Activity implements MainView else { TvGameViewHolder holder = (TvGameViewHolder) itemViewHolder; - // Start the emulation activity and send the path of the clicked ISO to it. - Intent intent = new Intent(TvMainActivity.this, EmulationActivity.class); - - intent.putExtra("SelectedGame", holder.path); - intent.putExtra("SelectedTitle", holder.title); - intent.putExtra("ScreenPath", holder.screenshotPath); - ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation( - TvMainActivity.this, - holder.imageScreenshot, - "image_game_screenshot"); - - startActivity(intent, options.toBundle()); + // Start the emulation activity and send the path of the clicked ISO to it. + EmulationActivity.launch(TvMainActivity.this, + holder.path, + holder.title, + holder.screenshotPath, + -1, + holder.imageScreenshot); } } }); -- cgit v1.2.3 From db0a9230831f57cf4e8cfe8ccb54ec9a529e1082 Mon Sep 17 00:00:00 2001 From: sigmabeta Date: Sun, 10 Jan 2016 13:18:20 -0500 Subject: Refresh screenshots in TvMainActivity after emulation complete --- .../src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Source/Android/app/src/main/java') diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java index 543c3ddacd..38ab2eb4b4 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java @@ -108,7 +108,7 @@ public final class TvMainActivity extends Activity implements MainView @Override public void refreshFragmentScreenshot(int fragmentPosition) { - // No-op (For now) + mRowsAdapter.notifyArrayItemRangeChanged(0, mRowsAdapter.size()); } @Override -- cgit v1.2.3