Ugh, it's just such a frustration. I put people onto us over the internet and they ask me which mouse button they're supposed to push, and I'm just at a loss to help, because my mouse only has one button, and the keyboard buttons one is supposed to hold to get the context menu are different too.

More seriously: David's argument is strengthened somewhat by the fact that there are still places in the universe where a few more bits worth of download can be very expensive (for example, to a teacher in orbit or an astronaut in a developing nation. Or maybe Scratch that, reverse it.)

For most newcomers, the all-in-one reduces friction. For most experienced users, it's a pain in the ass and a waste of bandwidth. These two facts put tension on what to release. I'm very grateful for the all-in-one, and the people who make it possible. I think with Frank's continuous integration, we should be able to have the cake and eat it too, though, but that's just a thought.

--Casey


On Sat, Aug 30, 2014 at 5:05 AM, Bert Freudenberg <bert@freudenbergs.de> wrote:
On 30.08.2014, at 12:35, Marcel Taeumel <marcel.taeumel@student.hpi.uni-potsdam.de> wrote:

> "Middle buttons" are clickable mouse wheels. At most, a click here starts a
> scroll-by-move mode.

Actually you can set the wheel-click to produce a real middle-button-click event (instead of the useless scroll menu thingy). Which is what you should do as a Smalltalker ;) Even my Apple Magic Mouse (the one without any buttons) is set to produce real middle and right click events.

What Frank was referring to is that Microsoft labels its mouse buttons 1-3-2 so the "second" mouse button is on the right. This is really the source of all the confusion.

What the VM needs to give you is red-yellow-blue for left-middle-right. See the FAQ http://wiki.squeak.org/squeak/897

Our image's swapMouseButtons preference is enabled by default. That is correct, in Squeak we want the right mouse button to bring up the context menu (yellow). In Etoys, it is disabled, right-click gives you the halo (blue).

I think what needs to change is the Windows VM's default mapping.

Not quite sure about the modifier processing in EventSensor>>processEvent:. The button swapping is done via ButtonDecodeTable, but then the modifier (ctrl/alt) mapping is applied (except if on a Mac, because the Mac VM's Info.plist file lets you specify exactly which color should be generate for which button-modifier combo). And then it is applied again in processMouseEvent: to make the MVC buttons. Do the Windows and Linux VMs still rely on that?

- Bert -