[Bf-blender-cvs] [a304ed1b014] blender2.8: WM: alternate fix for T58904

Campbell Barton noreply at git.blender.org
Fri Dec 7 04:08:21 CET 2018


Commit: a304ed1b014e4e0561b810d7dbaa8768b6713ac0
Author: Campbell Barton
Date:   Fri Dec 7 14:07:05 2018 +1100
Branches: blender2.8
https://developer.blender.org/rBa304ed1b014e4e0561b810d7dbaa8768b6713ac0

WM: alternate fix for T58904

Use messages instead of notifiers.

===================================================================

M	source/blender/editors/space_buttons/space_buttons.c

===================================================================

diff --git a/source/blender/editors/space_buttons/space_buttons.c b/source/blender/editors/space_buttons/space_buttons.c
index 1f1f238daf6..159757139fa 100644
--- a/source/blender/editors/space_buttons/space_buttons.c
+++ b/source/blender/editors/space_buttons/space_buttons.c
@@ -431,6 +431,21 @@ static void buttons_navigation_bar_region_draw(const bContext *C, ARegion *ar)
 	ED_region_panels_draw(C, ar);
 }
 
+static void buttons_navigation_bar_region_message_subscribe(
+        const bContext *UNUSED(C),
+        WorkSpace *UNUSED(workspace), Scene *UNUSED(scene),
+        bScreen *UNUSED(screen), ScrArea *UNUSED(sa), ARegion *ar,
+        struct wmMsgBus *mbus)
+{
+	wmMsgSubscribeValue msg_sub_value_region_tag_redraw = {
+		.owner = ar,
+		.user_data = ar,
+		.notify = ED_region_do_msg_notify_tag_redraw,
+	};
+
+	WM_msg_subscribe_rna_anon_prop(mbus, Window, view_layer, &msg_sub_value_region_tag_redraw);
+}
+
 /* draw a certain button set only if properties area is currently
  * showing that button set, to reduce unnecessary drawing. */
 static void buttons_area_redraw(ScrArea *sa, short buttons)
@@ -732,6 +747,7 @@ void ED_spacetype_buttons(void)
 	art->keymapflag = ED_KEYMAP_UI | ED_KEYMAP_FRAMES;
 	art->init = buttons_navigation_bar_region_init;
 	art->draw = buttons_navigation_bar_region_draw;
+	art->message_subscribe = buttons_navigation_bar_region_message_subscribe;
 	BLI_addhead(&st->regiontypes, art);
 
 	BKE_spacetype_register(st);



More information about the Bf-blender-cvs mailing list