Bug 248162 - Schedule synchronize dialog needs polish
Summary: Schedule synchronize dialog needs polish
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: CVS (show other bugs)
Version: 3.5   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.5 M3   Edit
Assignee: Tomasz Zarna CLA
QA Contact:
URL:
Whiteboard:
Keywords: polish
: 117920 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-09-22 12:11 EDT by Benno Baumgartner CLA
Modified: 2009-07-20 11:16 EDT (History)
2 users (show)

See Also:


Attachments
Patch v01 (16.47 KB, patch)
2008-09-26 10:13 EDT, Tomasz Zarna CLA
no flags Details | Diff
mylyn/context/zip (63.95 KB, application/octet-stream)
2008-09-26 10:13 EDT, Tomasz Zarna CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Benno Baumgartner CLA 2008-09-22 12:11:11 EDT
3.5 M2

The new schedule synchronize dialog is IMHO a bit odd: The check-boxes on the right disabling stuff on the left are strange. Also the dialog speaks about periodically synchronization, but allows to schedule a single synchronization. I would change the dialog to:
------------------------------------------------------------------
You can configure how to automatically synchronize 'bla' in the background on this dialog.

[X] Synchronize automatically
   Synchronize at: [00:00:00]
   [X] Repeat Every: [   1] [hours]

The last synchronize _started_ at: 6464646.
------------------------------------------------------------------

I would get rid of the 'Immediately' option completely, it's confusing and does not add much value.
Comment 1 Tomasz Zarna CLA 2008-09-26 10:13:14 EDT
Created attachment 113590 [details]
Patch v01

Here is the patch addressing all requests from comment 0. However, after a chat with Szymon we realized that the polished dialog isn't a perfect one either. Here are our concerns:

1) How do you setup a synchronization that should repeat every half an hour from now on? This was how the dialog worked even without Trevor's patch, prior bug 156152. By default the synchronization started immediately (+ interval).

2) Let's use an example for the second one. It's 1pm. You scheduled a synchronization to start at 2pm and repeat every hour. In the meantime you closed Eclipse and went on lunch, when you came back it was 2:15pm and you forgot to that you scheduled the synchronization so you started Eclipse again and opened the dialog. The dialogs displays the settings as above. The problem is that when you hit OK it will reschedule the synchronization so it will start tomorrow (you're past 2pm). But when you click Cancel after 15mins (at 2:30pm) the scheduler will start its first synchronization. There is now way to say whether or not the scheduler already started, since we have no information about the last synchronization. Even if we had one this still might not be that obvious to some users.

How about changing the dialog controls to:
------------------------------------------------------------------
[X] Synchronize automatically
   Repeat every: [   1] [hours]
   [X] Start at: [00:00:00]

The last synchronize started at: ???.
------------------------------------------------------------------
Comment 2 Tomasz Zarna CLA 2008-09-26 10:13:21 EDT
Created attachment 113591 [details]
mylyn/context/zip
Comment 3 Benno Baumgartner CLA 2008-09-27 05:34:05 EDT
(In reply to comment #1)
> 1) How do you setup a synchronization that should repeat every half an hour
> from now on? This was how the dialog worked even without Trevor's patch, prior
> bug 156152. By default the synchronization started immediately (+ interval).

Yes, I'm aware of that;-) My point is that this is not the 80% use case and it increases the complexity of the UI substantially. The 80% case is that you want to run a synchronization when you are not on the machine, during the night, or during lunch. Not now, if you want to synchronize now just click the synchronize button. 

> 2) Let's use an example for the second one. It's 1pm. You scheduled a
> synchronization to start at 2pm and repeat every hour. In the meantime you
> closed Eclipse and went on lunch, when you came back it was 2:15pm and you
> forgot to that you scheduled the synchronization so you started Eclipse again
> and opened the dialog. The dialogs displays the settings as above. The problem
> is that when you hit OK it will reschedule the synchronization so it will start
> tomorrow (you're past 2pm). But when you click Cancel after 15mins (at 2:30pm)
> the scheduler will start its first synchronization. There is now way to say
> whether or not the scheduler already started, since we have no information
> about the last synchronization. Even if we had one this still might not be that
> obvious to some users.

I don't understand: Why would you want to close eclipse when you go to lunch? Haha, just kidding. Yes, I see what you say. But this is not a new problem, right, this was also the case for the old dialog.

> How about changing the dialog controls to:
> ------------------------------------------------------------------
> [X] Synchronize automatically
>    Repeat every: [   1] [hours]
>    [X] Start at: [00:00:00]
> 
> The last synchronize started at: ???.
> ------------------------------------------------------------------

No, I don't like it, you just made the 'immediately' option implicit. The user has now no hint when the synchronization will start if the 'start at' check box is unchecked.

I think the correct UI for this dialog would have been a table on the left showing all your synchronization schedules and buttons on the right: Add, Remove, Edit:

 ---------------------
|My lunch schedule    |[Add... ]
|My night schedule    |[Remove ]
|                     |[Edit...]
|                     |
 ---------------------

This might look like an overkill at the moment, but will allow you to grow. Like introducing new kind of schedules (i.e. synchronize only a subset of projects), or allow to provide new schedulers through an extension point.
Comment 4 Tomasz Zarna CLA 2008-09-29 06:16:30 EDT
Benno, I released the patch to HEAD and opened bug 248914, so we won't lose your last suggestion. Thanks for your comment.
Comment 5 Tomasz Zarna CLA 2009-07-20 11:16:24 EDT
*** Bug 117920 has been marked as a duplicate of this bug. ***