From 8e494edcacdf1431ddd7af58156926a2c5f7274e Mon Sep 17 00:00:00 2001 From: Dan Fabulich Date: Tue, 8 Aug 2023 10:08:30 -0700 Subject: [PATCH] electron-builder example --- test/electron-builder/.gitignore | 1 + test/electron-builder/index.html | 18 +++++++++++++++ test/electron-builder/main.js | 37 ++++++++++++++++++++++++++++++ test/electron-builder/package.json | 24 +++++++++++++++++++ test/electron-builder/renderer.js | 10 ++++++++ 5 files changed, 90 insertions(+) create mode 100644 test/electron-builder/.gitignore create mode 100644 test/electron-builder/index.html create mode 100644 test/electron-builder/main.js create mode 100644 test/electron-builder/package.json create mode 100644 test/electron-builder/renderer.js diff --git a/test/electron-builder/.gitignore b/test/electron-builder/.gitignore new file mode 100644 index 0000000..53c37a1 --- /dev/null +++ b/test/electron-builder/.gitignore @@ -0,0 +1 @@ +dist \ No newline at end of file diff --git a/test/electron-builder/index.html b/test/electron-builder/index.html new file mode 100644 index 0000000..56c81a2 --- /dev/null +++ b/test/electron-builder/index.html @@ -0,0 +1,18 @@ + + + + + + + + Test steamworks.js + + + +

Your steam name:

+ + + + + \ No newline at end of file diff --git a/test/electron-builder/main.js b/test/electron-builder/main.js new file mode 100644 index 0000000..001f076 --- /dev/null +++ b/test/electron-builder/main.js @@ -0,0 +1,37 @@ +const { app, BrowserWindow } = require('electron') +const steamworks = require('steamworks.js') + +function createWindow() { + const mainWindow = new BrowserWindow({ + width: 800, + height: 600, + webPreferences: { + nodeIntegration: true, + contextIsolation: false, + } + }) + + // will be true when opened from steam big picture + if (process.env.SteamTenfoot) { + mainWindow.setFullScreen(true) + } else { + mainWindow.maximize() + } + + mainWindow.webContents.openDevTools() + mainWindow.loadFile('index.html') +} + +app.whenReady().then(() => { + createWindow() + + app.on('activate', function () { + if (BrowserWindow.getAllWindows().length === 0) createWindow() + }) +}) + +app.on('window-all-closed', function () { + if (process.platform !== 'darwin') app.quit() +}) + +steamworks.electronEnableSteamOverlay() \ No newline at end of file diff --git a/test/electron-builder/package.json b/test/electron-builder/package.json new file mode 100644 index 0000000..0f142b7 --- /dev/null +++ b/test/electron-builder/package.json @@ -0,0 +1,24 @@ +{ + "name": "steamworks.js-electron-test", + "author": "(author and version fields required for electron-builder)", + "version": "0.0.1", + "private": true, + "dependencies": { + "steamworks.js": "../.." + }, + "devDependencies": { + "electron": "24.2.0", + "electron-builder": "24.6.3" + }, + "main": "main.js", + "scripts": { + "start": "electron .", + "pack": "electron-builder --dir", + "dist": "electron-builder -m" + }, + "build": { + "mac": { + "target": "zip" + } + } +} \ No newline at end of file diff --git a/test/electron-builder/renderer.js b/test/electron-builder/renderer.js new file mode 100644 index 0000000..f1ef7b2 --- /dev/null +++ b/test/electron-builder/renderer.js @@ -0,0 +1,10 @@ +/** @type {import('steamworks.js')} */ +const steamworks = require('steamworks.js'); +const client = steamworks.init(480); + +const playerName = client.localplayer.getName() +document.getElementById('name').innerText = playerName + +document.getElementById('activateOverlay').addEventListener('click', function() { + client.overlay.activateToWebPage('https://www.example.com/') +})