Review Request 122717: Improve tooltip layouting

David Edmundson david at davidedmundson.co.uk
Wed Feb 25 10:23:24 UTC 2015


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/122717/#review76591
-----------------------------------------------------------


+10000 to the approach.

It's a lot neater, and I love layouts.


src/declarativeimports/core/private/DefaultToolTip.qml
<https://git.reviewboard.kde.org/r/122717/#comment52761>

    anchors.centerIn: parent



src/declarativeimports/core/private/DefaultToolTip.qml
<https://git.reviewboard.kde.org/r/122717/#comment52762>

    You can reduce this a lot further.
    
    You currently have
    
    RowLayout {
    Item 
    {
       Layout.Stuff
       Image {
         lotsOfStuff
       }
       Icon {
          lotsOfStuff
       }
    }
    }
    
    this can become
    
        RowLayout {
    
            anchors.centerIn: parent
    
            spacing: units.gridUnit / 2
    
            Image {
                id: tooltipImage
    
                Layout.rowSpan: 2
    
                source: toolTip ? toolTip.image : ""
                visible: toolTip && toolTip.image
            }
    
            PlasmaCore.IconItem {
                id: tooltipIcon
    
                Layout.rowSpan: 2
    
                implicitWidth: units.iconSizes.medium
                implicitHeight: width
                source: toolTip && toolTip.icon != null ? toolTip.icon : ""
    
                visible: toolTip && toolTip.icon && !toolTip.image
            }
    
    As long as you set the visibility to false the layout engine will simply ignore it.



src/declarativeimports/core/private/DefaultToolTip.qml
<https://git.reviewboard.kde.org/r/122717/#comment52764>

    you don't need the visible check.
    
    Layout will set it to 0 if it's invibile for you.



src/declarativeimports/core/private/DefaultToolTip.qml
<https://git.reviewboard.kde.org/r/122717/#comment52763>

    just set the Layout.preferredWidth instead of min and max.
    (and on the item below)


- David Edmundson


On Feb. 25, 2015, 3:19 a.m., Sebastian Kügler wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/122717/
> -----------------------------------------------------------
> 
> (Updated Feb. 25, 2015, 3:19 a.m.)
> 
> 
> Review request for Plasma.
> 
> 
> Repository: plasma-framework
> 
> 
> Description
> -------
> 
> Improve tooltip layouting
> 
> This patch ports the default tooltip away from custom spacing,
> positioning and Row/Column to QtQuick.Layouts. It makes the sizing more
> predictable, and the code more modern and readable. Tooltips feel to
> behave a bit smoother with this patch.
> 
> In the process, this...
> - fixes spacing when no icon or image is set
> - limits the maximum height of the subtext to 8 lines (this prevents the
>   klipper tooltip for example from growing super-high)
> - Makes the icon on the LHS proportional to the text
> - Limits the width a bit more to prevent super-wide tooltips
> - makes it use units.gridUnit throughout
> 
> Changelog: Improve tooltip layout
> 
> This is the more radical approach to https://git.reviewboard.kde.org/r/122715/
> 
> 
> Diffs
> -----
> 
>   src/declarativeimports/core/private/DefaultToolTip.qml d1be6ae42d1c093100201dd9e20670edd6381c57 
> 
> Diff: https://git.reviewboard.kde.org/r/122717/diff/
> 
> 
> Testing
> -------
> 
> Tested all applets' tooltips in the default panel
> 
> 
> File Attachments
> ----------------
> 
> launcher (old)
>   https://git.reviewboard.kde.org/media/uploaded/files/2015/02/25/a6c636ce-3aef-4d5a-82f0-d78f9dab19a1__old-kickoff.png
> pager (old)
>   https://git.reviewboard.kde.org/media/uploaded/files/2015/02/25/fae793bb-2965-4a81-be27-08efce5b3838__old-pager.png
> kdeconnect (old)
>   https://git.reviewboard.kde.org/media/uploaded/files/2015/02/25/fc079c52-be17-47cf-bd11-976aed566155__old-kdeconnect.png
> clock (old)
>   https://git.reviewboard.kde.org/media/uploaded/files/2015/02/25/8214146b-cdd4-41d7-b406-f6fc404585cc__old-clock.png
> new-kickoff.png
>   https://git.reviewboard.kde.org/media/uploaded/files/2015/02/25/9a96304f-1deb-4f57-9417-121a95b7ed03__new-kickoff.png
> new-pager.png
>   https://git.reviewboard.kde.org/media/uploaded/files/2015/02/25/e2c5738f-e701-4a5e-a179-cedc6bb55181__new-pager.png
> new-kdeconnect.png
>   https://git.reviewboard.kde.org/media/uploaded/files/2015/02/25/0c73a854-de8a-4dc2-bd57-c22e0700dbb5__new-kdeconnect.png
> new-clock.png
>   https://git.reviewboard.kde.org/media/uploaded/files/2015/02/25/7311d304-cdf3-4bf2-8fdc-519d1a4c020d__new-clock.png
> 
> 
> Thanks,
> 
> Sebastian Kügler
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20150225/273503e8/attachment-0001.html>


More information about the Plasma-devel mailing list