123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- <!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>
|