1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
From 0090d934ac8e9cff0ffb24ad4ad1af5fe573ed53 Mon Sep 17 00:00:00 2001
From: Freya Murphy <freya@freyacat.org>
Date: Sun, 20 Jul 2025 12:01:12 -0400
Subject: [PATCH 3/3] make compatible with native electron
---
src/background.js | 15 +++++----------
src/components/SystemPages/Settings.vue | 12 +++++++-----
src/components/UIElements/MediaEmbed.vue | 20 ++------------------
3 files changed, 14 insertions(+), 33 deletions(-)
diff --git a/src/background.js b/src/background.js
index 426a84a..dfbc4e8 100644
--- a/src/background.js
+++ b/src/background.js
@@ -314,16 +314,8 @@ if (assetDir === undefined) {
is_first_run = true
} else {
try {
- if (store.has('settings.ruffleFallback') && store.get('settings.ruffleFallback') === true) {
- logger.info("Ruffle fallback enabled, disabling ppapi-level flash player")
- } else {
- // Pick the appropriate flash plugin for the user's platform
- const flashPath = getFlashPath()
-
- if (fs.existsSync(flashPath)) {
- app.commandLine.appendSwitch('ppapi-flash-path', flashPath)
- } else throw Error(`Flash plugin not located at ${flashPath}`)
- }
+ // MOD: always use ruffle
+ logger.info("Ruffle fallback enabled, disabling ppapi-level flash player")
if (store.has('settings.smoothScrolling') && store.get('settings.smoothScrolling') === false)
app.commandLine.appendSwitch('disable-smooth-scrolling')
@@ -748,6 +740,9 @@ async function createWindow () {
autoHideMenuBar: true,
webPreferences: {
nodeIntegration: process.env.ELECTRON_NODE_INTEGRATION,
+ // MOD: disable isolation to get
+ // collection to work with electron 35
+ contextIsolation: false,
enableRemoteModule: true,
plugins: true,
webviewTag: true
diff --git a/src/components/SystemPages/Settings.vue b/src/components/SystemPages/Settings.vue
index 47c5ea6..5630625 100644
--- a/src/components/SystemPages/Settings.vue
+++ b/src/components/SystemPages/Settings.vue
@@ -619,11 +619,13 @@ export default {
label: "Reduce Motion",
desc: "Attempts to reduce the amount of automatic motion in the comic by replacing animated gifs with a manual scrubber, and requiring an explicit click before playing Flash animations.",
platform_whitelist: ['electron']
- }, {
- model: "ruffleFallback",
- label: "Ruffle flash emulation fallback",
- desc: "If the built-in flash player is non-functional, use the <a href='https://ruffle.rs/'>Ruffle</a> Flash emulator in place of Flash."
- }
+ },
+ // MOD: always use ruffle
+ // {
+ // model: "ruffleFallback",
+ // label: "Ruffle flash emulation fallback",
+ // desc: "If the built-in flash player is non-functional, use the <a href='https://ruffle.rs/'>Ruffle</a> Flash emulator in place of Flash."
+ // }
],
retconList: [
{
diff --git a/src/components/UIElements/MediaEmbed.vue b/src/components/UIElements/MediaEmbed.vue
index 760fec4..53f34ff 100644
--- a/src/components/UIElements/MediaEmbed.vue
+++ b/src/components/UIElements/MediaEmbed.vue
@@ -156,24 +156,8 @@ export default {
return ret
},
ruffleEmbed() {
- // At some point between 2025.3.14 and 2025.4.13 ruffle stopped supporting our old runtime. Damn. -->
- if (this.$localData.settings.ruffleFallback) {
- if (this.$isWebApp) {
- return '<script src="https://unpkg.com/@ruffle-rs/ruffle"><\/script>'
- } else {
- // 0.1.0-nightly.2024.04.13 OK
- // ...
- // 0.1.0-nightly.2024.07.19 OK
- // 0.1.0-nightly.2024.07.20 scale issue
- // ...
- // 0.1.0-nightly.2025.04.07 scale issue
- // 0.1.0-nightly.2025.04.13 syntax issue
- // return '<script src="https://unpkg.com/@ruffle-rs/ruffle@0.1.0-nightly.2024.7.19"><\/script>'
- return `<script src="${this.$getResourceURL("assets://js/ruffle/ruffle.js")}"><\/script>`
- }
- } else {
- return '<!-- Using real flash -->'
- }
+ // MOD: always use ruffle
+ return `<script src="${this.$getResourceURL("assets://js/ruffle/ruffle.js")}"><\/script>`
},
flashSrc() {
return `
--
2.50.0
|