mirror of
https://github.com/aclist/dztui.git
synced 2026-10-30 14:42:54 +01:00
change: use Gtk.present_window_with_time()
This commit is contained in:
1 parent
866c88fbb0
commit
fb62fe285d
6 files changed
+11
-20
No files matched your search
@@ -17,4 +17,3 @@ class UserPrefs:
|
|||||||
allow_updates: bool
|
allow_updates: bool
|
||||||
paths: "Xdg"
|
paths: "Xdg"
|
||||||
use_miles: bool
|
use_miles: bool
|
||||||
foreground_cmd: str | None
|
|
||||||
@@ -497,3 +497,6 @@ class Controller(GObject.GObject):
|
|||||||
|
|
||||||
def get_steam_client_name(self) -> str:
|
def get_steam_client_name(self) -> str:
|
||||||
return self.mediator.options.get_client_name()
|
return self.mediator.options.get_client_name()
|
||||||
|
|
||||||
|
def present_window(self) -> None:
|
||||||
|
self.mediator.window.present_with_time(Gdk.CURRENT_TIME)
|
||||||
@@ -60,6 +60,7 @@ def has_cmd(cmd: str) -> bool:
|
|||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
||||||
|
@deprecated("dropped in favor of Gtk native methods")
|
||||||
def foreground(cmd: str, pid: int) -> None:
|
def foreground(cmd: str, pid: int) -> None:
|
||||||
if cmd == "wmctrl":
|
if cmd == "wmctrl":
|
||||||
proc = subprocess.run(["wmctrl", "-ilp"], capture_output=True, text=True)
|
proc = subprocess.run(["wmctrl", "-ilp"], capture_output=True, text=True)
|
||||||
|
|||||||
+1
-8
@@ -7,7 +7,7 @@ import warnings
|
|||||||
from typing import TYPE_CHECKING
|
from typing import TYPE_CHECKING
|
||||||
|
|
||||||
from dzgui.api.mods import remove_stale_signatures
|
from dzgui.api.mods import remove_stale_signatures
|
||||||
from dzgui.const.constants import APP_NAME, FOREGROUND_CMDS
|
from dzgui.const.constants import APP_NAME
|
||||||
from dzgui.const.enum import Preferences
|
from dzgui.const.enum import Preferences
|
||||||
from dzgui.config.ipdb import get_ipdb
|
from dzgui.config.ipdb import get_ipdb
|
||||||
from dzgui.config.query import lookup
|
from dzgui.config.query import lookup
|
||||||
@@ -142,12 +142,6 @@ def main() -> None:
|
|||||||
local_coords = get_local_coords(XDG.ips)
|
local_coords = get_local_coords(XDG.ips)
|
||||||
use_miles = lookup(XDG.config, Preferences.DIST)
|
use_miles = lookup(XDG.config, Preferences.DIST)
|
||||||
|
|
||||||
tool = None
|
|
||||||
for cmd in FOREGROUND_CMDS:
|
|
||||||
if has_cmd(cmd) is True:
|
|
||||||
tool = cmd
|
|
||||||
break
|
|
||||||
|
|
||||||
prefs = UserPrefs(
|
prefs = UserPrefs(
|
||||||
is_steam_deck=_is_steam_deck,
|
is_steam_deck=_is_steam_deck,
|
||||||
is_game_mode=_is_game_mode,
|
is_game_mode=_is_game_mode,
|
||||||
@@ -157,7 +151,6 @@ def main() -> None:
|
|||||||
allow_updates=allow,
|
allow_updates=allow,
|
||||||
paths=XDG,
|
paths=XDG,
|
||||||
use_miles=use_miles,
|
use_miles=use_miles,
|
||||||
foreground_cmd=tool,
|
|
||||||
)
|
)
|
||||||
# TODO: drop allow updates
|
# TODO: drop allow updates
|
||||||
print(boot.all_ok)
|
print(boot.all_ok)
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ from dzgui.const.constants import (
|
|||||||
APPNAME_DAYZ_EXP,
|
APPNAME_DAYZ_EXP,
|
||||||
)
|
)
|
||||||
from dzgui.const.enum import NotebookPage, Preferences
|
from dzgui.const.enum import NotebookPage, Preferences
|
||||||
from dzgui.init.proc import foreground, is_dayz_running, is_steam_running
|
from dzgui.init.proc import is_dayz_running, is_steam_running
|
||||||
from dzgui.managers.threading import call_on_thread, StoredFunc, ThreadingManager
|
from dzgui.managers.threading import call_on_thread, StoredFunc, ThreadingManager
|
||||||
from dzgui.strings.dialogs import waiting_for_launch, waiting_for_mods
|
from dzgui.strings.dialogs import waiting_for_launch, waiting_for_mods
|
||||||
from dzgui.strings.server_mods import checkmark, resync
|
from dzgui.strings.server_mods import checkmark, resync
|
||||||
@@ -74,7 +74,6 @@ class Prerequisites:
|
|||||||
dayz_running: bool
|
dayz_running: bool
|
||||||
steam_proc: SteamProcess
|
steam_proc: SteamProcess
|
||||||
mods: list[list[str]]
|
mods: list[list[str]]
|
||||||
foreground_cmd: str | None
|
|
||||||
game_mode: bool
|
game_mode: bool
|
||||||
|
|
||||||
|
|
||||||
@@ -167,7 +166,6 @@ class ConnectionManager:
|
|||||||
running = is_steam_running(client)
|
running = is_steam_running(client)
|
||||||
steam_proc = SteamProcess(client_name, running)
|
steam_proc = SteamProcess(client_name, running)
|
||||||
|
|
||||||
self.foreground_cmd = prefs.foreground_cmd
|
|
||||||
game_mode = prefs.is_game_mode
|
game_mode = prefs.is_game_mode
|
||||||
|
|
||||||
prereqs = Prerequisites(
|
prereqs = Prerequisites(
|
||||||
@@ -183,7 +181,6 @@ class ConnectionManager:
|
|||||||
dayz_running=dayz_running,
|
dayz_running=dayz_running,
|
||||||
steam_proc=steam_proc,
|
steam_proc=steam_proc,
|
||||||
mods=remote_mods,
|
mods=remote_mods,
|
||||||
foreground_cmd=self.foreground_cmd, # TODO: change to bool
|
|
||||||
game_mode=game_mode,
|
game_mode=game_mode,
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -281,10 +278,9 @@ class ConnectionManager:
|
|||||||
enqueue_mod(mod, self.appid)
|
enqueue_mod(mod, self.appid)
|
||||||
time.sleep(2)
|
time.sleep(2)
|
||||||
|
|
||||||
if self.foreground_cmd is not None and raise_window is True:
|
if raise_window is True:
|
||||||
pid = os.getpid()
|
logger.info(f"Bringing window to foreground")
|
||||||
logger.info(f"Raising window with '{self.foreground_cmd}'")
|
GLib.idle_add(self.controller.present_window)
|
||||||
foreground(self.foreground_cmd, pid)
|
|
||||||
|
|
||||||
for title, mod, stamp, size in self.missing_mods:
|
for title, mod, stamp, size in self.missing_mods:
|
||||||
mod_path = self.workshop / mod
|
mod_path = self.workshop / mod
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ class PreConnectionAssistant(Gtk.ScrolledWindow):
|
|||||||
visible=False,
|
visible=False,
|
||||||
has_tooltip=True,
|
has_tooltip=True,
|
||||||
sensitive=False,
|
sensitive=False,
|
||||||
tooltip_text="This option is available if wmctrl or xdotool is installed on the system",
|
tooltip_text="Foreground the DZGUI window after mod downloads are queued",
|
||||||
active=True,
|
active=True,
|
||||||
)
|
)
|
||||||
self.button_box = Gtk.Box(
|
self.button_box = Gtk.Box(
|
||||||
@@ -303,8 +303,7 @@ class PreConnectionAssistant(Gtk.ScrolledWindow):
|
|||||||
self.raise_window.set_visible(False)
|
self.raise_window.set_visible(False)
|
||||||
else:
|
else:
|
||||||
self.raise_window.set_visible(True)
|
self.raise_window.set_visible(True)
|
||||||
if prereqs.foreground_cmd is not None:
|
self.raise_window.set_sensitive(True)
|
||||||
self.raise_window.set_sensitive(True)
|
|
||||||
|
|
||||||
pretty = number(prereqs.required_space)
|
pretty = number(prereqs.required_space)
|
||||||
suffix = f" Need to download {pretty} MiB of mod updates."
|
suffix = f" Need to download {pretty} MiB of mod updates."
|
||||||
|
|||||||
Reference in new issue
Block a user