Commit Graph
21 Commits
Author SHA1 Message Date
Henrik Rydgård 176f56da8d Implement support for setting two common driver flags for Turnip (custom Adreno driver)
enable_tp_ubwc_flag_hint and storage_8bit are now available as check
boxes on the driver setup screen.

Fixes #22808
2026-10-27 12:16:25 +01:00
Henrik RydgårdandClaude Opus 5.5 b54056685e UI: Space ChoiceGroups from their container instead of their own margins
ChoiceGroups no longer have hardcoded margins. A new ChoiceGroupList holds them,
with padding and spacing that give the same look as before. Settings tabs, developer
tools, the two-pane settings columns, the pause menu and the rest put their groups in
one, and a few screens adjust its padding and spacing to their layout.

Also add the two groups in the remote disc streaming settings that were created but
never added, and make the settings search look inside groups: it only checked a tab's
direct children, so with ChoiceGroups a filter hid everything.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-24 14:01:58 +02:00
Henrik RydgårdandClaude Opus 5.5 74bbd4b62e UI: Use ChoiceGroup on more settings-like screens
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-24 01:52:34 +02:00
Henrik Rydgård 8f5e984238 DriverManagerScreen: reject zip-slip in custom driver install
Both meta.json's "name" field and the zip entry names from a custom
GPU driver zip were joined onto GetDriverPath() verbatim - Path::operator/
does no ".." normalization, and ZipFileReader doesn't sanitize entry
names either. A crafted driver zip (these are commonly
downloaded/shared from third-party sites, e.g. Turnip/Mesa driver
packages) could use a ".." component to write files outside the
intended drivers/<name>/ directory. Reuse the existing
HasParentDirComponent() helper to reject such names.
2026-08-12 09:29:31 +02:00
Henrik Rydgård 7219cd2f5a Split off ScreenManager from Screen.cpp 2026-08-07 14:30:36 +02:00
Henrik Rydgård cc0ece038c Clean up the string type in RequestCallback - somehow was both char* and std::string????
Might be related to #21695
2026-05-18 14:16:34 +02:00
Henrik Rydgård f3c9b0cfeb Remove more uses of the ugly PromptScreen. 2026-02-12 13:37:45 +01:00
Henrik Rydgård 34938e3de6 Move Notice to Common/UI 2026-01-25 15:10:26 +01:00
Henrik Rydgård 2b9f2672bb UI screens header cleanup 2025-10-29 00:15:41 +01:00
Henrik Rydgård 7ffd72b32e Rename some screen classes 2025-10-29 00:02:43 +01:00
Henrik Rydgård 138be54f6a More misc work 2025-10-28 11:54:07 +01:00
Henrik Rydgård b45d07d6cb Break out TabHolder from Common/UI/ViewGroup.cpp. A few new atlas images 2025-10-23 11:19:20 +02:00
Henrik Rydgård 58456ae950 Remove the UI::EventReturn return values. Makes editing the UI nicer. 2025-09-15 11:09:00 -06:00
Henrik Rydgård 2a8ae61ecb More UI tweaks, use the new strings 2025-05-25 11:22:05 +02:00
Henrik Rydgård 6efb758893 CHange the TabbedDialog create-tab API to allow for future lazy-loading 2025-03-23 22:48:57 +01:00
Henrik Rydgård e01ca5b057 Logging API change (refactor) (#19324)
* Rename LogType to Log

* Explicitly use the Log:: enum when logging. Allows for autocomplete when editing.

* Mac/ARM64 buildfix

* Do the same with the hle result log macros

* Rename the log names to mixed case while at it.

* iOS buildfix

* Qt buildfix attempt, ARM32 buildfix
2024-07-14 14:42:59 +02:00
Henrik Rydgård 1f129b6dca Replace "ReadFileToString" with a few semantically clearer wrappers. 2024-01-25 09:55:54 +01:00
Henrik Rydgård b2c19695ed Extra check and comment 2024-01-21 13:47:11 +01:00
Henrik Rydgård 1304d04161 Fix a particular type of race condition in file dialog requests
It seems to be possible for a user to back out of a screen before
receiving the "dialog completed" callback on Android, in which case
things pointed to by the callback might be gone.

In this case, it's better to simply not call the callback, rather than
crashing.

This is accomplished by assigning "Tokens" to screens that cause
requests, and in ~Screen, invalidate any pending requests belonging to
that token.
2024-01-18 12:25:55 +01:00
Henrik Rydgård cf635fcd1e Add new translation strings 2024-01-17 10:51:12 +01:00
Henrik Rydgård 9253bf9cb5 Add a new screen for managing installed Adreno drivers 2024-01-17 10:51:08 +01:00