Skip to content

Commit 85ce6e9

Browse files
committed
startup optimizations
1 parent f43556f commit 85ce6e9

File tree

3 files changed

+10
-8
lines changed

3 files changed

+10
-8
lines changed

src/textual/app.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -791,8 +791,8 @@ def __init__(
791791
perform work after the app has resumed.
792792
"""
793793

794-
self.set_class(self.current_theme.dark, "-dark-mode")
795-
self.set_class(not self.current_theme.dark, "-light-mode")
794+
self.set_class(self.current_theme.dark, "-dark-mode", update=False)
795+
self.set_class(not self.current_theme.dark, "-light-mode", update=False)
796796

797797
self.animation_level: AnimationLevel = constants.TEXTUAL_ANIMATIONS
798798
"""Determines what type of animations the app will display.

src/textual/dom.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1684,9 +1684,9 @@ def set_class(self, add: bool, *class_names: str, update: bool = True) -> Self:
16841684
Self.
16851685
"""
16861686
if add:
1687-
self.add_class(*class_names, update=update and self.is_attached)
1687+
self.add_class(*class_names, update=update)
16881688
else:
1689-
self.remove_class(*class_names, update=update and self.is_attached)
1689+
self.remove_class(*class_names, update=update)
16901690
return self
16911691

16921692
def set_classes(self, classes: str | Iterable[str]) -> Self:

src/textual/screen.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1325,6 +1325,7 @@ def _on_screen_resume(self) -> None:
13251325
"""Screen has resumed."""
13261326
if self.app.SUSPENDED_SCREEN_CLASS:
13271327
self.remove_class(self.app.SUSPENDED_SCREEN_CLASS)
1328+
13281329
self.stack_updates += 1
13291330
self.app._refresh_notifications()
13301331
size = self.app.size
@@ -1340,10 +1341,11 @@ def _on_screen_resume(self) -> None:
13401341
self.set_focus(widget)
13411342
break
13421343

1343-
self._compositor_refresh()
1344-
self.app.stylesheet.update(self)
1345-
self._refresh_layout(size)
1346-
self.refresh()
1344+
if self.is_attached:
1345+
self._compositor_refresh()
1346+
self.app.stylesheet.update(self)
1347+
self._refresh_layout(size)
1348+
self.refresh()
13471349

13481350
def _on_screen_suspend(self) -> None:
13491351
"""Screen has suspended."""

0 commit comments

Comments
 (0)