comeToFront
Hi Trygve and Karl, This would be a good issue to make a mantis report. It's clearly something that needs to be tracked. I've looked at the system window internals. I bet that some serious study will need to be made before a stable repair can be made. So a mantis report would be a good place to collect analysis and repair attempts. It would also be good to have a user story. What would be a simple description of the way it should behave? Hth, Yours in curiosity and service, --Jerome Peace *** >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 >> 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 >>> 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 > *** ____________________________________________________________________________________ Be a better sports nut! Let your teams follow you with Yahoo Mobile. Try it now. http://mobile.yahoo.com/sports;_ylt=At9_qDKvtAbMuh1G1SQtBI7ntAcJ |
In the meantime I could add this as a feature to the UIEnhancements
package... > -----Original Message----- > From: [hidden email] > [mailto:[hidden email]]On Behalf Of > Jerome Peace > Sent: 13 November 2007 6:19 AM > To: [hidden email] > Subject: comeToFront > > > comeToFront > > > Hi Trygve and Karl, > > This would be a good issue to make a mantis report. > It's clearly something that needs to be tracked. > > I've looked at the system window internals. I bet that > some serious study will need to be made before a > stable repair can be made. So a mantis report would be > a good place to collect analysis and repair attempts. > > It would also be good to have a user story. What would > be a simple description of the way it should behave? > > Hth, > Yours in curiosity and service, --Jerome Peace > > > *** > >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 > > > *** > > > > > __________________________________________________________________ > __________________ > Be a better sports nut! Let your teams follow you > with Yahoo Mobile. Try it now. > http://mobile.yahoo.com/sports;_ylt=At9_qDKvtAbMuh1G1SQtBI7ntAcJ > |
In reply to this post by Jerome Peace
--Trygve On 13.11.2007 07:18, Jerome Peace wrote: comeToFront Hi Trygve and Karl, This would be a good issue to make a mantis report. It's clearly something that needs to be tracked. I've looked at the system window internals. I bet that some serious study will need to be made before a stable repair can be made. So a mantis report would be a good place to collect analysis and repair attempts. It would also be good to have a user story. What would be a simple description of the way it should behave? Hth, Yours in curiosity and service, --Jerome Peace ***Trygve Reenskaug trygver at ifi.uio.no Mon Nov 12 17:34:57 UTC 2007 Thanks Karl. I quickly wrote a hack and observed thatit works in atleast one case.... Haven't the knowledge nor the time to make a firm bugfix 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 TopWindowhere.Cheers --Trygve On 12.11.2007 14:02, Karl wrote:Ah, the dreadful SystemWindow internals ;-) SystemWindows>>mouseDown: evt | outerMorph | self setProperty: #clickPoint toValue: evtcursorPoint.TopWindow == self ifFalse: [evt hand releaseKeyboardFocus. self activate]. The top window will not activate if it is the topwindow...There could be a check to see if it was the frontmost morph as well Iguess. 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 theDemoWindow.I click the DemoWindow , but have to move it tomake it go on top.The browser doesn't go on top if I click insideit, I have to clickits border (move it). I set the demo window option "resist being pickedup".It is now hard to make the demo window go on top,so I add thefollowing method: DemoWindow >>mouseDown: evt evt yellowButtonPressed ifTrue: [^ self yellowButtonActivity: evt shiftPressed]. self eventHandler ifNotNil: [selfeventHandler mouseDown: evtfromMorph: self]. self comeToFront. Now the DemoWindow goes on top when I click it (asit should).But the only way to make the Browser go on top isto click its border(move it). I have also tried /'evt hand newKeyboardFocus:self.'/ with the sameresult. /'self activate'/ doesn't work on a Morph (but itworks on aSystemWindow) 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 toMorphic: The SqueakUser Interface Framework/' without finding ananswer. I have alsotried to google, but have not found anythingwritten by people whoknew 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*** ____________________________________________________________________________________ Be a better sports nut! Let your teams follow you with Yahoo Mobile. Try it now. http://mobile.yahoo.com/sports;_ylt=At9_qDKvtAbMuh1G1SQtBI7ntAcJ -- Trygve Reenskaug mailto: [hidden email] Morgedalsvn. 5A http://folk.uio.no/trygver N-0378 Oslo Tel: (+47) 22 49 57 27 Norway |
Free forum by Nabble | Edit this page |