Re: [squeak-dev] How to yellow click with two buttons without changing mouse settings?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] How to yellow click with two buttons without changing mouse settings?

marcel.taeumel
 
Hi Eliot,

sounds interesting. Wouldn't that need an additional check each time an event is generated in the VM? Or could that be just another fixed code path to choose once?

Best,
Marcel

Am 23.04.2018 21:18:36 schrieb Eliot Miranda <[hidden email]>:

Hi Marcel,

On Sun, Apr 22, 2018 at 11:24 PM, Marcel Taeumel <[hidden email]> wrote:
Hi Jakob,

do: "HandMorph showEvents: true" then do CTRL+RED/LEFT. You will see that you get, in fact, a yellow click. I think that there is code that checks for "control pressed" first to show the different menu. So, we do emulate that yellow-click in the VM, but we keep the "control pressed"-flag. So, the event state is different, even though you get "event yellowButtonPressed = true" both times.

To sum up some prior thoughts on this topic:
1) The VM should not provide this single-button-mouse behavior but the image should.
2) The event filters to simulate those yellow/blue clicks are already possible in the image. We do it with mouse-wheel vs. CTRL+up/down already.
3) A good transformation for CTRL+RED in such a single-button-mouse mode would be YELLOW and not CTRL+YELLOW.

Anyway, this is not an easy fix or decision to make. :-)

What would be relatively straight-forward is to add an image property flag alongside the ones in the image flag word such as "floats in platform order", "processPreemptionYields", etc in vm parameter 48.  This flag would tell the VM not to do any event modifications (or at least no mouse button swapping).  And then we could at least experiment with allowing the image to perform event modification, making this a preference, etc, before some fine day in the future, transitioning away from VM support for event modification in a major release.  Thoughts?


Best,
Marcel

Am 21.04.2018 14:35:43 schrieb Jakob Reschke <[hidden email]>:

Hello,

I downloaded a VM (64 bit Cog Spur Windows) and a fresh trunk image
separately and have not changed any mouse button settings yet (swap
mouse buttons preference is on and neither 1 button mouse nor 3 button
mouse are selected in the VM preferences menu). My notebook does not
have a middle "mouse" button and the right button currently does a
blue click (opens the halo).

In this default setting, is there any way to do a yellow click?

I get the morph menu with ctrl+left click and in list morphs and on
the world I can invoke the menu with the Esc key, but I did not find a
modifier+button combination that would work universally to emulate a
yellow click. Have I missed it?

After disabling swap mouse buttons, right click becomes a yellow
click. But when the preference is on, both right click and alt+left
click produce a blue click. So with a two button mouse it seems that
nothing is actually swapped, but one button is unavailable
altogether...

A simple solution would be to turn the preference off by default.

Kind regards,
Jakob







--
_,,,^..^,,,_
best, Eliot
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] How to yellow click with two buttons without changing mouse settings?

Eliot Miranda-2
 
Hi Marcel,


On Apr 23, 2018, at 11:58 PM, Marcel Taeumel <[hidden email]> wrote:

Hi Eliot,

sounds interesting. Wouldn't that need an additional check each time an event is generated in the VM? Or could that be just another fixed code path to choose once?

Yes, the flag but would be read at startup and written to a flag variable that would be tested at the relevant points.  There are many such flags in the vm anyway.  One more is nothing to worry about just yet, especially when in the long term it may lead to removal of code.

Best,
Marcel

Am 23.04.2018 21:18:36 schrieb Eliot Miranda <[hidden email]>:

Hi Marcel,

On Sun, Apr 22, 2018 at 11:24 PM, Marcel Taeumel <[hidden email]> wrote:
Hi Jakob,

do: "HandMorph showEvents: true" then do CTRL+RED/LEFT. You will see that you get, in fact, a yellow click. I think that there is code that checks for "control pressed" first to show the different menu. So, we do emulate that yellow-click in the VM, but we keep the "control pressed"-flag. So, the event state is different, even though you get "event yellowButtonPressed = true" both times.

To sum up some prior thoughts on this topic:
1) The VM should not provide this single-button-mouse behavior but the image should.
2) The event filters to simulate those yellow/blue clicks are already possible in the image. We do it with mouse-wheel vs. CTRL+up/down already.
3) A good transformation for CTRL+RED in such a single-button-mouse mode would be YELLOW and not CTRL+YELLOW.

Anyway, this is not an easy fix or decision to make. :-)

What would be relatively straight-forward is to add an image property flag alongside the ones in the image flag word such as "floats in platform order", "processPreemptionYields", etc in vm parameter 48.  This flag would tell the VM not to do any event modifications (or at least no mouse button swapping).  And then we could at least experiment with allowing the image to perform event modification, making this a preference, etc, before some fine day in the future, transitioning away from VM support for event modification in a major release.  Thoughts?


Best,
Marcel

Am 21.04.2018 14:35:43 schrieb Jakob Reschke <[hidden email]>:

Hello,

I downloaded a VM (64 bit Cog Spur Windows) and a fresh trunk image
separately and have not changed any mouse button settings yet (swap
mouse buttons preference is on and neither 1 button mouse nor 3 button
mouse are selected in the VM preferences menu). My notebook does not
have a middle "mouse" button and the right button currently does a
blue click (opens the halo).

In this default setting, is there any way to do a yellow click?

I get the morph menu with ctrl+left click and in list morphs and on
the world I can invoke the menu with the Esc key, but I did not find a
modifier+button combination that would work universally to emulate a
yellow click. Have I missed it?

After disabling swap mouse buttons, right click becomes a yellow
click. But when the preference is on, both right click and alt+left
click produce a blue click. So with a two button mouse it seems that
nothing is actually swapped, but one button is unavailable
altogether...

A simple solution would be to turn the preference off by default.

Kind regards,
Jakob







--
_,,,^..^,,,_
best, Eliot
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] How to yellow click with two buttons without changing mouse settings?

timrowledge
 
Last time I checked (which was a while ago, so maybe nicer now) there were varying checks/flags in the various platform vms, and further checks/preferences in the image. And then there are/were preferences like 'personalizedWorldMenu', the entire 'keyboard' preferences group, 'generalizedYellowButtonMenu' and very probably others that affect, change, filter and generally spindle, fold and mutilate events.

Purely in-image changes have the virtue of being fixable in-image and of course you can set behaviour of an application you are writing (Scratch for instance). Purely vm handled preferences have the (potential) virtue of being globally settable for a users via whatever platform mechanism is used, most of which have always impressed me as a result of seriously deranged minds working hard to make life awkward.

When we mix the two and add 20+ years of development history without an actual plan then we get some decidedly odd results.

tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
Useful Latin Phrases:- Visne saltare? Viam Latam Fungosam scio = Do you want to dance? I know the Funky Broadway.