summaryrefslogtreecommitdiff
path: root/platform/windows/os_windows.cpp
AgeCommit message (Collapse)Author
2019-02-26-Remove harcoded opengl extension testing from OS, ask rasterizer instead.Juan Linietsky
-Fixed a bug where etc textures were imported broken
2019-02-25Update Windows global mouse position at startupJunwei Ng
Fixes issue #8145 for Windows, in the same manner as issue #21910 fixed it for X11.
2019-02-20Drop RtAudio driver on WindowsRémi Verschelde
We've been defaulting to WASAPI since 3.0 and it's superior to RtAudio in all aspects. Obsoletes and closes #25503. Also enable WINMIDI on MinGW, this had been missed initially. Fix os_windows.cpp and crash_handler_windows.cpp which had weird dependencies on RtAudio.h's includes (ugh).
2019-02-13Merge pull request #25842 from marcelofg55/windows_timezoneRémi Verschelde
Fix get_time_zone_info returning inverted bias on Windows/UWP
2019-02-13Fix get_time_zone_info returning inverted bias on Windows/UWPMarcelo Fernandez
2019-02-12Platform: Ensure classes match their header filenameRémi Verschelde
Also drop some unused files. Renamed: - `platform/iphone/sem_iphone.h` -> `semaphore_iphone.h` (same for `osx`) - `platform/uwp/gl_context_egl.h` -> `context_egl_uwp.h` - in `platform/windows`: `context_gl_win.h`, `crash_handler_win.h`, `godot_win.cpp`, `joypad.h` and `key_mapping_win.h` all renamed to use `windows`. Some classes renamed accordingly too. - `EditorExportAndroid` and `EditorExportUWP` renamed to `EditorExportPlatformAndroid` and `EditorExportPlatformUWP` - `power_android` and `power_osx` renamed to `PowerAndroid` and `PowerOSX` - `OSUWP` renamed to `OS_UWP` Dropped: - `platform/windows/ctxgl_procaddr.h`
2019-02-03Added set_environment to OS classIgnacio Etcheverry
2019-01-23Fix ALT+F4 being ignored with MOUSE_MODE_CAPTURED on WindowsMarcelo Fernandez
2019-01-23Fix GDI objects leak when setting custom cursorMarcin Zawiejski
Fixes #19906
2019-01-22Raised executable priority on windows to avoid stuter, helps #25162Juan Linietsky
2019-01-22Avoid cyclic iteration check, fixes #24969Juan Linietsky
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
2018-12-20Added OS.get_system_time_msecs()volzhs
2018-12-14Merge pull request #20063 from moiman100/fix-button-maskRémi Verschelde
Unified button mask behavior across platforms
2018-11-30Fix wrong size and position when windows is minimized on WindowsMarcelo Fernandez
2018-11-09Fix mouse mode restoration on WindowsPedro J. Estébanez
Fixes #23494.
2018-11-03Properly export the various 'use dGPU' symbols when building with MingWHein-Pieter van Braam
This fixes exporting the NvOptimusEnablement export when building with MingW. This also adds the equivalent for AMD. This fixes #23400
2018-11-01Fix init of VisualServerRasterRémi Verschelde
Contrarily to what #23434 assumed, this is not a memory leak, the VisualServerRaster instance is passed as a parameter to VisualServerWrapMT's constructor. Fixes #23437.
2018-11-01Fix initialization of visual server in all platformsGeorge Marques
Avoid leaking an extra instance when using threads. Also fix threaded loading issues on Android and iOS.
2018-10-19Fix compile warnings for Windows from LinuxAaron Franke
At least the ones I got when I compiled it using Mingw64 POSIX on Xubuntu 18.04. Plus use the Size2 of get_window_size() directly, rather than reconstructing it.
2018-10-19Fixing warnings generated by MSVCDualtagh Murray
Fixes #22684.
2018-10-06Remove redundant "== false" codeAaron Franke
Some of this code has been re-organized. f
2018-10-06Remove redundant "== true" codeAaron Franke
If it can be compared to a boolean, it can be evaluated as one in-place.
2018-09-23Fix mouse position when clicking in MOUSE_MODE_CAPTUREDMikko Mustonen
2018-09-23Fix zero relative motion event when clicking in MOUSE_MODE_CAPTUREDMikko Mustonen
2018-09-17Fix Input::set_custom_mouse_cursor showing cursor when it's invisibleGuilherme Felipe
2018-09-13Fix set_custom_mouse_cursor changing to incorrect cursor shapeGuilherme Felipe
[Docs] Add class ref for Input::set_default_cursor_shape
2018-09-13Properly initialize Winsock on startupFabio Alessandrelli
Also fix typo in _get_last_error which caused Winsock connect to fail.
2018-09-12Unify StreamPeerTCP/TCP_Server with NetSocket APIFabio Alessandrelli
2018-09-12Unify PacketPeerUDP using NetSocketFabio Alessandrelli
2018-09-12Make core/ includes absolute, remove subfolders from include pathRémi Verschelde
This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
2018-09-05Fix mouse confined leaving window with OS_Windows::set_window_positionGuilherme Felipe
2018-09-04Really fix the custom cursor hotspotMartin Capitanio
Add check for negative values. Fixes #21721
2018-09-03Fix custom cursor hotspotGuilherme Felipe
Cursor hotspot must be inside image on Linux. Adding validation for all platforms for consistency.
2018-08-30Fix multitouch input not working on certain devices on WindowsPedro J. Estébanez
Fixes #20474.
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 #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-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-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-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-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-21Added a new MIDIDriver classMarcelo Fernandez