summaryrefslogtreecommitdiff
path: root/scene/gui/text_edit.cpp
AgeCommit message (Collapse)Author
2020-07-29Fix TextEdit line width cache not being updatedPaulb23
2020-07-26Fix Return key events in LineEdit & TextEdit on AndroidPouleyKetchoupp
Depending on the device implementation, editor actions could be received with different action ids or not at all for multi-line. Added a parameter to virtual keyboards to properly handle single-line and multi-line cases in all situations. Single-line: Input type set to text without multiline to make sure actions are sent. IME options are set to DONE action to force action id consistency. Multi-line: Input type set to text and multiline to make sure enter triggers new lines. Actions are disabled by the multiline flag, so '\n' characters are handled in text changed callbacks.
2020-07-11Extract Syntax highlighting from TextEdit and add EditorSyntaxHighlighterPaulb23
- Extacted all syntax highlighting code from text edit - Removed enable syntax highlighting from text edit - Added line_edited_from signal to text_edit - Renamed get/set_syntax_highlighting to get/set_syntax_highlighter - Added EditorSyntaxHighligher
2020-07-11Convert syntax highlighters into a resourcePaulb23
2020-06-30Add a separate application focus/in notification out from Window focus ↵Juan Linietsky
notification.
2020-06-20No longer scroll vertically when scrollbars are unavailableStijn Hinlopen
2020-05-16TextEdit search returns a dictionary instead of VectorPouleyKetchoupp
Easier to use than accessing elements in a Vector using indices given by an enum. Breaks compatibility on existing scripts using this functionality.
2020-05-16Fixed text editor drawing if smooth scrolling is disabled.Marcus Brummer
Fixes #38778
2020-05-14Style: Enforce braces around if blocks and loopsRémi Verschelde
Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14Style: Enforce separation line between function definitionsRémi Verschelde
I couldn't find a tool that enforces it, so I went the manual route: ``` find -name "thirdparty" -prune \ -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \ -o -name "*.glsl" > files perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files) misc/scripts/fix_style.sh -c ``` This adds a newline after all `}` on the first column, unless they are followed by `#` (typically `#endif`). This leads to having lots of places with two lines between function/class definitions, but clang-format then fixes it as we enforce max one line of separation. This doesn't fix potential occurrences of function definitions which are indented (e.g. for a helper class defined in a .cpp), but it's better than nothing. Also can't be made to run easily on CI/hooks so we'll have to be careful with new code. Part of #33027.
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-05-12Merge pull request #38655 from ↵Rémi Verschelde
ice-blaze/minimap-shifted-selection-by-one-line#38532 Fix minimap selection offset
2020-05-11Fix minimap selection offsetetienne.frank
The minimap selection was shifted of 1 line too late.
2020-05-10Style: clang-format: Disable AllowShortIfStatementsOnASingleLineRémi Verschelde
Part of #33027, also discussed in #29848. Enforcing the use of brackets even on single line statements would be preferred, but `clang-format` doesn't have this functionality yet.
2020-05-07Merge pull request #31086 from volzhs/underlineRémi Verschelde
Use underline position and thickness value in font file
2020-05-07Merge pull request #38385 from ThakeeNathees/method-bind-text_edit-set_lineRémi Verschelde
method bind TextEdit::set_line() added
2020-05-05Merge pull request #37293 from Janglee123/ctrl-click-improvementsRémi Verschelde
Improved go-to definition (Ctrl + Click)
2020-05-05Improved go-to definition (Ctrl + Click)janglee
Co-Authored-By: Bojidar Marinov <bojidar.marinov.bg@gmail.com>
2020-05-01method bind TextEdit::set_line() addedThakee Nathees
2020-04-29Merge pull request #37846 from CaptainProton42/text-edit-undo-stack-sizeRémi Verschelde
Add "undo_max_stack_size" property to TextEdit
2020-04-29Use underline position and thickness value in font filevolzhs
2020-04-29Limit undo stack sizeJohn Wigg
The stack size of the undo history of a TextEdit was not limited leading to potential memory leaks when doing lots of operations on a TextEdit. This commit adds the option gui/common/text_edit_undo_stack_max_size to the project settings. The first element of the undo stack is popped if the stack's size exceeds this value ensuring limited memory usage. The default stack size setting is 1024. Fixes #37838.
2020-04-29Remove unneccessary increment in TextEditTomasz Chabora
2020-04-28Rename InputFilter back to InputRémi Verschelde
It changed name as part of the DisplayServer and input refactoring in #37317, with the rationale that input no longer goes through the main loop, so the previous Input singleton now only does filtering. But the gains in consistency are quite limited in the renaming, and it breaks compatibility for all scripts and tutorials that access the Input singleton via the scripting language. A temporary option was suggested to keep the scripting singleton named `Input` even if its type is `InputFilter`, but that adds inconsistency and breaks C#. Fixes godotengine/godot-proposals#639. Fixes #37319. Fixes #37690.
2020-04-02Replace NULL with nullptrlupoDharkael
2020-03-27Renaming of servers for coherency.Juan Linietsky
VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
2020-03-26Add macOS DisplayServer implementation.bruvzg
Change global menu to use Callable, add support for check items and submenus.
2020-03-26Multiple changes to DisplayServerX11Mateo Kuruk Miccino
- Travis: Change x11 to linuxbsd - SCons: Change x11 plataform to linuxbsd - Plugins: Remove ; to avoid fallthrough warning - DisplayServerX11: Implement set_icon - DisplayServerX11: Fix X11 bug when a window was erased from windows map, all the changes from that erased windows are sending to the main window - DisplayServerX11: Reorder create_window commands - DisplayServerX11: Change every Size2 to Size2i and Rect2 to Rect2i where it belongs + More X11 fixes which have been integrated directly back into reduz's original commits while rebasing the branch.
2020-03-26Popups are now windows also (broken!)Juan Linietsky
2020-03-26Refactored input, goes all via windows now.Juan Linietsky
Also renamed Input to InputFilter because all it does is filter events.
2020-03-26Added a Window node, and made it the scene root.Juan Linietsky
Still a lot of work to do.
2020-03-26Effective DisplayServer separation, rename X11 -> LinuxBSDJuan Linietsky
2020-03-26Refactored Input, create DisplayServer and DisplayServerX11Juan Linietsky
2020-03-21Fix potential divisions by 0 reported by MSVCRémi Verschelde
The `TextEdit` one was indeed a potential bug. The `PCKPacker` one seems to be a false positive, it's already in a `for` loop that depends on `files.size()`.
2020-03-12Merge pull request #36518 from Janglee123/no-underlined-keywordsRémi Verschelde
Removed underlining of not clickable symbols
2020-03-11Removed underlining for not clickable symbolsjanglee
2020-03-11Merge pull request #36715 from dreamsComeTrue/fix-text-edit-comment-quotesRémi Verschelde
Allow single quotes [',"] in comments in TextEdit
2020-03-11Allow single quotes in commentsDominik 'dreamsComeTrue' Jasiński
Fixes: #36638
2020-03-01Merge pull request #18020 from bruvzg/input_fix_non_latin_and_add_hw_scancodesRémi Verschelde
Fix non-latin layout scancodes on Linux, adds access to physical scancodes.
2020-02-28Signals: Port connect calls to use callable_mpRémi Verschelde
Remove now unnecessary bindings of signal callbacks in the public API. There might be some false positives that need rebinding if they were meant to be public. No regular expressions were harmed in the making of this commit. (Nah, just kidding.)
2020-02-27Merge pull request #36232 from Calinou/add-soft-line-length-guidelineRémi Verschelde
Add a soft line length guideline to the script editor
2020-02-25Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.Juan Linietsky
- Renames PackedIntArray to PackedInt32Array. - Renames PackedFloatArray to PackedFloat32Array. - Adds PackedInt64Array and PackedFloat64Array. - Renames Variant::REAL to Variant::FLOAT for consistency. Packed arrays are for storing large amount of data and creating stuff like meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of memory. That said, many users requested the ability to have 64 bits packed arrays for their games, so this is just an optional added type. For Variant, the float datatype is always 64 bits, and exposed as `float`. We still have `real_t` which is the datatype that can change from 32 to 64 bits depending on a compile flag (not entirely working right now, but that's the idea). It affects math related datatypes and code only. Neither Variant nor PackedArray make use of real_t, which is only intended for math precision, so the term is removed from there to keep only float.
2020-02-25Rename `scancode` to `keycode`.bruvzg
Add `physical_keycode` (keyboard layout independent keycodes) to InputEventKey and InputMap. Fix non-latin keyboard layout keycodes on Linux/X11 (fallback to physical keycodes).
2020-02-23Merge pull request #36089 from dreamsComeTrue/fix-autocomplete-quotesRémi Verschelde
Fix: auto brace complete for quoted strings
2020-02-23Replace FALLTHROUGH macro by C++17 [[fallthrough]]Rémi Verschelde
This attribute is now part of the standard we target so we no longer need compiler-specific hacks. Also enables -Wimplicit-fallthrough for Clang now that we can properly support it. It's already on by default for GCC's -Wextra. Fixes new warnings raised by Clang's -Wimplicit-fallthrough.
2020-02-21Fix: auto brace complete for quoted stringsDominik 'dreamsComeTrue' Jasiński
Fixes #36002
2020-02-20Reworked signal connection system, added support for Callable and Signal ↵Juan Linietsky
objects and made them default.
2020-02-18PoolVector is gone, replaced by VectorJuan Linietsky
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
2020-02-15Add a soft line length guideline to the script editorHugo Locurcio
The default value is 80. The hard line length guideline's default column has been moved to 100 to account for the new soft line length guideline. It can be disabled by setting its value to the same column as the hard line length guideline. This closes https://github.com/godotengine/godot-proposals/issues/347.
2020-02-11Texture refactorJuan Linietsky
-Texture renamed to Texture2D -TextureLayered as base now inherits 2Darray, cubemap and cubemap array -Removed all references to flags in textures (they will go in the shader) -Texture3D gone for now (will come back later done properly) -Create base rasterizer for RenderDevice, RasterizerRD