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
Multimedia
Kdenlive
Commits
c1b0f275
Commit
c1b0f275
authored
Nov 25, 2021
by
Jean-Baptiste Mardelle
Browse files
Spacer tool: Don't allow independant move of grouped items.
CCBUG: 443324
parent
369f7bae
Pipeline
#101143
skipped
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
src/timeline2/model/timelinefunctions.cpp
View file @
c1b0f275
...
...
@@ -337,9 +337,9 @@ int TimelineFunctions::requestSpacerStartOperation(const std::shared_ptr<Timelin
std
::
unordered_set
<
int
>
leavesToKeep
;
for
(
int
l
:
leaves
)
{
int
pos
=
timeline
->
getItemPosition
(
l
);
int
checkedParent
=
timeline
->
m_groups
->
getDirectAncestor
(
l
);
//
int checkedParent = timeline->m_groups->getDirectAncestor(l);
if
(
pos
+
timeline
->
getItemPlaytime
(
l
)
<
position
)
{
if
(
checkedParent
==
r
)
{
/*
if (checkedParent == r) {
leavesToRemove.insert(l);
} else {
int grandParent = timeline->m_groups->getDirectAncestor(checkedParent);
...
...
@@ -348,9 +348,9 @@ int TimelineFunctions::requestSpacerStartOperation(const std::shared_ptr<Timelin
grandParent = timeline->m_groups->getDirectAncestor(checkedParent);
}
leavesToRemove.insert(checkedParent);
}
}
*/
}
else
if
(
ignoreMultiTrackGroups
&&
trackId
>
-
1
&&
timeline
->
getItemTrackId
(
l
)
!=
trackId
)
{
if
(
checkedParent
==
r
)
{
/*
if (checkedParent == r) {
leavesToRemove.insert(l);
} else {
int grandParent = timeline->m_groups->getDirectAncestor(checkedParent);
...
...
@@ -361,8 +361,9 @@ int TimelineFunctions::requestSpacerStartOperation(const std::shared_ptr<Timelin
leavesToRemove.insert(checkedParent);
}
leavesToRemove.insert(l);
*/
}
else
{
if
(
checkedParent
==
r
)
{
/*
if (checkedParent == r) {
leavesToKeep.insert(l);
} else {
int grandParent = timeline->m_groups->getDirectAncestor(checkedParent);
...
...
@@ -371,7 +372,7 @@ int TimelineFunctions::requestSpacerStartOperation(const std::shared_ptr<Timelin
grandParent = timeline->m_groups->getDirectAncestor(checkedParent);
}
leavesToKeep.insert(checkedParent);
}
}
*/
int
tid
=
timeline
->
getItemTrackId
(
l
);
// Check space in all tracks
if
(
!
firstPositions
.
contains
(
tid
))
{
...
...
@@ -388,7 +389,7 @@ int TimelineFunctions::requestSpacerStartOperation(const std::shared_ptr<Timelin
}
}
}
if
(
leavesToKeep
.
size
()
==
1
)
{
/*
if (leavesToKeep.size() == 1) {
// Only 1 item left in group, group will be deleted
int master = *leavesToKeep.begin();
roots.insert(master);
...
...
@@ -400,7 +401,7 @@ int TimelineFunctions::requestSpacerStartOperation(const std::shared_ptr<Timelin
for (int l : leavesToRemove) {
spacerUngroupedItems.insert(l, r);
}
}
}
*/
}
else
{
int
pos
=
timeline
->
getItemPosition
(
r
);
int
tid
=
timeline
->
getItemTrackId
(
r
);
...
...
@@ -418,7 +419,7 @@ int TimelineFunctions::requestSpacerStartOperation(const std::shared_ptr<Timelin
}
}
}
for
(
int
r
:
groupsToRemove
)
{
/*
for (int r : groupsToRemove) {
roots.erase(r);
}
...
...
@@ -428,7 +429,7 @@ int TimelineFunctions::requestSpacerStartOperation(const std::shared_ptr<Timelin
while (i.hasNext()) {
i.next();
timeline->m_groups->ungroupItem(i.value(), undo, redo, false);
}
}
*/
timeline
->
requestSetSelection
(
roots
);
if
(
!
firstPositions
.
isEmpty
())
{
...
...
Julius Künzel
⚠
@jlskuz
mentioned in commit
cdc5d15f
·
Dec 15, 2021
mentioned in commit
cdc5d15f
mentioned in commit cdc5d15fc358a021312dd9fc466415d81578b474
Toggle commit list
Write
Preview
Supports
Markdown
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