Age | Commit message (Collapse) | Author |
|
|
|
Add Selection and Caret for Next Occurrence of Selection
|
|
|
|
|
|
# Conflicts:
# editor/plugins/tiles/tiles_editor_plugin.cpp
|
|
Code simplifications
|
|
|
|
|
|
Fix get_rect, get_global_rect and get_screen_rect to take Controls scale into
account.
Simplify get_screen_position and get_screen_rect
|
|
Adds the bind `add_selection_for_next_occurrence` to TextEdit, with CTRL+D as the default shortcut.
When the bind is performed, ff a selection is currently active with the last caret in text fields, searches for the next occurrence of the selection, adds a caret and selects the next occurrence.
If no selection is currently active with the last caret in text fields, selects the word currently under the caret.
The action can be performed sequentially for all occurrences of the selection of the last caret and for all existing carets. The viewport is adjusted to the latest newly added caret.
The bind and the behaviour is similar to VS Code's "Add Selection to Next Find Match" and JetBrains' "Add Selection for Next Occurrence". It takes advantage of the multi-caret API.
The default shortcut for `select_word_under_caret` has been changed to ALT+G, in order to give priority to CTRL+D for `add_selection_for_next_occurrence` to better align with popular IDEs and editors.
|
|
The incoming value is validated first and then compared.
Previously, when the ScrollContainer was scrolled, the ScrollBar of
the other axis of the ScrollContainer would emit the changed signal.
This commit avoids that.
|
|
|
|
Revert `custom_minimum_size` type back to `Vector2` instead of `Vector2i`
|
|
|
|
|
|
|
|
1. Viewport::get_visible_rect().position is always zero.
So Control::get_window_rect is identical to Control::get_global_rect.
Remove Control::get_window_rect since it is not used in the source code.
2. sqrt(a * a) = abs(a) for doubles
3. Simplify affine_inverse combination
4. Simplify calculation in shaders
|
|
|
|
The visibility of the `ScrollBar` was used as a condition for judging whether it should scroll.
**Visible** and **scrollable** are currently not the same in some cases (`SCROLL_MODE_SHOW_NEVER`).
This makes `SCROLL_MODE_SHOW_NEVER` not working properly.
This patch will make `SCROLL_MODE_SHOW_NEVER` available, so that the external `SrollBar` can
share the internal `ScrollBar`'s data, we can achieve the purpose of replacing the internal
`ScrollBar` with a custom external one.
|
|
|
|
In certain conditions events did not get propagated to Control childs of
Node2D nodes when setting a parent of the Node2D to toplevel.
This patch makes sure that such Control nodes become root control in the
viewport.
|
|
|
|
|
|
|
|
|
|
Comment not to remove `data` structs in some Nodes
|
|
|
|
Ensure control built-in shortcuts are matched exactly & add shortcuts for SpriteFrames editor
|
|
Move Shortcut Context to control and fix `shortcut_input` with `shortcut_context`
|
|
contexts. Also ensure that controls with no context are only triggered AFTER nodes which do have a context.
|
|
|
|
Fix Control node not disconnecting from signal
|
|
Improve Popup / Window behavior in the edited scene tree.
|
|
|
|
|
|
Add Spritesheet support to RichTextLabel BBCode
|
|
BBCode: [img region=0,0,16,16]res://icon.svg[/img]
|
|
irrelevant `Popup` flags from the editor inspector.
|
|
Replace all TODO uses of `#warning` by proper TODO comments, and will open
matching bug reports to keep track of them.
We don't have a great track record fixing TODOs, but I'd wager we're even
worse for fixing these "TODO #warning" so we should prohibit this usage.
|
|
Expose TreeItem::set_button_color
|
|
Fix inserting tabs in TextEdit
|
|
Improve bookmark and breakpoint indicators
|
|
|
|
|
|
|
|
This makes it easier for touch and tablet users to do symbol lookups in
the code editor.
|
|
Add warning for missing characters in label font
|
|
Getters for TextEdit scroll bars
|
|
Now, `caret_can_draw` will be validated when a condition that affects
the drawability of the `LineEdit`'s caret changes; `draw_caret` will
be toggled when the caret's visibility is toggled due to blink, and
`draw_caret` will be `false` when `caret_blink_enabled` is disabled.
Fix toggling `caret_blink_enabled` could cause caret to no longer be
displayed.
Fix opening the context menu causing caret to no longer appear.
|
|
|