I have an example application that came with Qt (dialogs/standarddialogs) and modified it so that it displays dialog on every screen:
for(int i=0;i<app.desktop()->screenCount();i++)
{
Dialog* dialog = new Dialog(app.desktop()->screen(开发者_StackOverflowi));
dialog->show();
}
return app.exec();
When testing on Xnest on application default screen (the one from which the application has been started) everything works ok. However, on the other screen the icons in message boxes are not displayed correctly.
The problem can be reproduced on both solaris and linux. However, when I try Xephyr instead of Xnest the problem disappears (on linux). On the other hand this is not a problem with Xnest itself as on Exceed the problem can also be reproduced (but the icons are not displayed at all).
Has anybody seen this kind of problem? Do you think it might be a problem with Qt or configuration of X server? Or maybe I need to compile Qt with some special options?
It seems to be a bug in Qt X11 graphics system. If I set QT_GRAPHICSSYSTEM
to raster
the icons are displayed properly.
精彩评论