VirtualBox

Changes between Initial Version and Version 1 of Ticket #16246, comment 19


Ignore:
Timestamp:
Jul 31, 2017 12:21:47 AM (7 years ago)
Author:
itsatrap

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #16246, comment 19

    initial v1  
    1 This is probably not a bug in VirtualBox itself.  Instead, it's likely an issue or change introduced in Qt 5.6 (March 16th, 2016), and VirtualBox just happened to start being built with problematic versions of Qt starting at 5.1.10 (November 21st, 2016).
     1This is almost undoubtedly not a bug in VirtualBox itself.  Instead, it's likely due to a bug introduced in Qt 5.6 (March 16th, 2016), and VirtualBox just happened to start being built with problematic versions of Qt starting at 5.1.10 (November 21st, 2016).
    22
    33The Qt issue is in their tracker as 54830: https://bugreports.qt.io/browse/QTBUG-54830
    44
    5 It's currently priority P2: Important, but it's been in their tracker for over a year with little movement.  Perhaps they could be encouraged to move it along?
    6 
    7 Aside from getting the bug fixed upstream (if it is, in fact, a bug), it may be worth noting that the issue is specifically with the Qt::WA_TranslucentBackground window attribute.  I don't know that much about Qt or VirtualBox internals, but I notice that there are two aspects of VirtualBox seamless support which are enabled (or not) in the frontend Makefile.kmk: VBOX_WITH_MASKED_SEAMLESS and VBOX_WITH_TRANSLUCENT_SEAMLESS.
    8 
    9 These basically correspond to Qt's .setMask() method and the Qt::WA_TranslucentBackground attribute respectively.  Some platforms seems to use both (Linux).  Windows uses only MASKED.  macOS uses only TRANSLUCENT.  Doing quick modifications of Qt's shapedclock example on Linux, I see that when using the transulcent attribute only, clicks in transparent parts do not go through to the background (bad).  When calling setMask(), clicks do go through to the background (good).  This seems to indicate that MASKED is necessary on Linux or you'd see the exact same behavior on Linux that this ticket indicates on macOS.
    10 
    11 So... can the Makefile.kmk just be tweaked to also enable VBOX_WITH_MASKED_SEAMLESS on macOS (same as for Linux, FreeBSD, and Solaris)?
    12 
    13 (I know Qt features aren't always uniform across platforms so there may be some reason this won't work right or will cause some other problem... but it might be worth a shot?)
     5There are patches for Qt 5.6 and Qt 5.9 available as attachments in the Qt tracker.

© 2023 Oracle
ContactPrivacy policyTerms of Use