5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-02 19:50:15 +08:00

Initial commit (#1241)

This commit is contained in:
Lea Anthony 2022-03-10 21:20:41 +11:00 committed by GitHub
parent 622c4adad6
commit 1048782eb4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 14 additions and 8 deletions

View File

@ -17,13 +17,16 @@ import (
var defaultHTML []byte
type DesktopAssetServer struct {
assets fs.FS
runtimeJS []byte
logger *logger.Logger
assets fs.FS
runtimeJS []byte
logger *logger.Logger
servingFromDisk bool
}
func NewDesktopAssetServer(ctx context.Context, assets fs.FS, bindingsJSON string) (*DesktopAssetServer, error) {
result := &DesktopAssetServer{}
func NewDesktopAssetServer(ctx context.Context, assets fs.FS, bindingsJSON string, servingFromDisk bool) (*DesktopAssetServer, error) {
result := &DesktopAssetServer{
servingFromDisk: servingFromDisk,
}
_logger := ctx.Value("logger")
if _logger != nil {
@ -53,6 +56,9 @@ func (d *DesktopAssetServer) LogDebug(message string, args ...interface{}) {
// loadFile will try to load the file from disk. If there is an error
// it will retry until eventually it will give up and error.
func (d *DesktopAssetServer) loadFile(filename string) ([]byte, error) {
if !d.servingFromDisk {
return fs.ReadFile(d.assets, filename)
}
var result []byte
var err error
for tries := 0; tries < 50; tries++ {

View File

@ -80,7 +80,7 @@ func NewFrontend(ctx context.Context, appoptions *options.App, myLogger *logger.
if err != nil {
log.Fatal(err)
}
assets, err := assetserver.NewDesktopAssetServer(ctx, appoptions.Assets, bindingsJSON)
assets, err := assetserver.NewDesktopAssetServer(ctx, appoptions.Assets, bindingsJSON, result.servingFromDisk)
if err != nil {
log.Fatal(err)
}

View File

@ -87,7 +87,7 @@ func NewFrontend(ctx context.Context, appoptions *options.App, myLogger *logger.
result.servingFromDisk = true
}
assets, err := assetserver.NewDesktopAssetServer(ctx, appoptions.Assets, bindingsJSON)
assets, err := assetserver.NewDesktopAssetServer(ctx, appoptions.Assets, bindingsJSON, result.servingFromDisk)
if err != nil {
log.Fatal(err)
}

View File

@ -82,7 +82,7 @@ func NewFrontend(ctx context.Context, appoptions *options.App, myLogger *logger.
result.servingFromDisk = true
}
assets, err := assetserver.NewDesktopAssetServer(ctx, appoptions.Assets, bindingsJSON)
assets, err := assetserver.NewDesktopAssetServer(ctx, appoptions.Assets, bindingsJSON, result.servingFromDisk)
if err != nil {
log.Fatal(err)
}