[Bug 257263] New: Oxygen-style styled sunken QFrame around QGLWidget shows rubbish when using 0 margins

pato101 at gmail.com pato101 at gmail.com
Thu Nov 18 17:51:40 GMT 2010


https://bugs.kde.org/show_bug.cgi?id=257263

           Summary: Oxygen-style styled sunken QFrame around QGLWidget
                    shows rubbish when using 0 margins
           Product: kde
           Version: unspecified
          Platform: Ubuntu Packages
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: general
        AssignedTo: unassigned-bugs at kde.org
        ReportedBy: pato101 at gmail.com


Created an attachment (id=53528)
 --> (http://bugs.kde.org/attachment.cgi?id=53528)
Left: the new oxygen.so - Right: the SUSE's older oxygen.so enforced

Version:           unspecified (using KDE 4.5.3) 
OS:                Linux

This code (inserted at hellowgl demo window.cpp):
    QHBoxLayout *mainLayout = new QHBoxLayout;
    QFrame * frame = new QFrame(this);
    QHBoxLayout * frameLayout = new QHBoxLayout;
    frameLayout->setContentsMargins(0,0,0,0);
    frame->setLayout(frameLayout);
    frame->setFrameStyle(QFrame::StyledPanel|QFrame::Sunken);
    frameLayout->addWidget(glWidget);

shows 1pixel rubbish around glWidget with the oxygen-style shipped at Maverick.
I've substitued the /usr/lib/kde4/plugins/styles/oxygen.so by openSuSE 11.3's
one and, then, the display is just correct.

With the newer oxygen.so (Maverik and/or kubuntu-ppa's) despite of the rubissh
the glwidget is pushed to a higher margin than expected; rubish dissapears
using large enough margins (about 7 pixel). With the older oxygen.so, the
glWidget gets tightly close to the frame bounds (about 1 pixel due to frame
rounding) and there is no rubbish and the visuals are correct

Reproducible: Always

Steps to Reproduce:
Just modify hellowgl example to insert an styled panel sunken frame where to
place the glWidget, and set the layout margins to 0 (or anything lower than 7).
The code posted above would suffice.

Actual Results:  
The glWidget is drawn, but there is a zone between the frame and the glWidget
where there is rubbish; resize the window if you don't see the rubbish on first
time. Also, the margin used is not the specified one: this is clear when
specifying 0 margins.

Expected Results:  
Tighter glWidget to the frame and no rubish (as it happens with the oxygen.so
from SuSE 11.3's (compiled with Qt 4.6.3, but I am using directly Qt 4.7 here
and surprisingly the oxygen.so does not crash even I have only subsituted the
oxygen.so and nothing else)

I recall same kind of problems with the Bespin style time ago (I decided to
uninstall bespin and never tried since then).

Behaviour in lucid was just fine.
Behaviour in OpenSuSE 11.3 is just fine.
Behaviour with oxygen-transparent is also wrong.

With raised frames rubish does not happen. With panel style there are not
problems. I've no seen problems with other styles (plastique, polyester,
qtcurve have round corners at the styled frames and do not show this problem).
It seems something restricted to styled sunken panels in oxygen style.

The attachment image shows what it is wrong and how it should be.

-- 
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the Unassigned-bugs mailing list