Commit Graph

503 Commits

Author SHA1 Message Date
3105d9b1f3 Rename speed to velocity when it's a directional Vector 2021-12-29 15:35:26 +00:00
0f83d7272c Fix cursor stucking in resize shape 2021-12-28 13:35:07 +03:00
ea5bb8b47d [Windows] Improve console handling and execute/create_process.
Always build with the GUI subsystem.
Redirect stdout and stderr output to the parent process console.
Use CreateProcessW for blocking `execute` calls with piped stdout and stderr (prevent console windows for popping up when used with the GUI subsystem build, and have more consistent behavior with `create_process`).
Add `open_console` argument to the `execute` and `create_process` to open a new console window.
Remove `interface/editor/hide_console_window` editor setting.
Remove `Toggle System Console` menu option.
Remove `set_console_visible` and `is_console_visible` functions.
2021-12-18 10:14:07 +02:00
d08b28aeb0 Fix initialising of gl_manager and checking gl_manager and context_vulkan preventing crash issues. 2021-12-18 12:21:16 +11:00
1fdb6a99c8 [Windows] Detect new Windows Terminal and disable unsupported set_console_visible code. 2021-12-15 20:00:57 +02:00
49403cbfa0 Replace String comparisons with "", String() to is_empty()
Also:
- Adds two stress tests to test_string.h
- Changes to .empty() on std::strings
2021-12-09 04:48:38 -06:00
3c0fdcc8ac Use "enum class" for input enums 2021-11-12 15:37:54 -06:00
b727061ce0 Windows: Fix compilation warnings with GCC 11.2.1 2021-11-10 15:13:05 +01:00
8a10bb7d0d Use OpenGL 3.3 core profile instead of compatibility profile
- Rename OpenGL to GLES3 in the source code per community feedback.
  - The renderer is still exposed as "OpenGL 3" to the user.
- Hide renderer selection dropdown until OpenGL support is more mature.
  - The renderer can still be changed in the Project Settings or using
    the `--rendering-driver opengl` command line argument.
- Remove commented out exporter code.
- Remove some OpenGL/DisplayServer-related debugging prints.
2021-10-31 15:56:45 +01:00
ce97ddbcb1 Rename GLES2 driver to OpenGL to prepare for the upgrade to GLES3
- Use lowercase driver names for the `--rendering-driver`
  command line argument.
2021-10-30 02:05:49 +02:00
e3491a3744 Add GLES2 2D renderer + Linux display manager
First implementation with Linux display manager.

- Add single-threaded mode for EditorResourcePreview (needed for OpenGL).

Co-authored-by: clayjohn <claynjohn@gmail.com>
Co-authored-by: Fabio Alessandrelli <fabio.alessandrelli@gmail.com>
2021-10-30 02:05:48 +02:00
92a53f9bd6 Change dragging cursor on Windows 2021-10-06 13:13:42 +02:00
3479aaa369 Merge pull request #53405 from winterpixelgames/PR-more-error-logging-release 2021-10-05 08:43:07 +02:00
b78d399f91 revert 0d7409a so additional error information prints in release builds 2021-10-04 16:55:01 -06:00
a7011fa294 Merge pull request #52684 from Frixuu/master 2021-10-01 11:53:01 +02:00
c63b18507d Use range iterators for Map 2021-09-30 15:09:12 -06:00
650e63a7ca Allow for mapping keycodes to current layout 2021-09-21 00:03:02 +02:00
Dan
131f5dbb54 Fix Windows cursor with trails disappearing in fullscreen
Fixed by turning off mouse trails when going into fullscreen, then restoring trails when exiting fullscreen or game
2021-09-19 21:42:56 -07:00
7ca6a0e849 Clean DisplayServerWindows and add missing guards 2021-09-10 15:56:46 +02:00
59116e1995 Fix bad size after restoring a minimized window under Windows 2021-08-27 14:32:52 +02:00
1a5d72bf16 Fix window decoration size on Windows 2021-08-23 10:43:34 +08:00
dc187324be Add input buffering framework
Input buffering is implicitly used by event accumulation, but this commit makes it more generic so it can be enabled for other uses.

For desktop OSs it's currently not feasible given main and UI threads are the same).
2021-08-13 11:19:19 +02:00
7c864d41c9 Improve input event accumulation
- API has been simplified: all events now go through `parse_input_event()`. Whether they are accumulated or not depends on the `use_accumulated_input` flag.
- Event accumulation is now thread-safe (it was not needed so far, but it prepares the ground for the following changes).
- Touch drag events now support accumulation.
2021-08-13 11:19:19 +02:00
fa3a32a2d6 Use Key enum instead of plain integers 2021-08-10 16:26:55 -05:00
63ba15a518 Fix vertical scroll/zoom for precision touchpad
Adds factor data for vertical mousewheel event, in line with horizontal mousewheel event
2021-08-06 15:06:11 +02:00
618eb27e8b Move alert function from DisplayServer to OS. 2021-07-22 21:50:35 +03:00
043ae91560 Restructure and reimplement vsync options
-Add a v-sync mode setting which allows to choose between DISABLED, ON, ADAPTIVE and MAILBOX
-Removed the V-Sync via Compositor option
2021-07-06 16:34:26 +02:00
0ce49800ac Use mouse and joypad enums instead of plain integers
Also MIDIMessage
2021-06-20 11:54:24 -04:00
e28fd07b2b Rename instance()->instantiate() when it's a verb 2021-06-19 20:49:18 -06:00
c1c76850cb Style: Cleanup uses of double spaces between words
Or after punctuation. Tried to leave third-party stuff alone, unless it has
been heavily modified for Godot.
2021-06-07 11:03:08 +02:00
98aa3b669e Add MOUSE_MODE_CONFINED_HIDDEN
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2021-06-03 11:44:28 -04:00
6abd842a5a Fixed window_can_draw of DisplayServerWindows 2021-06-02 12:51:36 +02:00
97fecd1b69 Rename "Control" key to "Ctrl" and add "_pressed" suffix to all InputEventWithModifiers properties/methods 2021-05-07 14:00:50 -06:00
0de9a7d803 Rename doubleclick to double_click 2021-05-04 04:38:08 -04:00
5b16020846 Replace remaining uses of NULL with nullptr
Follow-up to #38736 (these uses were likely added after this PR was merged).
2021-04-29 11:53:27 +02:00
8247667a3e Core: Drop custom copymem/zeromem defines
We've been using standard C library functions `memcpy`/`memset` for these since
2016 with 67f65f6639.

There was still the possibility for third-party platform ports to override the
definitions with a custom header, but this doesn't seem useful anymore.
2021-04-27 16:26:27 +02:00
18678fd11e Fix window resizing after minimization on Windows 2021-03-30 20:09:19 +08:00
fd30c36985 Rename Texture.get_data() to get_image() 2021-03-28 13:00:46 +01:00
10d7fccb54 Rename ButtonList enum and members to MouseButton 2021-03-23 07:13:23 -04:00
91181c2086 Fixes small typos and grammar correction 2021-03-12 19:05:16 +05:30
3e0262509f Move tablet driver API from OS to DisplayServer. 2021-02-18 17:12:24 +02:00
b6e2ad0e7e Cancel event dispatch on error 2021-02-07 21:50:12 +01:00
785f84f1d1 Removes semicolon typo in display_server_windows 2021-01-06 15:08:51 +03:00
d4939aa05f Fix PopupMenu's which are not closed after a recent commit 2021-01-06 14:42:15 +03:00
9d6df31b84 Merge pull request #44299 from Chaosus/fix_win32_warning
Fixed warning at window closing (WIN32)
2021-01-05 09:00:47 +01:00
b5334d14f7 Update copyright statements to 2021
Happy new year to the wonderful Godot community!

2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.

We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)

Here's to a great year 2021 for all Godot users 🎆
2021-01-01 20:19:21 +01:00
41efbf8cae Fixed warning at project startup (WIN32) 2021-01-01 18:09:34 +03:00
8a2bc6bf58 Fix window restoring after fullscreen again 2020-12-31 16:07:05 +03:00
2df9a8ccad Rename Rect2 and Rect2i clip() to intersection() 2020-12-19 12:59:08 +00:00
2787ad65be RenderingServer reorganization 2020-12-04 18:39:46 -03:00