Edit: I probably should've mentioned this before, but I installed this Ubuntu virtual machine through my school. It came pre-installed with OMPL and OMPL.app, a software developed by my professor for Algorithmic Robotics (hence the name of my VM), as well as Python bindings. I don't think they did anything weird to it, just included the software we needed for the class, which can be found separately by googling OMPL and clicking the first link (I'm not allowed to post URLs here yet) |
Some more details about the problem:
If I instead click minimize or maximize, it works fine. It's only when I click and drag the edges.
I can resize the main window (Virtual Screen 1) without a problem.
If I go into the virtual machine's settings -> Devices -> Displays, it sees both virtual screens at first. When Screen 2 crashes after I try to resize it, the virtual machine switches to single display mode. But if I then go to Join Displays, it still sees that there is another display hooked up but not enabled, and if I click 'Apply', Virtual Screen 2 will open back up. See attached screenshot. (Note that in the screenshot, Virtual Screen 2 is labeled as display 1, and Virtual Screen 1 is labeled as display 2 but still correctly recognized as the primary display.) Also, if I adjust the resolution using the Ubuntu VM's displays settings, it works fine.
Host machine:
Acer Aspire VN7-592G
OS: Windows 10 x64 with everything up to date including all drivers.
CPU: Intel Core i7-6700HQ @2.6GHz (4 physical cores + 4 virtual/hyperthreaded cores)
Integrated GPU: Intel HD Graphics 530
Dedicated GPU: NVidia GeForce GTX 960m
RAM: 32GB
Virtual Machine settings:
OS: Ubuntu (x64) version 18.04.6 LTS
Base Memory: 20GB
Processors: 4
Processor Execution Cap: 100%
Video Memory: 128MB
Graphics Controller: VMSVGA
Graphics Acceleration: 3D
VirtualBox version: 6.1.26 r145957 (Qt5.6.2)
Guest additions are the same version as VirtualBox and I installed them by simply going to devices -> Insert Guest Additions CD Image
In Windows graphics settings (on the host), I've made sure to tell it to use my NVidia GPU for VirtualBox.
Things I've tried:
Disabling 3D acceleration - no effect.
Changing the graphics controller to VboxVGA. Instead of Virtual Screen 2 crashing, it just goes black and unresponsive, but everything else is the same. The Ubuntu virtual machine switches to Single Display mode just like before etc etc.
Going into graphics settings in the Windows host machine and telling it to use the integrated GPU for VirtualBox. No effect.
Going into VirtualBox -> File -> Preferences -> Display, then changing the Maximum Guest Screen Size. I tried all three options. For Hint, I tried a couple different things, including the values the log file happened to be saying it was sending at that time (see below). None of this had any effect.
I tried to upload the log files but they were too big and it wouldn't let me, so I copy/pasted part of VBox.log below. It starts with me clicking View -> Virtual Screen 2 -> Enable, then immediately trying to resize it. I only did it once, so I think the lines saying "Guest-screen count changed" correspond to the flickering before the crash.
00:55:55.479740 VMMDev: SetVideoModeHint: Got a video mode hint (1175x960x32)@(0x0),(1;0) at 1
00:55:55.481202 Display::i_handleDisplayResize: uScreenId=0 pvVRAM=0000000000000000 w=1920 h=975 bpp=0 cbLine=0x0 flags=0x2 origin=0,0
00:55:55.510149 Display::i_handleDisplayResize: uScreenId=0 pvVRAM=0000000013da4000 w=1920 h=975 bpp=32 cbLine=0x1E00 flags=0x1 origin=0,0
00:55:55.511880 GUI: UIMachineLogic: Guest-screen count changed
00:55:55.530135 Display::i_handleDisplayResize: uScreenId=1 pvVRAM=000000001869e000 w=1175 h=960 bpp=32 cbLine=0x125C flags=0x1 origin=1920,0
00:55:55.534088 GUI: UIMachineLogic: Guest-screen count changed
00:55:58.742973 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:58.788710 VMMDev: SetVideoModeHint: Got a video mode hint (1512x960x32)@(0x0),(1;0) at 1
00:55:58.788982 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:58.792599 Display::i_handleDisplayResize: uScreenId=0 pvVRAM=0000000000000000 w=1920 h=975 bpp=0 cbLine=0x0 flags=0x2 origin=0,0
00:55:58.792650 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:58.799651 Display::i_handleDisplayResize: uScreenId=1 pvVRAM=0000000000000000 w=1175 h=960 bpp=0 cbLine=0x0 flags=0x2 origin=1920,0
00:55:58.802140 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:58.804682 VMMDev: SetVideoModeHint: Got a video mode hint (1512x960x0)@(0x0),(1;0) at 1
00:55:58.804903 GUI: UIMediumEnumerator: Medium-enumeration finished!
00:55:58.811152 GUI: UIMachineLogic: Guest-screen count changed
00:55:58.819548 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:58.821642 VMMDev: SetVideoModeHint: Got a video mode hint (1512x960x0)@(0x0),(0;0) at 1
00:55:58.835434 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:58.836686 Display::i_handleDisplayResize: uScreenId=0 pvVRAM=000000001869e000 w=1920 h=975 bpp=32 cbLine=0x1E00 flags=0x1 origin=0,0
00:55:58.838472 VMMDev: SetVideoModeHint: Got a video mode hint (1512x960x0)@(0x0),(0;0) at 1
00:55:58.840427 GUI: UIMachineLogic: Guest-screen count changed
00:55:58.863242 Display::i_handleDisplayResize: uScreenId=1 pvVRAM=000000001673e000 w=1512 h=960 bpp=32 cbLine=0x17A0 flags=0x1 origin=1920,0
00:55:58.872990 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:58.878903 VMMDev: SetVideoModeHint: Got a video mode hint (1512x960x32)@(0x0),(0;0) at 1
00:55:58.884518 GUI: UIMachineLogic: Guest-screen count changed
00:55:58.894494 Display::i_handleDisplayResize: uScreenId=0 pvVRAM=0000000000000000 w=1920 h=975 bpp=0 cbLine=0x0 flags=0x2 origin=0,0
00:55:58.898777 Display::i_handleDisplayResize: uScreenId=1 pvVRAM=0000000000000000 w=1512 h=960 bpp=0 cbLine=0x0 flags=0x2 origin=1920,0
00:55:58.931358 Display::i_handleDisplayResize: uScreenId=0 pvVRAM=000000001869e000 w=1920 h=975 bpp=32 cbLine=0x1E00 flags=0x1 origin=0,0
00:55:58.934962 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:58.940007 Display::i_handleDisplayResize: uScreenId=0 pvVRAM=0000000000000000 w=1920 h=975 bpp=0 cbLine=0x0 flags=0x2 origin=0,0
00:55:58.953095 Display::i_handleDisplayResize: uScreenId=0 pvVRAM=000000001869e000 w=1920 h=975 bpp=32 cbLine=0x1E00 flags=0x1 origin=0,0
00:55:58.963918 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:58.974865 GUI: UIMachineLogic: Guest-screen count changed
00:55:58.983203 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:58.989892 GUI: UIMachineLogic: Guest-screen count changed
00:55:59.021944 GUI: UIMachineLogic: Guest-screen count changed
00:55:59.055327 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:59.187838 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary
00:55:59.231498 GUI: UIMachineView::sltPerformGuestResize: Sending guest size-hint to screen 1 as 1512x960 if necessary