summaryrefslogtreecommitdiff
path: root/platform/windows
AgeCommit message (Collapse)Author
2020-01-16MinGW: Avoid GCC -Wcast-function-type warnings on GetProcAddressRémi Verschelde
Using the same method as GNUlib and various other projects. https://lists.gnu.org/archive/html/bug-gnulib/2018-08/msg00109.html The warning is valid, but there's no way around it since the issue comes from the Windows SDK. It's also harmless in this case. Part of #29801.
2020-01-15Fix Vsync Via Compositor causing halved refresh rate when vsync is forced by ↵hoontee
the graphics driver Add check to prevent compositor sync if the graphics driver is forcing vsync. Fixes #35038. (Addendum: this PR does not negatively impact users unaffected by #35038.)
2020-01-06PCK: Set VERSION_PATCH in header, factor out header magicJoost Heitbrink
Unify pack file version and magic to avoid hardcoded literals. `version.py` now always includes `patch` even for the first release in a new stable branch (e.g. 3.2). The public name stays without the patch number, but `Engine.get_version_info()` already included `patch == 0`, and we can remove some extra handling of undefined `VERSION_PATCH` this way. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2020-01-06Merge pull request #33967 from Calinou/add-os-is-window-focusedRémi Verschelde
Add an `OS.is_window_focused()` getter
2020-01-01Update copyright statements to 2020Rémi Verschelde
Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
2019-12-11SCons: Add 'split_libmodules' option to workaround linker issueRémi Verschelde
The new 'split_libmodules=yes' option is useful to work around linker command line size limitations when linking a huge number of objects. We're currently over 64k chars when linking libmodules.a on Windows with MinGW, which triggers issues as seen in #30892. Even on Linux, we can also reach linker command line size limitations by adding more custom modules. We force this option to True for MinGW on Windows, which fixes #30892. Additional changes to lib splitting: - Fix linking of the split module libs with interdependent symbols, hacking our way into LINKCOM and SHLINKCOM to set the `--start-group` and `--end-group` flags. - Fix Python 3 compatibility in `methods.split_lib()`. - Drop seemingly obsolete condition for 'msys' on 'posix'. - Drop the unnecessary 'split_drivers' as the drivers lib is no longer too big since we moved all thirdparty builds to modules. Co-authored-by: Hein-Pieter van Braam-Stewart <hp@tmm.cx>
2019-12-04Added support for vertical syncing via the Windows OS compositor (DWM.)TerminalJack
2019-12-03Don't stop export if rcedit path is invalidTomasz Chabora
2019-12-01iOS modular build and export implementation.bruvzg
2019-11-28Add an `OS.is_window_focused()` getterHugo Locurcio
This makes it possible to know whether the window is focused at a given time, without having to track the focus state manually using `NOTIFICATION_WM_FOCUS_IN` and `NOTIFICATION_WM_FOCUS_OUT`. This partially addresses #33928.
2019-11-09Set ShellExecuteW's verb to NULL - fixes #33388piratesephiroth
from https://docs.microsoft.com/en-us/windows/win32/api/shellapi/nf-shellapi-shellexecutew >the default verb is used, if available. If not, the "open" verb is used. If neither verb is available, the system uses the first verb listed in the registry. so "open" is redundant at best
2019-11-07Fix graphic tablet input coordinates on Windows.bruvzg
2019-10-30[macOS, Windows, X11] Add graphic tablet pen pressure and tilt support to ↵bruvzg
InputEventMouseMotion event.
2019-10-29Update natvis file to display Node class correctly in Visual Studio debuggerPouleyKetchoupp
2019-10-27Fix invalid window border when toggled from fullscreen to windowed modeYuri Roubinsky
2019-10-26Allow use of relative and speed properties for InputEventScreenDrag on WIndowsJoe Sweeney
2019-10-25Specify MINGW_HAS_SECURE_API=1Yeongho Kim
2019-10-24Fix compilation warnings in macOS build, enable `warnings=extra werror=yes` ↵bruvzg
for macOS CI.
2019-10-22Add "llvm/thinlto" options to MinGW build.bruvzg
2019-10-04Add code signing support for Windows exports (using "signtool" on Windows ↵bruvzg
and "osslsigncode" on the other platforms)
2019-10-03Properly revert cursor when using set_custom_mouse_cursor with nullPouleyKetchoupp
Fixes #32486
2019-09-25Merge pull request #32051 from qarmin/some_error_explanationRémi Verschelde
Added some obvious errors explanations
2019-09-25Added some obvious errors explanationsqarmin
2019-09-19Fix misc. source comment typosluz.paz
Found using `codespell -q 3 -S ./thirdparty,*.po -L ang,ba,cas,dof,doubleclick,fave,hist,leapyear,lod,nd,numer,ois,paket,seeked,sinc,switchs,te,uint -D ~/Projects/codespell/codespell_lib/data/dictionary.txt `
2019-08-12Remove redundant author doc commentsIAmActuallyCthulhu
2019-08-09fix usage of old macro when new variant intendedRobin Hübner
2019-08-09Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in "platform", ↵Robin Hübner
"modules/gdnative", "modules/gdscript" directories.
2019-08-05Fix wrong mouse wheel position for MOUSE_MODE_CAPTURED on WindowsTan Wang Leng
WM_MOUSEWHEEL and WM_MOUSEHWHEEL report mouse coordinates relative to the screen (see lParam in [1]), rather than to the window like the rest of the mouse events. The current code already makes adjustments to take that into account. However, it only makes the adjustments if the mouse is not captured, and the coordinates are always relative to the screen regardless of whether the mouse is captured or not, so let's fix the code to always consistently apply the adjustments. This fixes #29559. [1] - https://docs.microsoft.com/en-us/windows/win32/inputdev/wm-mousewheel
2019-07-30Turn `OS.set_min/max_window_size()` warnings into errorsHugo Locurcio
Since invalid values will cause the setting to be discarded, it makes more sense to display an error message instead of a warning message.
2019-07-29Fix strict-aliasing warning in OS_Windows::get_unix_time.Ibrahn Sahir
2019-07-24Fix crash caused by a9a0d0fb15cc5e028dbf8dab8b46d3dc197c4678Guilherme Felipe
2019-07-09Fix cursor blinking in integrated GPUsGuilherme Felipe
Optimization for Input::set_custom_mouse_cursor when used inside _process function. (Avoids cursor blinking in low end devices)
2019-07-05Merge pull request #24086 from RandomShaper/bundle-pck-to-executableRémi Verschelde
Enhance game export
2019-07-04Hide command prompt launched by OS.executehoontee
Currently, the console appears when running OS.execute in an exported project, but not in the editor. This change prevents it from appearing in either. Only affects console applications.
2019-07-03Add embedded PCK option to PC platformsPedro J. Estébanez
The basic point is as in 2.1 (appending the PCK into the executable), but this implementation also patches a dedicated section in the ELF/PE executable so that it matches the appended data perfectly. The usage of integer types is simplified in existing code; namely, using plain `int` for small quantities.
2019-07-03SCons: Use CPPDEFINES instead of CPPFLAGS for pre-processor definesRémi Verschelde
It's the recommended way to set those, and is more portable (automatically prepends -D for GCC/Clang and /D for MSVC). We still use CPPFLAGS for some pre-processor flags which are not defines.
2019-06-29Many fallthrough switch cases now have the FALLTHROUGH macro to tell the ↵hbina085
compiler that this is intended.
2019-06-20Add option to toggle console window on WindowsLuka Dornhecker
This is an editor setting and its value can also be toggled using an entry in the Editor toolbar. The console will still appear briefly when starting the project manager or editor, as it's still compiled as console application. Does not impact exported games, which will still run without console in release and with console in debug mode. A project setting or export option could be added to disable it in debug mode if there's demand for it, but that would greatly reduce the usefulness of debug builds if Windows users can no longer report error and crash messages. Fixes #17889. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2019-06-17Fix endless controller iterationGeorg Wacker
Fixes #29846
2019-06-17Add script to fix style issues and copyright headersRémi Verschelde
This is only meant to check the validity of the whole codebase every now and then, or to apply clang-format config changes when relevant.
2019-06-17Merge pull request #29752 from bruvzg/window_size_limitsRémi Verschelde
Add ability to limit maximum/minimum window size.
2019-06-16Merge pull request #10643 from BastiaanOlij/camera_serverRémi Verschelde
CameraServer class
2019-06-15Fix compilation warnings in JS and Windows buildsRémi Verschelde
Warnings raised by Emscripten 1.38.0 and MinGW64 5.0.4 / GCC 8.3.0. JS can now build with `werror=yes warnings=extra`. MinGW64 still has a few warnings to resolve with `warnings=extra`, and only one with `warnings=all`. Part of #29033 and #29801.
2019-06-15Adding a new Camera Server implementation to Godot.BastiaanOlij
This is a new singleton where camera sources such as webcams or cameras on a mobile phone can register themselves with the Server. Other parts of Godot can interact with this to obtain images from the camera as textures. This work includes additions to the Visual Server to use this functionality to present the camera image in the background. This is specifically targetted at AR applications.
2019-06-15Add ability to limit maximum/minimum window size.bruvzg
2019-06-12Merge pull request #29711 from zaksnet/windows-export-improvemntsRémi Verschelde
Added hint for windows export options
2019-06-12Added hint for windows export optionsZak
2019-06-12Merge pull request #29679 from akien-mga/windows-res-descRémi Verschelde
Remove "Editor" from Windows PE file description
2019-06-11Remove "Editor" from Windows PE file descriptionRémi Verschelde
Closes #29569.
2019-06-04Removes redundant "display/window/per_pixel_transparency/splash" setting, ↵bruvzg
improves per pixel transparency documentation.