From e70c9d37e937a35e91d7791927937ace90c9ae8e Mon Sep 17 00:00:00 2001 From: alfrix Date: Mon, 4 Jul 2022 16:15:45 -0300 Subject: [PATCH] layout: fixes for long vertical screens KS is not optimized for this aspect-ratio, but at least it shouldn't be broken --- ks_includes/KlippyGtk.py | 7 +++++-- panels/main_menu.py | 10 +++------- panels/temperature.py | 10 +++------- 3 files changed, 11 insertions(+), 16 deletions(-) diff --git a/ks_includes/KlippyGtk.py b/ks_includes/KlippyGtk.py index 5b5eff24..667faccc 100644 --- a/ks_includes/KlippyGtk.py +++ b/ks_includes/KlippyGtk.py @@ -12,7 +12,6 @@ class KlippyGtk: labels = {} width_ratio = 16 height_ratio = 9.375 - keyboard_ratio = .5 def __init__(self, screen, width, height, theme, cursor, fontsize_type): self.screen = screen @@ -84,7 +83,11 @@ class KlippyGtk: return self.img_height def get_keyboard_height(self): - return self.get_content_height() * self.keyboard_ratio + if (self.height / self.width) >= 3: + # Ultra-tall + return self.get_content_height() * 0.25 + else: + return self.get_content_height() * 0.5 def get_temp_color(self, device): # logging.debug("Color list %s" % self.color_list) diff --git a/panels/main_menu.py b/panels/main_menu.py index eacae61c..85247b3f 100644 --- a/panels/main_menu.py +++ b/panels/main_menu.py @@ -232,16 +232,12 @@ class MainPanel(MenuPanel): popover.set_position(Gtk.PositionType.BOTTOM) self.labels['popover'] = popover - i = 2 + i = 0 for d in self._printer.get_temp_store_devices(): if self.add_device(d): i += 1 - if self._screen.vertical_mode: - aux = 1.38 - else: - aux = 1 - graph_height = max(0, self._screen.height / aux - (i * 5 * self._gtk.get_font_size())) - self.labels['da'].set_size_request(0, graph_height) + graph_height = (self._gtk.get_content_height() / 2) - ((i + 2) * 4 * self._gtk.get_font_size()) + self.labels['da'].set_size_request(-1, graph_height) return box def graph_show_device(self, widget, show=True): diff --git a/panels/temperature.py b/panels/temperature.py index 7e755fa7..c70bf132 100644 --- a/panels/temperature.py +++ b/panels/temperature.py @@ -443,16 +443,12 @@ class TemperaturePanel(ScreenPanel): popover.set_position(Gtk.PositionType.BOTTOM) self.labels['popover'] = popover - i = 2 + i = 0 for d in self._printer.get_temp_store_devices(): if self.add_device(d): i += 1 - if self._screen.vertical_mode: - aux = 1.38 - else: - aux = 1 - graph_height = max(0, self._screen.height / aux - (i * 5 * self._gtk.get_font_size())) - self.labels['da'].set_size_request(0, graph_height) + graph_height = (self._gtk.get_content_height() / 2) - ((i + 2) * 4 * self._gtk.get_font_size()) + self.labels['da'].set_size_request(-1, graph_height) return box def graph_show_device(self, widget, show=True):