unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#44428: Graphical Installer window clipping on "small" displays
@ 2020-11-04  4:00 Eric Bavier
  2020-11-06 14:23 ` Mathieu Othacehe
  0 siblings, 1 reply; 7+ messages in thread
From: Eric Bavier @ 2020-11-04  4:00 UTC (permalink / raw)
  To: 44428

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

Hello Guix,

When running the graphical installer on my Asus EeePC, many of the
windows get "clipped", i.e. content flows over the edge of the display.
Pictures are attached.  Some critical text and a few of the action
buttons disappear.

I manage to get through the installation, but maybe only because I've
done this so many times and am familiar with the process :), but I fear
someone new to Guix might be less forgiving.

The native resolution of the display is 1024x600.  In one of the ttys I
see:

  root@gnu ~# printf "%dx%d\n" $COLUMNS $LINES
  128x37

but the graphical installer window appears to display at about 102x31.

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.


`~Eric

[-- Attachment #2: 1-language-selection.jpg --]
[-- Type: image/jpeg, Size: 40739 bytes --]

[-- Attachment #3: 2-welcome.jpg --]
[-- Type: image/jpeg, Size: 43018 bytes --]

[-- Attachment #4: 3-keyboard.jpg --]
[-- Type: image/jpeg, Size: 45376 bytes --]

[-- Attachment #5: 4-wifi.jpg --]
[-- Type: image/jpeg, Size: 35615 bytes --]

[-- Attachment #6: 5-partition.jpg --]
[-- Type: image/jpeg, Size: 40579 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#44428: Graphical Installer window clipping on "small" displays
  2020-11-04  4:00 bug#44428: Graphical Installer window clipping on "small" displays Eric Bavier
@ 2020-11-06 14:23 ` Mathieu Othacehe
  2020-11-07  1:07   ` Eric Bavier
  0 siblings, 1 reply; 7+ messages in thread
From: Mathieu Othacehe @ 2020-11-06 14:23 UTC (permalink / raw)
  To: Eric Bavier; +Cc: 44428

[-- 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


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* bug#44428: Graphical Installer window clipping on "small" displays
  2020-11-06 14:23 ` Mathieu Othacehe
@ 2020-11-07  1:07   ` Eric Bavier
  2020-11-07 12:23     ` Mathieu Othacehe
  0 siblings, 1 reply; 7+ messages in thread
From: Eric Bavier @ 2020-11-07  1:07 UTC (permalink / raw)
  To: Mathieu Othacehe; +Cc: 44428

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

Hello Mathieu,

On Fri, 2020-11-06 at 15:23 +0100, Mathieu Othacehe wrote:
>  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---
> 

Excellent!  I was hoping there was a way to test in qemu.

> 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?

Yes, I still see the situation on the welcome and partitioning pages. 
But I did not want to go past the partition step, because I have data
on this disk ;).

The other problematic pages look much better with your patch!

`~Eric

[-- Attachment #2: 1-language-selection.jpg --]
[-- Type: image/jpeg, Size: 37652 bytes --]

[-- Attachment #3: 2-welcome.jpg --]
[-- Type: image/jpeg, Size: 46089 bytes --]

[-- Attachment #4: 3-keyboard.jpg --]
[-- Type: image/jpeg, Size: 47350 bytes --]

[-- Attachment #5: 4-wifi.jpg --]
[-- Type: image/jpeg, Size: 37199 bytes --]

[-- Attachment #6: 5-partition.jpg --]
[-- Type: image/jpeg, Size: 49344 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#44428: Graphical Installer window clipping on "small" displays
  2020-11-07  1:07   ` Eric Bavier
@ 2020-11-07 12:23     ` Mathieu Othacehe
  2020-11-07 21:37       ` Ludovic Courtès
  2020-11-09  4:42       ` Eric Bavier
  0 siblings, 2 replies; 7+ messages in thread
From: Mathieu Othacehe @ 2020-11-07 12:23 UTC (permalink / raw)
  To: Eric Bavier; +Cc: 44428-done


Hey Eric,

> Yes, I still see the situation on the welcome and partitioning pages. 
> But I did not want to go past the partition step, because I have data
> on this disk ;).

Hehe, thanks for testing again :) I fixed a few more things, so that the
welcome logo is not displayed on small resolutions and the partitioning
and configuration pages do not overflow.

Pushed as 6dcbbcdab7727946cf32e7a4e44e66d151380db2.

On QEMU with 800x600 resolution there's no more box overflow. I hope
it will be the same on your hardware that seem to have a slightly higher
resolution.

Maybe we should take this one to the 1.2 branch. Ludo?

Thanks,

Mathieu




^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#44428: Graphical Installer window clipping on "small" displays
  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
  1 sibling, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2020-11-07 21:37 UTC (permalink / raw)
  To: Mathieu Othacehe; +Cc: 44428-done

Hi,

Mathieu Othacehe <othacehe@gnu.org> skribis:

>> Yes, I still see the situation on the welcome and partitioning pages. 
>> But I did not want to go past the partition step, because I have data
>> on this disk ;).
>
> Hehe, thanks for testing again :) I fixed a few more things, so that the
> welcome logo is not displayed on small resolutions and the partitioning
> and configuration pages do not overflow.
>
> Pushed as 6dcbbcdab7727946cf32e7a4e44e66d151380db2.

Awesome!

> On QEMU with 800x600 resolution there's no more box overflow. I hope
> it will be the same on your hardware that seem to have a slightly higher
> resolution.

How do you tell QEMU to use that resolution?

> Maybe we should take this one to the 1.2 branch. Ludo?

6dcbbcdab7727946cf32e7a4e44e66d151380db2 changes strings, so maybe we
should not take it.

8338d414b361e4fb961221642c1064e9dc89ba65 looks reasonable though, so I
think you can cherry-pick it in ‘version-1.2.0’.

Thank you!

Ludo’.




^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#44428: Graphical Installer window clipping on "small" displays
  2020-11-07 21:37       ` Ludovic Courtès
@ 2020-11-08  9:54         ` Mathieu Othacehe
  0 siblings, 0 replies; 7+ messages in thread
From: Mathieu Othacehe @ 2020-11-08  9:54 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 44428-done


Hey Ludo,

> How do you tell QEMU to use that resolution?

--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---

> 8338d414b361e4fb961221642c1064e9dc89ba65 looks reasonable though, so I
> think you can cherry-pick it in ‘version-1.2.0’.

Done :)

Thanks,

Mathieu




^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#44428: Graphical Installer window clipping on "small" displays
  2020-11-07 12:23     ` Mathieu Othacehe
  2020-11-07 21:37       ` Ludovic Courtès
@ 2020-11-09  4:42       ` Eric Bavier
  1 sibling, 0 replies; 7+ messages in thread
From: Eric Bavier @ 2020-11-09  4:42 UTC (permalink / raw)
  To: Mathieu Othacehe; +Cc: 44428-done

On Sat, 2020-11-07 at 13:23 +0100, Mathieu Othacehe wrote:
> Pushed as 6dcbbcdab7727946cf32e7a4e44e66d151380db2.

Great!  Thank you!

> On QEMU with 800x600 resolution there's no more box overflow. I hope
> it will be the same on your hardware that seem to have a slightly higher
> resolution.

It seems that the qemu testing with restricted resolution is
sufficient.

`~Eric





^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2020-11-09  4:43 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-11-04  4:00 bug#44428: Graphical Installer window clipping on "small" displays Eric Bavier
2020-11-06 14:23 ` Mathieu Othacehe
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

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).