Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sugar/datastore
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu@tomeuvizoso.net>2007-07-09 12:26:41 (GMT)
committer Tomeu Vizoso <tomeu@tomeuvizoso.net>2007-07-09 12:26:41 (GMT)
commita4f4d969fea4787aaecf8cafd1095a412d01a432 (patch)
treed99d99c7f3e2cc50724866819b1e7dcf3b68bb7a /sugar/datastore
parent8b72656ca429cd43f26b9c5edc2479a756914149 (diff)
Popdown when the toplevel of the parent item loses focus.
Diffstat (limited to 'sugar/datastore')
-rw-r--r--sugar/datastore/datastore.py11
-rw-r--r--sugar/datastore/dbus_helpers.py2
2 files changed, 10 insertions, 3 deletions
diff --git a/sugar/datastore/datastore.py b/sugar/datastore/datastore.py
index 4acfd86..26ea49e 100644
--- a/sugar/datastore/datastore.py
+++ b/sugar/datastore/datastore.py
@@ -99,14 +99,21 @@ def create():
def write(ds_object, reply_handler=None, error_handler=None):
logging.debug('datastore.write')
+
+ properties = ds_object.metadata.get_dictionary().copy()
+ # The title property should be sent as a 'text' property so it gets indexed
+ if properties.has_key('title'):
+ properties['title:text'] = properties['title']
+ del properties['title']
+
if ds_object.object_id:
dbus_helpers.update(ds_object.object_id,
- ds_object.metadata.get_dictionary(),
+ properties,
ds_object.file_path,
reply_handler=reply_handler,
error_handler=error_handler)
else:
- ds_object.object_id = dbus_helpers.create(ds_object.metadata.get_dictionary(),
+ ds_object.object_id = dbus_helpers.create(properties,
ds_object.file_path)
# TODO: register the object for updates
logging.debug('Written object %s to the datastore.' % ds_object.object_id)
diff --git a/sugar/datastore/dbus_helpers.py b/sugar/datastore/dbus_helpers.py
index 18c20ea..2ce0090 100644
--- a/sugar/datastore/dbus_helpers.py
+++ b/sugar/datastore/dbus_helpers.py
@@ -37,7 +37,7 @@ def create(properties, filename):
return object_id
def update(uid, properties, filename, reply_handler=None, error_handler=None):
- logging.debug('dbus_helpers.update: %s, %s' % (uid, filename))
+ logging.debug('dbus_helpers.update: %s, %s, %s' % (uid, filename, properties))
if reply_handler and error_handler:
_data_store.update(uid, dbus.Dictionary(properties), filename,
reply_handler=reply_handler,