Faculty of Information Technology
Software Engineering Group

Opened 9 months ago

Last modified 7 months ago

#260 new defect

Using mouse wheel when launching a program directly exe file freezes the application

Reported by: Patrik Svestka Owned by:
Priority: major Milestone:
Component: default Keywords:
Cc: Also affects CVS HEAD (eXept version): no

Description (last modified by Patrik Svestka)

Problem description: When application is started from the Smalltalk/X development environment scrolling via mouse scroll wheel works correctly. On the other hand, when launched directly via .exe file scrolling via mouse wheel freezes the application. I don't yet understand why. The application has to be killed.

How it should work: scrolling via mosue wheel should not freeze the application.

Please see the attache screencast for more.

Attachments (1)

mouse_scoll_freezing_application.mp4 (1.2 MB) - added by Patrik Svestka 9 months ago.
Screencast on how the application freezes

Download all attachments as: .zip

Change History (4)

Changed 9 months ago by Patrik Svestka

Screencast on how the application freezes

comment:1 Changed 9 months ago by Patrik Svestka

Description: modified (diff)

comment:2 Changed 9 months ago by Jan Vrany

Just an idea - this might be due to wrong mapping of mouse buttons. This mapping might be done in some IDE startup script, maybe you can have a look at that steaming pile of .rc files in stx/projects/smalltalk directory.

Of that's the case, the code should be moved graphics device initialization rather than relying on tweaks in .rc scripts.

Not sure, just an idea...

comment:3 Changed 7 months ago by Patrik Svestka

I have tried to play around with the mouse mapping code but it did not work out for any combination I tried. The freezing is occuring only when scroll-wheel is used.

The code I have found and played around with at display.rc is:

	"/
	"/ mouse-button translation
	"/
	"/ (currently, allowed are 1,2,.. , #paste, #wheelFwd and #wheelBwd)
	"/ 1      - button1; used to select (i.e. left button)
	"/ 2      - button2; pops up a menu (i.e. middle button)
	"/ #paste    - paste the clipBoard contents
	"/ #wheelFwd - simulates a mouseWheel forward motion (hp displays)
	"/ #wheelBwd - simulates a mouseWheel backward motion (hp displays)
	"/
	"/ the following line puts paste onto the right button (as in xterm):
	"/
	"/ Screen current buttonTranslation:#(1 2 #paste 4 5 6 7).

	"/
	"/ while that one puts the pop-up menu both on the middle and right buttons:
	"/
	displayDevice buttonTranslation:#(1 2 2 #wheelFwd #wheelBwd 6 7).
	displayDevice platformName == #X11 ifTrue:[
	    displayDevice buttonTranslation:#(1 #paste 2 #wheelBwd 6 7).
	].
Note: See TracTickets for help on using tickets.