diff --git a/eeschema/annotate.cpp b/eeschema/annotate.cpp
index cb47703409..32db056160 100644
--- a/eeschema/annotate.cpp
+++ b/eeschema/annotate.cpp
@@ -56,6 +56,8 @@ void SCH_EDIT_FRAME::DeleteAnnotation( bool aCurrentSheetOnly )
 
     // Update the references for the sheet that is currently being displayed.
     m_CurrentSheet->UpdateAllScreenReferences();
+    GetCanvas()->Refresh();
+    OnModify();
 }
 
 
diff --git a/eeschema/dialogs/dialog_annotate.cpp b/eeschema/dialogs/dialog_annotate.cpp
index 9b987bd362..5c8b002b99 100644
--- a/eeschema/dialogs/dialog_annotate.cpp
+++ b/eeschema/dialogs/dialog_annotate.cpp
@@ -256,8 +256,6 @@ void DIALOG_ANNOTATE::OnClearAnnotationCmpClick( wxCommandEvent& event )
         return;
 
     m_Parent->DeleteAnnotation( GetLevel() ? false : true );
-    m_Parent->GetCanvas()->Refresh();
-
     m_btnClear->Enable( false );
 }