Fabio Alessandrelli and Rémi Verschelde
f73c9e555f
Remove now unused FileAccessBuffered.
...
(cherry picked from commit 781efc26e0 )
2020-12-09 11:36:58 +01:00
Pedro J. Estébanez
0642f3efeb
Ignore query to maximize/minimize window on Windows and X11
...
This makes these platform behave as MacOS in that regard and also fixes the editor window appearing in some cases even when --no-window has been passed.
2020-11-18 00:33:39 +01:00
Marcus Brummer and Rémi Verschelde
a822bb9844
Fixed exit code retrieval of spawned processes on Windows
...
Use GetExitCodeProcess() on Windows to retrieve the exit code of a process in
OS:excute()
(cherry picked from commit f0f4220b05 )
2020-11-17 12:07:02 +01:00
Ev1lbl0w and Rémi Verschelde
f279f657a5
Changed path behaviour for Windows
...
(cherry picked from commit 525a5be01d )
2020-11-11 15:30:55 +01:00
Pedro J. Estébanez
3ec62c82a3
Implement no-window mode for X11 and MacOS
...
Bonus: Homogeinize and improve OS::alert() for no-window mode
2020-11-09 20:56:12 +01:00
Bastiaan Olij
1ea7358405
Add get_native_handle to OS
2020-10-20 20:23:37 +11:00
bruvzg
e51fed9d1b
[3.2] Add window click-through support.
2020-09-17 12:36:01 +03:00
bruvzg
2b996cca67
[Windows] Fix modifier keys when using tablet input.
2020-08-17 14:43:23 +03:00
Zae
6f2be6b05c
[3.2] fix crlf for clipboard
2020-07-20 15:42:32 +08:00
bruvzg and Rémi Verschelde
1468c0b4d4
[Windows] Prevent overwriting old cursor handle on multiple mouse_mode changes, ensure mouse_mode is set before cursor_set_shape is called to restore cursor.
...
(cherry picked from commit fc1d1c3557 )
2020-06-22 13:08:53 +02:00
unknown and Rémi Verschelde
d080c0de51
adding check for syskeydown on control and alt
...
(cherry picked from commit d191a8b9f8 )
2020-06-21 21:34:50 +02:00
Ev1lbl0w and Rémi Verschelde
4d7ac36e84
Allow Godot to kill it's own PID
...
(cherry picked from commit 75ce45440a )
2020-06-18 11:29:28 +02:00
bruvzg
2256946f79
[3.2] Add keyboard layout enumeration / set / get functions (macOS, Windows, Linux/X11).
2020-06-13 11:01:49 +03:00
lawnjelly and Rémi Verschelde
b330766c30
Fix overflow condition with QueryPerformanceCounter
...
The previous code for OS_Windows::get_ticks_usec() multiplied the tick count by 1000000 before dividing by ticks_per_second. The ticks is counted in a 64 bit integer and is susceptible to overflow when a machine has been running for a long period of time (days) with a high frequency timer.
This PR separates the overall calculation into one for seconds and one for the remainder, removing the possibility of overflow due to the multiplier.
(cherry picked from commit db9fa88160 )
2020-06-11 09:40:04 +02:00
bruvzg and Rémi Verschelde
1642c4163d
Ignore invalid tablet driver name, when non are available.
...
(cherry picked from commit ef1a305e50 )
2020-06-04 12:09:39 +02:00
bruvzg
28aabf4f73
[3.2] Block WM_MOUSEMOVE during Windows Ink pen handling.
2020-05-22 14:05:53 +03:00
Rémi Verschelde and GitHub
b6c551e864
Merge pull request #38875 from bruvzg/tab_drv_sel_32
...
[Windows, 3.2] Add tablet driver selection.
2020-05-20 13:58:26 +02:00
bruvzg and Rémi Verschelde
e3be0520a1
[Windows] Add quotes only to the command line arguments with special characters.
...
(cherry picked from commit cac399a829 )
2020-05-20 11:39:55 +02:00
bruvzg
71b2abbfa3
[Windows, 3.2] Add tablet driver selection.
2020-05-20 09:36:56 +03:00
Eric Rybicki and Rémi Verschelde
c2eea4bde0
Fix certain characters being recognized as special keys in Windows when using the us international layout
...
(cherry picked from commit e460456e60 )
2020-05-19 10:19:52 +02:00
Rémi Verschelde and GitHub
a9bcd8ba26
Merge pull request #38659 from akien-mga/3.2-cherrypicks
...
Cherry-picks for the 3.2 branch (future 3.2.2) - 5th batch
2020-05-11 12:55:46 +02:00
bruvzg
bd5413e05f
WinTab: Make movement smoother and handle pressure/tilt changes when cursor is not moving [3.2].
2020-05-11 12:32:15 +03:00
bruvzg and Rémi Verschelde
c4e00f3d57
Remove WinTab error message.
...
(cherry picked from commit ba85db5a79 )
2020-05-11 11:01:13 +02:00
Technohacker
0456311be3
Don't force borderless mode when using per-pixel transparency
2020-05-10 21:05:37 +05:30
Technohacker
9584f24be5
Use DWMEnableBlurBehindWindow instead of WS_EX_LAYERED
...
Affects per-pixel transparency
The current method renders to the screen by copying the GLES output to a
DIB for transparency using the CPU instead of rendering directly to the
window via the GPU. This is slower and also forces the window to be borderless
as WS_EX_LAYERED affects the non-client region as well.
This change uses DWMEnableBlurBehindWindow which allows using the standard
glClearColor() background alpha and is also performed through the GPU,
eliminating CPU bottlenecks
2020-05-10 21:05:37 +05:30
bruvzg
78266c09c4
Add support for the WinTab API for pen input. (3.2)
2020-05-05 14:56:02 +03:00
bruvzg and Rémi Verschelde
da2ca9e22a
[Linux/Windows] Set pressure to 1.0f when primary button is pressed and device is not pressure sensitive.
...
(cherry picked from commit 0128947894 )
2020-05-05 13:41:29 +02:00
Mateo Dev .59 and Rémi Verschelde
d6c94fd527
os: execute parse the command output from utf8
...
(cherry picked from commit 8a88637705 )
2020-03-04 12:40:15 +01:00
Rémi Verschelde
e33914e0c1
MinGW: Avoid GCC -Wcast-function-type warnings on GetProcAddress
...
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-16 12:10:25 +01:00
Rémi Verschelde and GitHub
8454804972
Merge pull request #33967 from Calinou/add-os-is-window-focused
...
Add an `OS.is_window_focused()` getter
2020-01-06 11:39:18 +01:00
Rémi Verschelde
a7f49ac9a1
Update copyright statements to 2020
...
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.
2020-01-01 11:16:22 +01:00
TerminalJack and Rémi Verschelde
e1dda5195c
Added support for vertical syncing via the Windows OS compositor (DWM.)
2019-12-04 11:14:21 +01:00
bruvzg
2ef8c5fac5
iOS modular build and export implementation.
2019-12-01 21:57:18 +02:00
Hugo Locurcio
21a3923410
Add an OS.is_window_focused() getter
...
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-28 16:42:51 +01:00
piratesephiroth and GitHub
778b421973
Set ShellExecuteW's verb to NULL - fixes #33388
...
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-09 07:59:15 -03:00
bruvzg
1c8d3ab94f
Fix graphic tablet input coordinates on Windows.
2019-11-07 14:12:15 +02:00
bruvzg
f675621725
[macOS, Windows, X11] Add graphic tablet pen pressure and tilt support to InputEventMouseMotion event.
2019-10-30 14:42:21 +02:00
Yuri Roubinsky
034625ed93
Fix invalid window border when toggled from fullscreen to windowed mode
2019-10-27 18:44:47 +03:00
Joe Sweeney
d66dcc86f9
Allow use of relative and speed properties for InputEventScreenDrag on WIndows
2019-10-26 15:55:46 -06:00
PouleyKetchoupp
5bfe32eaa4
Properly revert cursor when using set_custom_mouse_cursor with null
...
Fixes #32486
2019-10-03 13:02:11 +02:00
qarmin
17732fe698
Added some obvious errors explanations
2019-09-25 10:28:50 +02:00
Robin Hübner
7d0c8a9041
fix usage of old macro when new variant intended
2019-08-09 13:10:06 +02:00
Robin Hübner
6ab118c464
Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in "platform", "modules/gdnative", "modules/gdscript" directories.
2019-08-09 11:13:24 +02:00
Tan Wang Leng
b12240a199
Fix wrong mouse wheel position for MOUSE_MODE_CAPTURED on Windows
...
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-08-05 22:10:30 +08:00
Hugo Locurcio
7de2c70e11
Turn OS.set_min/max_window_size() warnings into errors
...
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-30 14:50:52 +02:00
Ibrahn Sahir
3502a85ba8
Fix strict-aliasing warning in OS_Windows::get_unix_time.
2019-07-29 23:52:59 +01:00
Guilherme Felipe
c3f69c6c76
Fix crash caused by a9a0d0fb15
2019-07-24 15:01:28 -03:00
Guilherme Felipe
a9a0d0fb15
Fix cursor blinking in integrated GPUs
...
Optimization for Input::set_custom_mouse_cursor when used inside
_process function. (Avoids cursor blinking in low end devices)
2019-07-09 19:38:25 -03:00
hoontee and Rémi Verschelde
4a58c0487a
Hide command prompt launched by OS.execute
...
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-04 15:39:57 +02:00
hbina085
9f0c6a6009
Many fallthrough switch cases now have the FALLTHROUGH macro to tell the compiler that this is intended.
2019-06-29 16:08:48 -04:00