aboutsummaryrefslogtreecommitdiff
path: root/src/yuzu/configuration/shared_widget.cpp
Commit message (Collapse)AuthorAgeFilesLines
* qt: save frame generation settings (#283)spaina9346 hours1-1/+7
| | | | | | | | | | | | | | | | Six frame generation settings are paired with frame_gen, so each widget made its own checkbox and saved it to frame_gen on apply. The last one won, so ticking only the first box left frame generation off. Don't make a checkbox for a paired setting without the Paired specialization. frame_gen is the only such setting, and it gets its own widget again. Keep the pairing itself, Android uses it to hide the options. On Qt, hide them while frame generation is off. Fixes #251 Assisted-by: Claude Opus 5.5 (diagnosis, code and commit message) Signed-off-by: spaina93 <72979505+spaina93@users.noreply.github.com>
* Added FSR 3 Upscaling and Frame GenerationDjihads804 days1-1/+1
|
* [settings,qt] merge of "disable controller applet" toggle with "controller ↵xbzk2026-09-301-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | applet mode" picker (#4498) - [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions). - [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md) - [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability. ------------------- Small good simplification to nuke a toggle which costed me almost an entire day of work when fixing controller applet issues: There were two settings related to Controller applet: -"disable controller applet", which is a boolean toggle; -"controller configuration" applet mode, which is a "Real"/"Custom" picker; All i did was to nuke the toggle and add a third option "Disabled" to the picker. Users which used the disable toggle will have to pick Disabled; Real/Custom settings wont be affected since their indexes remains. All options tested against diablo 3. All working as intended. Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4498 Reviewed-by: lizzie <lizzie@eden-emu.dev> Reviewed-by: MaranBr <maranbr@eden-emu.dev>
* [vulkan, android] Initial implementation of LSFG-VK (#4263)CamilleLaVey2026-08-171-0/+9
| | | | | | | | | | | | | Pretty much self explanatory, own implementation based on LSFG-VK available with some additional reverse engineer work for the actual use of shaders inside Lossless.dll, we don't store/ bundle any tools that bypass security and self ownership: to use this feature is required to own your own copy of Lossless Scaling and I encourage to support developers behind this work. Special thanks: 1.- THS - Original developer behind Lossless Scaling 2.- PancakeTAS - Developer behind LSFG-VK 3.- The Big Smolio The Sleeper (@gidoly) Co-authored-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4263
* [common/logging] Simplify logging logic and fix issues when logging before ↵lizzie2026-03-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | system is created (#3688) - our logging code was bigger than spdlog itself, why???? just keep it simple - fix issues when logging before logging system is even started - removes the "initialized logging twice" issue - removes uneeded indirection in file logging - uses direct formatting instead of jumping hoopla-around the fmt::format() ressult - code duplication and dead code removal as usual I did explore dup2() but I think it's not worth the hassle I did try `fwopen()` but it's better if things are just kept as-is. there is a lot of noise because I removed a bunch of redundant files on logging and just put everything in one file now normally this wouldn't be a good idea, however consider: the complexity of logging; it's less than 500 lines... does it really need a whole subsystem?!?!?! ITS JUST LOGGING Signed-off-by: lizzie <lizzie@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3688 Reviewed-by: crueter <crueter@eden-emu.dev> Reviewed-by: DraVee <chimera@dravee.dev> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* [meta] clang-format literally all of the Qt code (#3706)crueter2026-03-101-25/+26
| | | | | | | | I'm tired of dealing with this tbh Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3706 Reviewed-by: Lizzie <lizzie@eden-emu.dev>
* [cmake, common] allow build with -fno-rtti and /GR-, to disable gen of rtti ↵lizzie2026-02-221-22/+19
| | | | | | | | | | | | and save some bytes in vtables (#359) Signed-off-by: lizzie <lizzie@eden-emu.dev> Co-authored-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/359 Reviewed-by: DraVee <dravee@eden-emu.dev> Reviewed-by: CamilleLaVey <camillelavey99@gmail.com> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* [desktop] Fix misaligned output device (#2786)crueter2025-10-201-4/+4
| | | | | | | | | | | | | Builder::BuildWidget previously relied on Qt to handle layout stretching by implicitly setting each widget to have a stretch of 0. This is very bad behavior, so to fix this we must set a stretch of 1 on each widget that's added by the builder furthermore, default and default_dark did not properly define a min-width or min-height for QComboBox. This caused the platform theme to take over sizing which is NOT GOOD and should basically be avoided always Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2786 Reviewed-by: MaranBr <maranbr@eden-emu.dev>
* [qt_common] reorg + checkstate abstraction (#2735)crueter2025-10-151-2/+3
| | | | | | | | no diff. in functionality, just confirm builds on ubuntu 24.04/debian 12 Signed-off-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2735
* [qt] refactor: qt_common lib (#94)crueter2025-09-151-1/+4
| | | | | | | | | | | | | | | | | This is part of a series of PRs made in preparation for the QML rewrite. this PR specifically moves a bunch of utility functions from main.cpp into qt_common, with the biggest benefit being that QML can reuse the exact same code through ctx passthrough. Also, QtCommon::Frontend is an abstraction layer over several previously Widgets-specific stuff like QMessageBox that gets used everywhere. The idea is that once QML is implemented, these functions can have a Quick version implemented for systems that don't work well with Widgets (sun) or for those on Plasma 6+ (reduces memory usage w/o Widgets linkage) although Quick from C++ is actually anal, but whatever. Other than that this should also just kinda reduce the size of main.cpp which is a 6000-line behemoth rn, and clangd straight up gives up with it for me (likely caused by the massive amount of headers, which this DOES reduce). In the future, I probably want to create a common strings lookup table that both Qt and QML can reference--though I'm not sure how much linguist likes that--which should give us a way to keep language consistent (use frozen-map). TODO: Docs for Qt stuff Co-authored-by: MaranBr <maranbr@outlook.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/94 Reviewed-by: MaranBr <maranbr@eden-emu.dev> Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
* [compat] fix solaris Qt build (#194)lizzie2025-08-151-15/+13
| | | | | | | | Co-authored-by: crueter <crueter@eden-emu.dev> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/194 Reviewed-by: crueter <crueter@eden-emu.dev> Co-authored-by: lizzie <lizzie@eden-emu.dev> Co-committed-by: lizzie <lizzie@eden-emu.dev>
* fixes vulkan issues and android settings (#105)Aleksandr Popovich2025-05-171-3/+3
| | | | | | | | | | | | | | | | | | - removes provoking vertex, vertex input, dynamic state if not supported - moves dynamic state to be a 0-3 slider and vertex input its own checkbox - the rich presence was disabled on linux. - there were duplicate settings in "edens veil"? - weird behavior of the vertex input checkbox on per game setting - adds xenoblade 2 to the d24 conversion control function - adds the flush logs by line setting to android. - adds the memory layout setting to android - Adds the option to show building shaders on the android overlay. Signed-off-by: Aleksandr Popovich <alekpopo@pm.me> Co-authored-by: swurl <swurl@swurl.xyz> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/105 Co-authored-by: Aleksandr Popovich <alekpopo@pm.me> Co-committed-by: Aleksandr Popovich <alekpopo@pm.me>
* Fix Qt <6.7 build and allow speed limit to be savedswurl2025-04-231-0/+1
| | | | Signed-off-by: swurl <swurl@swurl.xyz>
* Fix more typosViktor Szépe2024-01-151-2/+2
|
* shared_widget: Explicit capture of 'this'Merry2023-11-211-2/+2
|
* shared_widget: Use default literals morelat9nq2023-09-141-14/+12
|
* shared_widget: Forward-port Citra changeslat9nq2023-09-131-31/+126
| | | | | Seemed like a good time to move these over. Also remove usage of std::sto{l,ll,ul,f,d}
* msvc: set warning level to /W4 globallyDanila Malyutin2023-09-031-1/+1
| | | | And fix a bunch of warnings
* Merge pull request #11356 from lat9nq/console-mode-pgliamwhite2023-08-261-1/+67
|\ | | | | general,config-qt: Present Console Mode as an enum with separate options in game properties
| * shared_widget: Implement radio groupslat9nq2023-08-221-1/+67
| |
* | ui: Fixed inverted controls on ReverseSlider widgetsBenjaminHalko2023-08-251-0/+1
|/ | | | fixes: #11236
* shared_widget: Only save global settings as neededlat9nq2023-07-301-2/+4
| | | | | Fixes a potential but not reproduced issue where the custom config is being applied to the global config.
* shared_widget: Determine default request earlierlat9nq2023-07-231-19/+22
| | | | | Fixes a bug where a restore button could be created for an unmanaged widget.
* shared_widget: Use QRegularExpressionlat9nq2023-07-221-3/+3
|
* common,qt-config: Remove usage of forward_listlat9nq2023-07-211-4/+4
|
* common: Move global configuration state modifiers back to settingslat9nq2023-07-211-0/+1
|
* configuration: Use enum indexlat9nq2023-07-211-1/+1
|
* settings,configuration: Add a default suffixlat9nq2023-07-211-13/+34
|
* configuration: Use paired settingslat9nq2023-07-211-0/+4
|
* shared_widget: Internalize component restoringlat9nq2023-07-211-30/+48
|
* configuration: Use specialization of settingslat9nq2023-07-211-0/+31
| | | | Reduces some ugliness in frontend code.
* configuration: Use a builder to create widgetslat9nq2023-07-211-6/+29
| | | | | This gets rid of some repeated code and sets us up to send more information to the new widget.
* shared_widget: Correct spellinglat9nq2023-07-211-1/+1
|
* common,yuzu-qt: GCC warning silenceslat9nq2023-07-211-13/+14
| | | | Fixes -Wshadow, -Wdeprecated, and catch by copy rather than by ref.
* shared_widget: Some documentation, add shorter constructorlat9nq2023-07-211-0/+8
| | | | | | The shorter constructor enables us to specify some options without needing to specify the default values of multiplier which wasn't always appropriate and could be confusing.
* shared_widget: Improve logging, use Setting::Rangedlat9nq2023-07-211-7/+19
|
* configuration/shared: Clean up includes [IWYU]lat9nq2023-07-211-6/+16
|
* (ui,)settings: Use explicit instantiationlat9nq2023-07-211-0/+3
| | | | Reduces compile times a tad on clang.
* shared_widget: Avoid calling QWidgetPrivate::setVisiblelat9nq2023-07-211-2/+0
| | | | | | This particular setVisible function is unnecessary. It also has horrible runtime performance, so much that it consumed maybe 80% of the time used to create a widget.
* shared_widget: Add SPDX headerlat9nq2023-07-211-0/+3
|
* general: Add typeinfo where neededlat9nq2023-07-211-0/+1
| | | | Using typeid without including typeinfo first produces an ill-formed program.
* shared_widget: Use actionTriggered for user input signalslat9nq2023-07-211-1/+1
| | | | | Clicking the slider without directly interacting with the slider handle would change the value, but not trigger the restore button.
* shared_widget: Fix includeslat9nq2023-07-211-7/+4
|
* shared_widget: Complete refactoringlat9nq2023-07-211-363/+147
| | | | | Reduces code bloat a good bit by moving code specific to each sub widget to their own functions.
* shared_widget: Refactor againlat9nq2023-07-211-49/+114
| | | | | | Starting with combobox Putting code specific to the sub-widget in their own function.
* shared_widget: Force min width of 100 for restore buttonlat9nq2023-07-211-2/+13
| | | | | Dark theme mandates a 100px minimum width for QAbstractButton, even though this is not desired here.
* configuration: Clean up includes a bitlat9nq2023-07-211-0/+3
|
* configuration: Use a mapping of setting value to namelat9nq2023-07-211-29/+36
| | | | | Makes comboboxes always correspond to the value of the setting they're modifying.
* settings, shared_widget: typo fixeslat9nq2023-07-211-2/+8
|
* configure_audio: Implement ui generationlat9nq2023-07-211-31/+47
| | | | | | | | | | | | | | | | Needs a considerable amount of management specific to some of the comoboboxes due to the audio engine configuration. general: Partial audio config implmentation configure_audio: Implement ui generation Needs a considerable amount of management specific to some of the comoboboxes due to the audio engine configuration. general: Partial audio config implmentation settings: Make audio settings as enums