Commit Graph

96 Commits

Author SHA1 Message Date
David Walker
0c2d402f0b
INFRA: Update everything except React (#312) 2023-01-08 02:36:55 -05:00
David Walker
593b860241
New version of Electron, v22.0.0 (#302)
Fixes the blinking text bug!
2023-01-06 14:01:27 -05:00
Olivier Gagnon
b5e4d706b2 🔖 Build v1.6.4 2022-04-13 12:32:26 -04:00
Olivier Gagnon
d7822b389e 🔖 Build v1.6.3 2022-04-13 01:40:29 -04:00
Olivier Gagnon
aa447d3051 🔖 Build v1.6.1 2022-04-13 01:37:53 -04:00
Olivier Gagnon
f555c4567b update doc 2022-04-13 01:35:35 -04:00
phyzical
7cc3b85083 linting 2022-04-07 16:23:31 +08:00
phyzical
a4d221f709 missed a conflict opps 2022-04-07 16:23:26 +08:00
phyzical
85e65195e5 merg dev 2022-04-07 16:22:07 +08:00
Olivier Gagnon
48f80f25d6 fmt and lint 2022-04-06 19:30:08 -04:00
phyzical
ee6c13d33b add app id for notifications and other magic 2022-04-04 22:15:46 +08:00
phyzical
6f09720393 added logic to add cmd/ctrl and +, cmd/ctrl and - cmd/ctrl and 0
* added logic to atleast allow arm64 to launch due to steam incopatibility
2022-04-02 23:04:48 +08:00
Martin Fournier
28f11a3211 Remove unused files 2022-03-21 07:48:07 -04:00
BB
5e2ccc71ec Mixing spaces and tabs, extra semicolons and lonely ifs are now forbidden 2022-03-11 16:32:48 +01:00
hydroflame
b7ffdeb5e2
Merge pull request #3076 from ApamNapat/turned_two_eslint_rules_on
Trailing whitespace and files not ending with \n are now illegal
2022-03-10 22:12:17 -05:00
hydroflame
69f7f4896e
Merge pull request #2874 from smolgumball/add-zoom-reset
electron ui: add `Zoom -> Reset Zoom` command
2022-03-10 21:45:45 -05:00
BB
2f4d879c16 Trailing whitespace and files not ending with \n are now illegal 2022-03-08 22:51:02 +01:00
smolgumball
3431997315 fix: electron windowTracker error when reloading and killing scripts 2022-01-29 17:58:09 -07:00
smolgumball
0f43b02685 Add Zoom -> Reset Zoom command 2022-01-29 17:24:57 -07:00
hydroflame
e392e6d71f
Merge pull request #2780 from MartinFournier/feat/electron-store-winposition
Store Electron window position in user settings
2022-01-26 12:57:09 -05:00
Martin Fournier
d386528627 Add support for Steam Cloud & local filesystem
Adds actions to save the game's data directly in the filesystem and/or
into Steam Cloud. Them game will push an event with the save data
whenever the game is saved. Electron will use that data to persist it
into the User Data folder, until the folder reaches a certain size.
Once over the quota, it's going to remove previous saves.

Files are grouped according the the player's identifier, ensuring
backups off different playthroughs if importing.

Optionally, the file will be gzipped before saving to disk, largely
reducing file size.

Adds a way to save & load from Steam Cloud, currently manually only.

When loading a save, it'll trigger the new "Import Data Comparison" page
to accept or cancel the import.

When saving the game, it will save to Steam Cloud & to filesystem if the
options are enabled.

Add automatic game restore

Detects when the player has access to a newer game that has been saved
more recently than the one being loaded. It checks both in the Steam
Cloud and on the local filesystem. Adds an option to disable the
feature.

- Adds a "Save Game" menu item that triggers the game's save.
- Adds a "Export Game" menu item that triggers the download file popup.
- Adds a "Export Scripts" menu item that triggers the "download *"
terminal command.
- Adds a "Load Last Save" menu item that loads the latest file modified
in the user data folder.
- Adds a "Load from Steam Cloud" menu item.
- Adds a "Load From File" menu item that popups a file selector & loads
the file.
- Adds settings for "Saves Compression (.gz)", "Auto-save Backups" &
"Auto-save to Steam", toggleable through the menu.
- Adds a "Open Game Data","Open Saves", "Open Logs" & "Open User Data" menu items.
- Adds a "Quit" menu item.
2022-01-26 03:56:19 -05:00
Martin Fournier
855a4e622d Add Electron preload script to allow communication
Adds a channel to communicate between the main process & the renderer
process, so that the game can easily ship data back to the main process.

It uses the Electron contextBridge & ipcRenderer/ipcMain.

Connects those events to various save functions. Adds triggered events
on game save, game load, and imported game. Adds way for the Electron
app to ask for certain actions or data.

Hook handlers to disable automatic restore

Allows to temporarily disable restore when the game just did an import
or deleted a save game. Prevents looping screens.
2022-01-26 03:56:19 -05:00
Martin Fournier
5c1504d7e4 Include lodash in Electron
Will be used to debounce function calls. Is a prerequisite for a few
other fixes.
2022-01-26 03:40:22 -05:00
Martin Fournier
ca5f51b7f0 Keep Electron window position in settings
This allows the app to be kept at the same location it was previously.
2022-01-26 03:39:50 -05:00
Martin Fournier
dc2f00057a Include lodash in Electron
Will be used to debounce function calls. Is a prerequisite for a few
other fixes.
2022-01-26 03:38:22 -05:00
hydroflame
d27bac9be6
Merge pull request #2716 from lordducky/enhance-api-server
Enhance api server
2022-01-26 00:53:17 -05:00
hydroflame
2c9302ee53
Merge pull request #2778 from MartinFournier/feat/electron-build-script
Modify electron build script to allow platform selection
2022-01-26 00:40:49 -05:00
hydroflame
862835e452
Merge pull request #2777 from MartinFournier/feat/electron-linux-icon
Add missing steam app icon for linux
2022-01-26 00:40:18 -05:00
hydroflame
de122eca73
Merge pull request #2779 from MartinFournier/fix/electron-mac-crash
Fix 'Steam not running' popup causing crash on MacOS
2022-01-26 00:36:57 -05:00
Martin Fournier
df0a86966a Add icon for linux 2022-01-23 16:52:19 -05:00
Martin Fournier
abfb2127f2 Fix 'Steam not running' popup causing crash on Mac 2022-01-23 13:04:19 -05:00
Martin Fournier
ee416dc06e Set nativeWindowOpen to fix deprecation warning 2022-01-23 13:01:40 -05:00
Martin Fournier
1d118cc8be Modify electron build script to select platforms
Allows to build only mac windows or linux for a quicker build time while
developping.
2022-01-23 12:58:20 -05:00
Xi-Lin Yeh
935f4718e0 Fix type in delete function 2022-01-21 08:52:53 -08:00
Xi-Lin Yeh
861fcf70c4 Clean invocation of get/delete 2022-01-20 09:39:50 -08:00
Xi-Lin Yeh
5386f8e027 Commonalize Api-server response handling
- Fixed issue with error headers
- Aggregated response handling
2022-01-20 00:14:42 -08:00
Xi-Lin Yeh
4a3ee95b63 Enhanced API Server interface
- Used restful patterns for handling server calls (GET/PUT/DELETE)

- Utilized Server interface for saves rather than reimplementing code

- Exposed operations for getting codebase of scripts on the home server and deleting files.

- Added a common response structure
2022-01-20 00:03:07 -08:00
Heikki Aitakangas
f8e64a1b4f Reduce log level for the all achievements and player achievements listings 2022-01-14 23:41:01 +02:00
Heikki Aitakangas
c7c303c551 Handle Steam achievement status check failure by logging them 2022-01-14 23:41:01 +02:00
Heikki Aitakangas
521889b027 Fix Steam version trying to record every achievement player has every second 2022-01-14 23:40:59 +02:00
Martin Fournier
8192ab09ef Handle greenworks.init() errors gracefully
Since we are only using it to track achievements, we can still launch
the game if it fails to initialize, we just have to not run the
achievements interval.

Adds a dialog that tells the user to fix the issue & restart the game to
enable achievements.
2022-01-14 06:06:59 -05:00
Martin Fournier
63413a646a Prevent external files to be opened by electron 2022-01-11 11:04:58 -05:00
Olivier Gagnon
ab15481cd6 try to fix the game hanging 2022-01-09 14:11:33 -05:00
hydroflame
060224182f
Merge pull request #2365 from MartinFournier/fix/achievements-timer
Include electron-log in achievements file
2022-01-06 11:26:27 -05:00
Martin Fournier
674d8a3f06 Include electron-log in achievements file
When the timer throws an exception, it tried to log the error but log
was not defined.
2022-01-05 14:17:54 -05:00
Martin Fournier
1d89dd9d41 Add 'host' config for electron api server
Only tweakable through the config, this can allow external
access to the server (ie - if running through a VM or WSL)
2022-01-05 14:15:40 -05:00
Martin Fournier
0b88922ab7 Add zoom to electron app 2022-01-04 21:20:42 -05:00
Martin Fournier
de8e5ef441 Fix unresponsive handler being attached many times 2022-01-04 18:16:07 -05:00
Martin Fournier
6d8df6744e Add toasts & terminal funcs to electron app
Attach functions to the window object so that the wrapper can executeJs
to display messages to the player
2022-01-03 10:32:01 -05:00
Martin Fournier
bdef14b029 Add API server information menu item 2022-01-03 10:29:56 -05:00