diff options
author | Cole Robinson <crobinso@redhat.com> | 2019-04-13 14:52:17 -0400 |
---|---|---|
committer | Cole Robinson <crobinso@redhat.com> | 2019-04-14 17:05:14 -0400 |
commit | de773179ef86b39f7f859cedbb8fdb5f36255b87 (patch) | |
tree | 7aa036e140ec12a279d9f13c7ff3ec8bd2763f39 /virtManager/host.py | |
parent | 3784864e10029b6d2a211526098934b4ba89b818 (diff) | |
download | virt-manager-de773179ef86b39f7f859cedbb8fdb5f36255b87.tar.gz |
host: Remember window dimensions
Like we do for details and manager windows, save window size in
gsettings and remember it across app runs
Diffstat (limited to 'virtManager/host.py')
-rw-r--r-- | virtManager/host.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/virtManager/host.py b/virtManager/host.py index 4279f209..b2ffca87 100644 --- a/virtManager/host.py +++ b/virtManager/host.py @@ -51,6 +51,15 @@ class vmmHost(vmmGObjectUI): self.ICON_RUNNING = "state_running" self.ICON_SHUTOFF = "state_shutoff" + # Set default window size + w, h = self.conn.get_details_window_size() + if w <= 0: + w = 800 + if h <= 0: + h = 600 + self.topwin.set_default_size(w, h) + self._window_size = None + self.addnet = None self.active_edits = [] @@ -68,6 +77,7 @@ class vmmHost(vmmGObjectUI): "on_menu_file_quit_activate": self.exit_app, "on_menu_file_close_activate": self.close, "on_vmm_host_delete_event": self.close, + "on_vmm_host_configure_event": self._window_resized_cb, "on_host_page_switch": self.page_changed, "on_net_add_clicked": self.add_network, @@ -195,6 +205,9 @@ class vmmHost(vmmGObjectUI): return 1 def _cleanup(self): + if self._window_size: + self.conn.set_details_window_size(*self._window_size) + self.conn = None self.storagelist.cleanup() @@ -217,6 +230,11 @@ class vmmHost(vmmGObjectUI): def exit_app(self, _src): vmmEngine.get_instance().exit_app() + def _window_resized_cb(self, ignore, ignore2): + if not self.is_visible(): + return + self._window_size = self.topwin.get_size() + def page_changed(self, src, child, pagenum): ignore = src |