[haiku-development] Re: Ctrl+Alt window management functionality

  • From: John Scipione <jscipione@xxxxxxxxx>
  • To: "haiku-development@xxxxxxxxxxxxx" <haiku-development@xxxxxxxxxxxxx>
  • Date: Fri, 25 Jan 2013 02:11:07 -0500

On Thu, Jan 24, 2013 at 11:42 AM, Humdinger <humdingerb@xxxxxxxxxxxxxx> wrote:
> Hi John!
>
> On Wed, 23 Jan 2013 17:25:28 -0500 John Scipione wrote:
>> The best
>> compromise I can see out of all this is the idea of making ctrl+LMB
>> emulate a RMB so that actions the currently utilize the RMB would now
>> have a backup that uses the LMB. Everyone who likes RMB could
>> continue, everyone who doesn't (me) would have a backup that uses the
>> LMB.

I have now pushed my changes to the ctrl+alt window management
functionality, although it took a few more pushes than I wanted it to.
I hope this is not poorly received as I have tried my hardest to
incorporate feedback from this thread.

Firstly I have removed the border highlighting, the mouse cursor is
used to indicate actions instead. By holding down ctrl+alt the mouse
pointer changes to a 4-directional arrow if you can move the window or
a crossed out circle if you can't. This indicates the action that will
be performed by the primary (left) mouse button. The Desktop shows a
crossed out circle, this may seem a little weird at first but it is
because the Desktop is treated as a non-movable, non-resizable window
because that's exactly what it is.

You can use the secondary (right) mouse button to resize just as
before although there is no indication that this will happen until you
click the mouse button; you just have to know it is there -- that's
what I meant before about the RMB not being discoverable. Once you
click the right mouse button the mouse pointer updates to a double
headed arrow in the direction of the resize if the window is resizable
or a crossed out circle if the window is not resizable. The resize
areas are identical to before.

I made a few changes to the window borders as well. The LMB performs a
move and RMB a resize as before but now control+LMB acts as RMB. If
you hold down control down and move the mouse cursor over the window
border it will update indicating the direction that a resize will take
place. Again there is no indicator for the RMB you just have to guess
but once you click the cursor updates.

I have updated the default decorator to allow you to resize diagonally
by any of the corners of the border with RMB or control+LMB not just
the bottom right one. The other decorators will need to be updated if
we want corner resizing to work for them as well.

The last thing I implemented was to make the window go to the back if
you right click or control click on its tab. This is copying a feature
of BeOS R5 that stippi pointed out.

So that's basically it. Feedback is appreciated.

>> Now, that doesn't work with ctrl+alt since obviously you'd
>> already be holding down ctrl. I wonder how crazy an idea changing
>> ctrl+alt to opt would be...
>
> OPT would be perfect if it weren't used by 3rd party apps (ATM I only
> know of WonderBrush, which uses all kinds of modifier keys when e.g.
> creating a polygon). OPT would fit nicely with S&T. Would be nice if
> changing workspaces would also use OPT, but OPT+cursor would then
> collide with switching S&T'ed windows...

Agreed, maybe for R2 we can change this, but I guess for R1 we're
stuck with the way it is.

Other related posts: