Bug 2066 - [Tasks] TaskView should become visible after a build when hidden (1GDZWNW)
Summary: [Tasks] TaskView should become visible after a build when hidden (1GDZWNW)
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 2.0   Edit
Hardware: All Windows 2000
: P3 enhancement (vote)
Target Milestone: 2.1 RC1   Edit
Assignee: Nick Edgar CLA
QA Contact:
URL:
Whiteboard:
Keywords: usability
: 14779 21468 (view as bug list)
Depends on:
Blocks:
 
Reported: 2001-10-10 22:25 EDT by Erich Gamma CLA
Modified: 2003-03-13 15:18 EST (History)
6 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Erich Gamma CLA 2001-10-10 22:25:43 EDT
EG (5/19/2001 12:58:03 PM)
	Consider the following scenario:
	I'm working in the Java Perspective.
	My configuration of the Java Perspective has a stack of "views" at the
	bottom:
		Console (visible at the top)
		Search Result
		Task List

	When I do a build and have new errors. I don't see the result of 
	the build operation and this can be confusing. I have to manually 
	bring the Tasks view to the front.
	The build operation should bring the task view to the front automatically.

	Notice, that the console view and the search result view already support
	this auto raise option, but not in a consistent way. The console view does it conditional based on
	a user preference, the search result view does it unconditionally.

NOTES:
Comment 1 Kevin Haaland CLA 2002-02-07 22:01:13 EST
Programatic changing the layout can lead to loss of context. How about adding 
support for indicating that there is "something interesting" happening in the 
view. (eg. In the TaskBar windows will "flash")
Comment 2 Kevin Haaland CLA 2002-04-23 20:14:38 EDT
Consider as a post 2.0 enhancement
Comment 3 Nick Edgar CLA 2002-07-29 11:45:29 EDT
*** Bug 14779 has been marked as a duplicate of this bug. ***
Comment 4 Nick Edgar CLA 2002-07-29 11:52:36 EDT
*** Bug 21468 has been marked as a duplicate of this bug. ***
Comment 5 Nick Edgar CLA 2002-07-29 11:52:56 EDT
Reopening for 2.1.
Comment 6 Nick Edgar CLA 2002-12-03 16:52:05 EST
Should add a preference for this.

Can defer the more general support for notifying that there is a change in a 
part.
Comment 7 Nick Edgar CLA 2002-12-09 22:42:03 EST
When showing the Tasks view, should also select and reveal the first new 
problem (i.e. the marker in the delta that has kind ADDED, is a subtype of 
PROBLEM, and has the earliest creation timestamp).
It's better to select the earliest problem rather than the latest, since 
earlier problems can generate further secondary problems.

Need to be careful to properly handle edits in the Tasks view itself.  This 
will work if we only check for PROBLEMs, which can't be manually added, 
removed or changed.

The view should not activate for CHANGED problems.  I know of no actual cases 
where problem markers get modified after the fact, but this can occur if, 
during creation, a marker is created then modified in separate workspace 
operations (an easy mistake to make).  That is, the plug-in calls 
createMarker, then setAttribute[s], not wrapped in an IWorkspace.run.
Comment 8 Karen Williamson CLA 2002-12-13 17:21:31 EST
fix released to HEAD stream (IPreferenceConstants, messages.properties, 
WorkbenchPlugin, WorkbenchPreferencePage)
Comment 9 Nick Edgar CLA 2002-12-16 10:19:01 EST
Reopening to address the selection question, and to refactor for proper split 
between org.eclipse.ui.workbench and org.eclipse.ui.views.
Comment 10 Nick Edgar CLA 2002-12-16 10:23:36 EST
Q: should it show on any kind of problem (errors, warnings and infos) or just 
errors
  - currently activates only for errors (I felt activating it for warnings was 
too disruptive)
  - another possibility is to add a pref

Q: should it select the (earliest) new problem?
  - pro: if there are many entries in the Tasks view, simply bringing it to 
front is not too helpful, since you don't necessarily see what the new 
problems are
  - con: will lose user's selection, so may lead to loss of context
  - I feel the pro outweighs the con

Comment 11 Nick Edgar CLA 2002-12-16 10:23:54 EST
Erich, can we get your thoughts on the above?
Comment 12 Erich Gamma CLA 2002-12-16 12:14:04 EST
>Q: should it show on any kind of problem 
I'd prefer to show the task view on any kind of problem. Otherwise the user 
might miss a warning. The model would be that whenever there is "builder" 
output in the form of a marker the task list is shown. I'd expect that builders 
will give the user control over the warnings that should be generated (see JDT 
for an example). 

>Q: should it select the (earliest) new problem?
I'd opt for revealing the first new problem only. When considering the task 
list like an output log I wouldn't expect that new output is selected.

Additional question:
Q: What is done if there is a filter that hides the problem? Will the task list 
still be brought to front? Could the icon of the task view indicate that there 
is new content. Once the task view receives focus the icon would switch back to 
the standard one.
Comment 13 Nick Edgar CLA 2002-12-16 16:33:02 EST
Another question: should the Tasks view activate, or leave the current part 
activated (e.g. the editor).  It currently activates, but it's probably less 
disruptive to only bring it to front.
The console seems to only bring itself to front, except when it's a fast view.

Comment 14 Erich Gamma CLA 2002-12-16 16:50:16 EST
No strong opinion... one benefit of activating the task view (and selecting the 
task <notice that I'm contradictig myself to my previous comment>) is that I 
can quickly navigate to the task with the keyboard. 
Comment 15 Erich Gamma CLA 2002-12-17 07:04:00 EST
After having used eclipse with the the bring to front plus activate the task 
list behaviour I agree with Nick that this is much to disruptive. In particular 
when you work with auto build. Therefore the task list should only be brought 
to front and not be activated.
Comment 16 Nick Edgar CLA 2002-12-17 08:22:39 EST
Karen, can you make this change (look for the console's use of showView to see 
how it's done), and have Eduardo release it for M4?

Comment 17 Karen Williamson CLA 2002-12-17 09:18:02 EST
This is the behaviour I have observed from the console view (and from the code 
I have found in ConsoleDocumentManager that seems to control it):

- When the view is stacked behind other views, it is brought to the front with 
no focus
- When it is a fast view, it is popped out *and* given focus
- When is doesn't exist at all, it is created and not given focus

Is this the desired behaviour for showing the task view?
Comment 18 Nick Edgar CLA 2002-12-17 10:30:23 EST
Currently we avoid opening the Tasks view -- it only is brought to front if it 
is already open.  My thinking here is that some perspectives are not for 
development but rather deployment or other activities, and having the Tasks 
view opened in these perspectives may not make sense.  On the other hand, if 
you're doing these other activities, you're probably not doing builds.
Erich or Darin, have you received any complaints to this effect with the 
Console?  It would probably be better to make them consistent, then if there's 
an issue, we can address it for both.


Comment 19 Nick Edgar CLA 2002-12-17 15:12:26 EST
Released changes to:
- show when new error or warning, but not info
- bring to front (opening if necessary), but do not activate (same as Console)

Also moved code to Workbench from WorkbenchPlugin to address bug 28512
(still needs to be moved up to org.eclipse.ui.views).
Comment 20 Erich Gamma CLA 2002-12-17 15:20:28 EST
>Erich or Darin, have you received any complaints to this effect with the 
>Console?
there were indeed complaints, in particular when the console was brought to 
front for any output (a web server can provide lots of output). It was 
addressed by a preference "show on error/show on output".

It looks like auto revealing is highly sensitive due to the loss of context and 
some users simply might not want it.

The initial setting should be to reveal the task view since the motivation for 
this effort was that first time users find the task view.  
Comment 21 Nick Edgar CLA 2002-12-17 15:26:42 EST
Yes, there is a pref to turn it off, but it is on by default.
Comment 22 Jason Bennett CLA 2003-01-07 00:28:40 EST
Personally, I find the new behavior annoying. I'm currently working on a new
project, which has multiple errors (since I'm moving code around). Every time I
do a save (to clear some fixed errors), my task list leaps up again, when I just
closed it.

This is compounded by the pref to turn this off being very hard to find. I
understand wanting to expose new people to the task list, but it should be
easier to stop.
Comment 23 Jason Bennett CLA 2003-01-07 00:34:41 EST
Ok, so 5 seconds after I posted, I found the pref, right under workbench.
Hopefully the help will be updated to mention this.

I don't suppose it would be possible for Eclipse to implement some "kill Clippy"
functionality, e.g. "you've closed the tasks list x times after builds. Do you
want to stop having the list appear automatically after builds?"
Comment 24 Nick Edgar CLA 2003-01-13 14:01:05 EST
Need to refactor for M5.
Comment 25 Nick Edgar CLA 2003-02-19 14:10:17 EST
Can't move the listener to the views plugin, since it needs to be hooked before
the views plugin is activated.
Comment 26 Victor Gonzalez Jr CLA 2003-03-13 12:41:58 EST
There is an issue with this feature and the filters of the Tasks view. I have
the task filter set to not show certain types of problems. However whenever
those types of markers get created, the tasks view grabs the focus away from
other views, when in the end it shows nothing new in the tasks view (Because of
the filter.)
Comment 27 Nick Edgar CLA 2003-03-13 14:44:37 EST
Victor, could you please enter a new problem report with details about your 
particular case?  I'd rather not reopen this problem report.
Comment 28 Nick Edgar CLA 2003-03-13 14:45:26 EST
Victor, please see previous comment.
Comment 29 Victor Gonzalez Jr CLA 2003-03-13 15:18:32 EST
Nick, done. New PR #34960