[Dev] Scoping out sharing-related 0.7 projects

Alec Flett alecf at osafoundation.org
Tue Jan 31 10:26:58 PST 2006


Morgen Sagen wrote:
>
> I'm currently scoping out the following projects for 0.7:
>
>    A) Background synchronization (let the user continue to use 
> Chandler while syncing)
>
>    B) User Notification framework (provide the user some way to see 
> that shared items have been changed)
>
>    C) Conflict resolution (let the user manually reconcile conflicting 
> changes that have been synced)
>
> Below is a brief description of each, including areas in which I would 
> need help from other groups (Andi with some repository work, and the 
> Apps team for some CPIA work).  Comments are welcome.
>
>
> (A) Background (or "asynchronous") syncing involves moving the current 
> sharing operations into their own thread rather than blocking the main 
> UI thread as they do today.  The difficulty here will mostly be in the 
> repository view merging code, since using a different thread requires 
> using a different repository view.  I expect I will need some amount 
> of Andi's time to work through view merging issues, and we'll need 
> some way in CPIA to indicate (probably via some animated icon) that a 
> collection is currently being synced.
I'd like to be involved in some of the CPIA UI update stuff - there are 
a few places we need to do coordinated status bar/animation/etc 
notification back to the UI, and I'd like to make sure we do it in a 
consistent way across all the modules that need to notify the UI

> repository view "refresh".  (2) Pick an automatic conflict resolution 
> policy ('local changes win' versus 'remote changes win') and when a 
> conflict happens follow that policy, but in addition add a special 
> kind of UserNotification ("ConflictNotification"?) item to the 
> Changes/Notification log collection, recording in it which 
> Item/attribute had the conflict, and what the two attribute values were. \

+1 for this for the short term -

I can imagine later wanting to alert the user, even when things happen 
in the background. TrueSync,  the Yahoo <-> Palm sync software, gives a 
reasonable first-cut at a user interface for handling conflicts (it 
prompts the user for conflicts like if you change a calendar event on 
your Palm, and also on your Yahoo Calendar - who wins?) and I'm sure we 
could come up with something even nicer. But that's a reasonably hard UI 
problem that we shouldn't tackle yet...(mostly 'cuz we're pretty booked 
for UI design & implementation already!)

Alec
> I prefer (2); this would allow sharing-related changes to appear at 
> any time (since from the repository's standpoint, conflicts are 
> resolved immediately), and allow the user to review/resolve conflicts 
> at their leisure.  Ideally reviewing a conflict would mean clicking on 
> a ConflictNotification item in the list view and being presented in 
> the detail view with a side-by-side comparison of an item -- local 
> changes next to remote changes -- and buttons allowing the user to 
> pick between the two.  This project would require some CPIA work for 
> presenting a conflict resolution detail view.
>
>
>
>
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> Open Source Applications Foundation "Dev" mailing list
> http://lists.osafoundation.org/mailman/listinfo/dev



More information about the Dev mailing list