WindowGroup.st
changeset 1311 0746d3fe9a62
parent 1304 d914bfc99b49
child 1317 e1bd3b4aee72
--- a/WindowGroup.st	Fri Feb 07 16:18:13 1997 +0100
+++ b/WindowGroup.st	Fri Feb 07 16:19:30 1997 +0100
@@ -352,23 +352,36 @@
 graphicsDevice
     "return the device, we receive our events from"
 
-    |v|
+    |dev|
+
+    topViews notNil ifTrue:[
+        topViews do:[:v |
+            |app|
 
-    (topViews notNil and:[topViews isEmpty not]) ifTrue:[
-        v := topViews first
-    ] ifFalse:[
-        (views notNil and:[views isEmpty not]) ifTrue:[
-            v := views first
-	]
+            (app := v application) notNil ifTrue:[
+                "/
+                "/ ok, it has an application;
+                "/ ask it for preferences.
+                "/
+                (dev := app graphicsDevice) notNil ifTrue:[
+                    ^ dev
+                ]
+            ].
+            (dev := v graphicsDevice) notNil ifTrue:[
+                ^ dev
+            ]
+        ]
     ].
-    v notNil ifTrue:[
-	^ v graphicsDevice
+    views notNil ifTrue:[
+        views do:[:v |
+            (dev := v graphicsDevice) notNil ifTrue:[
+                ^ dev
+            ]
+        ]
     ].
     ^ nil
 
-    "Modified: 13.12.1995 / 14:18:11 / stefan"
-    "Modified: 28.5.1996 / 20:26:59 / cg"
-    "Created: 5.7.1996 / 17:53:31 / cg"
+    "Modified: 7.2.1997 / 16:14:24 / cg"
 !
 
 isModal
@@ -1466,6 +1479,6 @@
 !WindowGroup class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/WindowGroup.st,v 1.101 1997-02-01 11:13:47 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/WindowGroup.st,v 1.102 1997-02-07 15:19:30 cg Exp $'
 ! !
 WindowGroup initialize!