Bug 20624 - Hidden buttons in the Installer gui - UI elements and fonts are too big for screen resolution
Summary: Hidden buttons in the Installer gui - UI elements and fonts are too big for s...
Status: NEW
Alias: None
Product: Mageia
Classification: Unclassified
Component: Installer (show other bugs)
Version: Cauldron
Hardware: x86_64 Linux
: release_blocker major
Target Milestone: Mageia 6
Assignee: Mageia tools maintainers
QA Contact:
URL:
Whiteboard:
Keywords: 6RC, PATCH
Depends on: 20360
Blocks:
  Show dependency treegraph
 
Reported: 2017-04-04 11:19 CEST by André DESMOTTES
Modified: 2017-05-15 21:56 CEST (History)
4 users (show)

See Also:
Source RPM: drakx-installer-stage2
CVE:
Status comment: Patch proposed to make the installer use 1024x768 by default and alleviate such issues


Attachments
Screensot of the problem (64.42 KB, image/png)
2017-04-04 11:21 CEST, André DESMOTTES
Details
The last option is un reachable (75.77 KB, image/png)
2017-04-10 16:52 CEST, André DESMOTTES
Details
Same problem with Mageia 6 RC (64.26 KB, image/png)
2017-04-10 17:03 CEST, André DESMOTTES
Details
increase the window size (2.69 KB, patch)
2017-05-06 20:11 CEST, Frédéric Buclin
Details | Diff
increase the window size, v2 (2.75 KB, patch)
2017-05-06 22:54 CEST, Frédéric Buclin
Details | Diff
increase the window size, v3 (4.12 KB, patch)
2017-05-07 00:53 CEST, Frédéric Buclin
Details | Diff

Description André DESMOTTES 2017-04-04 11:19:43 CEST
Description of problem:
During installation on a BIOS/GPT system, at the partitioning step, buttons are hidden if using the French language. English is OK.
See screenshot next comment

Version-Release number of selected component (if applicable):
Mageia&-rc-x86_64-DVD.iso
Comment 1 André DESMOTTES 2017-04-04 11:21:24 CEST
Created attachment 9183 [details]
Screensot of the problem
Comment 2 Rémi Verschelde 2017-04-04 11:32:53 CEST
(In reply to André DESMOTTES from comment #0)
> Mageia&-rc-x86_64-DVD.iso

Please specify the date of build too, this was supposed to have been fixed a few days ago.
Comment 3 Rémi Verschelde 2017-04-04 11:40:02 CEST
Well it seems to be a build with at least drakx-installer-stage2 17.75 as the translations are those used to fix bug 20360.

Comparing this one with the screenshots in bug 20360, it looks like everything is scaled up. We could shrink translations again, but it hardly seems like a proper fix - we should prevent the UI elements from having such a huge scale and font with such low screen resolutions.
Comment 4 Thierry Vignaud 2017-04-04 12:02:45 CEST
humm..
It's a side effect of putting all buttons on the same bar:
http://gitweb.mageia.org/software/drakx/commit/perl-install/diskdrake/hd_gtk.pm?id=947ab9bb0fb06611b5bd54465f98545ff175afb2

Compare with mga5 that had 2 button lines:
https://doc.mageia.org/installer/5/en/content/diskdrake.html

A solution could be to revert to 2 bars :-(
Comment 5 André DESMOTTES 2017-04-04 12:22:38 CEST
(In reply to Rémi Verschelde from comment #2)
> (In reply to André DESMOTTES from comment #0)
> > Mageia&-rc-x86_64-DVD.iso
> 
> Please specify the date of build too, this was supposed to have been fixed a
> few days ago.

Mageia vanda 20170323 21:51
What is strange is that this problem doesn't exist in UEFI mode, same computer.
To be accurate, Mageia6-sta2-x86_64-DVD.iso has the problem in BIOS/GPT mode and not in UEFI mode, Mageia6-rc-x86_64-DVD.iso has the problem in BIOS/GPT mode and I don't know in UEFI mode because it doesn't boot (vmlinuz not found)
Comment 6 André DESMOTTES 2017-04-10 16:52:15 CEST
Created attachment 9194 [details]
The last option is un reachable
Comment 7 André DESMOTTES 2017-04-10 17:03:28 CEST
Created attachment 9195 [details]
Same problem with Mageia 6 RC
Comment 8 Thierry Vignaud 2017-04-10 19:09:41 CEST
This is a different issue (the partitioning wizard).
Please open a different bug report for that
Comment 9 André DESMOTTES 2017-04-10 20:26:18 CEST
I think you are speaking about Comment 7, because Comment 8 is really the same bug.
Comment 10 André DESMOTTES 2017-04-16 10:23:18 CEST
Sorry, I meant:
I think you are speaking about Comment 6, because Comment 7 is really the same bug.
Comment 11 Marja van Waes 2017-04-16 11:33:52 CEST
(In reply to Thierry Vignaud from comment #8)
> This is a different issue (the partitioning wizard).
> Please open a different bug report for that

André opened bug #20682 for it
Comment 12 Frédéric Buclin 2017-04-22 23:22:43 CEST
(In reply to Thierry Vignaud from comment #4)
> A solution could be to revert to 2 bars :-(

Or use a smaller font? The font looks excessively large on all these screenshots.

Using a smaller padding around texts could help too, if that's doable.
Comment 13 Rémi Verschelde 2017-04-26 13:20:59 CEST
(In reply to Frédéric Buclin from comment #12)
> Or use a smaller font? The font looks excessively large on all these
> screenshots.
> 
> Using a smaller padding around texts could help too, if that's doable.
I agree, the font looks exceedingly large.

If it's a bitmap font, we'd likely have to ship a smaller font, and select the proper one based on the screen resolution. If it's already a TTF at this stage, we can instead just tweak the size.
Comment 14 Rémi Verschelde 2017-05-06 18:01:19 CEST
Any suggestion on how we could fix that? It's surprising that this issue showed up only recently, would it be a regression from another change?
Comment 15 Frédéric Buclin 2017-05-06 18:12:43 CEST
Just wondering: couldn't we increase the default screen resolution? This would fix the bug automatically, no?

I tried to change the screen resolution of the installer to 1024x768 by pressing F3 when starting the installation, but this has no effect. :( Is this feature broken? Or am I missing something?
Comment 16 Martin Whitaker 2017-05-06 18:41:46 CEST
(In reply to Frédéric Buclin from comment #15)
> I tried to change the screen resolution of the installer to 1024x768 by
> pressing F3 when starting the installation, but this has no effect. :( Is
> this feature broken? Or am I missing something?

IIRC, the installer forces the resolution to 800x600.
Comment 17 Frédéric Buclin 2017-05-06 18:50:27 CEST
(In reply to Martin Whitaker from comment #16)
> IIRC, the installer forces the resolution to 800x600.

So what is F3 used for? Shouldn't it go away if it does nothing?
Comment 18 Frédéric Buclin 2017-05-06 20:11:12 CEST
Created attachment 9270 [details]
increase the window size

Martin, what do you think about this patch?

I used drakx-in-chroot to test it, so I'm not sure which file the installer uses exactly to set the screen width and height. I guess it is _launchX() in install/steps_gtk.pm, but I'm not sure. Do you have an idea?
Comment 19 Rémi Verschelde 2017-05-06 22:08:26 CEST
Thierry, any objection to defaulting to 1024x768 instead of 800x600 in the installer? (See comment 18).
Comment 20 Martin Whitaker 2017-05-06 22:27:23 CEST
(In reply to Frédéric Buclin from comment #18)
> Created attachment 9270 [details]
> increase the window size
> 
> Martin, what do you think about this patch?

I seem to recall Thierry being fairly keen to keep the installer running at 800x600. It's hard to believe anyone is still using hardware that doesn't support 1024x768, but still...

> I used drakx-in-chroot to test it, so I'm not sure which file the installer
> uses exactly to set the screen width and height. I guess it is _launchX() in
> install/steps_gtk.pm, but I'm not sure. Do you have an idea?

I think that when you start the X server, it simply uses the current resolution of the framebuffer. Checking the kernel boot options on the classic installer ISO, I see it is forcing the resolution to 800x600 by "vga=788". Manually changing that to "vga=791" gets the installer running at 1024x768.

The F3 function seems to be entirely broken, even if you remove the "vga=..." from the boot options.
Comment 21 Frédéric Buclin 2017-05-06 22:45:00 CEST
(In reply to Martin Whitaker from comment #20)
> I seem to recall Thierry being fairly keen to keep the installer running at
> 800x600. It's hard to believe anyone is still using hardware that doesn't
> support 1024x768, but still...

What is the rationale behind this? 1024x768 was proposed as a standard in 1990, and if we trust https://en.wikipedia.org/wiki/Display_resolution#Common_display_resolutions, we see that less than 1% of users still use a screen resolution lower than 1024x768. IMO, focusing on the other 99% of users makes much more sense.


> resolution of the framebuffer. Checking the kernel boot options on the
> classic installer ISO, I see it is forcing the resolution to 800x600 by
> "vga=788". Manually changing that to "vga=791" gets the installer running at
> 1024x768.

Where is that code? I cannot find it in the drakx repo in git.


> The F3 function seems to be entirely broken, even if you remove the
> "vga=..." from the boot options.

Same here. Where is that code?
Comment 22 Frédéric Buclin 2017-05-06 22:54:38 CEST
Created attachment 9271 [details]
increase the window size, v2

This patch is only useful if using drakx-in-chroot as Martin says that the kernel itself defines the screen resolution. So it's not a bugfix. :(
Comment 23 Martin Whitaker 2017-05-06 23:22:37 CEST
(In reply to Frédéric Buclin from comment #21)
> (In reply to Martin Whitaker from comment #20)
...
> > resolution of the framebuffer. Checking the kernel boot options on the
> > classic installer ISO, I see it is forcing the resolution to 800x600 by
> > "vga=788". Manually changing that to "vga=791" gets the installer running at
> > 1024x768.
> 
> Where is that code? I cannot find it in the drakx repo in git.

This might be it:

% grep default_vga drakx-installer-images-2.44/images/make_boot_img
my $default_vga = "vga=788 splash quiet";
	linux => $default_vga,
#	patch => "patch $default_vga",
	noacpi => "$automatic$default_vga $default_iswmd audit=0 acpi=off",
#	restore => "$automatic$default_vga restore",
	      append => join(' ', grep { $_ } $default_append, $default_acpi, $default_vga, $default_iswmd) };
    $default_vga =~ /788/ or die 'we rely on vga=788 for bootsplash';
kernel /cauldron/isolinux/alt0/vmlinuz $default_append $default_acpi $default_vga $default_iswmd automatic=method:disk

 
> > The F3 function seems to be entirely broken, even if you remove the
> > "vga=..." from the boot options.
> 
> Same here. Where is that code?

http://gitweb.mageia.org/software/design/bootloader-theme/tree/src

It's written in an obscure scripting language - see /usr/share/doc/gfxboot-devel/gfxboot.txt (after installing the gfxboot-devel package).
Comment 24 Frédéric Buclin 2017-05-07 00:53:06 CEST
Created attachment 9272 [details]
increase the window size, v3

Thanks Martin. I was only looking into drakx/perl-install/, which is why I missed it.

Thierry, is the check below still valid? I removed it as I set the default vga to 791 instead of 788.

$default_vga =~ /788/ or die 'we rely on vga=788 for bootsplash'


Note that I didn't test the change in images/make_boot_img. I tested all other changes, though.
Comment 25 Frédéric Buclin 2017-05-07 16:49:16 CEST
If I understand this cryptic language code correctly, the support for different vga modes was removed here:

http://gitweb.mageia.org/software/design/bootloader-theme/commit/src/common.inc?id=4ca721b1


- video.modes.list xmenu.video .xm_current get get .vm_mode get
-
-    dup 0 ge {
-      0x200 add "vga=0x%x " bc.cmd dup length add sprintf


Also, if I understand this code correctly, it simply added vga=... to the string, leaving existing vga=... alone, which is not good. In the original import, it seems existing vga=... were removed and replaced by the selected vga=..., which is more appropriate:

http://gitweb.mageia.org/software/design/bootloader-theme/commit/common.inc?id=534f2f44


+  syslinux {
+    % remove all 'vga' option
+    bc.cmd "vga" bootopt.find .undef ne { 
+      bc.cmd "vga" bootopt.remove free
+    } if
+
+    video.modes.list xmenu.video .xm_current get get
+
+    dup 0 ne {
+      "vga=%d " bc.cmd dup length add sprintf
+    } {
+      pop
+    } ifelse
+  } if


I personally have no intention to fix this mess. I don't understand how this stuff works. :)
Comment 26 André DESMOTTES 2017-05-15 21:56:11 CEST
With the last round of Mageia6-rc-x86_64-DVD.iso - May 14 - the problem didn't show up.

Note You need to log in before you can comment on or make changes to this bug.