Bug 334331 - [DetachedView] [Workbench] Detached window functionality is very limited and not flexible
Summary: [DetachedView] [Workbench] Detached window functionality is very limited and ...
Status: NEW
Alias: None
Product: Platform
Classification: Eclipse Project
Component: IDE (show other bugs)
Version: 3.7   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Platform UI Triaged CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 317379 335903 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-01-13 18:37 EST by Christian Jean CLA
Modified: 2014-08-18 11:34 EDT (History)
8 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christian Jean CLA 2011-01-13 18:37:30 EST
Build Identifier: All

Right now, we can detach a view into its own external window.  This is great for those who want to maximize their use of dual screens.

But it is annoying that these external windows have very limited functionality and control. It is not enhanced for today's dual (or more) multi-screen support.

Primary request would be to allow for any/all detached windows to have multiple views (horizontal or vertical split pane... like the Eclipse perspective currently supports).  Multiple tabbed views currently works.  This would mean that each detached window would allow to receive DnD of other windows and show an outline of where it would be dropped... again like Eclipse perspective currently supports.

Next would be to have all detached windows to support the minimize feature.

Next would be to have each detached window support an 'Always on top' flag.

Next would be to have an Eclipse dialog manage all detached windows individually or in groups.  So that by multi-selecting windows, you could click the 'Restore' to make all selected visible, 'Minimize' to make all selected minimized, 'Maximize' to make all selected maximized in its appropriate desktop, 'Always on top' to set the flag of all those selected.  Basically these are group operations... where groups are those selected at the time of operation.

Thanks!

Reproducible: Always
Comment 1 Oleg Besedin CLA 2011-01-14 15:50:59 EST
How about the menu Window -> New Window?
Comment 2 Christian Jean CLA 2011-01-14 16:44:50 EST
(In reply to comment #1)
> How about the menu Window -> New Window?

I thought about it and I tried it before writing this request. Although you can open up all the views etc, those two windows are in no way 'linked' to each other.

So if I wanted to use two LCD's by starting the main window having a view to my source code and on the other LCD, start another window (the way you said), and then setting it up to have a 'Package Explorer' view (having 'Link with Editor' enabled) and an 'Outline' view and a 'Console' view horizontally bellow.

When I go to the first LCD and change source files, the second window does not link with it and change to the file (in Package Explorer) and proper method (in Outline).

If at first, only having a 'minimize' button for each detached window would be that much better and a great first enhancement.  

When I set up my entire environment on two (or more) LCD's and then decide that I want to for example use another application (FTP, WinSCP, browser, etc) in parallel to my Eclipse, in order to get access to those applications (under my detached windows), I can only do so by minimizing the main Eclipse window (and that makes ALL my Eclipse window minimized).  It's an all or none scenario.  If I could just minimize those one or two detached window to get to my application, then it would allow me to look at my code (and any other detached window) will I use my application to develop.

I hope my example is easy to understand...
Comment 3 Oleg Besedin CLA 2011-01-17 14:17:05 EST
Yes, I see what you mean. It might be an interesting exercise to see if we can do this in e4. As for 3.x, I'd put this into "helpwanted" category.
Comment 4 Eric Moffatt CLA 2011-01-17 16:05:00 EST
Christian, in 4.1 you *can* make a detached window contain multiple stacks with splitters. It can even contain editors if you want. The current minimize behavior of a stack in a DW is likely wrong currently (it minimizes the stack to the trim of the main window) but this could likely be addressed. Also, AFAIK DW's are 'always on top' in relation to their main window's shell, just not with each other. 

The distinction between 'New Window' and making a detached window is specifically to allow for the tighter coupling that a detached window affords (i.e. running a Search in the main window will update the Search view in a detached window...).

The idea of having a dialog to manage DW's is quite interesting. One issue would be that we don't have any 'label' to identify which DW is which...any suggestions ?

We're very interested in allowing as many new 'shapes' for the UI layout in 4.1 as we can since (in compatibility land) that's its main selling feature...;-) so bugs like this are good places to determine the most useful shapes, keep it up !
Comment 5 Christian Jean CLA 2011-01-18 12:50:48 EST
(In reply to comment #4)
> Christian, in 4.1 you *can* make a detached window contain multiple stacks with
> splitters. It can even contain editors if you want. The current minimize
> behavior of a stack in a DW is likely wrong currently (it minimizes the stack
> to the trim of the main window) but this could likely be addressed. Also, AFAIK
> DW's are 'always on top' in relation to their main window's shell, just not
> with each other. 
> 
> The distinction between 'New Window' and making a detached window is
> specifically to allow for the tighter coupling that a detached window affords
> (i.e. running a Search in the main window will update the Search view in a
> detached window...).
> 
> The idea of having a dialog to manage DW's is quite interesting. One issue
> would be that we don't have any 'label' to identify which DW is which...any
> suggestions ?
> 
> We're very interested in allowing as many new 'shapes' for the UI layout in 4.1
> as we can since (in compatibility land) that's its main selling feature...;-)
> so bugs like this are good places to determine the most useful shapes, keep it
> up !

Ah, I'm running 3.4.2 (I always run an older version) so that's why I haven't seen the new DW splits.

I will definitely install the latest and greatest on my laptop and try that out, thanks a lot.

Just to give you a little background:

I'm a programmer by profession, but I'm a day-trader by passion. And managing data in a trading platform is quite complex.  There are more views/windows/data than most can deal with and most are linked with other data (ie: stock symbol links to its quote, charts, ToS and book... you change the stock and if the other windows have the 'linked' status, they are automatically updated with the new symbol data).

The way most platforms will identify their windows is by simply assigning it a unique number for its lifetime... like "1: " and "2: " and so on.  The subsequent text to the right if the ID is usually the name of the view itself (when it only has one view).  When there are more, it just lists them in containment order.

So, if I have a DW which has the 'Output' view, it would be named '1: Output' and if I have a DW which has a 'JUnit' view, it would be named '2: JUnit'.

When a DW has multiple views, by default I think it could simply list those views, such as "3: Console, Package Manager" or "4: Breakpoint, Registers, Signals, Variables".

The above could be considered the default name, but we could also allow for the assignment of custom user name.  So in my DW with multiple views, I could simply name it "Debug setup" and my DW with the 'Console' view, I could name it "Log output".

When showing all of the DW with the dialog, you could see a table having multiple columns: 

ID  Name             View(s)
-----------------------------------------------------------------------
1   Log output       Console
2   Debug setup      Breakpoint, Registers, Signals, Variables, [...]
3   JUnit            JUnit
-----------------------------------------------------------------------

I'm sure there could be a better way, but I think that in general that would work in being able to identify DW's (simple or complex).

Other columns could indicate the position/size of a DW and another it's state (min/max/hidden/pinned/etc).
Comment 6 Andrey Loskutov CLA 2012-02-21 17:24:08 EST
Duplicate of bug 176670
Comment 7 Andrey Loskutov CLA 2012-02-21 17:24:48 EST
(In reply to comment #6)
> Duplicate of bug 176670

Sorry, I was in the wrong bug, just ignore the comment please.
Comment 8 Mauro Molinari CLA 2014-08-08 10:15:49 EDT
(In reply to Christian Jean from comment #0)
> Primary request would be to allow for any/all detached windows to have
> multiple views (horizontal or vertical split pane... like the Eclipse
> perspective currently supports).  Multiple tabbed views currently works. 
> This would mean that each detached window would allow to receive DnD of
> other windows and show an outline of where it would be dropped... again like
> Eclipse perspective currently supports.

This is bug 203188 and, as already said, is now implemented in current Eclipse 4.x.

> Next would be to have all detached windows to support the minimize feature.

This is bug 322580.

> Next would be to have each detached window support an 'Always on top' flag.
> 
> Next would be to have an Eclipse dialog manage all detached windows
> individually or in groups.  So that by multi-selecting windows, you could
> click the 'Restore' to make all selected visible, 'Minimize' to make all
> selected minimized, 'Maximize' to make all selected maximized in its
> appropriate desktop, 'Always on top' to set the flag of all those selected. 
> Basically these are group operations... where groups are those selected at
> the time of operation.

These requests are partly covered by bug 317379, however your suggestions are more complete and are still valid in current Eclipse Luna I20140606-1215.
Comment 9 Lars Vogel CLA 2014-08-18 11:31:38 EDT
*** Bug 317379 has been marked as a duplicate of this bug. ***
Comment 10 Lars Vogel CLA 2014-08-18 11:34:32 EDT
*** Bug 335903 has been marked as a duplicate of this bug. ***