unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Mathieu Othacehe <othacehe@gnu.org>
To: Eric Bavier <bavier@posteo.net>
Cc: 44428@debbugs.gnu.org
Subject: bug#44428: Graphical Installer window clipping on "small" displays
Date: Fri, 06 Nov 2020 15:23:44 +0100	[thread overview]
Message-ID: <87wnyyk1hr.fsf@gnu.org> (raw)
In-Reply-To: <d5a782206384f4c3cb18d35524edc6fd7f708759.camel@posteo.net> (Eric Bavier's message of "Tue, 03 Nov 2020 22:00:43 -0600")

[-- Attachment #1: Type: text/plain, Size: 878 bytes --]


Hello Eric,

> I can understand if this is not a configuration that we need to
> "support", but was hoping that there might be something that could bedone to help.
> These pictures were taken using the 1.1.0 release installer, but an
> installer I created for i686 at commit 8a7bbc35 seems to behave the
> same.

Thanks for the detailed bug report. Here's a patch improving the
situation. I tested it with:

--8<---------------cut here---------------start------------->8---
qemu-system-x86_64 -m 1024 -cdrom image.iso -display sdl -vga none -device virtio-vga,xres=800,yres=600
--8<---------------cut here---------------end--------------->8---

The problem is that three pages are still overflowing in 800x600:

* The welcome page.
* The partitioning page.
* The final configuration page.

Could you check if you share the same observations on your hardware?

Thanks,

Mathieu

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-installer-Limit-listbox-height.patch --]
[-- Type: text/x-diff, Size: 3984 bytes --]

From 0e13414b5bbbb96cc6b8d83d2974cfea8ff8d073 Mon Sep 17 00:00:00 2001
From: Mathieu Othacehe <othacehe@gnu.org>
Date: Fri, 6 Nov 2020 10:59:54 +0100
Subject: [PATCH] installer: Limit listbox height.

Partially fixes: <https://issues.guix.gnu.org/44428>.

* gnu/installer/newt/page.scm (default-listbox-height): New variable.
(run-listbox-selection-page): Use it.
* gnu/installer/newt/wifi.scm (wifi-listbox-height): Ditto.
* gnu/installer/newt/network.scm (run-technology-page): Set the maximum
listbox height to 5.
* gnu/installer/newt/ethernet.scm (run-ethernet-page): Ditto.
---
 gnu/installer/newt/ethernet.scm |  2 +-
 gnu/installer/newt/network.scm  |  2 +-
 gnu/installer/newt/page.scm     | 11 +++++++++--
 gnu/installer/newt/wifi.scm     |  3 ++-
 4 files changed, 13 insertions(+), 5 deletions(-)

diff --git a/gnu/installer/newt/ethernet.scm b/gnu/installer/newt/ethernet.scm
index ba5e222a37..ecd22efbb2 100644
--- a/gnu/installer/newt/ethernet.scm
+++ b/gnu/installer/newt/ethernet.scm
@@ -77,7 +77,7 @@ connection is pending."
       #:title (G_ "Ethernet connection")
       #:listbox-items services
       #:listbox-item->text ethernet-service->text
-      #:listbox-height (min (+ (length services) 2) 10)
+      #:listbox-height (min (+ (length services) 2) 5)
       #:button-text (G_ "Exit")
       #:button-callback-procedure
       (lambda _
diff --git a/gnu/installer/newt/network.scm b/gnu/installer/newt/network.scm
index 461d5d99c0..4af7143d63 100644
--- a/gnu/installer/newt/network.scm
+++ b/gnu/installer/newt/network.scm
@@ -80,7 +80,7 @@ network devices were found. Do you want to continue anyway?"))
       #:title (G_ "Internet access")
       #:listbox-items items
       #:listbox-item->text technology->text
-      #:listbox-height (min (+ (length items) 2) 10)
+      #:listbox-height (min (+ (length items) 2) 5)
       #:button-text (G_ "Exit")
       #:button-callback-procedure
       (lambda _
diff --git a/gnu/installer/newt/page.scm b/gnu/installer/newt/page.scm
index 1d6b9979b4..4209674c28 100644
--- a/gnu/installer/newt/page.scm
+++ b/gnu/installer/newt/page.scm
@@ -32,7 +32,9 @@
   #:use-module (srfi srfi-34)
   #:use-module (srfi srfi-35)
   #:use-module (newt)
-  #:export (draw-info-page
+  #:export (default-listbox-height
+
+            draw-info-page
             draw-connecting-page
             run-input-page
             run-error-page
@@ -168,6 +170,10 @@ Like 'run-form', return two values: the exit reason, and an \"argument\"."
         (_
          (values reason argument))))))
 
+(define (default-listbox-height)
+  "Return the default listbox height."
+  (max 5 (- (screen-rows) 20)))
+
 (define (draw-info-page text title)
   "Draw an informative page with the given TEXT as content.  Set the title of
 this page to TITLE."
@@ -339,7 +345,8 @@ of the page is set to TITLE."
                                      (info-textbox-width 50)
                                      listbox-items
                                      listbox-item->text
-                                     (listbox-height 20)
+                                     (listbox-height
+                                      (default-listbox-height))
                                      (listbox-default-item #f)
                                      (listbox-allow-multiple? #f)
                                      (sort-listbox-items? #t)
diff --git a/gnu/installer/newt/wifi.scm b/gnu/installer/newt/wifi.scm
index 3fd5756b99..f5d8f1fdbf 100644
--- a/gnu/installer/newt/wifi.scm
+++ b/gnu/installer/newt/wifi.scm
@@ -165,7 +165,8 @@ of <service-item> records present in LISTBOX."
 (define service-name-max-length (make-parameter 20))
 
 ;; Height of the listbox displaying wifi services.
-(define wifi-listbox-height (make-parameter 20))
+(define wifi-listbox-height (make-parameter
+                             (default-listbox-height)))
 
 ;; Information textbox width.
 (define info-textbox-width (make-parameter 40))
-- 
2.29.2


  reply	other threads:[~2020-11-06 14:24 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-04  4:00 bug#44428: Graphical Installer window clipping on "small" displays Eric Bavier
2020-11-06 14:23 ` Mathieu Othacehe [this message]
2020-11-07  1:07   ` Eric Bavier
2020-11-07 12:23     ` Mathieu Othacehe
2020-11-07 21:37       ` Ludovic Courtès
2020-11-08  9:54         ` Mathieu Othacehe
2020-11-09  4:42       ` Eric Bavier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87wnyyk1hr.fsf@gnu.org \
    --to=othacehe@gnu.org \
    --cc=44428@debbugs.gnu.org \
    --cc=bavier@posteo.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).