Commit graph

362 commits

Author SHA1 Message Date
Weiyi Wang
6742472133
Merge pull request #4235 from FearlessTobi/port-1259
Port various game_list changes from yuzu
2018-10-24 20:57:58 -04:00
Weiyi Wang
11729eafe1
Merge pull request #4315 from FearlessTobi/port-1332
WebService: Backport review comments from yuzu-emu/yuzu#1332
2018-10-20 18:05:06 -04:00
fearlessTobi
b0aed19823 Address a bunch of review comments 2018-10-20 10:35:55 -04:00
Lioncash
230edc8c7c yuzu: Move compatibility list specifics to their own source files
Lets us keep the generic portions of the compatibility list code
together, and allows us to introduce a type alias that makes it so we
don't need to type out a very long type declaration anymore, making the
immediate readability of some code better.
2018-10-20 16:31:35 +02:00
Weiyi Wang
eadd8b91b2
Merge pull request #4338 from FearlessTobi/port-1490
Port yuzu-emu/yuzu#1490: "citra_qt/main: Simplify OnMenuLoadFile()"
2018-10-20 10:09:41 -04:00
Pengfei Zhu
9458ae0977
Merge pull request #4259 from zhaowenlan1779/game-list
citra_qt: Add Game List configuration
2018-10-18 21:29:33 +08:00
Lioncash
15ecc38ada citra_qt/main: Apply the [[maybe_unused]] attribute to the parameter of SetDiscordEnabled()
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.
2018-10-16 14:42:48 +02:00
Pengfei Zhu
0df32275a7
Merge pull request #4282 from zhaowenlan1779/frame-advance
core, citra_qt: add frame advancing to framelimiter
2018-10-15 21:25:41 +08:00
Lioncash
7ddfce4a87 citra_qt/main: Simplify OnMenuLoadFile()
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.
2018-10-14 22:31:46 +02:00
zhupengfei
90f9d32f13
citra_qt: Add Game List configuration
This adds a Game List configuration group box which is similar to yuzu's, with features including icon size setting, row 1/2 text, and ability to hide invalid titles (those without a valid SMDH). I also added a UI tab and moved the language and theme settings there.
2018-10-09 22:37:21 +08:00
BreadFish64
ce823759cc citra-qt: disable directory watcher during CIA installation (#4284)
* disable directory watcher during CIA installation

fixes several errors while installing multiple CIAs

* use braces in if statement
2018-10-08 15:37:44 -05:00
Pengfei Zhu
2a90426cb8
Merge pull request #4267 from zhaowenlan1779/movie
movie: Add clock init time to CTM header
2018-10-05 08:20:33 -05:00
zhupengfei
cb775eb1ba
core, citra_qt: add frame advancing to framelimiter
Frame advancing is a commonly used TAS feature which basically means running the game frame by frame. TASers use this feature to press exact buttons at the exact frames. This commit added frame advancing to the framelimiter and two actions to the Movie menu. The default hotkey is `\` for advancing frames, and `Ctrl+A` for toggling frame advancing. The `Advance Frame` hotkey would automatically enable frame advancing if not already enabled.
2018-10-02 07:28:58 +08:00
zhupengfei
bbf391abb9
citra_qt, core: game list "Open XXX Location" improvements 2018-10-01 08:42:22 +08:00
Weiyi Wang
4a30a502a0
Merge pull request #4211 from wwylele/web-cleanup
web_service: stop using std::future + callback style async
2018-09-29 23:02:27 -04:00
zhupengfei
ae5c658997
movie: Add clock init time to CTM header
This adds a clock init time field to the CTM header. The clock settings would be overridden when playing a movie. And when recording a movie, if the clock is set to System Time, it would be set to fixed init time at the current moment as well. In this way this keeps consistency with the RNG even if the user does just no setting.
2018-09-27 22:18:10 +08:00
Lioncash
b3221c3180 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-09-22 21:18:56 +02:00
Weiyi Wang
77c1f647cb web_service: stop using std::future + callback style async 2018-09-13 16:14:34 -04:00
zhupengfei
ad6b140cb0
service/apt: Implement soft reset & CloseApplication 2018-09-08 11:05:23 +08:00
Weiyi Wang
7d8f115185 Prefix all size_t with std::
done automatically by executing regex replace `([^:0-9a-zA-Z_])size_t([^0-9a-zA-Z_])` -> `$1std::size_t$2`
2018-09-06 16:03:28 -04:00
Merry
eca98eeb3e
Merge pull request #4143 from zhaowenlan1779/shared-font-text-fix
core, citra_qt: unify status of system archives and shared fonts
2018-09-06 20:51:32 +01:00
fearlessTobi
cf8b1726df Address review comments 2018-09-06 00:00:21 +02:00
Lioncash
3284bef360 string_util: Remove StringFromFormat() and related functions
Given we utilize fmt, we don't need to provide our own functions for formatting anymore
2018-09-06 00:00:21 +02:00
fearlessTobi
2f6f232965 Backport some review fixes of Lioncash 2018-09-01 15:41:46 +02:00
zhupengfei
f28bc28d6b
core, citra_qt: unify status of system archives and shared fonts
Shared fonts is no different from any other system archives, and there is not really any point to make a separate status for it. This also fixes the incorrect error message that was introduced when I made the UI text improvements.
2018-08-27 22:40:35 +08:00
James Rowe
a6723ec2eb
Merge pull request #4126 from FearlessTobi/port-892
Port #892 from yuzu: "Make global EmuWindow instance part of the base renderer class"
2018-08-26 12:00:55 -06:00
James Rowe
13262c187c
Merge pull request #3922 from zhaowenlan1779/qt-movie
movie: Add Qt Movie feature
2018-08-26 11:07:15 -06:00
fearlessTobi
f61c9c3eb7 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-25 15:20:40 +02:00
Lioncash
cb1825a769 qt/hotkey: Get rid of global hotkey map instance
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.
2018-08-25 13:43:11 +02:00
Merry
0a5621fafc
Merge pull request #3970 from FearlessTobi/more-popup-madness
citra_qt: Add more verbose popups for video_core errors
2018-08-24 19:21:35 +01:00
zhupengfei
9d056282df citra_qt: record movie record/playback path 2018-08-20 11:36:00 +02:00
zhupengfei
3b459f6eb3 citra_qt, movie: allow recording/playback before emulation starts 2018-08-20 11:34:27 +02:00
zhupengfei
a9ad8daf47 citra_qt: Add movie frontend 2018-08-20 11:34:26 +02:00
Vamsi Krishna
6cb9a45154 Add Discord Rich Presence Support (#3883)
* Initial Discord RPC support

Build with Discord Presence ON

Fix RPC detection

Fix Time elapsed on pause; will now continue to count.

* Fix CI builds with compile flag

Addressed reviews

Fix silly mistakes

Fix 'Not in-game' display

class instead of namespace

Fix

Revamped

remove redundant code

Using Pimpl pattern

* Implement Null class

* Fix config updation

* Addressed All Reviews

* externals/discord-rpc : Updated to latest commit
2018-08-20 11:20:33 +02:00
fearlessTobi
b19e88a9f4 Small fixup 2018-08-19 16:46:10 +02:00
fearlessTobi
4cd737abae Address zhaowenlans feedback 2018-08-19 15:53:46 +02:00
fearlessTobi
d1c5f01afe Add more verbose popups for video_core errors 2018-08-19 15:48:40 +02:00
James Rowe
aed15a8d9d
Merge pull request #4012 from zhaowenlan1779/ui-retext
citra_qt: UI text improvements
2018-08-13 23:31:39 -06:00
Lioncash
265e875e5b
qt/main: Better file-existence checking within OnMenuRecentFile() and UpdateUITheme() 2018-08-10 09:45:48 +08:00
BreadFish64
d09646ab9d citra-qt: service: add convenient LLE service module configuration (#3967)
* citra-qt: service: add convenient LLE service module configuration

* fix SDL settings

* unexpose AttemptLLE

* static

* fix array includes

* use default with writesetting
2018-08-09 21:10:11 +02:00
James Rowe
77573b93ce
Merge pull request #4066 from zhaowenlan1779/port-yuzu-946
Port "qt/main: Collapse if statement in UpdateRecentFiles()" from yuzu
2018-08-09 09:41:10 -06:00
zhupengfei
a51c700f59
Port "qt/main: Collapse if statement in UpdateRecentFiles()" from yuzu 2018-08-08 16:55:23 +08:00
zhupengfei
6a1f9afbba
citra_qt: add Clear Recent Files menu action
I had to edit a bit of the Restart action so that it does not go wrong because recent files are cleared.
2018-08-06 09:19:35 +08:00
James Rowe
751e00a615
Merge pull request #3902 from valentinvanelslande/restart
citra_qt: add restart hotkey & menu option
2018-08-02 22:55:07 -06:00
zhupengfei
383dd967d1
citra_qt: UI text improvements
Changed a few texts that are not so good in the UI according to
@neobrain.
2018-08-01 17:32:33 +08:00
James Rowe
7b46b7e29a
Merge pull request #4010 from zhaowenlan1779/statusbar-retheme
qt_themes: add themed connected/disconnected icons for dark and fix status bar theme updating
2018-07-30 10:35:42 -06:00
zhupengfei
b1bbe0441e
qt_themes: add themed connected/disconnected icons for dark and fix status bar theme updating
In dark theme, it is very hard to see the connected/disconnected icons because they are dark too. So I added two white-coloured icons for the dark theme. This also fixed an issue where theme update does not change the icon on the status bar.
2018-07-28 11:50:46 +08:00
Weiyi Wang
be193869cd
Merge pull request #3990 from zhaowenlan1779/retranslation-continue
citra_qt: minor retranslation fix
2018-07-27 19:55:58 +03:00
James Rowe
6a973cc0bb citra-qt: Init logging sooner so we dont miss some logs on startup 2018-07-27 09:29:31 -06:00
Weiyi Wang
7babd78a23
Merge pull request #3928 from zhaowenlan1779/log-settings
citra_qt: Log settings on launch
2018-07-27 11:22:23 +03:00
zhupengfei
3a8b002ede citra_qt: minor retranslation fix
When you change the language when a game is running, the "Continue" action in the "Emulation" menu would become "Start". This commit fixes the issue by checking and setting it if it should be "Continue". It seems that this is the only place with this issue.
2018-07-24 19:49:49 +08:00
zhupengfei
76465dd0f5
citra_qt: retranslate status bar 2018-07-24 19:20:00 +08:00
zhupengfei
e8ac58c480
settings: move log code to settings 2018-07-19 08:38:57 +08:00
James Rowe
bf6da61da5
Merge pull request #3850 from zhaowenlan1779/swkbd
applets/swkbd: Software Keyboard Implementation
2018-07-17 09:02:55 -06:00
zhupengfei
82aa45d9fa
citra_qt/configuration: log on config dialog close 2018-07-17 15:33:59 +08:00
zhupengfei
250cf584e3
citra_qt: Log settings on launch 2018-07-17 15:33:58 +08:00
zhupengfei
5407ed8b5e
citra_qt/applets/swkbd: QtKeyboard and misc fixes
* Addressed comments and removed the applet interface

* swkbd: address @lioncash's comments

* core: more fixes

** Moved registered_swkbd to System

** Removed an usused virtual

** Removed functionality of DrawScreenKeyboard

** Removed src/core/settings.h change

* swkbd: address @lioncash's 2nd review

* swkbd: update logging macro

* QtKeyboard: Make dialog modal and hide help
2018-07-10 12:49:55 +08:00
Weiyi Wang
fd5f71bcff
Merge pull request #3912 from BreadFish64/fix-conversion-warnings
fix conversion warnings
2018-07-03 21:14:01 +03:00
Weiyi Wang
9c1c899243
Merge pull request #3911 from BreadFish64/fix-setting-change-freeze
citra-qt: optimize settings application
2018-07-03 11:08:42 +03:00
James Rowe
6a08167505
Merge pull request #3905 from valentinvanelslande/remove-return
citra_qt: Remove return
2018-07-02 20:12:55 -06:00
BreadFish64
5b181976ce fix conversion warnings 2018-07-02 18:45:45 -05:00
BynariStar
e80ae1a5d7
citra_qt: Remove obsolete application attribute
As of Qt 5 Qt::AA_X11InitThreads no longer does anything.

See http://doc.qt.io/qt-5/qt.html
2018-07-03 01:26:54 +03:00
BreadFish64
f649c443d9 optimize settings application 2018-07-02 16:53:34 -05:00
Valentin Vanelslande
77b338e928
citra_qt: Remove return 2018-06-30 21:50:30 -05:00
Valentin Vanelslande
6380d52d1c
citra_qt: add Restart hotkey & menu action code 2018-06-30 12:30:56 -05:00
zhupengfei
f23443b921
applets/swkbd: Implement DefaultCitraKeyboard 2018-06-30 08:01:50 +08:00
wwylele
0eab948728 reformat all files with clang-format 2018-06-29 16:56:12 +03:00
wwylele
7c5a76e58b log: replace all NGLOG with LOG 2018-06-29 14:18:07 +03:00
wwylele
458a96bf90 citra_qt: only update title from game after ensuring loaded successfully 2018-06-24 17:30:43 +03:00
zhupengfei
fa80ba9846
citra-qt: Improve Title Bar display 2018-06-20 09:30:29 +08:00
zhupengfei
ddc97b15f4 common: Parse Nightly/Canary build version 2018-06-20 09:30:26 +08:00
James Rowe
c39dee1569
Merge pull request #3617 from BreadFish64/multiple-game-dirs
QT: Add support for multiple game directories
2018-06-17 21:04:24 -06:00
Valentin Vanelslande
90bcb26c3b citra_qt: Add Continue/Pause & Toggle Speed Limit hotkeys 2018-05-28 16:36:56 -05:00
BreadFish64
1a57f9488f citra_qt: support multiple game directories 2018-05-26 15:38:06 -05:00
James Rowe
80bfd87270
Merge pull request #3730 from FearlessTobi/game-compat-fixes
citra_qt: Refactor game list compatibility system
2018-05-11 11:59:53 -06:00
朱鹏飞
57827de38b citra_qt: camera integration (#3566)
* Implement camera feature

* Make OpenCVCamera optional

* Fix styling problems

* CI configuration

* Fix CI

* Hopefully final fix

* Hopefully final fix

* Fix all the problems

* Oops..

* Add Qt Multimedia Camera

* Another oops

* Try to fix broken linux CI

* Try to fix broken linux CI

* Fix problems

* Improve UI

* Fix problems

* camera: Add support for Qt <5.10 and fix preview error

* CI: try to fix linux-frozen travis build

* camera: fix problems and add multiple handlers support

* fix CI

* remove most ServiceFramework changes

* Fix format

* Remove last ServiceFramework change

* camera: remove unused interfaces; revert submodule change

* camera: fix CI error

* ci: use ccache for opencv build

* citra_qt: fix configuration error; CI: add mediaservice plugin

* citra_qt: fix clang-format

* citra_qt: fix documentation error

* citra_qt: fix configuration page; camera: fix pausing crash

* citra_qt: fix preview not stopping

* camera: extend handlers length

* camera: fix camera resume error

* camera: fix clang-format

* camera: remove all OpenCV; citra_qt: rewrite configuration

* camera: remove all OpenCV; citra_qt: rewrite configuration

* camera: remove all OpenCV; citra_qt: rewrite configuration

* CI: fix linux ci

* camera: check settings update; citra_qt: fix configuration error

* service_cam: use a better way to apply configuration

* Service_CAM: rewrite camera reload

* cam: fix clang format

* citra_qt: fix argument load issue; camera: base of system camera selection

* citra_qt: Add system camera selection

* camera: fix image upside down, Implement SetFrameRate in Qt Multimedia Camera

* camera: Add missing <array> include, update SetFrameRate and add settings in Qt Multimedia Camera header

* camera: move started in Qt Multimedia Camera header

* QtMultimediaCamera: Move frame rates to SetFrameRate; Set minimum and maximum frame rate

* Update appveyor.yml
2018-05-11 11:42:23 -06:00
FearlessTobi
f354744ad4 citra_qt: Refactor game list compatibilty 2018-05-10 03:57:57 +02:00
adityaruplaha
0cece7918a Log Citra version.
Class: Frontend
Level: Info
Format: "Citra Version: " + window title
2018-04-29 21:05:19 +05:30
James Rowe
98c150e7fc Fix duplicated logs on windows 2018-04-27 09:58:48 -06:00
Daniel Lim Wee Soong
51398e0301 Logging: Add customizable logging backends and fmtlib based macros
* Change the logging backend to support multiple sinks through the
Backend Interface
* Add a new set of logging macros to use fmtlib instead.
* Qt: Compile as GUI application on windows to make the console hidden by
default. Add filter configuration and a button to open log location.
* SDL: Migrate to the new logging macros
2018-04-23 21:32:56 -06:00
James Rowe
c635c7f40d Address more review comments
* Make Validation a singleton instead
* Wording changes for error messages
* Smart pointers for Ui members
* Other minor nitpicks
2018-04-19 10:28:17 -06:00
James Rowe
a85511cd7d Fix multiplayer dropdowns and proxy model
* Filters in the lobby properly remove rooms
* Multiplayer menu items for Show Room and Leave Room work as intended
2018-04-19 10:28:17 -06:00
James Rowe
aa391ed60d Fixed and issue where multiplayer state was covering the File and Emulation menu items when it shouldn't even be visible 2018-04-19 10:28:16 -06:00
James Rowe
2d1efcc36b Add a member list expandable to the lobby. Fix issue with hosting more than once. 2018-04-19 10:28:15 -06:00
James Rowe
f346a9d372 Split multiplayer code into its own class 2018-04-19 10:28:15 -06:00
James Rowe
ddbbab8fd6 Add network status text to the status bar 2018-04-19 10:28:15 -06:00
James Rowe
871196bc10 Citra-qt: Add multiplayer ui 2018-04-19 10:28:14 -06:00
baka0815
4321ab44ea citra-qt: Don't translate function keys in InitializeHotkeys() 2018-04-16 12:37:13 +02:00
FearlessTobi
fbc05fac19 Show game compatibility within Citra 2018-04-16 00:42:58 +02:00
adityaruplaha
2a7d0ec4be Fix the stuck in fullscreen bug.
Don't save the UI/RenderWindow geometry if fullscreen was enabled.
2018-04-07 12:16:07 +05:30
BreadFish64
1d809ce6aa update-icons-signal 2018-03-30 10:20:21 -05:00
BreadFish64
05cf7fe70a QT: Implement themed icons (#3554)
* implement themed icons

* fix theme search paths
2018-03-27 12:11:04 +01:00
Daniel Lim Wee Soong
5ddc440b48 Change to print program id as hex 2018-03-26 20:44:49 +08:00
Daniel Lim Wee Soong
978a169cc4 Drop # for formatting program id 2018-03-25 15:48:29 +08:00
Daniel Lim Wee Soong
79b0e62455 citra_qt: Migrate logging macros
Follow-up of #3533

Replace prefix of all logging macros from LOG to NGLOG
2018-03-25 13:00:36 +08:00
Weiyi Wang
d03f72eb56
Merge pull request #3535 from ccawley2011/emu_arch_bits
CMake: Set EMU_ARCH_BITS in CMakeLists.txt
2018-03-21 16:15:22 +02:00
Weiyi Wang
42ed0254db
Merge pull request #3528 from BreadFish64/auto-nvidia
use nvidia graphics automatically on laptops with optimus
2018-03-18 23:41:08 +02:00
BreadFish64
691aadb6a3 comment 2018-03-16 16:06:33 -05:00
Cameron Cawley
8d1cab4892 CMake: Set EMU_ARCH_BITS in CMakeLists.txt 2018-03-16 13:29:36 +00:00
BreadFish64
55d5720962 use nvidia graphics automatically on laptops with optimus 2018-03-15 20:36:53 -05:00