2008-03-23 Daniel Willmann * diversity-xmpp-backend/xmpp-marshal.list: Add missing file 2008-03-22 Daniel Willmann * src/diversity-bard.c (diversity_bard_set_uid): Set id to uid value since id must be set for diversity_world_add_object 2008-03-22 Daniel Willmann * diversity-xmpp-backend/xmpp-geoloc.c (xmpp_geoloc_handle_msg, xmpp_geoloc_init): Emit "geoloc-message-received" signal when we receive an xmpp geolocation message * diversity-xmpp-backend/xmpp-geoloc.c (xmpp_geoloc_publish_position): Fix typo (error instead of err) 2008-03-22 Daniel Willmann * diversity-xmpp-backend/Makefile.am: Add marshaler for glib signals * diversity-xmpp-backend/diversity-xmpp-backend.c: Publish own position via XMPP, notify diversity-nav if we receive XMPP geolocation messages * diversity-xmpp-backend/diversity-xmpp.{c,h}: Add a new signal "geoloc-message-received" 2008-03-21 Chia-I Wu * diversity-control-backend/diversity-control.c: Avoid g_hash_table_foreach_remove on finalization since remove_client modifies the hash table. 2008-03-21 Chia-I Wu * diversity-osm-backend/diversity-curl.c: Do not batch JOB_COMPLETED signals. (diversity_curl_finalize): Proper finalization. 2008-03-19 Chia-I Wu * diversity-nmea-backend/diversity-nmea.c (diversity_nmea_set_ds): priv->device_path == NULL implies priv->ch == NULL. (diversity_nmea_set_log): Typo. 2008-03-12 Chia-I Wu * diversity-control-backend/diversity-control.c (remove_client): Traverse each object using the copy of the list. The list itself is modified during the traversal. (diversity_control_object_export): Add a comment that export->owner is shared with the clients hash. 2008-03-12 Chia-I Wu * diversity-nmea-backend/diversity-nmea-backend.c (on_gprmc): Remove debug messages. * diversity-nmea-backend/diversity-nmea.c (device_io): Print out `condition' on error. 2008-03-12 Chia-I Wu * diversity-nmea-backend/Makefile.am, diversity-nmea-backend/nmea-marshal.list, diversity-nmea-backend/diversity-nmea.c, diversity-nmea-backend/diversity-nmea.h, diversity-nmea-backend/diversity-nmea-backend.c, diversity-nmea-backend/diversity-nmea-backend.h: New backend to parse NMEA directly from a serial port or a FIFO. * src/diversity-daemon.c, src/Makefile.am, configure.in, Makefile.am: Updated. 2008-02-23 Chia-I Wu * diversity-osm-backend/diversity-osm-backend.c (osm_init): Initialize the thread system when necessary. Use a larger queue size. * TODO: Control backend should be part of the core. 2008-02-20 Chia-I Wu * diversity-osm-backend/diversity-curl.c (_pop_handle): Set CURLOPT_USERAGENT to "diversity/0.0". 2008-02-20 Daniel Willmann * diversity-xmpp-backend/diversity-xmpp.c (diversity_xmpp_query_roster): Remove the hack to call xmpp_geoloc_publish_position * diversity-xmpp-backend/diversity-xmpp-backend.c (xmpp_init, xmpp_update_position): Instead add the hack here and have it update the position in regular intervals 2008-02-20 Daniel Willmann * diversity-xmpp-backend/xmpp-caps.c (xmpp_caps_new): Add hash/discoinfo pair of ourself to the caps_cache right away * diversity-xmpp-backend/xmpp-caps.c (xmpp_caps_get_discoinfo): Correct the cache search logic (g_list_find_custom returns a g_list and not the associated data) * diversity-xmpp-backend/xmpp-caps.c (xmpp_caps_handle_msg): Don't try to get caps from presence error stanzas 2008-02-20 Daniel Willmann * diversity-xmpp-backend/xmpp-caps.{c,h} (xmpp_caps_new): Get disco object in the constructor and save/free it * diversity-xmpp-backend/xmpp-caps.c (xmpp_capability_find_by_hash): Fix comparison logic so it actually compares the hashes, too, and not only the hash function * diversity-xmpp-backend/xmpp-caps.{c,h} (xmpp_caps_add_c_node): Add a function that creates the c element for inclusion in presence stanzas * diversity-xmpp-backend/xmpp-disco.c (xmpp_disco_new): Add an identity of client/pc (hardcoded for now) * diversity-xmpp-backend/xmpp-disco.{c,h} (xmpp_disco_get_discoinfo): Function to return "our" discoinfo item * diversity-xmpp-backend/diverstiy-xmpp.c (diversity_xmpp_new): Pass disco object to caps * diversity-xmpp-backend/diverstiy-xmpp.c (_diversity_xmpp_presence_set): Include c (XEP-0115) element in presence 2008-02-17 Daniel Willmann * diversity-xmpp-backend/Makefile.am: Build sha1.c * diversity-xmpp-backend/sha1/sha1.{c,h}: Add sha-1 computations from telepathy (at least until we're using glib 2.16 which can compute sha-1 (and other hash functions) * diversity-xmpp-backend/xmpp-discoinfo.{c,h} (xmpp_discoinfo_get_hash): Compute the base64 encoded, sha1 hash over the features and identites as required in XEP-0115, chapter 5. 2008-02-13 Daniel Willmann * diversity-xmpp-backend/Makefile.am: Compile xmpp-caps and xmpp-capability * diversity-xmpp-backend/diversity-xmpp.{c,h} (diversity_xmpp_get_connection): Implement function which return the lm_connection * diversity-xmpp-backend/diversity-xmpp.c: Initialize xmpp-caps (enity capabilities support) * diversity-xmpp-backend/xmpp-discoinfo.{c,h} (xmpp_discoinfo_new_from_msg_node): Implement function to generate a XmppDiscoinfo instance from an lm_message_node 2008-02-13 Daniel Willmann * diversity-xmpp-backend/xmpp-capability.{c,h}: Add getter and setter functions, more NULL pointer checking * diversity-xmpp-backend/xmpp-caps.c (xmpp_caps_get_discoinfo): Implement function 2008-02-13 Daniel Willmann * diversity-xmpp-backend/xmpp-disco.{c,h}: Use XmppDiscoinfo and move functions specific to Discoinfo Idnetities/Features to xmpp-discoinfo.c * diversity-xmpp-backend/xmpp-discoinfo.{c,h}: Add functions for getting/setting discoinfo identities/features * diversity-xmpp-backend/Makefile.am: Build xmpp-discoinfo 2008-02-11 Daniel Willmann * diversity-xmpp-backend/xmpp-caps.{c,h}: (incomplete) Class to manage entity capabilities support 2008-02-11 Daniel Willmann * diversity-xmpp-backend/xmpp-discoinfo.{c,h}: (incomplete) Class to hold disco#info information (to be factored out of xmpp-disco since we need it there and in xmpp-caps 2008-02-11 Daniel Willmann * diversity-xmpp-backend/xmpp-capability.{c,h}: caps hash/discoinfo pair 2008-02-11 Daniel Willmann * diversity-xmpp-backend/xmpp-disco.c (xmpp_disco_handle_msg): Add some more checks for the message, fix memory leak * diversity-xmpp-backend/xmpp-geoloc.c (xmpp_geoloc_init): Add geolocation disco features 2008-01-31 Daniel Willmann * diversity-xmpp-backend/xmpp-disco.{c,h}: Add support for service discovery XEP-0030 * diversity-xmpp-backend/xmpp-diversity.c: Initialize disco support in diversity-xmpp * diversity-xmpp-backend/xmpp-geoloc.c: Add private attribut disco from DiversityXmpp. (ugly!) XmppGeoloc will live in its own class soon, I promise. * diversity-xmpp-backend/Makefile.am: Build xmpp-disco.c 2008-01-28 Chia-I Wu * diversity-osm-backend/diversity-curl.c (_process_pending_job): Remove unused last argument, DiversityCurlPrivate. (_process_active_jobs): Renamed to ... (diversity_curl_process_active_jobs): this function, with mutex locking/unlocking added. (process_jobs_threaded): Do not call _process_active_jobs directly, which emits signals and causes races. Schedule diversity_curl_process_active_jobs for later being called. 2008-01-28 Chia-I Wu * diversity-control-backend/control-bard.xml, diversity-control-backend/control-tag.xml, diversity-control-backend/control-viewport.xml, diversity-control-backend/control-ap.xml, diversity-control-backend/control-sms.xml, diversity-control-backend/control-atlas.xml, diversity-control-backend/control-object.xml, diversity-control-backend/control-equipment.xml, diversity-control-backend/control-world.xml, diversity-control-backend/diversity-control.xml: Camelize interfaces. * diversity-control-backend/Makefile.am, tests/Makefile.am: dbus-binding-tool supports --output to specify output filenames. * data/org.openmoko.Diversity.service.in, data/org.openmoko.Diversity.conf.in, data/Makefile.am: Add DBus configuration and service files. * configure.in, diversity-control-backend/diversity-control-backend.c: Allow diversity-daemon to run on either the system or the session bus. * Makefile.am, tests/example-frontend.c: Updated. 2008-01-27 Chia-I Wu * diversity-osm-backend/diversity-curl.c (diversity_curl_job_cancel): For pending jobs, set status to CANCEL before moving to active list. 2008-01-27 Daniel Willmann * diversity-xmpp-backend/xmpp-geoloc.{c,h}: Add XMPP geolocation support according to XEP-0080 (http://www.xmpp.org/extensions/xep-0080.html) * diversity-xmpp-backend/Makefile.am: Build xmpp-geoloc.{c,h} * diversity-xmpp-backend/diversity-xmpp.c (diversity_xmpp_new): Initialize geolocation support. * diversity-xmpp-backend/diversity-xmpp.c (diversity_xmpp_query_roster): Publish position. This is a hack and will be removed once the signalling stuff is in place. 2008-01-27 Daniel Willmann * diversity-xmpp-backend/diversity-xmpp.{c,h}: Add a field jid to priv to hold the jabber ID. Also fix some memory leaks * diversity-xmpp-backend/diversity-xmpp-backend.c: Pass JID along with username and host and change host to the IP address to work around an IPv6 bug in loudmouth (See http://developer.imendio.com/issues/browse/LM-114). 2008-01-25 Chia-I Wu * diversity-osm-backend/diversity-curl.c, diversity-osm-backend/diversity-curl.h: Let DiversityCurl do its own work. Move DiversityAtlas implementation to ... * diversity-osm-backend/diversity-osm.c, diversity-osm-backend/diversity-osm.h: ... Here. * diversity-osm-backend/diversity-osm-backend.c, diversity-osm-backend/Makefile.am: Updated. * src/diversity-daemon.c: Print debug messages before backend initialization. 2008-01-23 Chia-I Wu * diversity-osm-backend/diversity-curl.c (_process_active_jobs): Fix a race condition causing jobs being freed twice. 2008-01-23 Chia-I Wu * diversity-osm-backend/diversity-curl.c: Remove debug messages. 2008-01-23 Chia-I Wu * include/diversity-atlas.h, diversity-control-backend/control-atlas.c, diversity-control-backend/control-atlas.xml, src/diversity-atlas.c: Remove `GetUid'. Rename `GetUserArea' to `GetPath'. * diversity-osm-backend/diversity-curl.c, diversity-osm-backend/diversity-curl.h, configure.in: Remove gdbm dependency from OSM backend. Do not save downloaded tiles to a dbm. 2008-01-23 Chia-I Wu * configure.in: No need to save LIBS when checking gdbm. 2008-01-23 Chia-I Wu * diversity-control-backend/diversity-control.c, diversity-control-backend/diversity-control.h: Un-own object on unexport. (remove_client): Call diversity_control_object_unexport. 2008-01-23 Chia-I Wu * diversity-control-backend/control-atlas.c, diversity-control-backend/control-atlas.h, diversity-control-backend/control-atlas.xml, include/diversity-atlas.h, src/diversity-atlas.c: New interface DiversityAtlas providing org.openmoko.diversity.atlas. * diversity-control-backend/control-viewport.xml, diversity-control-backend/control-viewport.c, diversity-control-backend/diversity-control.c, diversity-control-backend/Makefile.am, src/diversity-viewport.c, src/diversity-marshal.list, src/Makefile.am, include/diversity-viewport.h, include/Makefile.am: Updated. Use DiversityAtlas instead of DiversityViewportOverlay. * diversity-osm-backend/diversity-osm-backend.c, diversity-osm-backend/diversity-curl.c, diversity-osm-backend/diversity-curl.h, diversity-osm-backend/Makefile.am, configure.in: Have DiversityCurl be inherited from DiversityEquipment, and implement DiversityAtlas. Use gdbm for tile storage. 2008-01-22 Chia-I Wu * diversity-osm-backend/diversity-curl.c (_process_pending_jobs): Set user agent. 2008-01-21 Chia-I Wu * include/diversity-viewport.h, src/diversity-viewport.c, diversity-control-backend/control-viewport.xml, diversity-control-backend/control-viewport.c, diversity-osm-backend/diversity-osm-backend.c: Support for GetTile cancellation. 2008-01-17 Chia-I Wu * diversity-control-backend/diversity-control.c: Put equipments under owner's path. 2008-01-17 Chia-I Wu * src/diversity-equipment.c (diversity_equipment_class_init): Mark signal parameters as static scope. (diversity_equipment_init): Remove meanless checking. * src/diversity-bard.c (diversity_bard_add_equipment): Make sure every equipment is uniquely named. 2008-01-17 Chia-I Wu * diversity-osm-backend/diversity-curl.c: Use GSList. Doubly-linked list does not save any time. (diversity_curl_job_cancel, _process_pending_jobs, process_jobs_threaded): Avoid list traverse. 2008-01-16 Chia-I Wu * src/diversity-ap.c: Update copyright info. 2008-01-16 Chia-I Wu * src/diversity-ap.c, src/diversity-object.c, src/diversity-viewport.c, src/diversity-world.c: Mark signals as G_SIGNAL_RUN_LAST and parameters as G_SIGNAL_TYPE_STATIC_SCOPE where suitable. 2008-01-16 Chia-I Wu * diversity-gypsy-backend/diversity-gypsy.h, diversity-gypsy-backend/diversity-gypsy.c: New files for DiversityGypsy, inherited from DiversityEquipment. * diversity-gypsy-backend/diversity-gypsy-backend.c, diversity-gypsy-backend/Makefile.am: Use DiversityGypsy. * diversity-phonekit-backend/diversity-phone-kit.h (diversity_phone_kit_sms_set_status): Remove an unused function declaration. 2008-01-16 Chia-I Wu * diversity-control-backend/diversity-control.h, diversity-control-backend/diversity-control.c (diversity_control_from_equipment): New function. * diversity-control-backend/control-sms.c, diversity-control-backend/control-sms.h, diversity-control-backend/control-sms.xml: Move `org.openmoko.diversity.sms' to its own files. Use diversity_control_from_equipment. * diversity-control-backend/Makefile.am: Updated. * include/diversity-equipment.h, src/diversity-equipment.c, diversity-control-backend/control-equipment.c, diversity-control-backend/control-equipment.xml: Add generic configuration support to DiversityEquipment. * include/diversity-bard.h, src/diversity-bard.c: More complete equipment management. * src/diversity-daemon.c, tests/test-tree.c: Updated. * diversity-phonekit-backend/diversity-phone-kit.c, diversity-phonekit-backend/diversity-phonekit-backend.c (phonekit_init): Updated. (diversity_phone_kit_set_config, diversity_phone_kit_get_config): Dummy implementations of set_confg and get_config. 2008-01-16 Chia-I Wu * include/diversity-object.h, src/diversity-object.c: Flag that the object covers the whole world. * include/diversity-viewport.h, src/diversity-viewport.c: Viewports are initially disabled. It needs to be enabled explicitly. * src/world-tree.c: Use the above two changes for optimizations. * diversity-control-backend/control-viewport.xml, diversity-control-backend/control-viewport.c: New methods `Start', `Stop', and `ListObjects'. The first two enable and disable the viewport respectively. 2008-01-16 Chia-I Wu The tunnel of DiversityWorld links it to another world. It will be used by the XMPP backend. * diversity-control-backend/control-world.c, diversity-control-backend/control-world.xml: Make tunnel a property. * include/diversity-world.h, src/diversity-world.c: Implement tunnel support. 2008-01-16 Chia-I Wu * include/diversity-viewport.h, include/diversity-object.h, include/diversity-world.h, src/diversity-viewport.c, src/diversity-daemon.c, src/world-tree.c, src/diversity-object.c, src/diversity-world.c, src/world-tree.h: Rename diversity_xxx_noun_vert to diversity_xxx_verb_noun. (enum _DiversityObjectFlag): Remove DIVERSITY_OBJECT_FLAG_FIXED. * diversity-nm-backend/diversity-nm-backend.c, diversity-phonekit-backend/diversity-phonekit-backend.c, diversity-geoclue-backend/diversity-geoclue-backend.c, diversity-ebook-backend/diversity-ebook-backend.c, tests/example-frontend.c: Updated. * diversity-control-backend/diversity-control.c, diversity-control-backend/control-object.xml, diversity-control-backend/control-object.c, diversity-control-backend/control-equipment.c: Updated. * diversity-control-backend/control-world.c, diversity-control-backend/control-world.xml: Updated. `TagAdd' returns the object path. Add tunnel related stubs. 2008-01-16 Chia-I Wu * diversity-gypsy-backend/diversity-gypsy-backend.c, diversity-gypsy-backend/diversity-gypsy-backend.h diversity-gypsy-backend/Makefile.am: Add Gypsy backend. * src/diversity-daemon.c, src/Makefile.am, Makefile.am, configure.in: Updated. Gypsy backend is enabled only when GeoClue backend is disabled. 2008-01-15 Chia-I Wu Initial version of map tiles downloading scheme. It definitely needs be improved. * diversity-control-backend/control-viewport.xml, diversity-control-backend/control-viewport.c, include/diversity-viewport.h, src/diversity-viewport.c, src/diversity-marshal.list: New method GetTile and new signal OverlayChanged to allow asynchronous tile downloading. * diversity-osm-backend/diversity-curl.c, diversity-osm-backend/diversity-curl.h: New files allow file downloading through DiversityCurl. * diversity-osm-backend/diversity-osm-backend.c, diversity-osm-backend/Makefile.am: Updated to support GetTile, using DiversityCurl. * configure.in: OSM backend depends on libcurl. 2008-01-15 Daniel Willmann * diversity-xmpp-backend/diversity-xmpp-backend.c: Give DiversityXmpp instance a real name * diversity-xmpp-backend/diversity-xmpp.{c,h}: Query roster at the beginning of the connection and support setting presence information 2008-01-15 Daniel Willmann * diversity-xmpp-backend/Makefile.am: Add new files to Makefile * diversity-xmpp-backend/diversity-xmpp-backend.c: Factor out XMPP connections... * diversity-xmpp-backend/diversity-xmpp.{c,h}: ...into its own class. 2008-01-15 Daniel Willmann * Makefile.am, configure.in: Add diversity-xmpp-backend and * diversity-xmpp-backend/Makefile.am, backends/diversity-xmpp-backend/diversity-xmpp-backend.{c,h}: first skeleton for the XMPP backend * src/Makefile.am, src/diversity-daemon.c (backends_{load,unload}): Actually initialize/finalize the xmpp backend 2008-01-14 Chia-I Wu * diversity-ebook-backend/diversity-ebook-backend.c: On `contacts-removed', only UIDs are given. * diversity-ebook-backend/diversity-jana.c (on_note_added): Fix a endless loop. 2008-01-13 Chia-I Wu * src/diversity-tag.c (diversity_tag_set): Emit signals with details. 2008-01-13 Chia-I Wu * src/diversity-object.c: Make DiversityObject derived from GInitiallyUnowned. * diversity-control-backend/control-world.c, diversity-nm-backend/nm-device.c, src/world-tree.c: Updated to reflect that DiveristyObject is now initially unowned. * TODO: More TODOs. 2008-01-13 Chia-I Wu * diversity-ebook-backend/ebook-marshal.list, diversity-ebook-backend/diversity-jana.h, diversity-ebook-backend/diversity-jana.c: Monitor system memos by libjana-ecal. * diversity-ebook-backend/diversity-ebook-backend.c: Use DiversityJana. * configure.in, diversity-ebook-backend/Makefile.am: Updated. Make EBook backend depends on libjana. 2008-01-13 Chia-I Wu * diversity-control-backend/control-bard.xml, include/diversity-bard.h, src/diversity-bard.c: New properties, `uid', `fullname', and `phone', where `uid' is EContact UID. Remove obsolete signals. New dummy `equipment_added' signal. * diversity-ebook-backend/diversity-ebook-backend.c: Set DiversityBard's new properties. (ebook_init): Create the addressbook if none exists. * diversity-control-backend/control-world.c (control_world_tag_add): Default tag accuracy to DIVERSITY_OBJECT_ACCURACY_EXACT. * diversity-control-backend/control-equipment.c (bard_to_number, tag_to_message): Retrieve phone number from DiversityBard and tag message from DiversityTag. 2008-01-13 Chia-I Wu * include/diversity-tag.h, src/diversity-tag.c: New type, DiversityTag. * diversity-control-backend/control-tag.h, diversity-control-backend/control-tag.c, diversity-control-backend/control-tag.xml: DBus interface of DiversityTag. * diversity-control-backend/Makefile.am, diversity-control-backend/diversity-control.c, include/Makefile.am, src/Makefile.am, src/diversity-marshal.list: Updated. * diversity-control-backend/control-world.c, diversity-control-backend/control-world.xml, tests/example-frontend.c: `TagAdd' takes an additional argument for description and creates DiversityTag. * diversity-osm-backend/diversity-osm-backend.c: Mention that this backend is inspired by pyroute. 2008-01-12 Chia-I Wu * diversity-phonekit-backend/Makefile.am: s/HAVE_GEOCLUE/HAVE_PHONEKIT/. 2008-01-12 Chia-I Wu * diversity-control-backend/control-equipment.xml, diversity-control-backend/control-equipment.c: New method `ShareTag.' (IFACE_CHECK): Macro to check that the equipment implements the desired interface. 2008-01-12 Chia-I Wu Export DiversityEquipment to DBus. Note that it is unfinished. * diversity-control-backend/control-equipment.xml, diversity-control-backend/control-equipment.c, diversity-control-backend/control-equipment.h: Prototype of `org.openmoko.diversity.sms' interface. * diversity-control-backend/diversity-control.c: Export DiversityBard's equipments when a bard is being exported. * diversity-control-backend/Makefile.am: Updated. * include/diversity-equipment.h, src/diversity-equipment.c (diversity_equipment_get_name): New function. (diversity_equipment_dispose): Object is wrongly finalized. * include/diversity-bard.h, src/diversity-bard.c (diversity_bard_equipment_list): New function. 2008-01-11 Chia-I Wu DiversityEquipment support. Note that it is unfinished. * include/diversity-equipment.h, src/diversity-equipment.c: New files implementing DiversityEquipment. * include/diversity-bard.h, src/diversity-bard.c: Allow DiversityBard to carry and equip DiversityEquipment. * src/diversity-daemon.c: Have `self' equip all equipments after all backends are loaded. * include/diversity-sms.h, src/diversity-sms.c: New files implementing DiversitySmsIface. * diversity-phonekit-backend/diversity-phone-kit.h, diversity-phonekit-backend/diversity-phone-kit.c: New files implementing DiversityPhoneKit, which is derived from DiversityEquipment and implements DiversitySmsIface. * diversity-phonekit-backend/diversity-phonekit-backend.c: Use DiversityPhoneKit. * include/Makefile.am, src/Makefile.am, diversity-phonekit-backend/Makefile.am: Updated. 2008-01-10 Chia-I Wu * diversity-phonekit-backend/diversity-phonekit-backend.c, diversity-phonekit-backend/diversity-phonekit-backend.h, diversity-phonekit-backend/Makefile.am: Prototype of PhoneKit backend. * src/diversity-daemon.c, src/Makefile.am, Makefile.am, configure.in: Updated for PhoneKit backend. 2008-01-10 Chia-I Wu * diversity-geoclue-backend/geoclue-position-marshal.list, diversity-geoclue-backend/diversity-geoclue-backend.c: Monitor GeoClue service status change. diversity_object_touch self upon signals. 2008-01-10 Chia-I Wu Viewports should have overlays (for maps). Before that happens, provide an interface for easier map handling. * diversity-osm-backend/diversity-osm-backend.c, diversity-osm-backend/diversity-osm-backend.h, diversity-osm-backend/Makefile.am: New backend, OpenStreetMap. * src/diversity-daemon.c, src/Makefile.am, Makefile.am, configure.in: Updated for the OSM backend. * include/diversity-viewport.h, src/diversity-viewport.c: New struct DiversityOverlay. It is not an overlay! * diversity-control-backend/control-viewport.xml, diversity-control-backend/control-viewport.c: New interface `org.openmoko.diversity.atlas.' 2008-01-08 Chia-I Wu * src/diversity-object.c (diversity_object_connect): Check that obj is not equal to target. * diversity-control-backend/diversity-control.c, diversity-control-backend/diversity-control.h (diversity_control_from_object): New function. * diversity-control-backend/control-object.xml, diversity-control-backend/control-object.c: Export methods for object connection manipulation. 2008-01-08 Chia-I Wu * configure.in: Check the existences of NetworkManager.pc and geoclue.pc. * include/NetworkManager.h, include/NetworkManagerVPN.h: Removed. * TODO: New file. * diversity-nm-backend/Makefile.am, diversity-control-backend/Makefile.am, diversity-geoclue-backend/Makefile.am, diversity-ebook-backend/Makefile.am, include/Makefile.am: Set AM_CPPFLAGS and xxx_LIBADD properly. 2008-01-08 Chia-I Wu * src/diversity-marshal.list, include/diversity-object.h, src/diversity-object.c: Make `flags' private. Make `flags' and `accuracy' properties. New signal `property_changed'. * src/diversity-viewport.c: Updated. * diversity-control-backend/control-object.xml, diversity-control-backend/control-object.c: Updated. 2008-01-08 Chia-I Wu * include/diversity-object.h, src/diversity-object.c (diversity_object_connect, diversity_object_disconnect, diversity_object_get_connections): New functions to connect objects. * diversity-ebook-backend/diversity-ebook-backend.c: Connect self to contacts. 2008-01-07 Chia-I Wu * diversity-control-backend/Makefile.am, diversity-geoclue-backend/Makefile.am, diversity-nm-backend/Makefile.am, src/Makefile.am, Makefile.am, configure.in, src/diversity-daemon.c: Allow each backend to be disabled. * diversity-ebook-backend/diversity-ebook-backend.c, diversity-ebook-backend/diversity-ebook-backend.h, diversity-ebook-backend/Makefile.am: Prototype of EBook backend. 2007-12-31 Chia-I Wu * diversity-control-backend/control-world.c, diversity-control-backend/control-world.xml: Implement ConnectAp and ConnectWired. * diversity-nm-backend/nm-client.c (nm_client_activate_device), diversity-nm-backend/nm-device.c (nm_device_get_active_access_point): Implemented. * diversity-nm-backend/diversity-nm-backend.c: Cosmetic formatting. (state_to_detail): New function to Convert NMDeviceState to DiversityNetworkDetail. (on_device_state_changed): Use state_to_detail. Some cleanups. 2007-12-30 Chia-I Wu This nm-is-too-complex commit adds incomplete support for network management. * include/diversity-world.h, src/diversity-world.c: New struct DiversityNetwork for network management. It should be turned into a GObject someday. * diversity-nm-backend/nm-client.c, diversity-nm-backend/nm-client.h (nm_client_activate_device): New stub function. * diversity-nm-backend/nm-device.c, diversity-nm-backend/nm-device.h: Set device state to NM_DEVICE_STATE_DISCONNECTED on DeviceNoLongerActive. (nm_device_get_active_access_point): New stub function. * diversity-nm-backend/diversity-nm-backend.c: Report device and AP changes. Support for DiversityNetwork. 2007-12-30 Chia-I Wu * include/diversity-ap.h, src/diversity-ap.c: Remove `connected' property and add `in_service' property. * diversity-control-backend/control-ap.xml: Follow D-Bus naming conventions. Add `InService' property. 2007-12-29 Chia-I Wu * src/diversity-ap.c (diversity_ap_merge): Set ssid and hw_address correctly. * include/diversity-world.h, src/diversity-world.c: Add per object type hash tables. (diversity_world_object_lookup): New function for object lookup. * diversity-nm-backend/diversity-nm-backend.c: Remove local hash table and use diversity_world_object_lookup. 2007-12-28 Chia-I Wu * src/diversity-ap.c (diversity_ap_merge): Freeze/thaw the object. 2007-12-28 Chia-I Wu * diversity-nm-backend/nm-client.c (finalize), diversity-control-backend/diversity-control.c (remove_client), src/world-tree.c (world_tree_free): Fix leaks. 2007-12-28 Chia-I Wu * diversity-nm-backend/diversity-nm-backend.c (monitor_ap): Call nm_update_strength_grid. * include/diversity-ap.h, src/diversity-ap.c (macro DIVERSITY_AP_STRENGTH_GRID): Move to header. * src/diversity-bard.c (diversity_bard_class_init): Make properties G_PARAM_READWRITE. * diversity-control-backend/Makefile.am, diversity-control-backend/control-ap.c, diversity-control-backend/control-ap.h, diversity-control-backend/control-ap.xml, diversity-control-backend/control-bard.c, diversity-control-backend/control-bard.h, diversity-control-backend/control-bard.xml, diversity-control-backend/diversity-control.c: Implement interfaces org.openmoko.diversity.ap and org.openmoko.diversity.bard. 2007-12-27 Chia-I Wu * src/diversity-ap.c (diversity_ap_init): Initialize properly. * diversity-nm-backend/diversity-nm-backend.c (monitor_ap), diversity-nm-backend/nm-device.c, diversity-nm-backend/nm-device.h (nm_device_replace_ap): Refactor. 2007-12-27 Chia-I Wu * include/diversity-world.h, src/diversity-world.c (diversity_world_position_get): New convenient function. * include/diversity-ap.h, src/diversity-ap.c (struct _DiversityApPrivate): Make grid 1-dimensional array. (diversity_ap_get_strength_grid): New function to return the grid. (diversity_ap_update_grid): Superceded by... (diversity_ap_update_strength_grid): this function. * diversity-nm-backend/diversity-nm-backend.c, diversity-nm-backend/nm-device.c: Updated. 2007-12-27 Chia-I Wu * diversity-nm-backend/nm-device.c (nm_device_replace_ap): Raise the reference count of the substitution. 2007-12-27 Chia-I Wu * diversity-control-backend/control-world.c (control_world_viewport_add): Viewport should be exported before added to the world. * include/diversity-utils.h (DIVERSITY_UNITS): Macro for meters to degrees conversion. * include/diversity-ap.h, src/diversity-ap.c (diversity_ap_init): Set hw_address to NULL. (diversity_ap_get_strength): Return value should be gint8. (diversity_ap_merge, diversity_ap_update_grid): New functions. * diversity-nm-backend/nm-device.c, diversity-nm-backend/nm-device.h (access_point_strength_proxy): Update AP's strength grid. (nm_device_replace_ap): New function. * diversity-nm-backend/diversity-nm-backend.c, diversity-nm-backend/diversity-nm-backend.h: Add discovered APs to the world. 2007-12-26 Chia-I Wu * include/diversity-ap.h (enum _diveristy_ap_flag, enum _diveristy_ap_mode): Define flags and modes. * diversity-nm-backend/nm-device.c (nm_device_ap_new): Convert capabilities to flags. 2007-12-26 Chia-I Wu * configure.in, src/Makefile.am, diversity-nm-backend/Makefile.am, diversity-control-backend/Makefile.am, diversity-geoclue-backend/Makefile.am,: Formatting. Remove unused code. Use noinst_LTLIBRARIES as backend targets. * src/diversity-backend.c: Renamed to... * src/diversity-daemon.c: this. 2007-12-26 Chia-I Wu * diversity-nm-backend/diversity-nm-backend.c: Connect to various signals of NMClient and NMDevice. Need more work to be able to add APs to the world. * diversity-nm-backend/nm-device.c (access_point_strength_proxy): Set AP strength. 2007-12-26 Chia-I Wu * diversity-nm-backend/nm-client.c, diversity-nm-backend/nm-device.c, diversity-nm-backend/nm-client.h, diversity-nm-backend/nm-device.h, diversity-nm-backend/Makefile.am, diversity-nm-backend/nm-marshal.list: More complete NMClient and NMDevice implementation. 2007-12-25 Chia-I Wu * diversity-nm-backend/nm-client.c, diversity-nm-backend/nm-device.c, diversity-nm-backend/nm-client.h, diversity-nm-backend/nm-device.h: NMClient and NMDevice based on libnm-glib (pre-release of 0.7). * diversity-nm-backend/diversity-nm-backend.c, diversity-nm-backend/Makefile.am: Use NMClient and NMDevice. 2007-12-24 Chia-I Wu * include/diversity-ap.h, src/diversity-ap.c: Add more properties to DiversityAp. Inspired by NMAccessPoint frm libnm-glib. 2007-12-22 Stefan Schmidt * diversity-nm-backend/diversity-nm-backend.c: Cosmetic and cleanup: Remove unneeded header files. Use GTypes everywhere. 2007-12-22 Stefan Schmidt * diversity-nm-backend/diversity-nm-backend.c: Big dbus-glib re-factor. Closes I#299 2007-12-21 Chia-I Wu * diversity-control-backend/control-world.c, tests/test-tree.c: g_object_unref objects added to world. 2007-12-21 Chia-I Wu * diversity-control-backend/diversity-control.c, diversity-control-backend/diversity-control.h: Exported objects can be owned, usually by dbus names. When the owner disconnected from the dbus, the owned objects are removed. Only viewports can be owned. * diversity-control-backend/control-world.c, diversity-control-backend/control-world.xml: Own exported viewports. 2007-12-19 Chia-I Wu * include/Makefile.am, src/Makefile.am, include/diversity-ap.h, src/diversity-ap.c: Add files for future DiversityAp. * src/diversity-bard.c: Install twitter as a property. 2007-12-19 Chia-I Wu * include/diversity-viewport.h, src/diversity-viewport.c, src/world-tree.c: Filter support for DiversityViewport. * diversity-control-backend/control-viewport.xml, diversity-control-backend/control-viewport.c: Export a naive rule-based filter mechanism. * include/diversity-object.h, tests/test-tree.c: Add SET_FILTER test. 2007-12-19 Chia-I Wu * include/diversity-object.h, src/diversity-object.c, diversity-control-backend/control-object.xml, diversity-control-backend/control-object.c: Add last-seen timestamp. Add enum for geometry accuracy. (DiversityObjectFlags): More flags. 2007-12-18 Chia-I Wu * tests/Makefile.am: Add frontend-marshal.list to EXTRA_DIST. * tests/example-frontend.c (M_RADIUS): The unit is meters. (on_self_geometry_changed): Fix a leak. Make the example frontend shows object addition/removal when driving around in Taipei. 2007-12-18 Chia-I Wu * tests/Makefile.am, tests/example-frontend.c, tests/frontend-marshal.list: Add a simple example frontend. * include/diversity-viewport.h, diversity-control-backend/control-world.c, diversity-control-backend/control-world.xml, src/diversity-viewport.c, diversity-geoclue-backend/diversity-geoclue-backend.c, src/world-tree.c: Latitude should be lontitude and lontitude should be latitude. * diversity-control-backend/control-object.xml, diversity-control-backend/control-object.c: New dbus methods, Geometry{Set,Get,Fix}. 2007-12-18 Chia-I Wu * include/diversity-object.h, src/diversity-object.c, diversity-control-backend/control-object.xml: Have GeometryChanged report current geometry. 2007-12-18 Chia-I Wu * diversity-control-backend/diversity-control.c, diversity-control-backend/diversity-control.h: Move DBusGObjectInfo implementations for Diversity{Object,Viewport,World} to indivitual files. * diversity-control-backend/control-viewport.c, diversity-control-backend/control-viewport.h, diversity-control-backend/control-world.c, diversity-control-backend/control-world.h, diversity-control-backend/control-object.c, diversity-control-backend/control-object.h: New files. * diversity-control-backend/Makefile.am: Add new files. 2007-12-18 Chia-I Wu * include/diversity-object.h: More DiversityObjectType. * src/diversity-viewport.c: Set object type. * diversity-control-backend/control-world.xml, include/diversity-world.h, src/diversity-world.c: Replace `position' related signals and functions by a DiversityBard called `self'. * diversity-geoclue-backend/diversity-geoclue-backend.c: Report postion by changing self's location. * diversity-control-backend/diversity-control.c: Updated to use the following new functions. (DiversityControlExport): New struct attached to exported objects. (diversity_control_object_export, diversity_control_object_unexport): New functions to export/un-export objects. Un-exporting is a no-op for now. 2007-12-17 Chia-I Wu * include/diversity-bard.h, src/diversity-bard.c: New files implement DiversityBard. Nothing fancy for now. * src/Makefile.am, include/Makefile.am: Add diversity-bard.[ch]. * include/diversity-object.h: s/HUMAN/BARD/. 2007-12-17 Chia-I Wu * include/diversity-viewport.h, include/diversity-world.h: Add standard gobject macros. * src/diversity-viewport.c: Destroy the object properly. * src/diversity-world.c: Destroy the object properly. (DiversityWorldPrivate): Remove unused fields. (diversity_world_init): Lower tree max depth to 16. 2007-12-17 Chia-I Wu * README: Document installation of Gypsy and GeoClue. 2007-12-16 Chia-I Wu * diversity-control-backend/diversity-control.xml, diversity-control-backend/control-object.xml, diversity-control-backend/control-world.xml, diversity-control-backend/control-viewport.xml: Follow D-Bus naming conventions (Thanks mickey for pointing out). * src/diversity-viewport.c, src/world-tree.c: Do not make GSList even slower: s/g_slist_append/g_slist_prepend/. 2007-12-16 Chia-I Wu * include/diversity-viewport.h, src/diversity-viewport.c (diversity_viewport_count_objects, diversity_viewport_get_objects): New functions. * src/world-tree.c, src/world-tree.h: Use DiversityRectangle. Longitude is between [-180, 180) and latitude is between [-90, 90). Do not grow non-leaf nodes. (world_tree_dump): New function for debugging. * tests/Makefile.am, tests/test-tree.c: Updated for lon/lat range change. 2007-12-16 Chia-I Wu * include/Makefile.am: Add diversity-utils.h to noinst_HEADERS. 2007-12-16 Chia-I Wu * include/diversity-utils.h: New file. Provide DiversityRectangle and helper functions. * include/diversity-object.h, src/diversity-object.c: Provide fields for possible optimizations in WorldTree. Every object has an unique id and a serial number. Use DiversityRectangle. s/RESIZE/GEOMEGRY_CHANGED/i * src/diversity-viewport.c, src/world-tree.c, tests/test-tree.c: Updated. 2007-12-15 Chia-I Wu * configure.in, Makefile.am, tests/Makefile.am, tests/test-tree.c: Add WorldTree test program. * src/diversity-object.c, src/diversity-marshal.list: RESIZED signal should be named `resized' and take 4 arguments. * src/diversity-viewport.c: Remove objects when viewport is shrinked. Disconnect signal handler from removed objects. * src/world-tree.c (node_grow): Update objects' back pointers. (world_tree_remove, _world_tree_unview): Drop object from viewport on removal. (world_tree_pick): Fix endless loop. 2007-12-15 Chia-I Wu * src/diversity-world.c, src/world-tree.c, src/world-tree.h: Move WorldTree monitoring code to world-tree.c. Fix a leak where g_slist_delete_link should be used. * src/diversity-viewport.c: Update for DiversityObject signal name change. Avoid object being added more than once. 2007-12-15 Chia-I Wu * include/diversity-object.h, src/diversity-object.c: Rename and combine `move' and `resize' signals to `resized' signal. Same to the function calls. * diversity-control-backend/control-object.xml, src/diversity-viewport.c: Updated. * src/world-tree.c: Monitor objects and migrate if necessary. 2007-12-14 Chia-I Wu * src/diversity-marshalers.list: Renamed to.. * src/diversity-marshal.list: this. * src/diversity-viewport.c, src/diversity-object.c, src/diversity-world.c, src/Makefile.am: s/diversity-marshalers/diversity-marshal/. 2007-12-14 Chia-I Wu * src/Makefile.am, src/world-tree.c, src/world-tree.h: New struct and functions to store DiversityObject in a tree geographically. * src/diversity-world.c: Use WorldTree. 2007-12-14 Chia-I Wu * diversity-control-backend/Makefile.am: s/diversity-world/control-world/. 2007-12-14 Chia-I Wu * include/diversity-viewport.h, src/diversity-viewport.c (diversity_viewport_new): New function. (diversity_viewport_class_init): typo in signal registration. * diversity-control-backend/diversity-control.xml, diversity-control-backend/control-object.xml, diversity-control-backend/control-world.xml, diversity-control-backend/control-viewport.xml, diversity-control-backend/Makefile.am: Add/Update dbus interfaces (for testing purpose). * diversity-control-backend/diversity-control.c, diversity-control-backend/diversity-control.h: Publish services to dbus (for testing purpose). * diversity-control-backend/diversity-control-backend.c: Remove signal handlers. They should be handled by DiversityControl. 2007-12-13 Chia-I Wu * diversity-control-backend.c: Proper object ref/unref. (name_owner_changed): Removed. 2007-12-12 Chia-I Wu Initial version of control backend. Control backend aims to provide a D-Bus interface, so that frontends can control the daemon through this interface. With this and the last three commits, the infrastructure can be vaguely seen. Time to overhaul the implementation :) * diversity-control-backend/diversity-control.xml, diversity-control-backend/control-marshal.list, diversity-control-backend/diversity-control.c, diversity-control-backend/diversity-control-backend.c, diversity-control-backend/diversity-control.h, diversity-control-backend/Makefile.am, diversity-control-backend/diversity-control-backend.h, configure.in, Makefile.am: Initial version of control backend. * src/diversity-backend.c, src/Makefile.am: Move signal handlerk to control backend. 2007-12-08 Chia-I Wu * diversity-nm-backend/Makefile.am, include/Makefile.am, configure.in, diversity-geoclue-backend/Makefile.am, autogen.sh: Fix make distcheck errors. Add -Wall to CFLAGS. * diversity-nm-backend/diversity-nm-backend.c, src/diversity-viewport.c, src/diversity-object.c, src/diversity-world.c: Fix warnings. 2007-12-08 Chia-I Wu * include/diversity-viewport.h, src/diversity-viewport.c, src/Makefile.am: Primitive DiversityViewport implementation. Untested. * include/diversity-object.h, src/diversity-object.c (diversity_object_contain, diversity_object_intersect): New helper functions. * include/diversity-world.h, src/diversity-world.c: Replace scope by DiversityViewport. * src/diversity-marshalers.list: Do not generate basic marshalers. * configure.in: Check gobject-2.0 existence. 2007-12-05 Chia-I Wu * src/Makefile.am, include/diversity-object.h, src/diversity-object.c, include/diversity-world.h: Primitive DiversityObject implementation. * src/diversity-world.c, src/diversity-marshalers.list: Support of addition/removal of objects to the world. * src/diversity-backend.c: Print out object addition/removal. 2007-11-27 Daniel Willmann * diversity-nm-backend/diversity-nm-backend.c: Fix a bug deleting the old list items. Later we should trigger on add/remove network events and just update the list then instead of deleting and re-adding. 2007-11-27 Daniel Willmann * diversity-nm-backend/diversity-nm-backend.c: Just use the global nm.networks List instead of passing through the functions. This fixes the bug of no networks ever being added to the data structure since an empty GList is a pointer to NULL (and passing that along really makes no sense).. Fix off-by-one error. 2007-11-27 Stefan Schmidt * AUTHORS: Add current backend contributors. 2007-11-27 Stefan Schmidt * autogen.sh: Add --force to libtoolize to make sure new files get generated even if they already exists. 2007-11-26 Chia-I Wu Add DiversityWorld object that backends can report changes to. For now, only position change can be reported. Others, like object addition/removal, are TODOs. * include/diversity-world.h, src/diversity-world.c, src/diversity-marshalers.list, src/Makefile.am: Add DiversityWorld. * diversity-geoclue-backend/diversity-geoclue-backend.c, diversity-geoclue-backend/diversity-geoclue-backend.h: Report position change to DiversityWorld. * src/diversity-backend.c: Use DiversityWorld. Move network scan timer to... * diversity-nm-backend/diversity-nm-backend.c, diversity-nm-backend/diversity-nm-backend.h: here. 2007-11-26 Daniel Willmann * src/diversity-backend.c: Query the nm-backend regulary and print out found wireless networks along with the location. 2007-11-26 Daniel Willmann * diversity-nm-backend: Make diversity-nm-backend a lib and modify it so we can use it from our main backend program. 2007-11-26 Daniel Willmann * autogen.sh, config.*, compile, depcomp, ltmain.sh, libtool, missing: Remove autogenerated files and modify autogen.sh to generate them. 2007-11-26 Daniel Willmann * Makefile.am, configure.ac, src/: Add initial version of the main backend program. This only monitors and prints the position in regular intervals. 2007-11-26 Daniel Willmann * diversity-geoclue-backend: Make diversity-geoclue-backend a lib so we can use it from our main backend program. Geoclue now needs to attach to the system bus. 2007-11-12 Chia-I Wu Initial version of the GeoClue backend. Can poll or monitor current position through GeoClue gpsd backend. * diversity-geoclue-backend/geoclue-position-marshal.list, diversity-geoclue-backend/Makefile.am, diversity-geoclue-backend/diversity-geoclue-backend.c: Added. * configure.in, Makefile.am: Add geoclue backend. 2007-11-08 Stefan Schmidt Initial version of the NetworkManager backend. Asks NM over dbus for currently available networks. Based on nm-tool from Dan Williams * AUTHORS: Added. * COPYING: Added. * ChangeLog: Added. * INSTALL: Added. * Makefile.am: Added. * NEWS: Added. * README: Added. * autogen.sh: Added. * compile: Added. * config.guess: Added. * config.h.in: Added. * config.status: Added. * config.sub: Added. * configure.in: Added. * depcomp: Added. * diversity-nm-backend/Makefile.am: Added. * diversity-nm-backend/diversity-nm-backend.c: Added. * include/Makefile.am: Added. * include/NetworkManager.h: Added. * include/NetworkManagerVPN.h: Added. * install-sh: Added. * libtool: Added. * ltmain.sh: Added. * missing: Added.