[Sugar-devel] [PATCH] Bug #630:Modal Dialog Fix and Journal Memory Full Alert added
Mukul Gupta
mukul at seeta.in
Fri Sep 24 10:46:34 EDT 2010
Modal Dialog should be displayed only once at startup if free
memory is less than 50MB but greater than 10MB. Instead, for every
redundant Modal Dialog Display, an Alert in the Journal signifying
Low Memory is displayed.But when free memory reaches a critical
limit(ie. 10MB) Modal Dialog is displayed repeatedly asking the
user to delete some data in the Journal along with an alert in the
Journal
---
src/jarabe/journal/journalactivity.py | 22 ++++++++++++++--------
1 files changed, 14 insertions(+), 8 deletions(-)
diff --git a/src/jarabe/journal/journalactivity.py b/src/jarabe/journal/journalactivity.py
index 44cc018..aa4001b 100644
--- a/src/jarabe/journal/journalactivity.py
+++ b/src/jarabe/journal/journalactivity.py
@@ -49,7 +49,7 @@ J_DBUS_SERVICE = 'org.laptop.Journal'
J_DBUS_INTERFACE = 'org.laptop.Journal'
J_DBUS_PATH = '/org/laptop/Journal'
-_SPACE_TRESHOLD = 52428800
+_SPACE_THRESHOLD = 52428800
_BUNDLE_ID = 'org.laptop.JournalActivity'
class JournalActivityDBusService(dbus.service.Object):
@@ -116,7 +116,7 @@ class JournalActivity(Window):
self._main_toolbox = None
self._detail_toolbox = None
self._volumes_toolbar = None
-
+ self.modal_already_shown=False
self._setup_main_view()
self._setup_secondary_view()
@@ -139,7 +139,7 @@ class JournalActivity(Window):
self._critical_space_alert = None
self._check_available_space()
-
+
def __volume_error_cb(self, gobject, message, severity):
alert = ErrorAlert(title=severity, msg=message)
alert.connect('response', self.__alert_response_cb)
@@ -337,11 +337,17 @@ class JournalActivity(Window):
return
stat = os.statvfs(env.get_profile_path())
free_space = stat[statvfs.F_BSIZE] * stat[statvfs.F_BAVAIL]
- if free_space < _SPACE_TRESHOLD:
- self._critical_space_alert = ModalAlert()
- self._critical_space_alert.connect('destroy',
- self.__alert_closed_cb)
- self._critical_space_alert.show()
+ if free_space < _SPACE_THRESHOLD:
+ if self.modal_already_shown==False or free_space < _SPACE_THRESHOLD/5:
+ self._critical_space_alert = ModalAlert()
+ self._critical_space_alert.connect('destroy',
+ self.__alert_closed_cb)
+ self._critical_space_alert.show()
+ self.modal_already_shown=True
+ alert = ErrorAlert(title="Journal Almost Full", msg="Please delete some data from journal")
+ alert.connect('response', self.__alert_response_cb)
+ self.add_alert(alert)
+ alert.show()
def __alert_closed_cb(self, data):
self.show_main_view()
--
1.7.0.4
More information about the Sugar-devel
mailing list