Bug 7805 - Full-screen mode might be confusing for first time users
Summary: Full-screen mode might be confusing for first time users
Alias: None
Product: ThinLinc
Classification: Unclassified
Component: Client (show other bugs)
Version: trunk
Hardware: PC Unknown
: P2 Normal
Target Milestone: 4.14.0
Assignee: Bugzilla mail exporter
Keywords: linma_tester, relnotes
Depends on:
Reported: 2021-12-13 13:25 CET by Samuel Mannehed
Modified: 2022-01-03 17:08 CET (History)
2 users (show)

See Also:
Acceptance Criteria:
• The client should default to full-screen mode over all monitors when installed on a thin terminal for which a special thin terminal-specific build is provided • The client should default to windowed mode when started when installed any other computer • Command line options related to full-screen mode should be prioritized over the thin terminal and desktop specific defaults • Full-screen related changes made to the configuration file (directly or indirectly through the "Options" dialog) should be prioritized over the thin terminal- and desktop-specific defaults.


Description Samuel Mannehed cendio 2021-12-13 13:25:24 CET
Someone using the ThinLinc Client for the first time might be confused by the fact that it, by default, covers all your screens. Unfamiliar users might have trouble returning to their operating system.

Note that the above scenario assumes that the underlying operating system needs to be accessed for some reason. When connecting from a thin terminal, for example, we probably want to keep the default fullscreen setting enabled.
Comment 2 William Sjöblom cendio 2021-12-20 13:00:54 CET
I've performed an investigation into different ways to approach the problem of different default full screen configuration between thin terminals and desktop machines.

I've had a look at HP ThinPro and IGEL (the two thin terminal platforms that we explicitly mention in the documentation). Both of these two provide a /etc/os-release and /etc/lsb-release.

The os-release file on HP ThinPro is indistinguishable from that of a regular ubuntu machine. The lsb-release file on the other hand provides good identifiers for both IGEL and HP ThinPro. So this could be a possible way forward.

The above approach of determining if we are on a thin terminal at runtime has some drawbacks though. The main drawback of these is the fact that cannot draw any conclusions of the long-term stability of these files, making such an approach sub-optimal in terms of maintenance burden. Another case against this approach is the fact that there are many thin terminal distributions, so it is hard to make a clear distinction between which distributions we recognize as a thin terminal and which we do not.

Alternatively, we could make the thin terminal/desktop distinction at build time. Since ThinPro uses regular deb packages (as opposed to IGEL), we would either have to ship separate deb packages for thin terminals or leave it up to system administrators to configure full-screen mode manually on thin terminals. If we decide on the latter we may need to have an extra look at the documentation to make sure that we sufficiently explain this.

I'd argue that the latter of these two approaches is the more reasonable and long-term sustainable.
Comment 3 William Sjöblom cendio 2021-12-21 09:03:12 CET
Please note that there is bug 4288 covers the issues discussed above regarding HP ThinPro using our usual deb packages.
Comment 5 William Sjöblom cendio 2021-12-21 13:25:12 CET
I have done some shallow testing with a local build on a rebooted IGEL terminal (see bug 5566) and a freshly installed Fedora 35 machine.

The IGEL machine enters full-screen mode on all monitors by default while the Fedora 35 machine goes into windowed mode by default as expected.

There's still another thing to consider though. Will people understand that full-screen mode is also available now that we've switched the default to windowed mode?
Comment 7 William Sjöblom cendio 2021-12-22 11:00:54 CET
I have successfully verified the acceptance criteria using client build #2296 on Windows 10, macOS 12.0.1, Fedora 35, and IGEL. This was done by first clearing any pre-existing client configuration from the machine (this is necessary due to bug 7811):
- Windows: removing all ThinLinc related stuff in `regedit'
- macOS: removing `~/.thinlinc/tlclient.conf'
- Fedora 35: creating a fresh virtual machine
- IGEL: rebooting the machine

Marking as resolved!
Comment 8 William Sjöblom cendio 2021-12-22 16:22:26 CET
I just noticed that the thinstation builds will need some adjustment as they are currently treated as desktop builds. Reopening.
Comment 9 William Sjöblom cendio 2021-12-22 16:54:27 CET
We are also missing the release notes for this one.
Comment 12 William Sjöblom cendio 2021-12-23 09:40:16 CET
The fix for thinstations along with release notes have now been committed. Sadly we lack a thinstation in the lab for testing this. Nonetheless, I have extracted the thinstation tar ball and the extracted `tlclient.conf' looks good (i.e. the default configuration). So what remains now is awaiting client build #2297 to do some minor retesting of the IGEL package.
Comment 13 William Sjöblom cendio 2021-12-23 10:42:30 CET
I have retested client build #2297 on IGEL (where full-screen mode is the default) and Ubuntu (where windowed mode is the default) and everything seems to work as intended. Marking as resolved.
Comment 14 Linn cendio 2022-01-03 17:08:28 CET
Tested with client build 2301 on RHEL 8, SLES 12 and IGEL.

Default behavior
  * RHEL 8: Windowed
  * SLES 12: Windowed
  * IGEL: Fullscreen

Also tested that command line arguments and GUI options had priority over the default value:

  * '-f fullscreen'
  * GUI: Windowed
  * GUI: Fullscreen on selected monitor

Also checked the relnotes and the code, looks good.

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