mirror of
https://github.com/aclist/dztui.git
synced 2026-10-25 12:12:31 +01:00
fix: reset time on subsequent invocations
This commit is contained in:
1 parent
fef8c69f38
commit
eb5d5d5181
2 files changed
+9
-4
No files matched your search
@@ -231,10 +231,13 @@ class RemainderClock:
|
||||
self.emitter = emitter
|
||||
self.emitter.connect("target_time_changed", self._on_target_time_changed)
|
||||
self.emitter.connect("local_time_incremented", self._on_local_time_incremented)
|
||||
self.time = datetime.combine(datetime.now(), time(hour=0, minute=0, second=0))
|
||||
self.reset_time()
|
||||
|
||||
self.previous = timedelta(0)
|
||||
|
||||
def reset_time(self) -> None:
|
||||
self.time = datetime.combine(datetime.now(), time(hour=0, minute=0, second=0))
|
||||
|
||||
def _on_local_time_incremented(
|
||||
self, emitter: Emitter, time: datetime, elapsed: timedelta
|
||||
) -> None:
|
||||
@@ -250,6 +253,7 @@ class RemainderClock:
|
||||
self.emitter.emit("remaining_time_changed", self.time)
|
||||
|
||||
def _on_target_time_changed(self, emitter: Emitter, time: timedelta) -> None:
|
||||
self.reset_time()
|
||||
self.time += time
|
||||
self.emitter.emit("remaining_time_changed", self.time)
|
||||
|
||||
|
||||
@@ -91,7 +91,6 @@ class ServerDetailsDialog(ServerDialog):
|
||||
column.set_sort_column_id(i)
|
||||
column.set_expand(True)
|
||||
|
||||
|
||||
scrollable_message = Gtk.ScrolledWindow(vexpand=True)
|
||||
desc = Gtk.Label(label=dialogs.server_message, valign=Gtk.Align.START)
|
||||
css.add_class(desc, "server-subheading")
|
||||
@@ -119,14 +118,16 @@ class ServerDetailsDialog(ServerDialog):
|
||||
self.content.reorder_child(calc_button, 2)
|
||||
|
||||
self.scrollable_tree.set_size_request(700, 250)
|
||||
self.calc = ServerTimeCalculator(Time(details.gametime, details.day_accel, details.night_accel))
|
||||
self.calc = ServerTimeCalculator(
|
||||
Time(details.gametime, details.day_accel, details.night_accel)
|
||||
)
|
||||
self.stack.add_named(self.calc, "CALCULATOR")
|
||||
|
||||
self.connect("map", self._on_map)
|
||||
self.show_all()
|
||||
|
||||
def _on_map(self, dialog: Self) -> None:
|
||||
if (widget := self.get_widget_for_response(Gtk.ResponseType.OK)):
|
||||
if widget := self.get_widget_for_response(Gtk.ResponseType.OK):
|
||||
widget.grab_focus()
|
||||
|
||||
def _on_calc_pressed(self, button: Gtk.Button) -> None:
|
||||
|
||||
Reference in new issue
Block a user