Review Request 128201: Improved StatusbarProgressDidget that looks better on OS X and Linux
René J.V. Bertin
rjvbertin at gmail.com
Mon Jun 20 10:56:30 UTC 2016
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/128201/
-----------------------------------------------------------
(Updated June 20, 2016, 12:56 p.m.)
Review request for KDevelop and David Faure.
Changes
-------
Here's a series of screenshots showing how the widget looks on X11 with a flat button under Breeze, Oxygen and QtCurve.
Any KDevelop developers care to comment on this choice? I kind of like how the widget looks under Breeze; with the round Ciment icon I think I prefer to have a visible rectangular button rather than what amounts to a round button (nowadays at least).
The code is almost back to its original intent: use a non-standard button size except with the Macintosh style.
One can even skip the "additional adjustments", but then the progressbar becomes considerably taller, the heigh it has when the widget is expanded. I personnally don't like though it does have the advantage of consistency when the widget is expanded.
```
if (!macWidgetStyle) {
// Adjust maximumHeight, such that its value corresponds to
// fontMetrics().height() + 2
// for Breeze, Oxygen, Fusion, Windows and QtCurve
// (the 6 follows from the sizeHint() code)
maximumHeight -= 6;
// additional adjustments:
m_pButton->setAttribute( Qt::WA_LayoutUsesWidgetRect, true );
stack->setMaximumHeight( maximumHeight );
}
iconSize.scale( maximumHeight, maximumHeight, Qt::KeepAspectRatio );
m_pButton->setFlat( true );
m_pButton->setMaximumWidth( m_pButton->iconSize().width() + 4 );
m_pButton->setIconSize(iconSize);
box->addWidget( m_pButton );
```
NB: I have no idea where the reddish vertical hairline comes from. It's visible before the widget is even created.
Repository: kdevplatform
Description
-------
I came across this old bit of code, judging from the use of the deprecated `Q_OS_MAC` token.
Some quick testing suggests that using `WA_LayoutUsesWidgetRect` achieves what I think is the intended effect without platform-specific code. (That platform test ought really check for using the `macintosh` widget style btw, rather than "are we running on OS X").
Diffs
-----
shell/progresswidget/statusbarprogresswidget.cpp 1a32ea8
Diff: https://git.reviewboard.kde.org/r/128201/diff/
Testing
-------
For now only on OS X, with the native theme as well as QtCurve, Breeze and Oxygen.
File Attachments (updated)
----------------
OS X/Mac native *without* the patch
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/16/1498e8dc-4541-473b-b6db-2c2ae138cbc3__Screen_Shot_2016-06-17_at_00.17.17.png
stock widget under Linux (same layout using Breeze)
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/17/dd352994-1753-4b33-a0d2-cd2a3132df48__progress-stock.png
OS X/native with the new patch
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/18/8e6a0761-b760-4f41-be67-7f9ba7318349__Screen_Shot_2016-06-18_at_19.21.52.png
OS X using QtCurve with the new patch
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/18/3535be4c-3034-493d-88c0-61ab9a13844d__Screen_Shot_2016-06-18_at_19.24.46.png
Linux, Breeze, new patch
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/18/359d5f57-bdaa-45a7-a0b0-6acb5609459f__Screen_Shot_2016-06-18_at_19.16.19.png
Linux, QtCurve, new patch
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/18/f5eb0902-884a-47e5-bf84-a3581a21bece__Screen_Shot_2016-06-18_at_19.14.17.png
Linux, Oxygen, new patch
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/18/536d4f09-8409-4eb4-80ca-27d3f744d6a0__Screen_Shot_2016-06-18_at_19.16.56.png
Linux, Breeze + Breeze icons, new patch
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/19/ee2d687e-69ea-493f-9ae4-87d90be614e2__progress-patched-breeze.png
Linux, QtCurve + Breeze icons, new patch
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/19/7e3cfc5c-cb80-491c-b4d2-4d6f9c839a48__progress-patched-qtcurve.png
Linux,Oxygen+Breeze icons, new patch
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/19/0b10d97d-3ba6-4d05-a663-3a03e29bc1c9__progress-patched-oxygen.png
Linux, Breeze, new patch with maximumHeight from progressBar->sizeHint().height()
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/19/2a5b48bf-38f1-4ba9-a291-5de65537f8e1__progress-patched-breeze2.png
X11, Breeze style + icons
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/20/346b2bdb-6577-416b-80ff-dc16ff4f5a27__Screen_Shot_2016-06-20_at_12.27.58.png
X11, Oxygen style, Breeze icons
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/20/9693a989-5e2b-476a-bf61-90bff8532cef__Screen_Shot_2016-06-20_at_12.29.13.png
X11, QtCurve style, Breeze icons
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/20/8ef04667-1ef7-4a5f-915b-364a90dbca4a__Screen_Shot_2016-06-20_at_12.30.04.png
X11, Oxygen style & icons
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/20/0ab45b09-ba1e-4987-b431-c7b0869e23a2__Screen_Shot_2016-06-20_at_12.31.17.png
X11, Oxygen style & icons, expanded state
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/20/b43b065e-7b1f-4c3f-8548-0c60842c81c6__xzHbU.png
X11, Breeze, no "additional adjustments"
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/20/4801a619-3092-4b51-8549-36867189fdd9__Screen_Shot_2016-06-20_at_12.48.34.png
X11, Oxygen, taller progbar due to "no additional adjustments"
https://git.reviewboard.kde.org/media/uploaded/files/2016/06/20/f9db48ac-4a0d-4574-8daf-bcfd3781baf0__Screen_Shot_2016-06-20_at_12.48.56.png
Thanks,
René J.V. Bertin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20160620/5724e50a/attachment.html>
More information about the KDevelop-devel
mailing list