D7477: Limit folder panel to home directory if inside home
Emmanuel Pescosta
noreply at phabricator.kde.org
Tue Aug 29 18:43:29 BST 2017
emmanuelp requested changes to this revision.
emmanuelp added a comment.
This revision now requires changes to proceed.
Nice work! :)
I have added some suggestions and questions.
Please make use of `QString::SkipEmptyParts`, everything else looks really good!
INLINE COMMENTS
> kfileitemmodel.cpp:643
> + // this happens if baseUrl is not root but a home directory, see FoldersPanel
> + if (subDirs.at(i).isEmpty()) {
> + continue;
Better use the `QString::SkipEmptyParts` split behavior provided by `QString::split` [1].
[1] https://doc.qt.io/qt-5/qstring.html#split
> folderspanel.cpp:195
>
> - loadTree(url());
> + if (url().isValid()) {
> + loadTree(url());
Why is this change required?
> folderspanel.cpp:329
> if (url.isLocalFile()) {
> - // Use the root directory as base for local URLs (#150941)
> - baseUrl = QUrl::fromLocalFile(QDir::rootPath());
> + if (FoldersPanelSettings::limitFoldersPanelToHome() && (Dolphin::homeUrl().isParentOf(url) || Dolphin::homeUrl() == url)) {
> + baseUrl = Dolphin::homeUrl();
Personal taste: To make the condition more readable I would split it up like this:
const bool isInHomeFolder = Dolphin::homeUrl().isParentOf(url) || (Dolphin::homeUrl() == url);
if (FoldersPanelSettings::limitFoldersPanelToHome() && isInHomeFolder) {
....
} else {
....
}
> folderspanel.h:87
> +public slots:
> + void refreshFoldersPanel();
> +
Personal taste: I would just name it `refresh` because the `FoldersPanel` suffix is somehow redundant.
As far as I can see, this slot can be converted into a private method? Maybe name it `reloadTree` because this is what it actually does.
REPOSITORY
R318 Dolphin
REVISION DETAIL
https://phabricator.kde.org/D7477
To: hoffmannrobert, #dolphin, elvisangelaccio, emmanuelp
Cc: emmanuelp, elvisangelaccio, #konqueror, #dolphin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.kde.org/mailman/private/kfm-devel/attachments/20170829/e20bb519/attachment.htm>
More information about the kfm-devel
mailing list