Commit Graph

1400 Commits

Author SHA1 Message Date
Thaddeus Crews 42e4ec1c38 Merge pull request #118651 from StarryWorm/fix-tabbar-label-max-width
Fix `TabBar` and `Label` being unable to shrink when given a maximum size
2026-05-07 16:22:27 -05:00
StarryWorm 05737cd449 Add "desired size" to Control
A `Control` can define `get_desired_size()` which allows it to grow based on its content without increasing its minimum size.
This new size will be respected by parent `Container`s.
Currently used by `Label` and `TabBar`.
2026-05-07 13:01:02 -04:00
Thaddeus Crews f46fad2974 Merge pull request #119261 from calbebop/test-texture-button
Add unit tests for `TextureButton`
2026-05-07 11:13:28 -05:00
Thaddeus Crews 864bad2705 Merge pull request #119264 from calbebop/add-spin-box-unit-tests
Add unit tests for `SpinBox`
2026-05-06 14:56:34 -05:00
CalBebop 7768e8ca06 Add unit tests for SpinBox 2026-05-06 12:43:38 -05:00
CalBebop 95811f6286 Add unit tests for ReferenceRect 2026-05-05 17:19:24 -05:00
CalBebop 0df87711d2 Add unit tests for TextureButton 2026-05-05 13:13:15 -05:00
Thaddeus Crews 771d727bea Merge pull request #119132 from calbebop/test-texture-rect
Add unit tests for `TextureRect`
2026-05-04 12:40:36 -05:00
CalBebop a969d1bf5a Add unit tests for NinePatchRect 2026-05-01 12:42:57 -05:00
CalBebop 2e88d139b5 Add unit tests for TextureRect 2026-04-30 18:52:15 -05:00
bucket 9e674ece11 fix shortened ipv6 parsing 2026-04-21 15:18:46 +02:00
Thaddeus Crews 925fbbc5c4 Style: Migrate root images to misc/logo/ 2026-04-19 14:11:51 -05:00
Thaddeus Crews 1aabcb9e9b Merge pull request #118306 from StarryWorm/text-edit-max-size
Make `TextEdit`'s `scroll_fit_content_*` properties work properly with maximum sizes
2026-04-10 10:32:44 -05:00
Aaron Franke cfded120ae Move visual shaders to a module 2026-04-08 12:05:22 -07:00
StarryWorm 747c3deeb5 TextEdit::scroll_fit_content_* is now maximum size aware
If `Control::get_combined_maximum_size()` returns a size smaller than `get_minimum_size()` in the target axis, scrollbars are shown.
2026-04-08 08:36:53 -04:00
Thaddeus Crews b903c1070a Merge pull request #118232 from StarryWorm/container-tests
Add tests for Container nodes
2026-04-07 18:21:43 -05:00
Thaddeus Crews 266e8f715a Merge pull request #116640 from StarryWorm/max_size
Add `custom_maximum_size` property to `Control`
2026-04-07 18:21:42 -05:00
Thaddeus Crews ad46310dd5 Merge pull request #114556 from jgill88/gh-11698
Add ping-pong playback support to SpriteFrames / AnimatedSprite2D / AnimatedSprite3D
2026-04-07 18:21:36 -05:00
StarryWorm d69e34bb20 Allow Label and RichTextLabel to use the new custom_maximum_size
These will be able to use `custom_maximum_size` for autowrapping and trimming, reflecting expected behavior.
2026-04-07 14:34:13 -04:00
StarryWorm bdca8b66e7 Add custom_maximum_size to Control
This property mirrors `custom_minimum_size` and enables the user to set a size the `Control`. Enabling `propagate_maximum_size` forces all children to respect this node's maximum_size.
Not all `Control` types handle this gracefully, which may result in content clipping.
2026-04-07 14:34:12 -04:00
StarryWorm 039d474aa7 Add tests for Container nodes 2026-04-05 17:50:14 -04:00
StarryWorm 3778da1f36 Modernize create_test.py 2026-04-05 13:09:51 -04:00
StarryWorm a88418e2ae Fix CI errors 2026-04-02 15:04:02 -04:00
Thaddeus Crews 2e56f4ee53 Merge pull request #116798 from bruvzg/tests_rs
[Tests] Always init message queue and rendering server.
2026-03-30 13:35:39 -05:00
StarryWorm 4ae336740d Add missing resource_*.h includes
Add missing `resource_importer.h` includes
Add missing `resource_loader.h` includes
Add missing `resource_saver.h` includes
2026-03-27 07:03:39 -04:00
Josh Gill d4d8b781be Add ping-pong playback support to SpriteFrames / AnimatedSprite2D / AnimatedSprite3D 2026-03-23 22:32:29 -07:00
Adriano Sudário fd8d310d2a Add unit tests for StyleBoxEmpty and StyleBoxLine
Add unit tests for StyleBoxEmpty and StyleBoxLine
2026-03-23 16:30:29 -03:00
Lukas Tenbrink 05c33acbb1 Make memnew(RefCounted) return Ref, to force callers to take ownership of it through a reference. 2026-03-18 20:34:08 +01:00
Thaddeus Crews 4e7fefbf62 Merge pull request #117474 from Ivorforce/gdtype-signals
Move signal ownership from `ClassDB` to `GDType`
2026-03-18 11:43:30 -05:00
Rémi Verschelde 98868393cc Style: Enforce #include validation hook 2026-03-18 10:41:59 +01:00
Rémi Verschelde e33e98a26f Style: Apply clang-format grouping rules 2026-03-17 20:11:01 +01:00
Lukas Tenbrink 7a73d3f16b Move signal ownership from ClassDB to GDType. 2026-03-17 11:58:10 +01:00
Rémi Verschelde 7795057e4b Misc includes or modernize fixes found via clangd-tidy 2026-03-16 21:38:26 +01:00
Thaddeus Crews 40184ac402 Merge pull request #106867 from Ivorforce/cowdata-sanitize
Poison `CowData` pointer during destruction in sanitizer builds.
2026-03-16 11:33:01 -05:00
Rémi Verschelde d9b81615e5 Remove unused includes in platform with clangd-tidy
Handled Linux, Windows, Android, and (partially) Web.
2026-03-14 22:37:05 +01:00
Rémi Verschelde 96436e33f9 Merge pull request #117277 from Ryan-000/ryan-opt-tree
Optimize AnimationTree, Improve internals & Editor & `Node::process_thread_group` safety
2026-03-14 12:16:19 +01:00
Rémi Verschelde 422be7031a Merge pull request #113586 from Ivorforce/gdtype-noms-enums
Move enum registration from `ClassDB` / `ClassInfo` to `GDType`.
2026-03-14 12:15:44 +01:00
Ryan 1a5d818ea9 Optimize AnimationTree & Improve internals
Apply suggestions from code review

Co-Authored-By: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-Authored-By: Silc Lizard (Tokage) Renew <tokage.it.lab@gmail.com>
2026-03-14 02:24:21 -04:00
Lukas Tenbrink 56f44c077d Poison CowData pointer during destruction in sanitizer builds. 2026-03-13 20:27:49 +01:00
Lukas Tenbrink efcc97ee8a Move enum registration from ClassDB / ClassInfo to GDType.
Create caches across supertypes for faster lookup.
2026-03-13 19:20:30 +01:00
Goldenlion5648 c6b70a71e5 make caret at end of word work for lookup 2026-03-11 15:50:28 -04:00
Rémi Verschelde e015e8bde4 Remove unused includes in core with clangd-tidy 2026-03-11 06:41:36 +01:00
Rémi Verschelde 18edfa5245 Explicitly include scene_tree.h where used
Pre-requisite before removing `scene_tree.h` from `node.h`
which has cascading consequences on most of the codebase.
2026-03-05 10:43:25 +01:00
StarryWorm 3cb2d376f8 Get rid of all unnecessary class_db.h includers 2026-03-04 17:40:05 -05:00
Rémi Verschelde eabb9a63d4 Rename callable_method_pointer.h to callable_mp.h and include it explicitly
This allows removing it from `class_db.h`, significantly reducing the amount of files
that include it transitively.

Also includes some include cleanup in `control.h` and `rich_text_label.h` done while
ensure they don't depend on `callable_mp`.
2026-03-04 16:23:23 +01:00
Rémi Verschelde 765362b033 Explicitly include core/config/engine.h where used 2026-03-04 10:17:10 +01:00
Rémi Verschelde f332faf46b Explicitly include core/os/os.h where used 2026-03-04 09:54:10 +01:00
Rémi Verschelde a447ac95ec Move DisplayServer enums and typedefs to DisplayServerEnums
This will allow decoupling `display_server.h` from a number of headers in the
codebase which only require those enums and not all the DisplayServer API.
2026-03-03 12:44:02 +01:00
Pāvels Nadtočajevs 1306221592 Move accessibility methods/enums from DisplayServer to the AccessibilityServer dedicated singleton. 2026-03-02 13:48:29 +02:00
StarryWorm 357fa00a4a rm class_db.h from resource.h 2026-02-27 19:08:29 -05:00