--- a/DeviceWorkstation.st Tue Aug 13 16:58:50 2019 +0200
+++ b/DeviceWorkstation.st Thu Aug 15 11:52:11 2019 +0200
@@ -445,42 +445,43 @@
"find out about the concrete Workstation class"
Screen isAbstract ifTrue:[
- |wsClass wsClasses|
-
- wsClasses := OrderedCollection new.
-
- #(OpenGLWorkstation GLXWorkstation XWorkstation)
- detect:[:eachClassNameSymbol| (wsClass := Smalltalk classNamed:eachClassNameSymbol) notNil] ifNone:nil.
- wsClass notNil ifTrue:[wsClasses add:wsClass].
-
- "preparation for WIN32/NeXTStep/OS2 and Mac interfacing;
- But if X11 is linked in and it is capable of setting up a connection, that will be used."
- #(
- "/ #NeXTWorkstation nil
- OS2Workstation isOS2like
- MacWorkstation isMAClike
- WinWorkstation isMSWINDOWSlike
- ) pairWiseDo:[:wsClassName :checkSel|
- (checkSel isNil or:[OperatingSystem perform:checkSel]) ifTrue:[
- (wsClass := Smalltalk classNamed:wsClassName) notNil ifTrue:[
- wsClasses add:wsClass.
- ]
- ].
- ].
-
- "/ try all classes until open of display works.
- wsClasses detect:[:cls|
- [
- display := cls newFor:displayName.
- ] on:Screen deviceOpenErrorSignal do:[:ex| ].
- display notNil
- ] ifNone:nil.
+ |wsClass wsClasses|
+
+ wsClasses := OrderedCollection new.
+
+ #(OpenGLWorkstation GLXWorkstation XWorkstation)
+ detect:[:eachClassNameSymbol| (wsClass := Smalltalk classNamed:eachClassNameSymbol) notNil] ifNone:nil.
+ wsClass notNil ifTrue:[wsClasses add:wsClass].
+
+ "preparation for WIN32/NeXTStep/OS2 and Mac interfacing;
+ But if X11 is linked in and it is capable of setting up a connection, that will be used."
+ #(
+ "/ #NeXTWorkstation nil
+ OS2Workstation isOS2like
+ MacWorkstation isMAClike
+ WinWorkstation isMSWINDOWSlike
+ ElectronWorkstation nil
+ ) pairWiseDo:[:wsClassName :checkSel|
+ (checkSel isNil or:[OperatingSystem perform:checkSel]) ifTrue:[
+ (wsClass := Smalltalk classNamed:wsClassName) notNil ifTrue:[
+ wsClasses add:wsClass.
+ ]
+ ].
+ ].
+
+ "/ try all classes until open of display works.
+ wsClasses detect:[:cls|
+ [
+ display := cls newFor:displayName.
+ ] on:Screen deviceOpenErrorSignal do:[:ex| ].
+ display notNil
+ ] ifNone:nil.
] ifFalse:[
- display := Screen newFor:displayName.
+ display := Screen newFor:displayName.
].
display isNil ifTrue:[
- Screen deviceOpenErrorSignal raiseWith:displayName.
+ Screen deviceOpenErrorSignal raiseWith:displayName.
].
Screen := display class.
Screen default:display.