1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- <!DOCTYPE html>
- <html>
- <body>
- <div id="window-label"></div>
- <div id="container"></div>
- <div id="response"></div>
- <script>
- var WebviewWindow = window.__TAURI__.window.WebviewWindow
- var thisTauriWindow = window.__TAURI__.window.getCurrent()
- var windowLabel = thisTauriWindow.label
- var windowLabelContainer = document.getElementById('window-label')
- windowLabelContainer.innerHTML = 'This is the ' + windowLabel + ' window.'
- var container = document.getElementById('container')
- function createWindowMessageBtn(label) {
- var tauriWindow = WebviewWindow.getByLabel(label)
- var button = document.createElement('button')
- button.innerHTML = 'Send message to ' + label
- button.addEventListener('click', function () {
- tauriWindow.emit('clicked', 'message from ' + windowLabel)
- })
- container.appendChild(button)
- }
- // global listener
- window.__TAURI__.event.listen('clicked', function (event) {
- responseContainer.innerHTML +=
- 'Got ' + JSON.stringify(event) + ' on global listener<br><br>'
- })
- window.__TAURI__.event.listen('tauri://window-created', function (event) {
- createWindowMessageBtn(event.payload.label)
- })
- var responseContainer = document.getElementById('response')
- // listener tied to this window
- thisTauriWindow.listen('clicked', function (event) {
- responseContainer.innerHTML +=
- 'Got ' + JSON.stringify(event) + ' on window listener<br><br>'
- })
- var createWindowButton = document.createElement('button')
- createWindowButton.innerHTML = 'Create window'
- createWindowButton.addEventListener('click', function () {
- var webviewWindow = new WebviewWindow(Math.random().toString())
- webviewWindow.once('tauri://created', function () {
- responseContainer.innerHTML += 'Created new webview'
- })
- webviewWindow.once('tauri://error', function () {
- responseContainer.innerHTML += 'Error creating new webview'
- })
- })
- container.appendChild(createWindowButton)
- var globalMessageButton = document.createElement('button')
- globalMessageButton.innerHTML = 'Send global message'
- globalMessageButton.addEventListener('click', function () {
- // emit to all windows
- window.__TAURI__.event.emit('clicked', 'message from ' + windowLabel)
- })
- container.appendChild(globalMessageButton)
- var allWindows = window.__TAURI__.window.getAll()
- for (var index in allWindows) {
- var label = allWindows[index].label
- if (label === windowLabel) {
- continue
- }
- createWindowMessageBtn(label)
- }
- </script>
- </body>
- </html>
|