Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2021-10-18 11:28:17 +0300
committerCampbell Barton <ideasman42@gmail.com>2021-10-18 11:29:36 +0300
commit746ee29d3638402e2435f47787087b6458f026c7 (patch)
treeb5ab3d412b4752424d77f1a487acdfb9a1a9616c /source/blender
parent4f3f79c38205c35c304b34122a91b4f102ce992e (diff)
Fix T91700: Strips can be transformed in scope display modes
Hide gizmos & prevent transform & selection in scope display.
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/editors/space_sequencer/sequencer_select.c9
-rw-r--r--source/blender/editors/transform/transform_convert_cursor.c4
-rw-r--r--source/blender/editors/transform/transform_convert_sequencer_image.c7
-rw-r--r--source/blender/editors/transform/transform_gizmo_2d.c3
4 files changed, 21 insertions, 2 deletions
diff --git a/source/blender/editors/space_sequencer/sequencer_select.c b/source/blender/editors/space_sequencer/sequencer_select.c
index e193cde4535..b4271ebd812 100644
--- a/source/blender/editors/space_sequencer/sequencer_select.c
+++ b/source/blender/editors/space_sequencer/sequencer_select.c
@@ -786,11 +786,19 @@ static int sequencer_select_exec(bContext *C, wmOperator *op)
View2D *v2d = UI_view2d_fromcontext(C);
Scene *scene = CTX_data_scene(C);
Editing *ed = SEQ_editing_get(scene);
+ ARegion *region = CTX_wm_region(C);
if (ed == NULL) {
return OPERATOR_CANCELLED;
}
+ if (region->regiontype == RGN_TYPE_PREVIEW) {
+ const SpaceSeq *sseq = CTX_wm_space_seq(C);
+ if (sseq->mainb != SEQ_DRAW_IMG_IMBUF) {
+ return OPERATOR_CANCELLED;
+ }
+ }
+
bool extend = RNA_boolean_get(op->ptr, "extend");
bool deselect = RNA_boolean_get(op->ptr, "deselect");
bool deselect_all = RNA_boolean_get(op->ptr, "deselect_all");
@@ -801,7 +809,6 @@ static int sequencer_select_exec(bContext *C, wmOperator *op)
mval[0] = RNA_int_get(op->ptr, "mouse_x");
mval[1] = RNA_int_get(op->ptr, "mouse_y");
- ARegion *region = CTX_wm_region(C);
int handle_clicked = SEQ_SIDE_NONE;
Sequence *seq = NULL;
if (region->regiontype == RGN_TYPE_PREVIEW) {
diff --git a/source/blender/editors/transform/transform_convert_cursor.c b/source/blender/editors/transform/transform_convert_cursor.c
index 8a4a13eb4db..ed96eba7f6c 100644
--- a/source/blender/editors/transform/transform_convert_cursor.c
+++ b/source/blender/editors/transform/transform_convert_cursor.c
@@ -111,7 +111,9 @@ void recalcData_cursor_image(TransInfo *t)
void createTransCursor_sequencer(TransInfo *t)
{
SpaceSeq *sseq = t->area->spacedata.first;
-
+ if (sseq->mainb != SEQ_DRAW_IMG_IMBUF) {
+ return;
+ }
createTransCursor_2D_impl(t, sseq->cursor);
}
diff --git a/source/blender/editors/transform/transform_convert_sequencer_image.c b/source/blender/editors/transform/transform_convert_sequencer_image.c
index c0dbd5404a4..e8af1680a41 100644
--- a/source/blender/editors/transform/transform_convert_sequencer_image.c
+++ b/source/blender/editors/transform/transform_convert_sequencer_image.c
@@ -123,6 +123,13 @@ void createTransSeqImageData(TransInfo *t)
return;
}
+ {
+ const SpaceSeq *sseq = t->area->spacedata.first;
+ if (sseq->mainb != SEQ_DRAW_IMG_IMBUF) {
+ return;
+ }
+ }
+
ListBase *seqbase = SEQ_active_seqbase_get(ed);
SeqCollection *strips = SEQ_query_rendered_strips(seqbase, t->scene->r.cfra, 0);
SEQ_filter_selected_strips(strips);
diff --git a/source/blender/editors/transform/transform_gizmo_2d.c b/source/blender/editors/transform/transform_gizmo_2d.c
index 84f7900e31c..7a23a4a92ce 100644
--- a/source/blender/editors/transform/transform_gizmo_2d.c
+++ b/source/blender/editors/transform/transform_gizmo_2d.c
@@ -96,6 +96,9 @@ static bool gizmo2d_generic_poll(const bContext *C, wmGizmoGroupType *gzgt)
if (sseq->gizmo_flag & (SEQ_GIZMO_HIDE | SEQ_GIZMO_HIDE_TOOL)) {
return false;
}
+ if (sseq->mainb != SEQ_DRAW_IMG_IMBUF) {
+ return false;
+ }
Scene *scene = CTX_data_scene(C);
Editing *ed = SEQ_editing_get(scene);
if (ed == NULL) {