@@ -446,7 +446,7 @@ def __init__(self,
446446 def set_text (self , text : str | Callable [[], str ]):
447447 """Update the text content."""
448448 self ._text = text
449- self . _cached_text = None # Invalidate cache
449+ # No need to update cache here, will be done on next render if needed
450450
451451 @property
452452 def text (self ) -> str :
@@ -463,15 +463,17 @@ def set_color(self, color: rl.Color):
463463
464464 def set_font_size (self , size : int ):
465465 """Update the font size."""
466- self ._font_size = size
467- self ._spacing_pixels = size * self ._letter_spacing # Recalculate spacing
468- self ._cached_text = None # Invalidate cache
466+ if self ._font_size != size :
467+ self ._font_size = size
468+ self ._spacing_pixels = size * self ._letter_spacing # Recalculate spacing
469+ self ._cached_text = None # Invalidate cache
469470
470471 def set_letter_spacing (self , letter_spacing : float ):
471472 """Update letter spacing (as percentage, e.g., 0.1 = 10%)."""
472- self ._letter_spacing = letter_spacing
473- self ._spacing_pixels = self ._font_size * letter_spacing
474- self ._cached_text = None # Invalidate cache
473+ if self ._letter_spacing != letter_spacing :
474+ self ._letter_spacing = letter_spacing
475+ self ._spacing_pixels = self ._font_size * letter_spacing
476+ self ._cached_text = None # Invalidate cache
475477
476478 def set_font_weight (self , font_weight : FontWeight ):
477479 """Update the font weight."""
0 commit comments