-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
upgrade to official 2.1.9 release #8
Merged
Jamiras
merged 431 commits into
RetroAchievements:master
from
Jamiras:feature/vendor_2.1.9
Apr 6, 2024
Merged
upgrade to official 2.1.9 release #8
Jamiras
merged 431 commits into
RetroAchievements:master
from
Jamiras:feature/vendor_2.1.9
Apr 6, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
XAudio2 is disabled because the included header needs to be updated to be parseable by clang.
This converts the HiDPIAware into a series of helper functions, using wxWidgets native support starting with wxWidgets 3.1.4. Custom implementations are provided for Mac and Windows. In addition, this fixes a few issues with the Windows build: * Use the same defines variables in the MSVC and MinGW builds, with g++ and Clang. * Add a custom manifest for the application, indicating full DPI support and support for recent Windows versions so the application will no longer run in compatibility mode by default. * Manually spawn a console in debug builds if none is attached and always use the parent console if it is available otherwise, even in release builds. This also removes the /subsystem:console linker argument.
* Remove the custom handling for pre-3.1.4 builds on Windows since both the mingw and msvc builds now use 3.2. * Remove wxDPIChangedEvent handling, since this triggers a resize, which has the same effect. * Implement main/WinMain ourselves, rather than relying on wxWidgets macros. This allows us to initialize the console earlier in the process. * Add an explicit dependency on the manifest file to trigger a link when it is modified.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
A typo in 297d7c0 meant main had the wrong prototype on non-Windows systems, breaking the build.
Add basic build on ubuntu-latest to have at least one ci build on Linux. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Add basic macos-latest build to have one macOS runner. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Nach explained that this is the safest and best option. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
wxWidgets 3.2+ has experimental `wxGLCanvas` support for Wayland EGL, enable it for those versions. The `glXQueryExtensionsString()` method for enabling or disabling vsync does not work on Wayland currently, so it's disabled. TODO: Enable/disable vsync on Wayland EGL. Fix #1028. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Add support for `eglSwapInterval()` to enable or disable VSync on Wayland. Also add status messages for enabling or disabling VSync, for both EGL and GLX. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Destroy the DrawingPanel on vsync checkbox toggle so that it is re-created with the vsync option in effect. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
This adds a generic Observer interface to config::Option. To demonstrate its intended usage, the Display Configuration dialog and the options it controls have been updated to be entirely handled via the config::Option class. Implementations for wxValidator are used to validate the flow between the UI and the underlying Option. In turn, modifying the Option value triggers all of its observers that should then do what they need to do. Rather than explicitly calling all of the needed methods after modifying a global option value, the UI elements that need to be notified when an Option value is modified will be notified via their observers. Runtime assert checks are put in place to prevent infinite recursion if an observer attempts to modify an Option while handling the observer callback. Once all uses of Options have been updated, we should get into a state where the following will be true: * cmdevents.cpp will no longer rely on the application state. * All dialogs will have been moved to specific implementations, reducing the size of guiinit.cpp * update_opts() will no longer need to be called and will be removed. This will then make it easier to update accelerator handling to be done with config::UserInput. Bug: #745
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
When processing the `OnSize` event in the `GameArea` and calling the embedded `DrawingPanel` `OnSize` event, call `Layout()` afterwards. This seems to improve the resizing behavior of the EGL `wxGLCanvas` `DrawingPanel` on Wayland. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Write vsync enable/disable messages to debug log and not the OSD, they are kind of annoying. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Moving and resizing the window no longer updates the entire option set, reducing jank on move and resize.
Backport 800d6ed69b from wxWidgets git to fix resizing the `GLDrawingPanel` in Wayland using the EGL `wxGLCanvas`. Also rename `IsItWayland()` to `IsWayland()`. Fix #1028 Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Change dbus_libs to dbus, which is the new package name. This is for `nix-shell` to build on NixOS. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Fix regression in ea2a929, which broke x11 support by not checking for Wayland when making the Wayland EGL subsurface move call. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
* Add convenience direct accessors to individual Options. * Move BasicOptionObserver to a separate header and allow it to observer multiple options. This also removes the include for "config/option.h" for using this observer, reducing build time. * Never skip the "Plugin" option when changing filters. This is already handled properly in the GameArea class. If the plugin is unusable, GameArea resets the filter to the default value. * Make the OptionID names slightly less long and fix the inconsistent naming in the enum.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
This is no longer required since wxWidgets 3.1.0 but is needed for prior versions.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Useful for app stores like KDE's discover and gnome software Also updated to current specifications of appstream Signed-off-by: Zach Bacon <zachbacon@vba-m.com>
…tpak Signed-off-by: Zach Bacon <zachbacon@vba-m.com>
Signed-off-by: Zach Bacon <zachbacon@vba-m.com>
Add basic support for Alpine Linux to installdeps. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Check for musl libc in Patch.cpp and use fseeko()/ftello() in that case instead of fseeko64()/ftello64() as well, as the 64 variants are glibc extensions. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Remove all translations that are less than 50% done from Transifex and the repo. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Describe the requirements for commit messages in this project in detail and add a standard set of area prefixes. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Mark some strings that don't need to be translated as such to remove them from the catalog. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Fix parsing of package list from the server html, which was ignoring brotli because it was on the same line as another package. Use a different method to extract the links that does not rely on them being on separate lines. Also fix the errors from `vcpkg list` on new vcpkg clones. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
On Windows, detect the host triplet for vcpkg and prepend it to the triplet list to get the binary packages for vcpkg build dependencies correctly. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Enable the samplerate feature for the vcpkg sdl2 port to use libsamplerate for resampling. Signed-off-by: Rafael Kitover <rkitover@gmail.com>
In SoundConfig.xrc and DisplayConfig.xrc use the 'option' property to fully expand the contents. In NetLink.xrc add a label at the top of the dialog explaining that Link will likely not work over the internet or over LAN. Signed-off-by: Zach Bacon <zachbacon@vba-m.com> Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Always use `av_wrte_trailer()` even for audio recordings, because an invalid wav file was generated otherwise.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Because of reported framerate issues with the SDL sound driver, remove it and make XAudio2 the default on Windows and OpenAL the default everywhere else. Rewrite the "sdl" value from users' configs to the new default. Make OpenAL a mandatory dependency as well. Fix #709 Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
update to upstream 2.1.9 release