Commit graph

1409 commits

Author SHA1 Message Date
Valentin Vanelslande
dce82fa005 move comment 2018-12-29 13:15:31 -05:00
Valentin Vanelslande
57f224fc50 fix clang-format 2018-12-29 09:31:03 -05:00
Valentin Vanelslande
3d00beb9d5 add a comment, rename old index 2018-12-29 09:19:45 -05:00
Valentin Vanelslande
e7b1a1d5c8 fix clang-format 2018-12-29 09:04:43 -05:00
Valentin Vanelslande
60d1822206 if to clamp 2018-12-29 08:39:30 -05:00
Valentin Vanelslande
5a14af5f38 address some comments 2018-12-29 08:27:06 -05:00
Pengfei Zhu
5a4c7c32d8
Update src/citra_qt/configuration/config.cpp
Co-Authored-By: valentinvanelslande <valentinvanelslandeacnl@gmail.com>
2018-12-29 08:14:37 -05:00
Valentin Vanelslande
8e614c3eb0 clang-format; address one comment 2018-12-28 23:31:55 -05:00
Weiyi Wang
fbd0944a5a
Merge pull request #4512 from FearlessTobi/port-1902
Port yuzu-emu/yuzu#1902: "audio_core: Make g_sink_details internally linked"
2018-12-28 22:55:08 -05:00
Valentin Vanelslande
860860397b more fixes 2018-12-28 21:26:50 -05:00
Valentin Vanelslande
e420fb666f another fix 2018-12-28 21:15:18 -05:00
Valentin Vanelslande
6d0c50dfec more fixes 2018-12-28 21:14:44 -05:00
Valentin Vanelslande
bf93b94658 fixes 2018-12-28 21:13:57 -05:00
Mat M
90965525ac
Apply suggestions from code review
Co-Authored-By: valentinvanelslande <valentinvanelslandeacnl@gmail.com>
2018-12-28 21:00:09 -05:00
Valentin Vanelslande
7c95032e3a Add multiple input profile support
Only supported in the Qt frontend.
2018-12-28 20:28:45 -05:00
RicBent
6ad609a539 Added GPIO14 button and UI config buttons 2018-12-28 17:13:37 -06:00
RicBent
7c007eac24 Fixed coding style 2018-12-28 15:13:16 -06:00
RicBent
403d2f0058 Added Debug Button 2018-12-28 12:47:50 -06:00
Weiyi Wang
3ede436053
Merge pull request #4489 from FearlessTobi/port-ui-stuff
Port QT interface changes from yuzu.
2018-12-21 20:52:14 -05:00
Weiyi Wang
443f4b964d DSP/LLE: add multithread mode 2018-12-21 20:49:24 -05:00
Weiyi Wang
05c372bf6c Update teakra to fix macos issue; address comment feedbacks 2018-12-21 20:49:23 -05:00
Weiyi Wang
21da135cc6 Configuration: add option to use DSP LLE 2018-12-21 20:49:22 -05:00
Pengfei Zhu
eabc9727d8
Merge pull request #4468 from citra-emu/multiplayer-v4/main
Multiplayer version 4
2018-12-22 09:45:28 +08:00
zhupengfei
7a379ee03a
citra_qt/multiplayer: Add View Profile option
Adds an UI action to navigate to the user's profile located in Citra Community.
2018-12-18 22:07:42 +08:00
Weiyi Wang
29548bbe86
Merge pull request #4511 from FearlessTobi/port-1871
Port yuzu-emu/yuzu#1871: "yuzu/wait_tree: Pass QString by value and std::move in the initializer list for WaitTreeText"
2018-12-17 00:02:42 -05:00
zhupengfei
4df4b90795
citra_qt/multiplayer: Change style for pinged messages a bit
To allow it to be seen more clearly in dark themes
2018-12-16 23:08:47 +08:00
danman447
66a4f8a9d0 (QLabel)_is_already_in_use-Correct_Auto_Default 2018-12-16 11:16:05 +00:00
Lioncash
90082268dc audio_core: Make g_sink_details internally linked
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.
2018-12-16 02:44:04 +01:00
Lioncash
c2790a3f86 yuzu/wait_tree: Pass QString by value and std::move in the initializer list for WaitTreeText
Just a trivial modernization that potentially avoids copying strings in certain scenarios.
2018-12-16 01:18:06 +01:00
zhupengfei
9d062d63da
network, citra_qt: Give moderation permission to community mods
Based on the `roles` payload in the JWT, the rooms will now give mod permission to Citra Community Moderators. To notify the client of its permissions, a new response, IdJoinSuccessAsMod is added, and there's now a new RoomMember::State called Moderator.
2018-12-15 20:28:03 +08:00
zhupengfei
8b8b39ec0e
citra_qt/multiplayer: Add user ping support
The user would be notified if the message contains "@" followed by the user's nickname or forum username. An alert would be shown, and the icon and message in the status bar would be changed. All notification is only shown if the chat window currently does not have focus.

Also added a connected_notification icon for showing in the status bar.
2018-12-15 11:03:35 +08:00
zhupengfei
deb398d190
citra_qt: Save ban list for room hosting 2018-12-15 11:03:33 +08:00
zhupengfei
15540df140
citra_qt/multiplayer/chat_room: Add moderation to context menu 2018-12-15 11:03:33 +08:00
zhupengfei
6359b6094c
citra_qt: Add a moderation dialog
The dialog currently supports accessing the ban list and removing entries from it.
2018-12-15 11:03:32 +08:00
zhupengfei
7acd2664dd
network/room_member: Add moderation functions
To allow for passing moderation errors around without impacting the State, this commit also separates the previous State enum into two enums: State, and Error. The State enum now only contains generic states like disconnected or connected, and the Error enum describes the specific error happened.

citra_qt/multiplayer/{state, message} is changed accordingly.
2018-12-15 11:03:31 +08:00
zhupengfei
6c29d441f4
multiplayer: fix "Connected" message not appearing on first connection 2018-12-15 11:03:10 +08:00
zhupengfei
0319e51960 multiplayer: Add status message for user joining/leaving
The room server is now able to send a new type of packet: IdStatusMessage which is parsed and displayed by the client.
2018-12-15 11:03:06 +08:00
zhupengfei
386bf5c861
citra_qt: Use the new verify backend; UI changes
Displayed username along with nickname (when they are not identical); Requested and displayed user's avatar; Made the dialog bigger for extended names.

Added a few functions to web_backend (GetImage, GetPlain) to support getting data in multiple content-types.

Added a no_avatar icon for users without avatars.
2018-12-15 11:02:54 +08:00
adityaruplaha
5f0e189238
Add Support for Room Descriptions 2018-12-15 11:02:50 +08:00
zhupengfei
c396e3c6e5 network: check Console ID conflicts
As Console ID can be sensitive data sometimes, this implementation sent a SHA256 hash of it instead.
2018-12-15 11:02:47 +08:00
zhupengfei
3c589f473f
multiplayer: check nickname regex server side 2018-12-15 10:40:27 +08:00
James Rowe
e040bc9355
Multiplayer: Send an error message when connecting to a full room 2018-12-15 10:40:26 +08:00
Valentin Vanelslande
599e60f80b
host_room: change minimum members to 2
the minimum for dedicated_room is 2.
2018-12-10 15:39:52 -05:00
fearlessTobi
5a625fe945 yuzu/game_list_worker: Move std::string construction after the termintion check in callbacks
Avoids potentially allocating a std::string instance when it isn't
needed.
2018-12-09 15:51:19 +01:00
Lioncash
5840943110 yuzu/configuration: Make slots private where applicable
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.
2018-12-09 15:51:19 +01:00
Lioncash
d87961bad3 yuzu/configuration: Add missing override specifiers to configuration-related classes
Resolves trivial compiler warnings.
2018-12-09 15:51:19 +01:00
Lioncash
9c0c817e6f yuzu/configuration/configure_input: Default destructor in the cpp file
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.
2018-12-09 15:51:08 +01:00
Bartosz Kaszubowski
7aeb4e29c2 remove border from GameList 2018-12-07 16:33:05 +01:00
Weiyi Wang
296c458e0e Memory: move GetPhysicalPointer and IsValidPhysicalAddress into class 2018-12-05 20:21:14 -05:00
Pengfei Zhu
cd80a0df8c
Merge pull request #4418 from FearlessTobi/port-1441
Port yuzu-emu/yuzu#1441: "logging: Add DebuggerBackend for logging to Visual Studio"
2018-12-04 22:20:41 +08:00
Carl Kenner
3d083859c1 logging: Add DebuggerBackend for logging to Visual Studio 2018-12-01 12:54:17 +01:00
zhupengfei
1970178cc0
citra_qt: rename the menu to Tools
Also made Movie a sub-menu of Tools.
2018-11-30 14:14:41 +08:00
zhupengfei
071b41cb61
citra_qt, video_core: Screenshot functionality
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.
2018-11-30 14:14:41 +08:00
bunnei
d3b1b5f22c
Merge pull request #4398 from zhaowenlan1779/config-fix
citra_qt/configuration: fix language configuration issues
2018-11-16 23:33:50 -08:00
bunnei
11baf7ac13
Merge pull request #4419 from FearlessTobi/port-1639
Port yuzu-emu/yuzu#1639: "qt: Add help option to open yuzu folder"
2018-11-16 23:29:59 -08:00
Ben
b90ff739a0 Add CheatEngine and support for Gateway cheats (#4406)
* Add CheatEngine; Add support for Gateway cheats; Add Cheat UI

* fix a potential crash on some systems

* fix substr with negative length

* Add Joker to the NonOp comp handling

* Fixup JokerOp

* minor fixup in patchop; add todo for nested loops

* Add comment for PadState member variable in HID

* fix: stol to stoul in parsing cheat file

* fix misplaced parsing of values; fix patchop code

* add missing break

* Make read_func and write_func a template parameter
2018-11-16 18:01:10 -07:00
Zach Hilman
3a1fe87f6c qt: Move Open yuzu Folder action from Help to File 2018-11-16 15:24:42 +01:00
Tobias
34e1250ccc
citra_qt: Add Amiibo hotkeys, notify user of loading errors (#4387) 2018-11-13 14:58:05 +01:00
Zach Hilman
31c394e9b5 qt: Add help option to open yuzu folder 2018-11-09 17:00:14 +01:00
zhupengfei
ab07d44193
citra_qt/configuration: fix language configuration issues 2018-11-03 09:34:01 +08:00
Weiyi Wang
445538c2cf
Merge pull request #4371 from wwylele/kernel-global-3
Kernel: eliminate global state for threads and timers
2018-10-30 00:36:10 -04:00
bunnei
9d05fbbef4
Merge pull request #4369 from FearlessTobi/compat-new
compatdb: Use a seperate endpoint for testcase submission
2018-10-28 03:53:10 -04:00
bunnei
3219bdb30d
Merge pull request #4382 from FearlessTobi/reset-defaults
configure_general: Add an option to reset defaults
2018-10-28 03:52:10 -04:00
fearlessTobi
96ee82c464 configure_general: Add an option to reset defaults 2018-10-27 22:43:29 +02:00
fearlessTobi
236a7dba7e Move "Report compatibility" button to Emulation tab 2018-10-27 12:20:03 +02:00
fearlessTobi
b7117bf050 compatdb: Use a seperate endpoint for testcase submission 2018-10-27 12:20:03 +02:00
Weiyi Wang
fa46dbdf0b
Merge pull request #4376 from FearlessTobi/port-1571
Port yuzu-emu/yuzu#1571: "graphic_breakpoints: Correct translation of strings in BreakpointModel's data() function"
2018-10-26 22:40:55 -04:00
Weiyi Wang
f274340001
Merge pull request #4374 from FearlessTobi/frontend-ports
Port various frontend cleanups from yuzu
2018-10-26 22:38:07 -04:00
Weiyi Wang
477cda1a7e
Merge pull request #4364 from wwylele/gl-error-tr
citra_qt: fix translation for opengl version error
2018-10-26 22:37:47 -04:00
fearlessTobi
494d86d083 graphic_breakpoints: Correct translation of strings in BreakpointModel's data() function
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.
2018-10-27 00:33:31 +02:00
Lioncash
9f6c1b058a CMakeLists: Use PROJECT_SOURCE_DIR instead of CMAKE_SOURCE_DIR
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.
2018-10-27 00:20:52 +02:00
Lioncash
a74d97b15f configure_system: Default initialize member variables
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.
2018-10-27 00:02:27 +02:00
Lioncash
470cc66049 configure_system: Amend function casing 2018-10-27 00:00:43 +02:00
Lioncash
97cdf44ddd configure_system: Add missing override specifier on the destructor 2018-10-26 23:59:18 +02:00
Lioncash
452cfb46a9 configure_system: Make public slots private
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.
2018-10-26 23:58:37 +02:00
Lioncash
027197cf1f bootmanager: Use QStringLiteral instead of std::string to represent the window title
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.
2018-10-26 23:56:04 +02:00
Lioncash
bf6dd78324 yuzu/configuration/config: Use a std::unique_ptr for qt_config instead of a raw pointer
Same behavior, less code.
2018-10-26 23:53:58 +02:00
Lioncash
f4bd5c3559 yuzu/configuration/config: Reorganize member variable and function layout
Makes the class layout consistent with the others.
2018-10-26 23:52:25 +02:00
Lioncash
452ccf02a6 game_list: Make game list column headers translatable
These are user-facing strings, so they should be marked as translatable
2018-10-26 23:51:04 +02:00
Weiyi Wang
20ae37ba4f kernel/Thread: move thread list into the manager 2018-10-26 16:07:45 -04:00
Weiyi Wang
92b1a5c546 citra_qt: fix translation for opengl version error
variable in tr() won't trigger linguist to generate translation entry. Instead it needs a string literal
2018-10-25 14:30:46 -04:00
Pengfei Zhu
c5b7018625
citra_qt: add seconds section to clock settings (#4347)
* citra_qt: add seconds section to clock settings

Simple fix to make the UI more usable.

* Use an ISO styled format string

Not actually tested locally
2018-10-25 21:29:43 +08:00
Tobias
dec3fb2dcf nfc: Add Amiibo support (REOPENED) (#4337)
* Initial implementation

* Various fixes and new features

* Address some review comments

* Fixes

* Address more comments

* Use g_hle_lock

* Add more state checking, remove unneeded include

* Minor changes
2018-10-24 21:01:38 -04:00
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
Lioncash
6147bb622d CMakeLists: Use target_compile_definitions instead of add_definitions to define YUZU_ENABLE_COMPATIBILITY_REPORTING
Keeps the definition constrained to the citra_qt 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.
2018-10-23 16:16:11 +02: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
9901b289b6 Review comments -part 4 2018-10-20 10:35:55 -04:00
fearlessTobi
08793a6dae Review comments - part 3 2018-10-20 10:35:55 -04:00
fearlessTobi
b0aed19823 Address a bunch of review comments 2018-10-20 10:35:55 -04:00
fearlessTobi
111b7db759 Stop splitting includes 2018-10-20 16:31:35 +02:00
Lioncash
f56a840333 game_list_p: Take map iterator contents by const reference
We don't need to copy the whole struct in this instance, we can just
utilize a reference instead.
2018-10-20 16:31:35 +02:00
Lioncash
52ec85be12 game_list_p: Amend typo in GameListItemCompat's constructor parameter
Adds a missing 'i' character that was missing in compatibility.
2018-10-20 16:31:35 +02: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
lioncash
9238015dd4 yuzu: Move GameListWorker to its own source files
This has gotten sufficiently large enough to warrant moving it to its
own source files. Especially given it dumps the file_sys headers around
code that doesn't use it for the most part.

This'll also make it easier to introduce a type alias for the
compatibility list, so a large unordered_map type declaration doesn't
need to be specified all the time (we don't want to propagate the
game_list_p.h include via the main game_list.h header).
2018-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
Weiyi Wang
1de63f9b16
Merge pull request #4328 from B3n30/remove_current_module
remove GetCurrentModule() functions in HLE Services
2018-10-18 21:39:24 -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
8ecd31db41
citra_qt: use enum classes for the settings 2018-10-14 22:55:28 +08:00
B3n30
eb3af0f16a Add GetModule() helper functions, for HID, CAM, and CFG 2018-10-12 11:50:50 +02:00
B3n30
9d53136f20 remove GetCurrentModule() functions in HLE Services 2018-10-11 19:23:14 +02:00
Weiyi Wang
9adc407112
Merge pull request #4304 from B3n30/std_optional
Replace boost::optional with std::optional where possible
2018-10-11 12:40:00 -04:00
Pengfei Zhu
efc0d502ed
Merge pull request #4326 from zhaowenlan1779/multiplayer-retranslate
citra_qt/multiplayer: retranslate multiplayer dialogs
2018-10-11 09:44:33 -05:00
zhupengfei
748a9849ec
citra_qt/multiplayer: retranslate multiplayer dialogs 2018-10-10 18:21:22 +08:00
NeatNit
4ee914c7a8 implemented touch in Qt and SDL
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
2018-10-09 23:10:28 +08: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
Weiyi Wang
3480c1d49d
Merge pull request #4242 from citra-valentin/fix-camera-on-linux-pr
Fix camera on Linux
2018-10-08 11:01:59 -04:00
Lioncash
365d8c57c7 ui_settings: Place definition of the theme array within the cpp file
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.
2018-10-06 16:22:28 +02:00
B3n30
2306af3600 Handle cases when std::optional does not contain a value 2018-10-05 16:51:33 +02:00
Valentin Vanelslande
53afb1cc2d
Move if 2018-10-05 09:27:16 -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
Valentin Vanelslande
19ef115f50
Address comment 2018-10-05 07:22:26 -05:00
B3n30
d37a2270d6 Replace boost::optional with std::optional where possible 2018-10-05 13:51:09 +02:00
Pengfei Zhu
87e16c80ac
Merge pull request #4229 from zhaowenlan1779/open-folder
citra_qt, core: game list "Open XXX Location" improvements
2018-10-05 00:46:43 -05:00
Weiyi Wang
cdf8d80c87
Merge pull request #4300 from FearlessTobi/port-1429-1431
Port yuzu-emu/yuzu#1429 and yuzu-emu/yuzu#1431: Minor configuration changes
2018-10-04 19:38:54 -04:00
Weiyi Wang
4352c6784b
Revert "Port yuzu/#1367 from yuzu: "game_list: Handle plurals within setFilterResult() better"" 2018-10-04 12:04:49 -04:00
Lioncash
be534b9388 configure_audio: Move combo box index setting to their own functions
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.
2018-10-04 01:39:12 +02:00
Lioncash
2a612f7bd4 configure_audio: Use QString::fromStdString() for converting audio device names
This ensures that the proper codec will always be used no matter what.
It also avoids relying on ASCII conversions.
2018-10-04 01:39:12 +02:00
Lioncash
97e8354fb0 configure_audio: Add disambiguation comment for the volume percentage string
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.
2018-10-04 01:39:12 +02:00
Lioncash
00af9da245 configure_input: Make analog mapping strings translatable
These strings are user-facing, so they should be specified as
translatable with tr().
2018-10-04 01:39:12 +02: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
Weiyi Wang
fceec34945
Merge pull request #4278 from wwylele/cfg-ptm-direct-fs
cfg, ptm: access FS via backend directly
2018-10-01 18:32:43 -04:00
Pengfei Zhu
b2bfcfcbd7
Merge pull request #4140 from zhaowenlan1779/input-config
citra_qt/configuration: misc input tab improvements
2018-10-01 03:05:31 -05: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
Weiyi Wang
fbc36ff63c
Merge pull request #4257 from jroweboy/sdl-globals
Input: Remove global variables from SDL Input
2018-09-29 23:00:12 -04:00
Weiyi Wang
89a5b9b622 qt/configure_system: FS decoupled 2018-09-28 17:34:47 -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
Weiyi Wang
892ca2a94a
Merge pull request #4209 from zhaowenlan1779/play-coin
service/ptm, citra_qt: Add Play Coins setting
2018-09-27 10:09:02 -04:00
Weiyi Wang
a96f0f5167
Merge pull request #4241 from citra-valentin/port-yuzu-1367
Port yuzu/#1367 from yuzu: "game_list: Handle plurals within setFilterResult() better"
2018-09-25 23:09:40 -04:00
Weiyi Wang
f05740a5fd
Merge pull request #4224 from FearlessTobi/port-1310
Port #734 and #1310 from yuzu: Changes to Thread-related enums
2018-09-25 23:07:43 -04:00
Pengfei Zhu
d6a9b01624
Merge pull request #4183 from zhaowenlan1779/multiplayer-ui
citra_qt/multiplayer: three minor fixes
2018-09-24 13:20:32 +08:00
James Rowe
3f4a7f8f58 Input: Remove global variables from SDL Input
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
2018-09-22 14:13:50 -06: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
Valentin Vanelslande
21bdc03908
Force camera pixel format to RGB565 on Linux 2018-09-21 18:28:46 -05:00
Lioncash
03908116ae game_list: Handle plurals within setFilterResult() better
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).
2018-09-21 17:45:14 -05:00
fearlessTobi
3ee9f669c1 Address review comments 2018-09-21 16:39:10 +02:00
zhupengfei
31dc9003c5
citra_qt/configuration: Add Play Coins setting 2018-09-20 22:42:39 +08:00
James Rowe
687e3e74ca
Merge pull request #3959 from zhaowenlan1779/semi-reset
service/apt: Implement soft reset & CloseApplication
2018-09-19 21:02:59 -06:00
Pengfei Zhu
dc863724ac
Merge pull request #4231 from CaptV0rt3x/port-1336
Port #1336 from yuzu
2018-09-17 22:37:40 +08:00
CaptV0rt3x
48fafaba3e Antialias game list compatibility pixmaps 2018-09-17 19:00:28 +05:30
Lioncash
ca3d9d659e kernel/thread: Include thread-related enums within the kernel namespace
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.
2018-09-15 17:16:20 +02:00
Lioncash
5dfa7b74b5 thread: Convert ThreadStatus into an enum class
Makes the thread status strongly typed, so implicit conversions can't
happen. It also makes it easier to catch mistakes at compile time.
2018-09-15 17:02:44 +02:00
Lioncash
d864d9bf03 game_list: Resolve variable shadowing within LoadCompatibilityList()
"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.
2018-09-15 15:54:20 +02:00
Lioncash
52f12e303a game_list: Use QJsonValueRef() within LoadCompatibilityList()
This way, we aren't constructing unnecessary QJsonValue instances.
2018-09-15 15:53:36 +02:00
zhupengfei
9bd8edb3b6
citra_qt: add Camera tab to "System" category 2018-09-15 14:19:45 +08:00
Weiyi Wang
6767f4562b
Merge pull request #4187 from spycrab/qt_config_sidebar
Qt/Configure: Use sidebar to divide tabs into smaller groups
2018-09-14 16:45:45 -04:00
Weiyi Wang
77c1f647cb web_service: stop using std::future + callback style async 2018-09-13 16:14:34 -04:00
Weiyi Wang
0a4d338ffa
Merge pull request #4138 from FearlessTobi/change-web-links
web_service: Unify links for web service endpoints
2018-09-12 16:31:59 -04:00
fearlessTobi
b82bf1ccdb Change variable name to web_api_url 2018-09-12 19:07:06 +02:00
Valentin Vanelslande
093987eaa7
Fix #4203 2018-09-11 22:45:12 -05:00
spycrab
d63a63cff0 Qt/Configure: Use sidebar to divide tabs into smaller groups 2018-09-11 16:02:39 +02:00
Ben
17978cf758
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
2018-09-08 19:01:30 +02:00
zhupengfei
a3625b544f
citra_qt/configuration: misc input tab improvements
* 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)
2018-09-08 11:26:10 +08: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
zhupengfei
cdd3bd72e5
citra_qt/multiplayer: three minor fixes
* Fix the issue that icons for owned games do not appear

* Fix the issue where you would double click on a room and connect to another

* Fix the issue that room name and nickname does not have size limitation
2018-09-05 22:46:33 +08:00
fearlessTobi
0d6b1d161b web_service: Unify links for web service endpoints 2018-09-05 03:07:03 +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
05118a2326
Merge pull request #4130 from FearlessTobi/port-942
Port #942 from yuzu: "qt: Minor cleanup-related changes"
2018-08-26 12:22:34 -06: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
50270fd791
Merge pull request #4059 from zhaowenlan1779/udp-input-ui
citra_qt: add motion/touch config
2018-08-26 11:56:50 -06:00
Ben
b20607dfc6 Add system time configuration (#4043)
* Add setting to switch between a fixed start time and the system time

Add clock settings to SDL

Make clock configureable in qt

Add a SharedPage handler class

Init shared_page_handler for tests
2018-08-26 11:47:45 -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
Merry
9b9227089b
Merge pull request #4121 from FearlessTobi/port-894
Port #894 from yuzu: "kernel: Move object class to its own source files"
2018-08-26 00:02:33 +01: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
Merry
b49d042200
Merge pull request #4101 from Hedges/GDBClean
GDB Modernization
2018-08-25 13:58:38 +01:00
fearlessTobi
4bf76833b8 Clean up aboutdialog.h 2018-08-25 14:45:50 +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
Merry
ed79288e41
Merge pull request #4124 from FearlessTobi/port-907
Port #907 from yuzu: "yuzu: Use Qt 5 signal/slots where applicable"
2018-08-24 19:00:10 +01:00
Merry
702ca755b3
Merge pull request #4131 from FearlessTobi/port-943
Port #943 from yuzu: "game_list: Join declarations and assignments in onTextChanged()"
2018-08-24 18:54:31 +01:00
zhaowenlan1779
642f0bd62b Port "kernel/event: Make data members private" from yuzu (#4077)
* kernel/event: Make data members private

Instead we can simply provide accessors to the required data instead of
giving external read/write access to the variables directly.

* fix compile error
2018-08-24 19:43:28 +02:00
fearlessTobi
c8b1edac63 Port #943 from yuzu: "game_list: Join declarations and assignments in onTextChanged()" 2018-08-24 17:28:00 +02:00
fearlessTobi
1f0cbf43d6 Port #942 from yuzu: "qt: Minor cleanup-related changes" 2018-08-24 17:14:09 +02:00
Lioncash
79434d3d4c citra-qt: Use Qt 5 signal/slots where applicable
Makes the signal/slot connections type-safe instead of string-based.
2018-08-23 18:34:25 +02:00
Lioncash
63c7b44ba8 kernel: Move object class to its own source files
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.
2018-08-23 17:31:59 +02:00
James Rowe
b3ca900ba7 Revert "Set DiscordRPC OFF by default (#4109)"
This reverts commit 516be14a6b.
2018-08-20 10:34:58 -06:00
Vamsi Krishna
516be14a6b Set DiscordRPC OFF by default (#4109) 2018-08-20 16:19:12 +02: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
Jarek Syrylak
bd658a8801 GDB Modernization:
- Can be used in either DynCom or Dynarmic mode
- Added support for threads
- Proper support for FPU registers
- Fix for NibbleToHex conversion that used to produce false error codes
- Fix for clang-format failing under Windows
2018-08-16 10:40:52 +01:00
zhaowenlan1779
5c5aad09ce qt_themes: add two colorful themes (#4004)
* qt_themes: add two colorful themes

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 https://icons8.com and they have been slightly revised by me. I'm pretty sure I was licensed to use them for Citra.

* Add license for icons
2018-08-16 10:39:23 +02:00
James Rowe
20cb8f66db
Merge pull request #4099 from zhaowenlan1779/lle-service-modules-fixup
citra_qt: set object name for LLEServiceModulesWidget
2018-08-14 10:48:03 -06:00
zhaowenlan1779
e837717592
citra_qt: set object name for LLEServiceModulesWidget
Gets rid of a qt error that occurs when Citra is closed.
2018-08-14 20:28:47 +08: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
zhupengfei
8db6822ee9
citra_qt: add motion/touch config 2018-08-11 14:16:44 +08:00
zhupengfei
e1ae14d508
input_common/udp: allow changing pad index 2018-08-11 13:23:10 +08: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
dceb4150a8
Merge pull request #4065 from zhaowenlan1779/port-yuzu-947
game_list: Use QString::fromStdString() where applicable instead of c_str()
2018-08-09 09:41:35 -06: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
b71fbe62a8
game_list: Use QString::fromStdString() where applicable instead of c_str() 2018-08-08 16:43:59 +08:00
James Rowe
93386efccb
Merge pull request #4056 from zhaowenlan1779/clear-recent-files
citra_qt: add Clear Recent Files menu action
2018-08-07 21:28:33 -06:00
James Rowe
6bcbda5ab2 Input: UDP Client to provide motion and touch controls
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.
2018-08-07 21:05:09 -06: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
Weiyi Wang
5bc72cca6b
Merge pull request #3924 from zhaowenlan1779/settings
citra_qt: Settings (configuration) default value fix
2018-08-03 23:09:57 +03:00
zhupengfei
650c20eebf
citra_qt: Settings (configuration) rework 2018-08-03 13:49:30 +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
James Rowe
6bc87cdf3e
Merge pull request #3987 from zhaowenlan1779/language-config-fix-2
citra_qt/configuration: retranslate hotkey widget on language change
2018-08-02 11:15:27 -06:00
James Rowe
14b0435df2
Merge pull request #3994 from FearlessTobi/replace-clamp-functions
Remove MathUtil::Clamp and replace it with its std:: counterpart
2018-08-02 11:08:07 -06:00
James Rowe
cafe9838b5
Merge pull request #4047 from zhaowenlan1779/bg-color
citra_qt/configuration: Add background color config
2018-08-02 11:05:20 -06:00
Weiyi Wang
27b015e652
Merge pull request #4011 from zhaowenlan1779/cmake-warning
citra_qt/CMakeLists: get rid of a warning
2018-08-02 11:16:46 +03:00
zhupengfei
60edddac7d
citra_qt/configuration: Add background color config
This is actually very easy to do. I added a label and a push button for it, and used the Qt standard dialog QColorDialog for picking colors.
2018-08-02 11:39:27 +08:00
Merry
6a9e18a49a
Merge pull request #4022 from zhaowenlan1779/port-yuzu-837
Port yuzu-emu/yuzu#837 from yuzu
2018-08-01 15:01:17 +01:00
Merry
703da21688
Merge pull request #4046 from zhaowenlan1779/config-camera-retranslate
citra_qt/configuration: retranslate camera tab
2018-08-01 15:00:12 +01:00
zhupengfei
51d05bd42b citra_qt/configuration: retranslate camera tab
It was really a stupid mistake..
2018-08-01 21:51:38 +08:00
Lioncash
8e103d0675
kernel/timer: Make data members private where applicable
Instead, we can just expose functions that return the queryable state
instead of letting anything modify it.
2018-08-01 17:49:52 +08: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
5d7ccfb920
citra_qt/CMakeLists: get rid of a warning
This got rid of a warning of CMake Policy CMP0071 not set. In fact, setting it to either OLD or NEW is same for Citra (I tested on MSVC and MinGW), and the OLD option is deprecated, so I am using NEW here.
2018-07-30 22:32:48 +08:00
Ben
b4524eb70b
Merge pull request #3988 from zhaowenlan1779/multiplayer-block
citra_qt/multiplayer: allow blocking other players in chat room
2018-07-30 14:07:40 +02:00
Ben
d5333c37de
Merge pull request #4033 from zhaowenlan1779/port-yuzu-764
Port "file_util: Minor changes to ScanDirectoryTree() and ForeachDirectoryEntry()" from yuzu
2018-07-30 13:51:21 +02:00
Merry
45beea31ea
Merge pull request #4034 from zhaowenlan1779/port-yuzu-802
Port "wait_tree: Silence warning about all code paths not returning a value" from yuzu
2018-07-30 12:38:24 +01:00
Weiyi Wang
71729fd47a
Merge pull request #3951 from zhaowenlan1779/cfg-country-code
service/cfg, citra_qt: add country code configuration
2018-07-30 12:02:07 +03:00
Lioncash
bf5b5d25ed wait_tree: Silence warning about all code paths not returning a value
If code execution hits this spot, something has gone very wrong, so mark
the path as unreachable. This silences a warning on MSVC.
2018-07-30 16:32:09 +08:00
Lioncash
df5069f8c0 file_util: Use a u64 to represent number of entries
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.
2018-07-30 16:19:03 +08:00
Ben
07a78a6dd2
Merge pull request #3986 from zhaowenlan1779/language-config-fix
citra_qt/configuration: fix input configuration disappearing after changing languages
2018-07-29 10:35:17 +02: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
fearlessTobi
71e1d6e25d Fix compile errors 2018-07-26 13:23:25 +02:00
Weiyi Wang
7568020ea0
Merge pull request #3979 from zhaowenlan1779/filter-untranslated
game_list: move SearchField to game_list_p.h and fix untranslated text
2018-07-26 12:26:39 +03:00
Weiyi Wang
4b6d240641
Merge pull request #3983 from zhaowenlan1779/gamelist-translation
game_list: fix untranslated texts
2018-07-26 12:26:12 +03:00
James Rowe
4a3c4f5f67
Merge pull request #3989 from zhaowenlan1779/statusbar-retranslate
citra_qt: retranslate status bar
2018-07-25 10:19:11 -06:00
fearlessTobi
7a3e126a4f Replace MathUtil::Clamp with its std counterpart 2018-07-24 19:08:17 +02: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
921037a7c3
citra_qt/multiplayer: allow blocking other players in chat room 2018-07-24 15:24:21 +08:00
zhupengfei
2cf7576351
citra_qt/configuration: retranslate hotkey widget on language change
The hotkey widget has a separate class defined for it, and qt cannot automatically retranslate it when retranslateUi is called. This commit explicitly calls the function to retranslate the hotkey dialog.
2018-07-24 12:32:09 +08:00
zhupengfei
79a38f8782 citra_qt/configuration: fix input configuration disappearing after changing languages
Previously, once you change language, the texts in the buttons in the Input tab will disappear. It is because the default text in the buttons are empty, and we did not update the text after translations are reloaded, aka texts are reset. This commit fixed the issue.
2018-07-24 12:19:47 +08:00
zhupengfei
f70dc9198c
game_list: fix untranslated texts
Due to a bug of Qt Linguist, the spliters in numbers cannot be parsed correctly and will cause strange issues. As far as I know, this caused 4 texts to be untranslated (translation source for them are not generated). Before the Qt bug is fixed (and we move to that version), I think we can temporarily remove the spliters from the numbers.
2018-07-23 23:44:43 +08:00
zhupengfei
11da018ea6
game_list: move SearchField to game_list_p.h and fix untranslated text
I have tested and made sure the text is translatable, but this would require a translation update to take effect.
2018-07-23 21:26:55 +08:00
adityaruplaha
38d4b41b0a citra_qt: Move CPU JIT toggle to Debug tab. 2018-07-21 12:43:24 +05:30
Weiyi Wang
c8c5b55c00
Merge pull request #3957 from lioncash/qt
game_list: Remove unnecessary QString initialization in KeyReleaseEater
2018-07-19 10:14:58 +03:00
zhupengfei
e8ac58c480
settings: move log code to settings 2018-07-19 08:38:57 +08:00
Lioncash
6614450da3 game_list: Make containsAllWords() a non-member function
This doesn't depend on class state at all, so this can be made internal.
While we're at it, amend the function to take its arguments by const reference.
2018-07-18 16:55:13 -04:00
Lioncash
033e889645 game_list: Remove unnecessary QString initialization in KeyReleaseEater
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.
2018-07-18 16:44:21 -04:00
James Rowe
7fa2076918
Merge pull request #3946 from zhaowenlan1779/macos-no-hw-shader
citra_qt: disable hw shader by default for macos
2018-07-18 10:07:12 -06:00
James Rowe
bc30b314d8
Merge pull request #3947 from zhaowenlan1779/autofill-multiplayer
citra_qt: use Citra Web Service username as default multiplayer nickname
2018-07-18 10:02:14 -06:00
James Rowe
2f8c9c8126
Merge pull request #3831 from FearlessTobi/add-volume-slider
citra_qt: Add a volume slider
2018-07-18 09:56:47 -06:00
zhupengfei
e61b7d265f
service/cfg, citra_qt: add country code configuration 2018-07-18 20:09:34 +08:00
zhupengfei
bcbfac4081
configure_system: fix an untranslated text 2018-07-18 14:50:38 +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
40aea8d6b8
citra_qt: use Citra Web Service username as default multiplayer nickname 2018-07-17 15:25:00 +08:00
zhupengfei
a398bceb93
citra_qt: disable hw shader by default for macos
Also show an warning when turning it on.
2018-07-17 10:07:02 +08:00
Merry
47d283a1e4
Merge pull request #3909 from MerryMage/rm-SetDevice
sink_details: Tidy-up device listing code
2018-07-12 20:49:29 +01:00
MerryMage
7d642b25e9 sink: Make auto device name a constant 2018-07-12 15:56:37 +01:00
zhupengfei
dcaf4a8e83
citra_qt: Add length validation 2018-07-10 13:05:13 +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
c1580c406d
Merge pull request #3899 from wwylele/no-double-log
citra_qt: only toggle console if the setting has been changed
2018-07-07 18:47:35 +03:00
fearlessTobi
6eb7ee99cd Address last review comment 2018-07-03 21:14:00 +02:00
Weiyi Wang
fd5f71bcff
Merge pull request #3912 from BreadFish64/fix-conversion-warnings
fix conversion warnings
2018-07-03 21:14:01 +03:00
fearlessTobi
a780f3821e citra_qt: Add a volume slider 2018-07-03 17:26:50 +02: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
Weiyi Wang
a9f8887c93
remove trailing space 2018-07-02 19:47:41 +03:00
Weiyi Wang
4be2f12914
log/console: no need to test first call
Just let `console_shown` be initialized to the default status (console isn't shown on startup)
2018-07-02 19:39:13 +03:00
MerryMage
d269beab0d sink_details: Listing available devices should be separate from sink construction 2018-07-02 14:09:17 +01:00
Valentin Vanelslande
77b338e928
citra_qt: Remove return 2018-06-30 21:50:30 -05:00
Valentin Vanelslande
5a60c85f58
citra_qt: add Restart to UI 2018-06-30 12:34:09 -05:00
Valentin Vanelslande
6380d52d1c
citra_qt: add Restart hotkey & menu action code 2018-06-30 12:30:56 -05:00
wwylele
810b86f451 citra_qt: only toggle console if the setting has been changed 2018-06-30 13:07:30 +03: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
zhupengfei
0bd843f324
citra_qt: Fix image file selection dialog 2018-06-28 22:35:12 +08: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
e27bb6394d
Merge pull request #3837 from zhaowenlan1779/aboutdialog-builddate
citra-qt: Add build date in about dialog
2018-06-19 11:57:40 -06:00
zhupengfei
6c4f3257b7
citra-qt: Add build date in about dialog 2018-06-18 21:21:00 +08:00
James Rowe
574824a26c
Merge pull request #3632 from N00byKing/3dtv_botenable
Add Support for Stereoscopic 3D
2018-06-17 21:05:15 -06: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
James Rowe
6811eda2b9
Merge pull request #3764 from zhaowenlan1779/camera-flip
camera: camera refinement
2018-06-09 14:02:50 -06:00
zhupengfei
cb52033133
game_list: fix system title display 2018-06-07 18:50:35 +08:00
zhupengfei
3c554153c7
StillImageCamera: fix multiple prompt 2018-06-07 14:57:07 +08:00
zhupengfei
a15e4e80c6
QtMultimediaCamera: fix invalid settings 2018-06-07 14:57:07 +08:00
zhupengfei
7c48160beb
StillImageCamera: move GetFilePath to UI thread 2018-06-07 14:57:06 +08:00
zhupengfei
341c07156a
camera: Single/Double (QtMultimediaCamera) 2018-06-07 14:57:05 +08:00
zhupengfei
6e410dcef5
camera: refactor (add qt_camera_base) 2018-06-07 14:57:04 +08:00
zhupengfei
5ebd466869
camera: Add camera flip config 2018-06-07 14:57:03 +08:00
N00byKing
e4788130e5 citra, citra_qt, settings.h: Add Options for Stereoscopic 3D 2018-06-01 17:01:00 +02:00
James Rowe
87d2866127
Merge pull request #3757 from zhaowenlan1779/game-list-fix
citra_qt: Improve Game List Item display
2018-05-31 23:10:02 -06:00
James Rowe
489d5a3da9
Merge pull request #3769 from Kloen/dark-theme-updates
citra-qt: Update Dark theme to latest version
2018-05-31 22:45:54 -06:00
Valentin Vanelslande
90bcb26c3b citra_qt: Add Continue/Pause & Toggle Speed Limit hotkeys 2018-05-28 16:36:56 -05:00
BreadFish64
30c6c37d6c fix jrowes lazy sorting 2018-05-26 15:38:06 -05:00
BreadFish64
31a9fdb00b fix preffered game 2018-05-26 15:38:06 -05:00
BreadFish64
1a57f9488f citra_qt: support multiple game directories 2018-05-26 15:38:06 -05:00
Nico Bosshard
88ebd844e5 Add search filter support for multiple game directories 2018-05-26 15:38:05 -05:00
zhupengfei
9504aa19d5
game_list: rewrite format 2018-05-26 22:27:59 +08:00
Logan B
b5934237fa
Fix build 2018-05-25 20:28:15 +12:00
zhupengfei
e5c8b9f0a2
game_list: append filename after program ID 2018-05-23 21:36:10 +08:00
Kloen
15e2be85b5 citra-qt: Change link colors to a more readable one when using the dark theme 2018-05-23 02:51:19 +02:00
zhupengfei
3b18faa163
citra_qt: Improve Game List Item display 2018-05-19 17:21:26 +08:00
Christoph
3bf924cd20 Camera translation (#3747)
* citra_qt: correct spelling in configuration

* citra_qt/camera: Changed the order of the translation

The translation may not correspond to "couln't load" and "the camera", so create two cases which can get translated individually.
Also add a space after "the camera".

* citra_qt/camera: use the same syntax for the filter in "still_image_camera.cpp" as in "configure_camera.cpp"

* citra_qt/camera: the config should only get added if it's not empty
2018-05-19 12:03:06 +03:00
James Rowe
e35c634fc6
Merge pull request #3742 from wwylele/glvtx-ui
citra-qt: add gpu shader emulation related configurations
2018-05-18 13:04:18 -06:00
James Rowe
64a8c8ee07
Merge pull request #3741 from wwylele/glvtx-last
gl_rasterizer: implement AccelerateDrawBatch to emulate PICA shader on hardware
2018-05-18 13:03:40 -06:00
wwylele
4377caf1df citra-qt: add tooltips for renderer options 2018-05-18 15:15:07 +03:00
wwylele
f1cc8cfea9 citra,citra_qt: load/save hardware shader settings 2018-05-14 10:17:35 +03:00
wwylele
1d5a26b1d8 citra-qt: add gpu shader emulation related configurations 2018-05-13 10:58:20 +03: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
James Rowe
ca01c7eea8
Merge pull request #3665 from adityaruplaha/log-version
frontend: Log Citra version.
2018-05-03 15:17:04 -06:00
James Rowe
ca3b82caa4
Merge pull request #3705 from zhaowenlan1779/multiplayer-fix
citra_qt: multiplayer password dialog fix
2018-05-02 09:17:33 -06:00
FearlessTobi
36c4765054 citra_qt: Add a game region column 2018-05-01 19:57:01 +02:00
zhupengfei
b33f7901b6
citra_qt: fix clang-format 2018-05-01 11:26:57 +08:00
zhupengfei
784c41bf34
citra_qt: multiplayer password dialog fix 2018-05-01 11:15:31 +08:00
adityaruplaha
0cece7918a Log Citra version.
Class: Frontend
Level: Info
Format: "Citra Version: " + window title
2018-04-29 21:05:19 +05:30
Weiyi Wang
9c65a45358
Merge pull request #3694 from jroweboy/quickfix
Fix duplicated logs on windows
2018-04-28 10:31:25 +03:00
James Rowe
252e5f173d
Merge pull request #3676 from jroweboy/minor-mp-ui-fix
Minor multiplayer ui fixes
2018-04-27 10:00:21 -06:00
James Rowe
98c150e7fc Fix duplicated logs on windows 2018-04-27 09:58:48 -06:00
James Rowe
1b94f25e6c
Merge pull request #3568 from daniellimws/logging-backends
Logging: Add customizable backends
2018-04-26 21:09:31 -06:00
James Rowe
65b38a7537 fixup: Address review 2018-04-25 10:31:51 -06:00
James Rowe
6ce111301f Frontend: Add missing translation for network error messages 2018-04-25 09:44:16 -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
Adityarup Laha
c06d6ecea2
Replace "Hide Full Games" with "Hide Full Rooms" 2018-04-22 16:56:49 +05:30
James Rowe
c7726f13e8 Frontend: Prevent a crash from closing a hosted room using the Disconnect button and then trying to host another room 2018-04-20 00:53:56 -06:00
James Rowe
5fef22fc52 Frontend: Prevent connecting to another room when already joining 2018-04-20 00:53:31 -06:00
James Rowe
d35693bbbc More minor issue fixes
* Move Joining state change sooner in the code to prevent an issue where
failing to connect multiple times in a row doesn't change the state (as
it goes from CouldNotConnect -> CouldNotConnect which doesn't trigger a
state changed callback)
* Prevent double clicking too fast on a room in the lobby from causing
issues
* Lobby no longer closes when joining a room
2018-04-19 10:28:19 -06:00
James Rowe
62257e0d79 Fix Lobby filtering with player list
* Make double clicking the player list open the correct room
* Fix an issue where filtering with search broke the whos playing list
2018-04-19 10:28:18 -06:00
James Rowe
1f6791431d Move almost all state change tracking to MultiplayerState
Each window can still watch for state changes to update the ui or to
close the window as appropriate, but for any error announcements, they
all belong in Multiplayer state now.
2018-04-19 10:28:18 -06:00
James Rowe
a5c8e07f46 Remove duplicated logic in HostRoom
Fixes some issues with multiple warning messages
2018-04-19 10:28:18 -06:00
James Rowe
2be02f221d Fix player list not showing in lobby. Fix host and direct connect crashing citra 2018-04-19 10:28:18 -06:00
James Rowe
01b49b7e78 Fix compilation issue where unique_ptr needs full class declaration 2018-04-19 10:28:17 -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
601fd81d5c Address review comments 2018-04-19 10:28:16 -06:00
James Rowe
3be7aa2cfc Moved the password icon to the room name.
Also added a dark mode lock icon as well (and fixed a small bug
preventing the lock icon from showing up)
2018-04-19 10:28:16 -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