DisplayRootView.st
branchjv
changeset 7317 cea144a15948
parent 7287 1e2a3258dd8a
child 7715 925b859e1758
equal deleted inserted replaced
7316:b06d9392b4cc 7317:cea144a15948
     8  be provided or otherwise made available to, or used by, any
     8  be provided or otherwise made available to, or used by, any
     9  other person.  No title to or ownership of the software is
     9  other person.  No title to or ownership of the software is
    10  hereby transferred.
    10  hereby transferred.
    11 "
    11 "
    12 "{ Package: 'stx:libview' }"
    12 "{ Package: 'stx:libview' }"
    13 
       
    14 "{ NameSpace: Smalltalk }"
       
    15 
    13 
    16 DisplaySurface subclass:#DisplayRootView
    14 DisplaySurface subclass:#DisplayRootView
    17 	instanceVariableNames:''
    15 	instanceVariableNames:''
    18 	classVariableNames:''
    16 	classVariableNames:''
    19 	poolDictionaries:''
    17 	poolDictionaries:''
    84 
    82 
    85 
    83 
    86     [author:]
    84     [author:]
    87         Claus Gittinger
    85         Claus Gittinger
    88 "
    86 "
    89 ! !
    87 !
    90 
    88 
    91 !DisplayRootView class methodsFor:'instance creation'!
    89 !DisplayRootView class methodsFor:'instance creation'!
    92 
    90 
    93 onDevice:aDisplay
    91 onDevice:aDisplay
    94     "since there is only one RootView - catch new and return
    92     "since there is only one RootView - catch new and return
   152 
   150 
   153 redrawX:x y:y width:width height:height
   151 redrawX:x y:y width:width height:height
   154     "ignored"
   152     "ignored"
   155 ! !
   153 ! !
   156 
   154 
   157 !DisplayRootView methodsFor:'event handling'!
       
   158 
       
   159 waitForExpose
       
   160     "wait until an expose event arrives (to wait for scroll-finish)"
       
   161 
       
   162     "/ JV@2016-02-22: On X11, expose for root window may not arrive at all
       
   163     "/ causing 3 seconds delay. Worse, this breaks drag'n'drop.
       
   164     "/ The reason is that when running under compositing window manager, 
       
   165     "/ (such as GNOME shell or KWM), window contents ir rendered to an
       
   166     "/ off-screen pixmap so expose events are lot less common and may
       
   167     "/ not arrive.
       
   168     device isX11Platform ifTrue:[ 
       
   169         ^ self.
       
   170     ].
       
   171     super waitForExpose.
       
   172 
       
   173     "Created: / 22-02-2016 / 14:24:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
   174 ! !
       
   175 
       
   176 !DisplayRootView methodsFor:'hotkeys'!
   155 !DisplayRootView methodsFor:'hotkeys'!
   177 
   156 
   178 addHotKeyHandler:handler forKey:aKey modifierMask:optionalModifierMaskOrNil
   157 addHotKeyHandler:handler forKey:aKey modifierMask:optionalModifierMaskOrNil
   179     "install a handler (which should implement keyPress:x:y:view:
   158     "install a handler (which should implement keyPress:x:y:view:
   180      and keyRelease:x:y:view: on aKey.
   159      and keyRelease:x:y:view: on aKey.
   308 
   287 
   309 !DisplayRootView class methodsFor:'documentation'!
   288 !DisplayRootView class methodsFor:'documentation'!
   310 
   289 
   311 version
   290 version
   312     ^ '$Header$'
   291     ^ '$Header$'
   313 !
   292 ! !
   314 
   293 
   315 version_HG
       
   316 
       
   317     ^ '$Changeset: <not expanded> $'
       
   318 ! !
       
   319