Platform-Browser.st 864 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. Smalltalk createPackage: 'Platform-Browser'!
  2. Object subclass: #BrowserTerminal
  3. instanceVariableNames: ''
  4. package: 'Platform-Browser'!
  5. !BrowserTerminal commentStamp!
  6. I am `Terminal` service implementation for browser.!
  7. !BrowserTerminal methodsFor: 'actions'!
  8. alert: aString
  9. ^ window alert: aString
  10. !
  11. confirm: aString
  12. ^ window confirm: aString
  13. !
  14. prompt: aString
  15. ^ window prompt: aString
  16. !
  17. prompt: aString default: defaultString
  18. ^ window prompt: aString default: defaultString
  19. ! !
  20. !BrowserTerminal class methodsFor: 'testing'!
  21. initialize
  22. self isFeasible ifTrue: [ Terminal registerIfNone: self new ]
  23. !
  24. isFeasible
  25. <return typeof window !!== "undefined">
  26. ! !
  27. !Object methodsFor: '*Platform-Browser'!
  28. postMessageTo: aFrame
  29. ^ self postMessageTo: aFrame origin: '*'
  30. !
  31. postMessageTo: aFrame origin: aString
  32. <return aFrame.postMessage(self, aString)>
  33. ! !