Fix #117989: GPv3: Cannot move Node(s) in Geo Node Editor in 'Edit Mode'

The transform system reacts to `CTX_GPENCIL_STROKES` in a special way
that is only useful in `SPACE_VIEW3D`.
There was a similar case fixed in 23e9ebfdbd, but there would be
multiple other places to also check the spacetype.

So now do this more generalized and only ever set `CTX_GPENCIL_STROKES`
if we are in editmode (that check existed before) **and** in
`SPACE_VIEW3D`.

Pull Request: https://projects.blender.org/blender/blender/pulls/118042
This commit is contained in:
Philipp Oeser
2024-02-09 15:11:32 +01:00
committed by Philipp Oeser
parent fc56ae4e30
commit 568c99d191
2 changed files with 4 additions and 2 deletions

View File

@@ -908,7 +908,7 @@ static TransConvertTypeInfo *convert_type_get(const TransInfo *t, Object **r_obj
if (t->options & CTX_EDGE_DATA) {
return &TransConvertType_MeshEdge;
}
if ((t->options & CTX_GPENCIL_STROKES) && (t->spacetype == SPACE_VIEW3D)) {
if (t->options & CTX_GPENCIL_STROKES) {
if (t->obedit_type == OB_GREASE_PENCIL) {
return &TransConvertType_GreasePencil;
}

View File

@@ -230,7 +230,9 @@ void initTransInfo(bContext *C, TransInfo *t, wmOperator *op, const wmEvent *eve
}
/* Grease Pencil editing context */
if (t->obedit_type == OB_GREASE_PENCIL && object_mode == OB_MODE_EDIT) {
if (t->obedit_type == OB_GREASE_PENCIL && object_mode == OB_MODE_EDIT &&
(area->spacetype == SPACE_VIEW3D))
{
t->options |= CTX_GPENCIL_STROKES;
}