layout: fix issues

This commit is contained in:
alfrix 2023-10-13 20:47:20 -03:00
parent ff84b1aa97
commit 6f32cdacbe
8 changed files with 21 additions and 20 deletions

View File

@ -211,11 +211,13 @@ class KlippyGtk:
def Dialog(self, title, buttons, content, callback=None, *args):
dialog = Gtk.Dialog(title=title)
dialog.set_default_size(self.width, self.height)
dialog.set_resizable(False)
dialog.set_transient_for(self.screen)
dialog.set_modal(True)
if not self.screen.windowed:
if self.screen.windowed:
dialog.set_default_size(self.width, self.height)
else:
logging.info("Dialog fullscreen")
dialog.fullscreen()
for button in buttons:
@ -277,9 +279,8 @@ class KlippyGtk:
return b
def ScrolledWindow(self, steppers=True):
scroll = Gtk.ScrolledWindow()
scroll = Gtk.ScrolledWindow(vexpand=True)
scroll.set_property("overlay-scrolling", False)
scroll.set_vexpand(True)
scroll.add_events(Gdk.EventMask.BUTTON_PRESS_MASK |
Gdk.EventMask.TOUCH_MASK |
Gdk.EventMask.BUTTON_RELEASE_MASK)

View File

@ -315,6 +315,7 @@ class BasePanel(ScreenPanel):
self.labels['update_progress'].set_valign(Gtk.Align.START)
self.labels['update_progress'].set_ellipsize(Pango.EllipsizeMode.END)
self.labels['update_scroll'] = self._gtk.ScrolledWindow(steppers=False)
self.labels['update_scroll'].set_size_request(self._gtk.width - 30, self._gtk.height * .6)
self.labels['update_scroll'].set_property("overlay-scrolling", True)
self.labels['update_scroll'].add(self.labels['update_progress'])
self.labels['update_scroll'].connect("size-allocate", self._autoscroll)

View File

@ -52,7 +52,7 @@ class Panel(ScreenPanel):
if self._screen.vertical_mode:
grid.attach(self.labels['map'], 0, 2, 2, 1)
grid.attach(scroll, 0, 3, 2, 1)
self.labels['map'].set_size_request(self._gtk.content_width, self._gtk.content_height * .4)
self.labels['map'].set_size_request(self._gtk.content_width - 30, self._gtk.content_height * .4)
else:
grid.attach(self.labels['map'], 0, 2, 1, 1)
grid.attach(scroll, 1, 2, 1, 1)

View File

@ -40,14 +40,14 @@ class Panel(ScreenPanel):
if self._screen.vertical_mode:
grid.attach(self.labels['map'], 0, 2, 2, 1)
grid.attach(scroll, 0, 3, 2, 1)
scroll.set_size_request(self._gtk.content_width, -1)
scroll.set_size_request(self._gtk.content_width - 30, -1)
else:
grid.attach(self.labels['map'], 0, 2, 1, 1)
grid.attach(scroll, 1, 2, 1, 1)
scroll.set_size_request((self._screen.width * .9) // 2, -1)
scroll.set_size_request((self._screen.width - 30) // 2, -1)
else:
grid.attach(scroll, 0, 2, 2, 1)
scroll.set_size_request(self._gtk.content_width, -1)
scroll.set_size_request(self._gtk.content_width - 30, -1)
self.content.add(grid)
self.content.show_all()

View File

@ -117,7 +117,7 @@ class Panel(ScreenPanel):
filament_sensors = self._printer.get_filament_sensors()
sensors = Gtk.Grid()
sensors.set_size_request(self._gtk.content_width, -1)
sensors.set_size_request(self._gtk.content_width - 30, -1)
if len(filament_sensors) > 0:
sensors.set_column_spacing(5)
sensors.set_row_spacing(5)

View File

@ -36,7 +36,7 @@ class Panel(ScreenPanel):
self.labels['actions'].set_vexpand(False)
self.labels['actions'].set_halign(Gtk.Align.CENTER)
self.labels['actions'].set_homogeneous(True)
self.labels['actions'].set_size_request(self._gtk.content_width, -1)
self.labels['actions'].set_size_request(self._gtk.content_width - 30, -1)
scroll = self._gtk.ScrolledWindow()
scroll.set_hexpand(True)

View File

@ -59,9 +59,7 @@ class Panel(ScreenPanel):
items = sorted(list(vi))
i = 0
for prog in items:
self.labels[prog] = Gtk.Label()
self.labels[prog].set_hexpand(True)
self.labels[prog].set_halign(Gtk.Align.START)
self.labels[prog] = Gtk.Label(hexpand=True, halign=Gtk.Align.START, ellipsize=Pango.EllipsizeMode.END)
self.labels[f"{prog}_status"] = self._gtk.Button()
self.labels[f"{prog}_status"].set_hexpand(False)
@ -121,6 +119,7 @@ class Panel(ScreenPanel):
info = self.update_status['version_info'][program] if program in self.update_status['version_info'] else {}
scroll = self._gtk.ScrolledWindow(steppers=False)
scroll.set_size_request(self._gtk.width - 30, self._gtk.height * .6)
scroll.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC)
vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)

View File

@ -365,29 +365,29 @@ class KlipperScreen(Gtk.Window):
title = Gtk.Label()
title.set_markup(f"<b>{err}</b>\n")
title.set_line_wrap(True)
title.set_line_wrap_mode(Pango.WrapMode.CHAR)
title.set_halign(Gtk.Align.START)
title.set_hexpand(True)
version = Gtk.Label(label=f"{self.version}")
version.set_halign(Gtk.Align.END)
message = Gtk.Label(label=f"{e}")
help_msg = _("Provide KlipperScreen.log when asking for help")
message = Gtk.Label(label=f"{help_msg}\n\n{e}")
message.set_line_wrap(True)
scroll = self.gtk.ScrolledWindow(steppers=False)
scroll.set_vexpand(True)
if self.vertical_mode:
scroll.set_size_request(self.gtk.width - 30, self.gtk.height * .6)
else:
scroll.set_size_request(self.gtk.width - 30, self.gtk.height * .45)
scroll.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC)
scroll.add(message)
help_msg = _("Provide KlipperScreen.log when asking for help.\n")
help_msg += _("KlipperScreen will reboot")
help_notice = Gtk.Label(label=help_msg)
help_notice.set_line_wrap(True)
grid = Gtk.Grid()
grid.attach(title, 0, 0, 1, 1)
grid.attach(version, 1, 0, 1, 1)
grid.attach(Gtk.Separator(), 0, 1, 2, 1)
grid.attach(scroll, 0, 2, 2, 1)
grid.attach(help_notice, 0, 3, 2, 1)
buttons = [
{"name": _("Go Back"), "response": Gtk.ResponseType.CANCEL}