Hmm... I'm not sure if that's a good solution, because the default places shouldn't appear in ~/.local/share/user-places.xbel (which has been the intention by marking them as "system"). Perhaps they could be re-created if missing. Norbert Rafael Fernández López wrote: > SVN commit 820333 by ereslibre: > > This fixes a bit tricky bug. The default places are not "system" ones. I > cannot find that on the spec, and that leads to a problem following the > next steps: > > - Open kwrite, the open/save dialog. You have the default places. > - Add a new place to them (it will be added to > ~/.local/share/user-places.xbel) - only that new place, not Home, Root > or others, only that one. > - Remove ~/.kde or ~/.kde4, your local KDE 4 folder information. > - Open kwrite, the open/save dialog now only contains your own places. > > This is a consequence of adding them as system ones, which makes sense > for devices, but not for this places. Now they are all written to > ~/.local/share/user-places.xbel. > > Not having suddenly Home, Root & friends on the places view is bad, and > you also get a very ugly "Custom Path > Home > Foo" on the top of the > dialog, not even "Root > Home > Foo", since not even root exists on the > places view. > > Thanks to annma for spotting the bug and for ana` for helping out me for > reproducing it. > > CCMAIL: annma@kde.org > CCMAIL: nf2@scheinwelt.at > > > M +0 -11 kfileplacesitem.cpp > M +0 -4 kfileplacesitem_p.h > M +5 -5 kfileplacesmodel.cpp > > > --- trunk/KDE/kdelibs/kfile/kfileplacesitem.cpp #820332:820333 > @@ -185,17 +185,6 @@ > return bookmark; > } > > -KBookmark KFilePlacesItem::createSystemBookmark(KBookmarkManager *manager, > - const QString &label, > - const KUrl &url, > - const QString &iconName) > -{ > - KBookmark bookmark = createBookmark(manager, label, url, iconName); > - bookmark.setMetaDataItem("isSystemItem", "true"); > - return bookmark; > -} > - > - > KBookmark KFilePlacesItem::createDeviceBookmark(KBookmarkManager *manager, > const QString &udi) > { > --- trunk/KDE/kdelibs/kfile/kfileplacesitem_p.h #820332:820333 > @@ -49,10 +49,6 @@ > const QString &label, > const KUrl &url, > const QString &iconName); > - static KBookmark createSystemBookmark(KBookmarkManager *manager, > - const QString &label, > - const KUrl &url, > - const QString &iconName); > static KBookmark createDeviceBookmark(KBookmarkManager *manager, > const QString &udi); > > --- trunk/KDE/kdelibs/kfile/kfileplacesmodel.cpp #820332:820333 > @@ -90,19 +90,19 @@ > // Let's put some places in there if it's empty > KBookmarkGroup root = d->bookmarkManager->root(); > if (root.first().isNull()) { > - KFilePlacesItem::createSystemBookmark(d->bookmarkManager, > + KFilePlacesItem::createBookmark(d->bookmarkManager, > i18nc("Home Directory", "Home"), KUrl(KUser().homeDir()), "user-home"); > - KFilePlacesItem::createSystemBookmark(d->bookmarkManager, > + KFilePlacesItem::createBookmark(d->bookmarkManager, > i18n("Network"), KUrl("remote:/"), "network-workgroup"); > #ifdef Q_OS_WIN > //C:/ as root for windows...forward slashes are valid too and are used in much/most of the KDE code on Windows > - KFilePlacesItem::createSystemBookmark(d->bookmarkManager, > + KFilePlacesItem::createBookmark(d->bookmarkManager, > i18n("Root"), KUrl("C:/"), "folder-red"); > #else > - KFilePlacesItem::createSystemBookmark(d->bookmarkManager, > + KFilePlacesItem::createBookmark(d->bookmarkManager, > i18n("Root"), KUrl("/"), "folder-red"); > #endif > - KFilePlacesItem::createSystemBookmark(d->bookmarkManager, > + KFilePlacesItem::createBookmark(d->bookmarkManager, > i18n("Trash"), KUrl("trash:/"), "user-trash"); > } > >