comeToFront
Trygve Reenskaug
trygver at ifi.uio.no
Mon Nov 12 17:34:57 UTC 2007
Thanks Karl. I quickly wrote a hack and observed that it works in at
least one case....
Haven't the knowledge nor the time to make a firm bug fix proposal.
I replaced 'TopWindow == self ifFalse: ' in the
SystemWindows>>mouseDown: with:
((w := self world) notNil and: [w firstSubmorph == self]) ifFalse:
I have no idea if it is safe to ignore TopWindow here.
Cheers
--Trygve
On 12.11.2007 14:02, Karl wrote:
> Ah, the dreadful SystemWindow internals ;-)
> SystemWindows>>mouseDown: evt
>
> | outerMorph |
> self setProperty: #clickPoint toValue: evt cursorPoint.
> TopWindow == self ifFalse:
> [evt hand releaseKeyboardFocus.
> self activate].
>
> The top window will not activate if it is the top window...
> There could be a check to see if it was the front most morph as well I
> guess.
>
> Karl
>
>
> Trygve Reenskaug wrote:
>> Squeak3.10beta.7143
>>
>> I have a DemoWindow, sco PasteUpMorph.
>> The DemoWindow opens on top.
>> I open a Browser, it masks part of the DemoWindow.
>> I click the DemoWindow , but have to move it to make it go on top.
>> The browser doesn't go on top if I click inside it, I have to click
>> its border (move it).
>>
>> I set the demo window option "resist being picked up".
>> It is now hard to make the demo window go on top, so I add the
>> following method:
>>
>> DemoWindow >>mouseDown: evt
>> evt yellowButtonPressed ifTrue: [^ self
>> yellowButtonActivity: evt shiftPressed].
>> self eventHandler ifNotNil: [self eventHandler mouseDown: evt
>> fromMorph: self].
>> self comeToFront.
>>
>> Now the DemoWindow goes on top when I click it (as it should).
>> But the only way to make the Browser go on top is to click its border
>> (move it).
>>
>> I have also tried /'evt hand newKeyboardFocus: self.'/ with the same
>> result.
>> /'self activate'/ doesn't work on a Morph (but it works on a
>> SystemWindow)
>>
>> What's happening?
>>
>> Cheers
>> --Trygve
>>
>> PS
>> I have looked at the excellent documentation in '/Squeak by Example/'
>> and '/A GUIDE TO WORK WITH
>> SQUEAK MORPH CLASSES/', and '/An Introduction to Morphic: The Squeak
>> User Interface Framework/' without finding an answer. I have also
>> tried to google, but have not found anything written by people who
>> knew what was happening.
--
Trygve Reenskaug mailto: trygver at ifi.uio.no
Morgedalsvn. 5A http://folk.uio.no/trygver
N-0378 Oslo Tel: (+47) 22 49 57 27
Norway
More information about the Squeak-dev
mailing list
|