summaryrefslogtreecommitdiff
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* ncm: Implement LR OpenLocationResolver (0)Gravatar Zach Hilman2019-05-261-0/+50
| | | Returns an object of type ILocationResolver with the provided StorageId.
* Merge pull request #2516 from lioncash/labelGravatar bunnei2019-05-252-10/+10
|\ | | | | renderer_opengl/utils: Use a std::string_view with LabelGLObject()
| * renderer_opengl/utils: Use a std::string_view with LabelGLObject()Gravatar Lioncash2019-05-242-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | Uses a std::string_view instead of a std::string, given the pointed to string isn't modified and is only used in a formatting operation. This is nice because a few usages directly supply a string literal to the function, allowing these usages to otherwise not heap allocate, unlike the std::string overloads. While we're at it, we can combine the address formatting into a single formatting call.
* | Merge pull request #2509 from lioncash/aocGravatar bunnei2019-05-251-19/+50
|\ \ | | | | | | service/aoc_u: Minor cleanup
| * | service/aoc: Avoid allocating and discarding dataGravatar Lioncash2019-05-231-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the code was accumulating data into a std::vector and then tossing all of it away if a setting was disabled. Instead, we can just check if it's disabled and do no work at all if possible. If it's enabled, then we can append to the vector and allocate. Unlikely to impact usage much, but it is slightly less sloppy with resources.
| * | service/aoc: Remove unnecessary includesGravatar Lioncash2019-05-221-2/+0
| | | | | | | | | | | | | | | Removes two header dependencies related to file handling that aren't actually used within the source file.
| * | service/aoc: Pop all passed values where applicableGravatar Lioncash2019-05-221-12/+45
| | | | | | | | | | | | | | | | | | A few of the aoc service stubs/implementations weren't fully popping all of the parameters passed to them. This ensures that all parameters are popped and, at minimum, logged out.
* | | Merge pull request #2511 from lioncash/file-strGravatar bunnei2019-05-253-45/+23
|\ \ \ | | | | | | | | common/file_util: Minor cleanup
| * | | common/file_util: Remove unnecessary return at end of void StripTailDirSlashes()Gravatar Lioncash2019-05-231-6/+8
| | | | | | | | | | | | | | | | While we're at it, also invert the conditional into a guard clause.
| * | | common/file_util: Make GetCurrentDir() return a std::optionalGravatar Lioncash2019-05-232-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | nullptr was being returned in the error case, which, at a glance may seem perfectly OK... until you realize that std::string has the invariant that it may not be constructed from a null pointer. This means that if this error case was ever hit, then the application would most likely crash from a thrown exception in std::string's constructor. Instead, we can change the function to return an optional value, indicating if a failure occurred.
| * | | common/file_util: Remove duplicated documentation commentsGravatar Lioncash2019-05-231-25/+0
| | | | | | | | | | | | | | | | | | | | These are already present within the header, so they don't need to be repeated in the cpp file.
| * | | common/file_util: Make ReadFileToString and WriteStringToFile consistentGravatar Lioncash2019-05-233-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makes the parameter ordering consistent, and also makes the filename parameter a std::string. A std::string would be constructed anyways with the previous code, as IOFile's only constructor with a filepath is one taking a std::string. We can also make WriteStringToFile's string parameter utilize a std::string_view for the string, making use of our previous changes to IOFile.
| * | | common/file_util: Remove unnecessary c_str() callsGravatar Lioncash2019-05-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The file stream open functions have supported std::string overloads since C++11, so we don't need to use c_str() here. Same behavior, less code.
| * | | common/file_util: Make IOFile's WriteString take a std::string_viewGravatar Lioncash2019-05-231-2/+2
| |/ / | | | | | | | | | | | | | | | We don't need to force the usage of a std::string here, and can instead use a std::string_view, which allows writing out other forms of strings (e.g. C-style strings) without any unnecessary heap allocations.
* | | configure_hotkeys: Remove unnecessary Settings::Apply() callGravatar Lioncash2019-05-251-1/+0
| | | | | | | | | | | | | | | Nothing from the hotkeys dialog relies on this call occurring, and is already called from the dialog that calls applyConfiguration().
* | | configure_hotkeys: Tidy up key sequence conflict error stringGravatar Lioncash2019-05-251-2/+2
| | | | | | | | | | | | Avoids mentioning the user and formalizes the error itself.
* | | configure_hotkeys: Change critical error dialog into a warning dialogGravatar Lioncash2019-05-251-2/+2
| | | | | | | | | | | | | | | | | | critical() is intended for critical/fatal errors that threaten the overall stability of an application. A user entering a conflicting key sequence is neither of those.
* | | configure_hotkeys: Move conflict detection logic to IsUsedKey()Gravatar Lioncash2019-05-252-14/+15
| | | | | | | | | | | | | | | | | | We don't need to extract the entire set of hotkeys into a list and then iterate through it. We can traverse the list and early-exit if we're able to.
* | | configure_hotkeys: Remove unused EmitHotkeysChanged()Gravatar Lioncash2019-05-253-13/+0
| | | | | | | | | | | | | | | | | | | | | 1. This is something that should be solely emitted by the hotkey dialog itself 2. This is functionally unused, given there's nothing listening for the signal.
* | | sequence_dialog: Reorganize the constructorGravatar Lioncash2019-05-251-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | The previous code was all "smushed" together wasn't really grouped together that well. This spaces things out and separates them by relation to one another, making it easier to visually parse the individual sections of code that make up the constructor.
* | | sequence_dialog: Remove unnecessary horizontal specifierGravatar Lioncash2019-05-251-2/+1
| |/ |/| | | | | QDialogButtonBoxes are horizontal by default.
* | Merge pull request #2513 from lioncash/stringGravatar bunnei2019-05-245-126/+168
|\ \ | | | | | | yuzu/main: Specify string conversions explicitly
| * | yuzu/CMakeLists: Disable implicit QString conversionsGravatar Lioncash2019-05-241-0/+4
| | | | | | | | | | | | | | | Now that all of our code is compilable with implicit QString conversions, we can enforce it at compile-time by disabling them.
| * | yuzu/applets/software_keyboard: Remove unused assert headerGravatar Lioncash2019-05-241-1/+0
| | | | | | | | | | | | This isn't actually used anywhere, so it can be removed.
| * | yuzu/applets/software_keyboard: std::move argument in MainWindowFinishedText()Gravatar Lioncash2019-05-241-1/+1
| | | | | | | | | | | | | | | | | | Given the std::optional can contain an object type that heap allocates, we can use std::move to avoid an unnecessary copy/allocation from occurring.
| * | yuzu/applets/software_keyboard: Resolve sign mismatch comparisonGravatar Lioncash2019-05-241-1/+1
| | | | | | | | | | | | | | | Qt uses a signed value to represent container sizes, so this was causing a sign mismatch warning.
| * | yuzu/applets/software_keyboard: Specify string conversions explicitlyGravatar Lioncash2019-05-242-10/+18
| | | | | | | | | | | | | | | Allows the software keyboard applet code to compile with implicit string conversions disabled.
| * | yuzu/applets/error: Specify string conversions explicitlyGravatar Lioncash2019-05-241-2/+3
| | | | | | | | | | | | | | | Allows the error applet to build successfully with implicit string conversions disabled.
| * | yuzu/main: Specify string conversions where applicableGravatar Lioncash2019-05-241-115/+145
| | |
* | | Merge pull request #2358 from ReinUsesLisp/parallel-shaderGravatar bunnei2019-05-249-62/+122
|\ \ \ | |/ / |/| | gl_shader_cache: Use shared contexts to build shaders in parallel at boot
| * | gl_shader_cache: Fix clang strict standard build issuesGravatar ReinUsesLisp2019-05-203-9/+13
| | |
| * | gl_shader_cache: Use shared contexts to build shaders in parallelGravatar ReinUsesLisp2019-05-207-56/+112
| | |
* | | Merge pull request #2485 from ReinUsesLisp/generic-memoryGravatar bunnei2019-05-243-35/+73
|\ \ \ | | | | | | | | shader/memory: Implement generic memory stores and loads (ST and LD)
| * | | shader/memory: Implement ST (generic memory)Gravatar ReinUsesLisp2019-05-202-21/+36
| | | |
| * | | shader/memory: Implement LD (generic memory)Gravatar ReinUsesLisp2019-05-203-15/+38
| |/ /
* | | Merge pull request #2504 from lioncash/configGravatar bunnei2019-05-242-33/+43
|\ \ \ | | | | | | | | yuzu/configuration/config: Specify string conversions explicitly
| * | | yuzu/configuration/config: Make default hotkeys an internally-linked array ↵Gravatar Lioncash2019-05-202-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in the cpp file Given the array is a private static array, we can just make it internally linked to hide it from external code. This also allows us to remove an inclusion within the header.
| * | | yuzu/configuration/config: Specify string conversions explicitlyGravatar Lioncash2019-05-201-30/+42
| |/ / | | | | | | | | | | | | Allows the configuration code to build successfully with implicit string conversions disabled.
* | | Merge pull request #2489 from FearlessTobi/port-4716Gravatar bunnei2019-05-244-9/+10
|\ \ \ | | | | | | | | Port citra-emu/citra#4716: "HLE/IPC: HLEContext can memorize the client thread and use it for SleepClientThread"
| * | | Address review commentGravatar Tobias2019-05-191-1/+1
| | | | | | | | | | | | Co-Authored-By: Mat M. <mathew1800@gmail.com>
| * | | HLE/IPC: HLEContext can memorize the client thread and use it for ↵Gravatar Weiyi Wang2019-05-184-9/+10
| | | | | | | | | | | | | | | | | | | | | | | | SleepClientThread This reduces the boilerplate that services have to write out the current thread explicitly. Using current thread instead of client thread is also semantically incorrect, and will be a problem when we implement multicore (at which time there will be multiple current threads)
* | | | shader/shader_ir: Make Comment() take a std::string by valueGravatar Lioncash2019-05-232-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows for forming comment nodes without making unnecessary copies of the std::string instance. e.g. previously: Comment(fmt::format("Base address is c[0x{:x}][0x{:x}]", cbuf->GetIndex(), cbuf_offset)); Would result in a copy of the string being created, as CommentNode() takes a std::string by value (a const ref passed to a value parameter results in a copy). Now, only one instance of the string is ever moved around. (fmt::format returns a std::string, and since it's returned from a function by value, this is a prvalue (which can be treated like an rvalue), so it's moved into Comment's string parameter), we then move it into the CommentNode constructor, which then moves the string into its member variable).
* | | | shader/decode/*: Add missing newline to files lacking themGravatar Lioncash2019-05-2318-18/+18
| | | | | | | | | | | | | | | | Keeps the shader code file endings consistent.
* | | | shader/decode/*: Eliminate indirect inclusionsGravatar Lioncash2019-05-236-1/+5
| |_|/ |/| | | | | | | | | | | | | | | | | Amends cases where we were using things that were indirectly being satisfied through other headers. This way, if those headers change and eliminate dependencies on other headers in the future, we don't have cascading compilation errors.
* | | shader/decode/memory: Remove left in debug pragmaGravatar Lioncash2019-05-221-2/+0
| | |
* | | renderer_opengl/gl_shader_decompiler: Remove redundant name specification in ↵Gravatar Lioncash2019-05-211-1/+1
| |/ |/| | | | | | | | | format string This accidentally slipped through a rebase.
* | Merge pull request #2455 from lioncash/configGravatar bunnei2019-05-202-315/+573
|\ \ | | | | | | configuration/config: Move config loading and saving to functions based off groups
| * | configuration/config: Move config loading and saving to functions based off ↵Gravatar Lioncash2019-05-092-315/+573
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | groups Over time our config values have grown quite numerous in size. Unfortunately it also makes the single functions we have for loading and saving values more error prone. For example, we were loading the core settings twice when they only should have been loaded once. In another section, a variable was shadowing another variable used to load settings from a completely different section. Finally, in one other case, there was an extraneous endGroup() call used that didn't need to be done. This was essentially dead code and also a bug waiting to happen. This separates the section loading code into its own separate functions. This keeps variables only visible to the code that actually needs it, and makes it much easier to visually see the end of each individual configuration group. It also makes it much easier to visually catch bugs during code review. While we're at it, this also uses QStringLiteral instead of raw string literals, which both avoids constructing a lot of QString instances, but also makes it much easier to disable implicit ASCII to QString and vice-versa in the future via setting QT_NO_CAST_FROM_ASCII and QT_NO_CAST_TO_ASCII as compilation flags.
* | | Merge pull request #2503 from lioncash/utilGravatar bunnei2019-05-207-84/+92
|\ \ \ | | | | | | | | yuzu/game_list: Specify string conversions explicitly
| * | | yuzu/game_list: Specify string conversions explicitlyGravatar Lioncash2019-05-202-50/+55
| | | | | | | | | | | | | | | | | | | | Allows the game list code to compile successfully with implicit string conversions disabled.