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>2019-06-28 10:35:40 +0300
committerCampbell Barton <ideasman42@gmail.com>2019-06-28 10:38:42 +0300
commit9ec8887599b1c14dac47cca1a073fa50b333d5ee (patch)
treeab26fd2c103e3585b1622bdf80bd8ef86fd0cd48
parentbd227d13787ccecabb5005d7211ce6ce04f60104 (diff)
Fix invalid area tool being set from message passing
This wasn't working with multiple windows, WM_toolsystem_do_msg_notify_tag_refresh could use a workspace from a different window to the screen that owned the area. Instead of fixing, remove these since they aren't needed anymore since changing modes now refreshes the tool system.
-rw-r--r--source/blender/editors/space_view3d/space_view3d.c12
-rw-r--r--source/blender/windowmanager/WM_toolsystem.h4
-rw-r--r--source/blender/windowmanager/intern/wm_toolsystem.c17
3 files changed, 1 insertions, 32 deletions
diff --git a/source/blender/editors/space_view3d/space_view3d.c b/source/blender/editors/space_view3d/space_view3d.c
index c1891865d6d..a90e59745be 100644
--- a/source/blender/editors/space_view3d/space_view3d.c
+++ b/source/blender/editors/space_view3d/space_view3d.c
@@ -980,7 +980,7 @@ static void view3d_main_region_message_subscribe(const struct bContext *C,
struct WorkSpace *UNUSED(workspace),
struct Scene *UNUSED(scene),
struct bScreen *UNUSED(screen),
- struct ScrArea *sa,
+ struct ScrArea *UNUSED(sa),
struct ARegion *ar,
struct wmMsgBus *mbus)
{
@@ -1054,16 +1054,6 @@ static void view3d_main_region_message_subscribe(const struct bContext *C,
break;
}
}
-
- {
- wmMsgSubscribeValue msg_sub_value_region_tag_refresh = {
- .owner = ar,
- .user_data = sa,
- .notify = WM_toolsystem_do_msg_notify_tag_refresh,
- };
- WM_msg_subscribe_rna_anon_prop(mbus, Object, mode, &msg_sub_value_region_tag_refresh);
- WM_msg_subscribe_rna_anon_prop(mbus, LayerObjects, active, &msg_sub_value_region_tag_refresh);
- }
}
/* concept is to retrieve cursor type context-less */
diff --git a/source/blender/windowmanager/WM_toolsystem.h b/source/blender/windowmanager/WM_toolsystem.h
index 5afa0a88560..4d4cb95ec1c 100644
--- a/source/blender/windowmanager/WM_toolsystem.h
+++ b/source/blender/windowmanager/WM_toolsystem.h
@@ -99,10 +99,6 @@ void WM_toolsystem_update_from_context(struct bContext *C,
bool WM_toolsystem_active_tool_is_brush(const struct bContext *C);
-void WM_toolsystem_do_msg_notify_tag_refresh(struct bContext *C,
- struct wmMsgSubscribeKey *msg_key,
- struct wmMsgSubscribeValue *msg_val);
-
struct IDProperty *WM_toolsystem_ref_properties_ensure_idprops(struct bToolRef *tref);
void WM_toolsystem_ref_properties_ensure_ex(struct bToolRef *tref,
const char *idname,
diff --git a/source/blender/windowmanager/intern/wm_toolsystem.c b/source/blender/windowmanager/intern/wm_toolsystem.c
index ae9c6e267e2..1ea39dcd6e0 100644
--- a/source/blender/windowmanager/intern/wm_toolsystem.c
+++ b/source/blender/windowmanager/intern/wm_toolsystem.c
@@ -764,23 +764,6 @@ bool WM_toolsystem_active_tool_is_brush(const bContext *C)
return tref_rt && (tref_rt->data_block[0] != '\0');
}
-/* Follow wmMsgNotifyFn spec */
-void WM_toolsystem_do_msg_notify_tag_refresh(bContext *C,
- wmMsgSubscribeKey *UNUSED(msg_key),
- wmMsgSubscribeValue *msg_val)
-{
- WorkSpace *workspace = CTX_wm_workspace(C);
- ViewLayer *view_layer = CTX_data_view_layer(C);
- ScrArea *sa = msg_val->user_data;
- int space_type = sa->spacetype;
- const bToolKey tkey = {
- .space_type = space_type,
- .mode = WM_toolsystem_mode_from_spacetype(view_layer, sa, sa->spacetype),
- };
- WM_toolsystem_refresh(C, workspace, &tkey);
- WM_toolsystem_refresh_screen_area(workspace, view_layer, sa);
-}
-
IDProperty *WM_toolsystem_ref_properties_ensure_idprops(bToolRef *tref)
{
if (tref->properties == NULL) {