[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-panel-devel
Subject: D14426: [Folder View] Create KFilePlacesModel only when needed and listen for changes
From: Kai Uwe Broulik <noreply () phabricator ! kde ! org>
Date: 2018-07-27 12:32:47
Message-ID: 8d7eb6a5c59b80263ea216f17be124b3 () localhost ! localdomain
[Download RAW message or body]
[Attachment #2 (text/plain)]
broulik created this revision.
broulik added reviewers: Plasma, hein.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.
broulik requested review of this revision.
REVISION SUMMARY
When no label is displayed, there's no point in creating a `KFilePlacesModel`
Also, only emit a change for `displayLabel` when it actually changed.
Moreover, listen to changes in the `KFilePlacesModel` and update the label if \
needed
TEST PLAN
- My test partition still has its proper "Device" name (devices are populated \
deferred, so if we didn't listen for changes, creating a model and asking for \
`closestItem` right away would return Root (`/media/foo` is closed to \
`/`)
- Reduces the number of `displayLabelChanged` emissions to half on startup
- Added a Pictures folder view, renamed my Pictures place in Dolphin, label updated \
immediately
- Verified in GammaRay there's no `KFilePlacesModel` instance in plasmashell unless \
having a Folder View widget on desktop or panel (but not in the default containment \
case)
REPOSITORY
R119 Plasma Desktop
REVISION DETAIL
https://phabricator.kde.org/D14426
AFFECTED FILES
containments/desktop/plugins/folder/labelgenerator.cpp
containments/desktop/plugins/folder/labelgenerator.h
To: broulik, #plasma, hein
Cc: plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, jensreuterberg, \
abetts, sebas, apol, mart
[Attachment #3 (text/html)]
<table><tr><td style="">broulik created this revision.<br />broulik added reviewers: \
Plasma, hein.<br />Restricted Application added a project: Plasma.<br />Restricted \
Application added a subscriber: plasma-devel.<br />broulik requested review of this \
revision. </td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; \
float: right; color: #464C5C; font-weight: bold; border-radius: 3px; \
background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); \
display: inline-block; border: 1px solid rgba(71,87,120,.2);" \
href="https://phabricator.kde.org/D14426">View Revision</a></tr></table><br \
/><div><strong>REVISION SUMMARY</strong><div><p>When no label is displayed, \
there's no point in creating a <tt style="background: #ebebeb; font-size: \
13px;">KFilePlacesModel</tt><br /> Also, only emit a change for <tt \
style="background: #ebebeb; font-size: 13px;">displayLabel</tt> when it actually \
changed.<br /> Moreover, listen to changes in the <tt style="background: #ebebeb; \
font-size: 13px;">KFilePlacesModel</tt> and update the label if \
needed</p></div></div><br /><div><strong>TEST PLAN</strong><div><ul \
class="remarkup-list"> <li class="remarkup-list-item">My test partition still has its \
proper "Device" name (devices are populated deferred, so if we didn't \
listen for changes, creating a model and asking for <tt style="background: #ebebeb; \
font-size: 13px;">closestItem</tt> right away would return Root (<tt \
style="background: #ebebeb; font-size: 13px;">/media/foo</tt> is closed to <tt \
style="background: #ebebeb; font-size: 13px;">/</tt>)</li> <li \
class="remarkup-list-item">Reduces the number of <tt style="background: #ebebeb; \
font-size: 13px;">displayLabelChanged</tt> emissions to half on startup</li> <li \
class="remarkup-list-item">Added a Pictures folder view, renamed my Pictures place in \
Dolphin, label updated immediately</li> <li class="remarkup-list-item">Verified in \
GammaRay there's no <tt style="background: #ebebeb; font-size: \
13px;">KFilePlacesModel</tt> instance in plasmashell unless having a Folder View \
widget on desktop or panel (but not in the default containment case)</li> \
</ul></div></div><br /><div><strong>REPOSITORY</strong><div><div>R119 Plasma \
Desktop</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a \
href="https://phabricator.kde.org/D14426">https://phabricator.kde.org/D14426</a></div></div><br \
/><div><strong>AFFECTED \
FILES</strong><div><div>containments/desktop/plugins/folder/labelgenerator.cpp<br /> \
containments/desktop/plugins/folder/labelgenerator.h</div></div></div><br \
/><div><strong>To: </strong>broulik, Plasma, hein<br /><strong>Cc: \
</strong>plasma-devel, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, \
jensreuterberg, abetts, sebas, apol, mart<br /></div>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic