virtualx-engine/editor
Riteo 7e0f7d3abd Add Wayland support
Not everything is yet implemented, either for Godot or personal
limitations (I don't have all hardware in the world). A brief list of
the most important issues follows:

- Single-window only: the `DisplayServer` API doesn't expose enough
information for properly creating XDG shell windows.

- Very dumb rendering loop: this is very complicated, just know that
the low consumption mode is forced to 2000 Hz and some clever hacks are
in place to overcome a specific Wayland limitation. This will be
improved to the extent possible both downstream and upstream.

- Features to implement yet: IME, touch input, native file dialog,
drawing tablet (commented out due to a refactor), screen recording.

- Mouse passthrough can't be implement through a poly API, we need a
rect-based one.

- The cursor doesn't yet support fractional scaling.

- Auto scale is rounded up when using fractional scaling as we don't
have a per-window scale query API (basically we need
`DisplayServer::window_get_scale`).

- Building with `x11=no wayland=yes opengl=yes openxr=yes` fails.

This also adds a new project property and editor setting for selecting the
default DisplayServer to start, to allow this backend to start first in
exported projects (X11 is still the default for now). The editor setting
always overrides the project setting.

Special thanks to Drew Devault, toger5, Sebastian Krzyszkowiak, Leandro
Benedet Garcia, Subhransu, Yury Zhuravlev and Mara Huldra.
2024-01-30 16:44:47 +01:00
..
debugger Merge pull request #87293 from YuriSizov/editor-theme-a-rehashed-follow-up 2024-01-18 16:34:50 +01:00
export Remove unnecessary this-> expressions 2024-01-29 09:59:18 +01:00
gui Merge pull request #87170 from AThousandShips/run_fix 2024-01-29 21:33:26 +01:00
icons Make TileMapLayers extend Node2D and work as children of TileMap 2024-01-17 16:05:50 +01:00
import Improve editor theme generation after the refactor 2024-01-17 15:16:53 +01:00
plugins Merge pull request #87712 from akien-mga/revert-gdscript-uid-annotations-for-now 2024-01-29 21:34:59 +01:00
project_manager Reorganize project manager code 2024-01-16 19:57:36 +01:00
themes Merge pull request #83510 from Geometror/vs-connection-ops 2024-01-22 20:38:30 +01:00
translations i18n: Sync translations with Weblate 2023-12-11 22:10:21 +01:00
action_map_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
action_map_editor.h
animation_bezier_editor.cpp Split theme generation logic into several subroutines 2024-01-16 11:57:45 +01:00
animation_bezier_editor.h Add vertical scrolling to bézier track editor. 2023-10-22 13:51:12 +01:00
animation_track_editor.cpp Split theme generation logic into several subroutines 2024-01-16 11:57:45 +01:00
animation_track_editor.h Merge pull request #85142 from CookieBadger/animation-player-improvements 2024-01-08 11:50:38 +01:00
animation_track_editor_plugins.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
animation_track_editor_plugins.h
audio_stream_preview.cpp Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
audio_stream_preview.h
code_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
code_editor.h Search terms are now highlighted when the bar opens with a selection. 2023-10-30 10:21:25 -07:00
connections_dialog.cpp Add support for search shortcut to all docks 2024-01-22 22:37:59 +04:00
connections_dialog.h Fixing a usability issue where the DEL key does not delete connections 2024-01-17 00:51:43 +00:00
create_dialog.cpp Split theme generation logic into several subroutines 2024-01-16 11:57:45 +01:00
create_dialog.h Fix accessing editor theme items throughout the UI 2023-09-15 14:51:01 +02:00
dependency_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
dependency_editor.h Use mingw-std-threads in MinGW builds 2023-11-18 11:56:05 +01:00
directory_create_dialog.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
directory_create_dialog.h Standardize dialog input validation as a new class 2023-08-08 16:14:35 +02:00
doc_tools.cpp Merge pull request #84760 from KoBeWi/ultimate_get_property_list_reloaded 2024-01-29 21:32:10 +01:00
doc_tools.h GDExtension: add an interface for loading extra documentation 2024-01-26 13:53:33 +01:00
editor_about.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_about.h Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_asset_installer.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_asset_installer.h Allow to specify target folder when installing assets 2023-09-19 20:10:26 +02:00
editor_atlas_packer.cpp
editor_atlas_packer.h
editor_audio_buses.cpp Remove unnecessary this-> expressions 2024-01-29 09:59:18 +01:00
editor_audio_buses.h Add a bus_renamed AudioServer signal 2023-09-15 13:02:03 +03:00
editor_autoload_settings.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_autoload_settings.h
editor_build_profile.cpp Split theme generation logic into several subroutines 2024-01-16 11:57:45 +01:00
editor_build_profile.h
editor_builders.py Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_command_palette.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_command_palette.h Merge pull request #86727 from KoBeWi/shortcut_revolution 2024-01-09 15:31:00 +01:00
editor_data.cpp [Editor] Add EditorPlugin::scene_saved signal 2024-01-22 17:51:12 +01:00
editor_data.h [Editor] Add EditorPlugin::scene_saved signal 2024-01-22 17:51:12 +01:00
editor_dock_manager.cpp Ability to move FileSystem dock to bottom 2024-01-29 15:15:38 +01:00
editor_dock_manager.h Ability to move FileSystem dock to bottom 2024-01-29 15:15:38 +01:00
editor_feature_profile.cpp Split theme generation logic into several subroutines 2024-01-16 11:57:45 +01:00
editor_feature_profile.h
editor_file_system.cpp Add THREADS_ENABLED macro in order to compile Godot to run on the main thread 2024-01-17 13:58:29 -05:00
editor_file_system.h Add THREADS_ENABLED macro in order to compile Godot to run on the main thread 2024-01-17 13:58:29 -05:00
editor_folding.cpp
editor_folding.h
editor_help.cpp Merge pull request #87688 from AThousandShips/what_is_this 2024-01-29 13:18:09 +01:00
editor_help.h GDExtension: add an interface for loading extra documentation 2024-01-26 13:53:33 +01:00
editor_help_search.cpp Fix selection regression in EditorHelpSearch 2024-01-22 17:06:42 +01:00
editor_help_search.h Cache TreeItems between runs in EditorHelpSearch 2024-01-16 16:50:45 +01:00
editor_inspector.cpp Merge pull request #87688 from AThousandShips/what_is_this 2024-01-29 13:18:09 +01:00
editor_inspector.h Better hide internal properties from users 2024-01-29 12:35:10 +01:00
editor_interface.cpp Disable multi-window buttons instead of hiding them when support is unavailable 2024-01-27 19:38:39 +01:00
editor_interface.h Disable multi-window buttons instead of hiding them when support is unavailable 2024-01-27 19:38:39 +01:00
editor_layouts_dialog.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_layouts_dialog.h
editor_locale_dialog.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_locale_dialog.h
editor_log.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_log.h Handle clickable [url] tags in print_rich() editor output log 2024-01-15 14:54:13 +01:00
editor_native_shader_source_visualizer.cpp
editor_native_shader_source_visualizer.h
editor_node.cpp Ability to move FileSystem dock to bottom 2024-01-29 15:15:38 +01:00
editor_node.h Ability to move FileSystem dock to bottom 2024-01-29 15:15:38 +01:00
editor_paths.cpp [Editor] Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-09-15 20:15:39 +02:00
editor_paths.h
editor_plugin.cpp [Editor] Add EditorPlugin::scene_saved signal 2024-01-22 17:51:12 +01:00
editor_plugin.h [Editor] Add EditorPlugin::scene_saved signal 2024-01-22 17:51:12 +01:00
editor_plugin_settings.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_plugin_settings.h
editor_properties.cpp Split theme generation logic into several subroutines 2024-01-16 11:57:45 +01:00
editor_properties.h Use set_value_no_signal in editor property code 2023-12-18 11:47:03 -06:00
editor_properties_array_dict.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_properties_array_dict.h Rework update_property for array. 2023-12-21 10:00:04 +01:00
editor_properties_vector.cpp Replace radians range hint with radians_as_degrees 2023-09-25 08:50:19 +02:00
editor_properties_vector.h Replace radians range hint with radians_as_degrees 2023-09-25 08:50:19 +02:00
editor_property_name_processor.cpp Capitalize OIDN in editor settings and properties 2024-01-12 13:45:20 +01:00
editor_property_name_processor.h
editor_quick_open.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_quick_open.h Fix theme application in various editor dialogs 2023-12-04 13:18:48 +01:00
editor_resource_picker.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_resource_picker.h Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
editor_resource_preview.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_resource_preview.h Run resource previewer on the main thread if using GL compatibility 2024-01-16 10:01:41 +01:00
editor_run.cpp Debug CanvasItem redraw 2023-08-28 12:53:56 +02:00
editor_run.h
editor_run_native.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_run_native.h
editor_script.cpp Replace GDVIRTUAL_CALL with GDVIRTUAL_REQUIRED_CALL where applicable 2023-12-14 13:22:40 -06:00
editor_script.h Extract ScriptInstance to simplify includes 2023-09-06 22:54:38 +02:00
editor_sectioned_inspector.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
editor_sectioned_inspector.h
editor_settings.cpp Add Wayland support 2024-01-30 16:44:47 +01:00
editor_settings.h Improve editor theme generation after the refactor 2024-01-17 15:16:53 +01:00
editor_settings_dialog.cpp Introduce editor theme spacing presets 2024-01-16 11:57:45 +01:00
editor_settings_dialog.h
editor_string_names.cpp Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
editor_string_names.h Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
editor_translation.cpp
editor_translation.h
editor_translation_parser.cpp
editor_translation_parser.h Extract ScriptInstance to simplify includes 2023-09-06 22:54:38 +02:00
editor_undo_redo_manager.cpp Fix for stopping the Undo History being desynchronised from actual Undo queue. 2023-11-10 13:04:12 +00:00
editor_undo_redo_manager.h
editor_vcs_interface.cpp Replace GDVIRTUAL_CALL with GDVIRTUAL_REQUIRED_CALL where applicable 2023-12-14 13:22:40 -06:00
editor_vcs_interface.h Extract ScriptInstance to simplify includes 2023-09-06 22:54:38 +02:00
event_listener_line_edit.cpp Add InputEventKey.location to tell left from right 2024-01-26 14:42:28 +01:00
event_listener_line_edit.h
fbx_importer_manager.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
fbx_importer_manager.h
filesystem_dock.cpp Ability to move FileSystem dock to bottom 2024-01-29 15:15:38 +01:00
filesystem_dock.h Ability to move FileSystem dock to bottom 2024-01-29 15:15:38 +01:00
find_in_files.cpp Use callable for TreeItem custom draw 2024-01-23 12:07:43 +01:00
find_in_files.h Stop the searching of find in files in folders that have .gdignore 2023-12-08 19:26:06 -03:00
group_settings_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
group_settings_editor.h Implement project-wide node groups 2023-12-19 18:07:19 +01:00
groups_editor.cpp Add support for search shortcut to all docks 2024-01-22 22:37:59 +04:00
groups_editor.h Use ObjectID to track cached scene groups. 2024-01-09 11:14:38 +01:00
history_dock.cpp Implement automatic translation for ItemList 2023-10-23 10:14:08 +02:00
history_dock.h
import_defaults_editor.cpp Fix press save in Import Defaults did not save the changed setting 2023-11-01 15:45:51 +08:00
import_defaults_editor.h Deprecate project_settings_changed signal 2023-08-10 15:07:25 +02:00
import_dock.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
import_dock.h Merge pull request #75137 from nongvantinh/implement-6320 2023-08-07 14:43:44 +02:00
input_event_configuration_dialog.cpp Add InputEventKey.location to tell left from right 2024-01-26 14:42:28 +01:00
input_event_configuration_dialog.h Add InputEventKey.location to tell left from right 2024-01-26 14:42:28 +01:00
inspector_dock.cpp Add support for search shortcut to all docks 2024-01-22 22:37:59 +04:00
inspector_dock.h Add support for search shortcut to all docks 2024-01-22 22:37:59 +04:00
localization_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
localization_editor.h
multi_node_edit.cpp
multi_node_edit.h
node_dock.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
node_dock.h Hide Node dock successfully on undo/redo and deletion 2023-12-12 10:26:05 +01:00
plugin_config_dialog.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
plugin_config_dialog.h Improve Control hiding in PluginConfigDialog 2023-11-28 14:59:34 +01:00
pot_generator.cpp Merge pull request #84445 from Rubonnek/add-const-references-clang-tidy 2024-01-04 14:25:33 +01:00
pot_generator.h
progress_dialog.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
progress_dialog.h Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
project_converter_3_to_4.cpp Add deprecation notice to a duplicate method of class Window 2024-01-12 18:18:28 +01:00
project_converter_3_to_4.h Fix conversion of hex color strings in project converter 2023-09-29 15:04:35 +02:00
project_manager.cpp Remove unnecessary this-> expressions 2024-01-29 09:59:18 +01:00
project_manager.h Reorganize project manager code 2024-01-16 19:57:36 +01:00
project_settings_editor.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
project_settings_editor.h Merge pull request #82283 from YeldhamDev/focus_that_search_bar! 2024-01-04 16:38:52 +01:00
property_selector.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
property_selector.h
register_editor_types.cpp GDExtension: add an interface for loading extra documentation 2024-01-26 13:53:33 +01:00
register_editor_types.h
register_exporters.h
rename_dialog.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
rename_dialog.h
renames_map_3_to_4.cpp Remove incorrect C# rename from the project converter 2024-01-24 16:36:11 +01:00
renames_map_3_to_4.h
reparent_dialog.cpp
reparent_dialog.h
scene_create_dialog.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
scene_create_dialog.h Standardize dialog input validation as a new class 2023-08-08 16:14:35 +02:00
scene_tree_dock.cpp Add support for search shortcut to all docks 2024-01-22 22:37:59 +04:00
scene_tree_dock.h Add support for search shortcut to all docks 2024-01-22 22:37:59 +04:00
script_create_dialog.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
script_create_dialog.h Fix ScriptCreateDialog not accepting on submit 2023-09-25 22:25:19 +02:00
SCsub Reorganize project manager code 2024-01-16 19:57:36 +01:00
shader_create_dialog.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
shader_create_dialog.h Fix theme application in various editor dialogs 2023-12-04 13:18:48 +01:00
shader_globals_editor.cpp Improve "Add" button consistency in Project Settings 2024-01-11 17:13:23 -03:00
shader_globals_editor.h Improve "Add" button consistency in Project Settings 2024-01-11 17:13:23 -03:00
surface_upgrade_tool.cpp Reorganize code related to editor theming 2024-01-16 11:57:45 +01:00
surface_upgrade_tool.h Rework the surface upgrade tool to inform users without blocking 2023-11-22 19:03:14 +01:00
template_builders.py
window_wrapper.cpp Disable multi-window buttons instead of hiding them when support is unavailable 2024-01-27 19:38:39 +01:00
window_wrapper.h