everpad icon indicating copy to clipboard operation
everpad copied to clipboard

Feature reqeust: Autosave

Open bullpup opened this issue 13 years ago • 13 comments

At the moment, you have to manually save or close a note. It would be nice if an open note would be saved automatically say every 10 seconds.

bullpup avatar Jan 24 '13 10:01 bullpup

I agree! I loose an important note because I doesn't close the note window. It's frustrating! I think that save button should be totally removed and should be added an auto save feature that saves to disk synchronously (with a reasonable delay) and to Evernote servers with the delay already specified in settings.

micred avatar May 08 '13 12:05 micred

Couldn't agree more. A pesky intel display driver bug forces me to restart periodically. If I haven't manually saved, my changes are toast. An autosave setting would really help. Thanks for making this great free software!

lightnin avatar Jun 01 '13 16:06 lightnin

I also push for this feature. Especially since every other client has it (including the web version), and causes unnecessary mistakes upon users.

Please consider implementing it in the near future.

ravemir avatar Jun 10 '13 11:06 ravemir

After first installing everpad, I just assumed it was autosaving, and left several notes open all the time in the background. Because of a bug, I had to kill Xorg a few times, and as a result I lost quite a few edits.

lightnin avatar Jun 10 '13 12:06 lightnin

I'm also for this feature! :)

luisdavim avatar Jun 25 '13 13:06 luisdavim

This would be great. I just had a failed hibernation and lost a fairly large note.

philmcmahon avatar Oct 23 '13 11:10 philmcmahon

What about just plainly removing the save button, and autosave would be the default? e.g. save each 10s, or after 2s of inactivity. Would reduce the number of clicks needed: people wouldn't uselessly click save before closing (as they might not have realized, or trust, that closing a note will save it - I know I didn't, and had to test it out)

e2jk avatar Jan 15 '14 23:01 e2jk

I absolutly agree with @e2jk, would be perfect. And more usable.

micred avatar Jan 16 '14 09:01 micred

I would love auto save too.

Morgenkaff avatar Feb 07 '14 10:02 Morgenkaff

+1

royts avatar Apr 07 '14 15:04 royts

This is extremely important. Loosing your written work is one of the most frustrating thing that could happen. Is there anything I can do to help with this one?

helloravi avatar Apr 09 '14 10:04 helloravi

I have created a custom patch for myself to have this feature in my everpad.

From: Ramandeep Singh <rmongia@....>
Date: Wed, 18 Jun 2014 14:27:45 +0530
Subject: [PATCH] Add Automatic save support in editor
- spawns every 10s
- does not send notifications for auto-save
---
 everpad/pad/editor/__init__.py |   15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/everpad/pad/editor/__init__.py b/everpad/pad/editor/__init__.py
index 3e52e24..455c30c 100644
--- a/everpad/pad/editor/__init__.py
+++ b/everpad/pad/editor/__init__.py
@@ -2,7 +2,7 @@ from PySide.QtGui import (
     QMainWindow, QIcon, QMessageBox, QAction,
     QShortcut, QKeySequence, QApplication,
 )
-from PySide.QtCore import Slot
+from PySide.QtCore import Slot, QBasicTimer
 from everpad.interface.editor import Ui_Editor
 from everpad.pad.tools import get_icon
 from everpad.pad.editor.actions import FindBar
@@ -34,6 +34,7 @@ class Editor(QMainWindow):  # TODO: kill this god shit
         self.logger.addHandler(fh)

         self.app = QApplication.instance()
+        self.timer = QBasicTimer()
         self.note = note
         self.closed = False
         self.ui = Ui_Editor()
@@ -51,6 +52,11 @@ class Editor(QMainWindow):  # TODO: kill this god shit
         if geometry:
             self.restoreGeometry(geometry)
         self.resource_edit.note = note
+        self.timer.start(10000, self)
+
+    def timerEvent(self, event):
+        if self.touched:
+            self.save(notify=False)

     def init_controls(self):
         self.ui.menubar.hide()
@@ -191,8 +197,7 @@ class Editor(QMainWindow):  # TODO: kill this god shit
         self.setWindowTitle(self.tr('Everpad / %s') % title)

     @Slot()
-    def save(self):
-        self.logger.debug('Saving note: "%s"' % self.note.title)
+    def save(self, notify = True):
         self.mark_untouched()
         self.update_note()
         self.app.provider.update_note(self.note.struct)
@@ -201,7 +206,7 @@ class Editor(QMainWindow):  # TODO: kill this god shit
                 res.struct, self.resource_edit.resources,
             ), signature=Resource.signature),
         )
-        self.app.send_notify(self.tr('Note "%s" saved!') % self.note.title)
+        if notify: self.app.send_notify(self.tr('Note "%s" saved!') % self.note.title)

     @Slot()
     def save_and_close(self):
-- 
1.7.9.5

rmongia avatar Jun 18 '14 11:06 rmongia

It would be great if this patch is made a part of the basic code base. I hope the founder takes note of this :)

helloravi avatar Jun 18 '14 13:06 helloravi