The DisplayConfig dialog had a few issues:
* The OK/Cancel buttons were not working as expected. The configuration
options would be immediately written whenever some control values were
changed. The configuration options are now properly being set on a
click to OK, and ignored on a click to Cancel.
* The X button works again.
* There is now proper validation for the Display Scale option,
validation ensures that the value is in the right range and incorrect
data can no longer be input in that field.
* The Direct3D option is now properly enabled on Direct3D builds.
* Clean-up ConfigManager options
Many of the options in ConfigManager were not actually used.
* Some options are only used by wx, they have been moved to gopts. In
addition, the type of the option has been changed to "bool" when
applicable.
* Some options are only used by SDL and do not have a corresponding
configuration option, they have been moved to the SDL implementation.
* Some options are not used at all, they have been removed.
Fix rvalue variable declarations in be1e5ca1, the && associates with the
variable, not the type.
This has no effect on functionality.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Move ru.po to ru_RU.po because it is the more complete translation, and
the latter is checked first.
Fix#1057
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
When executing the EGL subsurface move backport fix, check for loaded
library version < 3.2.2 so as not to execute an unnecessary EGL
subsurface move operation on versions which will already have the fix.
References #1028
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
A regression from #1008 was identified as the root cause for #1050 and
fixed in #1051. This is a follow-up that changes the constants used
for `sineTable` to be unsigned hex, which fixes warnings in MSVC
without breaking changes.
Bug: #1003
Enable severe warnings for MSVC release builds with /W1.
Disable macro redefinition warnings explicitly with /wd4005.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Silence output of nuget commands used to get gettext tools for the
Windows build.
Remove Objective-C++ source files (.mm extension) from the list of all
sources passed to xgettext to silence the warning about the file type
being unrecognized. These do not have any strings that need to be
translated.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
It seems the GitHub Actions macOS image has a conflicting python in
/usr/local, invoke:
brew -v install python
brew link --overwrite python
, before installing dependencies.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Adjust cmake code to support building a Windows arm64 binary on a
Windows x86/x64 host.
Add /EHsc to MSVC compiler flags for exception unwind support.
Check VCPKG_TARGET_TRIPLET in Architecture.cmake to set the appropriate
cmake variables for cross-compiling for arm64.
Add MSVC_x86_Host_Compile.cmake script, used from HostCompile.cmake, to
adjust the path of the cl.exe compiler and ENV{LIB} to build a C program
for x86 when cross-compiling, necessary for the bin2c utility.
Use wxrc from dependencies submodule when cross-compiling, because the
cross wxrc executable cannot be run on the host.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
This reverts commit 1ac7ac999b.
The %% sequence turned out to not be dealt with specially by gettext
tools.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Check for the condition where the windowing system has wayland support
but not wayland EGL support for wxGLCanvas in wx, in which case the
Simple renderer must be forced.
This is currently how the wx packages are built on Fedora.
Refer #1028
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Disable the EGL subsurface move backport for Wayland GLCanvas if the wx
config sets wxUSE_GLCANVAS_EGL=0 (off.)
This fixes the build failure on Fedora. To fix the functionality,
however, they need to enable the EGL GLCanvas in their wx builds.
Also use a different hack to access the private wxGLCanvasEGL member
using template instantiation instead of redefining a keyword as a macro.
Refer #1028
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
For Fedora ./installdeps support, install either wxGTK-devel or
wxGTK3-devel, depending on which has a higher version.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Disable the Sparkle online updater for the mac build because it requires
10.13 and we currently only build for 10.7.
Once I add a newer macOS build, I will reenable it for that build.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Add a few translation markers for strings that are translated in the
wxWidgets catalogs, which we do not pull yet.
Also change the string "% of normal:" to "percent of normal:" because
the percent sign was causing an error in poedit.
Fix#1029.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
On Windows, StrawberryPerl tools and libraries exposed in the PATH
environment variable can pollute and break the build, remove any such
entries for WIN32 as a startup cmake action.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
The MSVC linker can now apparently link MinGW .a static libs too, and
StrawberryPerl pollutes the build with its own.
Set CMAKE_FIND_LIBRARY_SUFFIXES to .lib only when MSVC is true for
static builds.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Sometimes vcpkg calls the SDL2 library SDL2-static for static toolchains
and sometimes it doesn't, change FindSDL2.cmake to search some possible
library names in order of priority.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>