Skip to content

Commit

Permalink
Merge branch 'master' into release
Browse files Browse the repository at this point in the history
  • Loading branch information
Swordfish90 committed Mar 12, 2022
2 parents e72d14b + 3ba968f commit 4133860
Show file tree
Hide file tree
Showing 150 changed files with 2,805 additions and 984 deletions.
44 changes: 44 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Disclamer**
In order to keep this bug tracker manageable, you need to keep a few things in mind:
* Any issue not following this template will be closed as invalid
* Is the issue reproducible on RetroArch with the same core? If so, it's very likely a core issue and the upstream core repository is a better place to file it
* Is the issue already opened? Try out a search before filing one.

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
25 changes: 25 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Disclamer**
In order to keep this bug tracker manageable, you need to keep a few things in mind:
*Any feature request not following this template will be closed as invalid
*Is the issue already opened? Try out a search before filing one.

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ It originated from a rib of [Retrograde](https://github.com/retrograde/retrograd
- NEC PC Engine (PCE) ([beetle_pce_fast](https://docs.libretro.com/library/beetle_pce_fast/))
- Neo Geo Pocket (NGP) ([mednafen_ngp](https://docs.libretro.com/library/beetle_neopop/))
- Neo Geo Pocket Color (NGC) ([mednafen_ngp](https://docs.libretro.com/library/beetle_neopop/))
- Nintendo 3DS (3DS) ([citra](https://docs.libretro.com/library/citra/))

### Features:
- Android TV support
Expand Down
18 changes: 10 additions & 8 deletions buildSrc/src/main/java/deps.kt
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
/* ktlint-disable no-multi-spaces max-line-length */
object deps {
object android {
const val targetSdkVersion = 29
const val compileSdkVersion = 29
const val targetSdkVersion = 31
const val compileSdkVersion = 31
const val minSdkVersion = 23
const val buildToolsVersion = "29.0.3"
const val buildToolsVersion = "30.0.2"
}

object versions {
Expand All @@ -15,7 +15,7 @@ object deps {
const val kotlin = "1.4.30"
const val okHttp = "4.9.1"
const val retrofit = "2.9.0"
const val work = "2.5.0"
const val work = "2.7.1"
const val navigation = "2.3.5"
const val rxbindings = "3.1.0"
const val lifecycle = "2.3.1"
Expand All @@ -25,8 +25,8 @@ object deps {
const val room = "2.3.0"
const val epoxy = "4.6.3-vinay-compose"
const val serialization = "1.2.2"
const val libretrodroid = "0.6.1"
const val radialgamepad = "0.5.0"
const val libretrodroid = "0.7.0"
const val radialgamepad = "0.6.1"
}

object libs {
Expand Down Expand Up @@ -76,6 +76,7 @@ object deps {
const val runtime = "androidx.work:work-runtime:${versions.work}"
const val runtimeKtx = "androidx.work:work-runtime-ktx:${versions.work}"
const val rxjava2 ="androidx.work:work-rxjava2:${versions.work}"
const val multiprocess ="androidx.work:work-multiprocess:${versions.work}"
}
}
object autodispose {
Expand Down Expand Up @@ -126,7 +127,7 @@ object deps {
const val okio = "com.squareup.okio:okio:2.10.0"
const val okHttp3 = "com.squareup.okhttp3:okhttp:${versions.okHttp}"
const val okHttp3Logging = "com.squareup.okhttp3:logging-interceptor:${versions.okHttp}"
const val coil = "io.coil-kt:coil:1.3.2"
const val coil = "io.coil-kt:coil:1.4.0"
const val retrofit = "com.squareup.retrofit2:retrofit:${versions.retrofit}"
const val retrofitRxJava2 = "com.squareup.retrofit2:adapter-rxjava2:${versions.retrofit}"
const val rxAndroid2 = "io.reactivex.rxjava2:rxandroid:2.1.1"
Expand All @@ -136,10 +137,11 @@ object deps {
const val rxPreferences = "com.f2prateek.rx.preferences2:rx-preferences:2.0.1"
const val rxRelay2 = "com.jakewharton.rxrelay2:rxrelay:2.1.1"
const val timber = "com.jakewharton.timber:timber:5.0.1"
const val material = "com.google.android.material:material:1.4.0"
const val material = "com.google.android.material:material:1.5.0"
const val multitouchGestures = "com.dinuscxj:multitouchgesturedetector:1.0.0"
const val guava = "com.google.guava:guava:30.1.1-android"
const val harmony = "com.frybits.harmony:harmony:1.1.9"
const val startup = "androidx.startup:startup-runtime:1.1.1"
const val radialgamepad = "com.github.Swordfish90:RadialGamePad:${versions.radialgamepad}"
const val libretrodroid = "com.github.Swordfish90:LibretroDroid:${versions.libretrodroid}"
}
Expand Down
6 changes: 6 additions & 0 deletions lemuroid-app-ext-free/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@ plugins {
id("kotlin-kapt")
}

android {
kotlinOptions {
jvmTarget = "1.8"
}
}

dependencies {
implementation(project(":retrograde-util"))
implementation(project(":retrograde-app-shared"))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ class CoreUpdaterImpl(

// This is the last tagged versions of cores.
companion object {
private const val CORES_VERSION = "1.12"
private const val CORES_VERSION = "1.13"
}

private val baseUri = Uri.parse("https://github.com/Swordfish90/LemuroidCores/")
Expand Down
13 changes: 5 additions & 8 deletions lemuroid-app/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
plugins {
id("com.android.application")
id("kotlin-android")
id("kotlin-android-extensions")
id("kotlin-kapt")
id("androidx.navigation.safeargs.kotlin")
}

android {
defaultConfig {
versionCode = 155
versionName = "1.12.1"
versionCode = 161
versionName = "1.13.0" // Always remember to update Cores Tag!
applicationId = "com.swordfish.lemuroid"
}

Expand All @@ -34,7 +33,8 @@ android {
":lemuroid_core_ppsspp",
":lemuroid_core_prosystem",
":lemuroid_core_snes9x",
":lemuroid_core_stella"
":lemuroid_core_stella",
":lemuroid_core_citra"
)
}

Expand Down Expand Up @@ -88,15 +88,11 @@ android {
signingConfig = signingConfigs["release"]
proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro")
resValue("string", "lemuroid_name", "Lemuroid")
resValue("color", "main_color", "#00c64e")
resValue("color", "main_color_light", "#9de3aa")
}
getByName("debug") {
applicationIdSuffix = ".debug"
versionNameSuffix = "-DEBUG"
resValue("string", "lemuroid_name", "LemuroiDebug")
resValue("color", "main_color", "#f44336")
resValue("color", "main_color_light", "#ef9a9a")
}
}

Expand Down Expand Up @@ -174,6 +170,7 @@ dependencies {
implementation(deps.libs.androidx.documentfile)
implementation(deps.libs.androidx.leanback.tvProvider)
implementation(deps.libs.harmony)
implementation(deps.libs.startup)

implementation(deps.libs.libretrodroid)

Expand Down
5 changes: 5 additions & 0 deletions lemuroid-app/src/debug/res/values/leanback-colors.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<resources>
<color name="leanback_background">@color/surface_elevation_0dp</color>
<color name="leanback_foreground">@color/surface_elevation_3dp</color>
<color name="leanback_info">@color/surface_elevation_1dp</color>
</resources>
62 changes: 62 additions & 0 deletions lemuroid-app/src/debug/res/values/material-colors.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
<resources>
<color name="main_color">#f44336</color>
<color name="main_color_light">#ef9a9a</color>

<!-- Generated using material color builder -->
<color name="md_theme_light_primary">#BC1714</color>
<color name="md_theme_light_onPrimary">#FFFFFF</color>
<color name="md_theme_light_primaryContainer">#FFDAD3</color>
<color name="md_theme_light_onPrimaryContainer">#410001</color>
<color name="md_theme_light_secondary">#775652</color>
<color name="md_theme_light_onSecondary">#FFFFFF</color>
<color name="md_theme_light_secondaryContainer">#FFDAD4</color>
<color name="md_theme_light_onSecondaryContainer">#2C1512</color>
<color name="md_theme_light_tertiary">#715C2E</color>
<color name="md_theme_light_onTertiary">#FFFFFF</color>
<color name="md_theme_light_tertiaryContainer">#FCDFA6</color>
<color name="md_theme_light_onTertiaryContainer">#261A00</color>
<color name="md_theme_light_error">#BA1B1B</color>
<color name="md_theme_light_errorContainer">#FFDAD4</color>
<color name="md_theme_light_onError">#FFFFFF</color>
<color name="md_theme_light_onErrorContainer">#410001</color>
<color name="md_theme_light_background">#FCFCFC</color>
<color name="md_theme_light_onBackground">#211A19</color>
<color name="md_theme_light_surface">#FCFCFC</color>
<color name="md_theme_light_onSurface">#211A19</color>
<color name="md_theme_light_surfaceVariant">#F4DDDA</color>
<color name="md_theme_light_onSurfaceVariant">#534341</color>
<color name="md_theme_light_outline">#857370</color>
<color name="md_theme_light_inverseOnSurface">#FBEEEC</color>
<color name="md_theme_light_inverseSurface">#362F2E</color>
<color name="md_theme_light_inversePrimary">#FFB4A8</color>
<color name="md_theme_light_shadow">#000000</color>
<color name="md_theme_light_primaryInverse">#FFB4A8</color>
<color name="md_theme_dark_primary">#FFB4A8</color>
<color name="md_theme_dark_onPrimary">#680001</color>
<color name="md_theme_dark_primaryContainer">#940002</color>
<color name="md_theme_dark_onPrimaryContainer">#FFDAD3</color>
<color name="md_theme_dark_secondary">#E7BCB6</color>
<color name="md_theme_dark_onSecondary">#442A26</color>
<color name="md_theme_dark_secondaryContainer">#5D3F3B</color>
<color name="md_theme_dark_onSecondaryContainer">#FFDAD4</color>
<color name="md_theme_dark_tertiary">#DFC38C</color>
<color name="md_theme_dark_onTertiary">#3F2E04</color>
<color name="md_theme_dark_tertiaryContainer">#574419</color>
<color name="md_theme_dark_onTertiaryContainer">#FCDFA6</color>
<color name="md_theme_dark_error">#FFB4A9</color>
<color name="md_theme_dark_errorContainer">#930006</color>
<color name="md_theme_dark_onError">#680003</color>
<color name="md_theme_dark_onErrorContainer">#FFDAD4</color>
<color name="md_theme_dark_background">#211A19</color>
<color name="md_theme_dark_onBackground">#EDE0DE</color>
<color name="md_theme_dark_surface">#211A19</color>
<color name="md_theme_dark_onSurface">#EDE0DE</color>
<color name="md_theme_dark_surfaceVariant">#534341</color>
<color name="md_theme_dark_onSurfaceVariant">#D8C2BF</color>
<color name="md_theme_dark_outline">#A08C89</color>
<color name="md_theme_dark_inverseOnSurface">#211A19</color>
<color name="md_theme_dark_inverseSurface">#EDE0DE</color>
<color name="md_theme_dark_inversePrimary">#BC1714</color>
<color name="md_theme_dark_shadow">#000000</color>
<color name="md_theme_dark_primaryInverse">#BC1714</color>
</resources>
42 changes: 26 additions & 16 deletions lemuroid-app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.swordfish.lemuroid">

<uses-feature android:name="android.software.leanback" android:required="false" />
Expand All @@ -8,6 +9,7 @@

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="com.android.providers.tv.permission.WRITE_EPG_DATA" />

<application
Expand All @@ -21,9 +23,10 @@
android:banner="@mipmap/ic_banner"
android:supportsRtl="true"
android:networkSecurityConfig="@xml/network_security_config"
android:theme="@style/AppTheme">
android:theme="@style/LemuroidMaterialTheme">
<activity
android:name="com.swordfish.lemuroid.app.mobile.feature.main.MainActivity">
android:name="com.swordfish.lemuroid.app.mobile.feature.main.MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
Expand All @@ -33,7 +36,8 @@
<activity
android:name="com.swordfish.lemuroid.app.shared.game.ExternalGameLauncherActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@style/GameTheme">
android:exported="true"
android:theme="@style/LemuroidMaterialTheme.Game">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
Expand All @@ -45,21 +49,22 @@
android:process=":game"
android:launchMode="singleInstance"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@style/GameTheme"/>
android:theme="@style/LemuroidMaterialTheme.Game"/>

<service android:name=".app.mobile.feature.game.GameService"
android:process=":game" />

<activity android:name="com.swordfish.lemuroid.app.mobile.feature.gamemenu.GameMenuActivity"
android:process=":game"
android:theme="@style/PreferenceOverlay"/>
android:theme="@style/LemuroidMaterialTheme.Menu"/>

<activity android:name="com.swordfish.lemuroid.app.shared.settings.StorageFrameworkPickerLauncher"
android:theme="@style/InvisibleTheme"/>
android:theme="@style/LemuroidMaterialTheme.Invisible"/>

<!-- Leanback activities -->
<activity android:name=".app.tv.main.MainTVActivity"
android:theme="@style/LeanbackTheme">
android:exported="true"
android:theme="@style/LemuroidLeanbackTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LEANBACK_LAUNCHER" />
Expand All @@ -72,30 +77,35 @@
</activity>

<activity android:name=".app.tv.settings.TVSettingsActivity"
android:theme="@style/LeanbackPreferences" />
android:theme="@style/LemuroidLeanbackPreferencesTheme" />

<activity android:name=".app.tv.folderpicker.TVFolderPickerActivity"
android:theme="@style/Theme.Leanback.GuidedStep" />

<activity android:name=".app.tv.folderpicker.TVFolderPickerLauncher" />

<activity android:name=".app.tv.game.TVGameActivity"
android:theme="@style/GameTheme"
android:theme="@style/LemuroidMaterialTheme.Game"
android:process=":game"/>

<activity android:name=".app.tv.gamemenu.TVGameMenuActivity"
android:theme="@style/LeanbackPreferences"
android:theme="@style/LemuroidLeanbackPreferencesTheme"
android:process=":game" />

<activity android:name=".app.shared.gamecrash.GameCrashActivity"
android:theme="@style/GameTheme" />
android:theme="@style/LemuroidMaterialTheme.Game" />

<receiver android:name=".app.shared.library.LibraryIndexBroadcastReceiver"/>

<!-- It is not possible to invoke Work from another process with the default initializer.
We have to disable it and manually initialize it in our custom Application. -->
<provider
android:name="androidx.work.impl.WorkManagerInitializer"
android:authorities="${applicationId}.workmanager-init"
android:enabled="false"/>
android:name="androidx.startup.InitializationProvider"
android:authorities="${applicationId}.androidx-startup"
android:exported="false"
tools:node="merge">

<meta-data android:name="com.swordfish.lemuroid.app.shared.startup.WorkManagerTasksInitializer"
android:value="androidx.startup" />
</provider>

</application>

Expand Down
Loading

0 comments on commit 4133860

Please sign in to comment.