Skip to content
Original file line number Diff line number Diff line change
Expand Up @@ -22,5 +22,6 @@ data class GameDisplayInfo(
val headerUrl: String? = null, // Header image URL (for SteamGridDB, can use grid as header)
val compatibilityMessage: String? = null, // Compatibility message text (e.g., "Works on your GPU")
val compatibilityColor: ULong? = null, // Compatibility message color (ARGB)
val disabledWarning: String ? = null // Warning message if the game is disabled (e.g., "Not compatible due to 3rd party Client")
)

Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,7 @@ private fun PrimaryActionButton(
val buttonColor = when {
isDownloading -> PluviaTheme.colors.statusDownloading
isInstalled -> PluviaTheme.colors.statusInstalled
!enabled -> PluviaTheme.colors.textMuted
else -> PluviaTheme.colors.statusAvailable
}

Expand Down Expand Up @@ -924,18 +925,24 @@ internal fun AppScreenContent(
}
}
}
}

// Compatibility status (if applicable)
if (displayInfo.compatibilityMessage != null && displayInfo.compatibilityColor != null) {
Spacer(modifier = Modifier.height(8.dp))
Text(
text = displayInfo.compatibilityMessage,
style = MaterialTheme.typography.labelSmall,
color = Color(displayInfo.compatibilityColor),
)
}
}
// DisabledWarning or compatibility notice for game.
if(displayInfo.disabledWarning != null && buttonEnabled == false){
Spacer(modifier = Modifier.height(8.dp))
Text(
text = displayInfo.disabledWarning,
style = MaterialTheme.typography.labelSmall,
color = Color.Red.copy(alpha = 0.8f),
)
} else if (displayInfo.compatibilityMessage != null && displayInfo.compatibilityColor != null) {
Spacer(modifier = Modifier.height(8.dp))
Text(
text = displayInfo.compatibilityMessage,
style = MaterialTheme.typography.labelSmall,
color = Color(displayInfo.compatibilityColor),
)
}
}
}

// Content section below hero with solid background
Expand Down Expand Up @@ -1242,6 +1249,7 @@ private fun Preview_AppScreen() {
sizeFromStore = null,
lastPlayedText = null,
playtimeText = null,
disabledWarning = "3rd Party games not supported"
)
PluviaTheme {
Surface {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ import kotlinx.coroutines.withContext
import app.gamenative.ui.util.SnackbarManager
import timber.log.Timber

// TODO: Verify all tests and do DLC auto-install with base game.
class EpicAppScreen : BaseAppScreen() {

companion object {
Expand Down Expand Up @@ -273,8 +272,13 @@ class EpicAppScreen : BaseAppScreen() {
sizeFromStore = sizeFromStore,
compatibilityMessage = compatibilityMessage,
compatibilityColor = compatibilityColor,
disabledWarning = if (game != null && game.thirdPartyManagedApp.isNotEmpty()) {
context.getString(R.string.epic_disabled_warning_third_party_client)
} else {
null
}
Comment thread
phobos665 marked this conversation as resolved.
)
Timber.tag(TAG).d("Returning GameDisplayInfo: name=${displayInfo.name}, iconUrl=${displayInfo.iconUrl}, heroImageUrl=${displayInfo.heroImageUrl}, developer=${displayInfo.developer}, installLocation=${displayInfo.installLocation}")
Timber.tag(TAG).d("Returning GameDisplayInfo: name=${displayInfo.name}, iconUrl=${displayInfo.iconUrl}, heroImageUrl=${displayInfo.heroImageUrl}, developer=${displayInfo.developer}, installLocation=${displayInfo.installLocation} thirdPartyApp=${game?.thirdPartyManagedApp}")
return displayInfo
}

Expand All @@ -293,10 +297,15 @@ class EpicAppScreen : BaseAppScreen() {

override fun isValidToDownload(context: Context, libraryItem: LibraryItem): Boolean {
Timber.tag(TAG).d("isValidToDownload: checking appId=${libraryItem.appId}")

// Epic games can be downloaded if not already installed or downloading
val installed = isInstalled(context, libraryItem)
val downloading = isDownloading(context, libraryItem)
val valid = !installed && !downloading

val game = EpicService.getEpicGameOf(libraryItem.gameId)
val requiresThirdPartyApp = game?.thirdPartyManagedApp?.isNotEmpty() == true

val valid = !installed && !downloading && !requiresThirdPartyApp
Timber.tag(TAG).d("isValidToDownload: appId=${libraryItem.appId}, installed=$installed, downloading=$downloading, valid=$valid")
return valid
}
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-da/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1239,6 +1239,7 @@
<string name="amazon_logout_in_progress">Logger ud fra Amazon Games…</string>

<!-- Epic Install/Uninstall -->
<string name="epic_disabled_warning_third_party_client">Spil med tredjeparts-launcher understøttes ikke i øjeblikket på Epic Store</string>
<string name="epic_uninstall_game_title">Afinstallér spil</string>
<string name="epic_uninstall_game_message">Er du sikker på, at du vil afinstallere %1$s? Denne handling kan ikke fortrydes.</string>
<string name="epic_install_game_title">Download spil</string>
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-de/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1309,6 +1309,7 @@
<string name="amazon_logout_in_progress">Melde von Amazon Games ab…</string>

<!-- Epic Install/Uninstall -->
<string name="epic_disabled_warning_third_party_client">Spiele mit Drittanbieter-Launcher werden im Epic Store derzeit nicht unterstützt</string>
<string name="epic_uninstall_game_title">Spiel deinstallieren</string>
<string name="epic_uninstall_game_message">Möchtest du %1$s wirklich deinstallieren? Diese Aktion kann nicht rückgängig gemacht werden.</string>
<string name="epic_install_game_title">Spiel herunterladen</string>
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-es/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
<string name="gog_uninstall_confirmation_message">¿Deseas desinstalar %1$s? Esta acción no se puede deshacer.</string>
<string name="gog_install_game_title">Instalar juego</string>
<string name="gog_install_confirmation_message">La aplicación a instalar requiere el siguiente espacio. ¿Deseas continuar?\n\n\tTamaño de descarga: %1$s\n\tEspacio disponible: %2$s</string>
<string name="epic_disabled_warning_third_party_client">Los juegos con lanzador de terceros no son compatibles actualmente en Epic Store</string>
<string name="epic_uninstall_game_title">Desinstalar juego</string>
<string name="epic_uninstall_game_message">¿Deseas desinstalar %1$s? Esta acción no se puede deshacer.</string>
<string name="epic_install_game_title">Instalar juego</string>
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-fr/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1369,6 +1369,7 @@
<string name="amazon_logout_in_progress">Déconnexion d\'Amazon Games…</string>

<!-- Epic Install/Uninstall -->
<string name="epic_disabled_warning_third_party_client">Les jeux nécessitant un lanceur tiers ne sont actuellement pas pris en charge sur Epic Store</string>
<string name="epic_uninstall_game_title">Désinstaller le jeu</string>
<string name="epic_uninstall_game_message">Êtes-vous sûr de vouloir désinstaller %1$s ? Cette action ne peut pas être annulée.</string>
<string name="epic_install_game_title">Télécharger le jeu</string>
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-it/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1365,6 +1365,7 @@
<string name="amazon_logout_in_progress">Uscita da Amazon Games…</string>

<!-- Epic Install/Uninstall -->
<string name="epic_disabled_warning_third_party_client">I giochi con launcher di terze parti non sono attualmente supportati su Epic Store</string>
<string name="epic_uninstall_game_title">Disinstalla gioco</string>
<string name="epic_uninstall_game_message">Sei sicuro di voler disinstallare %1$s? Questa azione non può essere annullata.</string>
<string name="epic_install_game_title">Scarica gioco</string>
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-ko/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
<string name="gog_uninstall_confirmation_message">%1$s을(를) 제거하시겠습니까? 이 작업은 취소할 수 없습니다.</string>
<string name="gog_install_game_title">게임 다운로드</string>
<string name="gog_install_confirmation_message">설치할 앱의 공간 요구사항은 다음과 같습니다. 계속하시겠습니까?\n\n\t다운로드 크기: %1$s\n\t사용 가능한 공간: %2$s</string>
<string name="epic_disabled_warning_third_party_client">서드파티 런처 게임은 현재 Epic Store에서 지원되지 않습니다</string>
<string name="epic_uninstall_game_title">게임 제거</string>
<string name="epic_uninstall_game_message">%1$s을(를) 제거하시겠습니까? 이 작업은 취소할 수 없습니다.</string>
<string name="epic_install_game_title">게임 다운로드</string>
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-pl/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
<string name="gog_uninstall_confirmation_message">Czy na pewno chcesz odinstalować %1$s? Tej akcji nie można cofnąć.</string>
<string name="gog_install_game_title">Pobierz grę</string>
<string name="gog_install_confirmation_message">Instalowana aplikacja ma następujące wymagania dotyczące miejsca. Czy chcesz kontynuować?\n\n\tRozmiar pobierania: %1$s\n\tDostępne miejsce: %2$s</string>
<string name="epic_disabled_warning_third_party_client">Gry wymagające zewnętrznego launchera nie są obecnie obsługiwane w Epic Store</string>
<string name="epic_uninstall_game_title">Odinstaluj grę</string>
<string name="epic_uninstall_game_message">Czy na pewno chcesz odinstalować %1$s? Tej akcji nie można cofnąć.</string>
<string name="epic_install_game_title">Pobierz grę</string>
Expand Down Expand Up @@ -870,7 +871,7 @@
<string name="driver_manager">Menedżer sterowników</string>
<string name="select_a_driver">Wybierz sterownik</string>
<string name="import_zip_from_device">Importuj ZIP z urządzenia</string>

<!-- Contents Manager -->
<string name="contents_manager">Menedżer zawartości</string>
<string name="import_wcp_from_device">Importuj .wcp z urządzenia</string>
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-pt-rBR/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1239,6 +1239,7 @@
<string name="amazon_logout_in_progress">Saindo do Amazon Games…</string>

<!-- Epic Install/Uninstall -->
<string name="epic_disabled_warning_third_party_client">Jogos com launcher de terceiros não são suportados atualmente na Epic Store</string>
<string name="epic_uninstall_game_title">Desinstalar jogo</string>
<string name="epic_uninstall_game_message">Tem certeza de que deseja desinstalar %1$s? Esta ação não pode ser desfeita.</string>
<string name="epic_install_game_title">Baixar jogo</string>
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-ro/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1374,6 +1374,7 @@
<string name="amazon_logout_in_progress">Se deconectează de la Amazon Games…</string>

<!-- Epic Install/Uninstall -->
<string name="epic_disabled_warning_third_party_client">Jocurile cu lansator terț nu sunt acceptate în prezent pe Epic Store</string>
<string name="epic_uninstall_game_title">Dezinstalare joc</string>
<string name="epic_uninstall_game_message">Sigur vrei să dezinstalezi %1$s? Această acțiune nu poate fi anulată.</string>
<string name="epic_install_game_title">Descărcare joc</string>
Expand Down
5 changes: 3 additions & 2 deletions app/src/main/res/values-ru/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -374,6 +374,7 @@
<string name="epic_uninstall_error">Ошибка удаления: %1$s</string>
<string name="epic_uninstall_failed">Ошибка удаления: %1$s</string>
<string name="epic_uninstall_game_message">Вы уверены, что хотите удалить %1$s? Это действие не может быть отменено.</string>
<string name="epic_disabled_warning_third_party_client">Игры со сторонними лаунчерами в настоящее время не поддерживаются в Epic Store</string>
<string name="epic_uninstall_game_title">Удалить игру</string>
<string name="error_a11y_label">Ошибка: невалидно</string>
<string name="error_icon_content_description">Ошибка</string>
Expand Down Expand Up @@ -675,9 +676,9 @@ Ubuntu RootFs - releases.ubuntu.com/focal</string>
<string name="m3c_dropdown_menu_toggle">Переключить выпадающее меню</string>
<string name="m3c_snackbar_dismiss">Закрыть</string>
<string name="magnifier">Лупа</string>
<string name="main_app_running_message">Вы уже вошли на другом устройстве и играете в %s.
<string name="main_app_running_message">Вы уже вошли на другом устройстве и играете в %s.
Вы всё ещё можете играть в эту игру, но это отключит другой сеанс от Steam.</string>
<string name="main_app_running_other_device">Вы уже вошли на другом устройстве (%1$s) и играете в %2$s (%3$s), и это сохранение ещё не в облаке.
<string name="main_app_running_other_device">Вы уже вошли на другом устройстве (%1$s) и играете в %2$s (%3$s), и это сохранение ещё не в облаке.
Вы всё ещё можете играть в эту игру, но это отключит другой сеанс от Steam и может создать конфликт сохранений, когда прогресс того сеанса синхронизируется</string>
<string name="main_app_running_title">Приложение запущено</string>
<string name="main_app_session_suspended">Сеанс приложения приостановлен. Пожалуйста, перезапустите приложение.</string>
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-uk/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1368,6 +1368,7 @@
<string name="amazon_logout_in_progress">Вихід з Amazon Games…</string>

<!-- Epic Install/Uninstall -->
<string name="epic_disabled_warning_third_party_client">Ігри зі стороннім лаунчером наразі не підтримуються в Epic Store</string>
<string name="epic_uninstall_game_title">Деінсталювати гру</string>
<string name="epic_uninstall_game_message">Ви впевнені, що хочете деінсталювати %1$s? Цю дію не можна скасувати.</string>
<string name="epic_install_game_title">Завантажити гру</string>
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-zh-rCN/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1364,6 +1364,7 @@
<string name="amazon_logout_in_progress">正在从 Amazon Games 注销…</string>

<!-- Epic Install/Uninstall -->
<string name="epic_disabled_warning_third_party_client">Epic 商店目前不支持需要第三方启动器的游戏</string>
<string name="epic_uninstall_game_title">卸载游戏</string>
<string name="epic_uninstall_game_message">您确定要卸载 %1$s 吗?此操作无法撤回。</string>
<string name="epic_install_game_title">下载游戏</string>
Expand Down Expand Up @@ -1545,4 +1546,4 @@
<string name="game_launch_tip_23">提示:如果你使用的是 Mali GPU,请使用系统驱动。</string>
<string name="game_launch_tip_24">提示:出现黑屏?尝试使用菜单中的\"%s\"选项检查驱动是否正常工作。</string>
<string name="launch_bionic_steam_description">启用在线游玩并提升兼容性\n不一定总能正常工作\n尝试前请先备份存档</string>
</resources>
</resources>
3 changes: 2 additions & 1 deletion app/src/main/res/values-zh-rTW/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1367,6 +1367,7 @@
<string name="amazon_logout_in_progress">正在從 Amazon Games 登出…</string>

<!-- Epic Install/Uninstall -->
<string name="epic_disabled_warning_third_party_client">Epic 商店目前不支援需要第三方啟動器的遊戲</string>
<string name="epic_uninstall_game_title">卸載遊戲</string>
<string name="epic_uninstall_game_message">您確定要卸載 %1$s 嗎?此操作無法撤回。</string>
<string name="epic_install_game_title">下載遊戲</string>
Expand Down Expand Up @@ -1537,4 +1538,4 @@
<string name="game_launch_tip_23">提示:如果你使用的是 Mali GPU,請使用系統驅動。</string>
<string name="game_launch_tip_24">提示:出現黑畫面?嘗試使用選單中的「%s」選項檢查驅動是否正常運作。</string>
<string name="launch_bionic_steam_description">啟用線上遊玩並提升相容性\n不一定總能正常運作\n嘗試前請先備份存檔</string>
</resources>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
<string name="gog_uninstall_confirmation_message">Are you sure you want to uninstall %1$s? This action cannot be undone.</string>
<string name="gog_install_game_title">Download Game</string>
<string name="gog_install_confirmation_message">The app being installed has the following space requirements. Would you like to proceed?\n\n\tDownload Size: %1$s\n\tAvailable Space: %2$s</string>
<string name="epic_disabled_warning_third_party_client">Third-party launcher games are currently not supported on Epic Store</string>
Comment thread
phobos665 marked this conversation as resolved.
<string name="epic_uninstall_game_title">Uninstall Game</string>
<string name="epic_uninstall_game_message">Are you sure you want to uninstall %1$s? This action cannot be undone.</string>
<string name="epic_install_game_title">Download Game</string>
Expand Down
Loading