emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/ebdb 5f8429b 02/33: Use insert/delete methods with edit


From: Eric Abrahamsen
Subject: [elpa] externals/ebdb 5f8429b 02/33: Use insert/delete methods with edit-field-customize
Date: Sun, 3 Sep 2017 17:02:19 -0400 (EDT)

branch: externals/ebdb
commit 5f8429b99eb69820e129e9215bdd3b9c3f853206
Author: Eric Abrahamsen <address@hidden>
Commit: Eric Abrahamsen <address@hidden>

    Use insert/delete methods with edit-field-customize
    
    * ebdb-com.el (ebdb-edit-field-customize, eieio-done-customizing):
      These methods need to run ebdb-record-delete-field and
      ebdb-record-insert-field, same as regular editing.
---
 ebdb-com.el | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/ebdb-com.el b/ebdb-com.el
index 4290613..3310fc0 100644
--- a/ebdb-com.el
+++ b/ebdb-com.el
@@ -1570,13 +1570,16 @@ the record, change the name of the record."
    (list (ebdb-current-record)
         (ebdb-current-field)))
   (ebdb-with-record-edits (r (list record))
-    (eieio-customize-object field))
+    (ebdb-record-delete-field r field)
+    (condition-case nil
+       (eieio-customize-object field)
+      (error (ebdb-record-insert-field rec f))))
   (setq ebdb-custom-field-record record))
 
-(cl-defmethod eieio-done-customizing ((_f ebdb-field))
+(cl-defmethod eieio-done-customizing ((f ebdb-field))
   (let ((rec ebdb-custom-field-record))
     (when rec
-      (setf (slot-value rec 'dirty) t)
+      (ebdb-record-insert-field rec f)
       (ebdb-redisplay-records rec 'reformat t))))
 
 ;;;###autoload



reply via email to

[Prev in Thread] Current Thread [Next in Thread]