Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAleksey Lim <alsroot@member.fsf.org>2009-09-06 09:44:52 (GMT)
committer Daniel Drake <dsd@laptop.org>2009-12-01 18:03:44 (GMT)
commita428022a2718a813ad88f5334341a16a07eaacf9 (patch)
tree66c524fc0d73dd75a9d2317df0410a28596202b7
parent576b62f84df7a326d536af2b41eaebd6730e0b84 (diff)
Some activities relies on existing of ds fields like 'title' #1241
-rw-r--r--src/sugar/datastore/datastore.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/sugar/datastore/datastore.py b/src/sugar/datastore/datastore.py
index 8e8f361..d84a7f4 100644
--- a/src/sugar/datastore/datastore.py
+++ b/src/sugar/datastore/datastore.py
@@ -25,6 +25,8 @@ from datetime import datetime
import os
import tempfile
import gobject
+import gconf
+import gio
from sugar import env
from sugar.datastore import dbus_helpers
@@ -140,8 +142,21 @@ class DSObject(object):
class RawObject(object):
def __init__(self, file_path):
+ stat = os.stat(file_path)
+ client = gconf.client_get_default()
+ metadata = {
+ 'uid': file_path,
+ 'title': os.path.basename(file_path),
+ 'timestamp': stat.st_mtime,
+ 'mime_type': gio.content_type_guess(filename=file_path),
+ 'activity': '',
+ 'activity_id': '',
+ 'icon-color': client.get_string('/desktop/sugar/user/color'),
+ 'description': file_path,
+ }
+
self.object_id = file_path
- self._metadata = DSMetadata()
+ self._metadata = DSMetadata(metadata)
self._file_path = None
self._destroyed = False