CentOS7/Mate Qt Bugs/features?
We have recently migrated from CentOS6/Gnome to CentOS7/Mate – and have noticed ‘glitches’ with some Qt applications that appears to be linked to the ‘org.mate.Marco.general’ ‘compositing-manager’ setting – and wondered how we ‘fix’ the issue …
Below is a PyQT4 python script that shows the issues:
1. With ‘compositing-manager’ set to ‘true’ (I believe the default setting):
gsettings set org.mate.Marco.general compositing-manager true
Running the script and the window background is transparent – which is fine
However, if the pull down menu is selected and the ‘Toggle’ button pressed, the menu stays on the screen – and stays put even if the window is moved
2. With ‘compositing-manager’ set to ‘false’ :
gsettings set org.mate.Marco.general compositing-manager false
Running the script and the window background is no longer transparent –
which is not good, but the pull down menu issue is fine …
We’re using Nvidia cards with the Nvidia drivers – but I can also reproduce the issue on a Vmware player instance
It would be good to know if anyone else can reproduce this with Mate ?
Using CentOS7/Gnome3 works as expected (transparent background and pull down menu is fine)
Anyone have any idea what the problem(s) might be and how to fix it/them ?
Thanks
James Pearson
Python script:
#!/usr/bin/python
#
# gsettings set org.mate.Marco.general compositing-manager true
#
# gsettings set org.mate.Marco.general compositing-manager false
from PyQt4.QtGui import *
from PyQt4 import QtCore import sys
class MyWidget(QFrame):
def __init__(self, parent=None):
super(MyWidget, self).__init__(parent)
self.setAttribute(QtCore.Qt.WA_TranslucentBackground)
self.state = 1
self.combo = QComboBox()
for a in [‘A’,’B’,’C’]:
self.combo.addItem(a)
self.btn = QPushButton(“Toggle”)
self.btnClose = QPushButton(“Close”)
self.btnClose.clicked.connect(self.close)
layout = QVBoxLayout()
layout.addWidget(self.combo)
layout.addWidget(self.btn)
layout.addWidget(self.btnClose)
layout.setContentsMargins(50,50,50,50)
self.setLayout(layout)
self.btn.clicked.connect(self.updateComboState)
def updateComboState(self):
self.state = (self.state%2)+1
self.combo.setProperty(“state”, self.state)
self.combo.style().unpolish(self.combo)
self.combo.style().polish(self.combo)
self.update()
ss = “””
*[state=”1″] {
background: rgb(50,50,100);
}
*[state=”2″] {
background: rgb(50,100,50);
}
“””
if __name__ == “__main__”:
qapp = QApplication(sys.argv)
myApp = MyWidget()
myApp.setStyleSheet(ss)
myApp.show()
sys.exit(qapp.exec_())
4 thoughts on - CentOS7/Mate Qt Bugs/features?
I tested with one environment where I have two VMs under oVirt 4.2 and I
connect to them using remote-viewer and spice in full screen mode. One is a fully updated CentOS 7 VM
One is a (not fully up to date) Fedora 28 VM
Both using Mate as DE. On CentOS 7 Mate 1.16.2. On F28 1.20.1
I confirm on both the setting is true and I never tricked with it, so it should be the default.
Below is a PyQT4 python script that shows the issues:
I confirm exactly your behaviour with CentOS 7. The toggle makes the drop down to remain expanded and if I move the window the drop down remains where it was. With F28 all is ok and as expected
I confirm no transaprent background on both and correct behaviour on both
Not tried this
Anyone have any idea what the problem(s) might be and how to fix it/them ?
Unfortunately no… Gianluca
Gianluca Cecchi wrote:
Thanks – given that it works OK on F28, I had a look through the Marco bugs and commits and came across:
https://github.com/mate-desktop/marco/issues/324
which appears to describe the problem and using the patch at:
https://github.com/mate-desktop/marco/commit/59756b8d77dfbd0948d7e4d3349477173aa2728a
does indeed appear to fix the problem when ‘compositing-manager’ is set to ‘true’ … which is good
James Pearson
James Pearson wrote:
I reported this as an EPEL bug – and a new build with the fix is currently in the EPEL7 testing repo :
https://bugzilla.redhat.com/show_bug.cgi?id91973
James Pearson
James Pearson wrote:
In case anyone is interested, the EPEL7 repo has now been updated with the fixed version of marco
James Pearson