[MonoDevelop] Tab replacement for files proposal

Mike Krüger mkrueger at novell.com
Fri Aug 6 06:31:43 EDT 2010


> I think it would be useful to abstract things sufficiently to be able
> to experiment with several different options. Several things have been
> proposed -
> 1) make the file tabs into real first-class monodevelop docking tabs
> so they can be split side-by-side, dragged onto different monitors,
> etc.
> 2) improve the usability of the tab bar / document well. The VS2010
> power extensions addin has lots of interesting ideas for the document
> well.
> 3) remove the file tabs, like xcode, and instead re-use one file tab
> for displaying different files, with some kind of menu/switcher to
> view unsaved and recent files (The VS2010 solution navigator also has
> an interesting take on a recent/open/unsaved switcher).
> It would be interesting to experiment with a combination of these
> ideas. For example, I like the VS2010 dockable file tabs. But I also
> really like that in Xcode one doesn't have to explicitly close files -
> if they're saved and disappear off the "recent" list, they're closed
> automatically. Perhaps we could implement this behaviour while
> retaining the tab bar. And it certainly wouldn't hurt to improve the
> usability of the tab bar, for example an overflow dropdown instead of
> the cumbersome sideways scrolling.
> One thing I don't think we should do is to add lots of configurations
> options to switch between different behaviours.
I like the 'never close' approach too - I don't know why people don't 
like that approach, maybe they never realized that the current open 
'working set' of files equals the recent file list - merging these two 
features makes sense.
Never have to close anything is nice - in xcode the 'current open' files 
can be seen in the project browser as well - and the project browser 
shows unsafed files too.  The project browser can take over a part of 
showing which files are open.

There is no real reason why we won't have dockable documents without 
tabs - when we have no tabs there is somewher a control which shows the 
current file - that one could be the drag&drop point where the current 
file could be dragged and placed side by side.

One cool thing would be when dragging a document outside of the 
workspace that the workspace is cloned (with project browser and all) 
and that this way 2 'workspaces' are created - both with the same 
project - xcode4 does this. I find this feature >way< more usable than 
having a single file window on the 2nd monitor. Then I can work on the 
text editor on screen A and have a working set of files on that screen 
and have the c# binding on the 1st monitor with a dfiferent file working 
set - I would really love to work like that in monodevelop, would be a 
time saver.
(Yes this can be done with tabs too - therefore we shouldn't mix the 
'clone' workbench idea with the tabs).

But if so many people want to stick with the tabs (I think that they 
change their mind 1 week after a visual studio that doesn't have tabs) 
how about replacing the gtk tab control with a custom one ?
I think the gtk control takes too many space for what it does.

Atm monodevelop takes a bit too much vertical space (I think for pads 
too - but that's another story)  - having a better looking/smaller tab 
control would help with that.

(btw. I am the only one who thinks that gtk tabs look ugly?)


More information about the Monodevelop-list mailing list