parent
f82c4c00a9
commit
68a773bb0c
2
build.sh
2
build.sh
|
@ -4,7 +4,7 @@ if [ -d unpack ]; then
|
||||||
sudo rm -rf unpack
|
sudo rm -rf unpack
|
||||||
fi
|
fi
|
||||||
|
|
||||||
version="0.1.0"
|
version="0.2.0"
|
||||||
|
|
||||||
mkdir -p unpack/DEBIAN
|
mkdir -p unpack/DEBIAN
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
Package: python3-webengine-gtk3
|
Package: python3-webengine-gtk3
|
||||||
Version: 0.1.0
|
Version: 0.2.0
|
||||||
Section: develop
|
Section: develop
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Maintainer: Yutent <yutent.io@gmail.com>
|
Maintainer: Yutent <yutent.io@gmail.com>
|
||||||
|
|
|
@ -4,7 +4,8 @@
|
||||||
|
|
||||||
from webengine.gtk3._webengine import WebEngine
|
from webengine.gtk3._webengine import WebEngine
|
||||||
from webengine.gtk3._settings import create_setting
|
from webengine.gtk3._settings import create_setting
|
||||||
|
from webengine.gtk3._hotreload import create_hmr_server
|
||||||
|
|
||||||
|
|
||||||
build = (0, 1, 0)
|
build = (0, 2, 0)
|
||||||
version = '.'.join(map(str, build))
|
version = '.'.join(map(str, build))
|
||||||
|
|
|
@ -0,0 +1,54 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
|
||||||
|
import time, os
|
||||||
|
|
||||||
|
try:
|
||||||
|
from watchdog.observers import Observer
|
||||||
|
from watchdog.events import FileSystemEventHandler
|
||||||
|
except:
|
||||||
|
Observer = None
|
||||||
|
FileSystemEventHandler = object
|
||||||
|
|
||||||
|
|
||||||
|
class DogHandler(FileSystemEventHandler):
|
||||||
|
|
||||||
|
last_reload = 0
|
||||||
|
|
||||||
|
def __init__(self, webview):
|
||||||
|
super().__init__()
|
||||||
|
self.webview = webview
|
||||||
|
|
||||||
|
|
||||||
|
def on_modified(self, event):
|
||||||
|
if os.path.isfile(event.src_path):
|
||||||
|
stamp = int(time.time())
|
||||||
|
# 1秒内有多个修改, 不重复reload
|
||||||
|
if stamp == self.last_reload:
|
||||||
|
return
|
||||||
|
|
||||||
|
self.last_reload = stamp
|
||||||
|
self.webview.reload()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def create_hmr_server(options = None):
|
||||||
|
if Observer is None:
|
||||||
|
print('Warning: HMR server depends on "python-watchdog". Please install it before using it')
|
||||||
|
dog = None
|
||||||
|
else:
|
||||||
|
dog = Observer()
|
||||||
|
|
||||||
|
|
||||||
|
def wrapper(app, extra = None):
|
||||||
|
if dog is None:
|
||||||
|
return
|
||||||
|
|
||||||
|
if app.root:
|
||||||
|
dog.schedule(DogHandler(app), app.root, recursive=True)
|
||||||
|
dog.start()
|
||||||
|
else:
|
||||||
|
raise SyntaxError('Web root must be set before HMR server starts.')
|
||||||
|
|
||||||
|
return wrapper
|
|
@ -22,7 +22,7 @@ class Settings(WebKit2.Settings):
|
||||||
self.set_javascript_can_open_windows_automatically(True)
|
self.set_javascript_can_open_windows_automatically(True)
|
||||||
|
|
||||||
|
|
||||||
self.set_user_agent_with_application_details('WebEngine', '0.1.0')
|
self.set_user_agent_with_application_details('WebEngine', '0.2.0')
|
||||||
|
|
||||||
|
|
||||||
# indexedDB 和 localStorage 和 离线缓存
|
# indexedDB 和 localStorage 和 离线缓存
|
||||||
|
|
Loading…
Reference in New Issue