File tree Expand file tree Collapse file tree 2 files changed +10
-1
lines changed
Expand file tree Collapse file tree 2 files changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -397,6 +397,7 @@ def compile(self, force_compile: bool = False):
397397 compiler .compile_theme (self .style )
398398
399399 # Compile the pages.
400+ self .state .set_handlers ()
400401 custom_components = set ()
401402 for route , component in self .pages .items ():
402403 component .add_style (self .style )
@@ -408,6 +409,7 @@ def compile(self, force_compile: bool = False):
408409 # Compile the custom components.
409410 compiler .compile_components (custom_components )
410411
412+ # To support calling event handlers from other handlers.
411413 self .state .convert_handlers_to_fns ()
412414
413415
Original file line number Diff line number Diff line change @@ -185,7 +185,8 @@ def __init_subclass__(cls, **kwargs):
185185 for name , fn in events .items ():
186186 event_handler = EventHandler (fn = fn )
187187 cls .event_handlers [name ] = event_handler
188- setattr (cls , name , event_handler )
188+
189+ cls .set_handlers ()
189190
190191 @classmethod
191192 def convert_handlers_to_fns (cls ):
@@ -196,6 +197,12 @@ def convert_handlers_to_fns(cls):
196197 for name , event_handler in cls .event_handlers .items ():
197198 setattr (cls , name , event_handler .fn )
198199
200+ @classmethod
201+ def set_handlers (cls ):
202+ """Set the state class handlers."""
203+ for name , event_handler in cls .event_handlers .items ():
204+ setattr (cls , name , event_handler )
205+
199206 @classmethod
200207 @functools .lru_cache ()
201208 def get_parent_state (cls ) -> Optional [Type [State ]]:
You can’t perform that action at this time.
0 commit comments