VirtualBox

Opened 8 years ago

#14780 new defect

Windows host, multiple monitors, 1 virtual screen, fullscreen not working correctly

Reported by: waldemar Owned by:
Component: other Version: VirtualBox 5.0.8
Keywords: multi monitor fullscreen Cc:
Guest type: all Host type: Windows

Description

My setup is roughly this:

  • Windows 7 as host.
  • 3 real monitors: 1680x1050, 1920x1200 (main), 1280x1024, in that order from left to right.
  • VirtualBox version 5.0.8, same effect with 4.3.30 and 5.0.6.

I have several clients installed, Linux Mint, Ubuntu, Windows 7, Windows 8, Windows 10, and I have this problem under all of them. The clients are all configured to have one display. As long as the client is windowed (both floating and maximized) everything works fine.

When i switch to fullscreen (Host-F), the client gets the wrong display resolution. What i would expect to see is it beeing maximized on my main monitor (the same where the client window is at that time) and have its resolution (1920x1200) (*1). But what happens is that the resolution is set to 4880x1200 in Windows (1680+1920+1280) and 784x1200 in Linux (seems to be 4880 mod 4096) (*2). The vertical pixel count seems to be ok with 1200 (it takes either the maximum of the pixels of the current displays, or it's the height of the main display). To be more exact, the clients left margin is where my left margin is on the main screen, the screen extends to the right, some of it beeing on the right monitor, some of it invisible, but it looks like it exists. I can't move the mouse there, but that might be because the host blocks mouse movement. When i maximize progams inside the client, they seem to behave as if there is just one screen with the resolution of 4880x1200 (*3)

One other issue (no problem for me, but it might be for others), is that when the window of the client is on another of my monitors (either in a window or maximized), the fullscreen always goes so the exact same place, that is, it starts on my main monitor and extends to the right from there. I would expect that i could run a client in fullscreen on one of my side monitors somehow, like if the window is on that screen at the time i press Host-F. There might be another way to do this, but i haven't looked into this much, since it's pointless without fixing the first problem.

There might be some configuration option i overlooked, but i doubt it. My guess is, the virtual box host retrieves the wrong pixel count for the display to send to the client when going fullscreen. It should only take the pixels of the one monitor where it is going fullscreen, but instead takes the total pixels of the display area.

To clear up a few things:

  • I have installed client additions on all clients, version matching the host.
  • I tested it with only one monitor connected, everything works fine and as expected in this case.
  • I have not tested other hosts for this effect. I can only guess that the Windows version on the host (7, 8.1 or 10) does not affect this problem, but it might be that a Linux host does not have this.
  • I googled about this issue, and i checked the already existing bug reports, i didn't find anything describing this exact problem.
  • "Host-F" is the keyboard shortcut for fullscreen, in my case right-ctrl-F. I use this terminology since it's called like that in the documentation as well. The described effect is the same when i use the menu entry for fullscreen. I have not tried remapping the host key, but i can't imagine this changing anything about the issue.
  • I have not tried to swap the order of monitors around (especially having a monitor with less height as main monitor), but i had a similar effect with only 2 monitors. I doubt trying different monitor configurations will give any more insight to this problem, and if so, it has to be done by a developer/tester who is more familiar with virtualbox in that area.

Notes:

  • (*1) I check what the client "sees" as its resolution with something like rightclick and "screen resolution" in Windows, and xdpyinfo in Linux
  • (*2) I tested this in Linux before, when i had only 2 monitors connected (1680+1920) and then the resolution in Linux was 3600.
  • (*3) It's hard to explain why it looks like this, it would be much easier for someone else to just try it. For example, when i maximize firefox, the middle of the windows is about 2440 pixels (half of 4880) away from the left margin (of my main monitor), which appears towards the right on my left monitor. It implies the total screen area goes beyond the right edge of that monitor.

Change History (0)

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use