summaryrefslogtreecommitdiffstats
path: root/src/yuzu (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #7716 from german77/volumebunnei2022-01-223-26/+16
|\ | | | | yuzu: Add volume hotkeys
| * yuzu: Add volume up/down hotkeysgerman772022-01-163-4/+16
| |
| * yuzu: Remove speed limit hotkeysgerman772022-01-153-24/+2
| |
* | Merge pull request #7737 from bunnei/fix-dummy-thread-leakbunnei2022-01-221-2/+2
|\ \ | | | | | | Various fixes to HLE service thread management
| * | hle: kernel: KThread: Rename thread_type_for_debugging -> thread_type.bunnei2022-01-211-2/+2
| | | | | | | | | | | | - This will be used to ensure that we do not schedule dummy threads.
* | | Use Default Colorful theme by default outside of Windowsv19932022-01-212-6/+11
|/ / | | | | | | | | | | On OSes with system-wide theming this allows yuzu to follow system style, regardless of its exact coloration, working well with both light and dark system themes. Dark /Colorful, on the other hand, forces dark theme regardless of user preferences set in system settings, making for a poor default. Use Colorful variation to keep in line with icon style of patron-voted Dark Colorful.
* | Merge pull request #7725 from german77/mouse_in_motionbunnei2022-01-191-0/+10
|\ \ | | | | | | input_common: Reintroduce motion from mouse and use button names
| * | input_common: Reintroduce motion from mouse and use button namesgerman772022-01-171-0/+10
| |/
* | uisettings: Add enumeration type for themesMorph2022-01-172-3/+17
| | | | | | | | Eliminates the usage of a magic number to indicate the default index of the themes array,
* | config: Change default theme to Dark Colorfulgidoly2022-01-171-2/+2
|/
* Merge pull request #7690 from Morph1984/increase-file-limit-winbunnei2022-01-141-2/+2
|\ | | | | yuzu: main: Increase the open file limit on Windows to 8192
| * yuzu: main: Increase the open file limit on Windows to 8192Morph2022-01-101-2/+2
| | | | | | | | This is a temporary solution for now to accommodate for mods containing more than 4096 files.
* | Merge pull request #7633 from german77/hotkeysbunnei2022-01-119-75/+544
|\ \ | |/ |/| yuzu: Add controller hotkeys
| * yuzu: Add controller hotkeysgerman772022-01-079-75/+544
| |
* | yuzu: Use pad parameter to choose the correct controllergerman772022-01-071-7/+8
| |
* | configure_per_game: Initialize tabs after loading custom configurationlat9nq2022-01-051-15/+9
|/ | | | | | | | | | Changes tab initialization to happen after the configuration is loaded, which means that it no longer happens as member initializers in the ConfigurePerGame constructor. Removes the cluster of ??_tab->SetConfiguration's that I added earlier to get around this issue initially. Fixes a regression in #6774
* Merge pull request #7251 from FernandoS27/shader-dumpbunnei2022-01-042-0/+16
|\ | | | | ShaderDecompiler: Add a debug option to dump the game's shaders.
| * ShaderDecompiler: Add a debug option to dump the game's shaders.Fernando Sahmkow2022-01-042-0/+16
| |
* | Merge pull request #7662 from german77/uistatusbunnei2022-01-031-2/+2
|\ \ | | | | | | yuzu: Fix UI elements not updating correctly
| * | yuzu: Fix UI elements not updating correctlygerman772022-01-021-2/+2
| |/
* / controller_applet: Only populate supported controllersgerman772022-01-022-53/+68
|/
* core/hid: Fix controller type validationgerman772021-12-302-4/+4
|
* main: reword inhibit reasonliushuyu2021-12-221-2/+3
|
* main: fix wake lock in Flatpak ...liushuyu2021-12-223-0/+63
| | | | ... by using the XDP system
* Merge pull request #7604 from ameerj/fullscreen-render-windowbunnei2021-12-221-25/+16
|\ | | | | main: Make separate render window fullscreen toggle on the monitor it resides in
| * main: Refactor to reduce code duplication in ShowFullscreen()ameerj2021-12-191-25/+16
| |
| * main: Make render window borderless fullscreen toggle on the monitor it resides inameerj2021-12-191-1/+1
| | | | | | | | | | | | Toggling borderless fullscreen on the separate render window made it fullscreen on the monitor which the main yuzu window resided in. This change allows the render window to go fullscreen on the monitor it resides in, independent of the main window location.
* | Merge pull request #7597 from bunnei/remove-global-lockbunnei2021-12-203-9/+0
|\ \ | |/ |/| core: hle: Remove global HLE lock.
| * core: hle: Remove global HLE lock.bunnei2021-12-183-9/+0
| | | | | | | | | | - This was added early on as a hack to protect against some concurrency issues. - It's not clear that this serves any purpose anymore, and if it does, individual components should be fixed rather than using a global recursive mutex.
* | Merge pull request #7570 from ameerj/favorites-expandedbunnei2021-12-183-7/+17
|\ \ | |/ |/| game_list: Add persistent setting for the favorites row expanded state
| * game_list: Add persistent setting for the favorites row expanded stateameerj2021-12-123-7/+17
| | | | | | | | Previously, the favorites row was always expanded on launch. This change introduces a persistent setting that allows the favorites row's expanded state to be remembered between launches.
* | Merge pull request #7532 from goldenx86/patch-3bunnei2021-12-161-8/+5
|\ \ | | | | | | Update video core popup
| * | Suggestions from CrusadingNinjaMatías Locatti2021-12-161-2/+2
| | |
| * | Changed linkMatías Locatti2021-12-161-1/+1
| | |
| * | main: Update video core popupMatías Locatti2021-12-071-8/+5
| | | | | | | | | | | | Old version had formatting issues, and I want to provide an answer to the most common reason this pops up in the first place, outdated drivers.
* | | yuzu/main: Fix host memory byte units. GB to GiBWunkolo2021-12-151-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I have `134850146304` bytes of ram and Yuzu was saying that I had `125.59 GB` of ram. But `125.59` is actually the amount of gi**bi**bytes I have. In gi**ga**bytes I would have `134.9`. Additionally, I changed the `1024 / 1024 / 1024` here into the `_GiB` user-literals that I added a while ago(#6519). https://www.wolframalpha.com/input/?i=134850146304+bytes
* | | qt_software_keyboard: Fix out of bounds array accessMorph2021-12-141-4/+19
| |/ |/| | | | | We were unconditionally accessing the keyboard_buttons array, even if the bottom_osk_index was for the numberpad, leading to an out of bounds array access. Fix this by accessing the proper array for the current button when the index is for the numberpad.
* | profiler: Use QWheelEvent position().toPoint()Morph2021-12-081-1/+1
| | | | | | | | QWheelEvent::pos() is deprecated. Make use of position().toPoint() instead.
* | Merge pull request #7506 from heinermann/focus_crashMai M2021-12-081-8/+9
|\ \ | |/ |/| Fixed #7502
| * Fixed #7502Adam Heinermann2021-12-051-8/+9
| |
* | core/hid: Ensure only valid npad are connectedgerman772021-12-052-70/+64
|/
* Merge pull request #7489 from Morph1984/steady-clockbunnei2021-12-042-4/+4
|\ | | | | general: Replace high_resolution_clock with steady_clock
| * general: Replace high_resolution_clock with steady_clockMorph2021-12-022-4/+4
| | | | | | | | On some OSes, high_resolution_clock is an alias to system_clock and is not monotonic in nature. Replace this with steady_clock.
* | yuzu: Implement basic controller navigationgerman772021-12-029-8/+285
|/
* qt_controller: Make use of (Enable/Disable)AllControllerConfigurationMorph2021-11-301-8/+5
| | | | This also moves the use of DisableConfiguration to the destructor.
* general: Fix handheld typoMorph2021-11-291-16/+16
|
* qt_controller: Fix input when the controller applet is ignoredgerman772021-11-291-0/+3
|
* settings: Add debug setting to enable all controllersgerman772021-11-284-0/+45
|
* Merge pull request #7255 from german77/krakenFernando S2021-11-2737-2637/+1879
|\ | | | | Project Kraken: Input rewrite
| * config: Remove vibration configurationgerman772021-11-275-100/+0
| |
| * applet/controller: Enable configuring mode while the applet is opengerman772021-11-271-7/+12
| |
| * input_common: Fully implement UDP controllersNarr the Reg2021-11-264-3/+44
| |
| * yuzu: Fix TAS from rebasegerman772021-11-253-9/+11
| |
| * input_common: Move button names to the frontendgerman772021-11-251-3/+83
| |
| * bootmanager: Use cross-platform keyboard inputgerman772021-11-252-38/+57
| |
| * kraken: Address comments from reviewgerman772021-11-252-34/+34
| | | | | | | | Fix compiler bug
| * core/hid: Improve accuary of mouse implementationgerman772021-11-252-2/+4
| |
| * core/hid: Fully implement native mousegerman772021-11-2510-794/+110
| |
| * input_common: Allow keyboard to be backwards compatiblegerman772021-11-252-14/+9
| |
| * core/hid: Improve accuracy of the keyboard implementationgerman772021-11-253-161/+288
| |
| * core/hid: Remove usage of native types, fix a couple of errors with motiongerman772021-11-252-9/+19
| |
| * settings: Remove includes of core.hgerman772021-11-2510-57/+55
| |
| * service/hid: Remove includes of core.h and settings.hgerman772021-11-254-13/+9
| |
| * UI nitsLevi Behunin2021-11-251-9/+6
| | | | | | | | | | Set top margin to 6 on Right Stick, LeftStick, Face Buttons, D-Pad. Change property on Input Device QComboBox from minimumSize to minimumContentsLength.
| * settings: Fix controller preview not displaying the correct controllergerman772021-11-252-2/+5
| |
| * core/hid: Rename NpadType to NpadStyleIndexgerman772021-11-258-101/+103
| |
| * config: Cleanup and documentationgerman772021-11-253-74/+8
| |
| * second commit lion reviewgerman772021-11-255-4/+7
| |
| * settings: Fix Debug controller type optionsgerman772021-11-254-38/+11
| |
| * kraken: Address comments from reviewgerman772021-11-252-86/+100
| | | | | | | | start lion review
| * input_common: Revert deleted TAS functionsgerman772021-11-254-8/+81
| |
| * core/hid: Add TAS inputgerman772021-11-253-12/+1
| |
| * input_common: Fix UDP uuidgerman772021-11-251-1/+5
| |
| * core/hid: Rework battery mappingsgerman772021-11-252-10/+9
| |
| * settings: Fix mouse and keyboard mappingsgerman772021-11-253-93/+61
| |
| * web_applet: Replace HIDButton with NpadButtongerman772021-11-253-36/+44
| |
| * Morph review first wavegerman772021-11-251-1/+1
| |
| * yuzu: Fix loading input profilesgerman772021-11-251-0/+7
| |
| * service/hid: Fix gesture inputgerman772021-11-251-1/+1
| |
| * configuration: Migrate controller settings to emulated controllergerman772021-11-256-112/+98
| |
| * core/hid: Only signal when neededgerman772021-11-251-2/+10
| |
| * hid: Fix controller connection/disconnectiongerman772021-11-253-9/+75
| |
| * kraken: Fix errors from rebase and format filesgerman772021-11-258-24/+54
| |
| * core/hid: Add output devicesgerman772021-11-253-46/+30
| |
| * core: Update input interpretergerman772021-11-251-2/+0
| |
| * yuzu: Update overlay appletgerman772021-11-252-16/+21
| |
| * Qt_applets: Use new inputgerman772021-11-255-49/+68
| |
| * debugger/controller: Remove TASgerman772021-11-252-46/+5
| |
| * yuzu: Update frontendgerman772021-11-2513-1010/+822
| |
| * core: Register HIDgerman772021-11-251-1/+4
| |
| * yuzu: Use new input on main and bootmanagergerman772021-11-253-68/+59
| |
| * input_common: Rewrite keyboardgerman772021-11-255-126/+42
| |
| * core/hid: Move input_interpreter to hidgerman772021-11-251-1/+1
| |
* | Merge pull request #7330 from MightyCreak/simplify-theme-selectionbunnei2021-11-252-25/+27
|\ \ | |/ |/| Replace "Light" theme by "Default"
| * Replace "Light" theme by "Default"Romain Failliot2021-11-142-25/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reflects the current behavior: Light = System default. If your system is set to dark theme, then Light = Dark, which is a bit confusing for the end user. In this PR, I propose to change "Light" with "Default". This way, the user has "Default" and "Default Colorful", which will apply the system theme. Now that the Flatpak respects the system theme, I think this makes much more sense. I also simplified the theme update. Before the code was branching between the default theme and the others, but I think we can have something simpler by forcing the default theme if no theme is defined in the settings, or if the selected theme doesn't exist. And if there's an error, tell the theme name in the error message.
* | Refactor menu states and shortcuts in GMainWindow. (#7419)Adam Heinermann2021-11-253-237/+175
| | | | | | | | | | | | | | | | Refactor menu states and shortcuts in GMainWindow. - Removed "Start", since it was always disabled unless it was "Continue" which has now been moved to "Pause". - Allow hotkeys to be used while in fullscreen. - Removed the load amiibo hotkey.
* | Merge pull request #7404 from Kewlan/per-game-framerate-capbunnei2021-11-243-26/+97
|\ \ | | | | | | configure_general: Allow framerate cap to be used in custom game configs
| * | configure_general: Allow framerate cap to be used in custom game configsKewlan2021-11-213-26/+97
| | |
* | | const fixesAdam Heinermann2021-11-222-3/+3
| | |
* | | Apply clang formatAdam Heinermann2021-11-221-1/+0
| | |
* | | Added TAS controls to the menu under ToolsAdam Heinermann2021-11-225-57/+153
|/ /
* | Fix screenshot dimensions when at 1x scaleameerj2021-11-201-1/+1
| | | | | | | | | | | | | | This was regressed by ART. Prior to ART, the screenshots were saved at the title's framebuffer resolution. A misunderstanding of the existing logic led to screenshot dimensions becoming dependent on the host render window size. This changes the behavior to match how it was prior to ART at 1x, with screenshots now always being the title's framebuffer dimensions scaled by the resolution scaling factor.
* | Merge pull request #7369 from Morph1984/amd-fsr-statusbarbunnei2021-11-192-6/+6
|\ \ | | | | | | main: Shorten AMD FSR status bar text
| * | main: Fix default AA nameMorph2021-11-191-4/+4
| | | | | | | | | | | | By default, no AA is applied, not FXAA
| * | configure_graphics_ui: AMD's -> AMDMorph2021-11-191-1/+1
| | | | | | | | | | | | AMD officially markets FSR as AMD FidelityFX™️ Super Resolution
| * | main: Shorten AMD FSR status bar textMorph2021-11-191-1/+1
| | | | | | | | | | | | AMD'S FIDELITYFX SR -> FSR
* | | Merge pull request #7342 from goldenx86/patch-3bunnei2021-11-191-2/+2
|\ \ \ | |/ / |/| | Replace keys error pop up
| * | Replace keys error pop upMatías Locatti2021-11-161-2/+2
| |/ | | | | Fight me.
* | Merge pull request #7353 from v1993/no-more-epilepsybunnei2021-11-181-1/+1
|\ \ | | | | | | Prevent window flickering when holding Esc
| * | Prevent window flickering when holding EscValeri2021-11-171-1/+1
| |/ | | | | Reported on discord by Levlight. Don't try to exit fullscreen if it's already off.
* | Merge pull request #7355 from german77/hotkey_spambunnei2021-11-181-0/+2
|\ \ | | | | | | hotkeys: Don't allow hotkeys to spam
| * | hotkeys: Don't allow hotkeys to spamgerman772021-11-171-0/+2
| | |
* | | TextureCache: Add automatic anisotropic filtering and refactor code.Fernando Sahmkow2021-11-161-0/+5
| | |
* | | TextureCache: Make a better Anisotropic setter.Fernando Sahmkow2021-11-161-4/+4
| | |
* | | configure_graphics.ui: Cleanup scaling options and fix duplicate name warningameerj2021-11-161-5/+5
| | |
* | | Yuzu UI: Add button for Anti AliasFernando Sahmkow2021-11-162-0/+44
| | |
* | | Frontend: Add anti-aliasing method settingMarshall Mohror2021-11-164-0/+69
| | |
* | | QtGUI: Add buttton to toggle the filter.FernandoS272021-11-163-1/+59
| | |
* | | VideoCore: Add gaussian filtering.FernandoS272021-11-161-0/+5
| | |
* | | VideoCore: Add more rescaling option.FernandoS272021-11-161-3/+18
| | |
* | | Presentation: add Nearest Neighbor filter.Fernando Sahmkow2021-11-161-1/+6
| | |
* | | vulkan: Implement FidelityFX Super ResolutionMarshall Mohror2021-11-161-0/+5
| | |
* | | yuzu: Fix build errorsameerj2021-11-161-1/+1
| | |
* | | video_core,yuzu: Move UpdateRescalingInfo call to video_corelat9nq2021-11-162-5/+0
| | | | | | | | | | | | | | | | | | This only needs to happen once per game boot, so we can just call it during CreateGPU and be done with it, avoiding the need to call it in the frontends.
* | | bootmanager: Fix screenshot resolution factor usageameerj2021-11-165-10/+6
| | | | | | | | | | | | Fixes screenshots at non integer scaling
* | | Renderer: Implement Bicubic and ScaleForce filters.Fernando Sahmkow2021-11-164-6/+71
| | |
* | | main: Add resolution scale label in the status barMorph2021-11-162-2/+12
| | | | | | | | | | | | Shows the resolution scale as "Scale: {}x" in the status bar, where {} is a floating point value representing the current resolution scaling factor.
* | | TextureCache: Modify Viewports/Scissors according to Rescale.Fernando Sahmkow2021-11-161-0/+4
| | |
* | | Settings: Add resolution scaling to settings.Fernando Sahmkow2021-11-164-1/+95
| |/ |/|
* | Merge pull request #7272 from behunin/the-courteous-loggerbunnei2021-11-131-0/+2
|\ \ | |/ |/| Logging: Impl refactor
| * Refactor Logging ImplLevi Behunin2021-11-021-0/+2
| | | | | | | | | | | | | | Loop on stop_token and remove final_entry in Entry. Move Backend thread out of Impl Constructor to its own function. Add Start function for backend thread. Use stop token in PopWait and check if entry filename is nullptr before logging.
* | applets/swkbd: Skip text checking if the text has been confirmedMorph2021-11-084-13/+15
| | | | | | | | | | | | | | Confirm means that the text has already been checked by the application to be correct, but is asking the user for confirmation. The confirmation text itself seems to be corrupted though, this needs to be investigated. Fixes the software keyboard in Famicom Detective Club: The Missing Heir
* | general: Get the current process program id directly from the systemMorph2021-11-042-4/+3
| | | | | | | | This allows us to avoid including KProcess' header file in files that only need to get the current process' program id.
* | general: Rename GetTitleID to GetProgramIDMorph2021-11-042-3/+3
|/
* Merge pull request #7246 from german77/userimagebunnei2021-10-311-0/+11
|\ | | | | profile_manager: Resize any image bigger than 256p
| * profile_manager: Resize any image bigger than 256pgerman772021-10-301-0/+11
| |
* | Merge pull request #6702 from lat9nq/disable-screensaverbunnei2021-10-302-1/+23
|\ \ | | | | | | yuzu_cmd, yuzu qt: Use SDL to disable the screen saver
| * | yuzu qt: Disable the screensaver with SDL2lat9nq2021-10-302-1/+23
| | | | | | | | | | | | | | | Disables the screen saver when a game boots using SDL2 so that it works on any supported platform.
* | | Merge pull request #7223 from Moonlacer/geometry_property_removalAmeer J2021-10-292-9/+1
|\ \ \ | |/ / |/| | per_game_ui: Geometry Property Removal and Minor Rewording to the Per Game UI
| * | Geometry property removal and rewordingMoonlacer2021-10-262-9/+1
| |/
* | Merge pull request #7186 from MightyCreak/fix-crash-configure-windowAmeer J2021-10-271-2/+5
|\ \ | |/ |/| ui: fix crash when closing configure window
| * ui: fix crash when closing configure windowRomain Failliot2021-10-151-2/+5
| | | | | | | | | | | | | | | | | | This crash happens 100% of the time (on Linux at least), you just need to open the configure window and click OK. It seems to happen when the tabs are destroyed and once all the tabs are destroyed, a final signal is sent with `index == -1`. So `debug_tab_tab` doesn't exist anymore when this happens, so the crash.
* | Merge pull request #7197 from Moonlacer/tas_help_linkbunnei2021-10-201-2/+2
|\ \ | | | | | | tas_ui: Add a Help Link to the TAS Page on the yuzu Website, Along with Minor Grammar Changes
| * | add_linkMoonlacer2021-10-171-2/+2
| | | | | | | | | | | | | | | | | | remove_accident fix_whoopsie
* | | Merge pull request #7198 from ameerj/settings-chronobunnei2021-10-192-11/+6
|\ \ \ | | | | | | | | settings: Remove std::chrono usage
| * | | settings: Remove std::chrono usageameerj2021-10-172-11/+6
| |/ / | | | | | | | | | Alleviates the dependency on chrono for all files that include settings.h
* | | Merge pull request #7195 from MightyCreak/fix-warning-typoMai M2021-10-171-1/+1
|\ \ \ | |/ / |/| | main: fix typo in warning message
| * | main: fix typo in warning messageRomain Failliot2021-10-161-1/+1
| |/
* | main: Add missing make_unique for uiMorph2021-10-161-1/+1
| |
* | qt_web_browser: Add missing QApplication includeMorph2021-10-161-0/+1
| |
* | bootmanager: Forward declare System and SystemResultStatusMorph2021-10-151-1/+5
| |
* | yuzu: Construct system in GMainWindowMorph2021-10-152-81/+83
| |
* | core: Move ResultStatus outside of SystemMorph2021-10-154-16/+16
| | | | | | | | Allows it to be a forward declaration in other header files.
* | Merge pull request #7174 from MightyCreak/hide-cursor-by-defaultMai M2021-10-151-1/+1
|\ \ | | | | | | Check "Hide mouse on inactivity" by default
| * | Hide mouse cursor by defaultRomain Failliot2021-10-151-1/+1
| |/
* | Merge pull request #7185 from Morph1984/make_unique_uiMai M2021-10-1515-151/+157
|\ \ | | | | | | yuzu: Use make_unique instead of operator new for constructing ui
| * | main: Use std::unique_ptr for uiMorph2021-10-152-137/+142
| | |
| * | configuration: Use std::make_unique instead of operator new for uiMorph2021-10-1513-14/+15
| |/
* / main: Slightly refactor NCA entry installation in InstallNCA (#7181)Creak2021-10-151-8/+6
|/ | | | | * main: Slightly refactor NCA entry installation in InstallNCA Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com>
* settings_ui: Better NVDEC Description For Each Video Rendering Option (#7165)Moonlacer2021-10-151-3/+3
| | | | | | | | | | | | | | | * better_description * Revert "better_description" This reverts commit 3a152a6ba6f2d6e02530b69a8194e4db302c8acd. * better_nvdec_wording * best_performance * update_word_stuff * another_update
* Merge pull request #6774 from lat9nq/remove-global-yuzuMorph2021-10-1475-655/+717
|\ | | | | yuzu qt: Remove global system instances
| * discord_impl: Remove global system instanceslat9nq2021-10-073-6/+13
| |
| * game_list: Remove global instances of Core::Systemlat9nq2021-10-075-13/+19
| |
| * configuration: Add const qualifier where ablelat9nq2021-10-0718-31/+28
| |
| * yuzu qt: Remove global system instances from config, WaitTree, mainlat9nq2021-10-0769-636/+688
| |
* | Merge pull request #7158 from ameerj/window-900pbunnei2021-10-133-36/+53
|\ \ | | | | | | main: Add option to reset window size to 900p
| * | main: Add option to reset window size to 900pameerj2021-10-113-36/+53
| | |
* | | Merge pull request #7147 from behunin/patch-1Ameer J2021-10-121-8/+0
|\ \ \ | | | | | | | | Update configure_tas.ui
| * | | Update configure_tas.uiLevi Behunin2021-10-081-8/+0
| |/ / | | | | | | Remove the geometry property again(7045) after 7090 re-added.
* | | Create local variables for mouse and wheel positionsRomain Failliot2021-10-121-5/+9
| | |
* | | Fix a few warningsRomain Failliot2021-10-123-6/+5
|/ / | | | | | | | | | | | | | | | | | | - configure_input_player_widget.cpp: always better to use `const auto &` whenever possible - profiler.cpp: `ev->pos()` is deprecated, replace with `ev->position()`, which returns floats, thus the addition of `.toPoint()` (same as what's happening in `pos()`) - game_list.cpp: `QString::SplitBehavior` is deprecate, use `Qt::` namespace instead
* / service: Reduce header include overheadMorph2021-10-071-1/+1
|/
* Merge pull request #7090 from Moonlacer/tas_spacing_additionbunnei2021-10-062-146/+188
|\ | | | | (Minor Change) Hint (?) Button Removal and Spacing Change to the TAS Window
| * configure_tas: Remove help button from dialog windowMoonlacer2021-09-291-0/+1
| |
| * configure_tas: Ensure dialog buttons always stay at the bottomMoonlacer2021-09-291-146/+187
| | | | | | | | | | Previously, the dialog buttons would be floating in-place when the dialog is stretched downwards. This change ensures that the dialog buttons always stay at the bottom of the window.
* | Merge pull request #7111 from lat9nq/no-title-bar-versionbunnei2021-10-031-2/+7
|\ \ | | | | | | main: Don't add an extra separator when the title version is absent
| * | main: Don't add an extra separator when the title version is absentlat9nq2021-10-011-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some titles, such as homebrew, do not have any version string. Because yuzu hard codes the title bar string assuming a version string is preset, booting homebrew causes yuzu to add an extra separator with no content between. This uses a lambda expression to prevent that from happening.
* | | yuzu: main: Register a callback for ExitMorph2021-10-024-0/+17
| | |
* | | Merge pull request #7102 from Morph1984/remove-boxcatbunnei2021-10-025-216/+0
|\ \ \ | | | | | | | | Remove Boxcat BCAT backend
| * | | CMakeLists: Remove BoxCat build optionMorph2021-09-291-4/+0
| | | |
| * | | settings: Remove BCAT settingsMorph2021-09-291-4/+0
| | | |
| * | | configure_network: Remove BCATMorph2021-09-293-208/+0
| | |/ | |/|
* | | Merge pull request #7075 from v1993/power-of-teabunnei2021-10-011-0/+3
|\ \ \ | |_|/ |/| | applets: Use subdirectory of main data directory for QtWebEngine storage
| * | Use subdirectory of main data directory for QtWebEngine storagev19932021-09-231-0/+3
| | | | | | | | | | | | Previously, an unrelated directory was used for this. Keep everything together for consistency.
* | | style: Remove extra space preceding the :: operatorMorph2021-09-291-1/+1
| |/ |/|
* | Merge pull request #7042 from v1993/patch-7Ameer J2021-09-282-0/+8
|\ \ | | | | | | Hide XInput bypass on non-Windows OSes
| * | If not on Windows, disable raw inputValeri2021-09-181-0/+4
| | | | | | | | | This way, if someone copies their Windows config to other OS, they won't be stuck without web applet for no apparent reason.
| * | Hide XInput bypass on non-Windows OSesValeri2021-09-181-0/+4
| | | | | | | | | Follow-up to #6950. This option is a no-op on other OSes and only serves to spread confusion there.
* | | Merge pull request #7068 from behunin/patch-3bunnei2021-09-241-121/+60
|\ \ \ | |_|/ |/| | Debug Config Ui: Clean-up and nits
| * | Clean-up and nitsLevi Behunin2021-09-221-121/+60
| | | | | | | | | | | | Remove redundent label, rearange checkboxs to keep same 3 per column layout, remove unneeded properties.
* | | Clean-upLevi Behunin2021-09-211-44/+14
| | | | | | | | | | | | Numerize names, remove unneeded properties and spacer.
* | | Tas configure ui nitsLevi Behunin2021-09-191-4/+4
|/ / | | | | Text looked cramped on my pc (Ubuntu 21.04). Re-flowed text as well for nicer read.
* | UI: Relocate tas menu and add brief descriptiongerman772021-09-187-13/+65
| |
* | input_common/tas: new update methodgerman772021-09-185-17/+4
| |
* | input_common/tas: Document the main classgerman772021-09-184-41/+37
| |
* | input_common/tas: Add swap controllergerman772021-09-184-20/+24
| |
* | input_common/tas: overwrite file dialoggerman772021-09-181-1/+10
| |
* | input_common/tas: Fallback to simple updateMonsterDruide12021-09-185-20/+24
| |
* | config: Move TAS options to it's own menugerman772021-09-1812-88/+318
| |
* | core: Hacky TAS syncing & load pausingMonsterDruide12021-09-182-7/+22
| | | | | | | | | | | | | | | | To keep the TAS inputs synced to the game speed even through lag spikes and loading zones, deeper access is required. First, the `TAS::UpdateThread` has to be executed exactly once per frame. This is done by connecting it to the service method the game calls to pass parameters to the GPU: `Service::VI::QueueBuffer`. Second, the loading time of new subareas and/or kingdoms (SMO) can vary. To counteract that, the `CPU_BOOST_MODE` can be detected: In the `APM`-interface, the call to enabling/disabling the boost mode can be caught and forwarded to the TASing system, which can pause the script execution if neccessary and enabled in the settings.
* | main: TAS Playback state labelMonsterDruide12021-09-182-0/+10
| | | | | | | | During script playback/recording, the user has to see what happens currently. For that, a new label has been added to the bottom-left corner, always displaying the current state of the TASing system.
* | settings: File selector & other settingsMonsterDruide12021-09-186-2/+97
| | | | | | | | | | | | First of all, TASing requires a script to play back. The user can select the parent directory at `System -> Filesystem`, next to an option to pause TAS during loads: This requires a "hacky" setup deeper in the code and will be added in the last commit. Also, Hotkeys are being introduced: CTRL+F5 for playback start/stop, CTRL+F6 for re-reading the script and CTRL+F7 for recording a new script.
* | input_common/tas: Base playback & recording systemMonsterDruide12021-09-186-9/+89
| | | | | | | | | | | | | | | | | | The base playback system supports up to 8 controllers (specified by `PLAYER_NUMBER` in `tas_input.h`), which all change their inputs simulataneously when `TAS::UpdateThread` is called. The recording system uses the controller debugger to read the state of the first controller and forwards that data to the TASing system for recording. Currently, this process sadly is not frame-perfect and pixel-accurate. Co-authored-by: Naii-the-Baf <sfabian200@gmail.com> Co-authored-by: Narr-the-Reg <juangerman-13@hotmail.com>
* | Merge pull request #7020 from Moonlacer/remove_audio_stretchingbunnei2021-09-184-23/+0
|\ \ | |/ |/| Remove audio stretching
| * fix_clang_errorMoonlacer2021-09-161-1/+0
| |
| * remove-audio-stretching-settingMoonlacer2021-09-164-22/+0
| |
* | Merge pull request #6950 from german77/multiplaybunnei2021-09-184-1/+22
|\ \ | |/ |/| input_common: Add advanced setting for 8 player support
| * input_common: Enable steam controllers and 8 player supportgerman772021-09-104-1/+22
| |
* | main: Apply confirm exit setting in exit locked scenariosameerj2021-09-121-11/+9
| | | | | | | | | | Some titles set an exit lock through HLE, which prompts an exit confirmation when stopping emulation if the system is locked. This change allows bypassing this confirmation if the setting to confirm exits has been disabled by the user.
* | Merge pull request #6846 from ameerj/nvdec-gpu-decodeFernando S2021-09-115-16/+86
|\ \ | | | | | | nvdec: Add GPU video decoding for all capable drivers and platforms
| * | configure_graphics: Add GPU nvdec decoding as an optionameerj2021-08-165-16/+86
| | | | | | | | | | | | | | | | | | Some system configurations may see visual regressions or lower performance using GPU decoding compared to CPU decoding. This setting provides the option for users to specify their decoding preference. Co-Authored-By: yzct12345 <87620833+yzct12345@users.noreply.github.com>
* | | Merge pull request #6977 from Moonlacer/masterAmeer J2021-09-072-3/+3
|\ \ \ | | | | | | | | Second part of Golden's PR #6976
| * | | Second part of Golden's PRMoonlacer2021-09-062-3/+3
| | |/ | |/|
* / | Rename all shader cache references to pipeline cacheMatías Locatti2021-09-061-4/+4
|/ / | | | | After Hades, both OpenGL and Vulkan use a pipeline cache instead of single stages of the graphics pipeline. Renamed the Remove menu entries to match.
* | Garbage Collection: enable as default, eliminate option.Fernando Sahmkow2021-08-284-19/+0
| |
* | logging: Fix log filter during initializationameerj2021-08-241-1/+1
| | | | | | | | | | | | The log filter was being ignored on initialization due to the logging instance being initialized before the config instance, so the log filter was set to its default value. This fixes that oversight, along with using descriptive exceptions instead of abort() calls.
* | Merge pull request #6912 from lioncash/pluralbunnei2021-08-241-1/+8
|\ \ | | | | | | CMakeLists: Ensure proper numerusform tags are generated for pluralized translations
| * | CMakeLists: Ensure proper numerusform tags are generated for pluralized translationsLioncash2021-08-221-1/+8
| | | | | | | | | | | | | | | | | | If we don't set an explicit source and target language for the base english translation, then we'll generate an incorrect number of <numerusform> tags (which Transifex doesn't like).
* | | Merge pull request #6869 from yzct12345/shiny-logs-in-the-fireplacebunnei2021-08-232-24/+6
|\ \ \ | | | | | | | | logging: Simplify and make thread-safe
| * | | logging: Simplify and make thread-safeyzct123452021-08-132-24/+6
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | This simplifies the logging system. This also fixes some lost messages on startup. The simplification is simple. I removed unused functions and moved most things in the .h to the .cpp. I replaced the unnecessary linked list with its contents laid out as three member variables. Anything that went through the linked list now directly accesses the backends. Generic functions are replaced with those for each specific use case and there aren't many. This change increases coupling but we gain back more KISS and encapsulation. With those changes it was easy to make it thread-safe. I just removed the mutex and turned a boolean atomic. I was planning to use this thread-safety in my next PR about stacktraces. It was actually async-signal-safety at first but I ended up using a different approach. Anyway getting rid of the linked list is important for that because have the list of backends constantly changing complicates things.
* | | Replace QPoint with QPointF where applicableValeri2021-08-191-16/+18
| | | | | | | | | | | | Previously, floats were implicitly cast to integers
* | | qt_software_keyboard: fix copy-paste errorValeri2021-08-191-1/+1
| | |
* | | configuration: fix mingw-w64 buildSönke Holz2021-08-131-2/+2
| | |
* | | configuration: move network_interface include to source fileSönke Holz2021-08-132-2/+1
| | |
* | | configuration: use tr instead of QStringLiteral for "None" item inSönke Holz2021-08-131-1/+1
| | | | | | | | | | | | network interface combobox
* | | Merge branch 'yuzu-emu:master' into fix-lan-playspholz2021-08-126-63/+91
|\| |
| * | Merge pull request #6837 from german77/no-pause-screenshotAmeer J2021-08-101-5/+2
| |\ \ | | | | | | | | main: Avoid stopping emulation when taking a screenshot
| | * | main: Avoid stopping emulation when taking a screenshotgerman772021-08-071-5/+2
| | | |
| * | | Merge pull request #6839 from ameerj/frame-cap-positonbunnei2021-08-091-30/+30
| |\ \ \ | | | | | | | | | | configure_general: Swap positions of speed limit and frame limit options
| | * | | configure_general: Swap positions of speed limit and frame limit optionsameerj2021-08-081-30/+30
| | |/ /
| * | | Merge pull request #6698 from german77/SDL_QoLbunnei2021-08-081-5/+8
| |\ \ \ | | | | | | | | | | input_common: Improve SDL joystick and hide toggle option
| | * | | input_common: Improve SDL joystick and hide toggle optiongerman772021-08-081-5/+8
| | |/ /
| * | | Merge pull request #6817 from gidoly/patch-1bunnei2021-08-081-2/+5
| |\ \ \ | | |/ / | |/| | Add description to fast gpu time option
| | * | Update configure_graphics_advanced.uigidoly2021-08-051-2/+5
| | | | | | | | | | | | add description too fast gpu time
| * | | Merge pull request #6815 from german77/ui_improvementsbunnei2021-08-072-21/+46
| |\ \ \ | | |/ / | |/| | settings_ui: Add emulated joystick position dot to controller preview
| | * | settings_ui: Add emulated joystick position dot to controller previewgerman772021-08-042-21/+46
| | | |
* | | | configuration: add option to select network interfacespholz2021-08-128-52/+89
|/ / / | | | | | | | | | This commit renames the "Services" tab to "Network" and adds a combobox that allows the user to select the network interface that yuzu should use. This new setting is now used to get the local IP address in Network::GetHostIPv4Address. This prevents yuzu from selecting the wrong network interface and thus using the wrong IP address. The return type of Network::GetHostIPv4Adress has also been changed.
* | | config: Only read/write current_user on global configlat9nq2021-08-031-5/+6
| | |
* | | game_list: Make game list folder icons smaller (#6762)Malte Jürgens2021-08-016-28/+70
| | | | | | | | | Makes the default game list folder icons 48x48 by default instead of 64x64, and allows for selecting small (24x24) and large (72x72) icon sizes.
* | | Merge pull request #6720 from ameerj/vk-screenshotFernando S2021-08-011-2/+2
|\ \ \ | | | | | | | | renderer_vulkan: Implement screenshots
| * | | renderers: Add explicit invert_y bool to screenshot callbackameerj2021-07-291-2/+2
| | |/ | |/| | | | | | | OpenGL and Vulkan images render in different coordinate systems. This allows us to specify the coordinate system of the screenshot within each renderer
* | | Merge pull request #6752 from Morph1984/pt-brbunnei2021-07-301-0/+5
|\ \ \ | | | | | | | | service: ns, set: Add PT_BR (Brazilian Portuguese)
| * | | configure_system: Add Brazilian Portuguese to the list of languagesMorph2021-07-301-0/+5
| | |/ | |/|
* | | Merge pull request #6759 from ReinUsesLisp/pipeline-statisticsbunnei2021-07-303-5/+23
|\ \ \ | |/ / |/| | renderer_vulkan: Add setting to log pipeline statistics
| * | renderer_vulkan: Add setting to log pipeline statisticsReinUsesLisp2021-07-283-5/+23
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use VK_KHR_pipeline_executable_properties when enabled and available to log statistics about the pipeline cache in a game. For example, this is on Turing GPUs when generating a pipeline cache from Super Smash Bros. Ultimate: Average pipeline statistics ========================================== Code size: 6433.167 Register count: 32.939 More advanced results could be presented, at the moment it's just an average of all 3D and compute pipelines.
* | Merge pull request #6700 from lat9nq/fullscreen-enumbunnei2021-07-288-58/+30
|\ \ | | | | | | general: Implement FullscreenMode enumeration
| * \ Merge branch 'master' into fullscreen-enumlat9nq2021-07-2515-167/+326
| |\ \
| * | | configuration: Use combobox apply template where possiblelat9nq2021-07-232-35/+2
| | | | | | | | | | | | | | | | | | | | We don't need to manually apply this setting now that a template can do this for us.
| * | | general: Implement FullscreenMode enumerationlat9nq2021-07-236-23/+28
| | | | | | | | | | | | | | | | | | | | Prevents us from using an unclear 0 or 1 to describe the fullscreen mode.
* | | | qt_web_browser: Fix lambda capture for HIDButtonjls472021-07-271-1/+1
| | | |
* | | | qt_web_browser: Focus on the first link elementjls472021-07-273-0/+22
| |_|/ |/| | | | | | | | Focusing on the first link element fixes element navigation upon loading the web applet in games such as Super Mario Odyssey
* | | Merge pull request #6696 from ameerj/speed-limit-renamebunnei2021-07-275-39/+39
|\ \ \ | | | | | | | | general: Rename "Frame Limit" references to "Speed Limit"
| * | | general: Rename "Frame Limit" references to "Speed Limit"ameerj2021-07-245-39/+39
| |/ / | | | | | | | | | | | | This setting is best referred to as a speed limit, as it involves the limits of all timing based aspects of the emulator, not only framerate. This allows us to differentiate it from the fps unlocker setting.
* | | configure_graphics: reword GLASM optionVamsi Krishna2021-07-261-1/+1
| | | | | | | | | Change wording to explain that GLASM is actually short for Assembly Shaders
* | | Merge pull request #6697 from ameerj/fps-capbunnei2021-07-264-1/+37
|\ \ \ | |_|/ |/| | config, nvflinger: Add FPS cap setting
| * | config, nvflinger: Add FPS cap settingameerj2021-07-244-1/+37
| |/ | | | | | | Allows finer tuning of the FPS limit.
* | Merge pull request #6575 from FernandoS27/new_settingsbunnei2021-07-252-39/+45
|\ \ | | | | | | Settings: Eliminate ASYNC & MULTICORE Toggles and add GPU Accuracy to status bar
| * | Update src/yuzu/main.cppFernando S2021-07-091-2/+2
| | | | | | | | | Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
| * | Settings: Eliminate ASYNC & MULTICORE Toggles and add GPU Accuracy Toggle.Fernando Sahmkow2021-07-092-39/+45
| | |
* | | Merge pull request #6709 from ameerj/screenshot-pathMorph2021-07-251-1/+1
|\ \ \ | | | | | | | | main: Fix screenshot filepath construction
| * | | main: Fix screenshot filepath constructionameerj2021-07-251-1/+1
| | |/ | |/| | | | | | | | | | | | | The screenshot directory path returned does not have a trailing directory separator character. This caused screenshots to be saved in the parent directory of the configured screenshot directory. This fixes that behavior
* | | qt: Remove "experimental" from asynchronous shader building UIReinUsesLisp2021-07-231-1/+1
| | |
* | | main: Update Shader Cache menu optionsameerj2021-07-234-16/+64
| | | | | | | | | | | | | | | This change adds two new context menu items to remove either the OpenGL or the Vulkan shader caches individually, and the provides the option to remove all caches for the selected title. This also changes the behavior of the open shader cache option. Now it creates the shader cache directory for the title if it does not yet exist.
* | | configure_graphics: Mark SPIR-V as Experimental, Mesa onlylat9nq2021-07-231-1/+1
| | |
* | | configure_graphics: Re-order vulkan device populatinglat9nq2021-07-231-4/+4
| | |
* | | general: Add setting shader_backendlat9nq2021-07-238-74/+160
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GLASM is getting good enough that we can move it out of advanced graphics settings. This removes the setting `use_assembly_shaders`, opting for a enum class `shader_backend`. This comes with the benefits that it is extensible for additional shader backends besides GLSL and GLASM, and this will work better with a QComboBox. Qt removes the related assembly shader setting from the Advanced Graphics section and places it as a new QComboBox in the API Settings group. This will replace the Vulkan device selector when OpenGL is selected. Additionally, mark all of the custom anisotropic filtering settings as "WILL BREAK THINGS", as that is the case with a select few games.
* | | shader: Add shader loop safety check settingslat9nq2021-07-233-0/+38
| | | | | | | | | | | | Also add a setting for enable Nsight Aftermath.
* | | main: Fix Open Transferable Shader Cache context itemameerj2021-07-231-25/+5
| | | | | | | | | | | | Opens the new shader cache directory location for the specified title, if it exists.
* | | vk_pipeline_cache,shader_notify: Add shader notificationsReinUsesLisp2021-07-231-6/+6
| | |
* | | shader: Adhere to disk shader cache settingameerj2021-07-231-6/+7
|/ /
* | Merge pull request #6654 from german77/custom_thresholdbunnei2021-07-222-0/+88
|\ \ | | | | | | input_common: Make button threshold customizable
| * | configure/ui: Add sliders for trigger buttonsgerman772021-07-172-0/+78
| | |
| * | input_common: Make button threshold customizablegerman772021-07-161-0/+10
| | |
* | | Merge pull request #6649 from german77/toggle_sdlbunnei2021-07-211-1/+2
|\ \ \ | | | | | | | | input_common: Support SDL toggle buttons
| * | | input_common: Support SDL toggle buttonsgerman772021-07-151-1/+2
| | | |
* | | | bootmanager: Create a dummy render widgetMorph2021-07-201-0/+6
| | | | | | | | | | | | | | | | This ensures that Qt positions the render window at the correct position on initializing the respective render backends.
* | | | file_sys: Support load game collection (#6582)Feng Chen2021-07-205-25/+55
| | | | | | | | | | | | Adds support for loading games with multiple programs embedded within such as the Dragon Quest 1+2+3 Collection
* | | | Merge pull request #6659 from german77/mouse_panningAmeer J2021-07-171-3/+6
|\ \ \ \ | | | | | | | | | | input_common: Fix mouse panning behaivour
| * | | | input_common: Fix mouse panning behaivourgerman772021-07-171-3/+6
| | |/ / | |/| |
* / | | configure_audio: Fix volume clamping to 0Morph2021-07-161-6/+6
|/ / /
* | | Merge pull request #6579 from ameerj/float-settingsbunnei2021-07-164-50/+21
|\ \ \ | |/ / |/| | settings: Eliminate usage of float-point setting values
| * | configure_input: Use u8 for mouse sensitivityameerj2021-07-091-9/+6
| | |
| * | config: Remove float {Read,Write}Setting variantsameerj2021-07-091-25/+0
| | |
| * | configure_graphics: Use u8 for bg_color valuesameerj2021-07-091-9/+9
| | |
| * | configure_audio: Use u8 for volume valueameerj2021-07-091-7/+6
| |/
* | applets: Append qt_ prefix to Qt frontend appletsMorph2021-07-1415-25/+26
| |
* | Merge pull request #6574 from lioncash/i18nbunnei2021-07-131-2/+4
|\ \ | | | | | | qt/main: Make title string more i18n-friendly
| * | qt/main: Make title string more i18n-friendlyLioncash2021-07-081-2/+4
| |/ | | | | | | | | | | | | | | | | | | Currently, whether or not the title is 32-bit or 64-bit was being appended as a suffix to the title, which is fine for left-to-right languages, but may not always fly so smoothly with some right-to-left languages. We also weren't marking that portion of the string as translatable, which prevents translators from translating part of the title string.
* | Merge pull request #6576 from ameerj/unlock-fps-settingMorph2021-07-115-28/+9
|\ \ | | | | | | settings: Disable FPS unlimit setting between title launches
| * | settings: Disable FPS unlimit setting between title launchesameerj2021-07-105-28/+9
| |/ | | | | | | | | | | Some titles crash if the FPS limit is disabled when launching. This change ensures that titles launch with the limit in-place to avoid issues. In order to simplify the change, the UI toggle was removed as it will always be overridden at launch to be disabled. The setting can still be toggled during gameplay with the hotkey, and indicated by the fps label in the status bar.
* | Merge pull request #6573 from lat9nq/cpu-settings-cleanup-2Fernando S2021-07-0914-131/+255
|\ \ | | | | | | core,common,yuzu qt: Add CPU accuracy option 'Auto'
| * | settings, arm_dynarmic, yuzu qt: Move CPU debugging optionlat9nq2021-07-0814-128/+240
| | | | | | | | | | | | | | | | | | Decouples the CPU debugging mode from the enumeration to its own boolean. After this, it moves the CPU Debugging tab over to a sub tab underneath the Debug tab in the configuration UI.
| * | settings, yuzu qt: Add migration code for CPU accuracylat9nq2021-07-081-1/+8
| | | | | | | | | | | | | | | | | | Old CPU Accuracy setting won't translate well into since we're adding one at the beginning of the list. On first boot with the new setting, just use the default setting.
| * | core,common,yuzu qt: Add CPU accuracy option 'Auto'lat9nq2021-07-081-4/+9
| |/ | | | | | | | | | | | | The current CPU accuracy settings in yuzu are fairly polarized and require more than common knowledge to know what the optimal settings for yuzu would be. This adds a curated option called 'Auto' that applies a few at the moment known-good unsafe optimizations to Dynarmic.
* / yuzu qt: config: Only save renderer_debug as a global settinglat9nq2021-07-091-2/+8
|/ | | | | | | | This is a bug fix. Enabling graphics debug mode, then saving a custom configuration causes graphics debugging to be saved and read from the custom configuration. Isolate it the same way we isolate the CPU settings.
* Merge pull request #6539 from lat9nq/default-settingAmeer J2021-07-0818-529/+508
|\ | | | | general: Move most settings' defaults and labels into their definition
| * general: Code formatting improvementslat9nq2021-07-081-16/+20
| | | | | | | | | | | | | | | | | | | | | | | | Slight improvements to readability. Dropped suggestions for string_view (settings.h:101), pass by value (settings.h:82), reverting double to a float (config.cpp:316), and other smaller ones, some out of scope. Addresses review feedback. Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com>
| * config: Read UISettings as basic settingslat9nq2021-07-021-30/+19
| | | | | | | | | | I must have been asleep or something. These need to be read with the new ReadBasicSetting function.
| * yuzu qt: Make most UISettings a BasicSettinglat9nq2021-06-2911-87/+98
| | | | | | | | | | | | | | | | | | For simple primitive settings, moves their defaults and labels to definition time. Also fixes typo and clang-format yuzu qt: config: Fix rng_seed
| * general: Make most settings a BasicSettinglat9nq2021-06-2812-389/+391
| | | | | | | | | | | | | | | | | | | | | | Creates a new BasicSettings class in common/settings, and forces setting a default and label for each setting that uses it in common/settings. Moves defaults and labels from both frontends into common settings. Creates a helper function in each frontend to facillitate reading the settings now with the new default and label properties. Settings::Setting is also now a subclass of Settings::BasicSetting. Also adds documentation for both Setting and BasicSetting.
| * configuration: Defer to common/settings for per-game settings defaultslat9nq2021-06-262-127/+100
| | | | | | | | | | Avoids double-setting defaults, and avoids potential accidents when inconsistently setting the default on new settings.
* | profiler: Fix deprecated functionsgerman772021-07-051-4/+5
| |
* | Merge pull request #6471 from lat9nq/dump-as-modMorph2021-06-294-8/+25
|\ \ | | | | | | yuzu qt, core: Support LayeredFS mods from SDMC directory
| * | patch_manager: Do not apply LayeredFS mods when dumpingMorph2021-06-281-1/+2
| | | | | | | | | | | | We should not apply any mods when dumping a game's RomFS.
| * | yuzu qt: Add option to dump to SDMC directorylat9nq2021-06-284-7/+23
| | | | | | | | | | | | | | | Enables dumping the RomFS to SDMC directory, specifically '[yuzu data directory]/sdmc/atmosphere/contents/[title_id]/romfs'.
* | | Merge pull request #6502 from ameerj/vendor-titleMorph2021-06-282-6/+9
|\ \ \ | |/ / |/| | main: Add GPU Vendor name to running title bar
| * | video_core: Add GPU vendor name to window title barameerj2021-06-212-6/+9
| | |
* | | main: Display the instruction set of the running title in the window nameameerj2021-06-281-0/+3
| |/ |/| | | | | Displays whether the currently running title uses 64-bit instructions or only 32-bit instructions.
* | Merge pull request #6517 from lioncash/fmtlibbunnei2021-06-242-3/+6
|\ \ | | | | | | externals: Update fmt to 8.0.0
| * | General: Resolve fmt specifiers to adhere to 8.0.0 API where applicableLioncash2021-06-232-3/+6
| | | | | | | | | | | | Also removes some deprecated API usages.
* | | Merge pull request #6465 from FernandoS27/sex-on-the-beachMai M2021-06-234-0/+19
|\ \ \ | |/ / |/| | GPU: Implement a garbage collector for GPU Caches (project Reaper+)
| * | Reaper: Upgrade label from unsafe to experimental as no regressions are known now.Fernando Sahmkow2021-06-201-1/+1
| | |
| * | Reaper: Change memory restrictions on TC depending on host memory on VK.Fernando Sahmkow2021-06-171-1/+1
| | |
| * | Reaper: Address Feedback.Fernando Sahmkow2021-06-161-1/+1
| | |
| * | Reaper: Setup settings and final tuning.Fernando Sahmkow2021-06-164-0/+19
| |/
* | Merge pull request #6508 from ReinUsesLisp/bootmanager-stop-tokenMai M2021-06-232-9/+9
|\ \ | | | | | | bootmanager: Use std::stop_source for stopping emulation
| * | bootmanager: Use std::stop_source for stopping emulationReinUsesLisp2021-06-222-9/+9
| | | | | | | | | | | | | | | | | | | | | Use its std::stop_token to abort shader cache loading. Using std::stop_token instead of std::atomic_bool allows the usage of other utilities like std::stop_callback.
* | | Simple resizing of the Per-Game configuration window and removal of useless Help question mark button in the title barOZtistic2021-06-232-1/+8
| | |
* | | common: fs: Remove [[nodiscard]] attribute on Remove* functionsMorph2021-06-222-14/+14
|/ / | | | | | | | | | | There are a lot of scenarios where we don't particularly care whether or not the removal operation and just simply attempt a removal. As such, removing the [[nodiscard]] attribute is best for these functions.
* | Merge pull request #6499 from FernandoS27/we-were-on-a-breakbunnei2021-06-214-0/+26
|\ \ | | | | | | Update dynarmic and add new unsafe CPU option.
| * | Update dynarmic and add new unsafe CPU option.Fernando Sahmkow2021-06-204-0/+26
| |/
* | config: Add frame limiter toggle hotkeyameerj2021-06-173-3/+8
| |
* | nvflinger: Add toggle to disable buffer swap interval limitsameerj2021-06-174-0/+29
|/ | | | | Enabling this setting will allow some titles to present more frames to the screen as they become available in the nvflinger buffer queue.
* Merge pull request #6464 from ameerj/disable-astcbunnei2021-06-164-0/+17
|\ | | | | textures: Add a toggle for GPU Accelerated ASTC decoder
| * configure_graphics: Add Accelerate ASTC decoding settingameerj2021-06-164-0/+17
| |
* | fsp_srv: Fix filesystem access loggingMorph2021-06-163-4/+20
|/ | | | | | | | This introduces a new setting Enable FS Access Log which saves the filesystem access log to sdmc:/FsAccessLog.txt If this setting is not enabled, this will indicate to FS to not call OutputAccessLogToSdCard. Fixes softlocks during loading in Xenoblade Chronicles 2 when certain DLC is enabled.
* configure_cpu_debug: Clarify settings behaviorMorph2021-06-131-1/+1
| | | | This makes it clear that the disabled settings only take effect when CPU Accuracy is set to Debug Mode.
* Merge pull request #6451 from Morph1984/check-disk-space-dumpbunnei2021-06-111-0/+12
|\ | | | | yuzu: main: Ensure enough space is available for RomFS dumping
| * yuzu: main: Ensure enough space is available for RomFS dumpingMorph2021-06-111-0/+12
| | | | | | | | This warns the user if there isn't enough free space to dump the entire RomFS to disk. It requires at least the size of the extracted RomFS + 1 GiB as a buffer of free space.
* | General: Add settings for fastmem and disabling adress space check.FernandoS272021-06-116-0/+46
|/
* Merge pull request #6413 from Kewlan/limitable_input_dialog_limitbunnei2021-06-093-5/+48
|\ | | | | limitable_input_dialog: Implement character limiter
| * limitable_input_dialog: Implement character limiterKewlan2021-06-063-5/+48
| | | | | | | | When using GetText() you can now choose what set of characters the user can't enter.
* | configure_ui: Add translation context for file-scope stringsLioncash2021-06-091-13/+27
| | | | | | | | Allows for these strings to show up in the translation files.
* | yuzu qt: Start games from context menulat9nq2021-06-084-3/+23
|/ | | | | This connects the BootGame function to the context menu. In addition, there is an option to boot without using the custom configuration.
* Merge pull request #6362 from lat9nq/reset-to-defaultsbunnei2021-06-056-3/+122
|\ | | | | yuzu qt: Add settings reset button to general configuration
| * yuzu qt: Use lambda and std::function for reset callbacklat9nq2021-06-014-19/+17
| | | | | | | | | | | | | | | | Also makes use of std::move, and performs a clang-format cleanup. This addresses review comments. Co-authored-by: LC <mathew1800@gmail.com>
| * yuzu: Add settings reset button to general configurationlat9nq2021-06-018-23/+111
| | | | | | | | | | | | | | | | | | | | | | | | Builds on german77's work to reset all settings back to their defaults. This include UISettings and Settings values structs, but does not affect save profiles, input profiles, and game directories. This works from a button input in configure_general. When activated, it calls a callback to close the whole configure dialog, then GMainWindow deletes the old configuration, both on disk and in memory, and reinitalizes a new one. It also resets a portion of the UI and calls the telemetry window prompt.
| * configuration: Initial work to reset all settingsfearlessTobi2021-06-016-0/+33
| | | | | | | | | | | | | | | | | | This commit does not compile. Initial work to add and connect a Reset to Defaults button to the configure_general tab. Co-authored-by: german77 <juangerman-13@hotmail.com>
* | Merge pull request #6392 from german77/controller-widgetbunnei2021-06-043-2/+25
|\ \ | | | | | | settings: Disable controller preview if controller is not active
| * | settings: Disable controller preview if controller is not activegerman772021-05-303-2/+25
| | |
* | | [game_list] Correct light theme loading (#6408)Maide2021-06-041-5/+1
| | | | | | | | | | | | | | | Correct light theme loading The setLayout call in game list instantiation will call resizing signals with default values in light theme, which was then being erroneously saved. setLayout doesn't seem to call resizing for any other theme, so I'm not sure why that happens.
* | | Merge pull request #6402 from Kelebek1/UIbunnei2021-06-032-34/+17
|\ \ \ | | | | | | | | game_list: Stop the columns resizing on NAND install
| * | | Stop the columns resizing on NAND installKelebek12021-06-022-34/+17
| | | |
* | | | Merge pull request #6404 from lat9nq/revert_viewsbunnei2021-06-037-18/+27
|\ \ \ \ | | | | | | | | | | yuzu qt: Revert some usages of string_view
| * | | | yuzu qt: Revert some usages of string_viewlat9nq2021-06-037-18/+27
| |/ / / | | | | | | | | | | | | | | | | | | | | Causes a heap-use-after free reported by AddressSanitizer. This makes use of std::filesystem::path, but due to that we have to use their string() function which may not work for all characters.
* | | | Merge pull request #6403 from Kewlan/game-list-for-loop-optimizationbunnei2021-06-031-9/+6
|\ \ \ \ | |/ / / |/| | | game_list: Minor for loop optimizations
| * | | game_list: Minor for loop optimizationsKewlan2021-06-021-9/+6
| | |/ | |/| | | | | | | | | | There's no need to check the first and last rows since they'll always be the Favorites and AddDir rows. Also change the name of the clear_all variable for consistency.
* | | Merge pull request #6361 from lat9nq/per-hb-cfgbunnei2021-06-028-22/+35
|\ \ \ | |/ / |/| | yuzu qt: Handle per-game configs for title id 0
| * | yuzu qt: Restore const qualifierslat9nq2021-05-262-23/+12
| | | | | | | | | | | | | | | | | | This addresses review comments. Co-authored-by: LC <mathew1800@gmail.com>
| * | yuzu qt: Handle per-game configs for title id 0lat9nq2021-05-268-22/+46
| | | | | | | | | | | | | | | | | | | | | Currently with programs that have a 0 title id, yuzu loads the custom configuration 0000000000000000.ini for per-game configs. This is not ideal since many homebrews share this id. Instead for these programs, we load a config that is simply the file name and `.ini` appended to it.
* | | applets/swkbd: Make use of std::move where applicableMorph2021-05-281-14/+11
| |/ |/| | | | | Avoids redundant string copies
* | Merge pull request #6346 from lat9nq/apply-config-pgcAmeer J2021-05-276-18/+57
|\ \ | | | | | | yuzu qt: Add an Apply button to configuration dialogs
| * | yuzu qt: Add an Apply button to configuration dialogslat9nq2021-05-256-18/+57
| | | | | | | | | | | | | | | | | | | | | | | | Most of the code already exists to do this, but the Apply button itself was never added. This adds a button and boolean that tells yuzu to save the configuration after applying settings, even if close/Cancel is pressed on the dialog. Changes after applying will not be saved when Cancel is pressed, though.
* | | cmake: Download Qt binaries on Linux if neededlat9nq2021-05-261-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the local version of Qt is older than the minimum version required by yuzu, download a pre-built binary package from yuzu-emu/ext-linux-bin and build yuzu with it, instead. This also requires linking yuzu to the correct libraries after building it, and copying over the required binaries when building yuzu. This sets the Qt requirement to 5.12, which is intentionally behind the versions used by our toolchains since they are not all updated yet to 5.15.
* | | Merge pull request #6339 from Morph1984/swkbd-queuedconnectionbunnei2021-05-261-15/+3
|\ \ \ | |_|/ |/| | applets/swkbd: Make use of QueuedConnection in returnPressed signal
| * | applets/swkbd: Make use of QueuedConnection in returnPressed signalMorph2021-05-221-15/+3
| | | | | | | | | | | | | | | | | | Some users have reported rare crashes when pressing the Enter key on the keyboard to confirm input in the normal software keyboard, particularly in Super Smash Bros. Ultimate while entering the name of a ruleset or controller layout. It is suspected that the QLineEdit::returnPressed signal is causing a race condition as confirming input through other means does not produce the crash. Since Qt::QueuedConnection posts an event to the event queue of the callee's thread instead of executing it directly on the caller's thread, this eliminates any potential race conditions from occurring in this scenario.
* | | common: fs: Rework the Common Filesystem interface to make use of std::filesystem (#6270)Morph2021-05-2614-267/+289
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * common: fs: fs_types: Create filesystem types Contains various filesystem types used by the Common::FS library * common: fs: fs_util: Add std::string to std::u8string conversion utility * common: fs: path_util: Add utlity functions for paths Contains various utility functions for getting or manipulating filesystem paths used by the Common::FS library * common: fs: file: Rewrite the IOFile implementation * common: fs: Reimplement Common::FS library using std::filesystem * common: fs: fs_paths: Add fs_paths to replace common_paths * common: fs: path_util: Add the rest of the path functions * common: Remove the previous Common::FS implementation * general: Remove unused fs includes * string_util: Remove unused function and include * nvidia_flags: Migrate to the new Common::FS library * settings: Migrate to the new Common::FS library * logging: backend: Migrate to the new Common::FS library * core: Migrate to the new Common::FS library * perf_stats: Migrate to the new Common::FS library * reporter: Migrate to the new Common::FS library * telemetry_session: Migrate to the new Common::FS library * key_manager: Migrate to the new Common::FS library * bis_factory: Migrate to the new Common::FS library * registered_cache: Migrate to the new Common::FS library * xts_archive: Migrate to the new Common::FS library * service: acc: Migrate to the new Common::FS library * applets/profile: Migrate to the new Common::FS library * applets/web: Migrate to the new Common::FS library * service: filesystem: Migrate to the new Common::FS library * loader: Migrate to the new Common::FS library * gl_shader_disk_cache: Migrate to the new Common::FS library * nsight_aftermath_tracker: Migrate to the new Common::FS library * vulkan_library: Migrate to the new Common::FS library * configure_debug: Migrate to the new Common::FS library * game_list_worker: Migrate to the new Common::FS library * config: Migrate to the new Common::FS library * configure_filesystem: Migrate to the new Common::FS library * configure_per_game_addons: Migrate to the new Common::FS library * configure_profile_manager: Migrate to the new Common::FS library * configure_ui: Migrate to the new Common::FS library * input_profiles: Migrate to the new Common::FS library * yuzu_cmd: config: Migrate to the new Common::FS library * yuzu_cmd: Migrate to the new Common::FS library * vfs_real: Migrate to the new Common::FS library * vfs: Migrate to the new Common::FS library * vfs_libzip: Migrate to the new Common::FS library * service: bcat: Migrate to the new Common::FS library * yuzu: main: Migrate to the new Common::FS library * vfs_real: Delete the contents of an existing file in CreateFile Current usages of CreateFile expect to delete the contents of an existing file, retain this behavior for now. * input_profiles: Don't iterate the input profile dir if it does not exist Silences an error produced in the log if the directory does not exist. * game_list_worker: Skip parsing file if the returned VfsFile is nullptr Prevents crashes in GetLoader when the virtual file is nullptr * common: fs: Validate paths for path length * service: filesystem: Open the mod load directory as read only
* | | Merge pull request #6349 from german77/suppress_config_warningbunnei2021-05-261-3/+3
|\ \ \ | | | | | | | | settings: Suppress duplicate label name warning
| * | | settings: Suppress duplicate label name warninggerman772021-05-231-3/+3
| |/ /
* / / settings: Forbid docked mode on handheldgerman772021-05-243-4/+24
|/ /
* | Merge pull request #6333 from Morph1984/swkbd-confirm-textbunnei2021-05-211-8/+8
|\ \ | |/ |/| applets/swkbd: Send the correct text string on TextCheck::Confirm
| * applets/swkbd: Send the correct text string on TextCheck::ConfirmMorph2021-05-191-8/+8
| | | | | | | | Previously the text string for the inline software keyboard was being sent instead of the normal software keyboard, leading to empty text being sent all the time.
* | Merge pull request #6321 from lat9nq/per-game-cpubunnei2021-05-2114-281/+264
|\ \ | |/ |/| configuration: Add CPU tab to game properties and slight per-game settings rework
| * configure_cpu: Simplify UpdateGrouplat9nq2021-05-201-7/+4
| | | | | | Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com>
| * configuration_shared: Drop unused function and template anotherlat9nq2021-05-192-52/+7
| | | | | | | | | | | | | | Drops an unused variant of ApplyPerGameSetting, and turns the QComboBox variants of SetPerGameSetting into a template. Co-authored-by: Ameer J <52414509+ameerj@users.noreply.github.com>
| * general: Demote custom_rtc to regular settinglat9nq2021-05-172-52/+25
| |
| * configuration: Add CPU tab to game propertieslat9nq2021-05-1612-88/+175
| | | | | | | | | | | | Allows setting CPU accuracy to Accurate or Unsafe per-game, as well as the accuracy options for Unsafe. Debug is not allowed here as a per-game CPU accuracy.
| * configuration: Simplify applying per-game settingslat9nq2021-05-166-112/+69
| | | | | | | | | | | | | | | | | | | | Originally, every time we add a per-game setting, we'd have to guard for it when setting it on the global config, and use a specific function to do it for the per-game config. This moves the global check into the ApplyPerGameSetting function so that we can use it for changing both the global and per-game states. Less work for the programmer.
| * configuration_shared: Add some commentslat9nq2021-05-161-6/+14
| | | | | | | | Monke brain can't remember what all of these does a year later.
| * general: Make CPU accuracy and related a Settings::Settinglat9nq2021-05-163-26/+32
| | | | | | | | | | Required to make CPU accuracy and unsafe settings available to use as a per-game setting.
* | Merge pull request #6317 from ameerj/fps-fixbunnei2021-05-191-2/+2
|\ \ | | | | | | perf_stats: Rework FPS counter to be more accurate
| * | perf_stats: Rework FPS counter to be more accurateameerj2021-05-161-2/+2
| |/ | | | | | | | | | | | | | | | | The FPS counter was based on metrics in the nvdisp swapbuffers call. This metric would be accurate if the gpu thread/renderer were synchronous with the nvdisp service, but that's no longer the case. This commit moves the frame counting responsibility onto the concrete renderers after their frame draw calls. Resulting in more meaningful metrics. The displayed FPS is now made up of the average framerate between the previous and most recent update, in order to avoid distracting FPS counter updates when framerate is oscillating between close values. The status bar update frequency was also changed from 2 seconds to 500ms.
* | configure_debug: FIx duplicate labelsMorph2021-05-171-5/+5
| | | | | | | | Duplicate labels were unintentionally introduced due to copy-paste. This silences the compilation warning produced by the presence of these duplicates.
* | yuzu/main: Fix version info in logging and about dialogMorph2021-05-173-14/+17
| |
* | main: Prevent installing base titles into NANDMorph2021-05-162-3/+20
| | | | | | | | Many users have been installing their base titles into NAND instead of adding them into the games list. This prevents users from installing any base titles and warns the user about the action.
* | Merge pull request #6316 from ameerj/title-fixbunnei2021-05-161-11/+6
|\ \ | | | | | | main: Add running title's version to window name on EA/mainline
| * | main: Add title's version to window name on EA/mainlineameerj2021-05-151-11/+6
| |/ | | | | | | Fixes the missing title version number on EA/mainline builds which override the title bar string.
* / input_common: Implement SDL motiongerman772021-05-151-0/+8
|/
* configure_ui: Call RequestGameListUpdate when toggling "Show Add-Ons Column"Kewlan2021-05-101-0/+1
|
* hle: kernel: Migrate to KHandleTable.bunnei2021-05-062-4/+5
|
* hle: kernel: Rename Process to KProcess.bunnei2021-05-063-3/+3
|
* hle: kernel: Remove deprecated Object class.bunnei2021-05-062-16/+19
|
* hle: kernel: HandleTable: Remove deprecated APIs.bunnei2021-05-062-5/+5
|
* hle: kernel: Migrate KProcess to KAutoObject.bunnei2021-05-061-1/+1
|
* hle: kernel: Migrate more of KThread to KAutoObject.bunnei2021-05-061-5/+7
|
* input_common: Release mouse buttons on out of focusgerman772021-05-031-0/+2
|
* Merge pull request #6263 from Kewlan/folder-swap-expand-stateMorph2021-05-021-2/+4
|\ | | | | game_list: Fix dir move up/down expand state
| * game_list: Fix dir move up/down expand stateKewlan2021-04-301-2/+4
| |
* | Merge pull request #6261 from Kewlan/game-list-filter-fixbunnei2021-05-012-5/+6
|\ \ | | | | | | game_list: Update filter results when removing directories
| * | game_list: Update filter results when removing directoriesKewlan2021-04-302-5/+6
| | |
* | | Merge pull request #6257 from Morph1984/fix-use-after-free-webappletbunnei2021-04-304-19/+21
|\ \ \ | |_|/ |/| | applets/web: Fix a use-after-free when passing in the URL string
| * | applets/web: Fix a use-after-free when passing in the URL stringMorph2021-04-284-19/+21
| | | | | | | | | | | | | | | | | | The URL string was being deleted before being used, leading to a use-after-free occurring when it is used afterwards. Fix this by taking the string by const ref to extend its lifetime, ensuring it doesn't get deleted before use.
* | | yuzu: config: Silence narrowing conversion warning on MSVCMorph2021-04-291-2/+1
| |/ |/|
* | yuzu: main: Silence type conversion warning on MSVCMorph2021-04-281-1/+1
|/
* Merge pull request #6236 from Morph1984/swkbd-button-hint-scalingbunnei2021-04-261-12/+6
|\ | | | | applets/swkbd: Fix software keyboard button hint scaling
| * applets/swkbd: Fix software keyboard button hint scalingIts-Rei2021-04-241-12/+6
| | | | | | | | Fixes the scaling of the button hints using background images. Now they scale like the rest of the elements.
* | Merge pull request #6198 from Kewlan/favorite-gamesbunnei2021-04-265-5/+144
|\ \ | | | | | | game_list: Mark games as favorite to make them appear at the top.
| * | game_list: Mark games as favorite to make them appear at the top.Kewlan2021-04-155-5/+144
| | | | | | | | | | | | Icons are from Icons8.
* | | config: Add new keyboard bindingsMorph2021-04-251-9/+10
| |/ |/| | | | | Changes the keyboard bindings to be based on RPCS3's tried and true keyboard bindings.
* | applets/swkbd: Implement the Qt Software Keyboard frontendMorph2021-04-156-14/+5518
| | | | | | | | | | | | | | | | | | | | | | | | | | The Qt Software Keyboard frontend attempts to mimic the software keyboard rendered by the Nintendo Switch. This frontend implements multiple keyboard types, such as the normal software keyboard, the numeric pad software keyboard and the inline software keyboard. Keyboard and controller input is also supported in this frontend. Keyboard input is handled as native keyboard input, and so the on-screen keyboard cannot be navigated with the keyboard arrow keys as the arrow keys are used to move the text cursor. Controller input is translated into mouse hover movements on the onscreen keyboard or their respective button actions (B for backspace, A for entering the selected button, L/R for moving the text cursor, etc). The text check dialogs can also be confirmed with controller input through the use of the OverlayDialog Massive thanks to Rei for creating all the UI for the various keyboards and OverlayDialog. This would not have been possible without his excellent work. Co-authored-by: Its-Rei <kupfel@gmail.com>
* | error: Make the error code as the title text of the OverlayDialogMorph2021-04-154-15/+17
| | | | | | | | Co-authored-by: Its-Rei <kupfel@gmail.com>
* | overlay_dialog: Add an overlay text dialog that accepts controller inputMorph2021-04-155-1/+768
| | | | | | | | | | | | | | | | | | | | An OverlayDialog is an interactive dialog that accepts controller input (while a game is running) This dialog attempts to replicate the look and feel of the Nintendo Switch's overlay dialogs and provide some extra features such as embedding HTML/Rich Text content in a QTextBrowser. The OverlayDialog provides 2 modes: one to embed regular text into a QLabel and another to embed HTML/Rich Text content into a QTextBrowser. Co-authored-by: Its-Rei <kupfel@gmail.com>
* | main: Move meta type registration into its own functionMorph2021-04-152-9/+65
| | | | | | | | | | Moves the existing meta type registration into its own function and adds registration of common integral, floating point and string types. This function is also now called in the constructor of the GMainWindow instead of on starting a game.
* | applets: Remove the previous software keyboard applet implementationMorph2021-04-154-212/+7
| |
* | Merge pull request #6199 from lioncash/log-nsbunnei2021-04-153-8/+10
|\ \ | | | | | | common/log: Move Log namespace into the Common namespace
| * | common/log: Move Log namespace into the Common namespaceLioncash2021-04-153-8/+10
| | | | | | | | | | | | | | | Forgot to move this over when I moved the rest of the source files with lacking namespaces over.
* | | Merge pull request #6196 from bunnei/asserts-settingbunnei2021-04-1533-42/+54
|\ \ \ | |_|/ |/| | core: settings: Add setting for debug assertions and disable by default.
| * | common: Move settings to common from core.bunnei2021-04-1532-42/+42
| | | | | | | | | | | | - Removes a dependency on core and input_common from common.
| * | core: settings: Add setting for debug assertions and disable by default.bunnei2021-04-153-0/+12
| |/ | | | | | | | | | | - This is a developer-only setting and no longer needs to be enabled by default. - Also adds "use_auto_stub" setting to SDL frontend while we are here. - Supersedes #1340.
* / applets/controller: Hook up the "Motion" button functionalityMorph2021-04-132-0/+19
|/ | | | I forgot to hook this up during the development of the controller applet, this PR amends that.
* Merge pull request #6135 from Morph1984/borderless-windowed-fullscreenbunnei2021-04-124-9/+119
|\ | | | | configure_graphics: Add Borderless Windowed fullscreen mode
| * config: Default to exclusive fullscreen mode on platforms other than WindowsMorph2021-04-061-0/+12
| | | | | | | | Several issues have been reported with the borderless windowed fullscreen mode on *nix platforms. Default to exclusive fullscreen mode on these platforms for now.
| * configure_graphics: Add Borderless Windowed fullscreen modeMorph2021-04-064-9/+107
| | | | | | | | | | | | The borderless windowed fullscreen mode solves several issues with the presentation of the overlay dialogs and on-screen keyboard in exclusive fullscreen mode, and also has other benefits such as smoother gameplay, lower latency and a significant reduction in screen tearing. Co-authored-by: Its-Rei <kupfel@gmail.com>
* | Merge pull request #6062 from ameerj/auto-stubbunnei2021-04-093-0/+25
|\ \ | |/ |/| service: Add a toggle for auto stub fallback
| * configuration: Add auto stub toggle that resets on bootameerj2021-03-303-0/+25
| | | | | | | | Auto-stub is an experimental debugging feature that may cause unforseen bugs. This adds a toggle to only allow auto-stubbing unimplemented functions when explicitly enabled when yuzu is launched.
* | configure_graphics: Prevent stack-use-after-scopelat9nq2021-04-041-1/+1
| | | | | | | | | | | | | | Address Sanitizer reports stack-use-after-scope on line 231 `vulkan_devices.push_back(QString::fromStdString(name));`. Instead of using a pointer, copy the string into a std::string and use that, instead.
* | Use a single connection for UDP server, make connection test longer and check all pads instead of only the first onegerman772021-03-312-7/+5
| |
* | yuzu/main: Add user command line argumentgerman772021-03-271-0/+28
|/
* Fix cancelation of choose directory dialogivan-boikov2021-03-201-1/+4
|
* Merge pull request #5327 from AniLeo/masterbunnei2021-03-121-0/+9
|\ | | | | qt: Set DISPLAY env var when not present
| * qt: Set DISPLAY env var when not presentAni2021-03-071-0/+9
| | | | | | | | | | Fixes web browser opening (Help > Open Mods Page, Help > Open Quickstart Guide)
* | Merge pull request #6040 from german77/toggleKeyboardbunnei2021-03-112-4/+25
|\ \ | | | | | | Enable toggle buttons for keyboard and mouse
| * | Enable mouse toggle buttonsgerman772021-03-061-1/+2
| | |
| * | Add toggle button option for normal buttonsgerman2021-03-061-0/+5
| | |
| * | Enable button toggle for keyboard in the modifier buttongerman2021-03-062-3/+18
| | |
* | | Merge pull request #5990 from german77/mousePanningV2bunnei2021-03-085-14/+46
|\ \ \ | |/ / |/| | InputCommon: Mouse fixes
| * | inputCommon: Mouse fixesgerman772021-02-285-14/+46
| | |
* | | Merge pull request #6004 from german77/udprandombunnei2021-03-042-6/+4
|\ \ \ | | | | | | | | InputCommon: Use an unique client id for each udp socket instance
| * | | inputCommon: Use an unique client id for each socket instancegerman2021-03-012-6/+4
| |/ /
* / / Fix default bcat_backend initKelebek12021-03-021-2/+2
|/ /
* | Merge pull request #4298 from FearlessTobi/remove-cache-settingbunnei2021-02-164-54/+1
|\ \ | | | | | | yuzu/configure_filesystem: Remove "Select Cache Directory" option
| * | yuzu/configure_filesystem: Remove "Select Cache Directory" optionFearlessTobi2021-01-044-54/+1
| | | | | | | | | | | | | | | This tab of the settings is already extremely bloated and the setting itself is quite useless. With a gamelist of almost 30 games, the cache directory is smaller than 1MB for me and therefore I don't see why it needs to be configurable.
* | | Merge pull request #4940 from german77/nativeGCbunnei2021-02-154-5/+119
|\ \ \ | | | | | | | | HID: Implement GC controller in game
| * | | Use GC imagegerman2021-02-091-0/+3
| | | |
| * | | hid: Implement GC controllergerman2021-02-083-5/+116
| | | |
* | | | debugger: controller: Add access keylat9nq2021-02-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Adds the access key to the Controller P1 selection at View -> Debugger -> Controller P1. Avoids using the windowTitle as that would add a literal & to the beginning of the window title.
* | | | yuzu: Various frontend improvements to avoid crashes and improve experience on Linux.bunnei2021-02-144-10/+14
| | | |
* | | | Merge pull request #5915 from lat9nq/screenshots-dir-fixLC2021-02-131-0/+5
|\ \ \ \ | | | | | | | | | | yuzu: Create screenshot path before capture
| * | | | yuzu: Create screenshot path before capturelat9nq2021-02-121-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | Allows screenshots in cases where the screenshots path doesn't already exist.
* | | | | config: Make high GPU accuracy the defaultReinUsesLisp2021-02-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | This is a better default for most games, yielding better performance and less graphical issues.
* | | | | yuzu/config: Disable assembly shaders by defaultReinUsesLisp2021-02-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to BindBufferRangeNV limitations and poor quality code emission from our side, assembly shaders are currently slower than GLSL. Their build time and feature advantages are still relevant, but they are outweighted by their runtime performance.
* | | | | vulkan_wrapper: Pull Windows symbolsReinUsesLisp2021-02-131-0/+3
| | | | |
* | | | | gpu: Report renderer errors with exceptionsReinUsesLisp2021-02-132-4/+17
|/ / / / | | | | | | | | | | | | | | | | | | | | Instead of using a two step initialization to report errors, initialize the GPU renderer and rasterizer on the constructor and report errors through std::runtime_error.
* | | | Merge pull request #5869 from german77/mousePanningbunnei2021-02-116-32/+105
|\ \ \ \ | | | | | | | | | | input_common: Add mouse panning
| * | | | Add mouse panninggerman2021-02-086-32/+105
| | | | |
* | | | | Merge pull request #5893 from lioncash/inputbunnei2021-02-102-113/+131
|\ \ \ \ \ | | | | | | | | | | | | configure_input_player_widget: Minor cleanup
| * | | | | configure_input_player_widget: Reduce duplication of array accessors where applicableLioncash2021-02-091-108/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reduces the amount of code to read in expressions a little bit by separating constituents out a little.
| * | | | | configure_input_player_widget: Avoid nontrivial copies where applicableLioncash2021-02-092-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously a function was copying an array of 20 std::string instances by value.
* | | | | | configure_input_player_widget: Silence unused variable warningslat9nq2021-02-101-7/+0
|/ / / / / | | | | | | | | | | | | | | | | | | | | Prevents clang 11 from throwing an error since these variables are unused.
* | / / / Settings: Add depth to Joysticks on Pro Controller preview (#5894)Jatoxo2021-02-092-6/+30
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add some depth to ProJoysticks * address comments * clang * address nits * fix wrong inner_offset when offset.x was 0
* | | | Merge pull request #5339 from german77/interactivebunnei2021-02-0810-75/+3098
|\ \ \ \ | | | | | | | | | | Settings: Make settings controller image change with controller input
| * | | | Add GC controller animationgerman2021-02-072-52/+429
| | | | |
| * | | | Refresh debug controller settingsgerman2021-02-064-10/+18
| | | | |
| * | | | Refresh controller only when necessarygerman2021-02-062-15/+37
| | | | |
| * | | | Add SL SR vectors, change dual joycon view, add missing raw data from keyboard/mousegerman2021-02-062-178/+233
| | | | |
| * | | | Add controller window and single joycon top viewgerman2021-02-067-29/+391
| | | | |
| * | | | Replace text with vectorsgerman2021-02-062-77/+306
| | | | |
| * | | | Make settings controller image change with controller inputgerman2021-02-066-75/+2045
| |/ / /
* / / / renderer_opengl: Update OpenGL backend version requirement to 4.6Morph2021-02-071-22/+9
|/ / /
* | | Merge pull request #5326 from german77/hidUpdate1bunnei2021-02-061-1/+1
|\ \ \ | | | | | | | | HID: Update the HID service to match more closely to switchbrew part 1
| * | | Fix npad struct to match switchbrewgerman2021-02-041-1/+1
| | | |
* | | | hle: kernel: Rename ReadableEvent to KReadableEvent.bunnei2021-02-052-5/+5
| | | |
* | | | Always update handheld configgerman2021-02-041-4/+2
|/ / /
* | | Merge pull request #5841 from german77/usernamebunnei2021-02-031-1/+1
|\ \ \ | | | | | | | | Avoid overwriting username
| * | | Avoid overwritting usernamegerman2021-01-281-1/+1
| | | |
* | | | Merge pull request #5779 from bunnei/kthread-rewritebunnei2021-01-303-44/+29
|\ \ \ \ | | | | | | | | | | Rewrite KThread to be more accurate
| * | | | yuzu: debugger: Ignore HLE threads.bunnei2021-01-291-2/+8
| | | | |
| * | | | hle: kernel: Allocate a dummy KThread for each host thread, and use it for scheduling.bunnei2021-01-291-2/+0
| | | | |
| * | | | hle: kernel: Recode implementation of KThread to be more accurate.bunnei2021-01-291-16/+8
| | | | |
| * | | | hle: kernel: KThread: Clean up thread priorities.bunnei2021-01-291-8/+3
| | | | |
| * | | | hle: kernel: KThread: Remove thread types that do not exist.bunnei2021-01-291-8/+2
| | | | |
| * | | | core: hle: kernel: Rename Thread to KThread.bunnei2021-01-292-17/+17
| |/ / /
* | | | Merge pull request #5805 from german77/HandheldFixbunnei2021-01-302-15/+37
|\ \ \ \ | |/ / / |/| | | Fix connect and disconnect controller events
| * | | Fix connect and disconnect controller eventsgerman2021-01-242-15/+37
| | | |
* | | | Merge pull request #5778 from ReinUsesLisp/shader-dirbunnei2021-01-271-0/+3
|\ \ \ \ | | | | | | | | | | renderer_opengl: Avoid precompiled cache and force NV GL cache directory
| * | | | renderer_opengl: Avoid precompiled cache and force NV GL cache directoryReinUsesLisp2021-01-211-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Setting __GL_SHADER_DISK_CACHE_PATH we can force the cache directory to be in yuzu's user directory to stop commonly distributed malware from deleting our driver shader cache. And by setting __GL_SHADER_DISK_CACHE_SKIP_CLEANUP we can have an unbounded shader cache size. This has only been implemented on Windows, mostly because previous tests didn't seem to work on Linux. Disable the precompiled cache on Nvidia's driver. There's no need to hide information the driver already has in its own cache.
* | | | | Merge pull request #5270 from german77/multiTouchbunnei2021-01-217-105/+80
|\ \ \ \ \ | | | | | | | | | | | | HID: Add multitouch support
| * | | | | Always initialize keyboard inputgerman2021-01-151-3/+4
| | | | | |
| * | | | | Add mutitouch support for touch screensgerman2021-01-152-20/+61
| | | | | |
| * | | | | Allow to return up to 16 touch inputs per enginegerman2021-01-151-1/+2
| | | | | |
| * | | | | Allow all touch inputs at the same time and remove config options that are not longer necesarygerman2021-01-155-84/+16
| | | | | |
* | | | | | Merge pull request #5743 from german77/HandheldFixbunnei2021-01-212-1/+12
|\ \ \ \ \ \ | |_|/ / / / |/| | / / / | | |/ / / | |/| | | Fix player 1 turning on handheld and not updating handheld settings
| * | | | Always update configuration for handheldgerman2021-01-181-0/+10
| | | | |
| * | | | Fix player 1 default connected valuegerman2021-01-171-1/+2
| |/ / /
* | | | Merge pull request #5755 from FearlessTobi/port-5344bunnei2021-01-192-28/+32
|\ \ \ \ | | | | | | | | | | Port citra-emu/citra#5344: "game_list: Fix folder reordering"
| * | | | game_list: Fix folder reorderingFearlessTobi2021-01-182-28/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | | | configure_service: Only compile FormatEventStatusString when YUZU_ENABLE_BOXCAT is enabledlat9nq2021-01-171-0/+2
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function is unused if YUZU_ENABLE_BOXCAT is disabled, causing a -Wunused-funciton error when compiled. Wrapping it with `#ifdef YUZU_ENABLE_BOXCAT` to prevent compiling the function when the variable is disabled. Opting to not use [[maybe unused]] in case the function is totally unused in the future.
* / / / core: Silence Wclass-memaccess warningsReinUsesLisp2021-01-152-4/+4
|/ / / | | | | | | | | | | | | This requires making several types trivial and properly initialize them whenever they are called.
* | | yuzu: Remove unused variables in Qt codeLioncash2021-01-142-21/+2
| | | | | | | | | | | | | | | | | | Removes two unused variables in out Qt code. In this case the removal of these two results in less allocations, given std::map allocates on the heap.
* | | Merge pull request #5343 from lioncash/qt6Morph2021-01-141-6/+9
|\ \ \ | | | | | | | | configure_motion_touch: Migrate off QRegExp to QRegularExpression
| * | | configure_motion_touch: Migrate off QRegExp to QRegularExpressionLioncash2021-01-141-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QRegularExpression was introduced in Qt 5 as a better replacement for QRegExp. In Qt 6.0 QRegExp is removed entirely. To remain forward compatible with Qt 6.0, we can transition over to using QRegularExpression.
* | | | configure_motion_touch: Prevent use after move in ApplyConfiguration()Lioncash2021-01-141-2/+1
|/ / / | | | | | | | | | | | | touch_engine was being compared against after being moved into the setter for the engine, so this comparison wouldn't behave properly.
* | | Merge pull request #5330 from german77/regexerrorLC2021-01-141-2/+3
|\ \ \ | | | | | | | | Fix IP validator error
| * | | Fix IP validator error where the last octet produced an error if the value was higher than 199german2021-01-131-2/+3
| | |/ | |/|
* | | yuzu: Migrate off of setMargin() to setContentsMargins()Lioncash2021-01-132-3/+3
| | | | | | | | | | | | | | | | | | setMargin() has been deprecated since Qt 5, and replaced with setContentsMargins(). We can move over to setContentsMargins() to stay forward-compatible with Qt 6.0.
* | | hle: kernel: thread: Preserve thread wait reason for debugging only.bunnei2021-01-111-3/+40
| | | | | | | | | | | | - This is decoupled from core functionality and used for debugging only.
* | | yuzu: debugger: wait_tree: Handle unknown ThreadState.bunnei2021-01-111-0/+3
| | |
* | | core: hle: Integrate new KConditionVariable and KAddressArbiter implementations.bunnei2021-01-111-5/+5
| | |
* | | hle: kernel: thread: Replace ThreadStatus/ThreadSchedStatus with a single ThreadState.bunnei2021-01-111-45/+14
| | | | | | | | | | | | - This is how the real kernel works, and is more accurate and simpler.
* | | core: hle: kernel: Update KSynchronizationObject.bunnei2021-01-112-18/+18
| | |
* | | Merge pull request #5229 from Morph1984/fullscreen-optbunnei2021-01-111-3/+39
|\ \ \ | | | | | | | | yuzu/main: Add basic command line arguments
| * | | yuzu/main: Add basic command line argumentsMorph2020-12-251-3/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following command line arguments are supported: yuzu.exe "path_to_game" - Launches a game at "path_to_game" yuzu.exe -f - Launches the next game in fullscreen yuzu.exe -g "path_to_game" - Launches a game at "path_to_game" yuzu.exe -f -g "path_to_game" - Launches a game at "path_to_game" in fullscreen
* | | | config: Enable docked mode by defaultMorph2021-01-101-2/+2
| |/ / |/| |
* | | general: Resolve C4062 warnings on MSVCMorph2021-01-092-0/+4
| | |
* | | Merge pull request #5261 from gal20/hide_mouse_patchbunnei2021-01-054-19/+24
|\ \ \ | |_|/ |/| | yuzu/main: Fix 'Hide mouse on inactivity' and port citra-emu/citra#5476
| * | yuzu/main: fix mouse not showing on move and port citra-emu/citra#5476gal202020-12-314-19/+24
| | |
* | | main: Resolve error string not displayingLioncash2021-01-031-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | During the transition to make the error dialog translatable, I accidentally got rid of the conversion to ResultStatus, which prevented operator<< from being invoked during formatting. This adds a function to directly retrieve the result status string instead so that it displays again.
* | | Merge pull request #5278 from MerryMage/cpuopt_unsafe_inaccurate_nanbunnei2021-01-033-0/+19
|\ \ \ | | | | | | | | dynarmic: Add Unsafe_InaccurateNaN optimization
| * | | dynarmic: Add Unsafe_InaccurateNaN optimizationMerryMage2021-01-023-0/+19
| | | |
* | | | Merge pull request #5267 from lioncash/localizebunnei2021-01-031-10/+13
|\ \ \ \ | | | | | | | | | | main: Make the loader error dialog fully translatable
| * | | | main: Make the loader error dialog fully translatableLioncash2020-12-311-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | | Makes the dialog fully localizable and also adds disambiguation comments to help translators understand what the formatting specifiers indicate.
| * | | | main: Tidy up enum comparisonLioncash2020-12-311-2/+1
| | |/ / | |/| | | | | | | | | | | | | | enum classes are comparable with one another, so these casts aren't necessary.
* | | | general: Fix various spelling errorsMorph2021-01-023-5/+5
| |/ / |/| |
* | | Merge pull request #5209 from Morph1984/refactor-controller-connectbunnei2021-01-014-12/+47
|\ \ \ | | | | | | | | configure_input: Modify controller connection delay
| * | | configure_input: Modify controller connection delayMorph2021-01-014-12/+47
| |/ / | | | | | | | | | Increases the controller connection delay to 60ms and refactors it to attempt to disconnect all controllers prior to connecting all controllers in HID.
* / / core: settings: Untangle multicore from asynchronous GPU.bunnei2020-12-292-12/+3
|/ / | | | | | | - Now that GPU is always threaded, we can support multicore with synchronous GPU.
* / Allow to invert analog axis with right clickgerman2020-12-271-48/+37
|/
* cmake: Always enable VulkanReinUsesLisp2020-12-254-36/+5
| | | | | Removes the unnecesary burden of maintaining separate #ifdef paths and allows us sharing generic Vulkan code across APIs.
* Merge pull request #5217 from lat9nq/save-on-bootbunnei2020-12-232-16/+25
|\ | | | | yuzu/main: Save settings when starting guest
| * yuzu/main: Save settings when starting guestlat9nq2020-12-222-16/+25
| | | | | | | | | | | | Saves UISettings and Settings when booting a guest. Moves updating UISettings::values from GMainWindow::closeEvent into its own function, then reuses it in GMainWindow::BootGame.
* | yuzu/main: Improve menubar access keyslat9nq2020-12-234-38/+38
| | | | | | | | | | Adds a unique access key to each action within each menu. A few actions already had their own access key, so those were untouched.
* | Add option to reset window size to 1080pgerman2020-12-233-6/+30
| |
* | Merge pull request #5042 from Morph1984/project-aetherbunnei2020-12-2210-203/+946
|\ \ | |/ |/| Project Aether: Reimplementation of the Web Browser Applet
| * applets/web: Implement the online web browser appletMorph2020-12-184-61/+139
| |
| * applets/web: Fix keyboard to emulated controller inputMorph2020-12-183-4/+30
| |
| * main: Add the ability to disable the web appletMorph2020-12-182-0/+27
| | | | | | | | This should only be used for Super Mario 3D All-Stars. This is a temporary solution until it can be implemented properly.
| * main, applets/web: Re-add progress dialog for RomFS extractionMorph2020-12-184-28/+73
| |
| * applets/web: Implement the Qt web browser applet frontendMorph2020-12-184-5/+600
| |
| * web_browser_scripts: Add injection scripts for the web browserMorph2020-12-181-0/+193
| |
| * util: Add URL Request Interceptor for QWebEngineMorph2020-12-183-0/+64
| |
| * bootmanager: Add a check whether loading is completeMorph2020-12-182-0/+6
| |
| * applets: Remove the previous web browser applet implementationMorph2020-12-184-294/+3
| |
* | Merge pull request #5131 from bunnei/scheduler-rewritebunnei2020-12-211-5/+5
|\ \ | | | | | | Rewrite Kernel scheduler based on Atmosphere
| * | hle: kernel: Rewrite scheduler implementation based on Mesopshere.bunnei2020-12-061-3/+3
| | |
| * | hle: kernel: Port KAffinityMask from Mesosphere.bunnei2020-12-061-2/+2
| | |
* | | yuzu: Remove gdbstub configurationFearlessTobi2020-12-193-81/+2
| |/ |/| | | | | | | The gdbstub itself was removed with https://github.com/yuzu-emu/yuzu/pull/5028. This PR just removes the remaining gdb configuration code from the emulator and the UI.
* | Merge pull request #5119 from Morph1984/fs-opendatastoragewithprogramindexbunnei2020-12-151-4/+3
|\ \ | | | | | | fsp_srv: Implement OpenDataStorageWithProgramIndex
| * | file_sys: Consolidate common Title ID operationsMorph2020-12-081-4/+3
| | |
* | | Merge pull request #5135 from Morph1984/applets-shadowbunnei2020-12-099-18/+18
|\ \ \ | | | | | | | | applets: Resolve variable shadowing
| * | | applets: Resolve variable shadowingMorph2020-12-059-18/+18
| | |/ | |/|
* | | Merge pull request #5156 from comex/xx-rawsbunnei2020-12-081-2/+2
|\ \ \ | |_|/ |/| | configure_motion_touch: Fix unescaped backslash in regex
| * | configure_motion_touch: Fix unescaped backslash in regexcomex2020-12-071-2/+2
| | | | | | | | | | | | | | | | | | Since this is inside a string literal, backslashes that are part of regex syntax have to be escaped. But that's ugly, so convert to a raw string instead.
* | | Merge pull request #5020 from german77/AnalogfromButtonFixMorph2020-12-083-9/+29
|\ \ \ | |/ / |/| | Disable analog joystick from buttons by default
| * | Disable analog joystick from buttons by defaultgerman2020-12-083-9/+29
| | |
* | | game_list_p: Resolve deprecated usage of QVariant operator<Lioncash2020-12-051-1/+2
| |/ |/| | | | | | | This is designated as obsolete in Qt's docs (see: https://doc.qt.io/qt-5/qvariant-obsolete.html#operator-lt)
* | Merge pull request #4996 from bunnei/use-4jitsbunnei2020-12-041-15/+9
|\ \ | | | | | | Kernel: Refactor to use 4-instances of Dynarmic & various cleanups and improvements
| * | hle: kernel: thread: Remove unused "Running" state.bunnei2020-11-291-15/+9
| | |
* | | Merge pull request #4937 from german77/multiUDPbunnei2020-12-014-160/+268
|\ \ \ | | | | | | | | InputCommon: Add multiple udp server support
| * | | Add multiple udp server supportgerman2020-11-264-160/+268
| | |/ | |/|
* | | Disable web applet and warning when compiling for Linux on CIlat9nq2020-11-301-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | yuzu's web applet does not or barely reacts to user input while open in Linux. It can be closed via 'Exit Web Applet' on the menubar, however if yuzu is in fullscreen, this is effectively a softlock as the menubar cannot be accessed. This disables building yuzu with the web applet on the Linux CI target. In addition, this disables the QMessageBox warning about not having compiled yuzu with the web applet.
* | | Merge pull request #4939 from german77/MouseInputbunnei2020-11-302-28/+85
|\ \ \ | |_|/ |/| | InputCommon: Implement full mouse support
| * | Implement full mouse supportgerman2020-11-262-28/+85
| | |
* | | core: Eliminate remaining usages of the global system instanceLioncash2020-11-277-27/+34
| | | | | | | | | | | | | | | | | | Removes all remaining usages of the global system instance. After this, migration can begin to migrate to being constructed and managed entirely by the various frontends.
* | | savedata_factory: Eliminate usage of the global system instanceLioncash2020-11-271-2/+2
| |/ |/| | | | | Now there's only two meaningful instances left in core.
* | Merge pull request #4976 from comex/poll-eventsRodrigo Locatti2020-11-262-2/+2
|\ \ | | | | | | Overhaul EmuWindow::PollEvents to fix yuzu-cmd calling SDL_PollEvents off main thread
| * | Overhaul EmuWindow::PollEvents to fix yuzu-cmd calling SDL_PollEvents off main threadcomex2020-11-232-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | EmuWindow::PollEvents was called from the GPU thread (or the CPU thread in sync-GPU mode) when swapping buffers. It had three implementations: - In GRenderWindow, it didn't actually poll events, just set a flag and emit a signal to indicate that a frame was displayed. - In EmuWindow_SDL2_Hide, it did nothing. - In EmuWindow_SDL2, it did call SDL_PollEvents, but this is wrong because SDL_PollEvents is supposed to be called on the thread that set up video - in this case, the main thread, which was sleeping in a busyloop (regardless of whether sync-GPU was enabled). On macOS this causes a crash. To fix this: - Rename EmuWindow::PollEvents to OnFrameDisplayed, and give it a default implementation that does nothing. - In EmuWindow_SDL2, do not override OnFrameDisplayed, but instead have the main thread call SDL_WaitEvent in a loop.
* | | Merge pull request #4959 from Morph1984/emulated-controller-stylesetbunnei2020-11-254-99/+192
|\ \ \ | | | | | | | | configure_input_player: Use the NpadStyleSet to limit the available controllers shown
| * | | applets/controller: Use a pair of emulated controller index to controller typeMorph2020-11-212-44/+96
| | | |
| * | | configure_input_player: Use the npad style set to show the available controllersMorph2020-11-212-55/+96
| | | | | | | | | | | | | | | | This will reduce the likelihood of an invalid controller type to be set within a game
* | | | frontend: yuzu (qt): Register a callback for ExecuteProgram.bunnei2020-11-254-7/+38
| |/ / |/| |
* | | Merge pull request #4451 from slashiee/extended-loggingbunnei2020-11-233-9/+41
|\ \ \ | | | | | | | | logging/settings: Increase maximum log size to 100 MB and add extended logging option
| * | | logging/settings: Increase maximum log size to 100 MB and add extended logging optionM&M2020-08-253-9/+41
| | | | | | | | | | | | | | | | | | | | The extended logging option is automatically disabled on boot but can be enabled afterwards, allowing the log file to go up to 1 GB during that session. This commit also fixes a few errors that are present in the general debug menu.
* | | | Merge pull request #4944 from lioncash/system-rembunnei2020-11-224-31/+50
|\ \ \ \ | |_|/ / |/| | | patch_manager: Remove usages of the global system instance
| * | | patch_manager: Remove usages of the global system instanceLioncash2020-11-184-31/+50
| | |/ | |/| | | | | | | | | | | | | | | | With this, only 19 usages of the global system instance remain within the core library. We're almost there.
* / | configure_input_player: Use static qualifier for IsProfileNameValid()Lioncash2020-11-181-1/+1
|/ / | | | | | | | | This is a static member function, so we don't need use an existing instance to call this function.
* | configure_input: Accommodate for the mouse input device engineMorph2020-11-162-2/+18
| |
* | configure_input: Update the input profiles for other player tabsMorph2020-11-164-11/+38
| |
* | general: Fix compiler warnings on linux and miscellaneous changesMorph2020-11-1610-14/+20
| |
* | sdl_impl: Revert to the "old" method of mapping sticksMorph2020-11-162-1/+16
| | | | | | | | | | | | Not all controllers have a SDL_GameController binding. This caused controllers not present in the SDL GameController database to have buttons mapped instead of axes. Furthermore, it was not possible to invert the axes when it could be useful such as emulating a horizontal single joycon or other potential cases. This allows us to invert the axes by reversing the order of mapping (vertical, then horizontal).
* | applets/controller: Change the input button to create input profilesMorph2020-11-1610-100/+117
| | | | | | | | Co-authored-by: Its-Rei <kupfel@gmail.com>
* | input: Disconnect a controller prior to connecting a new oneMorph2020-11-162-50/+73
| | | | | | | | | | | | Some games do not respond to a change in controller type if 1) The controller is not disconnected prior to being reconnected and/or 2) The controller is reconnected instantly after being disconnected. Since it is not possible to change controllers instantly on hardware and requiring a disconnect prior to connecting a new one, we should emulate this as well with a small delay, fixing the aforementioned issue.
* | input_common: Add VibrationDevice and VibrationDeviceFactoryMorph2020-11-166-22/+134
| | | | | | | | | | | | A vibration device is an input device that returns an unsigned byte as status. It represents whether the vibration device supports vibration or not. If the status returns 1, it supports vibration. Otherwise, it does not support vibration.
* | configure_input: Add per-player vibrationMorph2020-11-1610-26/+708
| | | | | | | | | | | | | | Allows for enabling and modifying vibration and vibration strength per player. Also adds a toggle for enabling/disabling accurate vibrations. Co-authored-by: Its-Rei <kupfel@gmail.com>
* | settings: Remove global vibration strength modifierMorph2020-11-163-8/+0
| | | | | | | | This will be replaced in favor of per-player vibration strength modifiers.
* | configure_input: Hook up the vibration percentage spinboxMorph2020-11-165-2/+12
| | | | | | | | | | This allows setting the vibration strength percentage anywhere from 1% to 100%. Also hooks up the remaining motion button and checkbox in the Controller Applet.
* | configure_input_player: Change "Defaults" button behaviorMorph2020-11-161-27/+30
| | | | | | | | | | RestoreDefaults() now restores the selected devices' mappings using UpdateMappingWithDefaults(). This allows us to move the keyboard mapping from RestoreDefaults() to UpdateMappingWithDefaults().
* | settings: Preparation for per-game input settingsMorph2020-11-166-55/+58
| |
* | config: Migrate config files into config/customMorph2020-11-164-21/+61
| | | | | | | | Co-authored-by: lat9nq <lat9nq@virginia.edu>
* | controllers/npad: Connect a controller on init if none are connectedMorph2020-11-161-1/+2
| |
* | applets/controller: Auto accept a valid single player configurationMorph2020-11-163-14/+24
| |
* | bootmanager: Allow mouse clicks only if touch is disabledMorph2020-11-161-3/+13
| | | | | | | | | | Previously mouse clicks will not register when touch is disabled. This rectifies that and allows mouse clicks to be mapped to other buttons if the touchscreen is disabled.
* | input_profiles: Implement input profilesMorph2020-11-1613-130/+509
| |
* | configure_input_player: Implement input exclusivity and persistenceMorph2020-11-163-135/+202
| | | | | | | | With this, the "Input Devices" combobox should accurately reflect the input device being used and disallows inputs from other input devices unless the input device is set to "Any".
* | ui/themes: Cleanup UIMorph2020-11-1613-397/+263
| |
* | bootmanager: Address review commentslat9nq2020-11-101-12/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes QMessageBox usages to warnings, as the problems they bring to light are being safely handled by the application and do not warrant something of the "critical" level. Changes LOG_CRITICAL to LOG_ERROR for the same reason. Preferring ERROR to WARNING as yuzu is denying loading of any guest applications after checking for these conditions. Moved logging the GL_RENDERER string into GetUnsupportedGLExtensions() to make more clear that unsupported extensions were already being logged. Makes placement of the logs easier to understand later, as well.
* | bootmanager: Log and show GL_RENDERER string when GPU is insufficientlat9nq2020-11-101-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | Changes the first message to not include the OpenGL version, as the error is caused by OpenGL failing to load. Adds a new check for OpenGL version 4.3. This will display a message with a similar error as well as the GL_RENDERER string. Adds a CRITICAL log message when triggered. This prevents a crash with yuzu trying to use older OpenGL versions. Modifies the unsupported extension message to output the GL_RENDERER string in the message, as well as logging the string.
* | Merge pull request #4888 from lioncash/unicorn-removebunnei2020-11-071-2/+0
|\ \ | | | | | | core: Remove usage of unicorn
| * | core: Remove usage of unicornLioncash2020-11-041-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | Unicorn long-since lost most of its use, due to dynarmic gaining support for handling most instructions. At this point any further issues encountered should be used to make dynarmic better. This also allows us to remove our dependency on Python.
* | | core/settings: Move configuring_global behind an APILioncash2020-11-047-29/+29
|/ / | | | | | | | | | | Rather than have directly modified global state here, we can make it an implementation detail and have an interface that changes are queried through.
* | yuzu: settings: Enable multicore, asynch GPU, and assembly shaders by default.bunnei2020-10-271-6/+6
| | | | | | | | | | | | | | - In general, this is now the preferred settings for most games. # Conflicts: # src/yuzu/configuration/config.cpp
* | Merge pull request #4729 from ameerj/nvdec-prodbunnei2020-10-275-0/+24
|\ \ | | | | | | video_core: NVDEC Implementation
| * | video_core: NVDEC Implementationameerj2020-10-275-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit aims to implement the NVDEC (Nvidia Decoder) functionality, with video frame decoding being handled by the FFmpeg library. The process begins with Ioctl commands being sent to the NVDEC and VIC (Video Image Composer) emulated devices. These allocate the necessary GPU buffers for the frame data, along with providing information on the incoming video data. A Submit command then signals the GPU to process and decode the frame data. To decode the frame, the respective codec's header must be manually composed from the information provided by NVDEC, then sent with the raw frame data to the ffmpeg library. Currently, H264 and VP9 are supported, with VP9 having some minor artifacting issues related mainly to the reference frame composition in its uncompressed header. Async GPU is not properly implemented at the moment. Co-Authored-By: David <25727384+ogniK5377@users.noreply.github.com>
* | | Merge pull request #4834 from lioncash/copy-fnbunnei2020-10-272-4/+6
|\ \ \ | |/ / |/| | controller: Pass ControllerParameters by reference in ReconfigureControllers()
| * | controller: Pass ControllerParameters by reference in ReconfigureControllers()Lioncash2020-10-272-4/+6
| | | | | | | | | | | | Prevents unnecessary copies and heap reallocations from occurring.
* | | Merge pull request #4827 from lioncash/truncRodrigo Locatti2020-10-251-9/+9
|\ \ \ | | | | | | | | controller: Convert led_patterns integer literals to bool literals
| * | | controller: Convert led_patterns integer literals to bool literalsLioncash2020-10-251-9/+9
| | | | | | | | | | | | | | | | | | | | 'bool' isn't always guaranteed to be the same size as an int, so this can technically cause truncation warnings if we support other platforms.
* | | | Merge pull request #4828 from lioncash/lockguardRodrigo Locatti2020-10-251-1/+1
|\ \ \ \ | | |/ / | |/| | general: Use template deduction guides for lock_guard
| * | | general: Use template deduction guides for lock_guardLioncash2020-10-251-1/+1
| |/ / | | | | | | | | | Same behavior, less code.
* | | applets/profile_select: Resolve a warning in exec()Morph2020-10-251-1/+1
| | | | | | | | | | | | Resolves a warning where not all control paths return a value.
* | | Merge pull request #4817 from Kewlan/open-single-save-locationbunnei2020-10-243-16/+20
|\ \ \ | | | | | | | | main/profile_select: Don't ask for profile when there's only one.
| * | | Don't ask for profile when there's only one.Kewlan2020-10-223-16/+20
| |/ /
* | | Merge pull request #4792 from bunnei/rtc-fixbunnei2020-10-231-9/+17
|\ \ \ | |/ / |/| | service: time: Update current time with changes to RTC setting.
| * | service: time: Update current time with changes to RTC setting.bunnei2020-10-131-9/+17
| | | | | | | | | | | | - This can be used to advance time, e.g. for Pokemon Sword/Shield pokejobs.
* | | configure_input_player: Fix modifier buttonsMorph2020-10-202-23/+23
| | | | | | | | | | | | Fix them for real this time, now they finally work.
* | | input_common/CMakeLists: Make some warnings errorsLioncash2020-10-161-1/+1
|/ / | | | | | | | | Makes the input_common code warnings consistent with the rest of the codebase.
* | Merge pull request #4733 from ReinUsesLisp/game-list-leakLC2020-09-302-3/+4
|\ \ | | | | | | qt/game_list: Give GameListSearchField::KeyReleaseEater a parent
| * | qt/game_list: Give GameListSearchField::KeyReleaseEater a parentReinUsesLisp2020-09-292-3/+4
| | | | | | | | | | | | | | | This fixes a memory leak as KeyReleaseEater's destructor was never called.
* | | main: Allow applets to display on top while fullscreenMorph2020-09-261-6/+8
|/ / | | | | | | Using the Qt::WindowStaysOnTopHint flag allows these dialogs to show up on top while running in fullscreen. However, if yuzu goes out of focus (by alt-tabbing or otherwise), this flag does not seem to have an effect.
* | Merge pull request #4701 from lioncash/unused-protoRodrigo Locatti2020-09-231-3/+2
|\ \ | | | | | | install_dialog: Remove unused function prototype
| * | install_dialog: Make use of [[nodiscard]] where applicableLioncash2020-09-231-2/+2
| | | | | | | | | | | | | | | Allows the compiler to warn against cases where the return value isn't used (which would be a bug).
| * | install_dialog: Remove unused function prototypeLioncash2020-09-231-1/+0
| | | | | | | | | | | | | | | This function doesn't have an implementation, so it can be removed to prevent others from unintentionally using it.
* | | game_list: Make game list function naming consistentLioncash2020-09-233-36/+45
| | | | | | | | | | | | | | | Makes the naming consistent with the rest of the functions that are present.
* | | game_list: Eliminate redundant argument copiesLioncash2020-09-232-16/+22
|/ / | | | | | | Several functions can be taken by const reference to avoid copies
* | renderer_opengl: Remove emulated mailbox presentationReinUsesLisp2020-09-201-22/+1
| | | | | | | | | | Emulated mailbox presentation was causing performance issues on Nvidia's OpenGL driver. Remove it.
* | configure_input_player: Fixes motion mapping using ConfigureButtonClickMorph2020-09-181-5/+8
| |
* | configure_input_player: Re-add "Clear" context menu optionMorph2020-09-182-31/+66
| | | | | | | | | | The context menu was removed in Mjölnir Part 1 as part of the input rewrite as we were unaware of it's usage statistics. However, as this was the only way to clear the inputs of individual buttons, this PR will re-add it back in.
* | Merge pull request #4594 from german77/MotionHIDbunnei2020-09-176-5/+266
|\ \ | | | | | | hid/configuration: Implement motion controls to HID
| * | configure_input: Hook up the motion button and checkboxMorph2020-09-053-6/+14
| | | | | | | | | | | | | | | This allows toggling motion on or off, and allows access to the motion configuration. Also changes the [waiting] text for motion buttons to Shake! as this is how motion is connected to a player.
| * | Add cemu hook changes related to PR #4609german2020-09-051-0/+22
| | |
| * | configure_input_player: Show/hide motion buttons based on the controllerMorph2020-09-053-103/+141
| | |
| * | Include HID and configuration changes related to motiongerman2020-09-055-0/+193
| | |
* | | crypto/key_manager: Remove dependency on the global system accessorLioncash2020-09-141-2/+4
| | | | | | | | | | | | | | | We can supply the content provider as an argument instead of hardcoding a global accessor in the implementation.
* | | Merge pull request #4597 from Morph1984/mjolnir-p2bunnei2020-09-1111-17/+3602
|\ \ \ | | | | | | | | Project Mjölnir: Part 2 - Controller Applet
| * | | applets/controller: Resolve several compiler warningsMorph2020-09-041-6/+6
| | | | | | | | | | | | | | | | Resolves -Wsign-compare and -Wunused-variable
| * | | Address feedbackMorph2020-09-041-2/+3
| | | |
| * | | clang-formatMorph2020-09-042-2/+4
| | | |
| * | | main: Apply settings after applet configuration is complete.Morph2020-09-041-0/+4
| | | |
| * | | applets/controller: Load configuration prior to setting up connectionsMorph2020-09-042-23/+29
| | | | | | | | | | | | | | | | This avoids unintentionally changing the states of elements while loading them in.
| * | | applets/controller: Make 8 a static constexpr value of NUM_PLAYERSMorph2020-09-042-15/+22
| | | | | | | | | | | | | | | | Avoids repetitive usages of the int literal '8' or calls to player_widgets.size()
| * | | applets/controller: Implement "Explain Text"Morph2020-09-043-9/+275
| | | | | | | | | | | | | | | | "Explain Text" is additional text that is shown for each player in the controller applet.
| * | | Project Mjölnir: Part 2 - Controller AppletMorph2020-09-0411-17/+3316
| |/ / | | | | | | | | | Co-authored-by: Its-Rei <kupfel@gmail.com>
* | | Merge pull request #4608 from lioncash/sign3bunnei2020-09-101-2/+2
|\ \ \ | | | | | | | | configure_input_player: Resolve sign conversion warnings in UpdateMappingWithDefaults()
| * | | configure_input_player: Resolve sign conversion warnings in UpdateMappingWithDefaults()Lioncash2020-08-291-2/+2
| | | | | | | | | | | | | | | | Prevents sign mismatch warnings in the loop conditionals.
* | | | Merge pull request #4633 from ReinUsesLisp/gpu-initRodrigo Locatti2020-09-101-1/+3
|\ \ \ \ | | | | | | | | | | video_core: Remove all Core::System references in renderer
| * | | | video_core: Remove all Core::System references in rendererReinUsesLisp2020-09-061-1/+3
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that the GPU is initialized when video backends are initialized, it's no longer needed to query components once the game is running: it can be done when yuzu is booting. This allows us to pass components between constructors and in the process remove all Core::System references in the video backend.
* | | | Merge pull request #4606 from lioncash/constexprbunnei2020-09-071-14/+18
|\ \ \ \ | |/ / / |/| | | game_list_p: Mark some constants as constexpr
| * | | game_list_p: Avoid string churn in GameListItemPath data()Lioncash2020-08-291-4/+8
| | | |
| * | | game_list_p: Mark some constants as constexprLioncash2020-08-291-10/+10
| |/ / | | | | | | | | | | | | Consistency change with how we mark constants in the rest of the codebase.
* | | main: Use three dots to complete the ellipsislat9nq2020-09-021-1/+1
| | | | | | | | | | | | Fixes a typo in the UI file. An ellipsis has 3 dots.
* | | Merge pull request #4382 from FearlessTobi/port-udp-configbunnei2020-09-0113-10/+1847
|\ \ \ | | | | | | | | yuzu: Add motion and touch configuration from Citra
| * | | Address second batch of reviewsFearlessTobi2020-08-305-24/+24
| | | |
| * | | Reolve reorder warningFearlessTobi2020-08-292-3/+3
| | | |
| * | | Address review comments and fix code compilationFearlessTobi2020-08-2910-149/+207
| | | |
| * | | yuzu: Add motion and touch configurationFearlessTobi2020-08-2910-0/+1779
| | | |
* | | | Merge pull request #4605 from lioncash/copy3bunnei2020-08-301-1/+1
|\ \ \ \ | |/ / / |/| | | bootmanager: Prevent unnecessary copies in TouchUpdateEvent()
| * | | bootmanager: Prevent unnecessary copies in TouchUpdateEvent()Lioncash2020-08-291-1/+1
| |/ / | | | | | | | | | | | | The list of points is returned by const reference, so we don't need to make a copy of every element in the list.
* | | Merge pull request #4604 from lioncash/lifetimeLC2020-08-294-7/+8
|\ \ \ | | | | | | | | yuzu/main: Amend lifetime issues with InputSubsystem
| * | | yuzu/main: Amend lifetime issues with InputSubsystemLioncash2020-08-294-7/+8
| |/ / | | | | | | | | | | | | | | | Due to the way Qt performs destruction of parent/child widgets, we need to make the lifetime of the input subsystem shared across the main window and the render window.
* / / yuzu/configuration: Fix index out of bounds for default_analogsMorph2020-08-293-12/+13
|/ /
* | input_common: Eliminate most global stateLioncash2020-08-2714-67/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | Abstracts most of the input mechanisms under an InputSubsystem class that is managed by the frontends, eliminating any static constructors and destructors. This gets rid of global accessor functions and also allows the frontends to have a more fine-grained control over the lifecycle of the input subsystem. This also makes it explicit which interfaces rely on the input subsystem instead of making it opaque in the interface functions. All that remains to migrate over is the factories, which can be done in a separate change.
* | configure_input_player: Fix modifier scale button mappingMorph2020-08-262-20/+19
| |
* | configuration/input: Add support for mouse button clicksMorph2020-08-265-11/+82
| | | | | | | | Supports the Left, Right, Middle, Backward and Forward mouse buttons.
* | Address feedbackMorph2020-08-268-52/+45
| |
* | Project Mjölnir: Part 1Morph2020-08-2624-2564/+7387
|/ | | | | Co-authored-by: James Rowe <jroweboy@gmail.com> Co-authored-by: Its-Rei <kupfel@gmail.com>
* Merge pull request #4541 from MerryMage/yolobunnei2020-08-224-1/+79
|\ | | | | dynarmic: Add unsafe optimizations
| * dynarmic: Add unsafe optimizationsMerryMage2020-08-164-1/+79
| |
* | common/telemetry: Migrate namespace into the Common namespaceLioncash2020-08-182-2/+3
| | | | | | | | | | Migrates the Telemetry namespace into the Common namespace to make the code consistent with the rest of our common code.
* | Merge pull request #4381 from Morph1984/fix-open-folder-installed-titlebunnei2020-08-184-13/+24
|\ \ | | | | | | main: Fix Open Save/Mod Locations for installed titles
| * | main: Fallback to loader if no control nca is found with patch managerMorph2020-08-051-6/+17
| | | | | | | | | | | | In some rare instances, the patch manager is not able to find a control nca, fallback to the previous method of parsing a control nca through the loader if this occurs.
| * | main: Fix Open Save/Mod Locations for installed titlesMorph2020-08-054-12/+12
| | | | | | | | | | | | Previously NAND/SDMC installed titles would open device saves when they are supposed to be user saves. This is due to the control nca not being read and thus returns 0 for both GetDefaultNormalSaveSize() and GetDeviceSaveDataSize(). Fix this by utilizing the patch manager to read the control nca.
* | | Merge pull request #4532 from lioncash/object-namebunnei2020-08-187-90/+74
|\ \ \ | | | | | | | | configuration_shared: Simplify name lookup in highlighting functions
| * | | configuration_shared: Simplify name lookup in highlighting functionsLioncash2020-08-147-90/+74
| | |/ | |/| | | | | | | | | | | | | | | | We can query the given object name directly from the widget itself. This removes any potential for forgetting to change the name if the widget gets renamed and makes the API much simpler (just pass in the widget, and not worry about its name).
* | | Merge pull request #4535 from lioncash/fileutilbunnei2020-08-189-124/+127
|\ \ \ | | | | | | | | common/fileutil: Convert namespace to Common::FS
| * | | common/fileutil: Convert namespace to Common::FSLioncash2020-08-169-124/+127
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Migrates a remaining common file over to the Common namespace, making it consistent with the rest of common files. This also allows for high-traffic FS related code to alias the filesystem function namespace as namespace FS = Common::FS; for more concise typing.
* | | Merge pull request #4540 from lioncash/tr3bunnei2020-08-171-2/+2
|\ \ \ | | | | | | | | configure_hotkeys: Don't translate empty strings
| * | | configure_hotkeys: Don't translate empty stringsLioncash2020-08-161-2/+2
| |/ / | | | | | | | | | | | | There's no need to translate an empty string. This just gives translators unnecessary work.
* | | Merge pull request #4531 from lioncash/overloadRodrigo Locatti2020-08-171-2/+1
|\ \ \ | | | | | | | | yuzu: Make use of qOverload where applicable
| * | | yuzu: Make use of qOverload where applicableLioncash2020-08-141-2/+1
| |/ / | | | | | | | | | Eliminates a verbose function cast.
* | | Merge pull request #4443 from ameerj/vk-async-shadersDavid2020-08-171-1/+1
|\ \ \ | | | | | | | | vulkan_renderer: Async shader/graphics pipeline compilation
| * | | Address feedback, add shader compile notifier, update setting textameerj2020-08-161-1/+1
| |/ /
* | | Merge pull request #4515 from lat9nq/pgs-menubar-configbunnei2020-08-173-20/+46
|\ \ \ | | | | | | | | main: Add an option to modify the currrent game's configuration
| * | | main: Add an option to modify the currrent game's configurationlat9nq2020-08-163-20/+46
| |/ / | | | | | | | | | | | | | | | Creates a new entry in the Emulation menu called "Configure Current Game..." that is only available if a game is currently being executed in yuzu. When selected, it opens the game properties dialog for the current game. Thanks to @BSoDGamingYT for reminding me to do this.
* / / yuzu: Resolve -Wextra-semi warningsLioncash2020-08-163-6/+6
|/ / | | | | | | | | While we're in the same area, we can ensure GameDir member variables are always initialized to consistent values.
* | General: Tidy up clang-format warnings part 2Lioncash2020-08-132-34/+38
| |
* | game_list_worker: Do not clear entries when > 1 gamedir is presentMorph2020-08-051-1/+1
|/ | | | Previously the map of entries was being cleared while looping through each game directory, this resulted into all game directories except the last game dir to lose content metadata information. Fix this by clearing the entries only once.
* Merge pull request #4450 from Morph1984/fix-gamelist-scanningbunnei2020-08-051-2/+2
|\ | | | | game_list_worker: Fix game list subdirectory scanning
| * game_list_worker: Fix game list subdirectory scanningMorph2020-07-291-2/+2
| | | | | | | | | | | | | | | | Oddly enough the scan that feeds the manual content provider is hardcoded to scan 2 nested directories deep. This effectively rendered the scan subdirectories setting useless as the manual content provider cannot find any games located more than 2 nested directories deep. Furthermore, this behavior causes game files to be picked up by the manual content provider even if scan subdirectories is disabled. FIx this by utilizing the behavior described when populating the game list for populating the content provider.
* | yuzu: Resolve C++20 deprecation warnings related to lambda capturesLioncash2020-08-035-59/+66
| | | | | | | | | | C++20 deprecates capturing the this pointer via the '=' capture. Instead, we replace it or extend the capture specification.
* | Merge pull request #4263 from lat9nq/fix-screencaps-2David2020-08-036-14/+117
|\ \ | | | | | | screenshots: Option to save screenshots immediately in a specified directory + Linux workaround
| * | config: Make the save-as identifier more consistentlat9nq2020-07-261-2/+2
| | | | | | | | | | | | Solves an issue with restoring the value upon reloading program.
| * | configure_ui: Ensure a separator follows the returned pathlat9nq2020-07-211-3/+5
| | |
| * | configure_ui: don't use an empty stringlat9nq2020-07-211-1/+3
| | | | | | | | | | | | If the user had cancelled, it would clear the text box. That behavior was sanitized underneath, but may anyways cause inconveniences.
| * | main: Don't use as many string copieslat9nq2020-07-211-6/+8
| | | | | | | | | | | | Co-Authored-By: LC <lioncash@users.noreply.github.com>
| * | main: rewrite (save as) screenshot savinglat9nq2020-07-211-9/+18
| | | | | | | | | | | | This picks a default directory and file name. If on Windows and save-as screenshot saving is enabled, it asks the user, first defaulting to the default screenshot path, and with a default filename in the format `[title_id]_[year-mt-dy_hr-mn-sc-msc].png`. Otherwise, or on Linux for now, it simply saves a file in that directory with that file name.
| * | configuration: Setup UI to config screenshot path and savinglat9nq2020-07-215-5/+93
| | | | | | | | | | | | This adds two options to the General -> UI tab. The first disables picking a place to save the file. The second chooses a default directory for saving screenshots.
* | | Merge pull request #4438 from lioncash/localizingDavid2020-08-031-6/+5
|\ \ \ | | | | | | | | yuzu/main: Remove redundant usages of QStringLiteral("")
| * | | yuzu/main: Remove redundant usages of QStringLiteral("")Lioncash2020-07-281-6/+5
| | | | | | | | | | | | | | | | | | | | An empty QStringLiteral can more efficiently be replaced with an empty QString.
* | | | main: Add support for removing SDMC installed titlesMorph2020-07-291-14/+13
| | | |
* | | | game_list: Limit context menu options for homebrewMorph2020-07-291-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hides the following options when the title id is 0: - Open Save Location - Open Mod Data Location - Open Transferable Shader Cache - All removal options except Remove Custom Configuration
* | | | main: Remove assert for opening savedata when program_id = 0Morph2020-07-291-1/+0
| | | |
* | | | main: Silence [[fallthrough]] warningMorph2020-07-291-3/+2
| | | |
* | | | main: Split removal cases into their individual functions and address feedbackMorph2020-07-292-113/+131
| | | |
* | | | main: Connect game list remove signals to removal functionsMorph2020-07-292-5/+167
| | | |
* | | | game_list: Add "Remove" context menuMorph2020-07-292-4/+37
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | Adds the following actions: - Remove Installed Update - Remove All Installed DLC - Remove Shader Cache - Remove Custom Configuration - Remove All Installed Contents
* | | configure_graphics: Remove Force 30 FPS modeMorph2020-07-284-23/+0
|/ / | | | | | | | | | | The introduction of multicore rendered this setting non-functional as timing code was changed. This removes the setting entirely.
* | yuzu/configure_debug: Remove duplicated checkboxesFearlessTobi2020-07-261-22/+0
| | | | | | | | | | Those are already found in the Filesystem tab. They were added back to the Debug tab by mistake in the Vulkan PR.
* | Merge pull request #4377 from Morph1984/dark-themesbunnei2020-07-253-2/+7
|\ \ | | | | | | qt-themes: Add Midnight Blue qdarkstyle theme (2.8.1)
| * | wait_tree: Include Midnight Blue dark themesMorph2020-07-201-1/+4
| | |
| * | qt-themes: Add Midnight Blue qdarkstyle theme (2.8.1)James Rowe2020-07-202-1/+3
| |/ | | | | | | Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
* | configure_graphics_advnaced: clang-format mk iilat9nq2020-07-191-3/+3
| |
* | configure_graphics_advanced: Fix oversight from rebaselat9nq2020-07-191-1/+1
| |
* | configuration_shared: Remove unused functionslat9nq2020-07-192-18/+0
| | | | | | | | These were only kept for compatibility with old code during testing.
* | configuration: Use forward declares and remove extraneous structslat9nq2020-07-1910-63/+59
| |
* | configuration_shared: Make CheckState strongly typedlat9nq2020-07-192-24/+23
| | | | | | | | Also gets rid of unnecessary explicit namespace usage.
* | clang-formatlat9nq2020-07-195-38/+32
| |
* | configuration_shared: Break up tracker structs to respective classeslat9nq2020-07-1912-49/+58
| | | | | | | | One less global variable.
* | configure_system: break instead of semicolonlat9nq2020-07-191-2/+4
| | | | | | | | | | | | Makes the code more readable Co-Authored-By: LC <lioncash@users.noreply.github.com>
* | clang-formatlat9nq2020-07-193-8/+11
| |
* | configure_system: Highlight labels on startuplat9nq2020-07-191-0/+5
| | | | | | | | whoops
* | configure_graphics: Fix layout in global configlat9nq2020-07-191-1/+1
| | | | | | | | Fixes a regression where the global config takes up a lot of extra space.
* | configure_per_game: Improve style consistencylat9nq2020-07-193-54/+43
| | | | | | | | The way the configurations are set up, it is not trivial to do this. I'll leave it as is, but the API selection, and the background color and volume slider selectors are kind of not following the style.
* | configure_system: Implement highlighted overrideslat9nq2020-07-193-539/+544
| |
* | configuration_shared: Add default combobox setup functionlat9nq2020-07-193-21/+52
| | | | | | | | Not a catch-all, but helps clean up the code for when I do this a lot. Also fixes some bugs caught in configure_graphics.
* | configuration_shared: Use an int instead of a QStringlat9nq2020-07-194-22/+28
| | | | | | | | I noticed some of the code could be reduced to just passing the function an int, since I was doing the same thing over and over. Also clang-formats configure_graphics
* | configure_graphics_advanced: Implement highlighted overrideslat9nq2020-07-193-96/+146
| |
* | configuration_shared: Switch back to background colorslat9nq2020-07-191-2/+2
| | | | | | | | Let's see if I make up my mind.
* | configuration_shared: Better use global textlat9nq2020-07-192-0/+15
| | | | | | | | Also adds trackers for graphics and advanced graphics
* | configure_audio: fix UI marginslat9nq2020-07-191-1/+10
| |
* | configure_graphics: Implement highlighted overrideslat9nq2020-07-192-134/+200
| |
* | configure_audio: Implement highlighted overrideslat9nq2020-07-192-80/+87
| |
* | configuration_shared: Require name of the widget for highlightinglat9nq2020-07-193-16/+27
| | | | | | | | Prevents mass-coloring of elements later on
* | configuration_shared: Use a highlight instead of background colorlat9nq2020-07-192-6/+6
| | | | | | | | Fixes visibility in the built-in dark theme
* | configure_general: Implement manual tristate buttonslat9nq2020-07-192-17/+27
| |
* | configuration_shared: Initial functions and data for manual tristatelat9nq2020-07-192-0/+58
|/ | | | Sets up initial support for implementing colored tristate functions. These functions color a QWidget blue when it's overriding a global setting, and discolor it when not. The lack of color indicates it uses the global state, replacing the Qt::CheckState::PartiallyChecked state with the global state.
* Merge pull request #4376 from ogniK5377/dark-wait-treeRodrigo Locatti2020-07-191-11/+41
|\ | | | | frontend: Improve wait tree readability for dark themes
| * Address issuesDavid Marcec2020-07-181-6/+3
| |
| * frontend: Improve wait tree readability for dark themesDavid Marcec2020-07-181-11/+44
| |
* | Address trivial review comments.FearlessTobi2020-07-181-1/+1
| |
* | configure_ui: Address some review comments from the previous PRFearlessTobi2020-07-182-16/+21
| |
* | yuzu: Port translation support from CitraFearlessTobi2020-07-1810-84/+235
|/ | | | Co-Authored-By: Weiyi Wang <wwylele@gmail.com>
* Remove duplicate configDavid Marcec2020-07-171-2/+0
|
* Rebase for per game settingsDavid Marcec2020-07-173-0/+38
|
* async shadersDavid Marcec2020-07-172-6/+27
|
* Merge pull request #4337 from lat9nq/fix-per-game-asyncbunnei2020-07-161-0/+2
|\ | | | | main: Set async gpu properly after loading per-game setting
| * settings: Move settings sanitization to its own functionlat9nq2020-07-142-4/+2
| | | | | | | | Creates a new function that can be expanded later to fix other settings that are known to cause emulation errors across executables.
| * main: Set async gpu properly after loading per-game settinglat9nq2020-07-141-0/+4
| | | | | | | | Another error that got pass me and only noticed when I was doing the per-game settings UI rework. This prevents asynchronous GPU emulation from being disabled while multi core is enabled as a result of a poorly put together per-game config.
* | Merge pull request #4297 from FearlessTobi/skip-profile-selectbunnei2020-07-161-9/+13
|\ \ | | | | | | main/profile_select: Don't prompt for profile selection when only one is available
| * | main/profile_select: Don't prompt for profile selection when only one is availableFearlessTobi2020-07-111-9/+13
| | |
* | | Use proper install result when overwriting filesMorph2020-07-151-2/+2
| | |
* | | Merge pull request #4294 from MerryMage/cpu-opt-settingsbunnei2020-07-1413-13/+548
|\ \ \ | | | | | | | | configuration: Add settings to enable/disable specific CPU optimizations
| * | | configure_cpu: Split optimization settings off into Debug tabMerryMage2020-07-129-163/+302
| | | |
| * | | configure_cpu: Add tooltipsMerryMage2020-07-111-1/+54
| | | |
| * | | configure_cpu: Show/Hide debugging optionsMerryMage2020-07-114-0/+78
| | | |
| * | | configuration: Add settings to enable/disable specific CPU optimizationsMerryMage2020-07-1110-13/+278
| |/ /
* | | Merge pull request #4282 from Morph1984/fs-sizebunnei2020-07-143-176/+1
|\ \ \ | | | | | | | | filesystem: Set various NAND partition sizes to their defaults
| * | | settings: Remove storage size optionsMorph2020-07-103-176/+1
| | | |
* | | | configure_general: Explicitly guard use_multi_core when applying settingslat9nq2020-07-141-0/+2
| |_|/ |/| | | | | | | | This is likely an oversight during a rebase. Guards use_multi_core to be only set when the global value is in use. It should not make a difference given the current code base, but makes the code sensible.
* | | Merge pull request #4290 from lioncash/latestLC2020-07-121-2/+2
|\ \ \ | | | | | | | | CMakeLists: Make use of /std:c++latest on MSVC
| * | | CMakeLists: Make use of /std:c++latest on MSVCLioncash2020-07-111-2/+2
| | |/ | |/| | | | | | | | | | | | | | | | | | | Provides the buildbot with one builder that is always tracking the latest version of the C++ standard, allowing us to progressively rectify our code and amend any differences between standards over time instead of waiting for a complete standard change, potentially breaking a lot of code all at once.
* | | Merge pull request #3385 from Morph1984/batch-installbunnei2020-07-126-146/+343
|\ \ \ | |/ / |/| | frontend: Add support to batch install files to NAND
| * | Add additional empty check for the QStringList returned by the InstallDialogMorph2020-07-101-0/+4
| | |
| * | Update the install and progress dialogsMorph2020-07-104-80/+65
| | | | | | | | | | | | | | | - Remove the overwrite files checkbox, it will always overwrite - The progressbar now reflects the progress in terms of data transferred.
| * | Refactor batch installing filesMorph2020-07-104-196/+238
| | | | | | | | | | | | | | | | | | | | | | | | | | | Key issues fixed: - Progress dialog showing up as white/hanging/getting stuck/unresponsive. Key changes: - Progress dialog now shows progress as a function of all files instead of per nca within a file. - Overwrite existing files will overwrite all files in the selection.
| * | Add support for batch install to NANDMorph2020-07-106-124/+290
| |/ | | | | | | This adds support to batch install files to NAND
* | Merge pull request #4221 from jbeich/unused-qt-openglbunnei2020-07-101-1/+1
|\ \ | |/ |/| cmake: drop dependency on QtOpenGL
| * cmake: stop linking against QGL after c6a0ab979239Jan Beich2020-07-021-1/+1
| |
* | configuration: implement per-game configurations (#4098)lat9nq2020-07-1028-639/+1642
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Switch game settings to use a pointer In order to add full per-game settings, we need to be able to tell yuzu to switch to using either the global or game configuration. Using a pointer makes it easier to switch. * configuration: add new UI without changing existing funcitonality The new UI also adds General, System, Graphics, Advanced Graphics, and Audio tabs, but as yet they do nothing. This commit keeps yuzu to the same functionality as originally branched. * configuration: Rename files These weren't included in the last commit. Now they are. * configuration: setup global configuration checkbox Global config checkbox now enables/disables the appropriate tabs in the game properties dialog. The use global configuration setting is now saved to the config, defaulting to true. This also addresses some changes requested in the PR. * configuration: swap to per-game config memory for properties dialog Does not set memory going in-game. Swaps to game values when opening the properties dialog, then swaps back when closing it. Uses a `memcpy` to swap. Also implements saving config files, limited to certain groups of configurations so as to not risk setting unsafe configurations. * configuration: change config interfaces to use config-specific pointers When a game is booted, we need to be able to open the configuration dialogs without changing the settings pointer in the game's emualtion. A new pointer specific to just the configuration dialogs can be used to separate changes to just those config dialogs without affecting the emulation. * configuration: boot a game using per-game settings Swaps values where needed to boot a game. * configuration: user correct config during emulation Creates a new pointer specifically for modifying the configuration while emulation is in progress. Both the regular configuration dialog and the game properties dialog now use the pointer Settings::config_values to focus edits to the correct struct. * settings: split Settings::values into two different structs By splitting the settings into two mutually exclusive structs, it becomes easier, as a developer, to determine how to use the Settings structs after per-game configurations is merged. Other benefits include only duplicating the required settings in memory. * settings: move use_docked_mode to Controls group `use_docked_mode` is set in the input settings and cannot be accessed from the system settings. Grouping it with system settings causes it to be saved with per-game settings, which may make transferring configs more difficult later on, especially since docked mode cannot be set from within the game properties dialog. * configuration: Fix the other yuzu executables and a regression In main.cpp, we have to get the title ID before the ROM is loaded, else the renderer will reflect only the global settings and now the user's game specific settings. * settings: use a template to duplicate memory for each setting Replaces the type of each variable in the Settings::Values struct with a new class that allows basic data reading and writing. The new struct Settings::Setting duplicates the data in memory and can manage global overrides per each setting. * configuration: correct add-ons config and swap settings when apropriate Any add-ons interaction happens directly through the global values struct. Swapping bewteen structs now also includes copying the necessary global configs that cannot be changed nor saved in per-game settings. General and System config menus now update based on whether it is viewing the global or per-game settings. * settings: restore old values struct No longer needed with the Settings::Setting class template. * configuration: implement hierarchical game properties dialog This sets the apropriate global or local data in each setting. * clang format * clang format take 2 can the docker container save this? * address comments and style issues * config: read and write settings with global awareness Adds new functions to read and write settings while keeping the global state in focus. Files now generated per-game are much smaller since often they only need address the global state. * settings: restore global state when necessary Upon closing a game or the game properties dialog, we need to restore all global settings to the original global state so that we can properly open the configuration dialog or boot a different game. * configuration: guard setting values incorrectly This disables setting values while a game is running if the setting is overwritten by a per game setting. * config: don't write local settings in the global config Simple guards to prevent writing the wrong settings in the wrong files. * configuration: add comments, assume less, and clang format No longer assumes that a disabled UI element means the global state is turned off, instead opting to directly answer that question. Still however assumes a game is running if it is in that state. * configuration: fix a logic error Should not be negated * restore settings' global state regardless of accept/cancel Fixes loading a properties dialog and causing the global config dialog to show local settings. * fix more logic errors Fixed the frame limit would set the global setting from the game properties dialog. Also strengthened the Settings::Setting member variables and simplified the logic in config reading (ReadSettingGlobal). * fix another logic error In my efforts to guard RestoreGlobalState, I accidentally negated the IsPowered condition. * configure_audio: set toggle_stretched_audio to tristate * fixed custom rtc and rng seed overwriting the global value * clang format * rebased * clang format take 4 * address my own review Basically revert unintended changes * settings: literal instead of casting "No need to cast, use 1U instead" Thanks, Morph! Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com> * Revert "settings: literal instead of casting " This reverts commit 95e992a87c898f3e882ffdb415bb0ef9f80f613f. * main: fix status buttons reporting wrong settings after stop emulation * settings: Log UseDockedMode in the Controls group This should have happened when use_docked_mode was moved over to the controls group internally. This just reflects this in the log. * main: load settings if the file has a title id In other words, don't exit if the loader has trouble getting a title id. * use a zero * settings: initalize resolution factor with constructor instead of casting * Revert "settings: initalize resolution factor with constructor instead of casting" This reverts commit 54c35ecb46a29953842614620f9b7de1aa9d5dc8. * configure_graphics: guard device selector when Vulkan is global Prevents the user from editing the device selector if Vulkan is the global renderer backend. Also resets the vulkan_device variable when the users switches back-and-forth between global and Vulkan. * address reviewer concerns Changes function variables to const wherever they don't need to be changed. Sets Settings::Setting to final as it should not be inherited from. Sets ConfigurationShared::use_global_text to static. Co-Authored-By: VolcaEM <volcaem@users.noreply.github.com> * main: load per-game settings after LoadROM This prevents `Restart Emulation` from restoring the global settings *after* the per-game settings were applied. Thanks to BSoDGamingYT for finding this bug. * Revert "main: load per-game settings after LoadROM" This reverts commit 9d0d48c52d2dcf3bfb1806cc8fa7d5a271a8a804. * main: only restore global settings when necessary Loading the per-game settings cannot happen after the ROM is loaded, so we have to specify when to restore the global state. Again thanks to BSoD for finding the bug. * configuration_shared: address reviewer concerns except operator overrides Dropping operator override usage in next commit. Co-Authored-By: LC <lioncash@users.noreply.github.com> * settings: Drop operator overrides from Setting template Requires using GetValue and SetValue explicitly. Also reverts a change that broke title ID formatting in the game properties dialog. * complete rebase * configuration_shared: translate "Use global configuration" Uses ConfigurePerGame to do so, since its usage, at least as of now, corresponds with ConfigurationShared. * configure_per_game: address reviewer concern As far as I understand, it prevents the program from unnecessarily copying strings. Co-Authored-By: LC <lioncash@users.noreply.github.com> Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com> Co-authored-by: VolcaEM <volcaem@users.noreply.github.com> Co-authored-by: LC <lioncash@users.noreply.github.com>
* | Merge pull request #4255 from lioncash/copybunnei2020-07-081-3/+3
|\ \ | | | | | | configure_graphics: Prevent unnecessary string copies in UpdateDeviceComboBox()
| * | configure_graphics: Make use of qOverload in signals/slotsLioncash2020-07-061-2/+2
| | | | | | | | | | | | | | | While we're in the same area, we can make use of qOverload to tidy up some function pointer casts.
| * | configure_graphics: Prevent unnecessary string copies in UpdateDeviceComboBox()Lioncash2020-07-061-1/+1
| | | | | | | | | | | | | | | Unlikely to impact performance at all, but this is essentially a "free" transformation, so why not?
* | | change shortcut context for other hotkeys with file open dialogAmeer2020-07-071-4/+4
| | |
* | | Fix ss crash on game menu, fix ss on windowed modeAmeer2020-07-062-4/+6
|/ /
* | Fix merge conflicts?Ameer2020-07-0411-60/+219
|\|
| * key_manager: Correct casing of instance()Lioncash2020-07-011-1/+1
| | | | | | | | Our codebase uppercases member function names.
| * Merge pull request #3967 from FearlessTobi/keys-singletonDavid2020-07-011-1/+1
| |\ | | | | | | crypto: Make KeyManager a singleton class
| | * crypto: Make KeyManager a singleton classFearlessTobi2020-05-201-1/+1
| | | | | | | | | | | | | | | | | | Previously, we were reading the keys everytime a KeyManager object was created, causing yuzu to reread the keys file multiple hundreds of times when loading the game list. With this change, it is only loaded once. On my system, this decreased game list loading times by a factor of 20.
| * | Merge pull request #4063 from FreddyFunk/game-version-in-titlebunnei2020-07-012-13/+17
| |\ \ | | | | | | | | Add game version to window title
| | * | Reorder variables to comply with the Auzure build pipelineunknown2020-06-221-2/+2
| | | |
| | * | Add game versio to title barunknown2020-06-082-13/+17
| | | |
| * | | Merge pull request #4166 from VolcaEM/quickstart-faqbunnei2020-07-013-5/+33
| |\ \ \ | | | | | | | | | | Add "Open Quickstart Guide" and "FAQ" buttons to the Help menu
| | * | | Update FAQ function name (2/2)VolcaEM2020-06-271-2/+2
| | | | |
| | * | | Update FAQ function name (1/2)VolcaEM2020-06-271-1/+1
| | | | |
| | * | | Update function name againVolcaEM2020-06-261-1/+1
| | | | |
| | * | | Update function name (2/2)VolcaEM2020-06-261-1/+1
| | | | |
| | * | | Update function name (1/2)VolcaEM2020-06-261-1/+1
| | | | |
| | * | | Clang-format againVolcaEM2020-06-251-1/+1
| | | | |
| | * | | Clang-formatVolcaEM2020-06-251-1/+2
| | | | |
| | * | | Remove unnecessary newlineVolcaEM2020-06-251-1/+0
| | | | |
| | * | | Merge branch 'master' into quickstart-faqVolcaEM2020-06-2512-106/+66
| | |\ \ \
| | * | | | Fix typo 2: electric boogalooVolcaEM2020-06-251-1/+1
| | | | | |
| | * | | | Use QUrl (2/2)VolcaEM2020-06-251-6/+5
| | | | | |
| | * | | | Use QUrl (1/2)VolcaEM2020-06-251-1/+1
| | | | | |
| | * | | | Fix formattingVolcaEM2020-06-251-2/+2
| | | | | |
| | * | | | Fix typoVolcaEM2020-06-251-1/+1
| | | | | |
| | * | | | Add "Open Quickstart Guide" and "FAQ" buttons to the Help menuVolcaEM2020-06-253-0/+48
| | | | | | | | | | | | | | | | | | While we're at it, also refactor the function used by OnOpenModsPage to be compatible with other URLs
| * | | | | Merge pull request #4182 from Kewlan/fullscreen-hotkey-fixbunnei2020-06-301-4/+5
| |\ \ \ \ \ | | | | | | | | | | | | | | hotkeys: Fix issues caused when changing the fullscreen hotkey
| | * | | | | Fix issues caused when changing the fullscreen hotkeyKewlan2020-06-271-4/+5
| | | | | | |
| * | | | | | YuzuQT: Hide Speed UI on Multicore.Fernando Sahmkow2020-06-271-1/+1
| | | | | | |
| * | | | | | Clang Format.Fernando Sahmkow2020-06-274-7/+11
| | | | | | |
| * | | | | | General: Correct rebase, sync gpu and context management.Fernando Sahmkow2020-06-271-12/+17
| | | | | | |
| * | | | | | General: Cleanup legacy code.Fernando Sahmkow2020-06-271-1/+1
| | | | | | |
| * | | | | | Bootmanager/CPU_Manager: Correct shader caches and sync GPU on OpenGL.Fernando Sahmkow2020-06-271-0/+4
| | | | | | |
| * | | | | | ARM/WaitTree: Better track the CallStack for each thread.Fernando Sahmkow2020-06-271-11/+14
| | | | | | |
| * | | | | | GUI: Make multicore only work with Async and add GUI for multicore.Fernando Sahmkow2020-06-273-3/+29
| | | | | | |
| * | | | | | General: Fix microprofile on dynarmic/svc, fix wait tree showing which threads were running.Fernando Sahmkow2020-06-271-2/+10
| | | | | | |
| * | | | | | General: Fix Stop functionFernando Sahmkow2020-06-271-2/+4
| | | | | | |
| * | | | | | General: Initial Setup for Single Core.Fernando Sahmkow2020-06-272-0/+13
| | | | | | |
| * | | | | | Yuzu/Debuggers: Correct Wait Tree for Paused threads.Fernando Sahmkow2020-06-271-2/+10
| | | | | | |
| * | | | | | General: Setup yuzu threads' microprofile, naming and registry.Fernando Sahmkow2020-06-272-1/+5
| | | | | | |
| * | | | | | General: Recover Prometheus project from harddrive failure Fernando Sahmkow2020-06-273-16/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit: Implements CPU Interrupts, Replaces Cycle Timing for Host Timing, Reworks the Kernel's Scheduler, Introduce Idle State and Suspended State, Recreates the bootmanager, Initializes Multicore system.
| * | | | | | Merge pull request #4097 from kevinxucs/kevinxucs/device-pixel-scaling-floatbunnei2020-06-271-1/+1
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | Fix framebuffer size on fractional scaling display
| | * | | | | | Fix framebuffer size on fractional scaling display.Kaiwen Xu2020-06-171-1/+1
| | | | | | | |
| * | | | | | | Merge pull request #4164 from Kewlan/mute-audio-hotkeybunnei2020-06-273-2/+6
| |\ \ \ \ \ \ \ | | |_|_|_|/ / / | |/| | | | | | hotkeys: Add a "Mute Audio" hotkey
| | * | | | | | Add a "Mute Audio" hotkeyKewlan2020-06-263-2/+6
| | | |/ / / / | | |/| | | |
| * | | | | | Merge pull request #4136 from VolcaEM/modsbunnei2020-06-253-0/+19
| |\ \ \ \ \ \ | | |/ / / / / | |/| | | | | Add a "Open Mods Page" button to the GUI
| | * | | | | Correct function name (2/2)VolcaEM2020-06-211-2/+2
| | | | | | |
| | * | | | | Correct function name (1/2)VolcaEM2020-06-211-1/+1
| | | | | | |
| | * | | | | Clang-formatVolcaEM2020-06-211-1/+1
| | | | | | |
| | * | | | | Remove unnecessary conversionVolcaEM2020-06-211-3/+2
| | | | | | |
| | * | | | | Address review comment by LioncashVolcaEM2020-06-211-1/+1
| | | | | | | | | | | | | | | | | | | | | Co-authored-by: LC <mathew1800@gmail.com>
| | * | | | | Add a "Open Mods Page" button to the GUIVolcaEM2020-06-213-0/+20
| | | |/ / / | | |/| | |
| * | | | | Merge pull request #3948 from Morph1984/log-cpu-instructionsbunnei2020-06-231-1/+14
| |\ \ \ \ \ | | | | | | | | | | | | | | main/common: Log/append AVX/FMA to the Host CPU string if available and add AVX512 detection
| | * | | | | main: Append AVX and FMA instructions to cpu stringMorph2020-06-201-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Append AVX and FMA instructions to cpu string if the host cpu supports them
| * | | | | | Fix: fatal error CVT1100 when compiling manifest fileFearlessTobi2020-06-211-1/+1
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Occurs when doing a local compile in MSVC build. The compiler I'm using is as below: Microsoft Visual Studio Community 2019 Preview Version 16.6.0 Preview 5.0 Fixes this error: CVTRES : fatal error CVT1100: duplicate resource. type:MANIFEST, name:1, language:0x0409 LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt I have put 0 since previous name was 1. If have other names in mind, please let me know. Co-Authored-By: dragios <dragios@users.noreply.github.com>
* | | | | | Fix unnecessary diffsAmeer2020-07-021-26/+24
| | | | | |
* | | | | | Add LR triggers as axes, half press to initiate a press, add GC axis id in config, clarify some code blocks for better readabilityAmeer2020-07-021-25/+46
| | | | | |
* | | | | | Small quality of life indication that mapped button is GCAmeer2020-06-231-2/+2
| | | | | |
* | | | | | Singleton GC Adapter class, remove globals, fix naming conventionAmeer2020-06-221-26/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix clang formatting Manual fix for configure_input_player formatting Add missing lib usb cmake command
* | | | | | Clang FormattingAmeer2020-06-212-79/+69
| | | | | |
* | | | | | GC Adapter ImplementationAmeer2020-06-212-45/+94
|/ / / / /
* | | | | Merge pull request #4099 from MerryMage/macOS-buildbunnei2020-06-202-2/+19
|\ \ \ \ \ | | | | | | | | | | | | Fix compilation on macOS
| * | | | | bootmanager: Remove references to OpenGL for macOSMerryMage2020-06-182-2/+19
| | |/ / / | |/| | | | | | | | | | | | | OpenGL macOS headers definitions clash heavily with each other
* | | | | Add translation of "Current Boxcat Events"David Marcec2020-06-201-3/+2
| | | | |
* | | | | Fix compilation when not building with boxcatDavid Marcec2020-06-191-0/+5
|/ / / / | | | | | | | | | | | | Fixes compilation when trying to build without boxcat enabled
* | | | Merge pull request #4041 from ReinUsesLisp/arb-decompbunnei2020-06-161-3/+0
|\ \ \ \ | | | | | | | | | | gl_arb_decompiler: Implement an assembly shader decompiler
| * | | | yuzu/configuration: Show assembly shaders check boxReinUsesLisp2020-06-111-3/+0
| | |/ / | |/| |
* | | | Merge pull request #3966 from Morph1984/hide-internal-resolution-uibunnei2020-06-164-98/+2
|\ \ \ \ | |/ / / |/| | | yuzu/frontend: Remove internal resolution option
| * | | yuzu/frontend: Remove internal resolution optionMorph2020-06-064-98/+2
| | | |
* | | | Merge pull request #4009 from ogniK5377/macro-jit-prodbunnei2020-06-043-0/+19
|\ \ \ \ | |/ / / |/| | | video_core: Implement Macro JIT
| * | | Implement macro JITDavid Marcec2020-05-303-0/+19
| |/ /
* | | Actually save the input when clearing/resetting to defaultFearlessTobi2020-06-031-0/+3
| | | | | | | | | | | | Co-Authored-By: xperia64 <xperiancedapps@gmail.com>
* | | Merge pull request #3958 from FernandoS27/gl-debugbunnei2020-05-311-0/+3
|\ \ \ | |/ / |/| | OpenGL: Enable Debug Context and Synchronous debugging when graphics debugging is enabled
| * | OpenGL: Enable Debug Context and Synchronous debugging when graphics debugging is enabled.Fernando Sahmkow2020-05-181-0/+3
| | | | | | | | | | | | | | | This commit aims to help easing debugging of driver crashes without having to modify existing code.
* | | Merge pull request #3954 from Morph1984/log-memory-amountbunnei2020-05-281-0/+5
|\ \ \ | | | | | | | | main: Log host system memory parameters
| * | | Fix macOS code and change "Swapfile" to "Swap"Morph2020-05-271-1/+1
| | | |
| * | | main: Log host system memory parametersMorph2020-05-171-0/+5
| |/ / | | | | | | | | | Logs both physical memory and swapfile sizes, this is useful for support.
* | | Merge pull request #3964 from ReinUsesLisp/arb-integrationbunnei2020-05-243-0/+20
|\ \ \ | | | | | | | | renderer_opengl: Add assembly program code paths
| * | | yuzu: Add frontend settings for assembly shadersReinUsesLisp2020-05-193-0/+20
| |/ / | | | | | | | | | | | | Add settings for assembly shaders. Currently hidden to avoid users from accidentally enabled them.
* / / yuzu/discord_impl: Update the applicationID (#3977)Tobias2020-05-221-1/+1
|/ /
* | Merge pull request #3665 from bunnei/device-savebunnei2020-05-164-27/+49
|\ \ | | | | | | FS: Improve emulation of device saves
| * | yuzu: game_list: Fix 'Open Save Data Location' for device saves.bunnei2020-05-114-27/+49
| | |
* | | frontend: Set minimum window size to 640x360 instead of 1280x720 (#3413)Morph2020-05-154-7/+30
| | |
* | | Merge pull request #3927 from jroweboy/fix-bugbunnei2020-05-141-8/+8
|\ \ \ | | | | | | | | Frontend: Remove tracking for context wrapper
| * | | Frontend: Remove tracking for context wrapperJames Rowe2020-05-121-8/+8
| |/ /
* / / core: settings: Add a setting for time zone.bunnei2020-05-114-8/+255
|/ /
* / Menubar: fix mouse tracking bugFearlessTobi2020-05-061-4/+0
|/ | | | Co-Authored-By: Vitor K <vitor-k@users.noreply.github.com>
* Merge pull request #3637 from FearlessTobi/port-5094bunnei2020-05-047-0/+78
|\ | | | | Port citra-emu/citra#5094: "yuzu: Option to hide mouse on inactivity"
| * yuzu: Option to hide mouse on inactivityFearlessTobi2020-04-207-0/+78
| | | | | | | | Co-Authored-By: Vitor K <vitor-k@users.noreply.github.com>
* | Merge pull request #3771 from benru/dump-romfs-with-updatesbunnei2020-04-291-1/+3
|\ \ | | | | | | Dump RomFS command to include Updates
| * | Update src/yuzu/main.cpp with missing constBen Russell2020-04-231-1/+1
| | | | | | | | | Co-Authored-By: Mat M. <mathew1800@gmail.com>
| * | Dump RomFS command to include UpdatesBen Russell2020-04-231-1/+3
| | | | | | | | | | | | | | | | | | Patch the RomFS with the selected updates before dumping. Previously the resulting RomFS only contained data from the original title. To dump the RomFS without updates the user can disable the update under Properties before choosing Dump RomFS.
* | | Merge pull request #3742 from FernandoS27/command-listbunnei2020-04-273-0/+12
|\ \ \ | | | | | | | | Optimize GPU Command Lists and Introduce Fast GPU Time Option
| * | | Clang Format.Fernando Sahmkow2020-04-231-1/+2
| | | |
| * | | GPU: Add Fast GPU Time Option.Fernando Sahmkow2020-04-233-0/+11
| |/ /
* | | Merge pull request #3795 from vitor-k/fix-folderbunnei2020-04-261-7/+7
|\ \ \ | | | | | | | | Fix "Port citra-emu/citra#4956: "Fixes to game list sorting" #3611"
| * | | Fix the mistake in the port and update the comment for clarityVitor Kiguchi2020-04-251-7/+7
| | | |
* | | | Merge pull request #3791 from Kewlan/hotkey-config-plusbunnei2020-04-265-18/+116
|\ \ \ \ | | | | | | | | | | configuration: Add Restore Default and Clear options to hotkeys
| * | | | Add Restore Defaults and Clear options to hotkeysKewlan2020-04-245-18/+116
| | | | |
* | | | | Merge pull request #3761 from Kewlan/stick-modifier-sliderbunnei2020-04-263-30/+52
|\ \ \ \ \ | |_|/ / / |/| | | | configure_input_player: Use slider to edit modifier scale
| * | | | Edit modifier_scale with the deadzone sliderKewlan2020-04-233-30/+52
| |/ / /
* | | | Merge pull request #3760 from Morph1984/trailing-filedir-separatorbunnei2020-04-241-1/+1
|\ \ \ \ | |_|/ / |/| | | frontend/filesystem: Add a trailing separator to the string path
| * | | Add a trailing separator to the string pathMorph2020-04-221-1/+1
| |/ / | | | | | | | | | Fixes #3643
* | | Merge pull request #3697 from lioncash/declarationsbunnei2020-04-231-0/+2
|\ \ \ | | | | | | | | CMakeLists: Enable -Wmissing-declarations on Linux builds
| * | | General: Resolve warnings related to missing declarationsLioncash2020-04-171-0/+2
| | | |
* | | | Clang format.Fernando Sahmkow2020-04-221-1/+2
| | | |
* | | | UI: Replasce accurate GPU option for GPU Accuracy LevelFernando Sahmkow2020-04-223-11/+34
| |/ / |/| |
* | | dynarmic: Add option to disable CPU JIT optimizationsMerryMage2020-04-203-0/+12
| |/ |/|
* | Merge pull request #3655 from FearlessTobi/ui-retext-yuzubunnei2020-04-193-64/+18
|\ \ | |/ |/| yuzu/main: Add better popup texts and remove duplicated actions
| * yuzu/main: Add better popup texts and remove duplicated actionsFearlessTobi2020-04-143-64/+18
| | | | | | | | | | Makes popup texts more compact and clear and also links our quickstart guide now. Also removes OnMenuSelectEmulatedDirectory from the File dropdown, as the action already exists in the Filesystem tab and provides better visual feedback there.
* | CMakeLists: Specify -Wextra on linux buildsLioncash2020-04-163-6/+8
|/ | | | | | | | | | | Allows reporting more cases where logic errors may exist, such as implicit fallthrough cases, etc. We currently ignore unused parameters, since we currently have many cases where this is intentional (virtual interfaces). While we're at it, we can also tidy up any existing code that causes warnings. This also uncovered a few bugs as well.
* Merge pull request #3611 from FearlessTobi/port-4956bunnei2020-04-112-8/+22
|\ | | | | Port citra-emu/citra#4956: "Fixes to game list sorting"
| * yuzu: Fixes to game list sortingFearlessTobi2020-04-062-8/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge pull request #3594 from ReinUsesLisp/vk-instancebunnei2020-04-114-90/+57
|\ \ | | | | | | yuzu: Drop SDL2 and Qt frontend Vulkan requirements
| * | yuzu: Drop SDL2 and Qt frontend Vulkan requirementsReinUsesLisp2020-04-074-55/+51
| | | | | | | | | | | | Create Vulkan instances and surfaces from the Vulkan backend.
| * | renderer_vulkan: Query device names from the backendReinUsesLisp2020-04-071-35/+6
| |/
* | Merge pull request #3607 from FearlessTobi/input-kmsbunnei2020-04-103-18/+21
|\ \ | | | | | | yuzu/configuration: Fix input profiles and a wrong assert
| * | yuzu/configuration: Only assert that all buttons exist when we are handling the click for a button deviceFearlessTobi2020-04-052-14/+16
| | | | | | | | | | | | This fixes failed assertions that were present in yuzu master code for 18 months.
| * | yuzu/configure_input_simple: Fix "Docked Joycons" controller profileFearlessTobi2020-04-051-4/+5
| |/ | | | | | | This was incorrectly using PlayerIndex 1 when calling the ConfigureDialog.
* | Merge pull request #3623 from ReinUsesLisp/renderdoc-bind-spamFernando Sahmkow2020-04-101-1/+0
|\ \ | | | | | | qt/bootmanager: Remove unnecessary glBindFramebuffer
| * | qt/bootmanager: Remove unnecessary glBindFramebufferReinUsesLisp2020-04-081-1/+0
| |/ | | | | | | | | | | | | | | Presentation context always has GL_DRAW_FRAMEBUFFER_BINDING as zero. There is no need to bind the default framebuffer constantly. According to Nsight this was using ~0.7ms per frame and it broke renderdoc captures.
* | Place SL and SR in the right most column.Kewlan2020-04-081-2/+2
| |
* | Addressed feedback: switched to snake case and fixed clang-format errorsSilverBeamx2020-04-072-5/+6
| |
* | Addressed feedback: removed CMake hack in favor of building the necessary strings via the supplied title formatSilverBeamx2020-04-072-2/+14
|/
* Merge pull request #3579 from Kewlan/reorder-shoulderbunnei2020-04-031-36/+36
|\ | | | | configuration: Reorder shoulder buttons
| * Re-order the shoulder buttons both in the configuration menu, and in the code.Kewlan2020-03-291-36/+36
| |
* | Merge pull request #3552 from jroweboy/single-contextRodrigo Locatti2020-04-023-224/+174
|\ \ | |/ |/| Refactor Context management (Fixes renderdoc on opengl issues)
| * Frontend: Don't call DoneCurrent if the context isnt already currentJames Rowe2020-03-301-1/+4
| |
| * Address review and fix broken yuzu-tester buildJames Rowe2020-03-262-70/+36
| |
| * Frontend/GPU: Refactor context managementJames Rowe2020-03-253-217/+198
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes the GraphicsContext to be managed by the GPU core. This eliminates the need for the frontends to fool around with tricky MakeCurrent/DoneCurrent calls that are dependent on the settings (such as async gpu option). This also refactors out the need to use QWidget::fromWindowContainer as that caused issues with focus and input handling. Now we use a regular QWidget and just access the native windowHandle() directly. Another change is removing the debug tool setting in FrameMailbox. Instead of trying to block the frontend until a new frame is ready, the core will now take over presentation and draw directly to the window if the renderer detects that its hooked by NSight or RenderDoc Lastly, since it was in the way, I removed ScopeAcquireWindowContext and replaced it with a simple subclass in GraphicsContext that achieves the same result
* | Merge pull request #3573 from FearlessTobi/port-5089bunnei2020-03-281-1/+1
|\ \ | | | | | | Port citra-emu/citra#5089: "Set render window's focus policy to Qt::StrongFocus"
| * | Set render window to also accept focus via tabbing (Qt::StrongFocus) (#5089)Vitor K2020-03-271-1/+1
| | |
* | | yuzu: fix the stuck in fullscreen mode bugFearlessTobi2020-03-281-0/+8
|/ / | | | | | | Co-Authored-By: Valentin Vanelslande <vvanelslandedev@gmail.com>
* | Merge pull request #3453 from FearlessTobi/remove-pause-lockbunnei2020-03-261-5/+0
|\ \ | |/ |/| yuzu: Remove exit lock for game pausing
| * yuzu: Remove exit lock for game pausingFearlessTobi2020-02-241-5/+0
| | | | | | | | | | | | | | | | | | This removes the "exit lock" popup from yuzu when pausing a game. Motivation The exit lock feature is broken in many ways and doesn't work properly in a lot of games, causing it to appear every time you want to pause the game or stop it, even in places where it wouldn't on Switch. Additionally, the feature of pausing a game doesn't exist like this on Switch and yuzu should be guaranteed to be deterministic anyway, so pausing the emulation shouldn't be able to interrupt any critical processes in any way.
* | Merge pull request #3531 from makigumo/yuzu_masterbunnei2020-03-224-8/+60
|\ \ | | | | | | set: implement GetRegionCode
| * | set: implement GetRegionCodeDan2020-03-194-8/+60
| | |
* | | Merge pull request #3526 from FearlessTobi/bcat-disablebunnei2020-03-201-1/+1
|\ \ \ | |/ / |/| | bcat: Disable Boxcat backend by default
| * | bcat: Disable Boxcat backend by defaultFearlessTobi2020-03-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit disables the Boxcat backend by default for new users of yuzu. There's several reasons as to why this is done: 1. Boxcat currently only actually has an impact on 3 games and doesn't influence any core mechanics of them 2. It causes a plethora of issues when enabled such as games like Crash Team Racing, Diablo 3 and Tales of Vesperia not booting at all or hanging 3. It causes https://github.com/yuzu-emu/yuzu/issues/2957 to happen. This makes the configuration menu totally unusable for many Linux users of yuzu I think those points show that currently the negative impact of Boxcat outweighs its benefits and should therefore be disabled by default. For users who are eager to use the extra features provided by it, they can still just turn it on in the settings.
* | | yuzu: Save sound output mode and set it to Stereo by defaultFearlessTobi2020-03-172-0/+6
|/ /
* | yuzu/loading_screen: Remove unused shader progress modeReinUsesLisp2020-03-091-16/+1
| |
* | Merge pull request #3452 from Morph1984/anisotropic-filteringbunnei2020-03-089-33/+208
|\ \ | | | | | | frontend/Graphics: Add "Advanced" graphics tab and experimental Anisotropic Filtering support
| * | Create an "Advanced" tab in the graphics configuration tab and add anisotropic filtering levels.Morph2020-02-289-33/+208
| | |
* | | core: Implement separate A32/A64 ARM interfaces.bunnei2020-03-031-2/+2
|/ /
* | frontend: qt: bootmanager: Acquire a shared context in main emu thread.bunnei2020-02-262-12/+12
| |
* | frontend: qt: bootmanager: Vulkan: Restore support for VK backend.bunnei2020-02-262-103/+128
| |
* | frontend: qt: bootmanager: OpenGL: Implement separate presentation thread.bunnei2020-02-262-222/+254
| |
* | frontent: qt: main: Various updates/refactoring for separate presentation thread.bunnei2020-02-262-29/+27
| |
* | core: frontend: Refactor scope_acquire_window_context to scope_acquire_context.bunnei2020-02-261-2/+2
| |
* | core: settings: Add setting to enable vsync, which is on by default.bunnei2020-02-263-0/+15
|/
* Merge pull request #3412 from Morph1984/aspect-ratiobunnei2020-02-183-0/+39
|\ | | | | GUI: Add aspect ratio dropdown
| * Add 4:3 aspect ratio and address feedbackMorph2020-02-141-0/+5
| |
| * Add following aspect ratios: 16:9, 21:9, Stretch to WindowMorph2020-02-143-0/+34
| | | | | | | | Available as a drop down within the configure graphics tab.
* | Kernel: Change WaitObject to Synchronization object. In order to better reflect RE.Fernando Sahmkow2020-02-112-25/+32
|/
* Merge pull request #3391 from Morph1984/remove-unknownZach Hilman2020-02-095-15/+1
|\ | | | | Remove option "Show files with type 'Unknown'"
| * Remove option "Show files with type 'Unknown'"Morph2020-02-095-15/+1
| |
* | Merge pull request #3360 from CJBok/statusbar-buttonsbunnei2020-02-032-6/+94
|\ \ | | | | | | GUI: Togglable graphics settings buttons in status bar
| * | clangCJBok2020-01-291-2/+2
| | |
| * | minor correctionsCJBok2020-01-291-2/+2
| | |
| * | GUI: Togglable graphics settings buttons in status barCJBok2020-01-282-7/+95
| |/
* | Merge pull request #3337 from ReinUsesLisp/vulkan-stagedbunnei2020-02-0311-168/+544
|\ \ | | | | | | yuzu: Implement Vulkan frontend
| * | yuzu/bootmanager: Define Vulkan widget only when enabledReinUsesLisp2020-01-291-0/+2
| | |
| * | yuzu: Implement Vulkan frontendReinUsesLisp2020-01-2910-168/+535
| | | | | | | | | | | | | | | Adds a Qt and SDL2 frontend for Vulkan. It also finishes the missing bits on Vulkan initialization.
| * | settings: Add settings for graphics backendReinUsesLisp2020-01-291-0/+7
| |/
* | Merge pull request #3268 from CJBok/deadzonebunnei2020-02-013-1/+106
|\ \ | |/ |/| GUI: Deadzone controls for sdl engine at configuration input
| * const correctionCJBok2020-01-031-1/+1
| |
| * clangCJBok2020-01-031-22/+22
| |
| * Update configure_input_player.cppCJBok2020-01-031-23/+23
| |
| * Added deadzone controls for sdl engine at input settingsCJBok2020-01-033-24/+129
| |
* | Merge pull request #3343 from FearlessTobi/ui-tabbunnei2020-01-258-104/+76
|\ \ | | | | | | yuzu/configuration: create UI tab and move gamelist settings there
| * | yuzu/configuration: create UI tab and move gamelist settings thereFearlessTobi2020-01-248-104/+76
| | |
* | | Input: UDP Client to provide motion and touch controlsfearlessTobi2020-01-231-0/+17
|/ / | | | | | | | | | | | | | | An implementation of the cemuhook motion/touch protocol, this adds the ability for users to connect several different devices to citra to send direct motion and touch data to citra. Co-Authored-By: jroweboy <jroweboy@gmail.com>
* | GUI: fix minor issues with dark themesBartosz Kaszubowski2020-01-221-3/+3
| | | | | | | | GUI: rename and reorder themes
* | yuzu_qt: config: Move audio to its own tab.bunnei2020-01-201-3/+3
| | | | | | | | - We have some important audio settings, makes them more discoverable.
* | GUI/gamelist: add "None" as an option for second row and remove dynamically duplicate row options (#3309)Bartosz Kaszubowski2020-01-193-14/+53
| | | | | | | | | | | | * GUI/gamelist: add "None" as an option for second row and remove duplicated row options * fix clang-format warnings
* | Merge pull request #3298 from Simek/missing_hotkeysbunnei2020-01-182-0/+17
|\ \ | | | | | | GUI: add few missing hotkeys to main menu
| * | GUI: add few missing hotkeys to main menuBartosz Kaszubowski2020-01-132-0/+17
| | |
* | | Add headbar icon on LinuxTotalCaesar6592020-01-181-1/+1
| | |
* | | GUI/configure: resize hotkeys column to contentBartosz Kaszubowski2020-01-121-0/+1
|/ /
* | yuzu/bootmanager: Remove {glx,wgl}MakeCurrent on SwapBuffersReinUsesLisp2020-01-061-9/+2
| | | | | | | | | | | | | | | | MakeCurrent is a costly (according to Nsight's profiler it takes a tenth of a millisecond to complete), and we don't have a reason to call it because: - Qt no longer signals a warning if it's not called - yuzu no longer supports macOS
* | yuzu: Remove Maxwell debuggerReinUsesLisp2020-01-038-387/+0
|/ | | | | This was carried from Citra and wasn't really used on yuzu. It also adds some runtime overhead. This commit removes it from yuzu's codebase.
* core/memory: Migrate over Read{8, 16, 32, 64, Block} to the Memory classLioncash2019-11-271-3/+4
| | | | | | | | | | | | | | With all of the trivial parts of the memory interface moved over, we can get right into moving over the bits that are used. Note that this does require the use of GetInstance from the global system instance to be used within hle_ipc.cpp and the gdbstub. This is fine for the time being, as they both already rely on the global system instance in other functions. These will be removed in a change directed at both of these respectively. For now, it's sufficient, as it still accomplishes the goal of de-globalizing the memory code.
* kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for kernel objects. (#3154)bunnei2019-11-252-10/+9
| | | | | | * kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for kernel objects. - See https://github.com/citra-emu/citra/pull/4710 for details.
* Merge pull request #3140 from FearlessTobi/port-4953bunnei2019-11-211-13/+0
|\ | | | | Port citra-emu/citra#4953: "citra_qt/main.ui: remove unused actions "Load Symbol Map..." and "Select Game Directory...""
| * citra_qt/main.ui: remove unused actions "Load Symbol Map..." and...Tobias2019-11-191-13/+0
| | | | | | | | | | ..."Select Game Directory..." Co-authored-by: vvanelslande <vvanelslandedev@gmail.com>
* | Merge pull request #3047 from ReinUsesLisp/clip-controlbunnei2019-11-151-0/+3
|\ \ | | | | | | gl_rasterizer: Emulate viewport flipping with ARB_clip_control
| * | gl_rasterizer: Emulate viewport flipping with ARB_clip_controlReinUsesLisp2019-11-071-0/+3
| | | | | | | | | | | | | | | | | | | | | Emulates negative y viewports with ARB_clip_control. This allows us to more easily emulated pipelines with tessellation and/or geometry shader stages. It also avoids corrupting games with transform feedbacks and negative viewports (gl_Position.y was being modified).
* | | yuzu: configure_web: Use Base64 encoded token for simplifying user experience.bunnei2019-11-092-32/+53
|/ /
* | kernel: events: Remove ResetType::Automatic.bunnei2019-11-032-25/+0
| | | | | | | | | | | | | | | | - This does not actually seem to exist in the real kernel - games reset these automatically. # Conflicts: # src/core/hle/service/am/applets/applets.cpp # src/core/hle/service/filesystem/fsp_srv.cpp
* | citra_qt: add amiibo drag and drop supportFearlessTobi2019-11-032-4/+18
| | | | | | | | Co-Authored-By: Valentin Vanelslande <vvanelslandedev@gmail.com>
* | Correct compiling errors and addapt to the new interface.Fernando Sahmkow2019-10-151-4/+1
| |
* | fixed clang format & addressed feedbackFreddyFunk2019-10-101-26/+24
| |
* | yuzu/configure_input_player: Fix input handling for ZL and ZR from controllers with analog triggersFreddyFunk2019-10-101-7/+23
| |
* | Merge pull request #2910 from FearlessTobi/port-4930bunnei2019-10-106-0/+38
|\ \ | | | | | | Port citra-emu/citra#4930: "Pause when in background"
| * | yuzu: Pause when in backgroundFearlessTobi2019-09-266-0/+38
| |/ | | | | | | Co-Authored-By: Vitor K <vitor-k@users.noreply.github.com>
* | qt: Fix game name format errorZach Hilman2019-10-061-2/+2
| |
* | Merge pull request #2942 from ReinUsesLisp/clang-warningsbunnei2019-10-065-13/+23
|\ \ | | | | | | Silence miscellaneous warnings
| * | yuzu/game_list_worker: Silence warningsReinUsesLisp2019-10-052-8/+9
| | |
| * | yuzu/game_list: Silence -Wswitch and -Wunused-variableReinUsesLisp2019-10-052-5/+12
| | |
| * | yuzu/configure_service: Silence -WswitchReinUsesLisp2019-10-051-0/+2
| | |
* | | qt: Change titlebar formattingZach Hilman2019-10-051-6/+15
|/ /
* | Merge pull request #2898 from FearlessTobi/port-4004bunnei2019-10-042-1/+3
|\ \ | | | | | | Port citra-emu/citra#4004: "qt_themes: add two colorful themes"
| * | qt_themes: add two colorful themesFearlessTobi2019-09-222-1/+3
| | | | | | | | | | | | | | | | | | These two colorful themes are based on the Default and Dark themes, and contain icons that are colored rather than black and white. These icons come from icons8.com and they have been slightly revised by me. I'm pretty sure I was licensed to use them for Citra. Co-Authored-By: Pengfei Zhu <zhupengfei321@sina.cn>
* | | qt: Add service dialogZach Hilman2019-10-024-11/+15
| | |
* | | boxcat: Implement events global fieldZach Hilman2019-09-303-18/+29
| | |
* | | configure_service: Allow Qt to open external linksZach Hilman2019-09-301-0/+3
| | |
* | | yuzu: Add UI tab to configure BCAT servicesZach Hilman2019-09-306-0/+302
| | | | | | | | | | | | Also displays current events if boxcat is selected.
* | | settings: Add option to set BCAT backendZach Hilman2019-09-302-0/+18
| |/ |/|
* | Merge pull request #2683 from DarkLordZach/lock-exitDavid2019-09-222-1/+44
|\ \ | | | | | | am: Implement exit locking and self exit commands
| * | main: Use const on all variable initializationsZach Hilman2019-09-221-2/+2
| | |
| * | qt: Prompt user for confirmation if exit lock is activeZach Hilman2019-09-222-0/+43
| |/
* / Add missing includeFearlessTobi2019-09-221-0/+1
|/
* Merge pull request #2430 from DarkLordZach/fs-controllerDavid2019-09-2211-73/+756
|\ | | | | core: Implement FileSystemController to deglobalize FS services
| * configure_debug: Move reporting option to loggingZach Hilman2019-09-225-44/+42
| |
| * config: Remove Dump options from configure_debugZach Hilman2019-09-214-47/+39
| |
| * yuzu: Add UI to manage filesystem paths and sizesZach Hilman2019-09-216-1/+627
| |
| * settings: Add options for managing gamecard emulationZach Hilman2019-09-211-0/+36
| |
| * settings: Add options for setting storage sizesZach Hilman2019-09-211-1/+19
| |
| * yuzu: Port old usages of Filesystem namespace to FilesystemControllerZach Hilman2019-09-211-14/+27
| |
* | Merge pull request #2883 from ogniK5377/log-gameZach Hilman2019-09-221-3/+3
|\ \ | |/ |/| Log the current title id and game name which is booting
| * Swapped TID and Game name to make it easier to parseDavid Marcec2019-09-211-1/+1
| |
| * Log the current title id and game name which is bootingDavid Marcec2019-09-211-3/+3
| | | | | | | | Spit out a LOG_INFO of the current game name and it's title id in the log. This helps to read log files and figure out which games have which issues
* | Merge pull request #2885 from Hexagon12/port-4944David2019-09-211-0/+8
|\ \ | | | | | | Port citra-emu/citra#4944: "Added Host CPU and OS to log"
| * | Added Host CPU and OS to logpbarilla2019-09-211-0/+8
| |/
* | Merge pull request #2806 from FearlessTobi/port-4882David2019-09-211-0/+5
|\ \ | | | | | | Port citra-emu/citra#4882: "Add frametime logging for tracking performance over time"
| * | Add frametime logging for tracking performance over timefearlessTobi2019-09-101-0/+5
| |/ | | | | | | Co-Authored-By: jroweboy <jroweboy@gmail.com>
* / When docked mode is checked, uncheck "joycons docked"Morph2019-09-171-0/+2
|/
* Merge pull request #2797 from FearlessTobi/port-4877David2019-09-051-0/+11
|\ | | | | Port citra-emu/citra#4877: "citra_qt: on osx chdir to bundle dir to allow detection of user folder"
| * Address review commentsFearlessTobi2019-09-051-1/+4
| |
| * Guard unistd.h with MacOS only macroWeiyi Wang2019-08-221-1/+3
| | | | | | | | | | Fix compile error on Windows caused by #4877 Weird, I thought I saw this guard during the code review...
| * citra_qt: on osx chdir to bundle dir to allow detection of user folderB3n302019-08-221-0/+6
| |
* | Merge pull request #2808 from FearlessTobi/port-4866David2019-09-051-20/+24
|\ \ | | | | | | Port citra-emu/citra#4866: "configure_dialog: reverse tab map to avoid logic based on user-facing/translatable text"
| * | configure_dialog: reverse tab map to avoid logic based on user-facing/translatable textfearlessTobi2019-09-041-20/+24
| |/ | | | | | | Co-Authored-By: Weiyi Wang <wwylele@gmail.com>
* | yuzu/configure: move speed limiter to generalFearlessTobi2019-09-054-33/+36
| | | | | | | | | | | | The speed limiter being a frame limiter is an implmentation detail and can be changed in the future. What user care about is that it limit the emulation speed in genenral (not just graphics but also audio+input) Co-Authored-By: Weiyi Wang <wwylele@gmail.com>
* | Merge pull request #2830 from FearlessTobi/port-4911David2019-09-051-7/+10
|\ \ | | | | | | Port citra-emu/citra#4911: "Add cancel option to analog stick configuration"
| * | Add cancel option to analog stick configurationfearlessTobi2019-09-031-7/+10
| |/ | | | | | | Co-Authored-By: Vitor K <vitor-k@users.noreply.github.com>
* | Fix uisettings includefearlessTobi2019-09-041-1/+1
| |
* | Limit the size of directory icons, fix text when icon size is nonefearlessTobi2019-09-042-4/+3
| |
* | Change QList to QVectorfearlessTobi2019-09-045-16/+19
| |
* | Separate UserNand and Sdmc directoriesfearlessTobi2019-09-045-32/+59
| |
* | Address more trivial review commentsfearlessTobi2019-09-044-25/+18
| |
* | Address trivial review commentsfearlessTobi2019-09-047-53/+59
| |
* | yuzu: Add support for multiple game directoriesfearlessTobi2019-09-0412-195/+666
| | | | | | | | Ported from https://github.com/citra-emu/citra/pull/3617.
* | Merge pull request #2831 from FearlessTobi/port-4914bunnei2019-09-042-0/+22
|\ \ | | | | | | Port citra-emu/citra#4914: "Fix to Windows sleep issues"
| * | Fix to Windows sleep issuesfearlessTobi2019-09-032-0/+22
| |/ | | | | | | Co-Authored-By: Vitor K <vitor-k@users.noreply.github.com>
* / configuration/config: Add missing screenshot path readfearlessTobi2019-09-041-0/+1
|/ | | | I missed this in my original PR (https://github.com/yuzu-emu/yuzu/pull/1886).
* Fixup! #2772 missed this one fileJames Rowe2019-08-171-1/+1
|
* Merge pull request #2766 from FearlessTobi/port-4849James Rowe2019-08-177-21/+21
|\ | | | | Port citra-emu/citra#4849: "Qt: Fixed behaviour of buttons by connecting functors to correct signals"
| * Qt: Fixed behaviour of buttons by connecting functors to correct signalsSilent2019-08-027-21/+21
| | | | | | | | | | | | Following screens got fixes: - Configure/Debug - Configure/Input
* | Merge pull request #2772 from lioncash/uiJames Rowe2019-08-1716-44/+39
|\ \ | | | | | | yuzu/CMakeLists: Remove qt5_wrap_ui macro usage
| * | yuzu/CMakeLists: Remove qt5_wrap_ui macro usageLioncash2019-08-0916-44/+39
| |/ | | | | | | | | | | | | | | | | | | 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.
* | Merge pull request #2689 from lioncash/tlbunnei2019-07-251-7/+8
|\ \ | |/ |/| yuzu/main: Make error messages within OnCoreError more localization-friendly
| * yuzu/main: Make error messages within OnCoreError more localization-friendlyLioncash2019-07-071-7/+8
| | | | | | | | | | | | | | | | | | | | Previously, a translated string was being appended onto another string in a manner that doesn't allow the translator to control where the appended text is placed. This can be a nuisance for languages where grammar and text ordering differs from English. We now append the strings via the format strings themselves, which allows translators to reorder where the text will be placed.
* | yuzu: Remove setting for using UnicornLioncash2019-07-111-3/+0
|/ | | | | | | | | | The JIT is mature enough that this setting can be removed, falling back to Unicorn only on unsupported architectures. Any missing features from Unicorn (of which there are extremely few), are mostly developer-oriented, which most users don't care about. Features should be coordinated with the JIT, not the interpreter, anyhow.
* Merge pull request #2601 from FernandoS27/texture_cacheZach Hilman2019-07-051-0/+3
|\ | | | | Implement a new Texture Cache
| * video_core: Make ARB_buffer_storage a required extensionReinUsesLisp2019-06-211-0/+3
| |
* | Merge pull request #2669 from FearlessTobi/move-cpujit-settingZach Hilman2019-07-043-27/+3
|\ \ | | | | | | yuzu: Move CPU Jit setting to Debug tab
| * | yuzu: Remove CPU Jit setting from the UIfearlessTobi2019-07-043-27/+3
| | | | | | | | | | | | A normal user shouldn't change this, as it will slow down the emulation and can lead to bugs or crashes. The renaming is done in order to prevent users from leaving this on without a way to turn it off from the UI.
* | | settings: Add config option for kiosk (quest) modeZach Hilman2019-06-293-1/+21
|/ /
* | general_frontend: Add documentation for parental controls and ecommerce appletsZach Hilman2019-06-251-7/+7
| |
* | yuzu: Accept default applets for Parental Controls and ECommerceZach Hilman2019-06-251-5/+7
| |
* | web_browser: Rename OpenPage to OpenPageLocalZach Hilman2019-06-252-4/+4
| | | | | | This is more representative of what actually occurs, as web does support remote URLs which wouldn't need a romfs callback. This paves for easy future support of this with a call like 'OpenPageRemote' or similar.
* | Merge pull request #2546 from DarkLordZach/kipsbunnei2019-06-211-2/+1
|\ \ | | | | | | loader, file_sys: Add support for parsing and loading KIP (Kernel Internal Process) files
| * | game_list: Accept *.kip as a file extension of executablesZach Hilman2019-06-051-2/+1
| | |
* | | Merge pull request #2482 from DarkLordZach/prepobunnei2019-06-213-1/+27
|\ \ \ | |_|/ |/| | core: Add detailed local reporting feature for development
| * | loader: Move NSO module tracking to AppLoaderZach Hilman2019-05-261-11/+13
| | | | | | | | | Also cleanup of general stuff
| * | qt: Make UI option for 'Reporting Services' temporaryZach Hilman2019-05-252-0/+24
| | | | | | | | | | | | Reports are unnecessary for normal users and this is to prevent 'power' users from enabling the feature by accident.
| * | settings: Add 'Reporting Services' config optionZach Hilman2019-05-251-10/+10
| | | | | | | | | | | | Full enable/disable for all reports.
* | | Merge pull request #2594 from FearlessTobi/very-important-changeZach Hilman2019-06-201-1/+1
|\ \ \ | | | | | | | | yuzu/configure_input: Add missing space in window title
| * | | Change to a more descriptive nameTobias2019-06-191-1/+1
| | | |
| * | | yuzu/configure_input: Add missing space in window nameTobias2019-06-191-1/+1
| | | |
* | | | Added missing space between two wordsAlex Subaric2019-06-191-1/+1
| | | | | | | | | | | | Added missing whitespace character between two words in the "Warning Missing Derivation Components" warning message box.
* | | | Merge pull request #2553 from lioncash/languageZach Hilman2019-06-0831-58/+326
|\ \ \ \ | | | | | | | | | | yuzu/configuration: Make all widgets and dialogs aware of language changes
| * | | | yuzu/configuration: Make all widgets and dialogs aware of language changesLioncash2019-06-0631-58/+326
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To prepare for translation support, this makes all of the widgets cognizant of the language change event that occurs whenever installTranslator() is called and automatically retranslates their text where necessary. This is important as calling the backing UI's retranslateUi() is often not enough, particularly in cases where we add our own strings that aren't controlled by it. In that case we need to manually refresh the strings ourselves.
* | | | | constants: Extract backup JPEG used by account servicesZach Hilman2019-06-071-12/+3
| | | | |
* | | | | Merge pull request #2514 from ReinUsesLisp/opengl-compatZach Hilman2019-06-074-20/+2
|\ \ \ \ \ | | | | | | | | | | | | video_core: Drop OpenGL core in favor of OpenGL compatibility
| * | | | | rasterizer_opengl: Remove OpenGL core profileReinUsesLisp2019-05-304-20/+2
| | | | | |
* | | | | | Merge pull request #2550 from lioncash/frontendZach Hilman2019-06-061-0/+9
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | yuzu/CMakeLists: Pass compilation flags that make it more difficult to cause bugs in Qt code
| * | | | | yuzu/CMakeLists: Disable implicit QString->QUrl conversionsLioncash2019-06-051-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enforces the use of the proper URL resolution functions. e.g. url = some_local_path_string; should actually be: url = QUrl::fromLocalPath(some_local_path_string); etc. This makes it harder to cause bugs when operating with both strings and URLs at the same time.
| * | | | | yuzu/CMakeLists: Disable unsafe overloads of QProcess' start() functionLioncash2019-06-051-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Other overloads of start() are considerably much safer to use if we ever need this in the future and need to pass arguments to the program, given it contains separate parameters for the program path and the arguments themselves, whereas this unsafe overload contains both as a single string. Given the alternatives are much safer, we can disable this.
| * | | | | yuzu/CMakeLists: Disable implicit type narrowing in connect() callsLioncash2019-06-051-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prevents hard-to-diagnose bugs from potentially occurring and requires any type narrowing to be explicitly performed by our code.
* | | | | | Merge pull request #2521 from lioncash/namingbunnei2019-06-0633-213/+234
|\ \ \ \ \ \ | | | | | | | | | | | | | | yuzu/configuration: Make function naming consistent
| * | | | | | yuzu/configuration: Make function naming consistentLioncash2019-06-0533-213/+234
| |/ / / / /
* | | | | | Merge pull request #2526 from lioncash/globalZach Hilman2019-06-051-5/+0
|\ \ \ \ \ \ | |/ / / / / |/| | | | | core/telemetry_session: Remove usages of the global system accessor
| * | | | | core/loader: Remove LoadKernelSystemModeLioncash2019-05-291-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | This is a hold-over from Citra and doesn't apply to yuzu.
* | | | | | Merge pull request #2527 from lioncash/indexZach Hilman2019-06-055-34/+16
|\ \ \ \ \ \ | | | | | | | | | | | | | | yuzu/{profile_select, software_keyboard}: Tidy up interface
| * | | | | | yuzu/software_keyboard: Remove unnecessary GetStatus() member functionLioncash2019-05-293-10/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Like with the profile selection dialog, we can just use the result of QDialog's exec() function to determine whether or not a dialog was accepted.
| * | | | | | profile_select: Remove unnecessary GetStatus() member functionLioncash2019-05-293-18/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This behavior is already provided by the built-in exec() function. We just need to check the return value of it.
| * | | | | | profile_select: Return int instead of u32 for GetIndex()Lioncash2019-05-293-8/+9
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt uses a signed value to represent indices. We should follow this convention where applicable to avoid unnecessary sign-conversion warnings, as well as making it easier to interoperate with other aspects of Qt. While we're at it, we can also make a sign-conversion explicit.
* | | | | | Merge pull request #2531 from ReinUsesLisp/qt-warningsZach Hilman2019-06-053-15/+15
|\ \ \ \ \ \ | | | | | | | | | | | | | | qt: Silence name collision warnings
| * | | | | | qt: Silence name collision warningsReinUsesLisp2019-05-303-15/+15
| |/ / / / /
* | | | | | Merge pull request #2515 from lioncash/narrowingZach Hilman2019-06-051-6/+5
|\ \ \ \ \ \ | | | | | | | | | | | | | | yuzu/configuration/configure_graphics: Eliminate type narrowing in a connect call
| * | | | | | yuzu/configuration/configure_graphics: Eliminate type narrowing in a connect callLioncash2019-05-251-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A checkbox is able to be tri-state, giving it three possible activity types, so in the connect call here, it would actually be truncating an int into a bool. Instead, we can just listen on the toggled() signal, which passes along a bool, not an int.
* | | | | | | Merge pull request #2536 from lioncash/cacheZach Hilman2019-06-051-36/+26
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | game_list_worker: Use QFile over our own IOFile instance or std streams for the game list cache
| * | | | | | | game_list_worker: Use QFile over our own IOFile instance or std streamsLioncash2019-05-311-28/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stays consistent in our code with using Qt's provided mechanisms, and also properly handles Unicode paths (which file streams on Windows don't do very well).
| * | | | | | | game_list_worker: Remove template specializationsLioncash2019-05-311-8/+2
| | |_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | This is equivalent to specifying two separate functions, so we can just do that.
* | | | | | | Merge pull request #2529 from lioncash/bootRodrigo Locatti2019-06-052-31/+40
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | yuzu/bootmanager: Minor interface tidying
| * | | | | | | yuzu/bootmanager: Log out screenshot destination pathLioncash2019-06-031-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can make this message more meaningful by indicating the location the screenshot has been saved to. We can also log out whenever a screenshot could not be saved (e.g. due to filesystem permissions or some other reason).
| * | | | | | | yuzu/bootmanager: Treat the resolution factor as a u32Lioncash2019-06-032-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Treating it as a u16 can result in a sign-conversion warning when performing arithmetic with it, as u16 promotes to an int when aritmetic is performed on it, not unsigned int. This also makes the interface more uniform, as the layout interface now operates on u32 across the board.
| * | | | | | | yuzu/bootmanager: Default EmuThread's destructor in the cpp fileLioncash2019-06-032-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This class contains non-trivial members, so we should default the destructor's definition within the cpp file.
| * | | | | | | yuzu/bootmanager: unsigned -> u32Lioncash2019-06-032-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Same thing (for platforms we support), less reading.
| * | | | | | | yuzu/bootmanager: Change false literal to 0 for setSwapInterval()Lioncash2019-06-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This function is defined as taking an int, not a bool.
| * | | | | | | yuzu/bootmanager: Remove pointer downcast in GRenderWindow's constructorLioncash2019-06-032-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can just pass a pointer to GMainWindow directly and make it a requirement of the interface. This makes the interface a little safer, since this would technically otherwise allow any random QWidget to be the parent of a render window, downcasting it to GMainWindow (which is undefined behavior).
| * | | | | | | yuzu/bootmanager: Remove unnecessary pointer castsLioncash2019-06-031-5/+6
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can just invoke these functions by qualifying the object name before the function.
* | | | | | | Merge pull request #2525 from FearlessTobi/remove-unused-settingsMat M2019-06-043-170/+44
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | yuzu: Remove unused birthday setting
| * | | | | | yuzu: Remove unused birthday settingfearlessTobi2019-05-293-170/+44
| | |/ / / / | |/| | | | | | | | | | | | | | | | Fixes #2522.
* | | | | | Merge pull request #1931 from DarkLordZach/mii-database-1bunnei2019-05-304-16/+15
|\ \ \ \ \ \ | | | | | | | | | | | | | | mii: Implement MiiManager backend and several mii service commands
| * | | | | | profile_select: Port Service::Account::UUID to Common::UUIDZach Hilman2019-04-254-16/+15
| | | | | | |
* | | | | | | Merge pull request #2431 from DarkLordZach/game-list-cachebunnei2019-05-305-7/+133
|\ \ \ \ \ \ \ | |_|_|_|/ / / |/| | | | | | yuzu: Implement a caching mechanism for the game list
| * | | | | | main: Remove extraneous commentZach Hilman2019-05-301-1/+0
| | | | | | |
| * | | | | | game_list_worker: Add better error handling to cachingZach Hilman2019-05-262-23/+42
| | | | | | |
| * | | | | | yuzu: Clear partial/full game list cache when data is updatedZach Hilman2019-05-262-0/+13
| | | | | | |
| * | | | | | game_list: Implement caching for game listZach Hilman2019-05-261-7/+99
| | | | | | | | | | | | | | | | | | | | | Preserves list of add ons and the icon, which are the two costliest parts of game list population.
| * | | | | | ui_settings: Add option to cache game listZach Hilman2019-05-262-0/+3
| | |/ / / / | |/| | | |
* | | | | | Merge pull request #2518 from ReinUsesLisp/sdl2-windowbunnei2019-05-292-4/+2
|\ \ \ \ \ \ | |/ / / / / |/| | | | | yuzu_cmd: Split emu_window OpenGL implementation into its own file
| * | | | | emu_window: Pass OnMinimalClientAreaChangeRequest argument by copyReinUsesLisp2019-05-262-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's no performance improvement in passing an unsigned pair by reference.
* | | | | | configure_hotkeys: Remove unnecessary Settings::Apply() callLioncash2019-05-251-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Nothing from the hotkeys dialog relies on this call occurring, and is already called from the dialog that calls applyConfiguration().
* | | | | | configure_hotkeys: Tidy up key sequence conflict error stringLioncash2019-05-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Avoids mentioning the user and formalizes the error itself.
* | | | | | configure_hotkeys: Change critical error dialog into a warning dialogLioncash2019-05-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | critical() is intended for critical/fatal errors that threaten the overall stability of an application. A user entering a conflicting key sequence is neither of those.
* | | | | | configure_hotkeys: Move conflict detection logic to IsUsedKey()Lioncash2019-05-252-14/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't need to extract the entire set of hotkeys into a list and then iterate through it. We can traverse the list and early-exit if we're able to.
* | | | | | configure_hotkeys: Remove unused EmitHotkeysChanged()Lioncash2019-05-253-13/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. This is something that should be solely emitted by the hotkey dialog itself 2. This is functionally unused, given there's nothing listening for the signal.
* | | | | | sequence_dialog: Reorganize the constructorLioncash2019-05-251-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous code was all "smushed" together wasn't really grouped together that well. This spaces things out and separates them by relation to one another, making it easier to visually parse the individual sections of code that make up the constructor.
* | | | | | sequence_dialog: Remove unnecessary horizontal specifierLioncash2019-05-251-2/+1
| |_|_|_|/ |/| | | | | | | | | | | | | | QDialogButtonBoxes are horizontal by default.
* | | | | Merge pull request #2513 from lioncash/stringbunnei2019-05-255-126/+168
|\ \ \ \ \ | | | | | | | | | | | | yuzu/main: Specify string conversions explicitly
| * | | | | yuzu/CMakeLists: Disable implicit QString conversionsLioncash2019-05-251-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that all of our code is compilable with implicit QString conversions, we can enforce it at compile-time by disabling them.
| * | | | | yuzu/applets/software_keyboard: Remove unused assert headerLioncash2019-05-251-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | This isn't actually used anywhere, so it can be removed.
| * | | | | yuzu/applets/software_keyboard: std::move argument in MainWindowFinishedText()Lioncash2019-05-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Given the std::optional can contain an object type that heap allocates, we can use std::move to avoid an unnecessary copy/allocation from occurring.
| * | | | | yuzu/applets/software_keyboard: Resolve sign mismatch comparisonLioncash2019-05-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt uses a signed value to represent container sizes, so this was causing a sign mismatch warning.
| * | | | | yuzu/applets/software_keyboard: Specify string conversions explicitlyLioncash2019-05-252-10/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allows the software keyboard applet code to compile with implicit string conversions disabled.
| * | | | | yuzu/applets/error: Specify string conversions explicitlyLioncash2019-05-251-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allows the error applet to build successfully with implicit string conversions disabled.
| * | | | | yuzu/main: Specify string conversions where applicableLioncash2019-05-251-115/+145
| | |_|/ / | |/| | |
* | | | | Merge pull request #2358 from ReinUsesLisp/parallel-shaderbunnei2019-05-251-9/+9
|\ \ \ \ \ | |/ / / / |/| | | | gl_shader_cache: Use shared contexts to build shaders in parallel at boot
| * | | | gl_shader_cache: Use shared contexts to build shaders in parallelReinUsesLisp2019-05-211-9/+9
| |/ / /
* | | | yuzu/configuration/config: Make default hotkeys an internally-linked array in the cpp fileLioncash2019-05-212-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | Given the array is a private static array, we can just make it internally linked to hide it from external code. This also allows us to remove an inclusion within the header.
* | | | yuzu/configuration/config: Specify string conversions explicitlyLioncash2019-05-211-30/+42
|/ / / | | | | | | | | | | | | Allows the configuration code to build successfully with implicit string conversions disabled.
* | | Merge pull request #2455 from lioncash/configbunnei2019-05-212-315/+573
|\ \ \ | | | | | | | | configuration/config: Move config loading and saving to functions based off groups
| * | | configuration/config: Move config loading and saving to functions based off groupsLioncash2019-05-092-315/+573
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Over time our config values have grown quite numerous in size. Unfortunately it also makes the single functions we have for loading and saving values more error prone. For example, we were loading the core settings twice when they only should have been loaded once. In another section, a variable was shadowing another variable used to load settings from a completely different section. Finally, in one other case, there was an extraneous endGroup() call used that didn't need to be done. This was essentially dead code and also a bug waiting to happen. This separates the section loading code into its own separate functions. This keeps variables only visible to the code that actually needs it, and makes it much easier to visually see the end of each individual configuration group. It also makes it much easier to visually catch bugs during code review. While we're at it, this also uses QStringLiteral instead of raw string literals, which both avoids constructing a lot of QString instances, but also makes it much easier to disable implicit ASCII to QString and vice-versa in the future via setting QT_NO_CAST_FROM_ASCII and QT_NO_CAST_TO_ASCII as compilation flags.
* | | yuzu/game_list: Specify string conversions explicitlyLioncash2019-05-202-50/+55
| | | | | | | | | | | | | | | Allows the game list code to compile successfully with implicit string conversions disabled.
* | | yuzu/game_list_worker: Specify string conversions explicitlyLioncash2019-05-201-2/+2
| | | | | | | | | | | | | | | Allows the game list worker code to compile successfully with implicit string conversions disabled.
* | | yuzu/game_list_p: Amend mentions of SMDH in commentsLioncash2019-05-201-3/+3
| | | | | | | | | | | | | | | | | | 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.
* | | yuzu/game_list_p: Specify string conversions explicitlyLioncash2019-05-201-10/+9
| | | | | | | | | | | | | | | Allows the game list item code to build with implicit string conversions disabled.
* | | yuzu/loading_screen: Specify string conversions explicitlyLioncash2019-05-201-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | Allows the loading screen code to compile with implicit string conversions disabled. While we're at it remove unnecessary const usages, and add it to nearby variables where appropriate.
* | | yuzu/bootmanager: Specify string conversions explicitlyLioncash2019-05-201-2/+4
| | | | | | | | | | | | | | | Allows the bootmanager code to compile with implicit string conversions disabled.
* | | yuzu/util: Specify string conversions explicitlyLioncash2019-05-201-8/+10
| | | | | | | | | | | | Allows the util code to build with implicit string conversions disabled.
* | | yuzu/configuration/configure_web: Specify string conversions explicitlyLioncash2019-05-191-8/+16
| | | | | | | | | | | | | | | Allows the web config code to compile with implicit string conversions disabled. We can also deduplicate the calls to create the pixmap.
* | | yuzu/configuration/configure_system: Specify string conversions explicitlyLioncash2019-05-191-2/+3
| | | | | | | | | | | | | | | Allows the system config code to build successfully with implicit string conversions disabled.
* | | yuzu/configuration/configure_profile_manager: Mark UI string as translatableLioncash2019-05-191-1/+1
| | | | | | | | | | | | This is a user-facing string, so it should be marked as translatable.
* | | yuzu/configuration/configure_per_general: Specify string conversions explicitlyLioncash2019-05-191-6/+8
| | | | | | | | | | | | | | | Allows the per-game configuration to be successfully built with implicit string conversions disabled.
* | | yuzu/configuration/configure_mouse_advanced: Clean up array accessesLioncash2019-05-191-19/+22
| | | | | | | | | | | | Deduplicates array accesses and uses a named variable where appropriate.
* | | yuzu/configuration/configure_mouse_advanced: Specify string conversions explicitlyLioncash2019-05-191-11/+23
| | | | | | | | | | | | | | | Allows the advanced mouse configuration code to build with implicit string conversions disabled.
* | | yuzu/configuration/configure_input_player: Clean up array accessesLioncash2019-05-191-32/+48
| | | | | | | | | | | | | | | Rather than repeatedly index arrays that have quite a large array index, we can just use a named variable instead.
* | | yuzu/configuration/configure_input_player: Specify string conversions explicitlyLioncash2019-05-191-24/+49
| | | | | | | | | | | | | | | Allows the player input configuration code to compile with implicit string conversions disabled.
* | | yuzu/configuration/configure_input: Mark controller type names as translateableLioncash2019-05-191-5/+8
| | | | | | | | | | | | These are user-facing strings, so they should be localizable.
* | | yuzu/configuration/configure_general: Specify string conversions explicitlyLioncash2019-05-191-1/+2
| | | | | | | | | | | | | | | Allows the general configuration code to successfully compile with implicit string conversions disabled.
* | | yuzu/configuration/configure_gamelist: Specify string conversions explicitlyLioncash2019-05-191-3/+5
| | | | | | | | | | | | | | | Allows the gamelist configuration code to compile with implicit string conversions disabled.
* | | yuzu/configuration/configure_audio: Store power on query into a variableLioncash2019-05-191-2/+3
| | | | | | | | | | | | | | | Avoids using the system accessor more than necessary, and ensures that both dialog boxes see the same power on state.
* | | yuzu/configuration/configure_audio: Tidy up function castLioncash2019-05-191-2/+1
| | | | | | | | | | | | We can just use qOverload here to tidy up the function cast.
* | | yuzu/configuration/configure_audio: Specify string conversions explicitlyLioncash2019-05-191-3/+3
| | | | | | | | | | | | | | | Allows the audio configuration code to build with implicit string conversions disabled.
* | | Merge pull request #2468 from lioncash/deductionHexagon122019-05-191-1/+1
|\ \ \ | | | | | | | | yuzu: Remove explicit types from locks where applicable
| * | | yuzu: Remove explicit types from locks where applicableLioncash2019-05-141-1/+1
| | | | | | | | | | | | | | | | | | | | With C++17's deduction guides, the type doesn't need to be explicitly specified within locking primitives anymore.
* | | | Merge pull request #2492 from lioncash/debuggerHexagon122019-05-193-17/+20
|\ \ \ \ | | | | | | | | | | yuzu/debugger: Specify string conversions explicitly
| * | | | yuzu/debugger/graphics/graphics_breakpoints: Specify string conversions explicitlyLioncash2019-05-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Allows the graphics breakpoints to compile with implicit string conversions disabled.
| * | | | yuzu/debugger/profiler: Specify string conversions explicitlyLioncash2019-05-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | This allows the microprofile widget to compile with implicit string conversions disabled.
| * | | | yuzu/debugger/wait_tree: Specify string conversions explicitlyLioncash2019-05-191-14/+17
| | | | | | | | | | | | | | | | | | | | | | | | | Allows compiling the wait tree widget with implicit string conversions disabled.
* | | | | Merge pull request #2486 from lioncash/resetnameSebastian Valle2019-05-191-4/+4
|\ \ \ \ \ | | | | | | | | | | | | core/kernel/object: Rename ResetType enum members for clarity
| * | | | | core/kernel/object: Rename ResetType enum membersLioncash2019-05-181-4/+4
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Renames the members to more accurately indicate what they signify. "OneShot" and "Sticky" are kind of ambiguous identifiers for the reset types, and can be kind of misleading. Automatic and Manual communicate the kind of reset type in a clearer manner. Either the event is automatically reset, or it isn't and must be manually cleared. The "OneShot" and "Sticky" terminology is just a hold-over from Citra where the kernel had a third type of event reset type known as "Pulse". Given the Switch kernel only has two forms of event reset types, we don't need to keep the old terminology around anymore.
* | | | | Merge pull request #2493 from lioncash/translateSebastian Valle2019-05-191-2/+2
|\ \ \ \ \ | | | | | | | | | | | | yuzu/applets/profile_select: Mark header string as translatable
| * | | | | yuzu/applets/profile_select: Mark header string as translatableLioncash2019-05-191-2/+2
| | |/ / / | |/| | | | | | | | | | | | | This is a user-facing string, so it should be marked as translatable.
* | | | | Merge pull request #2476 from ReinUsesLisp/fix-compatHexagon122019-05-191-0/+1
|\ \ \ \ \ | | | | | | | | | | | | yuzu/bootmanager: Explicitly enable deprecated OpenGL features on compat
| * | | | | yuzu/bootmanager: Explicitly enable deprecated OpenGL features on compatReinUsesLisp2019-05-171-0/+1
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Nvidia's proprietary driver creates a real OpenGL compatibility profile without this option, meanwhile Intel (and probably AMD, I haven't tested it) require that QSurfaceFormat::FormatOption::DeprecatedFunctions is explicitly enabled.
* | | | | yuzu/util: Remove unused spinbox.cpp/.hLioncash2019-05-193-366/+0
| |/ / / |/| | | | | | | | | | | | | | | This has been left unused since the removal of the vestigial surface viewer. Given it has no uses left, this can be removed as well.
* | | | Merge pull request #2457 from lioncash/aboutbunnei2019-05-173-11/+23
|\ \ \ \ | | | | | | | | | | yuzu/{about_dialog, main}: Specify string conversions explicitly for SCM-related info
| * | | | yuzu/main: Move window title updating logic to its own functionLioncash2019-05-092-7/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For similar reasons to the previous change, we move this to a single function, so we don't need to duplicate the conversion logic in several places within main.cpp.
| * | | | yuzu/about_dialog: Specify string conversions explicitlyLioncash2019-05-091-4/+4
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specifies the conversions explicitly to avoid implicit conversions from const char* to QString. This makes it easier to disable implicit QString conversions in the future. In this case, the implicit conversion was technically wrong as well. The implicit conversion treats the input strings as ASCII characters. This would result in an incorrect conversion being performed in the rare case a branch name was created with a non-ASCII Unicode character, likely resulting in junk being displayed.
* | | | qt/configure_graphics: Shadow options at runtimeReinUsesLisp2019-05-171-2/+6
| |/ / |/| | | | | | | | | | | | | | Compatibility profile and the disk shader cache settings shouldn't be changed at runtime. This aims to address that shadowing those options.
* | | Merge pull request #2458 from lioncash/hotkeybunnei2019-05-091-2/+0
|\ \ \ | | | | | | | | yuzu/hotkeys: Remove unnecessary constructor
| * | | yuzu/hotkeys: Remove unnecessary constructorLioncash2019-05-091-2/+0
| |/ / | | | | | | | | | | | | The behavior of the Hotkey constructor is already accomplished via in-class member initializers, so the constructor is superfluous here.
* | | Merge pull request #2456 from lioncash/qualifierbunnei2019-05-091-3/+3
|\ \ \ | | | | | | | | yuzu/compatdb: Remove unnecessary qualifiers
| * | | yuzu/compatdb: Remove unnecessary qualifiersLioncash2019-05-091-3/+3
| |/ / | | | | | | | | | Keeps the code consistent in regards to how the buttons are referred to.
* / / configure_dialog: Remove the Whats This? button from the dialogLioncash2019-05-091-0/+4
|/ /
* | Merge pull request #2416 from lioncash/waitbunnei2019-04-251-7/+4
|\ \ | | | | | | kernel/svc: Clean up wait synchronization related functionality
| * | kernel/thread: Unify wait synchronization typesLioncash2019-04-171-7/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a holdover from Citra, where the 3DS has both WaitSynchronization1 and WaitSynchronizationN. The switch only has one form of wait synchronizing (literally WaitSynchonization). This allows us to throw out code that doesn't apply at all to the Switch kernel. Because of this unnecessary dichotomy within the wait synchronization utilities, we were also neglecting to properly handle waiting on multiple objects. While we're at it, we can also scrub out any lingering references to WaitSynchronization1/WaitSynchronizationN in comments, and change them to WaitSynchronization (or remove them if the mention no longer applies).
* | | Merge pull request #2424 from FernandoS27/compatbunnei2019-04-254-1/+17
|\ \ \ | | | | | | | | Allow picking a Compatibility Profile for OpenGL.
| * | | Allow picking a Compatibility Profile for OpenGL.Fernando Sahmkow2019-04-204-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | This option allows picking the compatibility profile since a lot of bugs are fixed in it. We devs will use this option to easierly debug current problems in our Core implementation.:wq
* | | | Merge pull request #2228 from DarkLordZach/applet-manager-p1bunnei2019-04-255-3/+111
|\ \ \ \ | |/ / / |/| | | applets: Add AppletManager and implement PhotoViewer and Error applets
| * | | web_browser: Make OpenPage non-constZach Hilman2019-04-173-7/+7
| | | |
| * | | main: Add GMainWindow hooks for Error displayZach Hilman2019-04-172-0/+8
| | | |
| * | | main: Switch to AppletManager for frontendZach Hilman2019-04-171-3/+9
| | | |
| * | | qt: Add dialog implementation of Error appletZach Hilman2019-04-173-0/+94
| | | |
| * | | web_browser: Make OpenPage constZach Hilman2019-04-172-4/+4
| |/ /
* | | yuzu/bootmanager: Replace unnnecessary constructor initializer list member of GGLContextLioncash2019-04-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The default constructor will always run, even when not specified, so this is redundant. However, the context member can indeed be initialized in the constructor initializer list.
* | | yuzu/bootmanager: Remove unnecessary includesLioncash2019-04-171-1/+0
| | | | | | | | | | | | This include isn't used anymore so it can be removed.
* | | yuzu/bootmanager: Resolve constructor initializer list warningsLioncash2019-04-171-2/+1
|/ / | | | | | | | | Resolves -Wreorder warnings. These will automatically be initialized to nullptr anyways, so these were redundant.
* | Merge pull request #2405 from lioncash/qtbunnei2019-04-172-1/+7
|\ \ | | | | | | CMakeLists: Define QT_USE_QSTRINGBUILDER for the Qt target
| * | CMakeLists: Define QT_USE_QSTRINGBUILDER for the Qt targetLioncash2019-04-152-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | Merge pull request #2376 from lioncash/constbunnei2019-04-173-12/+12
|\ \ \ | |/ / |/| | yuzu/configure_hotkey: Minor changes
| * | configure_hotkeys: Pass the dialog as a parent to SequenceDialog()Lioncash2019-04-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without passing in a parent, this can result in focus being stolen from the dialog in certain cases. Example: On Windows, if the logging window is left open, the logging Window will potentially get focus over the hotkey dialog itself, since it brings all open windows for the application into view. By specifying a parent, we only bring windows for the parent into view (of which there are none, aside from the hotkey dialog).
| * | configure_hotkeys: Avoid dialog memory leak within Configure()Lioncash2019-04-101-3/+3
| | | | | | | | | | | | | | | Without a parent, this dialog won't have its memory freed when it happens to get destroyed.
| * | configure_hotkeys: Mark member variables as const where applicable in Configure()Lioncash2019-04-101-7/+7
| | |
| * | configure_hotkeys: Make comparison check a little more self-documentingLioncash2019-04-101-1/+2
| | | | | | | | | | | | | | | This is checking if an index is valid or not and returning early if it isn't.
| * | configure_dialog: Amend constructor initializer list orderLioncash2019-04-101-1/+1
| | | | | | | | | | | | Avoids a -Wreorder compiler warning.
| * | configure_hotkey: Remove unnecessary includeLioncash2019-04-101-1/+0
| | | | | | | | | | | | | | | | | | Avoids dumping all of the core settings machinery into whatever files include this header. Nothing inside the header itself actually made use of anything in settings.h anyways.
| * | configure_hotkey: Make IsUsedKey() a const member functionLioncash2019-04-102-2/+2
| | | | | | | | | | | | | | | This doesn't actually modify instance state of the dialog, so this can be made const.
* | | Merge pull request #2357 from zarroboogs/force-30fps-modebunnei2019-04-143-0/+12
|\ \ \ | | | | | | | | Add a toggle to force 30FPS mode
| * | | added a toggle to force 30fps modezarroboogs2019-04-093-0/+12
| | | |
* | | | Merge pull request #2017 from jroweboy/glwidgetbunnei2019-04-144-84/+172
|\ \ \ \ | | | | | | | | | | Frontend: Migrate to QOpenGLWindow and support shared contexts
| * | | | bootmanager: Bypass input focus issuesReinUsesLisp2019-03-254-55/+78
| | | | |
| * | | | bootmanager: Bypass resizing issueReinUsesLisp2019-03-251-7/+12
| | | | |
| * | | | bootmanager: Delete container to avoid crash on game restartingReinUsesLisp2019-03-252-14/+10
| | | | | | | | | | | | | | | | | | | | | | | | | While we are at it, remove nullptr checks for deletion, since the C++ standard defines that delete does it by its own
| * | | | QT: Hide GLWidget immediately after showing.James Rowe2019-01-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the loading screen merged, we don't want to actually show at this point, but it still needs to be shown to actually create the context. Turns out you can just show and hide it immediately and it'll work.
| * | | | QT Frontend: Migrate to QOpenGLWindowJames Rowe2019-01-223-21/+83
| | | | |
* | | | | Fix Clang FormatFreddyFunk2019-04-122-5/+10
| | | | |
* | | | | ui_settings: Rename game directory variablesFreddyFunk2019-04-115-20/+20
| | | | |
* | | | | Merge pull request #2353 from lioncash/surfacebunnei2019-04-105-622/+0
|\ \ \ \ \ | |_|_|/ / |/| | | | yuzu/debugger: Remove graphics surface viewer
| * | | | yuzu/debugger: Remove graphics surface viewerLioncash2019-04-065-622/+0
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | This doesn't actually work anymore, and given how long it's been left in that state, it's unlikely anyone actually seriously used it. Generally it's preferable to use RenderDoc or Nsight to view surfaces.
* | | | Merge pull request #1957 from DarkLordZach/title-providerbunnei2019-04-106-89/+97
|\ \ \ \ | | | | | | | | | | file_sys: Provide generic interface for accessing game data
| * | | | game_list: Register content with ContentProviderZach Hilman2019-03-276-89/+97
| | | | |
* | | | | Merge pull request #2132 from FearlessTobi/port-4437bunnei2019-04-1023-208/+426
|\ \ \ \ \ | | | | | | | | | | | | Port citra-emu/citra#4437: "citra-qt: Make hotkeys configurable via the GUI (Attempt 2)"
| * | | | | yuzu: Make hotkeys configurable via the GUIAdityarup Laha2019-03-1623-208/+426
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Adds a new Hotkeys tab in the Controls group. * Double-click a Hotkey to rebind it.
* | | | | | yuzu/loading_screen: Resolve runtime Qt string formatting warningsLioncash2019-04-091-1/+6
| |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In our error console, when loading a game, the strings: QString::arg: Argument missing: "Loading...", 0 QString::arg: Argument missing: "Launching...", 0 would occasionally pop up when the loading screen was running. This was due to the strings being assumed to have formatting indicators in them, however only two out of the four strings actually have them. This only applies the arguments to the strings that have formatting specifiers provided, which avoids these warnings from occurring.
* | | | | yuzu/debugger/graphics_surface: Display error messages for file I/O errorsLioncash2019-04-061-7/+25
| | | | |
* | | | | yuzu/debugger/graphics_surface: Tidy up SaveSurfaceLioncash2019-04-061-15/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Use QStringLiteral where applicable. - Use const where applicable - Remove unnecessary precondition check (we already assert the pixbuf being non null)
* | | | | yuzu/debugger/graphics_surface: Clean up connection overload deductionLioncash2019-04-061-12/+10
| | | | | | | | | | | | | | | | | | | | | | | | | We can utilize qOverload with the signal connections to make the function deducing a little less ugly.
* | | | | yuzu/debugger/graphics_surface: Fill in missing surface format listingsLioncash2019-04-061-43/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fills in the missing surface types that were marked as unknown. The order corresponds with the TextureFormat enum within video_core/texture.h. We also don't need to all of these strings as translatable (only the first string, as it's an English word).
* | | | | Merge pull request #2331 from lioncash/cachebunnei2019-04-051-9/+6
|\ \ \ \ \ | | | | | | | | | | | | yuzu/main: Minor adjustments to OnTransferableShaderCacheOpenFile()
| * | | | | yuzu/main: Use QStringLiteral where applicable within OnTransferableShaderCacheOpenFile()Lioncash2019-04-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Allows these strings to have no allocation cost when used at runtime.
| * | | | | yuzu/main: Tidy up the error dialog string in OnTransferableShaderCacheOpenFile()Lioncash2019-04-041-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rather than scream that the file doesn't exist, we can clearly state what specifically doesn't exist, to avoid ambiguity, and make it easier to understand for non-primary English speakers/readers.
| * | | | | yuzu/main: Remove unnecessary string concatenation in OnTransferableShaderCacheOpenFile()Lioncash2019-04-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can just make the trailing portion of the string part of the formatting, getting rid of the need to make another temporary string.
| * | | | | yuzu/main: Make open_target a QStringLioncash2019-04-041-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Simplifies the amount of string conversions necessary. We also don't need to log out what occurs here.
| * | | | | yuzu/main: Use static variant of QFile's exists()Lioncash2019-04-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's no need to construct a QFile instance just to check for its existence.
* | | | | | yuzu/main: Remove unnecessary includesLioncash2019-04-041-5/+8
|/ / / / / | | | | | | | | | | | | | | | | | | | | While we're at it, don't use <QtGui> and <QtWidgets> and instead include exactly which headers we actually need.
* | | | | Merge pull request #2095 from FreddyFunk/open-transferable-shader-cachebunnei2019-04-044-0/+44
|\ \ \ \ \ | | | | | | | | | | | | frontend: Open transferable shader cache for a selected game in the gamelist
| * | | | | Use QString instead of std::string where applicableunknown2019-02-081-17/+11
| | | | | |
| * | | | | Use constexpr char array instead of string where applicableMat M2019-02-081-1/+1
| | | | | | | | | | | | | | | | | | Co-Authored-By: FreddyFunk <frederic.laing.development@gmail.com>
| * | | | | frontend: Open transferable shader cache for a selected game in the gamelistunknown2019-02-084-0/+50
| | | | | |
* | | | | | Merge pull request #2323 from lioncash/includebunnei2019-04-032-4/+6
|\ \ \ \ \ \ | | | | | | | | | | | | | | yuzu/debugger/profiler: Remove unnecessary includes
| * | | | | | yuzu/debugger/profiler: Remove unnecessary includesLioncash2019-04-032-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Moves includes into the cpp file where necessary. This way, microprofile-related stuff isn't dumped into other UI-related code when the dialog header gets included.
* | | | | | | yuzu/applets/software_keyboard: Use QDialogButtonBox standard buttons instead of custom buttonsLioncash2019-04-031-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Like the previous change, this allows Qt to handle proper translations of the UI buttons, rather than us needing to handle it.
* | | | | | | yuzu/applets/profile_select: Use QDialogButtonBox standard buttons instead of custom buttonsLioncash2019-04-031-4/+1
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | Makes for shorter code, while also not requiring the buttons to be directly translated, they'll be handled by Qt itself.
* | | | | | Merge pull request #2301 from FearlessTobi/remove-amiibo-settingbunnei2019-04-013-24/+0
|\ \ \ \ \ \ | | | | | | | | | | | | | | core/yuzu: Remove enable_nfc setting
| * | | | | | core/yuzu: Remove enable_nfc settingfearlessTobi2019-03-293-24/+0
| | |_|/ / / | |/| | | | | | | | | | | | | | | | This was initially added to prevent problems from stubbed/not implemented NFC services, but as we never encountered such and as it's only used in a deprecated function anyway, I guess we can just remove it to prevent more clutter of the settings.
* | | | | | general: Use deducation guides for std::lock_guard and std::unique_lockLioncash2019-04-015-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since C++17, the introduction of deduction guides for locking facilities means that we no longer need to hardcode the mutex type into the locks themselves, making it easier to switch mutex types, should it ever be necessary in the future.
* | | | | | Merge pull request #2266 from FernandoS27/arbitrationbunnei2019-03-291-0/+4
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Kernel: Fixes to Arbitration and SignalProcessWideKey Management
| * | | | | Add CondVar Thread State.Fernando Sahmkow2019-03-201-0/+4
| | | | | |
* | | | | | gpu: Move GPUVAddr definition to common_types.bunnei2019-03-212-2/+2
| | | | | |
* | | | | | Merge pull request #2239 from FearlessTobi/port-4684bunnei2019-03-211-3/+1
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Port citra-emu/citra#4684: "frontend: qt: fix a freeze where if you click on entry in the game list too fast, citra will hang"
| * | | | | frontend: qt: fix a freeze where if you click on entry in the game list too fast, citra will hangliushuyu2019-03-151-3/+1
| | | | | |
* | | | | | video_core: Refactor to use MemoryManager interface for all memory access.bunnei2019-03-161-3/+2
| |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # Conflicts: # src/video_core/engines/kepler_memory.cpp # src/video_core/engines/maxwell_3d.cpp # src/video_core/morton.cpp # src/video_core/morton.h # src/video_core/renderer_opengl/gl_global_cache.cpp # src/video_core/renderer_opengl/gl_global_cache.h # src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
* | | | | Merge pull request #2048 from FearlessTobi/port-3924bunnei2019-03-162-203/+250
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | Port citra-emu/citra#3924: "citra_qt: Settings (configuration) rework"
| * | | citra_qt: Settings (configuration) reworkzhupengfei2019-03-072-203/+250
| | | |
* | | | Merge pull request #2187 from FearlessTobi/port-sdl-thingsbunnei2019-03-131-1/+0
|\ \ \ \ | | | | | | | | | | Port various Citra changes to input_common, including deadzone support
| * | | | Input: Remove global variables from SDL InputJames Rowe2019-03-021-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes the interface as well to remove any unique methods that frontends needed to call such as StartJoystickEventHandler by conditionally starting the polling thread only if the frontend hasn't started it already. Additionally, moves all global state into a single SDLState class in order to guarantee that the destructors are called in the proper order
* | | | | Merge pull request #2196 from DarkLordZach/web-applet-escbunnei2019-03-072-0/+7
|\ \ \ \ \ | | | | | | | | | | | | web_browser: Add shortcut to Enter key to exit applet
| * | | | | web_browser: Add shortcut to Enter key to exit appletZach Hilman2019-03-052-0/+7
| | | | | | | | | | | | | | | | | | Addresses issues where a user in fullscreen could not exit some web applets without leaving fullscreen.
* | | | | | Merge pull request #2205 from FearlessTobi/docked-undocked-hotkeybunnei2019-03-071-0/+8
|\ \ \ \ \ \ | |_|_|/ / / |/| | | | | yuzu: add a hotkey to switch between undocked and docked mode
| * | | | | yuzu: add a hotkey to switch between undocked and docked modefearlessTobi2019-03-061-0/+8
| |/ / / /
* | | | | Merge pull request #2055 from bunnei/gpu-threadbunnei2019-03-074-4/+21
|\ \ \ \ \ | | | | | | | | | | | | Asynchronous GPU command processing
| * | | | | bootmanager: Ensure that we have a context for shader loading.bunnei2019-03-071-4/+6
| | | | | |
| * | | | | settings: Add new graphics setting for use_asynchronous_gpu_emulation.bunnei2019-03-073-0/+15
| | | | | |
* | | | | | Merge pull request #2190 from lioncash/ogl-globalbunnei2019-03-072-3/+3
|\ \ \ \ \ \ | |/ / / / / |/| | | | | core: Remove the global telemetry accessor function
| * | | | | yuzu: Remove usage of the global telemetry accessorLioncash2019-03-042-3/+3
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | In these cases the system object is nearby, and in the other, the long-form of accessing the telemetry instance is already used, so we can get rid of the use of the global accessor.
* | | | | yuzu/debugger/wait_tree: Remove use of global CurrentProcess accessorLioncash2019-03-062-5/+6
| |/ / / |/| | | | | | | | | | | | | | | | | | | We already have the thread instance that was created under the current process, so we can just pass the handle table of it along to retrieve the owner of the mutex.
* | | | Merge pull request #2154 from FearlessTobi/port-4647Mat M2019-03-021-1/+4
|\ \ \ \ | |/ / / |/| | | Port citra-emu/citra#4647: "citra_qt/main: make SPEED_LIMIT_STEP static constexpr"
| * | | citra_qt/main: make SPEED_LIMIT_STEP static constexprfearlessTobi2019-03-021-1/+4
| |/ / | | | | | | | | | | | | | | | | | | MSVC does not seem to like using constexpr values in a lambda that were declared outside of it. Previously on MSVC build the hotkeys to inc-/decrease the speed limit were not working correctly because in the lambda the SPEED_LIMIT_STEP had garbage values. After googling around a bit I found: https://github.com/codeplaysoftware/computecpp-sdk/issues/95 which seems to be a similar issue. Trying the suggested fix to make the variable static constexpr also fixes the bug here.
* | | yuzu/compatdb: Remove unused lambda captureLioncash2019-02-271-1/+1
| | | | | | | | | | | | Silences a compiler warning with clang.
* | | common/vector_math: Move Vec[x] types into the Common namespaceLioncash2019-02-271-1/+1
|/ / | | | | | | | | These types are within the common library, so they should be using the Common namespace.
* | loading_screen: Unchunk progress barReinUsesLisp2019-02-071-1/+3
| |
* | gl_shader_cache: Link loading screen with disk shader cache loadReinUsesLisp2019-02-073-1/+19
| |
* | settings: Hide shader cache behind a settingReinUsesLisp2019-02-073-0/+12
| |
* | Merge pull request #2057 from FearlessTobi/port-4586bunnei2019-02-062-7/+15
|\ \ | | | | | | Port citra-emu/citra#4586: "Use QPixmap/QIcon for background color selection button"
| * | Use QPixmap/QIcon for background color selection buttonxperia642019-01-262-7/+15
| | |
* | | Merge pull request #2086 from FearlessTobi/port-4583bunnei2019-02-061-6/+10
|\ \ \ | | | | | | | | Port citra-emu/citra#4583: "citra_qt: Fix saving screenshot when no file extension is provided"
| * | | Fix crash when no files are selectedxperia642019-02-051-6/+6
| | | |
| * | | Add file extension to screenshot filename if not providedxperia642019-02-051-3/+7
| | | |
* | | | Merge pull request #2088 from jroweboy/hbunnei2019-02-061-1/+4
|\ \ \ \ | |/ / / |/| | | QT: Fix the loading screen 'H' switch logo to not glitch out
| * | | QT: Fix the loading screen 'H' switch logo to not glitch outJames Rowe2019-02-061-1/+4
| |/ /
* / / kernel: Remove the Timer classLioncash2019-02-012-30/+0
|/ / | | | | | | | | | | | | | | | | | | | | | | A holdover from citra, the Horizon kernel on the switch has no prominent kernel object that functions as a timer. At least not to the degree of sophistication that this class provided. As such, this can be removed entirely. This class also wasn't used at all in any meaningful way within the core, so this was just code sitting around doing nothing. This also allows removing a few things from the main KernelCore class that allows it to use slightly less resources overall (though very minor and not anything really noticeable).
* | Merge pull request #2054 from bunnei/scope-context-refactorbunnei2019-01-241-8/+9
|\ \ | | | | | | frontend: Refactor ScopeAcquireWindowContext out of renderer_opengl.
| * | frontend: Refactor ScopeAcquireWindowContext out of renderer_opengl.bunnei2019-01-241-8/+9
| | |
* | | citra_qt: Log settings on launchzhupengfei2019-01-222-0/+4
|/ /
* | Merge pull request #2035 from lioncash/fwd-declbunnei2019-01-217-17/+14
|\ \ | |/ |/| yuzu/configuration: Remove unnecessary inclusions where applicable
| * yuzu/configuration/configure_input_player: Forward declare types where applicableLioncash2019-01-172-2/+7
| | | | | | | | | | Allows removing the inclusion of the main input common header from the UI config header.
| * yuzu/configuration/configure_touchscreen_advanced: Remove unnecessary header inclusionsLioncash2019-01-171-2/+0
| |
| * yuzu/configuration/configure_per_general: Remove unused header inclusionsLioncash2019-01-172-4/+3
| |
| * yuzu/configuration/configure_debug: Remove unused header inclusionsLioncash2019-01-171-1/+0
| |
| * yuzu/configuration/configure_system: Remove unused header inclusionsLioncash2019-01-171-8/+4
| |
* | Change const char* to const char[]James Rowe2019-01-211-4/+4
| |
* | Fix mingw compile error and warningsJames Rowe2019-01-212-6/+6
| |
* | Add fade out effect to the loading screenJames Rowe2019-01-214-94/+158
| |
* | Set Minimum Size to the same as renderwindowJames Rowe2019-01-211-0/+1
| |
* | Remove blue box around loading screenJames Rowe2019-01-211-1/+0
| |
* | Change the background color of Stage Complete to yuzu blueJames Rowe2019-01-211-1/+1
| |
* | Rename step 1 and step 2 to be a little more descriptiveJames Rowe2019-01-211-6/+6
| |
* | Prevent estimated time from flashing after slow shader compilation startsJames Rowe2019-01-211-1/+1
| |
* | Move progress bar style into constexpr stringsJames Rowe2019-01-211-28/+32
| |
* | Hide progress bar on Prepare stepJames Rowe2019-01-201-7/+8
| |
* | QT: Upgrade the Loading Bar to look much betterJames Rowe2019-01-203-11/+192
| |
* | Merge pull request #2034 from jroweboy/loading-widgetbunnei2019-01-208-10/+258
|\ \ | | | | | | QT Frontend: Add a Loading screen with progressbar
| * | Add a workaround if QMovie isn't availableJames Rowe2019-01-202-1/+20
| | |
| * | QT Frontend: Add a Loading screen with progressbarJames Rowe2019-01-208-10/+239
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With shader caches on the horizon, one requirement is to provide visible feedback for the progress. The shader cache reportedly takes several minutes to load for large caches that were invalidated, and as such we should provide a loading screen with progress. Adds a loading screen widget that will be shown until the first frame of the game is swapped. This was chosen in case shader caches are not being used, several games still take more than a few seconds to launch and could benefit from a loading screen.
* | | Merge pull request #2032 from lioncash/webbunnei2019-01-201-6/+5
|\ \ \ | |/ / |/| | yuzu/configuration/configure_web: Amend verification string
| * | yuzu/configuration/configure_web: Remove an unused lambda captureLioncash2019-01-171-5/+4
| | | | | | | | | | | | | | | | | | 'this' isn't actually used within the lambda, since what we need from the class is already assigned within the capture section of the lambda.
| * | yuzu/configuration/configure_web: Use an ellipsis with 'Verifying' textLioncash2019-01-171-1/+1
| |/ | | | | | | | | It's a common UI pattern to use an ellipsis to indicate an ongoing action, rather than just specifying the word by itself.
* | core/frontend/applets/web_browser: Make OpenPage() non-constLioncash2019-01-172-4/+4
| | | | | | | | | | | | | | | | This is a function that definitely doesn't always have a non-modifying behavior across all implementations, so this should be made non-const. This gets rid of the need to mark data members as mutable to work around the fact mutating data members needs to occur.
* | yuzu/web_browser: std::move std::function instances in OpenPage()Lioncash2019-01-171-2/+2
| | | | | | | | Avoids the need to potentially reallocate the contained callbacks.
* | yuzu/web_browser: Make slot functions privateLioncash2019-01-171-2/+1
|/ | | | | These currently aren't used by anything other than the QtWebBrowser class itself, and can be made private.
* Merge pull request #1848 from FreddyFunk/QJsonArraybunnei2019-01-121-2/+2
|\ | | | | game_list: Remove a reference of a reference
| * game_list: Remove a reference of a referenceFrederic Laing2018-12-031-2/+2
| |
* | Merge pull request #1959 from DarkLordZach/custom-rtcbunnei2019-01-103-30/+83
|\ \ | | | | | | settings: Add support for setting the RTC manually
| * | settings: Fix comment structureZach Hilman2019-01-081-1/+2
| | |
| * | settings: Use std::chrono::seconds instead of s64 for RTCZach Hilman2019-01-082-5/+9
| | |
| * | qt: Provide UI to edit custom RTC settingsZach Hilman2019-01-082-28/+66
| | |
| * | settings: Add custom RTC settingsZach Hilman2019-01-081-2/+12
| | | | | | | | | Stored as signed seconds since epoch.
* | | Merge pull request #1939 from DarkLordZach/web-appletbunnei2019-01-105-0/+331
|\ \ \ | |/ / |/| | applets: Implement HLE web browser applet (LibAppletOff)
| * | travis: Use correct package for linux Qt5WebEngineZach Hilman2018-12-291-1/+1
| | |
| * | web_browser: Add bounds checking to applet interfaceZach Hilman2018-12-293-12/+21
| | |
| * | main: Add main window integrations for QtWebBrowserAppletZach Hilman2018-12-283-0/+168
| | |
| * | qt: Implement Qt frontend to web browserZach Hilman2018-12-282-0/+154
| | | | | | | | | | | | Using a custom reimplementation of QWebEngineView and an injector script.
* | | qt: Move profile manager to own UI tabZach Hilman2019-01-049-427/+565
| | |
* | | Removed pulse event typeDavid Marcec2019-01-041-2/+0
| | | | | | | | | | | | Pulse is considered a hack and nothing should be using it. We should completely remove it
* | | Merge pull request #1942 from DarkLordZach/profile-select-game-bootbunnei2019-01-036-0/+32
|\ \ \ | | | | | | | | qt: Add setting to prompt for user on game boot
| * | | qt: Add setting to prompt for user on game bootZach Hilman2018-12-256-0/+32
| | | | | | | | | | | | Using the QtProfileSelectorDialog, this implementation is trivial. This mimics the real switch behavior of asking which user on every game boot, but it is default disabled as that might get inconvenient.
* | | | Merge pull request #1941 from DarkLordZach/profile-select-save-databunnei2019-01-031-22/+16
|\ \ \ \ | | | | | | | | | | qt: Use ProfileSelectionDialog when selecting user for save data
| * | | | qt: Use ProfileSelectionDialog when selecting user for save dataZach Hilman2018-12-251-22/+16
| |/ / / | | | | | | | | This allows us to present a much nicer UI to the user over a simple combo box and is made easy with the modular nature of the profile-selection applet frontend.
* | | | Merge pull request #1944 from FearlessTobi/port-4187bunnei2019-01-023-59/+124
|\ \ \ \ | | | | | | | | | | Port citra-emu/citra#4187: "Qt/Configure: Use sidebar to divide tabs into smaller groups"
| * | | | Qt/Configure: Use sidebar to divide tabs into smaller groupsspycrab2018-12-283-59/+124
| |/ / /
* | | | yuzu/configure_general: Silence truncation warnings in loadConfiguration()Lioncash2019-01-011-2/+2
| | | | | | | | | | | | | | | | The QPixmap API expects an unsigned int.
* | | | yuzu/config: Silence truncation warningsLioncash2019-01-011-1/+1
| | | |
* | | | kernel: Rename 'default' CPU core to 'ideal' coreLioncash2018-12-281-2/+2
| |/ / |/| | | | | | | | | | | | | | This makes the naming more closely match its meaning. It's just a preferred core, not a required default core. This also makes the usages of this term consistent across the thread and process implementations.
* | | am: Implement GetSaveDataSize and ExtendSaveDataZach Hilman2018-12-271-3/+3
| | | | | | | | | These functions come in a pair and are needed by Smash Ultimate, Minecraft, and Skyrim, amongst others.
* | | Merge pull request #1948 from lioncash/translatablebunnei2018-12-271-2/+2
|\ \ \ | | | | | | | | configure_per_general: Mark UI strings as translatable in the constructor
| * | | configure_per_general: Mark UI strings as translatable in the constructorLioncash2018-12-261-2/+2
| | | | | | | | | | | | | | | | These are user-facing strings, so they should be translatable.
* | | | configure_input_simple: Make input profile array constexprLioncash2018-12-261-12/+7
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | Calling tr() from a file-scope array isn't advisable, since it can be executed before the Qt libraries are even fully initialized, which can lead to crashes. Instead, the translatable strings should be annotated, and the tr() function should be called at the string's usage site.
* | | Merge pull request #1849 from encounter/svcSetThreadActivitybunnei2018-12-261-0/+5
|\ \ \ | |/ / |/| | svc: Implement SetThreadActivity (thread suspension)
| * | debugger: Set paused thread colorLuke Street2018-12-041-1/+2
| | |
| * | svc: Implement SetThreadActivity (thread suspension)Luke Street2018-12-041-0/+4
| | |
* | | Merge pull request #1886 from FearlessTobi/port-4164bunnei2018-12-237-39/+111
|\ \ \ | | | | | | | | Port citra-emu/citra#4164: "citra_qt, video_core: Screenshot functionality"
| * | | yuzu, video_core: Screenshot functionalityzhupengfei2018-12-187-39/+111
| | | | | | | | | | | | | | | | Allows capturing screenshot at the current internal resolution (native for software renderer), but a setting is available to capture it in other resolutions. The screenshot is saved to a single PNG in the current layout.
* | | | Merge pull request #1781 from DarkLordZach/applet-profile-selectbunnei2018-12-235-0/+269
|\ \ \ \ | | | | | | | | | | am: Implement HLE profile selector applet
| * | | | applets: Correct event ResetTypes from OneShot to StickyZach Hilman2018-12-031-1/+1
| | | | | | | | | | | | | | | | | | | | Fixes bugs relating to signalling in software keyboard.
| * | | | qt: Implement GUI dialog frontend for ProfileSelectorZach Hilman2018-12-035-0/+267
| | | | | | | | | | | | | | | Presents profiles in a list, similar to switch.
| * | | | qt: Register to use Qt ProfileSelector instead of defaultZach Hilman2018-12-031-0/+2
| | |/ / | |/| |
* | | | Merge pull request #1780 from DarkLordZach/controller-profilesbunnei2018-12-2312-66/+401
|\ \ \ \ | | | | | | | | | | configure_input: Add Controller Setup Profiles and simplify input UI
| * | | | configure_input_simple: Properly signal docked mode changeZach Hilman2018-12-053-33/+31
| | | | |
| * | | | configure_input: Add ConfigureInputSimple as default input UI configZach Hilman2018-12-058-1/+293
| | | | | | | | | | | | | | | Greatly simplifies the current input UI, while still allowing power users to tweak advanced settings. Adds 'input profiles', which are easy autoconfigurations to make getting started easy and fast. Also has a custom option which brings up the current, full UI.
| * | | | configure_input: Convert into QDialogZach Hilman2018-12-053-7/+47
| | | | |
| * | | | configure: Use ConfigureInputSimple for Input tabZach Hilman2018-12-051-26/+26
| | | | |
| * | | | ui_settings: Add UI setting for input profile indexZach Hilman2018-12-052-0/+5
| | | | |
* | | | | Fixed uninitialized memory due to missing returns in canaryDavid Marcec2018-12-191-0/+1
| | | | | | | | | | | | | | | | | | | | Functions which are suppose to crash on non canary builds usually don't return anything which lead to uninitialized memory being used.
* | | | | Merge pull request #1902 from lioncash/audiobunnei2018-12-151-4/+3
|\ \ \ \ \ | | | | | | | | | | | | audio_core: Make g_sink_details internally linked
| * | | | | audio_core: Make g_sink_details internally linkedLioncash2018-12-131-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can hide the direct array from external view and instead provide functions to retrieve the necessary info. This has the benefit of completely hiding the makeup of the SinkDetails structure from the rest of the code. Given that this makes the array hidden, we can also make the array constexpr by altering the members slightly. This gets rid of several static constructor calls related to std::vector and std::function. Now we don't have heap allocations here that need to occur before the program can even enter main(). It also has the benefit of saving a little bit of heap space, but this doesn't matter too much, since the savings in that regard are pretty tiny.
* | | | | | Merge pull request #1871 from lioncash/movebunnei2018-12-142-2/+2
|\ \ \ \ \ \ | |/ / / / / |/| | | | | yuzu/wait_tree: Pass QString by value and std::move in the initializer list for WaitTreeText
| * | | | | yuzu/wait_tree: Pass QString by value and std::move in the initializer list for WaitTreeTextLioncash2018-12-062-2/+2
| |/ / / / | | | | | | | | | | | | | | | Just a trivial modernization that potentially avoids copying strings in certain scenarios.
* | | | | Merge pull request #1819 from DarkLordZach/disable-addonsbunnei2018-12-1110-1/+564
|\ \ \ \ \ | | | | | | | | | | | | patch_manager: Add support for disabling patches
| * | | | | qt: Add Properties menu to game list right-clickZach Hilman2018-12-048-21/+53
| | | | | |
| * | | | | qt: Add UI to display game properties and disable add-onsZach Hilman2018-12-034-0/+501
| | | | | |
| * | | | | config: Store and load disabled add-ons listZach Hilman2018-12-031-0/+30
| | |/ / / | |/| | |
* | | | | Merge pull request #1873 from lioncash/constbunnei2018-12-081-9/+15
|\ \ \ \ \ | |_|_|/ / |/| | | | loaders: Make GetFileType() a const qualified member function
| * | | | yuzu/game_list_worker: Don't retrieve the file type twice in AddFstEntriesToGameList()Lioncash2018-12-051-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similarly, here we can avoid doing unnecessary work twice by retrieving the file type only once and comparing it against relevant operands, avoiding potential unnecessary object construction/destruction.
| * | | | yuzu/game_list_worker: Don't retrieve file type and file type strings twice in MakeGameListEntry()Lioncash2018-12-051-4/+6
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | While GetFileType() is indeed a getter function, that doesn't mean it's a trivial function, given some case require reading from the data or constructing other objects in the background. Instead, only do necessary work once.
* / | | configuration/config: Use an intermediary variable for accessing playersLioncash2018-12-051-43/+38
|/ / / | | | | | | | | | Avoids typing the same long accessor just to retrieve player attributes.
* | | Merge pull request #1837 from lioncash/mapbunnei2018-12-051-59/+46
|\ \ \ | | | | | | | | yuzu/game_list_worker: Minor cleanup and code deduplication
| * | | yuzu/game_list_worker: Move std::string construction after the termination check in callbacksLioncash2018-12-051-7/+7
| | | | | | | | | | | | | | | | | | | | Avoids potentially allocating a std::string instance when it isn't needed.
| * | | yuzu/game_list_worker: Deduplicate game list entry creationLioncash2018-12-021-47/+33
| | | | | | | | | | | | | | | | Avoids duplicating the same code twice verbatim.
| * | | yuzu/game_list_worker: Tidy up string handling in FillControlMap()Lioncash2018-12-021-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't need to call out to our own file handling functions when we're going to construct a QFileInfo instance right after it. We also don't need to convert to a std::string again just to compare the file extension.
* | | | kernel/object: Amend handle types to distinguish between readable and writable eventsLioncash2018-12-041-1/+1
| |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Two kernel object should absolutely never have the same handle ID type. This can cause incorrect behavior when it comes to retrieving object types from the handle table. In this case it allows converting a WritableEvent into a ReadableEvent and vice-versa, which is undefined behavior, since the object types are not the same. This also corrects ClearEvent() to check both kernel types like the kernel itself does.
* | | Merge pull request #1842 from lioncash/slotbunnei2018-12-039-14/+12
|\ \ \ | | | | | | | | yuzu/configuration: Minor clean-up related changes
| * | | yuzu/configuration: Make slots private where applicableLioncash2018-12-025-7/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These slots are only ever attached to event handling mechanisms within the class itself, they're never used externally. Because of this, we can make the functions private. This also removes redundant usages of the private access specifier.
| * | | yuzu/configuration: Add missing override specifiers to configuration-related classesLioncash2018-12-027-7/+7
| | | | | | | | | | | | | | | | Resolves trivial compiler warnings.
| * | | yuzu/configuration/configure_input: Default destructor in the cpp fileLioncash2018-12-022-0/+3
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous code could potentially be a compilation issue waiting to occur, given we forward declare the type for a std::unique_ptr. If the complete definition of the forward declared type isn't visible in a translation unit that the class is used in, then it would fail to compile. Defaulting the destructor in a cpp file ensures the std::unique_ptr's destructor is only invoked where its complete type is known.
* | | Merge pull request #1835 from lioncash/cache-globalbunnei2018-12-032-9/+9
|\ \ \ | | | | | | | | filesystem: De-globalize registered_cache_union
| * | | filesystem: De-globalize registered_cache_unionLioncash2018-12-022-9/+9
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | We can just return a new instance of this when it's requested. This only ever holds pointers to the existing registed caches, so it's not a large object. Plus, this also gets rid of the need to keep around a separate member function just to properly clear out the union. Gets rid of one of five globals in the filesystem code.
* | | Merge pull request #1803 from DarkLordZach/k-able-eventbunnei2018-12-032-6/+7
|\ \ \ | |_|/ |/| | kernel: Divide Event into ReadableEvent and WritableEvent
| * | kernel/event: Reference ReadableEvent from WritableEventZach Hilman2018-11-292-6/+6
| | |
| * | core: Port all current usages of Event to Readable/WritableEventZach Hilman2018-11-292-6/+7
| | |
* | | Merge pull request #1795 from ReinUsesLisp/vc-cleanupbunnei2018-12-021-0/+2
|\ \ \ | | | | | | | | video_core: Minor style changes
| * | | gl_rasterizer: Remove extension booleansReinUsesLisp2018-11-291-0/+2
| | | |
* | | | remove border from GameListBartosz Kaszubowski2018-11-301-0/+1
| |_|/ |/| |
* | | configure_input: Amend clang-format discrepanciesLioncash2018-11-301-1/+1
| |/ |/|
* | Merge pull request #1768 from greggameplayer/patch-2bunnei2018-11-291-0/+4
|\ \ | |/ |/| Uncheck automatically joycons docked when docked mode is enable
| * correct clang-formatgreggameplayer2018-11-221-1/+1
| |
| * Automatically disable joycons dockedgreggameplayer2018-11-221-0/+4
| | | | | | when docked mode is enable
* | Merge pull request #1814 from lioncash/ptrbunnei2018-11-281-5/+5
|\ \ | | | | | | file_sys/registered_cache: Use regular const references instead of std::shared_ptr for InstallEntry()
| * | file_sys/registered_cache: Use regular const references instead of std::shared_ptr for InstallEntry()Lioncash2018-11-271-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These parameters don't need to utilize a shared lifecycle directly in the interface. Instead, the caller should provide a regular reference for the function to use. This also allows the type system to flag attempts to pass nullptr and makes it more generic, since it can now be used in contexts where a shared_ptr isn't being used (in other words, we don't constrain the usage of the interface to a particular mode of memory management).
* | | yuzu/configure_input_player: Use std::size_t to represent the player index instead of u8Lioncash2018-11-272-3/+3
| | | | | | | | | | | | | | | | | | Prevents compiler warnings related to truncation when invoking the dialog. It's also extremely suspect to use a u8 value here instead of a more general type to begin with.
* | | yuzu/configure_input: Make CallConfigureDialog a non-member template functionLioncash2018-11-273-21/+20
| | | | | | | | | | | | | | | This doesn't depend on any part of the private interface, so it can be made a non-member internal function.
* | | yuzu/configure_input_player: Use a lambda expression instead of std::bindLioncash2018-11-271-1/+1
| | | | | | | | | | | | std::bind is the pre-C++11 way of doing this.
* | | yuzu/configure_input_player: Amend constructor initializer list orderLioncash2018-11-271-4/+3
| | | | | | | | | | | | | | | Orders the elements the way they would actually be initialized in. Resolves compiler warnings with gcc and clang
* | | yuzu/configure_input: Remove unused function MoveGridElementLioncash2018-11-271-7/+0
| | |
* | | yuzu/configure_input*: Move data members after function declarationsLioncash2018-11-272-41/+42
| | | | | | | | | | | | | | | The common pattern is to put the data members after the function interface where applicable.
* | | yuzu/configure_input: Remove unnecessary includesLioncash2018-11-273-17/+3
|/ /
* | Merge pull request #1725 from FernandoS27/gl43bunnei2018-11-242-17/+3
|\ \ | | | | | | Update OpenGL's backend version from 3.3 to 4.3
| * | Removed pre 4.3 ARB extensionsFernandoS272018-11-211-14/+0
| | |
| * | Update OpenGL's backend version from 3.3 to 4.3FernandoS272018-11-212-3/+3
| |/
* | Merge pull request #1708 from ogniK5377/res-scalebunnei2018-11-241-47/+47
|\ \ | | | | | | Report resolution scaling support for vi and am
| * | Report resolution scaling support for vi and amDavid Marcec2018-11-161-47/+47
| | | | | | | | | | | | Specifying an internal resolution in yuzu now will report the scaled changes to vi and am.
* | | Merge pull request #1747 from DarkLordZach/exefs-lfsbunnei2018-11-243-0/+14
|\ \ \ | | | | | | | | patch_manager: Add support for applying LayeredFS patches to ExeFS
| * | | patch_manager: Show LayeredExeFS patch in add-ons columnZach Hilman2018-11-211-1/+1
| | | | | | | | | | | | The decision was made to name them LayeredExeFS instead of just LayeredFS to differentiate from normal RomFS-based mods. The name may be long/unweildy, but conveys the meaning well.
| * | | settings: Add option to dump ExeFS of games upon launchZach Hilman2018-11-203-0/+14
| | | | | | | | | | | | | | | | When enabled, all exefs(es) will be copied to yuzu/dump/<title_id>/exefs.
* | | | yuzu/applets/software_keyboard: Override accept() and reject() instead of providing own differently named member functionsLioncash2018-11-202-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | Uses Qt's built-in interface instead of rolling our own separate one on top of it. This also fixes a bug in reject() where we were calling accept() instead of reject().
* | | | yuzu/applets/software_keyboard: std::move std::function instances where applicableLioncash2018-11-201-2/+2
| | | | | | | | | | | | | | | | | | | | std::function instances can potentially allocate. std::moveing them prevents an avoidable allocation in that case.
* | | | yuzu/applets/software_keyboard: Make slots private functionsLioncash2018-11-201-2/+1
| |_|/ |/| | | | | | | | These aren't required to be public.
* | | Merge pull request #1667 from DarkLordZach/swkbdbunnei2018-11-205-0/+276
|\ \ \ | | | | | | | | am: Implement HLE software keyboard applet
| * | | software_keyboard: Add max and current length display to dialogZach Hilman2018-11-182-1/+11
| | | |
| * | | applet: Add operation completed callbackZach Hilman2018-11-184-3/+22
| | | |
| * | | software_keyboard: Make GetText asynchronousZach Hilman2018-11-184-18/+35
| | | | | | | | | | | | | | | | a
| * | | am: Allow applets to push multiple and different channels of dataZach Hilman2018-11-184-20/+21
| | | |
| * | | am: Implement text check software keyboard modeZach Hilman2018-11-181-0/+17
| | | | | | | | | | | | | | | | Allows the game to verify and send a message to the frontend.
| * | | am: Deglobalize software keyboard appletZach Hilman2018-11-184-34/+70
| | | |
| * | | qt/main: Register Qt Software Keyboard frontend with AMZach Hilman2018-11-182-0/+5
| | | | | | | | | | | | | | | | Allows using Qt provider over default.
| * | | qt/applets: Provide Qt frontend implementation of software keyboardZach Hilman2018-11-183-0/+171
| |/ / | | | | | | Implements all of the features of the keyboard, including length, default text, character validation, and UTF-16 character support.
* | | configure_input: Use Joycons Docked instead of Connected as labelZach Hilman2018-11-191-1/+1
| | |
* | | configure_input_player: Set minimum width on controlsZach Hilman2018-11-191-16/+24
| | |
* | | configure_input: Properly update UI components on removal of playerZach Hilman2018-11-191-0/+2
| | |
* | | configure_input: Make None a controller option instead of checkboxZach Hilman2018-11-1911-152/+148
| | |
* | | hid: Use player-defined controller type as PREFERRED_CONTROLLERZach Hilman2018-11-1910-81/+120
| | |
* | | qt: Move controller button config to separate dialogZach Hilman2018-11-194-0/+1767
| | | | | | | | | | | | Handles button configuration for all controller layouts and debug pads. Configurable at construction.
* | | qt: Add UI to configure touchscreen parametersZach Hilman2018-11-194-0/+281
| | | | | | | | | | | | This allows adjusting the finger, diameter, and angle of the emulated touchscreen. It also provides a warning to the user about what changing these parameters can do.
* | | qt: Add UI to configure mouse buttonsZach Hilman2018-11-194-0/+542
| | | | | | | | | | | | Supports setting the five mouse buttons to any valid controller button/keyboard key (Left, Right, Middle, Foward, Back)
* | | configure_input: Add support for multiplayer and controller typesZach Hilman2018-11-193-998/+525
| | | | | | | | | | | | This moves the actual button configuration to a separate dialog and only has the enabled and type controls in the tab.
* | | yuzu/config: Add (de-)serialization for multiplayerZach Hilman2018-11-192-21/+331
| | | | | | | | | | | | Defaults to full keyboard for keyboard -- It did not seem to be necessary to make the keyboard configurable (besides enabled/disabled).
* | | Merge pull request #1640 from DarkLordZach/game-list-reloadbunnei2018-11-195-1/+28
|\ \ \ | |/ / |/| | game_list: Only reload game list after relevant settings changed
| * | game_list: Only reload game list after relevant settings changedZach Hilman2018-11-045-1/+28
| | | | | | | | | Prevents unnecessary reloads on every configuration operation.
* | | Merge pull request #1678 from FearlessTobi/amiibo-hotkeysbunnei2018-11-171-1/+9
|\ \ \ | | | | | | | | Port citra-emu/citra#4387: "yuzu: Add hotkey for Amiibo loading"
| * | | yuzu: Add hotkey for Amiibo loadingfearlessTobi2018-11-131-1/+9
| | | |
* | | | Merge pull request #1632 from DarkLordZach/keys-manager-optimizationsbunnei2018-11-166-119/+166
|\ \ \ \ | | | | | | | | | | game_list: Optimize game list refresh
| * | | | game_list: Make add-ons column optionalZach Hilman2018-11-026-119/+166
| | | | | | | | | | | | | | | | | | | | As the add-ons column takes the most processing time out of any (as it needs to search registration for updates/dlc, patch control NCAs, search for mods, etc.), an option was added to disable it. This does not affect the application of add-ons. In large game collections, this decreases game list refresh time by as much as 70%.
* | | | | Fixed switching operation modes when not running a gameDavid Marcec2018-11-161-0/+3
| |_|_|/ |/| | | | | | | | | | | The service manager seems to be a nullptr before a game boots
* | | | Merge pull request #1618 from DarkLordZach/dump-nsobunnei2018-11-153-1/+24
|\ \ \ \ | | | | | | | | | | patch_manager: Add support for dumping uncompressed NSOs
| * | | | settings: Add setting to control NSO dumpingZach Hilman2018-10-293-1/+24
| | | | | | | | | | | | | | | | | | | | Also adds UI option in Debug > Dump section, with the idea later things to be dumped (i.e. other game data or textures, etc) will use the same group box.
* | | | | yuzu/configure_system: Mark the entropy mask string as nontranslatableLioncash2018-11-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | There's no need for translators to concern themselves with the validation mask used by the entry field.
* | | | | Merge pull request #1679 from DarkLordZach/deterministic-rng-2bunnei2018-11-142-6/+5
|\ \ \ \ \ | | | | | | | | | | | | svc: Use proper random entropy generation algorithm
| * | | | | svc: Use proper random entropy generation algorithmZach Hilman2018-11-132-6/+5
| | | | | |
* | | | | | qt: Move Open yuzu Folder action from Help to FileZach Hilman2018-11-131-1/+2
|/ / / / /
* | | | | Merge pull request #1670 from DarkLordZach/deterministic-rngbunnei2018-11-133-100/+160
|\ \ \ \ \ | | | | | | | | | | | | csrng: Add config option to set RNG seed
| * | | | | svc: Return random seed for svcGetInfo RandomEntropyZach Hilman2018-11-131-3/+6
| | | | | |
| * | | | | settings: Add config option to set RNG seedZach Hilman2018-11-123-100/+157
| | | | | |
* | | | | | Merge pull request #1650 from FreddyFunk/castbunnei2018-11-131-1/+2
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | | yuzu/main: Fix compiler warning
| * | | | | yuzu/main: Fix compiler warningFrederic Laing2018-11-061-1/+2
| | | | | |
* | | | | | Merge pull request #1674 from FearlessTobi/fullscreen-fixJames Rowe2018-11-121-1/+1
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | yuzu: Add a missing "!" to fix the stuck-in-fullscreen bug
| * | | | | yuzu: Add a missing "!" to fix the stuck-in-fullscreen bugTobias2018-11-121-1/+1
| | |/ / / | |/| | |
* | | | | Merge pull request #1652 from FreddyFunk/static-castbunnei2018-11-111-1/+1
|\ \ \ \ \ | | | | | | | | | | | | configure_system: Fix compiler warning
| * | | | | configure_system: Fix compiler warningFrederic Laing2018-11-061-1/+1
| | |/ / / | |/| | |
* | | | | Renamed CheckIfOperationChanged to OnDockedModeChangedDavid Marcec2018-11-082-21/+23
| | | | |
* | | | | FixupsDavid Marcec2018-11-072-11/+16
| | | | |
* | | | | Ability to switch between docked and undocked mode in-gameDavid Marcec2018-11-071-1/+25
|/ / / / | | | | | | | | | | | | Started implementation of the AM message queue mainly used in state getters. Added the ability to switch docked mode whilst in game without stopping emulation. Also removed some things which shouldn't be labelled as stubs as they're implemented correctly
* | | | Merge pull request #1441 from CarlKenner/DebuggerLogbunnei2018-11-051-0/+3
|\ \ \ \ | | | | | | | | | | logging: Add DebuggerBackend for logging to Visual Studio
| * | | | logging: Add DebuggerBackend for logging to Visual StudioCarl Kenner2018-10-071-0/+3
| | | | |
* | | | | Merge pull request #1639 from DarkLordZach/open-yuzu-folderbunnei2018-11-053-0/+13
|\ \ \ \ \ | | | | | | | | | | | | qt: Add help option to open yuzu folder
| * | | | | qt: Add help option to open yuzu folderZach Hilman2018-11-033-0/+13
| | |_|_|/ | |/| | | | | | | | | | | | | Opens a new file manager window at the UserDir.
* | | | | Merge pull request #1625 from FernandoS27/astcbunnei2018-11-051-3/+3
|\ \ \ \ \ | | | | | | | | | | | | Implement ASTC Textures 5x5 and fix a bunch of ASTC texture problems
| * | | | | Fix ASTC Decompressor to support depth parameterFernandoS272018-11-021-3/+3
| | | | | |
| * | | | | Fix ASTC formatsFernandoS272018-11-011-1/+1
| | | | | |
* | | | | | Fix quickstart linkDharmin K Shah2018-11-041-1/+1
| |/ / / / |/| | | |
* | | | | Merge pull request #1615 from lioncash/inputbunnei2018-11-024-24/+111
|\ \ \ \ \ | |/ / / / |/| | | | configure_system: Contrain profile usernames to 32 characters
| * | | | configure_system: Contrain profile usernames to 32 charactersLioncash2018-10-314-24/+111
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, we would let a user enter an unbounded name and then silently truncate away characters that went over the 32-character limit. This is kind of bad from the UX point of view, because we're essentially not doing what the user intended in certain scenarios. Instead, we clamp it to 32 characters and make that visually apparent in the dialog box to provide a name for a user.
* | | | Merge pull request #1604 from FearlessTobi/port-4369bunnei2018-11-012-2/+29
|\ \ \ \ | |_|_|/ |/| | | Port citra-emu/citra#4369: "compatdb: Use a seperate endpoint for testcase submission"
| * | | compatdb: Use a seperate endpoint for testcase submissionfearlessTobi2018-10-282-2/+29
| | | |
* | | | Merge pull request #1624 from lioncash/boostbunnei2018-10-301-1/+0
|\ \ \ \ | | | | | | | | | | general: Remove unused boost inclusions where applicable
| * | | | general: Remove unused boost inclusions where applicableLioncash2018-10-301-1/+0
| | | | | | | | | | | | | | | | | | | | Cleans up unused includes and trims off some dependencies on externals.
* | | | | Merge pull request #1595 from FreddyFunk/castbunnei2018-10-301-1/+1
|\ \ \ \ \ | |/ / / / |/| | | | configure_system: Fix compiler warning
| * | | | configure_system: Fix compiler warningFrederic Laing2018-10-281-1/+1
| | |/ / | |/| |
* / | | global: Use std::optional instead of boost::optional (#1578)Frederic L2018-10-306-15/+16
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * get rid of boost::optional * Remove optional references * Use std::reference_wrapper for optional references * Fix clang format * Fix clang format part 2 * Adressed feedback * Fix clang format and MacOS build
* | | configure_system: Make GetIcon() return the scaled 64x64 iconLioncash2018-10-271-14/+7
| | | | | | | | | | | | | | | | | | Avoids the need to put the scaling parameters all over the place for the common case. The only other time scaling is done is to generate the smaller 48x48 image, so this is fine.
* | | configure_system: Move entry formatting for the user account list entries to its own functionLioncash2018-10-271-18/+22
| | | | | | | | | | | | | | | Avoids the need to duplicate this all over the place, and makes it translator-friendly across the board.
* | | configure_system: Display errors to the user if file operations fail when setting user imagesLioncash2018-10-271-24/+46
|/ / | | | | | | | | We should display an error to the user if setting a user image for an account fails, rather than continuing onwards.
* | Merge pull request #1569 from lioncash/amiibobunnei2018-10-261-14/+35
|\ \ | | | | | | yuzu/main: Notify user of loading errors with Amiibo data
| * | yuzu/main: Notify user of loading errors with Amiibo dataLioncash2018-10-241-14/+35
| | | | | | | | | | | | | | | We shouldn't silently continue if loading failed, since the general assumption is that no messages showing up implicitly indicates success.
* | | configure_system: Make the file selector text translatableLioncash2018-10-251-1/+1
| | | | | | | | | | | | This should be localizable, since it's user-facing text.
* | | configure_system: Make GetAccountUsername() an internal functionLioncash2018-10-252-25/+28
| | | | | | | | | | | | | | | | | | | | | We can just make the function accept an arbitrary ProfileManager reference and operate on that instead of tying the function to the class itself. This allows us to keep the function internal to the cpp file and removes the need to forward declare the UUID struct.
* | | configure_system: Default initialize member variablesLioncash2018-10-251-4/+5
| | | | | | | | | | | | | | | | | | These should be initialized to deterministic values so it's easier to catch improper behavior, as it'll always be reproducable, instead of performing uninitialized reads.
* | | configure_system: Simplify UUID generation call in AddUser()Lioncash2018-10-251-2/+1
| | | | | | | | | | | | This is a static function so we can just perform an assignment directly.
* | | configure_system: Amend function casingLioncash2018-10-252-6/+6
| | |
* | | configure_system: Add missing override specifier on the destructorLioncash2018-10-251-1/+1
| | |
* | | configure_system: Make public slots privateLioncash2018-10-251-7/+5
| | | | | | | | | | | | | | | | | | | | | These are only used within this class, so we can make them private to keep their use contained. This also gets rid of the pre-Qt5 'slot' identifier, since Qt 5's connection syntax doesn't require a function to be declared a slot anymore.
* | | Merge pull request #1575 from lioncash/qstringbunnei2018-10-251-4/+9
|\ \ \ | | | | | | | | game_list_worker: Use QString's formatting instead of fmt in FormatPatchNameVersions()
| * | | game_list_worker: Use QString's formatting instead of fmt in FormatPatchNameVersions()Lioncash2018-10-241-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | Using fmt here requires unnecessary string conversions back into QString. Instead, we can just use QString's formatting and get the end result of the formatting operation in the proper type.
* | | | Merge pull request #1570 from lioncash/optionalbunnei2018-10-252-5/+5
|\ \ \ \ | | | | | | | | | | profile_manager: Use std::optional instead of boost::optional
| * | | | profile_manager: Use std::optional instead of boost::optionalLioncash2018-10-242-5/+5
| |/ / / | | | | | | | | | | | | | | | | Now that we can actually use std::optional on macOS, we don't need to continue using boost::optional here.
* | | | Merge pull request #1558 from lioncash/ptrbunnei2018-10-252-13/+14
|\ \ \ \ | | | | | | | | | | yuzu/configuration/config: Use a std::unique_ptr for qt_config instead of a raw pointer
| * | | | yuzu/configuration/config: Use a std::unique_ptr for qt_config instead of a raw pointerLioncash2018-10-242-8/+8
| | | | | | | | | | | | | | | | | | | | Same behavior, less code.
| * | | | yuzu/configuration/config: Reorganize member variable and function layoutLioncash2018-10-241-6/+7
| | |/ / | |/| | | | | | | | | | Makes the class layout consistent with the others.
* | | | Merge pull request #1571 from lioncash/debug-translatebunnei2018-10-242-15/+20
|\ \ \ \ | | | | | | | | | | graphic_breakpoints: Correct translation of strings in BreakpointModel's data() function
| * | | | graphic_breakpoints: Correct translation of strings in BreakpointModel's data() functionLioncash2018-10-242-15/+20
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tr() will not function properly on static/global data like this, as the object is only ever constructed once, so the strings won't translate if the language is changed without restarting the program, which is undesirable. Instead we can just turn the map into a plain old function that maps the values to their equivalent strings. This is also lessens the memory allocated, since it's only allocating memory for the strings themselves, and not an encompassing map as well.
* | | | Merge pull request #1568 from lioncash/dirbunnei2018-10-241-4/+3
|\ \ \ \ | | | | | | | | | | game_list: Use QFileInfo instead of common's file functions
| * | | | game_list: Use QFileInfo instead of common's file functionsLioncash2018-10-241-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can just use the facilities that Qt provides instead of pulling in stuff from common. While we're at it, we can also simplify the nearby logging statement's argument by just calling .toStdString()
* | | | | Merge pull request #1567 from lioncash/translatebunnei2018-10-241-5/+5
|\ \ \ \ \ | | | | | | | | | | | | game_list: Make game list column headers translatable
| * | | | | game_list: Make game list column headers translatableLioncash2018-10-241-5/+5
| |/ / / / | | | | | | | | | | | | | | | These are user-facing strings, so they should be marked as translatable
* | | | | Merge pull request #1566 from lioncash/strbunnei2018-10-241-4/+2
|\ \ \ \ \ | |_|/ / / |/| | | | bootmanager: Use QStringLiteral instead of std::string to represent the window title.
| * | | | bootmanager: Use QStringLiteral instead of std::string to represent the window titleLioncash2018-10-241-4/+2
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | This gets rid of an unnecessary type conversion. We can just use the regular QStringLiteral to already format the string as the type setWindowTitle accepts instead of converting from a std::string instance.
* | | | configure_system: Clear current username before overwritingZach Hilman2018-10-242-5/+15
| | | | | | | | | | | | | | | | Prevents bug where old username would remain if the new username was shorter in length.
* | | | profile_manager: Create save data if it doesn't exist on useZach Hilman2018-10-242-5/+5
| | | |
* | | | acc: Fix account UUID duplication errorZach Hilman2018-10-243-61/+56
| | | |
* | | | configure_system: Clear selection after user deleteZach Hilman2018-10-241-11/+17
| | | |
* | | | profile_manager: Load user icons, names, and UUIDs from system saveZach Hilman2018-10-245-87/+177
| | | |
* | | | qt: Allow user to select emu user on open save dataZach Hilman2018-10-241-3/+24
| | | |
* | | | qt: Add Profile Manager UI to system settingsZach Hilman2018-10-243-76/+350
| | | |
* | | | settings: Add users and current_user settings and remove usernameZach Hilman2018-10-241-2/+32
| |/ / |/| |
* | | Added Amiibo support (#1390)David2018-10-246-30/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fixed conflict with nfp * Few fixups for nfc * Conflict 2 * Fixed AttachAvailabilityChangeEvent * Conflict 3 * Fixed byte padding * Refactored amiibo to not reside in "System" * Removed remaining references of nfc from system * used enum for Nfc GetStateOld * Added missing newline * Moved file operations to front end * Conflict 4 * Amiibos now use structs and added mutexes * Removed amiibo_path
* | | Merge pull request #1515 from DarkLordZach/dlc-lfsbunnei2018-10-242-11/+68
|\ \ \ | | | | | | | | patch_manager: Add support for LayeredFS on DLC RomFS
| * | | qt: Add support for dumping a DLC Data RomFSZach Hilman2018-10-182-11/+68
| | | |
* | | | Merge pull request #1542 from lioncash/projectbunnei2018-10-241-4/+4
|\ \ \ \ | | | | | | | | | | CMakeLists: Use PROJECT_SOURCE_DIR instead of CMAKE_SOURCE_DIR
| * | | | CMakeLists: Use PROJECT_SOURCE_DIR instead of CMAKE_SOURCE_DIRLioncash2018-10-201-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is more localized to what we want to enforce directory-wise with the project. CMAKE_SOURCE_DIR indicates the root of the source tree, but this would cause the wrong behavior if someone included yuzu as part of a larger buildsystem (for whatever reason). Instead, we want to use the directory where the "project(yuzu)" command was declared as the root path reference.
* | | | | Merge pull request #1540 from lioncash/handlebunnei2018-10-241-2/+2
|\ \ \ \ \ | |_|_|/ / |/| | | | kernel/process: Make the handle table per-process
| * | | | kernel/process: Make the handle table per-processLioncash2018-10-201-2/+2
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the kernel, there isn't a singular handle table that everything gets tossed into or used, rather, each process gets its own handle table that it uses. This currently isn't an issue for us, since we only execute one process at the moment, but we may as well get this out of the way so it's not a headache later on.
* | | | Merge pull request #1543 from lioncash/targetbunnei2018-10-231-1/+1
|\ \ \ \ | | | | | | | | | | CMakeLists: Use target_compile_definitions instead of add_definitions to define YUZU_ENABLE_COMPATIBILITY_REPORTING
| * | | | CMakeLists: Use target_compile_definitions instead of add_definitions to define YUZU_ENABLE_COMPATIBILITY_REPORTINGLioncash2018-10-201-1/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | Keeps the definition constrained to the yuzu target and prevents polluting anything else in the same directory (should that ever happen). It also keeps it consistent with how the USE_DISCORD_PRESENCE definition is introduced below it.
* / / / qt: Move Reinitialize Keys to Tools menuZach Hilman2018-10-211-1/+7
|/ / /
* / / config: Rename use_accurate_framebuffers -> use_accurate_gpu_emulation.bunnei2018-10-163-7/+7
|/ / | | | | | | - This will be used as a catch-all for slow-but-accurate GPU emulation paths.
* | Merge pull request #1502 from lioncash/uniquebunnei2018-10-161-4/+5
|\ \ | | | | | | core: Convert shared_ptr instances into unique_ptr instances where applicable for System and Cpu
| * | core_cpu: Make Cpu scheduler instances unique_ptrs instead of shared_ptrsLioncash2018-10-151-4/+5
| | |
* | | file_sys/registered_cache: Use unique_ptr and regular pointers instead of shared_ptrs where applicableLioncash2018-10-162-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The data retrieved in these cases are ultimately chiefly owned by either the RegisteredCache instance itself, or the filesystem factories. Both these should live throughout the use of their contained data. If they don't, it should be considered an interface/design issue, and using shared_ptr instances here would mask that, as the data would always be prolonged after the main owner's lifetime ended. This makes the lifetime of the data explicit and makes it harder to accidentally create cyclic references. It also makes the interface slightly more flexible than the previous API, as a shared_ptr can be created from a unique_ptr, but not the other way around, so this allows for that use-case if it ever becomes necessary in some form.
* | | Merge pull request #1487 from lioncash/maybe-unusedbunnei2018-10-161-1/+1
|\ \ \ | | | | | | | | yuzu/main: Apply the [[maybe_unused]] attribute to the parameter of SetDiscordEnabled
| * | | yuzu/main: Apply the [[maybe_unused]] attribute to the parameter of SetDiscordEnabled()Lioncash2018-10-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Depending on whether or not USE_DISCORD_PRESENCE is defined, the "state" parameter can be used or unused. If USE_DISCORD_PRESENCE is not defined, the parameter will be considered unused, which can lead to compiler warnings. So, we can explicitly mark it with [[maybe_unused]] to inform the compiler that this is intentional.
* | | | crypto: Various crypto fixes for quickstart guideZach Hilman2018-10-151-2/+6
| |/ / |/| |
* | | Merge pull request #1490 from lioncash/bootbunnei2018-10-141-14/+12
|\ \ \ | | | | | | | | yuzu/main: Simplify OnMenuLoadFile()
| * | | yuzu/main: Simplify OnMenuLoadFile()Lioncash2018-10-131-14/+12
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | We can utilize QStringList's join() function to perform all of the appending in a single function call. While we're at it, make the extension list a single translatable string and add a disambiguation comment to explain to translators what %1 actually is.
* | | Merge pull request #1491 from lioncash/referencebunnei2018-10-141-4/+4
|\ \ \ | | | | | | | | filesystem: Make CreateFactories() and InstallInterface() take a VfsFilesystem by reference
| * | | filesystem: Make CreateFactories() and InstallInterface() take a VfsFilesystem instance by referenceLioncash2018-10-131-4/+4
| |/ / | | | | | | | | | | | | | | | | | | Neither of these functions alter the ownership of the provided pointer, so we can simply make the parameters a reference rather than a direct shared pointer alias. This way we also disallow passing incorrect memory values like nullptr.
* / / Propagate depth and depth_block on modules using decodersFernandoS272018-10-131-2/+3
|/ /
* | Merge pull request #1409 from DarkLordZach/key-derivationbunnei2018-10-133-0/+94
|\ \ | | | | | | crypto: Add support for full key derivation
| * | partition_data_manager: Rename system files for hekateZach Hilman2018-10-072-17/+19
| | | | | | | | | | | | x
| * | qt: Add rederive keyset menu optionZach Hilman2018-10-073-49/+89
| | |
| * | qt: Add key derivation progress bar on initial setupZach Hilman2018-10-071-0/+52
| | |
* | | Merge pull request #1464 from lioncash/uniquebunnei2018-10-101-6/+5
|\ \ \ | | | | | | | | patch_manager: Return a std::unique_ptr from ParseControlNCA() and GetControlMetadata() instead of a std::shared_ptr
| * | | patch_manager: Return a std::unique_ptr from ParseControlNCA() and GetControlMetadata() instead of a std::shared_ptrLioncash2018-10-091-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Neither of these functions require the use of shared ownership of the returned pointer. This makes it more difficult to create reference cycles with, and makes the interface more generic, as std::shared_ptr instances can be created from a std::unique_ptr, but the vice-versa isn't possible. This also alters relevant functions to take NCA arguments by const reference rather than a const reference to a std::shared_ptr. These functions don't alter the ownership of the memory used by the NCA instance, so we can make the interface more generic by not assuming anything about the type of smart pointer the NCA is contained within and make it the caller's responsibility to ensure the supplied NCA is valid.
* | | | implemented touch in Qt and SDLNeatNit2018-10-092-8/+73
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | change TouchToPixelPos to return std::pair<int, int> static_cast (SDL) various minor style and code improvements style - PascalCase for function names made touch events private const pointer arg in touch events make TouchToPixelPos a const member function did I do this right? braces on barely-multiline if remove question comment (confirmed in Discord) fixed consts remove unused parameter from TouchEndEvent DRY - High-DPI scaled touch put in separate function also fixes a bug where if you start touching (with either mouse or touchscreen) and drag the mouse to the LEFT of the emulator window, the touch point jumps to the RIGHT side of the touchscreen; draggin to above the window would make it jump to the bottom. implicit conversion from QPoint to QPointF, apparently I have no idea what const even means but I'll put it here anyway remove unused or used-once variables make touch scaling functions const, and put their implementations together removed unused FingerID parameters QTouchEvent forward declaration; add comment to TouchBegin that was lost in an edit better DRY in SDL To do -> TODO(NeatNit) remove unused include
* / / qt: Add UI option to configure argumentsZach Hilman2018-10-073-0/+27
|/ /
* | Merge pull request #1396 from DarkLordZach/packed-updatesbunnei2018-10-071-5/+15
|\ \ | | | | | | loader: Add support for packed updates
| * | romfs_factory: Extract packed update setter to new functionZach Hilman2018-10-051-3/+2
| | |
| * | patch_manager: Add support for NSP packed updatesZach Hilman2018-10-051-1/+8
| | | | | | | | | | | | Reads as Update (NSP) in add-ons
| * | game_list: Add XCI update versioning to game listZach Hilman2018-10-051-4/+8
| | |
* | | Merge pull request #1446 from bunnei/fast_fermi_copybunnei2018-10-071-0/+2
|\ \ \ | | | | | | | | gl_rasterizer: Implement accelerated Fermi2D copies.
| * | | yuzu/yuzu_cmd: Add checks for required extension ARB_copy_image.bunnei2018-10-061-0/+2
| | |/ | |/|
* / | citra_qt/configuration: misc input tab improvementszhupengfei2018-10-063-18/+100
|/ / | | | | | | | | | | | | | | * Added a context menu on the buttons including Clear & Restore Default * Allow clearing (unsetting) inputs. Added a Clear All button * Allow restoring a single input to default (instead of all)
* | qt: Update telemetry linksLioncash2018-10-062-2/+2
| | | | | | | | These were pointing to a non-existent webpage.
* | Merge pull request #1332 from FearlessTobi/port-web-backendbunnei2018-10-0617-16/+911
|\ \ | | | | | | Port web_service from Citra
| * | Review comments - part 5fearlessTobi2018-10-022-6/+4
| | |
| * | Review comments -part 4fearlessTobi2018-10-021-0/+4
| | |
| * | Review comments - part 3fearlessTobi2018-10-022-4/+4
| | |
| * | Address a bunch of review commentsfearlessTobi2018-10-025-5/+8
| | |
| * | Port web_service from CitrafearlessTobi2018-10-0217-16/+906
| | |
* | | Merge pull request #1440 from lioncash/arraybunnei2018-10-063-5/+10
|\ \ \ | | | | | | | | ui_settings: Place definition of the theme array within the cpp file
| * | | ui_settings: Place definition of the theme array within the cpp fileLioncash2018-10-043-5/+10
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Placing the array wholesale into the header places a copy of the whole array into every translation unit that uses the data, which is wasteful. Particularly given that this array is referenced from three different translation units. This also changes the array to contain pairs of const char*, rather than QString instances. This way, the string data is able to be fixed into the read-only segment of the program, as well as eliminate static constructors/heap allocation immediately on program start.
* | | Merge pull request #1439 from lioncash/threadbunnei2018-10-051-21/+26
|\ \ \ | |_|/ |/| | kernel/thread: Make all instance variables private
| * | kernel/thread: Make all instance variables privateLioncash2018-10-041-21/+26
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Many of the member variables of the thread class aren't even used outside of the class itself, so there's no need to make those variables public. This change follows in the steps of the previous changes that made other kernel types' members private. The main motivation behind this is that the Thread class will likely change in the future as emulation becomes more accurate, and letting random bits of the emulator access data members of the Thread class directly makes it a pain to shuffle around and/or modify internals. Having all data members public like this also makes it difficult to reason about certain bits of behavior without first verifying what parts of the core actually use them. Everything being public also generally follows the tendency for changes to be introduced in completely different translation units that would otherwise be better introduced as an addition to the Thread class' public interface.
* | Merge pull request #1415 from DarkLordZach/ipsbunnei2018-10-041-4/+3
|\ \ | | | | | | file_sys: Add support for loading IPS patches
| * | patch_manager: Use strings for patch type instead of enumZach Hilman2018-10-011-4/+3
| |/
* | Merge pull request #1428 from lioncash/qtbunnei2018-10-041-21/+23
|\ \ | | | | | | configure_graphics: Make functions internally linked where applicable
| * | configure_graphics: Make functions internally linked where applicableLioncash2018-10-031-21/+23
| |/ | | | | | | | | These aren't used outside of this translation unit, so they can be internally linked.
* | Merge pull request #1431 from lioncash/audiobunnei2018-10-042-16/+34
|\ \ | | | | | | configure_audio: Minor cleanup-related changes
| * | configure_audio: Move combo box index setting to their own functionsLioncash2018-10-032-11/+25
| | | | | | | | | | | | | | | | | | | | | Keeps the individual behaviors in their own functions, and cleanly separate. We can also do a little better by converting the relevant IDs within the core to a QString only once, instead of converting every string into a std::string.
| * | configure_audio: Use QString::fromStdString() for converting audio device namesLioncash2018-10-031-3/+3
| | | | | | | | | | | | | | | This ensures that the proper codec will always be used no matter what. It also avoids relying on ASCII conversions.
| * | configure_audio: Add disambiguation comment for the volume percentage stringLioncash2018-10-032-4/+8
| |/ | | | | | | | | | | | | Disambiguates what the string represents to help translators more easily understand what it is that they're translating. While we're at it, we can move the code to its own function, so that we don't need to specify the same string twice.
* / configure_input: Make analog mapping strings translatableLioncash2018-10-031-3/+3
|/ | | | | These strings are user-facing, so they should be specified as translatable with tr().
* Merge pull request #1403 from DarkLordZach/install-sysnandbunnei2018-10-011-4/+14
|\ | | | | qt: Install System TitleTypes to System NAND
| * qt: Install System TitleTypes to System NANDZach Hilman2018-09-271-4/+14
| | | | | | Fixes an issue where installed system archive NCAs would be installed to user NAND and not recognized by games.
* | kernel/process: Make data member variables privateLioncash2018-09-301-2/+2
| | | | | | | | | | | | | | Makes the public interface consistent in terms of how accesses are done on a process object. It also makes it slightly nicer to reason about the logic of the process class, as we don't want to expose everything to external code.
* | Merge pull request #1360 from FearlessTobi/port-3979bunnei2018-09-273-35/+51
|\ \ | | | | | | Port citra-emu/citra#3979 game_list: move SearchField to game_list_p.h and fix untranslated text
| * | game_list: move SearchField to game_list_p.h and fix untranslated textzhupengfei2018-09-213-35/+51
| | | | | | | | | | | | I have tested and made sure the text is translatable, but this would require a translation update to take effect.
* | | yuzu/main: Resolve precedence bug within CalculateRomFSEntrySize()Lioncash2018-09-261-1/+1
| | | | | | | | | | | | | | | | | | | | | Ternary operators have a lower precedence than arithmetic operators, so what was actually occurring here is "return (out + full) ? x : y" which most definitely isn't intended, given we calculate out recursively above. We were essentially doing a lot of work for nothing.
* | | yuzu/main: Move functions stored into static std::function instances out of OnGameListDumpRomFS()Lioncash2018-09-261-42/+42
| | | | | | | | | | | | | | | | | | | | | This can cause warnings about static constructors, and is also not ideal performance-wise due to the indirection through std::function. This also keeps the behavior itself separate from the surrounding code, which can make it nicer to read, due to the size of the code.
* | | vfs/etc: Append std:: to size_t usagesLioncash2018-09-261-7/+7
| |/ |/| | | | | | | Given we just recently had a patch backport this from citra, let's try and keep the convention uniform.
* | Merge pull request #1365 from DarkLordZach/lfsbunnei2018-09-254-3/+160
|\ \ | | | | | | file_sys: Add support for LayeredFS mods
| * | fsmitm: Cleanup and modernize fsmitm portZach Hilman2018-09-241-1/+1
| | |
| * | qt: Add UI elements for LayeredFS and related toolsZach Hilman2018-09-224-3/+160
| |/
* / game_list: Add Qt SmoothTransformation to picture scalingZach Hilman2018-09-221-1/+1
|/
* Merge pull request #1371 from lioncash/fwd-armbunnei2018-09-211-0/+1
|\ | | | | arm_interface: Replace kernel vm_manager include with a forward declaration
| * arm_interface: Replace kernel vm_manager include with a forward declarationLioncash2018-09-211-0/+1
| | | | | | | | | | | | Avoids an unnecessary inclusion and also uncovers three places where indirect inclusions were relied upon, which allows us to also resolve those.
* | game_list: Handle plurals within setFilterResult() betterLioncash2018-09-201-9/+1
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt provides an overload of tr() that operates on quantities in relation to pluralization. This also allows the translation to adapt based on the target language rules better. For example, the previous code would result in an incorrect translation for the French language (which doesn't use the pluralized version of "result" in the case of a total of zero. While in English it's correct to use the pluralized version of "result", that is, "results" --- For example: English: "0 results" French: "0 résultat" (uses the singular form) In French, the noun being counted is singular if the quantity is 0 or 1. In English, on the other hand, if the noun being counted has a quantity of 0 or N > 1, then the noun is pluralized. --- For another example in a language that has different counting methods than the above, consider English and Irish. Irish has a special form of of a grammatical number called a dual. Which alters how a word is written when N of something is 2. This won't appear in this case with a direct number "2", but it would change if we ever used "Two" to refer to two of something. For example: English: "Zero results" Irish: "Toradh ar bith" English: "One result" Irish: "Toradh amháin" English: "Two results" Irish: "Dhá thorthaí" <- Dual case Which is an important distinction to make between singular and plural, because in other situations, "two" on its own would be written as "dó" in Irish. There's also a few other cases where the order the words are placed *and* whether or not the plural or singular variant of the word is used *and* whether or not the word is placed after or between a set of numbers can vary. Counting in Irish also differs depending on whether or not you're counting things (like above) or counting people, in which case an entirely different set of numbers are used. It's not important for this case, but it's provided as an example as to why one should never assume the placement of values in text will be like that of English or other languages. Some languages have very different ways to represent counting, and breaking up the translated string like this isn't advisable because it makes it extremely difficult to get right depending on what language a translator is translating text into due to the ambiguity of the strings being presented for translation. In this case a translator would see three fragmented strings on Transifex (and not necessarily grouped beside one another, but even then, it would still be annoying to decipher): - "of" - "result" - "results" There is no way a translator is going to know what those sets of words are actually used for unless they look at the code to see what is being done with them (which they shouldn't have to do).
* Merge pull request #1326 from FearlessTobi/port-4182bunnei2018-09-175-6/+7
|\ | | | | Port #4182 from Citra: "Prefix all size_t with std::"
| * Port #4182 from Citra: "Prefix all size_t with std::"fearlessTobi2018-09-155-6/+7
| |
* | Merge pull request #1335 from lioncash/copybunnei2018-09-171-5/+5
|\ \ | | | | | | game_list_p: Take map iterator contents by const reference
| * | game_list_p: Amend typo in GameListItemCompat's constructor parameterLioncash2018-09-171-4/+4
| | | | | | | | | | | | Adds a missing 'i' character that was missing in compatibility.
| * | game_list_p: Take map iterator contents by const referenceLioncash2018-09-171-1/+1
| | | | | | | | | | | | | | | We don't need to copy the whole struct in this instance, we can just utilize a reference instead.
* | | Merge pull request #1336 from lioncash/antialiasbunnei2018-09-171-1/+2
|\ \ \ | |_|/ |/| | yuzu/util: Antialias game list compatibility pixmaps
| * | yuzu/util: Antialias game list compatibility pixmapsLioncash2018-09-171-1/+2
| |/ | | | | | | | | | | We pass a hint to the QPainter instance that we want anti-aliasing on the compatibility icons, which prevents the circles from looking fairly jagged, and actually makes them look circular.
* / kernel/thread: Include thread-related enums within the kernel namespaceLioncash2018-09-131-29/+29
|/ | | | | | Previously, these were sitting outside of the Kernel namespace, which doesn't really make sense, given they're related to the Thread class which is within the Kernel namespace.
* Use ARB_multi_bind for uniform buffers (#1287)ReinUsesLisp2018-09-131-0/+2
| | | | | | * gl_rasterizer: use ARB_multi_bind for uniform buffers * address feedback
* Merge pull request #1302 from lioncash/configbunnei2018-09-132-36/+74
|\ | | | | yuzu/configure_gamelist: Mark combo-box strings as translatable
| * yuzu/configure_gamelist: Make combo box strings translatableLioncash2018-09-122-21/+47
| | | | | | | | | | | | | | | | Given these are shown to the user, they should be translatable. While we're at it, also set up the dialog to automatically retranslate the dialog along with the combo boxes if it receives a LanguageChange event.
| * yuzu/configure_gamelist: Use std::array instead of std::vector for translatable stringsLioncash2018-09-121-6/+9
| | | | | | | | | | We don't need to use an allocating container for these, given we know the fixed amount of strings being used. This is just a waste of memory.
| * yuzu/configure_gamelist: Move combo box initializtion to their own functionsLioncash2018-09-122-23/+32
| | | | | | | | | | | | Keeps the individual initialization of the combo boxes logically separate. We also shouldn't be dumping this sort of thing in the constructor directly.
* | Merge pull request #1163 from FearlessTobi/add-audio-stretchingbunnei2018-09-133-0/+16
|\ \ | | | | | | audio_core: Add audio stretching support
| * | Add audio stretching supportfearlessTobi2018-09-083-0/+16
| | |
* | | Merge pull request #1301 from lioncash/qtbunnei2018-09-121-4/+4
|\ \ \ | |_|/ |/| | game_list: Resolve variable shadowing within LoadCompatibilityList()
| * | game_list: Resolve variable shadowing within LoadCompatibilityList()Lioncash2018-09-121-3/+3
| | | | | | | | | | | | | | | | | | "value" is already a used variable name within the outermost ranged-for loop, so this variable was shadowing the outer one. This isn't a bug, but it will get rid of a -Wshadow warning.
| * | game_list: Use QJsonValueRef() within LoadCompatibilityList()Lioncash2018-09-121-2/+2
| | | | | | | | | | | | This way, we aren't constructing unnecessary QJsonValue instances.
* | | Merge pull request #1278 from tech4me/bg-color-fixbunnei2018-09-123-0/+38
|\ \ \ | | | | | | | | Port Citra #4047 & #4052: add change background color support
| * | | Port Citra #4047 & #4052: add change background color supporttech4me2018-09-093-0/+38
| | | |
* | | | gl_rasterizer: Use ARB_texture_storage.Markus Wick2018-09-111-0/+2
| |/ / |/| | | | | | | | | | | | | | | | | | | | It allows us to use texture views and it reduces the overhead within the GPU driver. But it disallows us to reallocate the texture, but we don't do so anyways. In the end, it is the new way to allocate textures, so there is no need to use the old way.
* | | Port #4141 from citra: Joystick hotplug support (#1275)Tobias2018-09-112-12/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Joystick hotplug support (#4141) * use SDL_PollEvent instead of SDL_JoystickUpdate Register hot plugged controller by GUID if they were configured in a previous session * Move SDL_PollEvent into its own thread * Don't store SDLJoystick pointer in Input Device; Get pointer on each GetStatus call * Fix that joystick_list gets cleared after SDL_Quit * Add VirtualJoystick for InputDevices thats never nullptr * fixup! Add VirtualJoystick for InputDevices thats never nullptr * fixup! fixup! Add VirtualJoystick for InputDevices thats never nullptr * Remove SDL_GameController, make SDL_Joystick* unique_ptr * fixup! Remove SDL_GameController, make SDL_Joystick* unique_ptr * Adressed feedback; fixed handling of same guid reconnects * fixup! Adressed feedback; fixed handling of same guid reconnects * merge the two joystick_lists into one * make SDLJoystick a member of VirtualJoystick * fixup! make SDLJoystick a member of VirtualJoystick * fixup! make SDLJoystick a member of VirtualJoystick * fixup! fixup! make SDLJoystick a member of VirtualJoystick * SDLJoystick: Addressed review comments * Address one missed review comment
* | | Remove multicore configure_general.uiMysticExile2018-09-101-7/+0
| | |
* | | remove multicore in configure_general.cppMysticExile2018-09-101-3/+0
| | |
* | | game_list: Make CompatibilityList parameter of NavigateToGamedbEntryRequested() a const referenceLioncash2018-09-103-3/+5
| | | | | | | | | | | | | | | The compatibility list isn't modified within any of the slots connected to this signal, so we can make it const to enforce immutability.
* | | yuzu: Move compatibility list specifics to their own source filesLioncash2018-09-1010-33/+54
|/ / | | | | | | | | | | | | 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.
* / yuzu: fix title bar displayPengfei Zhu2018-09-081-2/+2
|/ | | Previously the version number got hidden after starting a game.
* Merge pull request #1246 from degasus/instanced_renderingbunnei2018-09-081-0/+2
|\ | | | | gl_rasterizer: Use baseInstance instead of moving the buffer points.
| * gl_rasterizer: Use baseInstance instead of moving the buffer points.bunnei2018-09-081-0/+2
| | | | | | | | | | | | | | This hopefully helps our cache not to redundant upload the vertex buffer. # Conflicts: # src/video_core/renderer_opengl/gl_rasterizer.cpp
* | yuzu: Move GameListWorker to its own source filesLioncash2018-09-075-286/+324
|/ | | | | | | | | | | 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).
* Better Title Bar DisplayCaptV0rt3x2018-09-072-3/+3
|
* frontend: Set swap interval to 0fearlessTobi2018-09-061-0/+1
|
* bktr: Fix bucket overlap errorZach Hilman2018-09-041-0/+2
|
* patch_manager: Centralize Control-type NCA parsingZach Hilman2018-09-042-25/+15
|
* game_list: Fix version display on non-NAND titlesZach Hilman2018-09-041-22/+19
|
* game_list: Use friendly game versionsZach Hilman2018-09-041-13/+32
| | | | Mainly, from control.nacp metadata instead of cnmt metadata
* bktr: Fix missing includes and optimize styleZach Hilman2018-09-041-2/+2
|
* main: Make game updates installableZach Hilman2018-09-041-1/+5
|
* game_list: Display patch names and versions on listZach Hilman2018-09-042-0/+27
|
* game_list: Use RegisteredCacheUnion for installedZach Hilman2018-09-042-4/+2
| | | | Reduces code
* main: Only show DRD deprecation warning onceZach Hilman2018-09-041-3/+13
|
* qt: Add deprecation warnings for DRD formatZach Hilman2018-09-041-0/+10
|
* registration: Fix NSP installation errorsZach Hilman2018-09-041-1/+1
|
* qt: Add UI support for NSP filesZach Hilman2018-09-042-2/+3
|
* registration: Add support for installing NSP filesZach Hilman2018-09-041-6/+18
|
* Merge pull request #1223 from DarkLordZach/custom-nand-sd-dirsbunnei2018-09-044-0/+71
|\ | | | | file_sys: Allow for custom NAND/SD directories
| * qt: Add message about not moving contents on dir changeZach Hilman2018-09-042-6/+23
| |
| * qt: Add UI options to change NAND/SD dirsZach Hilman2018-09-043-0/+36
| |
| * settings: Save and load NAND/SD dirs from configZach Hilman2018-09-041-0/+18
| |
* | file_sys: Replace includes with forward declarations where applicableLioncash2018-09-042-1/+2
| | | | | | | | | | Cuts down on include dependencies, resulting in less files that need to be rebuilt when certain things are changed.
* | vfs_real: Forward declare IOFileLioncash2018-09-025-1/+13
|/ | | | | | 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.
* citra_qt: Display the unsupported GL extensions in the popupfearlessTobi2018-09-012-8/+10
|
* core/core: Replace includes with forward declarations where applicableLioncash2018-08-317-19/+93
| | | | | | | | | | | 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.
* Merge pull request #1195 from FearlessTobi/port-gamelist-compatbunnei2018-08-318-3/+174
|\ | | | | yuzu: Show game compatibility in the game list (PR ported from Citra)
| * Show game compatibility within yuzufearlessTobi2018-08-298-3/+174
| |
* | kernel: Eliminate kernel global stateLioncash2018-08-291-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As means to pave the way for getting rid of global state within core, This eliminates kernel global state by removing all globals. Instead this introduces a KernelCore class which acts as a kernel instance. This instance lives in the System class, which keeps its lifetime contained to the lifetime of the System class. This also forces the kernel types to actually interact with the main kernel instance itself instead of having transient kernel state placed all over several translation units, keeping everything together. It also has a nice consequence of making dependencies much more explicit. This also makes our initialization a tad bit more correct. Previously we were creating a kernel process before the actual kernel was initialized, which doesn't really make much sense. The KernelCore class itself follows the PImpl idiom, which allows keeping all the implementation details sealed away from everything else, which forces the use of the exposed API and allows us to avoid any unnecessary inclusions within the main kernel header.
* | Merge pull request #1193 from lioncash/privbunnei2018-08-281-2/+2
|\ \ | |/ |/| gpu: Make memory_manager private
| * gpu: Make memory_manager privateLioncash2018-08-281-2/+2
| | | | | | | | | | | | | | | | | | | | Makes the class interface consistent and provides accessors for obtaining a reference to the memory manager instance. Given we also return references, this makes our more flimsy uses of const apparent, given const doesn't propagate through pointers in the way one would typically expect. This makes our mutable state more apparent in some places.
* | Fix two stupid errors made in #1141fearlessTobi2018-08-282-1/+2
|/
* yuzu: Fix stick UI direction orderfearlessTobi2018-08-281-2/+2
|
* Merge pull request #1174 from lioncash/debugbunnei2018-08-272-1/+3
|\ | | | | debug_utils: Minor individual interface changes
| * debug_utils: Remove unused includesLioncash2018-08-252-1/+3
| | | | | | | | | | Quite a bit of these aren't necessary directly within the debug_utils header and can be removed or included where actually necessary.
* | Merge pull request #1094 from DarkLordZach/nax0Mat M2018-08-254-16/+15
|\ \ | | | | | | file_sys: Add support for NAX archives
| * | game_list: Add SD registration loading to game listZach Hilman2018-08-232-12/+12
| | |
| * | qt: Make default row data title name and title idZach Hilman2018-08-231-2/+2
| | | | | | | | | | | | Helps with installed games by making the title not a hexadecimal id string, instead the name.
| * | filesystem: Add CreateFactories methods to fsZach Hilman2018-08-231-2/+1
| | | | | | | | | | | | Allows frontend to create registration caches for use before a game has booted.
* | | Merge pull request #1065 from DarkLordZach/window-titleZach Hilman2018-08-241-0/+11
|\ \ \ | |_|/ |/| | qt: Add filename and title id to window title while running
| * | qt: Add filename and title id to window title while runningZach Hilman2018-08-231-0/+11
| |/
* / Port #4013 from Citra: "Init logging sooner so we dont miss some logs on startup" (#1142)Tobias2018-08-241-11/+11
|/ | | | | | * Port #4013 from Citra: "Init logging sooner so we dont miss some logs on startup" * Fix compilation
* Swap "Plus" with "Minus" on the controller GUI (#1150)literalmente-game2018-08-231-8/+8
| | | | | * Swap "Plus" with "Minus" on the controller GUI Major fix /s
* config: Fixed icon size get set to 0tech4me2018-08-221-1/+1
|
* Merge pull request #1136 from tech4me/masterbunnei2018-08-224-7/+41
|\ | | | | qt/main: Port part of citra(#3411), open savedata works
| * qt/main: Port part of citra(#3411), open savedata workstech4me2018-08-214-7/+41
| |
* | Merge pull request #840 from FearlessTobi/port-3353bunnei2018-08-224-11/+64
|\ \ | | | | | | Port #3353 from Citra: "citra-qt: Add customizable speed limit target "
| * | Port #3353 from CitrafearlessTobi2018-08-214-11/+64
| | |
* | | Merge pull request #1141 from FearlessTobi/port-3902bunnei2018-08-222-0/+18
|\ \ \ | | | | | | | | Port #3902 from Citra: "Add restart hotkey & menu option"
| * | | Port #3902 from Citra: "Add restart hotkey & menu option"fearlessTobi2018-08-212-0/+18
| | |/ | |/|
* / | Port #4056 from Citra: "Add Clear Recent Files menu action"fearlessTobi2018-08-212-0/+14
|/ /
* / service/filesystem: Use forward declarations where applicableLioncash2018-08-213-0/+6
|/ | | | | | | | 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
* game_list: Avoid uninitialized variables when retrieving program IDLioncash2018-08-201-2/+2
| | | | | Avoids potentially leaving this variable uninitialized based off the loader failing to retrieve the ID value.
* Added check to see if ARB_texture_mirror_clamp_to_edge is supportedDavid Marcec2018-08-191-0/+2
|
* qt/main: Unindent code in OnMenuInstallToNAND()Lioncash2018-08-161-70/+70
| | | | | We can change this into an early-return if the filename is empty. There's no need to include all of the code within the if statement.
* qt/main: Make installation dialog text within OnMenuInstallToNAND() translatableLioncash2018-08-161-14/+15
| | | | This is user-facing text, so it should be marked as translatable by Qt.
* qt/main: Get rid of compilation warningsLioncash2018-08-161-4/+8
| | | | | Gets rid of truncation warnings about conversion to int. While we're at it, we can also de-hardcode the buffer size being used.
* Merge pull request #1005 from DarkLordZach/registered-fmtbunnei2018-08-165-22/+228
|\ | | | | file_sys: Add support for registration format
| * registration: Add support for force overwrite of installedZach Hilman2018-08-122-31/+58
| |
| * game_list: Split game list scans to multiple functionsZach Hilman2018-08-122-9/+16
| | | | | | | | Avoids unnecessary rebuilds of control data on every layer of recursion in AddFstEntriesToGameList
| * qt: Use custom RawCopy with progress bar for installsZach Hilman2018-08-121-2/+28
| |
| * game_list: Populate control data from installed NANDZach Hilman2018-08-122-31/+35
| |
| * file_sys: Comply to style guidelinesZach Hilman2018-08-121-20/+20
| |
| * qt: Add 'Install to NAND' option to menuZach Hilman2018-08-123-0/+97
| | | | | | | | Prompts for title type on NCA files.
| * game_list: Modify game list to scan installed titlesZach Hilman2018-08-121-0/+45
| |
* | loader: Make ResultStatus directly compatible with fmtLioncash2018-08-151-1/+4
|/ | | | | | | | | We can make the enum class type compatible with fmt by providing an overload of operator<<. While we're at it, perform proper bounds checking. If something exceeds the array, it should be a hard fail, because it's, without a doubt, a programmer error in this case.
* core: Namespace EmuWindowLioncash2018-08-121-1/+1
| | | | Gets the class out of the global namespace.
* Merge pull request #970 from DarkLordZach/loader-errorsbunnei2018-08-122-63/+18
|\ | | | | loader: Add more descriptive errors
| * game_list: Reorder error checksZach Hilman2018-08-101-2/+1
| | | | | | | | clang-format fix
| * loader: Add more descriptive errorsZach Hilman2018-08-102-63/+19
| | | | | | Full list of new errors and descriptions in core/loader/loader.h
* | qt/game_list: Resolve truncation warning within GameListItemPath's constructorLioncash2018-08-111-4/+4
| | | | | | | | Silences a warning about truncating from size_t to u32
* | gt/game_list: Use std::array in GameListItemPath's data() functionLioncash2018-08-111-7/+8
| | | | | | | | | | We don't need to use a heap-allocated std::vector here, given we explicitly know the bounds.
* | qt/game_list: Remove redundant base class constructor from initializer listLioncash2018-08-111-3/+1
| | | | | | | | This is called automatically anyways.
* | textures: Refactor out for Texture/Depth FormatFromPixelFormat.bunnei2018-08-101-2/+4
|/
* vfs: Fix documentationZach Hilman2018-08-091-0/+2
|
* vfs: Fix typo in VfsFilesystem docsZach Hilman2018-08-091-3/+4
|
* file_util: Use enum instead of bool for specifing path behaviorZach Hilman2018-08-091-1/+1
|
* core: Port core to VfsFilesystem for file accessZach Hilman2018-08-095-9/+17
|
* Merge pull request #850 from DarkLordZach/icon-metabunnei2018-08-0811-13/+356
|\ | | | | Add Icons and Metadata Support
| * configure_gamelist: Use explicit QVariant constructorZach Hilman2018-08-071-2/+4
| |
| * loader: Add icon and title support to XCIZach Hilman2018-08-071-2/+3
| |
| * Use const where applicableZach Hilman2018-08-072-5/+5
| |
| * Avoid parsing RomFS to directory in NCAZach Hilman2018-08-0711-13/+353
| |
* | qt/hotkey: Get rid of global hotkey map instanceLioncash2018-08-078-119/+159
|/ | | | | | | | Instead, we make a proper registry class and house it within the main window, then pass it to whatever needs access to the loaded hotkeys. This way, we avoid a global variable, and don't need to initialize a std::map instance before the program can do anything.
* Merge pull request #947 from lioncash/encodingbunnei2018-08-071-13/+17
|\ | | | | game_list: Use QString::fromStdString() where applicable instead of c_str()
| * game_list: Remove unnecessary conversion to std::string in ValidateEntry()Lioncash2018-08-061-8/+10
| | | | | | | | | | We can just use the file interfaces that Qt provides to prevent needing to convert to std::string.
| * game_list: Use QString::fromStdString() where applicable instead of c_str()Lioncash2018-08-061-5/+7
| | | | | | | | | | | | The codec used by Qt for const char* and std::string don't necessarily have to be the same depending on locale. Therefore, we should be using the correct functions to do the conversions.
* | GDBStub works with both Unicorn and Dynarmic now (#941)Hedges2018-08-071-7/+0
| | | | | | | | | | | | * GDBStub works with both Unicorn and Dynarmic now * Tidy up
* | Merge pull request #943 from lioncash/declbunnei2018-08-071-7/+7
|\ \ | | | | | | game_list: Join declarations and assignments in onTextChanged()
| * | game_list: Join declarations and assignments in onTextChanged()Lioncash2018-08-061-7/+7
| |/ | | | | | | There's no need to keep these separate from one another.
* | Merge pull request #946 from lioncash/compressbunnei2018-08-071-10/+8
|\ \ | | | | | | qt/main: Collapse if statement in UpdateRecentFiles()
| * | qt/main: Avoid sign conversions in UpdateRecentFiles()Lioncash2018-08-061-4/+6
| | | | | | | | | | | | | | | This was intermixing signed and unsigned values when they could all just be signed.
| * | qt/main: Collapse if statement in UpdateRecentFiles()Lioncash2018-08-061-6/+2
| |/ | | | | | | | | Given the function accepts a boolean, we don't need to use an if statement here and repeat ourselves.
* | Merge pull request #944 from lioncash/menubunnei2018-08-071-2/+8
|\ \ | | | | | | qt: Don't show error dialog when canceling the Load Folder dialog
| * | qt: Don't show error dialog when canceling the Load Folder dialogLioncash2018-08-061-2/+8
| |/ | | | | | | | | | | | | Previously, when canceling out of the Load Folder dialog, a user would get an error dialog about the selected folder not containing a main file, however, by canceling out of the dialog, no selection was actually made.
* | Merge pull request #942 from lioncash/defaultbunnei2018-08-0714-24/+26
|\ \ | | | | | | qt: Minor cleanup-related changes
| * | qt/game_list_p: Remove redundant base class constructor invocationsLioncash2018-08-061-1/+2
| | | | | | | | | | | | | | | These occur automatically without the need to call them. While we're at it, also std::move the QString instance into its member variable.
| * | qt: Add missing override specifiers where applicableLioncash2018-08-065-7/+9
| | |
| * | qt: Default destructors where applicableLioncash2018-08-069-16/+15
| |/ | | | | | | | | Makes code consistent with our style of defaulting special member functions where applicable.
* | Merge pull request #940 from lioncash/privatebunnei2018-08-071-1/+1
|\ \ | | | | | | kernel/event: Make data members private
| * | kernel/event: Make data members privateLioncash2018-08-061-1/+1
| |/ | | | | | | | | Instead we can simply provide accessors to the required data instead of giving external read/write access to the variables directly.
* / qt/main: Better file-existence checking within OnMenuRecentFile() and UpdateUITheme()Lioncash2018-08-061-8/+6
|/ | | | | | | | | | | | | | | | | | | In OnMenuRecentFile() we don't need to construct a QFileInfo instance just to check if a file exists, we can just use the static member function to do that (which Qt's documentation also notes as quicker than constructing an instance). In UpdateUITheme(), we just want to try and open the file and check the success of that operation. Technically speaking, between the existence check and the open call, the file can be deleted or moved, but still appear to succeed in code. i.e. 1. Existence check -> Returns true 2. File is moved/deleted 3. Open is called, the return value of which isn't checked 4. Nonsense behavior This way we combine the existence check and the open into one.
* Merge pull request #912 from lioncash/global-varbunnei2018-08-051-2/+2
|\ | | | | video_core: Eliminate the g_renderer global variable
| * video_core: Eliminate the g_renderer global variableLioncash2018-08-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We move the initialization of the renderer to the core class, while keeping the creation of it and any other specifics in video_core. This way we can ensure that the renderer is initialized and doesn't give unfettered access to the renderer. This also makes dependencies on types more explicit. For example, the GPU class doesn't need to depend on the existence of a renderer, it only needs to care about whether or not it has a rasterizer, but since it was accessing the global variable, it was also making the renderer a part of its dependency chain. By adjusting the interface, we can get rid of this dependency.
* | Merge pull request #849 from DarkLordZach/xcibunnei2018-08-043-11/+45
|\ \ | |/ |/| XCI and Encrypted NCA Support
| * Fix merge conflicts with opus and update docsZach Hilman2018-08-011-3/+3
| |
| * Use more descriptive error codes and messagesZach Hilman2018-08-011-10/+41
| |
| * Make XCI comply to review and style guidelinesZach Hilman2018-08-011-14/+1
| |
| * Remove files that are not usedZach Hilman2018-08-013-1/+17
| |
* | Added ability to change username & language code in the settings ui. Added IProfile::Get and SET::GetLanguageCode for libnx tests (#851)David2018-08-033-3/+38
| |
* | Merge pull request #892 from lioncash/globalbunnei2018-08-031-1/+1
|\ \ | | | | | | video_core: Make global EmuWindow instance part of the base renderer …
| * | video_core: Make global EmuWindow instance part of the base renderer classLioncash2018-08-021-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | Makes the global a member of the RendererBase class. We also change this to be a reference. Passing any form of null pointer to these functions is incorrect entirely, especially given the code itself assumes that the pointer would always be in a valid state. This also makes it easier to follow the lifecycle of instances being used, as we explicitly interact the renderer with the rasterizer, rather than it just operating on a global pointer.
* | Merge pull request #894 from lioncash/objectbunnei2018-08-031-1/+1
|\ \ | | | | | | kernel: Move object class to its own source files
| * | kernel: Move object class to its own source filesLioncash2018-08-021-1/+1
| |/ | | | | | | | | | | General moving to keep kernel object types separate from the direct kernel code. Also essentially a preliminary cleanup before eliminating global kernel state in the kernel code.
* / yuzu: Use Qt 5 signal/slots where applicableLioncash2018-08-037-46/+49
|/ | | | Makes the signal/slot connections type-safe instead of string-based.
* audio_core: Add configuration settings.bunnei2018-08-017-5/+284
|
* Merge pull request #859 from FearlessTobi/port-3837bunnei2018-07-302-3/+4
|\ | | | | Port #3837 from Citra: "citra-qt: Add build date in about dialog"
| * Port #3837 from Citra: "Add build date in about dialog"fearlessTobi2018-07-292-3/+4
| |
* | Port #3769 from Citra: "Update Dark theme to latest version"Tobias2018-07-301-1/+1
| |
* | Merge pull request #860 from FearlessTobi/port-3911bunnei2018-07-305-6/+3
|\ \ | | | | | | Port #3911 from Citra: "citra-qt: optimize settings application"
| * | Port #3911 from Citra: "Optimize settings application"fearlessTobi2018-07-295-6/+3
| |/
* / Port #3913 from Citra: "citra_qt: Remove obsolete application attribute"fearlessTobi2018-07-291-1/+0
|/
* Merge pull request #839 from FearlessTobi/actually-port-3594bunnei2018-07-271-0/+16
|\ | | | | Port #3594 from Citra: "citra_qt: Add Continue/Pause & Toggle Speed Limit hotkeys"
| * Port #3594 from CitrafearlessTobi2018-07-261-0/+16
| |
* | Merge pull request #837 from lioncash/privbunnei2018-07-271-3/+3
|\ \ | | | | | | kernel/timer: Make data members private where applicable
| * | kernel/timer: Make data members private where applicableLioncash2018-07-261-3/+3
| |/ | | | | | | | | Instead, we can just expose functions that return the queryable state instead of letting anything modify it.
* / Port #3665 from CitrafearlessTobi2018-07-261-0/+2
|/
* wait_tree: Add missing switch case for WaitTreeThread::GetText()Lioncash2018-07-251-0/+4
| | | | We were missing the enum entry for WaitIPC
* wait_tree: Silence warning about all code paths not returning a valueLioncash2018-07-241-0/+3
| | | | | If code execution hits this spot, something has gone very wrong, so mark the path as unreachable. This silences a warning on MSVC.
* Frontend: Check for more required OpenGL extensions during startup.Subv2018-07-221-0/+12
|
* file_util: Use a u64 to represent number of entriesLioncash2018-07-221-1/+1
| | | | | This avoids a truncating cast on size. I doubt we'd ever traverse a directory this large, however we also shouldn't truncate sizes away.
* file_util: Use an enum class for GetUserPath()Lioncash2018-07-213-9/+13
| | | | | | | | | | | | | Instead of using an unsigned int as a parameter and expecting a user to always pass in the correct values, we can just convert the enum into an enum class and use that type as the parameter type instead, which makes the interface more type safe. We also get rid of the bookkeeping "NUM_" element in the enum by just using an unordered map. This function is generally low-frequency in terms of calls (and I'd hope so, considering otherwise would mean we're slamming the disk with IO all the time) so I'd consider this acceptable in this case.
* gpu: Rename Get3DEngine() to Maxwell3D()Lioncash2018-07-211-3/+3
| | | | This makes it match its const qualified equivalent.
* thread: Convert ThreadStatus into an enum classLioncash2018-07-201-22/+22
| | | | | Makes the thread status strongly typed, so implicit conversions can't happen. It also makes it easier to catch mistakes at compile time.
* Merge pull request #684 from lioncash/nonmemberbunnei2018-07-192-2/+1
|\ | | | | game_list: Make ContainsAllWords an internally linked non-member function
| * game_list: Make ContainsAllWords an internally linked non-member functionLioncash2018-07-182-2/+1
| | | | | | | | | | This function actually depends on no internal class state, so it doesn't even need to be a part of the class interface.
* | Virtual Filesystem 2: Electric Boogaloo (#676)Zach Hilman2018-07-191-1/+3
|/ | | | | | | | | | * Virtual Filesystem * Fix delete bug and documentate * Review fixes + other stuff * Fix puyo regression
* Merge pull request #681 from lioncash/constbunnei2018-07-182-5/+7
|\ | | | | game_list: Make containsAllWords a const member function
| * game_list: Upper-case containsAllWords to ContainsAllWords()Lioncash2018-07-182-3/+3
| | | | | | | | | | This makes it consistent with most of the other private utility functions.
| * game_list: Make containsAllWords a const member functionLioncash2018-07-182-4/+6
| | | | | | | | | | | | This doesn't actually modify the internal class state, so it can be a const member function. While we're at it, amend the function to take its arguments by const reference.
* | Merge pull request #679 from lioncash/ctorbunnei2018-07-181-4/+1
|\ \ | | | | | | game_list: Remove unnecessary QString initialization in KeyReleaseEater
| * | game_list: Remove unnecessary QString initialization in KeyReleaseEaterLioncash2018-07-181-4/+1
| |/ | | | | | | | | | | QString initializes to an empty string by default, so this does nothing meaningful. While we're at it, use a constructor initializer list for initializing the gamelist member variable.
* / settings: Turn docked mode off by default.bunnei2018-07-181-1/+1
|/
* OpenGL: Use MakeCurrent/DoneCurrent for multithreaded rendering.bunnei2018-07-142-1/+7
|
* yuzu - Fix duplicate logsJames Rowe2018-07-122-2/+7
|
* Merge pull request #634 from FearlessTobi/port-viewport-fixbunnei2018-07-101-6/+7
|\ | | | | Port #3505 from Citra: Fix QGLWidget viewport resize on macOS
| * Port #3505 from CItrafearlessTobi2018-07-071-6/+7
| |
* | Revert "Virtual Filesystem (#597)"bunnei2018-07-081-3/+1
|/ | | | This reverts commit 77c684c1140f6bf3fb7d4560d06d2efb1a2ee5e2.
* Virtual Filesystem (#597)Zach Hilman2018-07-061-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add VfsFile and VfsDirectory classes * Finish abstract Vfs classes * Implement RealVfsFile (computer fs backend) * Finish RealVfsFile and RealVfsDirectory * Finished OffsetVfsFile * More changes * Fix import paths * Major refactor * Remove double const * Use experimental/filesystem or filesystem depending on compiler * Port partition_filesystem * More changes * More Overhaul * FSP_SRV fixes * Fixes and testing * Try to get filesystem to compile * Filesystem on linux * Remove std::filesystem and document/test * Compile fixes * Missing include * Bug fixes * Fixes * Rename v_file and v_dir * clang-format fix * Rename NGLOG_* to LOG_* * Most review changes * Fix TODO * Guess 'main' to be Directory by filename
* Add configurable logging backendsJames Rowe2018-07-038-3/+145
|
* Update clang formatJames Rowe2018-07-031-2/+1
|
* Rename logging macro back to LOG_*James Rowe2018-07-032-8/+8
|
* settings: Add a configuration for use_accurate_framebuffers.bunnei2018-06-273-0/+12
|
* yuzu: Remove SSBOs check from Qt frontend.bunnei2018-06-261-2/+0
|
* Merge pull request #579 from SciresM/masterbunnei2018-06-221-0/+4
|\ | | | | svc: Fully implement svcSignalToAddress and svcWaitForAddress
| * Kernel/Arbiters: Mostly implement SignalToAddressMichael Scire2018-06-211-1/+1
| |
| * Kernel/Arbiters: Implement WaitForAddressMichael Scire2018-06-211-0/+4
| |
* | Add support for decrypted NCA files (#567)Zach Hilman2018-06-211-1/+1
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Start to add NCA support in loader * More nca stuff * More changes to nca.cpp * Now identifies decrypted NCA cont. * Game list fixes and more structs and stuff * More updates to Nca class * Now reads ExeFs (i think) * ACTUALLY LOADS EXEFS! * RomFS loads and games execute * Cleanup and Finalize * plumbing, cleanup and testing * fix some things that i didnt think of before * Preliminary Review Changes * Review changes for bunnei and subv
* Bug fixes, testing, and review changesZach Hilman2018-06-142-7/+20
|
* Add 'Load Folder' menu optionZach Hilman2018-06-143-0/+17
|
* Add support for main files in file pickerZach Hilman2018-06-141-0/+2
|
* Recognize main files in game listZach Hilman2018-06-141-2/+17
|
* Qt: Removed the Registers widget.Subv2018-06-136-292/+0
| | | | It was crashing and nobody actually uses this.
* qt: add check for GL extension supportBreadFish642018-06-042-0/+27
|
* Qt/WaitTree: Display the callstack for each thread in the wait tree widget.Subv2018-05-192-0/+37
|
* thread: Rename mask to affinity_masks.bunnei2018-05-111-1/+2
|
* wait_tree: Add ideal core and affinity mask.bunnei2018-05-111-0/+2
|
* wait_tree: Show all threads on all schedulers.bunnei2018-05-111-6/+14
|
* core: Add a configuration setting for use_multi_core.bunnei2018-05-113-0/+12
|
* core: Implement multicore support.bunnei2018-05-112-3/+3
|
* string_util: Remove StringFromFormat() and related functionsLioncash2018-04-301-2/+4
| | | | Given we utilize fmt, we don't need to provide our own functions for formatting anymore
* frontends: Move logging macros over to new fmt-capable onesLioncash2018-04-272-8/+7
|
* memory_manager: Make GpuToCpuAddress return an optional.bunnei2018-04-241-4/+4
|
* memory_manager: Use GPUVAdddr, not PAddr, for GPU addresses.bunnei2018-04-241-2/+2
|
* Merge pull request #370 from Subv/sync_primitivesbunnei2018-04-232-82/+47
|\ | | | | Kernel: Reworked the new kernel synchronization primitives.
| * Qt: Update the WaitTree widget to show info about the current mutex of each thread.Subv2018-04-212-82/+47
| |
* | GPU: Implement the RGB10_A2 RenderTarget format, it will use the same format as the A2BGR10 texture format.Subv2018-04-231-0/+2
|/
* Implement Pull #3528 from citra: use nvidia graphics automatically on laptops with optimus (with AMD support) (#271)N00byKing2018-04-191-0/+9
| | | | | | | | * Port 3528: use nvidia graphics automatically on laptops with optimus * Force dedicated AMD Card for switchable Graphics * Ran clang-format
* Fix the stuck in fullscreen bug (Original PR: citra-emu/citra#3611)adityaruplaha2018-04-141-2/+4
|
* Prevent crash from uninitialized telemetryJames Rowe2018-04-071-2/+1
|
* core, main.h: Abort on 32Bit ROMs (#309)N00byKing2018-04-061-1/+6
| | | | | | * core, main.h: Abort on 32Bit ROMs * main.cpp: Fix Grammar
* Merge pull request #262 from daniellimws/fmtlib-macrosbunnei2018-04-031-1/+1
|\ | | | | Logging: Add fmtlib-based macros
| * Change "yuzu starting..." to be logged with the new macroDaniel Lim Wee Soong2018-03-221-1/+1
| | | | | | | | Just as a proof that it works
* | Merge pull request #267 from N00byKing/patch-1bunnei2018-04-031-13/+13
|\ \ | | | | | | Update Dialog from citra to yuzu
| * | main.cpp: Replace Citra with yuzu Wiki LinksN00byKing2018-03-251-4/+4
| | |
| * | main.cpp: Update Dialog from citra to yuzuN00byKing2018-03-251-11/+11
| | |
* | | Port citra-emu/citra#3610 to yuzuN00byKing2018-03-302-3/+7
| | |
* | | Remove whitespacesN00byKing2018-03-301-1/+1
| | |
* | | Add Dark theme, Icon themingN00byKing2018-03-307-0/+75
| | | | | | | | | | | | | | | | | | configure_general.ui: Add UI Option for Themes config.cpp: Save Theme Settings
* | | Merge pull request #286 from N00byKing/citratoyuzuagainbunnei2018-03-281-5/+2
|\ \ \ | | | | | | | | main.h: Add pragma once, remove ifndef
| * | | main.h: Add pragma once, remove ifndefN00byKing2018-03-271-5/+2
| | | |
* | | | config: Use simplified checkbox (from Citra) for CPU JIT.bunnei2018-03-273-31/+22
| | | |
* | | | config: Rename is_docked to use_docked_mode to be consistent with other config bools.bunnei2018-03-273-6/+6
| | | |
* | | | configure_general: Cleanup naming.bunnei2018-03-271-14/+14
| | | |
* | | | qt: Add config option for is_docked.bunnei2018-03-272-0/+23
| | | |
* | | | config: Add setting for whether the system is docked or not.bunnei2018-03-271-0/+8
| | | |
* | | | graphics_surface: Remove superfluous cast.bunnei2018-03-271-2/+1
| | | |
* | | | graphics_surface: Fix merge conflicts.bunnei2018-03-271-3/+3
|/ / /
* | | GPU: Make the debug_context variable a member of the frontend instead of a global.Subv2018-03-253-4/+16
| | |
* | | Frontend: Updated the surface view debug widget to work with Maxwell surfaces.Subv2018-03-241-19/+23
| | |
* | | Frontend: Allow opening the Surface View widget in the Qt frontend.Subv2018-03-242-0/+8
| | |
* | | Frontend: Ported the GPU breakpoints and surface viewer widgets from citra.Subv2018-03-2410-4/+913
|/ /
* | CMake: Set EMU_ARCH_BITS in CMakeLists.txtN00byKing2018-03-211-1/+0
| |
* | thread: Add THREADSTATUS_WAIT_HLE_EVENT, remove THREADSTATUS_WAIT_ARB.bunnei2018-03-191-3/+3
| |
* | Merge pull request #213 from Hexagon12/dynarmic-defaultbunnei2018-03-081-1/+1
|\ \ | | | | | | Make Dynarmic the default CPU core
| * | pls, that was easyHexagon122018-02-141-1/+1
| | |
* | | Removes the use of QKeySequence::Cancel (#186)Vishal Sharma2018-02-271-1/+2
| |/ |/| | | | | | | | | | | | | * Removes the use of QKeySequence::Cancel to remove issues while running make * Corrects characters in a line for travis failure * Corrects space in a line for travis failure
* | kernel: Use Scheduler class for threading.bunnei2018-02-181-1/+2
|/
* debugger: Fix wait_tree crash.bunnei2018-02-141-1/+1
|
* Format: Run the new clang format on everythingJames Rowe2018-01-215-9/+39
|
* Merge pull request #104 from RiverCityRansomware/resizedConfigWindowbunnei2018-01-191-1/+1
|\ | | | | Port citra #3336
| * Port citra #3336 - Resizes the configuration window to not be so stretched outRiver City Ransomware2018-01-181-1/+1
| |
* | qt: Migrate to Qt 5 signal/slot connection syntax where applicableLioncash2018-01-195-31/+31
| |
* | ui: Rename almost all classes in configuration_input.ui (#99)Evgeni Danailov2018-01-181-66/+66
|/ | | | | | * Rename verticalLayout_25 to verticalLayout_23. * Rename almost all classes.
* Merge pull request #84 from lioncash/cmakebunnei2018-01-181-60/+65
|\ | | | | CMakeLists: Derive the source directory grouping from targets themselves
| * CMakeLists: Derive the source directory grouping from targets themselvesLioncash2018-01-181-60/+65
| | | | | | | | | | Removes the need to store to separate SRC and HEADER variables, and then construct the target in most cases.
* | Merge pull request #88 from lioncash/includebunnei2018-01-181-0/+1
|\ \ | | | | | | hotkeys: Add missing <QTreeWidgetItem> include
| * | hotkeys: Add missing <QTreeWidgetItem> includeLioncash2018-01-181-0/+1
| |/
* | Merge pull request #87 from lioncash/overridebunnei2018-01-181-1/+1
|\ \ | | | | | | game_list: Add missing override specifier for KeyReleaseEater's eventFilter function
| * | game_list: Add missing override specifier for KeyReleaseEater's eventFilter functionLioncash2018-01-181-1/+1
| |/
* | Merge pull request #86 from lioncash/doxygenbunnei2018-01-181-2/+2
|\ \ | | | | | | game_list: Amend doxygen parameter identifiers
| * | game_list: Amend doxygen parameter identifiers for containsAllWords()Lioncash2018-01-181-2/+2
| |/
* / bootmanager: Minor tidiness/correctness changesLioncash2018-01-182-7/+6
|/ | | | Moved over from #3266 in citra.
* Implement Pull #3306 from citra: citra_qt: Drop Qt 5 version checks in code (#41)N00byKing2018-01-171-13/+1
| | | | | | * Update bootmanager.cpp * This *should* fix the clang error
* Merge pull request #42 from N00byKing/3295bunnei2018-01-171-5/+1
|\ | | | | Implement Pull #3295 from citra: citra_qt: CMakeLists: Drop leftover handling code for Qt 4 UI files
| * Update CMakeLists.txtN00byKing2018-01-161-5/+1
| |
* | Merge pull request #57 from nkatz565/fix-trbunnei2018-01-171-1/+2
|\ \ | | | | | | Fix non translated string (same as Citra PR 2949)
| * | Fixed formattingnoah katz2018-01-171-2/+2
| | |
| * | Fix non translated string (same as Citra PR 2949)noah katz2018-01-171-1/+1
| |/
* | Merge pull request #45 from FearlessTobi/patch-1bunnei2018-01-161-6/+6
|\ \ | | | | | | Implement Pull #3030 from Citra: Rename derivative class name
| * | Implement Pull #3030 from CitraTobias2018-01-161-6/+6
| |/ | | | | citra-qt: Rename derivative class name
* | Merge pull request #43 from N00byKing/3052bunnei2018-01-161-1/+1
|\ \ | | | | | | Implement Pull #3052 from citra: Correct spelling of searchfield in comment
| * | Update game_list.cppN00byKing2018-01-161-1/+1
| |/
* | Merge pull request #53 from nkatz565/nk-fixlabelsbunnei2018-01-161-25/+52
|\ \ | | | | | | Implement Pull #3240 from Citra: Add button labels for sdl joystick mappings
| * | Use static functions instead of lambdasmuemart2018-01-161-49/+46
| | |
| * | Add translation support for button labelsmuemart2018-01-161-14/+15
| | |
| * | Add button labels for sdl joystick mappingsmuemart2018-01-161-17/+46
| |/
* / clang-formatMerryMage2018-01-1610-24/+21
|/
* Implement Pull #3333 from citra: citra_qt: Pause emulation on CoreError (#39)N00byKing2018-01-162-0/+2
|
* Merge pull request #24 from nkatz565/nk-inputsbunnei2018-01-163-190/+276
|\ | | | | Adding meumart's Citra SDL Joystick support. Citra PR #3116
| * Adding meumart's Citra SDL Joystick support. Citra PR #3116muemart2018-01-163-190/+276
| |
* | Merge citra-emu PR#3159 by FearlessTobi(citra-qt : Fix a bug in our fullscreen implementation)goaaats2018-01-162-15/+31
| |
* | Merge citra-emu PR#3001 by Styleoshin(citra-qt : Adding fullscreen mode)goaaats2018-01-165-1/+57
|/
* Merge pull request #20 from Andrix44/fixesbunnei2018-01-153-68/+6
|\ | | | | Various fixes
| * Clanggit rebase -i fixesunknown2018-01-151-10/+2
| |
| * Clang formatunknown2018-01-152-4/+10
| |
| * Change default log level to infounknown2018-01-151-1/+1
| |
| * Update the internal resolution settingsunknown2018-01-152-65/+5
| |
* | configure_input: update w/ Switch buttonsshinyquagsire232018-01-153-90/+221
|/
* qt: Update about dialog to show license for GPLv2 only.bunnei2018-01-141-1/+1
| | | | Fixes #6.
* Remove Surface Viewer stubJannik Vogel2018-01-143-13/+0
|
* Implement "About" dialogspycrab2018-01-146-3/+245
|
* yuzu qt copy windows deps renamedJames Rowe2018-01-141-2/+2
|
* Minor cleanupMerryMage2018-01-144-13/+13
|
* macOS: Update Info.plistMerryMage2018-01-141-34/+34
|
* Add new icons and fix up the linux paths for installJames Rowe2018-01-131-3/+1
|
* Fix build on macOS and linuxMerryMage2018-01-131-3/+5
|
* config: Default log filter to trace.bunnei2018-01-131-1/+1
|
* Removing unused settings and yuzu rebrandingJames Rowe2018-01-1314-427/+68
|
* Remove gpu debugger and get yuzu qt to compileJames Rowe2018-01-1339-3171/+46
|
* Massive removal of unused modulesJames Rowe2018-01-1368-0/+10017