Workspaces 0.8.1

Workspaces 0.8.1 is available at:

http://www.intellij.org/twiki/bin/view/Main/WorkspacesPlugin

Changes since version 0.8.1:

  • Added ability to "pin" and "unpin" a workspace to prevent its open files

from being closed when another workspace is (explicitly) closed. (This is
more or less a test to see whether this is more intuitive than the file
closing prevention scheme introduced in 0.8)

  • No longer including generated Javadocs with the distribution since it

nearly doubles the size. If you want the generated Javadocs, just run the
Ant task.


10 comments
Comment actions Permalink

Jon and Richard, (and anyone else who cares, of course :)

Please let me know how the pinning/unpinning works out for you. I really
like it so far. Will it satisfy your needs? I haven't gone through all the
use cases, but my first guess is that it can essentially give you the same
functionality as requiring explicit open/close AND can take the place of the
workspace file closing prevention (introduced in 0.8). Please correct me if
i'm wrong. Is there any need to keep the workspace file closing prevention
options?

Also, does anyone want the ability to have a workspace auto-pinned and
auto-unpinned when the workspace is implicitly opened/closed? I can
personally live without it, but it's probably not too big of a deal to add
it if someone really wants it.

Finally, what are your preferences as to how pinning/unpinning actions
should be incorporated into the menu UI? The simplest way would probably be
to just provide a menu option such as "Toggle Pin" that has a submenu
listing all your workspaces, e.g.:


Workspaces


-o Foo

Bar

Baz


Close All Workspaces

Close All Non-Workspace Files



Toggle Pin >

-o Foo


Bar

Create New From Open File(s)...

Baz




You could then select a workspace in the submenu to toggle the pin.

ORand i dunno if this is even possible with Swingwould you prefer to
hold down some modifier key (CTRL? SHIFT?) when opening the Workspaces menu
to see a slightly different menu, such as:


Workspaces


Unpin Foo

Pin Bar

Pin Baz


Pin All Workspaces


Create New From Open File(s)...



From some brief testing, however, i don't know if the modifier key trick
will work if you try to open the menu via the keyboard instead of the mouse.
I can't get it to work, at least.

Other thoughts/ideas/suggestions?

thanks!

chris


0
Comment actions Permalink

"Chris Bartley" <spam@feynman.org> wrote in message
news:aokis3$4rp$1@is.intellij.net...

Jon and Richard, (and anyone else who cares, of course :)


Here, sir! :)

Please let me know how the pinning/unpinning works out for you. I really
like it so far. Will it satisfy your needs? I haven't gone through all

the

use cases, but my first guess is that it can essentially give you the same
functionality as requiring explicit open/close AND can take the place of

the

workspace file closing prevention (introduced in 0.8). Please correct me

if

i'm wrong. Is there any need to keep the workspace file closing

prevention

options?


With the auto-pin/unpin it satisfies my need. I'm right now playing with it
and I seem to like that behaviour (I have begged for it enough so I have
to like it ;).
And, yes, we can remove the file-closing prevention option.

Also, does anyone want the ability to have a workspace auto-pinned and
auto-unpinned when the workspace is implicitly opened/closed? I can
personally live without it, but it's probably not too big of a deal to add
it if someone really wants it.


Sometimes I think about possibly unpinning (=closing) with the last file
close.
With pinned workspaces that means manual closing, of course.

Finally, what are your preferences as to how pinning/unpinning actions
should be incorporated into the menu UI? The simplest way would probably

be

to just provide a menu option such as "Toggle Pin" that has a submenu
listing all your workspaces, e.g.:


What I'd like best is to have just open and close actions in the menu.
(The current checkbox switch you implemented and is very effective)
Unfortunately, in 0.8.1 the open may not work, since the workspace status
is still calculated based on the files. So for a subset workspace, the menu
thinks it is already fully opened and clicking on it does nothing. (Well, it
tries to
close it but being subset it doesn't close anything and thus does nothing).


You could then select a workspace in the submenu to toggle the pin.
ORand i dunno if this is even possible with Swingwould you prefer to
hold down some modifier key (CTRL? SHIFT?) when opening the Workspaces

menu

to see a slightly different menu, such as:


Chris, I don't know. Neither of these look attractive to me. I still love
the
old simple switchable menu most.

Other thoughts/ideas/suggestions?


Just kudos to you, Chris, for all your effort and also your code looks very
nice.
I wish I saw code like that more often.

r.

P.S. Did you try that EditorFactoryListener?


0
Comment actions Permalink

Chris Bartley wrote:

Jon and Richard, (and anyone else who cares, of course :)

Please let me know how the pinning/unpinning works out for you. I really
like it so far. Will it satisfy your needs? I haven't gone through all the
use cases, but my first guess is that it can essentially give you the same
functionality as requiring explicit open/close AND can take the place of the
workspace file closing prevention (introduced in 0.8). Please correct me if
i'm wrong. Is there any need to keep the workspace file closing prevention
options?


Pinning is good. With pinning and option mentioned below, I don't
personally need the file closing prevention.

Also, does anyone want the ability to have a workspace auto-pinned and
auto-unpinned when the workspace is implicitly opened/closed? I can
personally live without it, but it's probably not too big of a deal to add
it if someone really wants it.


I don't think auto-pinning during implicit open is useful to me, but I
guess it could auto-unpin implicitly on closing of last file.

I do hope for that option I mentioned previously that will auto-pin a
workspace when it is explicitly opened.

As for the UI questions below, I'm not as concerned about the UI for
pinning as I am about the auto-pin on open option.

Thanks!
Jon

Finally, what are your preferences as to how pinning/unpinning actions
should be incorporated into the menu UI? The simplest way would probably be
to just provide a menu option such as "Toggle Pin" that has a submenu
listing all your workspaces, e.g.:

|------------|
| Workspaces |
|---------------------------------|
| -o Foo |
| Bar |
| Baz |
|---------------------------------|
| Close All Workspaces |
| Close All Non-Workspace Files |
|-------------------------------|------|
| Toggle Pin > | -o Foo |
|---------------------------------| Bar |
| Create New From Open File(s)... | Baz |
|-------------------------------|------|

You could then select a workspace in the submenu to toggle the pin.

ORand i dunno if this is even possible with Swingwould you prefer to
hold down some modifier key (CTRL? SHIFT?) when opening the Workspaces menu
to see a slightly different menu, such as:

|------------|
| Workspaces |
|---------------------------------|
| Unpin Foo |
| Pin Bar |
| Pin Baz |
|---------------------------------|
| Pin All Workspaces |
|---------------------------------|
| Create New From Open File(s)... |
|---------------------------------|

From some brief testing, however, i don't know if the modifier key trick
will work if you try to open the menu via the keyboard instead of the mouse.
I can't get it to work, at least.

Other thoughts/ideas/suggestions?

thanks!

chris


0
Comment actions Permalink


"Richard Nemec" <rndzank@attbi.com> wrote in message
news:aokkc1$6fb$1@is.intellij.net...

"Chris Bartley" <spam@feynman.org> wrote in message
news:aokis3$4rp$1@is.intellij.net...

Jon and Richard, (and anyone else who cares, of course :)

>

>

With the auto-pin/unpin it satisfies my need. I'm right now playing with

it

and I seem to like that behaviour (I have begged for it enough so I have
to like it ;).
And, yes, we can remove the file-closing prevention option.


Cool, thanks.

Sometimes I think about possibly unpinning (=closing) with the last file
close. With pinned workspaces that means manual closing, of course.


Sounds like unpinning upon implicit close would do the trick. I might have
a build ready late tonight.

What I'd like best is to have just open and close actions in the menu.
(The current checkbox switch you implemented and is very effective)
Unfortunately, in 0.8.1 the open may not work, since the workspace status
is still calculated based on the files. So for a subset workspace, the

menu

thinks it is already fully opened and clicking on it does nothing. (Well,

it

tries to close it but being subset it doesn't close anything and thus does
nothing).


I'm not entirely sure i follow, but I have my settings set to:

Automaticallly pin workspaces when explicitly opened
Automaticallly unpin workspaces when explicitly closed

With that setup, and with two fully-opened, pinned workspaces (one of which
is a subset of the other), closing the subset workspace doesn't close its
files (because they also belong to the pinned superset workspace), but it
does unpin the workspace. So, it changes from being marked with a black
check and a pin to simply being marked with a black check.

So, if you think of the black and grey checks as ONLY signifying whether a
workspace is fully or partially open and think of pins as signifying whether
the workspace is explicitly open or explicitly closed, I think your
requirements are satisfied. Is that correct?

You could then select a workspace in the submenu to toggle the pin.
ORand i dunno if this is even possible with Swingwould you prefer to
hold down some modifier key (CTRL? SHIFT?) when opening the Workspaces
menu to see a slightly different menu, such as:

>

Chris, I don't know. Neither of these look attractive to me. I still love
the old simple switchable menu most.


Ok, thanks. I'll toy around with some ideas and present them in an upcoming
build. I'd really like to get the UI to a point where you can do everything
via the menu that you can via the tool window (and vice versa).

Just kudos to you, Chris, for all your effort and also your code looks

very

nice. I wish I saw code like that more often.

P.S. Did you try that EditorFactoryListener?


Yes! You're right, it works just fine. It fires the event ANY time an
editor is created (e.g. when building the editors in the Colors&Fonts
section of the IDE Settings), but i'd rather have some false positives than
no notification at all! Thanks! :D

thanks for your help and feedback,

chris


0
Comment actions Permalink

"Jon Steelman" <steelman@mindspring.com> wrote in message
news:aokkkj$6ka$1@is.intellij.net...
>

>

Pinning is good. With pinning and option mentioned below, I don't
personally need the file closing prevention.


Cool, thanks. I'll get rid of it in the next build.

Also, does anyone want the ability to have a workspace auto-pinned and
auto-unpinned when the workspace is implicitly opened/closed? I can
personally live without it, but it's probably not too big of a deal to

add

it if someone really wants it.

>

I don't think auto-pinning during implicit open is useful to me, but I
guess it could auto-unpin implicitly on closing of last file.


I agree. I hope to have a build ready with implicit pinning/unpinning late
tonight.

I do hope for that option I mentioned previously that will auto-pin a
workspace when it is explicitly opened.


Doesn't the "Automaticallly pin workspaces when explicitly opened" option in
the global prefs do that for you? Or maybe i'm just misunderstanding.

As for the UI questions below, I'm not as concerned about the UI for
pinning as I am about the auto-pin on open option.


I'll keep playing with the UI and see what i can cook up.

thanks for your help and feedback!

chris


0
Comment actions Permalink

Chris Bartley wrote:

"Jon Steelman" <steelman@mindspring.com> wrote in message
news:aokkkj$6ka$1@is.intellij.net...

>>I don't think auto-pinning during implicit open is useful to me, but I
>>guess it could auto-unpin implicitly on closing of last file.


I agree. I hope to have a build ready with implicit pinning/unpinning late
tonight.


Super.

>>I do hope for that option I mentioned previously that will auto-pin a
>>workspace when it is explicitly opened.


Doesn't the "Automaticallly pin workspaces when explicitly opened" option in
the global prefs do that for you? Or maybe i'm just misunderstanding.


Yes, of course. Don't know why I didn't see it right in front of me. 8-)

Chris, thanks again for giving us a wonderful Workspaces plugin! Looks
like release 1.0 is drawing near.

Cheers,
Jon

0
Comment actions Permalink

"Chris Bartley" <spam@feynman.org> wrote in message
news:aokp48$bjf$1@is.intellij.net...

I'm not entirely sure i follow, but I have my settings set to:

>

Automaticallly pin workspaces when explicitly opened
Automaticallly unpin workspaces when explicitly closed


Mine too.

With that setup, and with two fully-opened, pinned workspaces (one of

which

is a subset of the other), closing the subset workspace doesn't close its
files (because they also belong to the pinned superset workspace), but

it

does unpin the workspace. So, it changes from being marked with a black
check and a pin to simply being marked with a black check.

>

So, if you think of the black and grey checks as ONLY signifying whether a
workspace is fully or partially open and think of pins as signifying

whether

the workspace is explicitly open or explicitly closed, I think your
requirements are satisfied. Is that correct?


This is exactly as I see it.

The problem I tried to describe is with the menu itself. It looks at the
checks.
Not at the pins. So if the subset ws is not explicitly opened (no pin) but
has black
check (all files - it's subset) it will try to CLOSE it, not OPEN. And close
action
will do nothing (it's subset, the superset ws is open/pinned).

r.


0
Comment actions Permalink

Chris,

Request :
-


As the pinning is not "Close All" resistant, I think it would make sense
to add a
"Close all-non workspace BUT current editor"
that would work mostly like
"Close all but current editor"

Usage :
-


I like keeping a "todo.txt" file open, next to the class(es) I'm working
on. When there are too many editors open, my only option is I to close
all, reopen the todo.txt, and then 1 class.
With the requested feature, it would take no time.


Alain Ravet

0
Comment actions Permalink


"Richard Nemec" <rndzank@attbi.com> wrote in message
news:aokqq5$d95$1@is.intellij.net...

"Chris Bartley" <spam@feynman.org> wrote in message
news:aokp48$bjf$1@is.intellij.net...

>

>

The problem I tried to describe is with the menu itself. It looks at the
checks.
Not at the pins. So if the subset ws is not explicitly opened (no pin) but
has black
check (all files - it's subset) it will try to CLOSE it, not OPEN. And

close

action
will do nothing (it's subset, the superset ws is open/pinned).


Ah, ok, i understand now. Sorry. Yeah, i agree that it's a bit weird.
I'll provide a global option for what selecting an open but unpinned
workspace in the menu should do (close it or pin it).


0
Comment actions Permalink

Added to the feature request list.

"Alain Ravet" <alain.ravet.list@wanadoo.be> wrote in message
news:aolrkj$cl9$1@is.intellij.net...

Chris,

>

Request :
-----------
As the pinning is not "Close All" resistant, I think it would make sense
to add a
"Close all-non workspace BUT current editor"
that would work mostly like
"Close all but current editor"

>

Usage :
---------
I like keeping a "todo.txt" file open, next to the class(es) I'm working
on. When there are too many editors open, my only option is I to close
all, reopen the todo.txt, and then 1 class.
With the requested feature, it would take no time.

>
>

Alain Ravet

>


0

Please sign in to leave a comment.