summaryrefslogtreecommitdiff
path: root/src/yuzu/game_list_p.h
AgeCommit message (Collapse)Author
2024-12-31chore: update project branding to citronZephyron
2023-11-21config: Unify config handling under frontend_commont895
Replaces every way of handling config for each frontend with SimpleIni. frontend_common's Config class is at the center where it saves and loads all of the cross-platform settings and provides a set of pure virtual functions for platform specific settings. As a result of making config handling platform specific, several parts had to be moved to each platform's own config class or to other parts. Default keys were put in platform specific config classes and translatable strings for Qt were moved to shared_translation. Default hotkeys, default_theme, window geometry, and qt metatypes were moved to uisettings. Additionally, to reduce dependence on Qt, QStrings were converted to std::strings where applicable.
2023-08-27Address review commentsLiam
2023-08-26yuzu-qt: Track play timeMario
2022-11-10yuzu/compatdb: Rework compatibility submission systemFearlessTobi
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com>
2022-08-20Qt: Retranslate GameList header and Filter lineKyle Kienapfel
Didn't notice this until I was trying to change the default font to Comic Sans MS when language is set to English in yuzu.
2022-08-05Linux: handle dark system themes nicelyKyle K
yuzu's default theme doesn't specify everything, which is fine for windows, but in linux anything unspecified is set to the users theme. Symptoms of this are that a linux user with a dark theme won't think to change the theme to a dark theme when first using yuzu Idea here is to try and support arbitrary themes on linux. preliminary work on a "default_dark" theme, used only as overlay for any themes that are measured to be dark mode. Other work done: FreeDesktop standard icon names: plus -> list-add delete refresh, we use view-refresh remove duplicated icons for qdarkstyle_midnight_blue referencing icon aliases in the qrc files is the way to go Note: Dynamic style changing doesn't appear to work with AppImage
2022-07-27chore: make yuzu REUSE compliantAndrea Pappacoda
[REUSE] is a specification that aims at making file copyright information consistent, so that it can be both human and machine readable. It basically requires that all files have a header containing copyright and licensing information. When this isn't possible, like when dealing with binary assets, generated files or embedded third-party dependencies, it is permitted to insert copyright information in the `.reuse/dep5` file. Oh, and it also requires that all the licenses used in the project are present in the `LICENSES` folder, that's why the diff is so huge. This can be done automatically with `reuse download --all`. The `reuse` tool also contains a handy subcommand that analyzes the project and tells whether or not the project is (still) compliant, `reuse lint`. Following REUSE has a few advantages over the current approach: - Copyright information is easy to access for users / downstream - Files like `dist/license.md` do not need to exist anymore, as `.reuse/dep5` is used instead - `reuse lint` makes it easy to ensure that copyright information of files like binary assets / images is always accurate and up to date To add copyright information of files that didn't have it I looked up who committed what and when, for each file. As yuzu contributors do not have to sign a CLA or similar I couldn't assume that copyright ownership was of the "yuzu Emulator Project", so I used the name and/or email of the commit author instead. [REUSE]: https://reuse.software Follow-up to 01cf05bc75b1e47beb08937439f3ed9339e7b254
2022-06-14game_list: Eliminate variable shadowingMorph
2022-06-13yuzu: Eliminate variable shadowingMorph
2022-04-16ui: Fix Game Compatibility list translationsKyle K
Reported by GillianMC on Discord. Looks to be a small quirk in the QT API. setText(QObject::tr(status.text)); bringing up QObject breaks the link with the GameListItemCompat
2022-03-20yuzu: Reduce unused includesameerj
2021-08-01game_list: Make game list folder icons smaller (#6762)Malte Jürgens
Makes the default game list folder icons 48x48 by default instead of 64x64, and allows for selecting small (24x24) and large (72x72) icon sizes.
2021-06-28yuzu qt: Make most UISettings a BasicSettinglat9nq
For simple primitive settings, moves their defaults and labels to definition time. Also fixes typo and clang-format yuzu qt: config: Fix rng_seed
2021-04-30game_list: Update filter results when removing directoriesKewlan
2021-04-15game_list: Mark games as favorite to make them appear at the top.Kewlan
Icons are from Icons8.
2021-01-18game_list: Fix folder reorderingFearlessTobi
The bug(s) happened because we swapped the contents on values.game_dirs, but the pointer each item had to their respective game_dir wasn't updated. This made it so that the item had the wrong game_dir associated with it after a "move up" or "move down" operation. It can be observed by choosing "open directory location" after such operation. Changed from raw pointer to an index because it's equivalent but a bit clearer, but the change is not essential. Co-Authored-By: Vitor K <29167336+vitor-k@users.noreply.github.com>
2020-12-05game_list_p: Resolve deprecated usage of QVariant operator<Lioncash
This is designated as obsolete in Qt's docs (see: https://doc.qt.io/qt-5/qvariant-obsolete.html#operator-lt)
2020-09-29qt/game_list: Give GameListSearchField::KeyReleaseEater a parentReinUsesLisp
This fixes a memory leak as KeyReleaseEater's destructor was never called.
2020-08-29game_list_p: Avoid string churn in GameListItemPath data()Lioncash
2020-08-29game_list_p: Mark some constants as constexprLioncash
Consistency change with how we mark constants in the rest of the codebase.
2020-04-25Fix the mistake in the port and update the comment for clarityVitor Kiguchi
2020-04-06yuzu: Fixes to game list sortingFearlessTobi
Should fix citra-emu/citra#4593. As the issue might not be entirely clear, I'll offer a short explanation from what I understood from it and found from experimentation. Currently yuzu offers the user the option to change the text that's displayed in the "Name" column in the game list. Generally, it is expected that the items are sorted based on the displayed text, but yuzu would sort them by title instead. Made it so that an access to SortRole returns the same as DisplayRole. There shouldn't be any UI changes, only change in behaviour. Also fixes a bug with directory sorting, where having the directories out of order would enable you to try to "move up" to the addDirectory button, which would crash the emulator. Co-Authored-By: Vitor K <vitor-k@users.noreply.github.com>
2020-01-19GUI/gamelist: add "None" as an option for second row and remove dynamically ↵Bartosz Kaszubowski
duplicate row options (#3309) * GUI/gamelist: add "None" as an option for second row and remove duplicated row options * fix clang-format warnings
2019-10-04yuzu/game_list: Silence -Wswitch and -Wunused-variableReinUsesLisp
2019-09-04Limit the size of directory icons, fix text when icon size is nonefearlessTobi
2019-09-04Separate UserNand and Sdmc directoriesfearlessTobi
2019-09-04Address more trivial review commentsfearlessTobi
2019-09-04Address trivial review commentsfearlessTobi
2019-09-04yuzu: Add support for multiple game directoriesfearlessTobi
Ported from https://github.com/citra-emu/citra/pull/3617.
2019-08-09yuzu/CMakeLists: Remove qt5_wrap_ui macro usageLioncash
We can simply enable CMAKE_AUTOUIC and let CMake take care of handling the UI code generation for targets. As part of letting CMake automatically handle the header file parsing, we must not name includes with "ui_*" unless they're related to the output of the Qt UIC compiler. Because of this, we need to rename ui_settings, given it would conflict with this restriction.
2019-05-20yuzu/game_list_p: Amend mentions of SMDH in commentsLioncash
SMDH is a metadata format used in some executable formats for the Nintendo 3DS. Switch executables don't utilize this metadata format, so this just a holdover from Citra and can be corrected.
2019-05-20yuzu/game_list_p: Specify string conversions explicitlyLioncash
Allows the game list item code to build with implicit string conversions disabled.
2019-04-15CMakeLists: Define QT_USE_QSTRINGBUILDER for the Qt targetLioncash
This is a compile definition introduced in Qt 4.8 for reducing the total potential number of strings created when performing string concatenation. This allows for less memory churn. This can be read about here: https://blog.qt.io/blog/2011/06/13/string-concatenation-with-qstringbuilder/ For a change that isn't source-compatible, we only had one occurrence that actually need to have its type clarified, which is pretty good, as far as transitioning goes.
2018-09-27Merge pull request #1360 from FearlessTobi/port-3979bunnei
Port citra-emu/citra#3979 game_list: move SearchField to game_list_p.h and fix untranslated text
2018-09-21game_list: Add Qt SmoothTransformation to picture scalingZach Hilman
2018-09-21game_list: move SearchField to game_list_p.h and fix untranslated textzhupengfei
I have tested and made sure the text is translatable, but this would require a translation update to take effect.
2018-09-17game_list_p: Amend typo in GameListItemCompat's constructor parameterLioncash
Adds a missing 'i' character that was missing in compatibility.
2018-09-17game_list_p: Take map iterator contents by const referenceLioncash
We don't need to copy the whole struct in this instance, we can just utilize a reference instead.
2018-09-09yuzu: Move compatibility list specifics to their own source filesLioncash
Lets us keep the generic portions of the compatibility list code together, and allows us to introduce a type alias that makes it so we don't need to type out a very long type declaration anymore, making the immediate readability of some code better.
2018-09-07yuzu: Move GameListWorker to its own source filesLioncash
This has gotten sufficiently large enough to warrant moving it to its own source files. Especially given it dumps the file_sys headers around code that doesn't use it for the most part. This'll also make it easier to introduce a type alias for the compatibility list, so a large unordered_map type declaration doesn't need to be specified all the time (we don't want to propagate the game_list_p.h include via the main game_list.h header).
2018-09-04game_list: Use RegisteredCacheUnion for installedZach Hilman
Reduces code
2018-09-02vfs_real: Forward declare IOFileLioncash
Eliminates the need to rebuild some source files if the file_util header ever changes. This also uncovered some indirect inclusions, which have also been fixed.
2018-08-31core/core: Replace includes with forward declarations where applicableLioncash
The follow-up to e2457418dae19b889b2ad85255bb95d4cd0e4bff, which replaces most of the includes in the core header with forward declarations. This makes it so that if any of the headers the core header was previously including change, then no one will need to rebuild the bulk of the core, due to core.h being quite a prevalent inclusion. This should make turnaround for changes much faster for developers.
2018-08-29Show game compatibility within yuzufearlessTobi
2018-08-23game_list: Add SD registration loading to game listZach Hilman
2018-08-20service/filesystem: Use forward declarations where applicableLioncash
Avoids the need to rebuild multiple source files if the filesystem code headers change. This also gets rid of a few instances of indirect inclusions being relied upon
2018-08-11game_list: Split game list scans to multiple functionsZach Hilman
Avoids unnecessary rebuilds of control data on every layer of recursion in AddFstEntriesToGameList
2018-08-10qt/game_list: Resolve truncation warning within GameListItemPath's constructorLioncash
Silences a warning about truncating from size_t to u32
2018-08-10gt/game_list: Use std::array in GameListItemPath's data() functionLioncash
We don't need to use a heap-allocated std::vector here, given we explicitly know the bounds.