João Matos
286b177205
Merge d6ed6cb5c2
into 89ce22e894
2025-05-31 22:57:39 +02:00
Boreal
89ce22e894
[Core] Fix sign comparison warning ( #427 )
2025-05-29 13:10:05 +10:00
Nic Barker
ce2475ba73
[Compilers] Add missing struct name for image element config
2025-05-26 10:10:24 +10:00
Johann Muszynski
34ff7e1bea
[Compilers] Add struct names to public structs ( #336 )
2025-05-26 10:03:07 +10:00
Simon Oelerich
efbd680685
[Core] restore compatibility with C99 ( #412 )
2025-05-14 13:29:12 +12:00
Patrick Doane
b656dc5253
[Core] Add Clay_FloatingClipToElement ( #413 )
2025-05-14 13:24:42 +12:00
João Matos
b78fd66da8
[Core] Add Clay_GetPointerOverIds
function to the public API. ( #389 )
2025-05-14 12:39:56 +12:00
João Matos
52759cd028
[Debug] Update Clay__RenderDebugLayoutSizing
to handle more sizing types. ( #392 )
2025-05-05 12:27:55 +12:00
Nic Barker
90b45f059c
[Core] Fix a bug with the implementation of clip .childOffset
2025-05-01 17:21:09 +12:00
Nic Barker
970919e1fb
[Core] Replace .scroll config with .clip ( #376 )
2025-05-01 14:11:31 +12:00
Nic Barker
a21b0665fe
[Core] Correctly throw an error when using attach to element id with an invalid id
2025-04-29 12:31:54 +12:00
tritao
d6ed6cb5c2
[Core] Add cascading property support for text element configs.
...
This change introduces an "inheritance" mechanism for all text-related
properties, enabling developers to define base styles once and have
child elements automatically pick up defaults unless explicitly
overridden, much like CSS’s cascade model.
By providing individual sentinel values (`CLAY_COLOR_INHERIT`,
`CLAY_TEXT_INHERIT_U16`, `CLAY_TEXT_WRAP_INHERIT`, and
`CLAY_TEXT_ALIGN_INHERIT`), or `CLAY_TEXT_CONFIG_INHERIT_ALL`, we can
now defer resolution of properties,
Backward compatibility is preserved: if no `_INHERIT` values are used,
behavior remains identical to previous versions.
Previously, Clay used the presence of `CLAY__ELEMENT_CONFIG_TYPE_TEXT`
in `Clay_LayoutElement.elementConfigs` to distinguish between a text and
non-text element. This is not possible to use anymore, since parent
non-text elements may have a `CLAY__ELEMENT_CONFIG_TYPE_TEXT` with text
properties.
I introduced a `hasTextElementData`, but I can understand if this design
is considered to not be acceptable due to the higher memory usage in
this core struct, perhaps in alternative a new
`CLAY__ELEMENT_CONFIG_TYPE_TEXT_STRING` element config can be
introduced?
2025-04-24 19:10:33 +01:00
Nic Barker
b33ba4ff62
[Core] Fix a string hash bug with single characters ( #384 )
2025-04-16 20:16:05 +12:00
Nic Barker
06167b4f4b
[Core] Fix a potential null pointer deref in scroll GetScrollContainerData
2025-04-12 11:27:10 +12:00
Nic Barker
a9e94e3be0
[Core] Fix onHover reference not being reset for identical IDs between frames
2025-04-04 13:05:31 +13:00
Nic Barker
50aad568fa
[Core] Remove unused variable in arm simd and inline rotate function'
2025-04-01 10:43:11 +13:00
Nic Barker
b4dc02c73a
[Core] Fix a bug with how element string ids were stored when using Clay_Hovered
2025-04-01 10:40:04 +13:00
Nic Barker
1204ac400b
[Compilers] Fix implicit typecast in simd hash function
2025-03-28 11:52:20 +13:00
Nic Barker
6a7ce77024
[Core] Fix implicit simd typecast on arm architectures
2025-03-28 11:47:57 +13:00
Piggybank Studios
7c9506bc31
[Core] Fix CLAY__ELEMENT_DEFINITION_LATCH overflow in CLAY macro if 256 loops end at the same time
2025-03-27 10:14:17 +13:00
Nic Barker
08e4c5b198
[Core] Fix a bug where ID aliases werent copied on hash collision
2025-03-26 09:35:15 +13:00
Igor Karatayev
aee4baee1c
[Core] Guard against hashmap item null dereference ( #338 )
2025-03-26 09:19:50 +13:00
Nic Barker
47d1d84bc8
[Core] Switch text content hashing to default behaviour ( #335 )
2025-03-25 10:13:04 +13:00
Nic Barker
ad49977f1b
[Core] Apply minimum width for single words and fix some minimum sizing bugs
2025-03-21 11:22:48 +13:00
Nic Barker
982ade4cf9
[Compilers] Add a dummy function to suppress unused variable warning in GCC
2025-03-18 11:21:23 +13:00
Nic Barker
1f8cab8d72
[Core] Fix a bug where floating elements could be clipped incorrectly
2025-03-18 11:05:06 +13:00
Nic Barker
39fdd0e906
[Compilers] Fix integer truncation warnings with explicit casts
2025-03-13 09:40:31 +13:00
Nic Barker
c06e01c1af
Merge pull request #319 from emoon/pass-declaration-by-pointer
...
Support passing declaration by pointer as well
2025-03-11 09:39:40 +13:00
Nic Barker
fabdad43f6
[Documentation] Update internal version number to 0.13 in clay.h
2025-03-10 14:39:18 +13:00
Daniel Collin
19a27b39f2
[Compilers] Fixed SIMD related compile error on some ARM compilers ( #316 )
2025-03-09 10:28:09 +13:00
Daniel Collin
33b8e76903
Support passing declaration by pointer as well
2025-03-08 15:17:36 +01:00
Johann Muszynski
ad4d00be33
Fix integer truncation warnings with explicit casts
2025-03-08 14:53:30 +02:00
Michael Savage
8e6640f7a2
[Core] Add a userData pointer to Clay_TextElementConfig ( #274 )
2025-03-08 11:01:26 +13:00
Ethan McCue
4f8957d5d2
[Documentation] Fix typo ( #315 )
2025-03-07 21:45:27 +13:00
Nic Barker
02bce89d17
[Core] Improve & streamline grow / shrink handling ( #296 )
2025-03-04 10:56:38 +13:00
FintasticMan
b5b086af13
[Macros] Add versions of the CLAY_ID macros that take Clay_String ( #285 )
2025-03-04 10:30:53 +13:00
Nic Barker
5571c00a21
[Core] Convert capacity from uint32_t to size_t in Clay_CreateArenaWithCapacityAndMemory
2025-03-03 11:36:12 +13:00
Joram Vandemoortele
4ee501019c
[Compilers] Added DLL macro to support .dll building ( #278 )
2025-02-26 15:37:51 +13:00
Nic Barker
1fa8684e47
[Core] Fix bug where hover state didnt take clip rectangles into account
2025-02-25 08:55:14 +13:00
mizmar
766325c395
[Core] Fix inverted condition for setting booleanWarnings.maxTextMeasureCacheExceeded ( #275 )
2025-02-20 09:22:35 +13:00
Alex Pedley
5afdf3f8c9
[Core] Make fakeContext use correct value from currentContext ( #269 )
2025-02-20 09:21:14 +13:00
Nic Barker
a60b977946
[Core] Fix a bug where floating elements would be incorrectly configured
2025-02-18 09:41:06 +13:00
Nic Barker
d9e02ab1d3
[Core] Fix aspect ratio scaling of images when only one sizing axis was specified
2025-02-14 10:05:16 +13:00
Nic Barker
e35bba079e
[Core] Update debug tools to include text alignment
2025-02-12 13:05:48 +13:00
Nic Barker
82ca328ae2
[Core] Add .textAlignment field to text element config
2025-02-12 10:43:32 +13:00
Nic Barker
72af2a4020
[Compilers] Fix missing initializer warnings under -Wextra
2025-02-12 09:12:11 +13:00
Nic Barker
3961720ef0
[Core & Documentation] Cleanup public / private API and internal document public API via comments
2025-02-11 17:11:03 +13:00
Nic Barker
dd1f018444
[Documentation] Add inline documentation comments for subfields of Clay_ElementDeclaration
2025-02-11 14:14:55 +13:00
Harrison Lambeth
3030390038
Define CLAY_IMPLEMENTATION in Jetbrains IDE ( #236 )
2025-02-11 10:11:42 +13:00
Nic Barker
92582f66d8
[DebugTools] Fix a bug with display of border widths in debug tools
2025-02-11 10:11:15 +13:00