Merge pull request #1407 from reicast/ac/theme-a-palooza

Theme-a-palooza. (Adding themes - for the more serious)
This commit is contained in:
MrPsyMan 2018-09-27 03:13:52 +03:00 committed by GitHub
commit e62a766d92
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
48 changed files with 420 additions and 179 deletions

View File

@ -37,7 +37,6 @@
android:name=".Emulator"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:roundIcon="@drawable/ic_launcher"
android:banner="@drawable/ic_banner"
android:logo="@drawable/ic_banner"

View File

@ -1,10 +1,12 @@
package com.reicast.emulator;
import android.content.SharedPreferences;
import android.content.pm.PackageManager.NameNotFoundException;
import android.graphics.drawable.Drawable;
import android.os.AsyncTask;
import android.os.Build;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.support.constraint.ConstraintLayout;
import android.support.design.widget.Snackbar;
import android.support.graphics.drawable.VectorDrawableCompat;
@ -149,7 +151,16 @@ public class AboutFragment extends Fragment {
ArrayList<HashMap<String, String>> commitList) {
if (commitList != null && commitList.size() > 0) {
ListView list = (ListView) ref.get().getView().findViewById(R.id.list);
list.setSelector(R.drawable.list_selector);
SharedPreferences mPrefs = PreferenceManager
.getDefaultSharedPreferences(ref.get().getActivity());
int app_theme = mPrefs.getInt(Config.pref_app_theme, 0);
if (app_theme == 7) {
list.setSelector(R.drawable.list_selector_dream);
} else if (app_theme == 7) {
list.setSelector(R.drawable.list_selector_blue);
} else {
list.setSelector(R.drawable.list_selector_dark);
}
list.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
GitAdapter adapter = new GitAdapter(ref.get().getActivity(), commitList);
// Set adapter as specified collection

View File

@ -19,10 +19,8 @@ import android.support.v4.app.Fragment;
import android.support.v4.content.FileProvider;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
@ -50,14 +48,12 @@ import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
public class FileBrowser extends Fragment {
private Vibrator vib;
private Drawable orig_bg;
private boolean games;
private String searchQuery = null;
private OnItemSelectedListener mCallback;
@ -186,7 +182,7 @@ public class FileBrowser extends Fragment {
private void installButtons() {
try {
File buttons = null;
String theme = mPrefs.getString(Config.pref_theme, null);
String theme = mPrefs.getString(Config.pref_button_theme, null);
if (theme != null) {
buttons = new File(theme);
}
@ -311,11 +307,10 @@ public class FileBrowser extends Fragment {
R.layout.bios_list_item, null, false);
((TextView) childview.findViewById(R.id.item_name)).setText(R.string.boot_bios);
((ImageView) childview.findViewById(R.id.item_icon)).setImageResource(R.mipmap.disk_bios);
childview.setTag(null);
orig_bg = childview.getBackground();
childview.findViewById(R.id.childview).setOnClickListener(
new OnClickListener() {
public void onClick(View view) {
@ -324,20 +319,23 @@ public class FileBrowser extends Fragment {
vib.vibrate(250);
}
});
((ViewGroup) view).addView(childview);
}
if (searchQuery != null) {
final View childview = getActivity().getLayoutInflater().inflate(
R.layout.bios_list_item, null, false);
childview.findViewById(R.id.childview).setOnTouchListener(
new OnTouchListener() {
@SuppressWarnings("deprecation")
public boolean onTouch(View view, MotionEvent arg1) {
if (arg1.getActionMasked() == MotionEvent.ACTION_DOWN) {
view.setBackgroundColor(0xFF4F3FFF);
} else if (arg1.getActionMasked() == MotionEvent.ACTION_CANCEL
|| arg1.getActionMasked() == MotionEvent.ACTION_UP) {
view.setBackgroundDrawable(orig_bg);
}
((TextView) childview.findViewById(R.id.item_name)).setText(R.string.clear_search);
((ImageView) childview.findViewById(R.id.item_icon)).setImageResource(R.mipmap.disk_unknown);
return false;
childview.setTag(null);
childview.findViewById(R.id.childview).setOnClickListener(
new OnClickListener() {
public void onClick(View view) {
searchQuery = null;
new LocateGames(FileBrowser.this,
R.array.images).execute(game_directory);
}
});
((ViewGroup) view).addView(childview);
@ -361,7 +359,6 @@ public class FileBrowser extends Fragment {
XMLParser xmlParser = new XMLParser(game, index, mPrefs);
xmlParser.setViewParent(getActivity(), childview, mCallback);
orig_bg = childview.getBackground();
childview.findViewById(R.id.childview).setOnClickListener(
new OnClickListener() {
@ -400,21 +397,6 @@ public class FileBrowser extends Fragment {
}
}
});
childview.findViewById(R.id.childview).setOnTouchListener(
new OnTouchListener() {
@SuppressWarnings("deprecation")
public boolean onTouch(View view, MotionEvent arg1) {
if (arg1.getActionMasked() == MotionEvent.ACTION_DOWN) {
view.setBackgroundColor(0xFF4F3FFF);
} else if (arg1.getActionMasked() == MotionEvent.ACTION_CANCEL
|| arg1.getActionMasked() == MotionEvent.ACTION_UP) {
view.setBackgroundDrawable(orig_bg);
}
return false;
}
});
list.addView(childview);
xmlParser.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, game.getName());
}
@ -481,6 +463,18 @@ public class FileBrowser extends Fragment {
final View childview = browser.get().getActivity().getLayoutInflater().inflate(
R.layout.browser_fragment_item, null, false);
int app_theme = browser.get().mPrefs.getInt(Config.pref_app_theme, 0);
if (app_theme == 7) {
childview.findViewById(R.id.childview)
.setBackgroundResource(R.drawable.game_selector_dream);
} else if (app_theme == 1) {
childview.findViewById(R.id.childview)
.setBackgroundResource(R.drawable.game_selector_blue);
} else {
childview.findViewById(R.id.childview)
.setBackgroundResource(R.drawable.game_selector_dark);
}
if (file == null) {
((TextView) childview.findViewById(R.id.item_name)).setText(R.string.folder_select);
} else if (file == parent)
@ -494,8 +488,6 @@ public class FileBrowser extends Fragment {
childview.setTag(file);
browser.get().orig_bg = childview.getBackground();
// vw.findViewById(R.id.childview).setBackgroundColor(0xFFFFFFFF);
childview.findViewById(R.id.childview).setOnClickListener(
@ -551,22 +543,6 @@ public class FileBrowser extends Fragment {
}
}
});
childview.findViewById(R.id.childview).setOnTouchListener(
new OnTouchListener() {
@SuppressWarnings("deprecation")
public boolean onTouch(View view, MotionEvent event) {
if (event.getActionMasked() == MotionEvent.ACTION_DOWN) {
view.setBackgroundColor(0xFF4F3FFF);
} else if (event.getActionMasked() == MotionEvent.ACTION_CANCEL
|| event.getActionMasked() == MotionEvent.ACTION_UP) {
view.setBackgroundDrawable(browser.get().orig_bg);
}
return false;
}
});
listView.addView(childview);
}
listView.invalidate();

View File

@ -20,6 +20,7 @@ import android.support.design.widget.NavigationView;
import android.support.design.widget.Snackbar;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.AppCompatActivity;
@ -55,6 +56,15 @@ public class MainActivity extends AppCompatActivity implements
@Override
public void onCreate(Bundle savedInstanceState) {
mPrefs = PreferenceManager.getDefaultSharedPreferences(this);
int app_theme = mPrefs.getInt(Config.pref_app_theme, 0);
if (app_theme == 7) {
setTheme(R.style.AppTheme_Dream);
} else if (app_theme == 1) {
setTheme(R.style.AppTheme_Blue);
} else {
setTheme(R.style.AppTheme);
}
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
@ -76,8 +86,6 @@ public class MainActivity extends AppCompatActivity implements
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
mPrefs = PreferenceManager.getDefaultSharedPreferences(this);
String prior_error = mPrefs.getString("prior_error", null);
if (prior_error != null) {
displayLogOutput(prior_error);
@ -185,7 +193,7 @@ public class MainActivity extends AppCompatActivity implements
return false;
}
@Override
public boolean onQueryTextChange(String s) {
public boolean onQueryTextChange(String query) {
return false;
}
});
@ -390,6 +398,16 @@ public class MainActivity extends AppCompatActivity implements
super.onPostCreate(savedInstanceState);
}
public void recreateActivity() {
this.recreate();
OptionsFragment optionsFrag = new OptionsFragment();
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.fragment_container, optionsFrag, "OPTIONS_FRAG")
.addToBackStack(null).commit();
// Prevents a crash, but actually just reloads the FileBrowser fragment
}
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
// Handle navigation view item clicks here.

View File

@ -8,7 +8,9 @@ public class Config {
public static final String pref_home = "home_directory";
public static final String pref_games = "game_directory";
public static final String pref_theme = "button_theme";
public static final String pref_button_theme = "button_theme";
public static final String pref_app_theme = "app_theme";
public static final String pref_gamedetails = "game_details";

View File

@ -427,7 +427,7 @@ public class InputModFragment extends Fragment {
try {
File buttons = null;
InputStream bitmap;
String theme = mPrefs.getString(Config.pref_theme, null);
String theme = mPrefs.getString(Config.pref_button_theme, null);
if (theme != null) {
buttons = new File(theme);
}

View File

@ -53,7 +53,6 @@ import java.io.OutputStream;
import java.lang.ref.WeakReference;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
public class OptionsFragment extends Fragment {
@ -70,6 +69,7 @@ public class OptionsFragment extends Fragment {
// Container Activity must implement this interface
public interface OnClickListener {
void recreateActivity();
void onMainBrowseSelected(String path_entry, boolean games, String query);
void launchBIOSdetection();
}
@ -130,7 +130,6 @@ public class OptionsFragment extends Fragment {
app.getConfigurationPrefs(mPrefs);
// Generate the menu options and fill in existing settings
Button mainBrowse = (Button) getView().findViewById(R.id.browse_main_path);
mSpnrThemes = (Spinner) getView().findViewById(R.id.pick_button_theme);
new LocateThemes(this).execute(home_directory + "/themes");
@ -182,6 +181,36 @@ public class OptionsFragment extends Fragment {
reios_opt.setChecked(mPrefs.getBoolean(Emulator.pref_usereios, false));
reios_opt.setOnCheckedChangeListener(reios_options);
String[] app_themes = getResources().getStringArray(R.array.themes_app);
Spinner aSpnrThemes = (Spinner) getView().findViewById(R.id.pick_app_theme);
ArrayAdapter<String> themeAdapter = new ArrayAdapter<>(getActivity(),
android.R.layout.simple_spinner_item, app_themes);
themeAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
aSpnrThemes.setAdapter(themeAdapter);
int app_theme = mPrefs.getInt(Config.pref_app_theme, 0);
if (app_theme == 7) {
aSpnrThemes.setSelection(themeAdapter.getPosition("Dream"), true);
} else {
aSpnrThemes.setSelection(app_theme, true);
}
aSpnrThemes.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
String theme = String.valueOf(parentView.getItemAtPosition(position));
if (theme.equals("Dream")) {
mPrefs.edit().putInt(Config.pref_app_theme, 7).apply();
mCallback.recreateActivity();
} else {
mPrefs.edit().putInt(Config.pref_app_theme, position).apply();
mCallback.recreateActivity();
}
}
@Override
public void onNothingSelected(AdapterView<?> parentView) {
}
});
OnCheckedChangeListener details_options = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView,
@ -574,7 +603,7 @@ public class OptionsFragment extends Fragment {
@Override
protected List<File> doInBackground(String... paths) {
File storage = new File(paths[0]);
String[] mediaTypes = options.get().getResources().getStringArray(R.array.themes);
String[] mediaTypes = options.get().getResources().getStringArray(R.array.themes_ext);
FilenameFilter[] filter = new FilenameFilter[mediaTypes.length];
int i = 0;
for (final String type : mediaTypes) {
@ -608,10 +637,10 @@ public class OptionsFragment extends Fragment {
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
String theme = String.valueOf(parentView.getItemAtPosition(position));
if (theme.equals("None")) {
options.get().mPrefs.edit().remove(Config.pref_theme).apply();
options.get().mPrefs.edit().remove(Config.pref_button_theme).apply();
} else {
String theme_path = options.get().home_directory + "/themes/" + theme;
options.get().mPrefs.edit().putString(Config.pref_theme, theme_path).apply();
options.get().mPrefs.edit().putString(Config.pref_button_theme, theme_path).apply();
}
}
@Override
@ -705,9 +734,25 @@ public class OptionsFragment extends Fragment {
mPrefs.edit().remove(Config.pref_rendertype).apply();
mPrefs.edit().remove(Emulator.pref_nosound).apply();
mPrefs.edit().remove(Config.pref_renderdepth).apply();
mPrefs.edit().remove(Config.pref_theme).apply();
mPrefs.edit().remove(Config.pref_button_theme).apply();
getActivity().finish();
Emulator.usereios = false;
Emulator.nativeact = false;
Emulator.dynarecopt = true;
Emulator.unstableopt = false;
Emulator.cable = 3;
Emulator.dcregion = 3;
Emulator.broadcast = 4;
Emulator.limitfps = true;
Emulator.mipmaps = true;
Emulator.widescreen = false;
Emulator.frameskip = 0;
Emulator.pvrrender = false;
Emulator.syncedrender = false;
Emulator.bootdisk = null;
Emulator.nosound = false;
mCallback.recreateActivity();
}
private void showToastMessage(String message, int duration) {

View File

@ -6,8 +6,10 @@ import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.graphics.PorterDuff;
import android.os.Build;
import android.preference.PreferenceManager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
@ -28,6 +30,7 @@ import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
import com.nostra13.universalimageloader.core.assist.ImageScaleType;
import com.reicast.emulator.R;
import com.reicast.emulator.config.Config;
import java.util.ArrayList;
import java.util.HashMap;
@ -35,8 +38,9 @@ import java.util.HashMap;
public class GitAdapter extends BaseAdapter {
private ArrayList<HashMap<String, String>> data;
private LayoutInflater inflater = null;
private LayoutInflater inflater;
private DisplayImageOptions options;
private SharedPreferences mPrefs;
public GitAdapter(Activity activity, ArrayList<HashMap<String, String>> d) {
this.data = d;
@ -50,6 +54,7 @@ public class GitAdapter extends BaseAdapter {
.imageScaleType(ImageScaleType.EXACTLY_STRETCHED).build();
ImageLoader.getInstance().init(configicon);
mPrefs = PreferenceManager.getDefaultSharedPreferences(activity);
}
@ -69,6 +74,16 @@ public class GitAdapter extends BaseAdapter {
View vi = convertView;
if (convertView == null)
vi = this.inflater.inflate(R.layout.change_item, null);
int app_theme = mPrefs.getInt(Config.pref_app_theme, 0);
if (app_theme == 7) {
vi.setBackgroundResource(R.drawable.list_selector_dream);
} else if (app_theme == 1) {
vi.setBackgroundResource(R.drawable.list_selector_blue);
} else {
vi.setBackgroundResource(R.drawable.list_selector_dark);
}
TextView dateText = (TextView) vi.findViewById(R.id.date);
TextView committerText = (TextView) vi.findViewById(R.id.committer);
TextView titleText = (TextView) vi.findViewById(R.id.title);

View File

@ -1,9 +0,0 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="135"
android:centerColor="#4CAF50"
android:endColor="#2E7D32"
android:startColor="#81C784"
android:type="linear" />
</shape>

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@mipmap/texture_blue"
android:tileMode="repeat" />

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@mipmap/texture_dark"
android:tileMode="repeat" />

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@mipmap/texture_light"
android:tileMode="repeat" />

View File

@ -1,10 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Selector style for listrow -->
<item android:drawable="@android:color/transparent" android:state_pressed="false" android:state_selected="false" android:state_focused="false"/>
<item android:drawable="@drawable/gradient_bg_hover" android:state_pressed="true"/>
<item android:drawable="@drawable/gradient_bg_hover" android:state_focused="true"/>
<item android:drawable="@drawable/gradient_bg_hover" android:state_pressed="false" android:state_selected="true"/>
</selector>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Selector style for listrow -->
<item android:drawable="@android:color/transparent" android:state_pressed="false" android:state_selected="false" android:state_focused="false"/>
<item android:drawable="@drawable/gradient_bg_hover_blue" android:state_pressed="true"/>
<item android:drawable="@drawable/gradient_bg_hover_blue" android:state_focused="true"/>
<item android:drawable="@drawable/gradient_bg_hover_blue" android:state_pressed="false" android:state_selected="true"/>
</selector>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Selector style for listrow -->
<item android:drawable="@android:color/transparent" android:state_pressed="false" android:state_selected="false" android:state_focused="false"/>
<item android:drawable="@drawable/gradient_bg_hover_dark" android:state_pressed="true"/>
<item android:drawable="@drawable/gradient_bg_hover_dark" android:state_focused="true"/>
<item android:drawable="@drawable/gradient_bg_hover_dark" android:state_pressed="false" android:state_selected="true"/>
</selector>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Selector style for listrow -->
<item android:drawable="@android:color/transparent" android:state_pressed="false" android:state_selected="false" android:state_focused="false"/>
<item android:drawable="@drawable/gradient_bg_hover_dream" android:state_pressed="true"/>
<item android:drawable="@drawable/gradient_bg_hover_dream" android:state_focused="true"/>
<item android:drawable="@drawable/gradient_bg_hover_dream" android:state_pressed="false" android:state_selected="true"/>
</selector>

View File

@ -5,8 +5,8 @@
<!-- Gradient BgColor for listrow Selected -->
<gradient
android:angle="270"
android:centerColor="#3f7fd7"
android:endColor="#5699f6"
android:startColor="#5699f6" />
android:centerColor="@color/colorBlueAccentDark"
android:endColor="@color/colorBlueAccent"
android:startColor="@color/colorBlueAccent" />
</shape>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<!-- Gradient BgColor for listrow Selected -->
<gradient
android:angle="270"
android:centerColor="@color/colorDarkAccentDark"
android:endColor="@color/colorDarkAccent"
android:startColor="@color/colorDarkAccent" />
</shape>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<!-- Gradient BgColor for listrow Selected -->
<gradient
android:angle="270"
android:centerColor="@color/colorDreamAccentLight"
android:endColor="@color/colorDreamAccent"
android:startColor="@color/colorDreamAccent" />
</shape>

View File

@ -3,7 +3,7 @@
<!-- Selector style for listrow -->
<item android:drawable="@drawable/gradient_bg" android:state_pressed="false" android:state_selected="false"/>
<item android:drawable="@drawable/gradient_bg_hover" android:state_pressed="true"/>
<item android:drawable="@drawable/gradient_bg_hover" android:state_pressed="false" android:state_selected="true"/>
<item android:drawable="@drawable/gradient_bg_hover_blue" android:state_pressed="true"/>
<item android:drawable="@drawable/gradient_bg_hover_blue" android:state_pressed="false" android:state_selected="true"/>
</selector>

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Selector style for listrow -->
<item android:drawable="@drawable/gradient_bg" android:state_pressed="false" android:state_selected="false"/>
<item android:drawable="@drawable/gradient_bg_hover_dark" android:state_pressed="true"/>
<item android:drawable="@drawable/gradient_bg_hover_dark" android:state_pressed="false" android:state_selected="true"/>
</selector>

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Selector style for listrow -->
<item android:drawable="@drawable/gradient_bg" android:state_pressed="false" android:state_selected="false"/>
<item android:drawable="@drawable/gradient_bg_hover_dream" android:state_pressed="true"/>
<item android:drawable="@drawable/gradient_bg_hover_dream" android:state_pressed="false" android:state_selected="true"/>
</selector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 245 KiB

View File

@ -124,11 +124,11 @@
android:orientation="vertical" >
<TextView
android:id="@+id/button_theme_label"
android:id="@+id/app_theme_label"
android:layout_width="wrap_content"
android:layout_height="0dip"
android:layout_weight="1"
android:text="@string/button_theme" />
android:text="@string/app_theme" />
<LinearLayout
android:layout_width="match_parent"
@ -136,7 +136,7 @@
android:orientation="horizontal" >
<Spinner
android:id="@+id/pick_button_theme"
android:id="@+id/pick_app_theme"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
@ -180,6 +180,35 @@
</TableRow>
</TableLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_marginTop="10dp"
android:orientation="vertical" >
<TextView
android:id="@+id/button_theme_label"
android:layout_width="wrap_content"
android:layout_height="0dip"
android:layout_weight="1"
android:text="@string/button_theme" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Spinner
android:id="@+id/pick_button_theme"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10" >
</Spinner>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"

View File

@ -169,7 +169,8 @@
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter" />
android:scaleType="fitCenter"
android:tint="@android:color/transparent"/>
<TextView
android:layout_width="0dp"
@ -226,7 +227,8 @@
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/controller_text_a"
@ -317,7 +319,8 @@
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/controller_text_b"
@ -422,7 +425,8 @@
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/controller_text_c"
@ -527,7 +531,8 @@
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/controller_text_d"

View File

@ -97,7 +97,8 @@
android:id="@+id/a_button_icon"
android:layout_width="48dp"
android:layout_height="48dp"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/a_button_key"
@ -149,7 +150,8 @@
android:id="@+id/b_button_icon"
android:layout_width="48dp"
android:layout_height="48dp"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/b_button_key"
@ -201,7 +203,8 @@
android:id="@+id/x_button_icon"
android:layout_width="48dp"
android:layout_height="48dp"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/x_button_key"
@ -253,7 +256,8 @@
android:id="@+id/y_button_icon"
android:layout_width="48dp"
android:layout_height="48dp"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/y_button_key"

View File

@ -15,7 +15,6 @@
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?android:attr/actionBarSize"
android:background="@android:color/black"
app:popupTheme="@style/AppTheme.PopupOverlay">
<android.support.v7.widget.SearchView

View File

@ -13,7 +13,7 @@
android:orientation="horizontal"
android:clickable="true"
android:focusable="true"
android:background="@drawable/game_selector" >
android:background="@drawable/game_selector_dream" >
<ImageView
android:id="@+id/item_icon"

View File

@ -13,7 +13,7 @@
android:orientation="horizontal"
android:clickable="true"
android:focusable="true"
android:background="@drawable/game_selector" >
android:background="@drawable/game_selector_dream" >
<ImageView
android:id="@+id/item_icon"
@ -25,7 +25,8 @@
android:layout_marginRight="2dp"
android:layout_marginTop="2dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/ic_settings" />
app:srcCompat="@drawable/ic_settings"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/item_name"

View File

@ -14,7 +14,7 @@
android:layout_centerInParent="true"
android:clickable="true"
android:focusable="true"
android:background="@drawable/game_selector" >
android:background="@drawable/game_selector_dream" >
<ImageView
android:id="@+id/item_icon"
@ -22,7 +22,6 @@
android:layout_height="72dp"
android:layout_marginLeft="16dp"
android:layout_gravity="center"
android:tint="@color/ice_light"
app:srcCompat="@drawable/ic_folder_black_24dp" />
<TextView
@ -35,7 +34,6 @@
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:textSize="@dimen/primary_text_material"
android:textColor="@color/ice_light"
android:text="@string/disk_loading" />
</LinearLayout>

View File

@ -4,7 +4,7 @@
android:id="@+id/change"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/list_selector"
android:background="@drawable/list_selector_dream"
android:orientation="horizontal"
android:padding="5dip" >
@ -24,7 +24,8 @@
android:layout_width="60dip"
android:layout_height="60dip"
android:gravity="center"
app:srcCompat="@drawable/ic_github" />
app:srcCompat="@drawable/ic_github"
android:tint="@android:color/transparent"/>
</LinearLayout>
<!-- Main Commit Content -->

View File

@ -43,6 +43,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="cloudImg"
app:srcCompat="@drawable/cloud_big" />
app:srcCompat="@drawable/cloud_big"
android:tint="@android:color/transparent"/>
</LinearLayout>

View File

@ -124,11 +124,11 @@
android:orientation="vertical" >
<TextView
android:id="@+id/button_theme_label"
android:id="@+id/app_theme_label"
android:layout_width="wrap_content"
android:layout_height="0dip"
android:layout_weight="1"
android:text="@string/button_theme" />
android:text="@string/app_theme" />
<LinearLayout
android:layout_width="match_parent"
@ -136,7 +136,7 @@
android:orientation="horizontal" >
<Spinner
android:id="@+id/pick_button_theme"
android:id="@+id/pick_app_theme"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
@ -180,6 +180,35 @@
</TableRow>
</TableLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_marginTop="10dp"
android:orientation="vertical" >
<TextView
android:id="@+id/button_theme_label"
android:layout_width="wrap_content"
android:layout_height="0dip"
android:layout_weight="1"
android:text="@string/button_theme" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Spinner
android:id="@+id/pick_button_theme"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10" >
</Spinner>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"

View File

@ -3,7 +3,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/list_selector"
android:background="@drawable/list_selector_dream"
android:orientation="horizontal"
android:padding="5dip" >

View File

@ -169,7 +169,8 @@
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter" />
android:scaleType="fitCenter"
android:tint="@android:color/transparent"/>
<TextView
android:layout_width="0dp"
@ -226,7 +227,8 @@
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/controller_text_a"
@ -317,7 +319,8 @@
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/controller_text_b"
@ -422,7 +425,8 @@
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/controller_text_c"
@ -527,7 +531,8 @@
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/controller_text_d"

View File

@ -97,7 +97,8 @@
android:id="@+id/a_button_icon"
android:layout_width="48dp"
android:layout_height="48dp"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/a_button_key"
@ -149,7 +150,8 @@
android:id="@+id/b_button_icon"
android:layout_width="48dp"
android:layout_height="48dp"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/b_button_key"
@ -201,7 +203,8 @@
android:id="@+id/x_button_icon"
android:layout_width="48dp"
android:layout_height="48dp"
app:srcCompat="@drawable/input" />
app:srcCompat="@drawable/input"
android:tint="@android:color/transparent"/>
<TextView
android:id="@+id/x_button_key"
@ -261,7 +264,8 @@
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:ems="10"
android:text="@string/y_button" />
android:text="@string/y_button"
android:tint="@android:color/transparent"/>
</LinearLayout>
<LinearLayout

View File

@ -3,11 +3,10 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="@dimen/nav_header_height"
android:background="@drawable/side_nav_bar"
android:background="@drawable/nav_background"
android:gravity="bottom"
android:orientation="vertical"
android:padding="@dimen/nav_header_padding"
android:theme="@style/ThemeOverlay.AppCompat.Dark">
android:padding="@dimen/nav_header_padding">
<LinearLayout
android:layout_width="match_parent"
@ -19,26 +18,33 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="@dimen/nav_header_vertical_spacing"
app:srcCompat="@drawable/ic_launcher" />
app:srcCompat="@drawable/ic_launcher"
android:tint="@android:color/transparent"/>
<TextView
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingLeft="10dp"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:gravity="center_vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_name"
android:gravity="center_vertical"
android:textAlignment="gravity"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:textColor="@color/ice_dark" />
android:textColor="@color/colorDarkText"/>
<TextView
android:id="@+id/project_link"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_site"
android:autoLink="web"
android:textColor="@color/colorDarkText"
android:textColorLink="@color/colorLink"/>
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/project_link"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_site"
android:autoLink="web"
android:textColor="@color/ice_dark" />
</LinearLayout>

View File

@ -7,5 +7,4 @@
android:layout_weight="1"
android:ellipsize="marquee"
android:gravity="right"
android:singleLine="true"
android:textColor="#ffffff" />
android:singleLine="true" />

View File

@ -25,5 +25,4 @@
<item android:title="@string/about"
android:id="@+id/about_menu"
android:icon="@mipmap/menu_question" />
</menu>

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

@ -1,23 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#1e1e1e</color>
<color name="colorPrimaryDark">#191919</color>
<color name="textColorPrimaryBackground">#c4cde3</color>
<color name="colorPrimaryTransparent">#AA1074bc</color>
<color name="colorAccent">#F5A623</color>
<color name="colorDarkPrimary">#0b2032</color>
<color name="colorDarkPrimaryDark">#041121</color>
<color name="colorDarkAccent">#FF4081</color>
<color name="colorDarkAccentDark">#e91e63</color>
<color name="colorDarkText">#e0e0e0</color>
<color name="colorDarkTint">#e0e0e0</color>
<color name="colorBluePrimary">#226696</color>
<color name="colorBluePrimaryDark">#164f6e</color>
<color name="colorBlueAccent">#e040fb</color>
<color name="colorBlueAccentDark">#9c27b0</color>
<color name="colorBlueText">#e0e0e0</color>
<color name="colorBlueTint">#072540</color>
<color name="yellow">#ffd34c</color>
<color name="green">#0f0</color>
<color name="red">#f00</color>
<color name="teal_light">#7680a7</color>
<color name="black">#303030</color>
<color name="windowBackground">#373737</color>
<color name="grey_dark">#6b6b6b</color>
<color name="grey">#969696</color>
<color name="body_text_secondary">#9B9B9B</color>
<color name="light_grey">#c4c4c4</color>
<color name="ice_dark">#d0d0d0</color>
<color name="ice_light">#f0f0f0</color>
<color name="white">#fff</color>
<color name="colorDreamPrimary">#6e6b66</color>
<color name="colorDreamPrimaryDark">#534e4b</color>
<color name="colorDreamAccent">#5787c7</color>
<color name="colorDreamAccentLight">#42a5f5</color>
<color name="colorDreamText">#3d3533</color>
<color name="colorDreamTint">#534e4b</color>
<color name="colorLink">#42a5f5</color>
</resources>

View File

@ -9,6 +9,7 @@
<dimen name="nav_header_vertical_spacing">8dp</dimen>
<dimen name="nav_header_padding">16dp</dimen>
<dimen name="nav_header_height">176dp</dimen>
<dimen name="nav_header_text_spacing">4dp</dimen>
<dimen name="primary_text_material">16sp</dimen>
<dimen name="secondary_text_material">14sp</dimen>

View File

@ -20,7 +20,13 @@
<item>VGA</item>
</string-array>
<string-array name="themes">
<string-array name="themes_app">
<item>Dark</item>
<item>Blue</item>
<item>Dream</item>
</string-array>
<string-array name="themes_ext">
<item>png</item>
<item>jpg</item>
<item>jpeg</item>

View File

@ -7,6 +7,7 @@
<string name="system_path">System Path\n (location of data folder with dc_boot.bin/dc_flash.bin inside)</string>
<string name="browser_path">Default System Path</string>
<string name="games_path">Storage Path\n (location of *.gdi, *.chd or *.cdi images)</string>
<string name="app_theme">Application Theme</string>
<string name="button_theme">Onscreen Button Theme</string>
<string name="bios_selection">Select a BIOS source</string>
@ -72,6 +73,7 @@
<string name="games_listing">Game List</string>
<string name="search_hint">Game (ie. Crazy Taxi)</string>
<string name="clear_search">Clear Search Results</string>
<string name="game_details">Game Info - %1$s</string>
<string name="info_unavailable">Game Info Unavailable</string>
@ -91,7 +93,7 @@
<string name="controller_not_connected">Controller Not Connected %1$s</string>
<string name="controller_none_selected">No Controller Selected</string>
<string name="select">Select</string>
<string name="remove">Remove</string>
<string name="remove">Clear</string>
<string name="select_controller_title">Select Controller</string>
<string name="select_controller_message">Press any button on the controller %1$s to assign to port</string>
<string name="controller_already_in_use">This controller is already in use!</string>

View File

@ -3,18 +3,37 @@
<!-- Base application theme. -->
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:textColorPrimary">@color/white</item>
<item name="android:textColorSecondary">@color/body_text_secondary</item>
<item name="android:textColorTertiary">@color/white</item>
<item name="android:windowBackground">@color/windowBackground</item>
<item name="android:windowNoTitle">true</item>
<item name="windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
<item name="colorPrimary">@color/colorDarkPrimary</item>
<item name="colorPrimaryDark">@color/colorDarkPrimaryDark</item>
<item name="colorAccent">@color/colorDarkAccent</item>
<item name="android:windowBackground">@drawable/background_dark</item>
<item name="android:textColorPrimary">@android:color/white</item>
<item name="android:textColorSecondary">@color/colorDarkText</item>
<item name="android:textColorTertiary">@android:color/white</item>
<item name="android:tint">@color/colorDarkTint</item>
</style>
<style name="AppTheme.Blue" parent="Theme.AppCompat.NoActionBar">
<item name="colorPrimary">@color/colorBluePrimary</item>
<item name="colorPrimaryDark">@color/colorBluePrimaryDark</item>
<item name="colorAccent">@color/colorBlueAccent</item>
<item name="android:windowBackground">@drawable/background_blue</item>
<item name="android:textColorPrimary">@android:color/white</item>
<item name="android:textColorSecondary">@color/colorBlueText</item>
<item name="android:textColorTertiary">@android:color/white</item>
<item name="android:tint">@color/colorBlueTint</item>
</style>
<style name="AppTheme.Dream" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/colorDreamPrimary</item>
<item name="colorPrimaryDark">@color/colorDreamPrimaryDark</item>
<item name="colorAccent">@color/colorDreamAccent</item>
<item name="android:windowBackground">@drawable/background_dream</item>
<item name="android:textColorPrimary">@android:color/black</item>
<item name="android:textColorSecondary">@color/colorDreamText</item>
<item name="android:textColorTertiary">@android:color/black</item>
<item name="android:tint">@color/colorDreamTint</item>
</style>
<style name="AppTheme.NoActionBar">
@ -24,7 +43,7 @@
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Dark" />
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
<style name="TextAppearance" parent="@android:style/TextAppearance.Small">
<item name="android:textColor">?android:attr/textColorPrimary</item>