diff options
Diffstat (limited to 'composer/listener.c')
-rw-r--r-- | composer/listener.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/composer/listener.c b/composer/listener.c index 0d0dc2f652..7f2f2d7e9a 100644 --- a/composer/listener.c +++ b/composer/listener.c @@ -195,9 +195,10 @@ impl_event (PortableServer_Servant _servant, g_free (url); } } else if (!strcmp (name, "delete")) { - CORBA_char *orig; - if (GNOME_GtkHTML_Editor_Engine_isParagraphEmpty (l->composer->editor_engine, ev)) { + CORBA_char *orig; + CORBA_char *signature; + orig = GNOME_GtkHTML_Editor_Engine_getParagraphData (l->composer->editor_engine, "orig", ev); if (ev->_major == CORBA_NO_EXCEPTION) { if (orig && *orig == '1') { @@ -212,6 +213,12 @@ impl_event (PortableServer_Servant _servant, } CORBA_free (orig); } + signature = GNOME_GtkHTML_Editor_Engine_getParagraphData (l->composer->editor_engine, "signature", ev); + if (ev->_major == CORBA_NO_EXCEPTION) { + if (signature && *signature == '1') + GNOME_GtkHTML_Editor_Engine_setParagraphData (l->composer->editor_engine, "signature", "0", ev); + CORBA_free (signature); + } } } else if (!strcmp (name, "url_requested")) { GNOME_GtkHTML_Editor_URLRequestEvent *e; |