comeToFront

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

comeToFront

Jerome Peace
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

Reply | Threaded
Open this post in threaded view
|

RE: comeToFront

Gary Chambers-4
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
>


Reply | Threaded
Open this post in threaded view
|

Re: comeToFront

Trygve
In reply to this post by Jerome Peace
Issue now reported on Mantis
--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 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


  


-- 

Trygve Reenskaug      mailto: [hidden email]
Morgedalsvn. 5A       http://folk.uio.no/trygver
N-0378 Oslo           Tel: (+47) 22 49 57 27
Norway