remove prevent from callback

This commit is contained in:
Will McGugan
2023-02-23 21:22:24 +00:00
parent 0894881950
commit 3231b7a8b8
3 changed files with 2 additions and 10 deletions

View File

@@ -32,10 +32,8 @@ class Callback(Event, bubble=False, verbose=True):
self,
sender: MessageTarget,
callback: Callable[[], Awaitable[None]],
prevent: set[type[Message]] | None = None,
) -> None:
self.callback = callback
self.prevent = frozenset(prevent) if prevent else None
super().__init__(sender)
def __rich_repr__(self) -> rich.repr.Result:

View File

@@ -631,11 +631,7 @@ class MessagePump(metaclass=MessagePumpMeta):
return self.post_message_no_wait(message)
async def on_callback(self, event: events.Callback) -> None:
if event.prevent:
with self.prevent(*event.prevent):
await invoke(event.callback)
else:
await invoke(event.callback)
await invoke(event.callback)
# TODO: Does dispatch_key belong on message pump?
async def dispatch_key(self, event: events.Key) -> bool:

View File

@@ -235,9 +235,7 @@ class Reactive(Generic[ReactiveType]):
# Result is awaitable, so we need to await it within an async context
obj.post_message_no_wait(
events.Callback(
sender=obj,
callback=partial(await_watcher, watch_result),
prevent=obj._prevent_message_types_stack[-1],
sender=obj, callback=partial(await_watcher, watch_result)
)
)