@@ -165,7 +165,7 @@ public void onDirectorySelected(Intent result)
if (Arrays.stream(childNames).noneMatch((name) -> FileBrowserHelper.GAME_EXTENSIONS.contains(
FileBrowserHelper.getExtension(name, false))))
{
AlertDialog.Builder builder = new AlertDialog.Builder(mActivity, R.style.DolphinDialogBase);
AlertDialog.Builder builder = new AlertDialog.Builder(mActivity);
builder.setMessage(mActivity.getString(R.string.wrong_file_extension_in_directory,
FileBrowserHelper.setToSortedDelimitedString(FileBrowserHelper.GAME_EXTENSIONS)));
builder.setPositiveButton(R.string.ok, null);
@@ -204,7 +204,7 @@ public void importWiiSave(String path)
mActivity.runOnUiThread(() ->
{
AlertDialog.Builder builder =
new AlertDialog.Builder(mActivity, R.style.DolphinDialogBase);
new AlertDialog.Builder(mActivity);
builder.setMessage(R.string.wii_save_exists);
builder.setCancelable(false);
builder.setPositiveButton(R.string.yes, (dialog, i) -> canOverwriteFuture.complete(true));
@@ -250,7 +250,7 @@ public void importWiiSave(String path)
public void importNANDBin(String path)
{
AlertDialog.Builder builder =
new AlertDialog.Builder(mActivity, R.style.DolphinDialogBase);
new AlertDialog.Builder(mActivity);

builder.setMessage(R.string.nand_import_warning);
builder.setNegativeButton(R.string.no, (dialog, i) -> dialog.dismiss());
@@ -36,7 +36,7 @@ public static void checkAnalyticsInit(Context context)

private static void showMessage(Context context)
{
new AlertDialog.Builder(context, R.style.DolphinDialogBase)
new AlertDialog.Builder(context)
.setTitle(context.getString(R.string.analytics))
.setMessage(context.getString(R.string.analytics_desc))
.setPositiveButton(R.string.yes, (dialogInterface, i) ->
@@ -118,7 +118,7 @@ public static void runAfterExtensionCheck(Context context, Uri uri, Set<String>
setToSortedDelimitedString(validExtensions));
}

new AlertDialog.Builder(context, R.style.DolphinDialogBase)
new AlertDialog.Builder(context)
.setMessage(message)
.setPositiveButton(R.string.yes, (dialogInterface, i) -> runnable.run())
.setNegativeButton(R.string.no, null)
@@ -27,7 +27,7 @@ public static void runOnThreadAndShowResult(Activity activity, int progressTitle
@Nullable DialogInterface.OnDismissListener onResultDismiss)
{
Resources resources = activity.getResources();
AlertDialog progressDialog = new AlertDialog.Builder(activity, R.style.DolphinDialogBase)
AlertDialog progressDialog = new AlertDialog.Builder(activity)
.create();
progressDialog.setTitle(progressTitle);
if (progressMessage != 0)
@@ -45,7 +45,7 @@ public static void runOnThreadAndShowResult(Activity activity, int progressTitle
if (result != null)
{
AlertDialog.Builder builder =
new AlertDialog.Builder(activity, R.style.DolphinDialogBase);
new AlertDialog.Builder(activity);
builder.setMessage(result);
builder.setPositiveButton(R.string.ok, (dialog, i) -> dialog.dismiss());
builder.setOnDismissListener(onResultDismiss);
@@ -27,8 +27,7 @@
android:layout_height="0dp"
android:layout_weight="1"
android:scrollbarSize="8dp"
android:fadeScrollbars="false"
android:theme="@style/InGameScrollView">
android:fadeScrollbars="false">

<LinearLayout
android:id="@+id/layout_options"
@@ -1,78 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>

<!-- Inherit from the material theme -->
<style name="DolphinBase" parent="Theme.Material3.DayNight.NoActionBar">
<!-- Main theme colors -->
<!-- Branding color for the app bar -->
<item name="colorSurface">@color/dolphin_blue</item>
<item name="colorPrimary">@color/dolphin_blue</item>
<item name="colorPrimaryDark">@color/dolphin_blue</item>
<item name="colorAccent">@color/dolphin_blue_secondary</item>

<!-- Enable window content transitions -->
<item name="android:windowContentTransitions">true</item>
<item name="android:windowAllowEnterTransitionOverlap">true</item>
<item name="android:windowAllowReturnTransitionOverlap">true</item>

<item name="android:colorControlHighlight">?attr/colorAccent</item>
</style>

<!-- Same as above, but use default action bar, and mandate margins. -->
<style name="DolphinSettingsBase" parent="Theme.Material3.DayNight">
<item name="colorSurface">@color/dolphin_blue</item>
<item name="colorPrimary">@color/dolphin_blue</item>
<item name="colorPrimaryDark">@color/dolphin_blue</item>
<item name="colorAccent">@color/dolphin_blue_secondary</item>
<item name="titleTextColor">@android:color/white</item>
<item name="homeAsUpIndicator">@drawable/ic_back</item>
</style>

<!-- Themes for Dialogs -->
<style name="DolphinDialogBase" parent="Theme.Material3.DayNight.Dialog.Alert">
<item name="colorPrimary">@color/dolphin_blue</item>
<item name="colorAccent">@color/dolphin_blue_secondary</item>
</style>

<style name="DolphinEmulationBase" parent="Theme.Material3.DayNight.NoActionBar">
<item name="colorSurface">@color/dolphin_blue</item>
<item name="colorPrimary">@color/dolphin_blue</item>
<item name="colorPrimaryDark">@color/dolphin_blue</item>
<item name="colorAccent">@color/dolphin_blue_secondary</item>
<item name="android:windowTranslucentNavigation">true</item>

<item name="android:windowBackground">@android:color/black</item>

<!-- Enable window content transitions -->
<item name="android:windowContentTransitions">true</item>
<item name="android:windowAllowEnterTransitionOverlap">true</item>
<item name="android:windowAllowReturnTransitionOverlap">true</item>
</style>

<!-- Hax to make Tablayout render icons -->
<style name="MyCustomTextAppearance" parent="TextAppearance.Design.Tab">
<item name="textAllCaps">false</item>
</style>

<!-- Android TV Themes -->
<style name="DolphinTvBase" parent="Theme.Leanback.Browse">
<item name="colorSurface">@color/dolphin_blue</item>
<item name="colorPrimary">@color/dolphin_blue</item>
<item name="colorPrimaryDark">@color/dolphin_blue</item>
<item name="colorAccent">@color/dolphin_blue_secondary</item>

<!-- Enable window content transitions -->
<item name="android:windowContentTransitions">true</item>
<item name="android:windowAllowEnterTransitionOverlap">true</item>
<item name="android:windowAllowReturnTransitionOverlap">true</item>

<!-- Use CustomTitleView as the leanback title view. -->
<item name="browseTitleViewLayout">@layout/titleview</item>
</style>

<style name="InGameScrollView">
<item name="android:colorEdgeEffect">@color/dolphin_blue_secondary</item>
</style>

<!-- Custom button styles -->
<style name="InGameMenuOption" parent="Widget.Material3.Button.TextButton">
<item name="android:textSize">16sp</item>
<item name="android:fontFamily">sans-serif-condensed</item>
@@ -93,29 +33,4 @@
<item name="android:gravity">center</item>
<item name="android:layout_gravity">center</item>
</style>

<!-- Inherit from a base file picker theme that handles day/night -->
<style name="FilePickerTheme" parent="FilePickerBaseTheme">
<item name="colorPrimary">@color/dolphin_blue</item>
<item name="colorPrimaryDark">@color/dolphin_blue</item>
<item name="colorAccent">@color/dolphin_blue_secondary</item>

<!--&lt;!&ndash; Setting a divider is entirely optional &ndash;&gt;-->
<item name="nnf_list_item_divider">?android:attr/listDivider</item>

<!-- Need to set this also to style create folder dialog -->
<item name="alertDialogTheme">@style/FilePickerAlertDialogTheme</item>

<!-- If you want to set a specific toolbar theme, do it here -->

<item name="nnf_toolbarTheme">@style/ThemeOverlay.Material3.Dark.ActionBar</item>
</style>

<style name="FilePickerAlertDialogTheme" parent="Theme.Material3.DayNight.Dialog.Alert">
<item name="colorSurface">@color/dolphin_blue</item>
<item name="colorPrimary">@color/dolphin_blue</item>
<item name="colorPrimaryDark">@color/dolphin_blue</item>
<item name="colorAccent">@color/dolphin_blue_secondary</item>
</style>

</resources>
@@ -0,0 +1,68 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Base theme -->
<style name="Theme.Dolphin.Main" parent="Theme.Material3.DayNight.NoActionBar">
<item name="colorSurface">@color/dolphin_blue</item>
<item name="colorPrimary">@color/dolphin_blue</item>
<item name="colorPrimaryDark">@color/dolphin_blue</item>
<item name="colorAccent">@color/dolphin_blue_secondary</item>

<item name="android:colorControlHighlight">?attr/colorAccent</item>

<item name="android:colorEdgeEffect">@color/dolphin_blue_secondary</item>

<!-- Enable window content transitions -->
<item name="android:windowContentTransitions">true</item>
<item name="android:windowAllowEnterTransitionOverlap">true</item>
<item name="android:windowAllowReturnTransitionOverlap">true</item>

<!-- Global alert dialog style -->
<item name="alertDialogTheme">@style/DolphinDialogBase</item>
</style>

<style name="Theme.Dolphin.Settings" parent="Theme.Material3.DayNight">
<item name="colorSurface">@color/dolphin_blue</item>
<item name="colorPrimary">@color/dolphin_blue</item>
<item name="colorPrimaryDark">@color/dolphin_blue</item>
<item name="colorAccent">@color/dolphin_blue_secondary</item>

<item name="titleTextColor">@android:color/white</item>
<item name="homeAsUpIndicator">@drawable/ic_back</item>

<!-- Global alert dialog style -->
<item name="alertDialogTheme">@style/DolphinDialogBase</item>
</style>

<style name="Theme.Dolphin.Main.Emulation" parent="Theme.Dolphin.Main">
<item name="android:windowBackground">@android:color/black</item>
</style>

<!-- Inherit from a base file picker theme that handles day/night -->
<style name="Theme.Dolphin.FilePicker" parent="FilePickerBaseTheme">
<item name="colorPrimary">@color/dolphin_blue</item>
<item name="colorPrimaryDark">@color/dolphin_blue</item>
<item name="colorAccent">@color/dolphin_blue_secondary</item>

<!-- Setting a divider is entirely optional -->
<item name="nnf_list_item_divider">?android:attr/listDivider</item>

<!-- If you want to set a specific toolbar theme, do it here -->
<item name="nnf_toolbarTheme">@style/ThemeOverlay.Material3.Dark.ActionBar</item>

<!-- Global alert dialog style -->
<item name="alertDialogTheme">@style/DolphinDialogBase</item>
</style>

<style name="Theme.Dolphin.TV" parent="Theme.Leanback.Browse">
<!-- Enable window content transitions -->
<item name="android:windowContentTransitions">true</item>
<item name="android:windowAllowEnterTransitionOverlap">true</item>
<item name="android:windowAllowReturnTransitionOverlap">true</item>

<!-- Use CustomTitleView as the leanback title view. -->
<item name="browseTitleViewLayout">@layout/titleview</item>

<!-- Global alert dialog style -->
<item name="alertDialogTheme">@style/DolphinDialogBase</item>
</style>
</resources>