Commit Graph

959 Commits

Author SHA1 Message Date
bunnei 48e19379cb Merge pull request #944 from lioncash/menu
qt: Don't show error dialog when canceling the Load Folder dialog
2018-08-06 21:33:23 -04:00
Lioncash 4de0824ad2 qt/main: Avoid sign conversions in UpdateRecentFiles()
This was intermixing signed and unsigned values when they could all just
be signed.
2018-08-06 15:42:44 -04:00
Lioncash 9790f8c9ff qt/main: Collapse if statement in UpdateRecentFiles()
Given the function accepts a boolean, we don't need to use an if
statement here and repeat ourselves.
2018-08-06 14:32:28 -04:00
Lioncash 0c6d371dd0 qt/main: Better file-existence checking within OnMenuRecentFile() and UpdateUITheme()
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.
2018-08-06 14:17:13 -04:00
Lioncash ab6bc68bc1 qt: Don't show error dialog when canceling the Load Folder dialog
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.
2018-08-06 14:02:34 -04:00
bunnei 5160c0c975 Merge pull request #912 from lioncash/global-var
video_core: Eliminate the g_renderer global variable
2018-08-05 16:37:39 -04:00
bunnei 4c42134b09 Merge pull request #849 from DarkLordZach/xci
XCI and Encrypted NCA Support
2018-08-04 14:33:11 -04:00
Lioncash 49dc22f84e video_core: Eliminate the g_renderer global variable
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.
2018-08-04 02:36:57 -04:00
Lioncash 153a00ebc0 video_core: Make global EmuWindow instance part of the base renderer class
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.
2018-08-01 21:40:30 -04:00
Zach Hilman 9a3f7d702f Fix merge conflicts with opus and update docs 2018-08-01 00:16:54 -04:00
Zach Hilman 9b710a5901 Use more descriptive error codes and messages 2018-08-01 00:16:54 -04:00
Zach Hilman 272ca87298 Make XCI comply to review and style guidelines 2018-08-01 00:16:54 -04:00
Zach Hilman b10c0d291f Remove files that are not used 2018-08-01 00:16:54 -04:00
bunnei 98a3798599 Merge pull request #860 from FearlessTobi/port-3911
Port #3911 from Citra: "citra-qt: optimize settings application"
2018-07-30 10:08:55 -07:00
fearlessTobi 41f0c63993 Port #3913 from Citra: "citra_qt: Remove obsolete application attribute" 2018-07-29 15:13:08 +02:00
fearlessTobi 6d2e4b74c2 Port #3911 from Citra: "Optimize settings application" 2018-07-29 14:37:18 +02:00
bunnei f93ad9b68b Merge pull request #839 from FearlessTobi/actually-port-3594
Port #3594 from Citra: "citra_qt: Add Continue/Pause & Toggle Speed Limit hotkeys"
2018-07-27 13:06:56 -07:00
fearlessTobi 5946bf7728 Port #3594 from Citra 2018-07-26 16:09:52 +02:00
fearlessTobi d037602d5c Port #3665 from Citra 2018-07-26 15:51:14 +02:00
Subv 555a0638ec Frontend: Check for more required OpenGL extensions during startup. 2018-07-22 12:05:38 -05:00
Lioncash 85ca923ed4 file_util: Use an enum class for GetUserPath()
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.
2018-07-21 16:21:19 -04:00
bunnei 91e048cce7 OpenGL: Use MakeCurrent/DoneCurrent for multithreaded rendering. 2018-07-14 02:50:35 -04:00
James Rowe ca04901b0f yuzu - Fix duplicate logs 2018-07-12 01:11:43 -06:00
James Rowe 7af1a786d5 Add configurable logging backends 2018-07-02 21:45:47 -04:00
James Rowe e159c550d8 Rename logging macro back to LOG_* 2018-07-02 21:45:47 -04:00
bunnei 78ce5a7026 yuzu: Remove SSBOs check from Qt frontend. 2018-06-26 11:28:56 -04:00
Zach Hilman 044ed8717e Bug fixes, testing, and review changes 2018-06-14 17:25:40 -04:00
Zach Hilman ad8d79aade Add 'Load Folder' menu option 2018-06-14 12:27:29 -04:00
Zach Hilman ba498ab930 Add support for main files in file picker 2018-06-14 12:16:56 -04:00
Subv de53649e61 Qt: Removed the Registers widget.
It was crashing and nobody actually uses this.
2018-06-12 20:33:32 -05:00
BreadFish64 a7e6cadc81 qt: add check for GL extension support 2018-06-04 12:26:30 -05:00
Lioncash ef3129bf7a frontends: Move logging macros over to new fmt-capable ones 2018-04-26 19:14:48 -04:00
N00byKing f2001a33cc Implement Pull #3528 from citra: use nvidia graphics automatically on laptops with optimus (with AMD support) (#271)
* Port 3528: use nvidia graphics automatically on laptops with optimus

* Force dedicated AMD Card for switchable Graphics

* Ran clang-format
2018-04-19 12:22:26 -06:00
adityaruplaha 4716115c3d Fix the stuck in fullscreen bug (Original PR: citra-emu/citra#3611) 2018-04-14 16:41:56 +05:30
James Rowe 92254855e7 Prevent crash from uninitialized telemetry 2018-04-07 07:25:14 -06:00
N00byKing 6d5b25c136 core, main.h: Abort on 32Bit ROMs (#309)
* core, main.h: Abort on 32Bit ROMs

* main.cpp: Fix Grammar
2018-04-06 11:06:32 -04:00
bunnei e39ea2fa8e Merge pull request #262 from daniellimws/fmtlib-macros
Logging: Add fmtlib-based macros
2018-04-02 21:19:20 -04:00
bunnei 2b51f19079 Merge pull request #267 from N00byKing/patch-1
Update Dialog from citra to yuzu
2018-04-02 18:33:52 -04:00
N00byKing 6386f0910c Port citra-emu/citra#3610 to yuzu 2018-03-30 17:38:34 +02:00
N00byKing 675b525fb8 Add Dark theme, Icon theming
configure_general.ui: Add UI Option for Themes

config.cpp: Save Theme Settings
2018-03-30 14:14:37 +02:00
N00byKing 05d777b122 main.cpp: Replace Citra with yuzu Wiki Links 2018-03-25 11:44:04 +02:00
N00byKing 357e97cc2c main.cpp: Update Dialog from citra to yuzu 2018-03-25 11:42:46 +02:00
Subv 18a9536efa GPU: Make the debug_context variable a member of the frontend instead of a global. 2018-03-24 23:35:06 -05:00
Subv b143430809 Frontend: Allow opening the Surface View widget in the Qt frontend. 2018-03-24 11:31:50 -05:00
Subv 19bf501723 Frontend: Ported the GPU breakpoints and surface viewer widgets from citra. 2018-03-24 11:31:49 -05:00
Daniel Lim Wee Soong 81eaba792e Change "yuzu starting..." to be logged with the new macro
Just as a proof that it works
2018-03-22 18:26:43 +08:00
N00byKing 9b619405e9 CMake: Set EMU_ARCH_BITS in CMakeLists.txt 2018-03-21 19:03:20 +01:00
Vishal Sharma 3ec2bf49cf Removes the use of QKeySequence::Cancel (#186)
* 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
2018-02-26 21:03:02 -08:00
Lioncash e11285c9a8 qt: Migrate to Qt 5 signal/slot connection syntax where applicable 2018-01-18 20:09:40 -05:00
MerryMage 41bfd994f6 clang-format 2018-01-16 18:05:21 +00:00
N00byKing b2228b3b2a Implement Pull #3333 from citra: citra_qt: Pause emulation on CoreError (#39) 2018-01-16 11:32:27 -05:00
goaaats 8244ccf2c0 Merge citra-emu PR#3159 by FearlessTobi(citra-qt : Fix a bug in our fullscreen implementation) 2018-01-16 15:59:30 +01:00
goaaats fe722aba41 Merge citra-emu PR#3001 by Styleoshin(citra-qt : Adding fullscreen mode) 2018-01-16 15:50:33 +01:00
Jannik Vogel e5ecb86d23 Remove Surface Viewer stub 2018-01-14 20:12:03 +01:00
spycrab bb84db54a8 Implement "About" dialog 2018-01-14 19:15:45 +01:00
MerryMage 2c057ef5df Minor cleanup 2018-01-13 23:56:18 +00:00
James Rowe 31499ecb2e Removing unused settings and yuzu rebranding 2018-01-12 19:11:05 -07:00
James Rowe bd5740a721 Remove gpu debugger and get yuzu qt to compile 2018-01-12 19:11:04 -07:00
James Rowe 5dbd091a80 Massive removal of unused modules 2018-01-12 19:11:03 -07:00