https://bugs.kde.org/show_bug.cgi?id=428973
Bug ID: 428973 Summary: Border one pixel off when drawing 'QStyle::PE_Frame' primitive using Breeze style Product: Breeze Version: 5.17.5 Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: QStyle Assignee: unassigned-b...@kde.org Reporter: m.wegh...@posteo.de Target Milestone: --- Created attachment 133230 --> https://bugs.kde.org/attachment.cgi?id=133230&action=edit Small sample program SUMMARY When drawing a frame border/outline using QApplication::style()->drawPrimitive(QStyle::PE_Frame,...) with the Breeze style, the border is not drawn at the outer edge of the rectangle being passed, but an additional pixel "too far inside" of the rectangle. This e.g. leads to borders not being shown correctly when LibreOffice is used with the qt5/kf5 integration (s. details below.) STEPS TO REPRODUCE 1. Compile attached sample program "main.cpp" 2. run it (it creates an image file in /tmp/frame.png) 3. open the file /tmp/frame.png and check the position and total size of the rectangle, including the border OBSERVED RESULT * The rectangle border starts at pixel (6,6). * The rectangle (including the border) has a width and height of 8 pixels. EXPECTED RESULT Since the rect that was specified in the option as a 'QRect(5, 5, 10, 10)': * The rectangle border should start at pixel (5,5). * The rectangle (including the border) should have a width of and height of 10 pixels SOFTWARE/OS VERSIONS Operating System: Debian GNU/Linux KDE Plasma Version: 5.17.5 KDE Frameworks Version: 5.74.0 Qt Version: 5.15.1 Kernel Version: 5.9.0-1-amd64 OS Type: 64-bit Processors: 12 × Intel® Core™ i7-9850H CPU @ 2.60GHz Memory: 62.4 GiB of RAM ADDITIONAL INFORMATION * The border is placed as expected when using the Fusion style instead (e.g. by setting env variable QT_STYLE_OVERRIDE=Fusion). * The border is placed as expected when using a QStyle::PE_FrameWindow primitive instead of QStyle::PE_Frame. * Tested with Breeze style 5.17.5 from Debian packages as well as current git master (as of c06b43dc99d68543f6f100517883620f60028f9c). * This bug report is based on LibreOffice bug reports https://bugs.documentfoundation.org/show_bug.cgi?id=138010 and https://bugs.documentfoundation.org/show_bug.cgi?id=137956. The issue described here leads to various borders not being shown when LibreOffice is used with the qt5/kf5 integration and the Breeze style. From my analysis, it's a bug in the Breeze theme, I plan to submit a merge request to fix this soon. -- You are receiving this mail because: You are watching all bug changes.