ajwillia-ms pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=8032f0fcd6648d07650301677e6debfbb2b7d288

commit 8032f0fcd6648d07650301677e6debfbb2b7d288
Author: Andy Williams <[email protected]>
Date:   Wed Feb 11 22:39:25 2015 +0000

    editor: delay autosave to 5 secs but save on unfocus too
---
 src/bin/edi_private.h       |  2 +-
 src/bin/editor/edi_editor.c | 11 +++++++++++
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/src/bin/edi_private.h b/src/bin/edi_private.h
index c8dbee7..4d82d3f 100644
--- a/src/bin/edi_private.h
+++ b/src/bin/edi_private.h
@@ -27,7 +27,7 @@ extern int _edi_log_dom;
 #define DBG(...) EINA_LOG_DOM_DBG(_edi_log_dom, __VA_ARGS__)
 
 #define EDI_CONTENT_AUTOSAVE EINA_TRUE
-#define EDI_CONTENT_SAVE_TIMEOUT 2
+#define EDI_CONTENT_SAVE_TIMEOUT 5
 
 Evas_Object *edi_open(const char *path);
 
diff --git a/src/bin/editor/edi_editor.c b/src/bin/editor/edi_editor.c
index 05146ad..4976d8f 100644
--- a/src/bin/editor/edi_editor.c
+++ b/src/bin/editor/edi_editor.c
@@ -740,6 +740,16 @@ _text_set_done(void *data, Evas_Object *obj EINA_UNUSED, 
void *source EINA_UNUSE
    _reset_highlight(editor);
 }
 
+static void
+_unfocused_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
+{
+   Edi_Editor *editor;
+
+   editor = (Edi_Editor *)data;
+
+   edi_editor_save(editor);
+}
+
 Evas_Object *
 edi_editor_add(Evas_Object *parent, Edi_Mainview_Item *item)
 {
@@ -801,6 +811,7 @@ edi_editor_add(Evas_Object *parent, Edi_Mainview_Item *item)
    evas_object_smart_callback_add(txt, "resize", _resize_cb, editor);
    evas_object_smart_callback_add(txt, "undo,request", _undo_cb, editor);
    evas_object_smart_callback_add(txt, "text,set,done", _text_set_done, 
editor);
+   evas_object_smart_callback_add(txt, "unfocused", _unfocused_cb, editor);
 
    elm_entry_file_set(txt, item->path, ELM_TEXT_FORMAT_PLAIN_UTF8);
 

-- 


Reply via email to