Compare commits

..

14 Commits

Author SHA1 Message Date
Lea Anthony
93884a5aeb v1.0.2-pre4 Raspbarian support 2020-01-11 09:35:52 +11:00
Lea Anthony
c1fbca834b fix: emit arguments (#306) 2020-01-11 00:11:31 +11:00
Travis McLane
60fe2c0912 [326-platform-raspbian] feat: implement raspbian support (#327) 2020-01-10 22:07:42 +11:00
Lea Anthony
2e1e8b1513 v1.0.2-pre3 2020-01-09 08:40:31 +11:00
Byron
dd49292b68 Feat manjaro arm & deepin (#324)
* feat: new distros: manjaroARM & Deepin
2020-01-09 08:38:05 +11:00
Lea Anthony
af30e5e6ba load linuxdb from relative path 2020-01-08 06:49:54 +11:00
Lea Anthony
558cc9681c use channel to trigger shutdown 2020-01-03 09:05:51 +11:00
Lea Anthony
62f6bece57 fix: shutdown ipcmanager 2020-01-03 09:02:34 +11:00
Lea Anthony
084d412d86 v1.0.2-pre2 2020-01-02 22:47:04 +11:00
Lea Anthony
788d22740b fix: disable host check for vuetify 2 template 2020-01-02 22:46:12 +11:00
Travis McLane
34ef3de737 [313-remote-conn] allow remote connections to the websocket bridge (#314)
* [313-remote-conn] feat: compute wsURL based on window.location

* [313-remote-conn] feat: allow any host to connect to vue server

removing the 'host: "localhost"' specification causes the development
server to listen on all interfaces.

* [313-remote-conn] feat: allow any host to connect to angular dev server

* test: reinject tabs

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2020-01-02 21:43:34 +10:00
Lea Anthony
8149cbc3c0 v1.0.2-pre1 2020-01-02 08:47:48 +11:00
Lea Anthony
2032ef8225 Update Contributors 2020-01-02 08:44:41 +11:00
Travis McLane
38e897f646 Vuetify2 support (resurrected from git@github.com:MichaelHipp/wails.git) (#315)
* Initial create of vuetify2-basic folder

* Change template descr of vuetify-basic to say Vuetify 1.5

* Get vuetify2 template installing vuetify v2.0 (but with styling probs)

* Update App.vue, HelloWorld.vue for Vuetify v2

* Remove babel-polyfill, add mdi/font

* fix: codacy corrections

* fix: babel -> core-js, regenerator-runtime

Co-authored-by: Michael Hipp <michael@redmule.com>
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2020-01-02 07:42:45 +10:00
19 changed files with 87 additions and 36 deletions

View File

@@ -22,4 +22,4 @@ Wails is what it is because of the time and effort given by these great people.
* [Kris Raney](https://github.com/kraney) * [Kris Raney](https://github.com/kraney)
* [Jack Mordaunt](https://github.com/JackMordaunt) * [Jack Mordaunt](https://github.com/JackMordaunt)
* [Michael Hipp](https://github.com/MichaelHipp) * [Michael Hipp](https://github.com/MichaelHipp)
* [Travis McLane](https://github.com/tmclane) * [Travis McLane](https://github.com/tmclane)

File diff suppressed because one or more lines are too long

View File

@@ -132,6 +132,16 @@ func (fs *FSHelper) LocalDir(dir string) (*Dir, error) {
}, err }, err
} }
// LoadRelativeFile loads the given file relative to the caller's directory
func (fs *FSHelper) LoadRelativeFile(relativePath string) ([]byte, error) {
_, filename, _, _ := runtime.Caller(0)
fullPath, err := filepath.Abs(filepath.Join(path.Dir(filename), relativePath))
if err != nil {
return nil, err
}
return ioutil.ReadFile(fullPath)
}
// GetSubdirs will return a list of FQPs to subdirectories in the given directory // GetSubdirs will return a list of FQPs to subdirectories in the given directory
func (d *Dir) GetSubdirs() (map[string]string, error) { func (d *Dir) GetSubdirs() (map[string]string, error) {

View File

@@ -47,6 +47,12 @@ const (
ArcoLinux ArcoLinux
// Manjaro distribution // Manjaro distribution
Manjaro Manjaro
// ManjaroARM distribution
ManjaroARM
// Deepin distribution
Deepin
// Raspbian distribution
Raspbian
) )
// DistroInfo contains all the information relating to a linux distribution // DistroInfo contains all the information relating to a linux distribution
@@ -102,6 +108,7 @@ func parseOsRelease(osRelease string) *DistroInfo {
version = strings.Trim(splitLine[1], "\"") version = strings.Trim(splitLine[1], "\"")
} }
} }
// Check distro name against list of distros // Check distro name against list of distros
switch osID { switch osID {
case "fedora": case "fedora":
@@ -134,6 +141,12 @@ func parseOsRelease(osRelease string) *DistroInfo {
result.Distribution = ArcoLinux result.Distribution = ArcoLinux
case "manjaro": case "manjaro":
result.Distribution = Manjaro result.Distribution = Manjaro
case "manjaro-arm":
result.Distribution = ManjaroARM
case "deepin":
result.Distribution = Deepin
case "raspbian":
result.Distribution = Raspbian
default: default:
result.Distribution = Unknown result.Distribution = Unknown
} }

View File

@@ -3,7 +3,6 @@ package cmd
import ( import (
"log" "log"
"github.com/leaanthony/mewn"
"gopkg.in/yaml.v3" "gopkg.in/yaml.v3"
) )
@@ -79,11 +78,14 @@ func (l *LinuxDB) GetDistro(distro string) *Distribution {
// NewLinuxDB creates a new LinuxDB instance from the bundled // NewLinuxDB creates a new LinuxDB instance from the bundled
// linuxdb.yaml file. // linuxdb.yaml file.
func NewLinuxDB() *LinuxDB { func NewLinuxDB() *LinuxDB {
data := mewn.Bytes("./linuxdb.yaml") data, err := fs.LoadRelativeFile("./linuxdb.yaml")
if err != nil {
log.Fatal("Could not load linuxdb.yaml")
}
result := LinuxDB{ result := LinuxDB{
Distributions: make(map[string]*Distribution), Distributions: make(map[string]*Distribution),
} }
err := result.ImportData(data) err = result.ImportData(data)
if err != nil { if err != nil {
log.Fatal(err) log.Fatal(err)
} }

View File

@@ -82,6 +82,15 @@ distributions:
gccversioncommand: *gccdumpfullversion gccversioncommand: *gccdumpfullversion
programs: *debiandefaultprograms programs: *debiandefaultprograms
libraries: *debiandefaultlibraries libraries: *debiandefaultlibraries
deepin:
id: deepin
releases:
default:
version: default
name: Deepin
gccversioncommand: *gccdumpfullversion
programs: *debiandefaultprograms
libraries: *debiandefaultlibraries
void: void:
id: void id: void
releases: releases:
@@ -158,6 +167,15 @@ distributions:
help: Please install with `sudo pacman -S gtk3` and try again help: Please install with `sudo pacman -S gtk3` and try again
- name: webkit2gtk - name: webkit2gtk
help: Please install with `sudo pacman -S webkit2gtk` and try again help: Please install with `sudo pacman -S webkit2gtk` and try again
arcolinux:
id: arcolinux
releases:
default:
version: default
name: ArcoLinux
gccversioncommand: *gccdumpversion
programs: *archdefaultprograms
libraries: *archdefaultlibraries
manjaro: manjaro:
id: manjaro id: manjaro
releases: releases:
@@ -167,12 +185,12 @@ distributions:
gccversioncommand: *gccdumpversion gccversioncommand: *gccdumpversion
programs: *archdefaultprograms programs: *archdefaultprograms
libraries: *archdefaultlibraries libraries: *archdefaultlibraries
arcolinux: manjaro-arm:
id: arcolinux id: manjaro-arm
releases: releases:
default: default:
version: default version: default
name: ArcoLinux name: Manjaro-ARM
gccversioncommand: *gccdumpversion gccversioncommand: *gccdumpversion
programs: *archdefaultprograms programs: *archdefaultprograms
libraries: *archdefaultlibraries libraries: *archdefaultlibraries
@@ -194,4 +212,14 @@ distributions:
- name: gtk+:3 - name: gtk+:3
help: Please install with `sudo emerge gtk+:3` and try again help: Please install with `sudo emerge gtk+:3` and try again
- name: webkit-gtk - name: webkit-gtk
help: Please install with `sudo emerge webkit-gtk` and try again help: Please install with `sudo emerge webkit-gtk` and try again
raspbian:
id: raspbian
releases:
default:
version: default
name: Raspbian
gccversioncommand: *gccdumpfullversion
programs: *debiandefaultprograms
libraries: *debiandefaultlibraries

View File

@@ -274,9 +274,9 @@ func CheckDependencies(logger *Logger) (bool, error) {
distroInfo := GetLinuxDistroInfo() distroInfo := GetLinuxDistroInfo()
switch distroInfo.Distribution { switch distroInfo.Distribution {
case Ubuntu, Debian, Zorin, Parrot, Linuxmint, Elementary, Kali, Neon: case Ubuntu, Debian, Zorin, Parrot, Linuxmint, Elementary, Kali, Neon, Deepin, Raspbian:
libraryChecker = DpkgInstalled libraryChecker = DpkgInstalled
case Arch, Manjaro, ArcoLinux: case Arch, ArcoLinux, Manjaro, ManjaroARM:
libraryChecker = PacmanInstalled libraryChecker = PacmanInstalled
case CentOS, Fedora: case CentOS, Fedora:
libraryChecker = RpmInstalled libraryChecker = RpmInstalled

View File

@@ -3,7 +3,7 @@
"version": "0.0.0", "version": "0.0.0",
"scripts": { "scripts": {
"ng": "npx ng", "ng": "npx ng",
"start": "npx ng serve --poll=2000", "start": "npx ng serve --poll=2000 --host=0.0.0.0",
"build": "npx ng build --single-bundle true --output-hashing none --prod --bundle-styles false", "build": "npx ng build --single-bundle true --output-hashing none --prod --bundle-styles false",
"test": "npx ng test", "test": "npx ng test",
"lint": "npx ng lint", "lint": "npx ng lint",

View File

@@ -37,7 +37,6 @@ module.exports = {
} }
}, },
devServer: { devServer: {
disableHostCheck: true, disableHostCheck: true
host: "localhost"
} }
}; };

View File

@@ -37,7 +37,6 @@ module.exports = {
} }
}, },
devServer: { devServer: {
disableHostCheck: true, disableHostCheck: true
host: "localhost"
} }
}; };

View File

@@ -37,7 +37,6 @@ module.exports = {
} }
}, },
devServer: { devServer: {
disableHostCheck: true, disableHostCheck: true
host: 'localhost'
} }
}; };

View File

@@ -1,4 +1,4 @@
package cmd package cmd
// Version - Wails version // Version - Wails version
const Version = "v1.0.1" const Version = "v1.0.2-pre4"

View File

@@ -3,7 +3,6 @@ package event
import ( import (
"fmt" "fmt"
"sync" "sync"
"time"
"github.com/wailsapp/wails/lib/interfaces" "github.com/wailsapp/wails/lib/interfaces"
"github.com/wailsapp/wails/lib/logger" "github.com/wailsapp/wails/lib/logger"
@@ -13,6 +12,7 @@ import (
// Manager handles and processes events // Manager handles and processes events
type Manager struct { type Manager struct {
incomingEvents chan *messages.EventData incomingEvents chan *messages.EventData
quitChannel chan struct{}
listeners map[string][]*eventListener listeners map[string][]*eventListener
running bool running bool
log *logger.CustomLogger log *logger.CustomLogger
@@ -24,6 +24,7 @@ type Manager struct {
func NewManager() interfaces.EventManager { func NewManager() interfaces.EventManager {
return &Manager{ return &Manager{
incomingEvents: make(chan *messages.EventData, 100), incomingEvents: make(chan *messages.EventData, 100),
quitChannel: make(chan struct{}, 1),
listeners: make(map[string][]*eventListener), listeners: make(map[string][]*eventListener),
running: false, running: false,
log: logger.NewCustomLogger("Events"), log: logger.NewCustomLogger("Events"),
@@ -141,8 +142,8 @@ func (e *Manager) Start(renderer interfaces.Renderer) {
} }
} }
} }
default: case <-e.quitChannel:
time.Sleep(1 * time.Millisecond) e.running = false
} }
} }
e.wg.Done() e.wg.Done()
@@ -152,7 +153,7 @@ func (e *Manager) Start(renderer interfaces.Renderer) {
// Shutdown is called when exiting the Application // Shutdown is called when exiting the Application
func (e *Manager) Shutdown() { func (e *Manager) Shutdown() {
e.log.Debug("Shutting Down") e.log.Debug("Shutting Down")
e.running = false e.quitChannel <- struct{}{}
e.log.Debug("Waiting for main loop to exit") e.log.Debug("Waiting for main loop to exit")
e.wg.Wait() e.wg.Wait()
} }

View File

@@ -3,7 +3,6 @@ package ipc
import ( import (
"fmt" "fmt"
"sync" "sync"
"time"
"github.com/wailsapp/wails/lib/interfaces" "github.com/wailsapp/wails/lib/interfaces"
"github.com/wailsapp/wails/lib/logger" "github.com/wailsapp/wails/lib/logger"
@@ -124,8 +123,8 @@ func (i *Manager) Start(eventManager interfaces.EventManager, bindingManager int
i.log.DebugFields("Finished processing message", logger.Fields{ i.log.DebugFields("Finished processing message", logger.Fields{
"1D": &incomingMessage, "1D": &incomingMessage,
}) })
default: case <-i.quitChannel:
time.Sleep(1 * time.Millisecond) i.running = false
} }
} }
i.log.Debug("Stopping") i.log.Debug("Stopping")
@@ -175,7 +174,7 @@ func (i *Manager) SendResponse(response *ipcResponse) error {
// Shutdown is called when exiting the Application // Shutdown is called when exiting the Application
func (i *Manager) Shutdown() { func (i *Manager) Shutdown() {
i.log.Debug("Shutdown called") i.log.Debug("Shutdown called")
i.running = false i.quitChannel <- struct{}{}
i.log.Debug("Waiting of main loop shutdown") i.log.Debug("Waiting of main loop shutdown")
i.wg.Wait() i.wg.Wait()
} }

File diff suppressed because one or more lines are too long

View File

@@ -14,7 +14,7 @@ function init() {
window.wailsbridge = { window.wailsbridge = {
reconnectOverlay: null, reconnectOverlay: null,
reconnectTimer: 300, reconnectTimer: 300,
wsURL: 'ws://localhost:34115/bridge', wsURL: 'ws://' + window.location.hostname + ':34115/bridge',
connectionState: null, connectionState: null,
config: {}, config: {},
websocket: null, websocket: null,

File diff suppressed because one or more lines are too long

View File

@@ -52,7 +52,8 @@ function Once(eventName, callback) {
* @param {string} eventName * @param {string} eventName
*/ */
function Emit(eventName) { function Emit(eventName) {
return window.wails.Events.Emit(eventName); var args = [eventName].slice.call(arguments);
return window.wails.Events.Emit.apply(null, args);
} }

View File

@@ -1,6 +1,6 @@
{ {
"name": "@wailsapp/runtime", "name": "@wailsapp/runtime",
"version": "1.0.9", "version": "1.0.10",
"description": "Wails Javascript runtime library", "description": "Wails Javascript runtime library",
"main": "main.js", "main": "main.js",
"types": "runtime.d.ts", "types": "runtime.d.ts",