feenkcom / gtoolkit

Glamorous Toolkit is the Moldable Development environment. It empowers you to make systems explainable through experiences tailored for each problem.
https://gtoolkit.com
MIT License
1.13k stars 49 forks source link

Double-clicking a word in a System Browser does not select the entire word #3889

Closed Rinzwind closed 4 months ago

Rinzwind commented 4 months ago

Using Glamorous Toolkit v1.0.977, double-clicking a word in a System Browser does not select the entire word as is the case in Pharo 11 build 726. See the screenshots below, I double-clicked the ‘t’ in ‘instanceVariableNames:’ for both.

I guess this is likely to be immediately closed and labeled ‘wontfix’ again as with issues #3614 and #3615, but I thought I’d post it anyway in case someone has a patch to offer.

Glamorous Toolkit:

Pharo:

girba commented 4 months ago

We will not address in GT issues related to the tools coming from the Pharo distribution.

girba commented 4 months ago

Please use Coder instead of System Browser.

Rinzwind commented 4 months ago

Thanks again for the feedback. For anyone nevertheless interested in having this fixed, some additional information I can give is that the issue seems to be due to the RubEditingArea getting a #mouseMove: message after the #doubleClick: message. That’s not the case in Pharo, in which the events that get handled in #handleEvent: on HandMorph at the moment of the double-click consist of:

[(91@452) mouseDown red 13363 nil]
[(91@452) mouseOver red 13363 nil]
[(91@452) mouseUp 13452 nil]
[(91@452) mouseUp 13452 nil]
[(91@452) mouseOver 13452 nil]
[(91@452) mouseDown red 13550 nil]
[(91@452) mouseUp 13653 nil]

While in Glamorous Toolkit that’s:

[(90@451) (90@451) mouseMove 14987 nil]
[(90@451) mouseOver 14987 nil]
[(90@451) (90@451) mouseMove 14987 nil]
[(90@451) mouseOver 14987 nil]
[(90@451) mouseDown red 15001 nil]
[(90@451) mouseOver red 15001 nil]
[(90@451) (90@451) mouseMove red 15001 nil]
[(90@451) (90@451) mouseMove red 15010 nil]
[(90@451) (90@451) mouseMove red 15018 nil]
[(90@451) (90@451) mouseMove red 15027 nil]
[(90@451) (90@451) mouseMove red 15034 nil]
[(90@451) (90@451) mouseMove red 15042 nil]
[(90@451) (90@451) mouseMove red 15050 nil]
[(90@451) mouseUp 15076 nil]
[(90@451) (90@451) mouseMove 15076 nil]
[(90@451) mouseOver 15076 nil]
[(90@451) mouseUp 15076 nil]
[(90@451) mouseOver 15076 nil]
[(90@451) (90@451) mouseMove 15181 nil]
[(90@451) mouseOver 15181 nil]
[(90@451) (90@451) mouseMove 15181 nil]
[(90@451) mouseOver 15181 nil]
[(90@451) mouseDown red 15196 nil]
[(90@451) (90@451) mouseMove red 15198 nil]
[(90@451) mouseOver red 15198 nil]
[(90@451) (90@451) mouseMove red 15205 nil]
[(90@451) mouseOver red 15205 nil]
[(90@451) (90@451) mouseMove red 15214 nil]
[(90@451) mouseOver red 15214 nil]
[(90@451) (90@451) mouseMove red 15221 nil]
[(90@451) mouseOver red 15221 nil]
[(90@451) (90@451) mouseMove red 15230 nil]
[(90@451) mouseOver red 15230 nil]
[(90@451) (90@451) mouseMove red 15240 nil]
[(90@451) mouseOver red 15240 nil]
[(90@451) (90@451) mouseMove red 15247 nil]
[(90@451) mouseOver red 15247 nil]
[(90@451) mouseUp 15277 nil]
[(90@451) (90@451) mouseMove 15277 nil]
[(90@451) mouseOver 15277 nil]