WindowSensor.st
changeset 7329 72f93ee8904e
parent 7327 c9b7921e8134
child 7330 8a02ce8b017d
child 7376 72dd8ef02f7b
equal deleted inserted replaced
7327:c9b7921e8134 7329:72f93ee8904e
  1953             "/ instead, remember that any event arrived for this view.
  1953             "/ instead, remember that any event arrived for this view.
  1954             gotOtherEvent add:evView.
  1954             gotOtherEvent add:evView.
  1955             ^ self
  1955             ^ self
  1956         ].
  1956         ].
  1957     ].
  1957     ].
  1958     
  1958 
  1959     eventSemaphore notNil ifTrue:[
  1959     eventSemaphore notNil ifTrue:[
  1960         "/ can get along with a single trigger;
  1960         "/ can get along with a single trigger;
  1961         "/ because processEvents will read all events
  1961         "/ because processEvents will read all events
  1962         eventSemaphore signalOnce.
  1962         eventSemaphore signalOnce.
  1963         
  1963 
  1964         "/ a little kludge:
  1964         "/ a little kludge:
  1965         "/ if this is a mouse-click, AND more than one event is already in the queue
  1965         "/ if this is a mouse-click, AND more than one event is already in the queue
  1966         "/ AND the windowGroup process is being debugged,
  1966         "/ AND the windowGroup process is being debugged,
  1967         "/ then raise the debugger.
  1967         "/ then raise the debugger.
  1968         evView notNil ifTrue:[
  1968         evView notNil ifTrue:[
  1969             (anEventOrNil isButtonPressEvent 
  1969             (anEventOrNil isButtonPressEvent 
  1970             or:[ anEventOrNil isKeyPressEvent]) ifTrue:[
  1970             or:[ anEventOrNil isKeyPressEvent]) ifTrue:[
  1971                 mouseAndKeyboard size > 1 ifTrue:[
  1971                 mouseAndKeyboard size > 1 ifTrue:[
  1972                     evView windowGroup notNil ifTrue:[
  1972                     evView windowGroup notNil ifTrue:[
  1973                         (wgProcess := evView windowGroup process) notNil ifTrue:[
  1973                         (wgProcess := evView windowGroup process) notNil ifTrue:[
  1974                             wgProcess isDebugged notNil ifTrue:[
  1974                             wgProcess isDebugged ifTrue:[
  1975                                 DebugView allInstances do:[:dbg |
  1975                                 "/ but not for debuggers inside debuggers
  1976                                     dbg inspectedProcess == wgProcess ifTrue:[
  1976                                 (evView topView isKindOf:DebugView) ifFalse:[
  1977                                         dbg window topView raiseDeiconified
  1977                                     DebugView allInstances do:[:dbg |
       
  1978                                         dbg inspectedProcess == wgProcess ifTrue:[
       
  1979                                             dbg window topView raiseDeiconified
       
  1980                                         ].    
  1978                                     ].    
  1981                                     ].    
  1979                                 ].    
  1982                                 ].    
  1980                             ].    
  1983                             ].    
  1981                         ].    
  1984                         ].    
  1982                     ].    
  1985                     ].