summaryrefslogtreecommitdiff
path: root/platform/windows
AgeCommit message (Collapse)Author
2018-08-27Revert "Try closing gracefully before terminating process"Rémi Verschelde
2018-08-26Fall back to GLES2 if GLES3 is not workingHein-Pieter van Braam
This adds a static is_viable() method to all rasterizers which has to be called before initializing the rasterizer. This allows us to check what rasterizer to use in OS::initialize together with the GL context initialization. This commit also adds a new project setting "rendering/quality/driver/driver_fallback" which allows the creator of a project to specify whether or not fallback to GLES2 is allowed. This setting is ignored for the editor so the editor will always open even if the project itself cannot run. This will hopefully reduce confusion for users downloading projects from the internet. We also no longer crash when GLES3 is not functioning on a platform. This fixes #15324
2018-08-24Merge pull request #21375 from akien-mga/msvc-nominmaxRémi Verschelde
SCons: Disable min/max WinDef.h macros on MSVC
2018-08-24SCons: Disable min/max WinDef.h macros on MSVCRémi Verschelde
Fixes #21370.
2018-08-24Merge pull request #20712 from marcelofg55/midi_open_closeJuan Linietsky
Add OS::open_midi_inputs and OS::close_midi_inputs
2018-08-24Make some debug prints verbose-only, remove othersRémi Verschelde
2018-08-24Add print_verbose to print to stdout only in verbose modeRémi Verschelde
Equivalent of the cumbersome: if (OS::get_singleton()->is_stdout_verbose()) print_line(msg);
2018-08-22Modifications to raw input so the handling of absolute coordinates is more ↵Juan Linietsky
correct.
2018-08-22Merge pull request #20523 from moiman100/windows-raw-inputJuan Linietsky
Raw input relative motion for Windows
2018-08-21BPTC supportelasota
2018-08-21Merge pull request #21236 from dragmz/windows-graceful-closeRémi Verschelde
Try closing gracefully before terminating process
2018-08-21CI: Disable debug_symbols on Travis/AppVeyorRémi Verschelde
Also increase AppVeyor cache size to 1024, should match what is available for us in the free plan: https://www.appveyor.com/docs/build-cache/#cache-size-beta And drop obsolete debug_release option for Windows, superseded by target=release and debug_symbols=yes.
2018-08-20Try closing gracefully before terminating processMarcin Zawiejski
Use a Microsoft recommended way of process termination for the project process run from the editor. This allows loaded DLLs to receive and handle DLL_PROCESS_DETACH notification and cleanup any global state before the process actually exits.
2018-08-20Add PROPERTY_HINT_PLACEHOLDER_TEXT for String propertiesRémi Verschelde
Use it to provide a better example for application identifiers on Android, iOS and macOS, where users thought they *had* to use this as a magic token.
2018-08-19Merge pull request #21179 from elasota/vs-pdbRémi Verschelde
Support debug_symbols in VS optimized builds
2018-08-19Support debug_symbols in VS optimized buildselasota
2018-08-18Fix errors during removing files or folders and fix for latin symbolsneonsoup
This commit adds support for unicode strings in OS_Windows::move_to_trash. Also reverts commit 6188388c5a9c7f9fcc0b7f3928f176a9047b9a45 as it did not add extra null character to the path string (SHFILEOPSTRUCTA and SHFILEOPSTRUCTW require path to be double null-terminated).
2018-08-14Fix impossibility of removing folder which contains non-latin symbols(on ↵Chaosus
Windows)
2018-08-04Add OS::open_midi_inputs and OS::close_midi_inputsMarcelo Fernandez
2018-07-30Relative motion based on raw input for WindowsMikko Mustonen
2018-07-30Fix Windows handles leakMarcin Zawiejski
Fixes thread and process handles leak when running and killing project from editor (caused by a missing CloseHandle call) plus a potential leak when calling OS_Windows::execute with p_blocking and !r_pipe. The leak could be easily observed with a Handles counter in Task Manager (or Performance Monitor) for the Godot editor process.
2018-07-29Added missing support for traditional chinese on Windows, fixes #7674Juan Linietsky
2018-07-27Running builder (content generator) functions in subprocesses on WindowsViktor Ferenczi
- Refactored all builder (make_*) functions into separate Python modules along to the build tree - Introduced utility function to wrap all invocations on Windows, but does not change it elsewhere - Introduced stub to use the builders module as a stand alone script and invoke a selected function There is a problem with file handles related to writing generated content (*.gen.h and *.gen.cpp) on Windows, which randomly causes a SHARING VIOLATION error to the compiler resulting in flaky builds. Running all such content generators in a new subprocess instead of directly inside the build script works around the issue. Yes, I tried the multiprocessing module. It did not work due to conflict with SCons on cPickle. Suggested workaround did not fully work either. Using the run_in_subprocess wrapper on osx and x11 platforms as well for consistency. In case of running a cross-compilation on Windows they would still be used, but likely it will not happen in practice. What counts is that the build itself is running on which platform, not the target platform. Some generated files are written directly in an SConstruct or SCsub file, before the parallel build starts. They don't need to be written in a subprocess, apparently, so I left them as is.
2018-07-26Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam
This commit makes operator[] on Vector const and adds a write proxy to it. From now on writes to Vectors need to happen through the .write proxy. So for instance: Vector<int> vec; vec.push_back(10); std::cout << vec[0] << std::endl; vec.write[0] = 20; Failing to use the .write proxy will cause a compilation error. In addition COWable datatypes can now embed a CowData pointer to their data. This means that String, CharString, and VMap no longer use or derive from Vector. _ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug builds. This is a lot faster for Vector in the editor and while running tests. The reason why this difference used to exist is because force-inlined methods used to give a bad debugging experience. After extensive testing with modern compilers this is no longer the case.
2018-07-25Merge pull request #20154 from marcelofg55/midi_driverRémi Verschelde
Added a new MIDIDriver class
2018-07-24Merge pull request #20245 from bruvzg/fix_win_pp_transpRémi Verschelde
Fix OpenGL buffer depth for per pixel transparency support (Windows)
2018-07-21-Fix disable_3d flagJuan Linietsky
-Add extra flag optimize=[size,speed] to be able to prioritize size
2018-07-21Added a new MIDIDriver classMarcelo Fernandez
2018-07-19-Project/Editor settings now use new inspectorJuan Linietsky
-Project/Editor settings now show tooltips properly -Settings thar require restart now will show a restart warning -Video driver is now visible all the time, can be changed easily -Added function to request current video driver
2018-07-18Fix OpenGL buffer depth for per pixel transparency support (Windows, NVIDIA)bruvzg
2018-07-18Style: Format code with clang-format 6.0.1Rémi Verschelde
2018-07-09Added support for extra mouse buttons.unknown
2018-07-03-Fix fullscreen on Windows with a HiDPI monitor but a non-HiDPI projectJuan Linietsky
-Replaced some viewport size calls to screen size, since viewport size should be deprecated at this point..
2018-07-03Merge pull request #19919 from marcelofg55/notif_crashMax Hilbrunner
Add a new notification to detect crashes on native scripts
2018-07-03Merge pull request #19708 from RandomShaper/fix-windows-touchMax Hilbrunner
Fix touch issues on Windows
2018-07-02Add a new notification to detect crashes on native scriptsMarcelo Fernandez
2018-06-28Optimize images losslessly using `oxipng -o6 --strip all --zopfli`Hugo Locurcio
2018-06-26Fix touch issues on WindowsPedro J. Estébanez
2018-06-11IME context detection.Saracen
2018-06-07Tweak some help texts in the build systemHugo Locurcio
This also removes `unix_global_settings_path` from SConstruct since it is no longer used.
2018-05-30Improve return value of OS.execute in blocking/non-blocking variantsRémi Verschelde
Initialized the PID to -2, which will be the value returns in blocking- mode where the PID is not available. (-1 was already taken to signify an execution failure). OS::execute will now properly return a non-OK error code when it fails to execute the target file. The documentation was rewritten to be very clear about the differences between blocking and non-blocking mode. Fixes #19056.
2018-05-28Change position of validation in set_custom_mouse_cursorGuilherme Felipe
2018-05-28Merge pull request #19210 from guilhermefelipecgs/fix_invalid_imageMax Hilbrunner
Add validation in set_custom_mouse_cursor
2018-05-27Add validation in set_custom_mouse_cursorGuilherme Felipe
Check if the image is valid.
2018-05-26Fix memory leak in set_custom_mouse_cursorGuilherme Felipe
2018-05-23More fixes to set_borderless_windowGuilherme Felipe
[x11] Preserve window size when calling this method. [osx] Make sure it don't make the window resizable if it's not needed. [windows] clean up the code.
2018-05-21Merge pull request #19070 from guilhermefelipecgs/fix_19033Max Hilbrunner
Fix mouse confined and set_borderless_window
2018-05-21Fix #15678Guilherme Felipe
Fix cursor not displaying arrow when transiting from mode captured to visible.
2018-05-20Fix #19033Guilherme Felipe
- Fix a bug when mouse is confined don't update the cursor shape. - Don't let the mouse leave the window when resizing to a smaller resolution when MOUSE_MODE_CONFINED. - Fix set_borderless_window to preserve the actual video_mode.widht/height.
2018-05-10Reset the cursor with Input.set_custom_mouse_cursor(null)Guilherme Felipe