Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Unmaintained
KDE Base Apps
Commits
712d12c1
Commit
712d12c1
authored
May 05, 2013
by
David Faure
Browse files
Move bookmarks in reverse order so that their address remains valid.
BUG: 287038 FIXED-IN: 4.10.4
parent
e0c4b447
Changes
2
Hide whitespace changes
Inline
Side-by-side
keditbookmarks/kbookmarkmodel/model.cpp
View file @
712d12c1
...
...
@@ -370,10 +370,11 @@ bool KBookmarkModel::dropMimeData(const QMimeData * data, Qt::DropAction action,
if
(
data
->
hasFormat
(
s_mime_bookmark_addresses
))
{
KBookmark
::
List
bookmarks
;
QList
<
QByteArray
>
addresses
=
data
->
data
(
s_mime_bookmark_addresses
).
split
(
';'
);
qSort
(
addresses
);
Q_FOREACH
(
const
QByteArray
&
address
,
addresses
)
{
KBookmark
bk
=
bookmarkManager
()
->
findByAddress
(
QString
::
fromLatin1
(
address
));
kDebug
()
<<
"Extracted bookmark:"
<<
bk
.
address
();
bookmarks
.
p
ush_back
(
bk
);
bookmarks
.
p
repend
(
bk
);
// reverse order, so that we don't invalidate addresses (#287038)
}
KEBMacroCommand
*
cmd
=
CmdGen
::
itemsMoved
(
this
,
bookmarks
,
addr
,
false
);
...
...
keditbookmarks/kbookmarkmodel/tests/kbookmarkmodeltest.cpp
View file @
712d12c1
...
...
@@ -168,7 +168,7 @@ private Q_SLOTS:
QModelIndex
firstIndex
=
m_model
->
indexForBookmark
(
m_bookmarkManager
->
findByAddress
(
"/0/0"
));
kdeIndex
=
m_model
->
indexForBookmark
(
m_bookmarkManager
->
findByAddress
(
"/0/1"
));
mimeData
=
m_model
->
mimeData
(
QModelIndexList
()
<<
kde
Index
<<
first
Index
);
// TODO: swap
mimeData
=
m_model
->
mimeData
(
QModelIndexList
()
<<
first
Index
<<
kde
Index
);
QModelIndex
folder2Index
=
m_model
->
indexForBookmark
(
m_bookmarkManager
->
findByAddress
(
"/1"
));
ok
=
m_model
->
dropMimeData
(
mimeData
,
Qt
::
MoveAction
,
-
1
,
0
,
folder2Index
);
QVERIFY
(
ok
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment