[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [32119] trunk/blender/source/blender/ editors/space_text: Fix #23983: Text editor does not update immediately when unlinking a text
Sergey Sharybin
g.ulairi at gmail.com
Sat Sep 25 15:27:42 CEST 2010
Revision: 32119
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=32119
Author: nazgul
Date: 2010-09-25 15:27:42 +0200 (Sat, 25 Sep 2010)
Log Message:
-----------
Fix #23983: Text editor does not update immediately when unlinking a text
- Unlinked text block was sending as reference to note which isn't safe at all
- Minor reorgonize of text space listener to use switches instead of big condition
Modified Paths:
--------------
trunk/blender/source/blender/editors/space_text/space_text.c
trunk/blender/source/blender/editors/space_text/text_ops.c
Modified: trunk/blender/source/blender/editors/space_text/space_text.c
===================================================================
--- trunk/blender/source/blender/editors/space_text/space_text.c 2010-09-25 11:30:46 UTC (rev 32118)
+++ trunk/blender/source/blender/editors/space_text/space_text.c 2010-09-25 13:27:42 UTC (rev 32119)
@@ -117,12 +117,25 @@
/* context changes */
switch(wmn->category) {
case NC_TEXT:
- if(!wmn->reference || wmn->reference == st->text || wmn->data == ND_DISPLAY || wmn->action == NA_EDITED) {
+ /* check if active text was changed, no need to redraw if text isn't active
+ reference==NULL means text was unlinked, should update anyway for this
+ case -- no way to know was text active before unlinking or not */
+ if(wmn->reference && wmn->reference != st->text)
+ break;
+
+ if(wmn->data == ND_DISPLAY)
ED_area_tag_redraw(sa);
- if(wmn->action == NA_EDITED)
+ switch(wmn->action) {
+ case NA_EDITED:
if(st->text)
text_update_edited(st->text);
+ ED_area_tag_redraw(sa);
+ /* no break -- fall down to tag redraw */
+ case NA_ADDED:
+ case NA_REMOVED:
+ ED_area_tag_redraw(sa);
+ break;
}
break;
Modified: trunk/blender/source/blender/editors/space_text/text_ops.c
===================================================================
--- trunk/blender/source/blender/editors/space_text/text_ops.c 2010-09-25 11:30:46 UTC (rev 32118)
+++ trunk/blender/source/blender/editors/space_text/text_ops.c 2010-09-25 13:27:42 UTC (rev 32119)
@@ -357,7 +357,7 @@
unlink_text(bmain, text);
free_libblock(&bmain->text, text);
- WM_event_add_notifier(C, NC_TEXT|NA_REMOVED, text);
+ WM_event_add_notifier(C, NC_TEXT|NA_REMOVED, NULL);
return OPERATOR_FINISHED;
}
More information about the Bf-blender-cvs
mailing list