Skip to content
This repository was archived by the owner on May 23, 2024. It is now read-only.

Commit 6016bad

Browse files
authored
Merge pull request #35 from ethereum/bumpVersion1.1.0
bump version
2 parents 2e345de + 6dbf4b7 commit 6016bad

File tree

5 files changed

+215
-1181
lines changed

5 files changed

+215
-1181
lines changed

applicationMenu.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
const {Menu, shell, app} = require('electron')
22
const os = require('os')
33
const selectFolder = require('./selectFolder')
4-
const setFolder = require('./setFolder')
54

65
module.exports = (sharedFolderClient) => {
76

@@ -31,7 +30,7 @@ const template = [
3130
label: 'Open Folder',
3231
click: async () => {
3332
selectFolder().then((folder) => {
34-
setFolder(sharedFolderClient, folder)
33+
sharedFolderClient(folder)
3534
}).catch(console.log)
3635
}
3736
},

main.js

+51-12
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
const remixd = require('remixd')
1+
const remixd = require('@remix-project/remixd')
22
const path = require('path')
33
const os = require('os')
44
const IPFS = require('ipfs')
@@ -7,18 +7,19 @@ const IPFSGateway = require('ipfs-http-gateway')
77
const { version } = require('./package.json')
88
const applicationMenu = require('./applicationMenu')
99
const { app, BrowserWindow, shell } = require('electron')
10-
const { AppManager, registerPackageProtocol } = require('@philipplgh/electron-app-manager')
10+
const { AppManager, registerPackageProtocol } = require('electron-app-manager')
1111

1212
const cacheDir = path.join(os.homedir(), '.cache_remix_ide')
1313
registerPackageProtocol(cacheDir)
1414

15+
const remixIdeUrl = 'package://6fd22d6fe5549ad4c4d8fd3ca0b7816b.mod'
16+
1517
console.log('running', version)
1618
const updater = new AppManager({
1719
repository: 'https://github.com/ethereum/remix-desktop',
1820
auto: true,
1921
electron: true
2022
})
21-
const sharedFolderClient = new remixd.services.sharedFolder()
2223

2324
function createWindow () {
2425
let win = new BrowserWindow({
@@ -29,13 +30,12 @@ function createWindow () {
2930
},
3031
icon: path.join(__dirname, 'build/icon.png')
3132
})
32-
applicationMenu(sharedFolderClient)
3333
win.webContents.on('new-window', function(e, url) {
3434
e.preventDefault();
3535
shell.openExternal(url);
3636
})
3737
win.loadURL('package://github.com/ethereum/remix-project')
38-
38+
3939
// Modify the user agent for all requests to the following urls.
4040
const filter = {
4141
urls: ['https://*.dyn.plugin.remixproject.org/ipfs/*']
@@ -55,7 +55,7 @@ function createWindow () {
5555
})
5656

5757
win.webContents.session.webRequest.onErrorOccurred((details) => {
58-
console.error(details)
58+
// console.error(details)
5959
})
6060
}
6161

@@ -65,16 +65,55 @@ app.on('ready', () => {
6565
ipfsStart()
6666
})
6767

68+
let sharedFolderClient = new remixd.services.sharedFolder()
69+
let gitClient = new remixd.services.GitClient()
70+
const services = {
71+
git: () => {
72+
gitClient.options.customApi = {}
73+
return gitClient
74+
},
75+
folder: () => {
76+
sharedFolderClient.options.customApi = {}
77+
return sharedFolderClient
78+
}
79+
}
80+
81+
applicationMenu((folder) => {
82+
console.log('set folder', folder)
83+
sharedFolderClient.sharedFolder(folder, false)
84+
sharedFolderClient.setupNotifications(folder)
85+
gitClient.sharedFolder(folder, false)
86+
})
87+
88+
const ports = {
89+
git: 65521,
90+
folder: 65520
91+
}
92+
93+
function startService (service, callback) {
94+
try {
95+
const socket = new remixd.Websocket(ports[service], { remixIdeUrl }, () => services[service]())
96+
socket.start(callback)
97+
} catch (e) {
98+
console.error(e)
99+
}
100+
}
101+
68102
let remixdStart = () => {
69-
const remixIdeUrl = 'package://6fd22d6fe5549ad4c4d8fd3ca0b7816b.mod'
70103
console.log('start shared folder service')
104+
const currentFolder = process.cwd()
71105
try {
72-
const websocketHandler = new remixd.Websocket(65520, { remixIdeUrl }, sharedFolderClient)
73-
74-
websocketHandler.start((ws) => {
75-
console.log('set websocket')
76-
sharedFolderClient.setWebSocket(ws)
106+
startService('folder', (ws, client) => {
107+
client.setWebSocket(ws)
108+
client.sharedFolder(currentFolder, false)
109+
client.setupNotifications(currentFolder)
110+
})
111+
112+
startService('git', (ws, client) => {
113+
client.setWebSocket(ws)
114+
client.sharedFolder(currentFolder, false)
77115
})
116+
78117
} catch (error) {
79118
throw new Error(error)
80119
}

0 commit comments

Comments
 (0)