Commit Graph

100 Commits

Author SHA1 Message Date
Admiral H. Curtiss b54a49eaaf GCMemcard: Rework construction logic to better match our knowledge of the format, while providing better error reporting facilities. 2019-08-15 18:18:56 +02:00
JosJuice 561a4cfcce Replace "Override Language on NTSC Games" with "Allow Mismatched Region Settings"
This new setting is like Override Language on NTSC Games, except
instead of only applying to the GameCube language setting,
it also applies to the Wii language setting.

Fixes https://bugs.dolphin-emu.org/issues/11299
2019-08-09 17:33:05 +02:00
Connor McLaughlin 48ca2c6f2e
Merge pull request #8233 from JosJuice/stringutil-string-view
StringUtil: Use std::string_view more
2019-08-09 23:39:01 +10:00
Lioncash fef1b84f0a DolphinQt: Replace QStringLiteral with alternatives where applicable
QStringLiterals generate a buffer so that during runtime there's very
little cost to constructing a QString. However, this also means that
duplicated strings cannot be optimized out into a single entry that gets
referenced everywhere, taking up space in the binary.

Rather than use QStringLiteral(""), we can just use QString{} (the
default constructor) to signify the empty string. This gets rid of an
unnecessary string buffer from being created, saving a tiny bit of
space.

While we're at it, we can just use the character overloads of particular
functions when they're available instead of using a QString overload.
The characters in this case are Latin-1 to begin with, so we can just
specify the characters as QLatin1Char instances to use those overloads.
These will automatically convert to QChar if needed, so this is safe.
2019-07-30 09:06:03 -04:00
Silent 3529dfd691
Connect numerous QPushButtons to use clicked signal instead of pressed. This unifies UI behaviour more. 2019-07-24 00:18:58 +02:00
JosJuice a2a1e04fc9 StringUtil: Use std::string_view more 2019-07-23 14:49:12 +02:00
JosJuice e24789b4fb Add a hotkey for inserting/ejecting the SD card 2019-07-03 22:44:51 +02:00
Connor McLaughlin e388f01e11
Merge pull request #8215 from CookiePLMonster/appverifier-sanitize
Fixed various errors spotted with Application Verifier
2019-06-30 01:27:25 +10:00
Connor McLaughlin f151570b2d
Merge pull request #8118 from 8times9/move-windowontop
Qt/InterfacePane: Move "Keep Window on Top" to Render Window section
2019-06-30 00:46:12 +10:00
Silent 09aadf0e9c
Fix CPU Clock Override checkbox not updating with GameINI - also bold it if it's overriden 2019-06-23 22:39:26 +02:00
Silent 6c21811090
Make DolphinAnalytics a true singleton - static local variables are initialized in a thread safe manner since C++11
Also works around a Visual Studio 2017 bug where static inline class fields are destructed multiple times
2019-06-23 21:43:47 +02:00
Lioncash 4f1f55093f Common/MsgHandler: Namespace code within the Common namespace
Closes another gap in the Common library where code isn't being
namespaced under it.
2019-06-19 16:03:55 -04:00
8times9 aeb02d83db Qt/InterfacePane: Move "Keep on Window on Top" to Render Window section 2019-05-24 13:18:49 -05:00
8times9 ba3b59fd18 Qt/InterfacePane: Rename In-Game to Render Window 2019-05-18 16:01:38 -05:00
chargeflux cd5f42cee0 Qt: Fix add button not releasing 2019-04-22 20:32:01 -04:00
spycrab d1f7f0fcc0 Qt/AudioPane: Fix volume box not keeping consistent width 2019-03-21 14:38:12 +01:00
spycrab 502cba255f Qt/GeneralPane: Align "Auto Update" on macOS 2019-03-16 16:20:21 +01:00
spycrab 70da86f1c3 Qt: Use ModalMessageBox everywhere 2019-03-04 21:53:02 +01:00
Mat M 503b96c617
Merge pull request #7848 from jordan-woyak/config-change-callbacks
Common/Config: Add a utility class to defer config change callbacks.
2019-03-03 18:44:34 -05:00
Jordan Woyak bbc6bf5294 Common/Config: Add a utility class to suppress config change callbacks. 2019-03-03 17:35:22 -06:00
spycrab 7f9084f87f Qt/USBDeviceATWhitelistD: Make message boxes modal 2019-03-03 16:12:12 +01:00
spycrab 606c61e7c9 Settings/InterfacePane: Make message box modal 2019-03-03 16:05:07 +01:00
spycrab 0c886b5e3c Settings/GeneralPane: Make message boxes modal 2019-03-03 15:56:23 +01:00
8times9 d45dad7bf7 Qt: Minor text tweaks 2019-02-07 11:53:07 -06:00
0xFEEDC0DE64 e1fdf4ae9a General GameCubePane improvements (squashed commit) 2019-01-24 21:08:21 +01:00
JosJuice 0c622929ba Add M3U file support for automatic disc switching 2019-01-04 09:24:42 +01:00
JosJuice bd665aad5d Automatic disc change for 2-disc games 2019-01-04 09:24:38 +01:00
Pierre Bourdon 6bb31fc94c DolphinQt: tell analytics to reload settings on change 2018-10-29 05:07:47 +01:00
Tilka 9a1f259626
Merge pull request #7486 from amaiorano/fix-infinite-polling-for-usb-devices
Fix infinite polling for usb devices after the "add to whitelist" dia…
2018-10-14 01:13:35 +01:00
Tilka 2d0e217715
Merge pull request #7485 from amaiorano/double-click-to-add-usb-whitelist-device
Make double click on selected usb whitelist device add it
2018-10-14 01:02:50 +01:00
Antonio Maiorano 3dec84a91b Fix infinite polling for usb devices after the "add to whitelist" dialog has been opened once
Problem is that USBDeviceAddToWhitelistDialog starts a timer once created to poll for devices every second. In Qt, closing a heap-allocated dialog doesn't delete it, so it keeps on polling. This fix is to allocate dialog on the stack, then use "exec" to run it modally without returning. Once closed, the stack instance will get destroyed, thus killing the timer.
2018-10-12 21:34:05 -04:00
Antonio Maiorano 3a8493cc59 Make double click on selected usb whitelist device add it 2018-10-09 20:34:32 -04:00
Z1ni b27c688fdf Qt/Settings: Add Cancel button to USB passthrough device dialog 2018-10-09 15:28:40 +03:00
Antonio Maiorano 165ac1c29e Fix QMessageBox icons using the default rather than the Dolphin logo 2018-10-02 00:26:43 -04:00
JosJuice 5db27b8e7e DolphinQt: Allow inserting/ejecting SD cards during emulation
This is possible on real hardware and was possible in DolphinWX.
2018-09-20 18:41:37 +02:00
JosJuice fb6b31bba8 Re-add i18n comments that were lost in the DolphinWX removal 2018-09-08 15:58:15 +02:00
Techjar d72f4ed468 Qt/AdvancedPane: Block signals during Update() 2018-08-23 07:00:20 -04:00
master0fdisaster 0d79e8a2ca Qt: Config/Advanced: Fix CPU Clock Speed Slider
Changes rounding from ceiling to nearest, when updating the slider value. Using ceiling as rounding made some values inaccessible.
2018-08-14 17:22:30 +02:00
master0fdisaster 1544d7d681 Qt: Config/Interface: Fix "Show Active title in Window Title" Checkbox
Makes the checkbox save when it's toggled.
2018-08-14 17:22:30 +02:00
master0fdisaster bc3cc01cc9 Qt: Config/Interface: Fix User Style Drop Down
makes the user style drop down load the right custom style after a restart
2018-08-14 17:21:50 +02:00
spycrab e3f36b74c5 Hotkeys: Add "Toggle USB Keyboard" hotkey 2018-08-02 12:55:30 +02:00
spycrab 7c2569ada7
Merge pull request #7283 from Techjar/netplay-improve-settings-sync
NetPlay: Improve settings synchronization and UI
2018-07-30 11:47:48 +02:00
spycrab 8fb3085b07 Revert "Revert "Qt/GameList: Add option to show covers in grid mode"" 2018-07-30 03:16:37 +02:00
Pierre Bourdon 9b94c76f81
Revert "Qt/GameList: Add option to show covers in grid mode" 2018-07-28 03:03:21 +02:00
spycrab 5ade5f4fe7 Qt/GameList: Add option to show covers in grid mode 2018-07-27 11:14:24 +02:00
Techjar 7036299a92 NetPlay: Improve settings synchronization and UI
Most settings which affect determinism will now be synced on NetPlay.
Additionally, there's a strict sync mode which will sync various
enhancements to prevent desync in games that use EFB reads.

This also adds a check for all players having the IPL.bin file, and
doesn't load it for anyone if someone is missing it. This prevents
desyncs caused by mismatched system fonts.

Additionally, the NetPlay window was getting too wide with checkboxes,
so FlowLayout has been introduced to make the checkboxes take up
multiple rows dynamically. However, there's some minor vertical
centering issues I haven't been able to solve, but it's better than a
ridiculously wide window.
2018-07-26 17:23:04 -04:00
Techjar 4407854e9c NetPlay save data synchronization
This adds the functionality of sending the host's save data (raw memory
cards, as well as GCI files and Wii saves with a matching GameID) to
all other clients. The data is compressed using LZO1X to greatly reduce
its size while keeping compression/decompression fast. Save
synchronization is enabled by default, and toggleable with a checkbox
in the NetPlay dialog.

On clicking start, if the option is enabled, game boot will be delayed
until all players have received the save data sent by the host. If any
player fails to receive it properly, boot will be cancelled to prevent
desyncs.
2018-07-19 18:09:20 -04:00
cremno 4ad2153378 fix compilation w/o Discord Rich Presence 2018-07-17 12:03:41 +02:00
spycrab d438e80bfd Qt/GeneralPane: Disable Rich Presence checkbox while emulation is running
Works around core hanging when Discord Rich Presence is toggled
while emulation is running.
2018-07-14 23:39:06 +02:00
spycrab 13ba24c5a6 Move DolphinQt2 to DolphinQt 2018-07-07 00:48:38 +02:00