diff options
Diffstat (limited to 'src/html/env.nim')
-rw-r--r-- | src/html/env.nim | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/html/env.nim b/src/html/env.nim index 544f5083..8b558b8a 100644 --- a/src/html/env.nim +++ b/src/html/env.nim @@ -6,9 +6,12 @@ import html/htmlparser import io/loader import io/promise import io/request +import js/intl import js/javascript import js/timeout +import types/blob import types/url +import xhr/formdata as formdata_impl # NavigatorID proc appCodeName(navigator: Navigator): string {.jsfget.} = "Mozilla" @@ -73,6 +76,16 @@ proc clearTimeout(window: Window, id: int32) {.jsfunc.} = proc clearInterval(window: Window, id: int32) {.jsfunc.} = window.timeouts.clearInterval(id) +proc screenX(window: Window): int64 {.jsfget.} = 0 +proc screenY(window: Window): int64 {.jsfget.} = 0 +proc screenLeft(window: Window): int64 {.jsfget.} = 0 +proc screenTop(window: Window): int64 {.jsfget.} = 0 +#TODO outerWidth, outerHeight +proc devicePixelRatio(window: Window): float64 {.jsfget.} = 1 + +func location(window: Window): URL {.jsfget.} = + window.document.location + proc addScripting*(window: Window, selector: Selector[int]) = let rt = newJSRuntime() let ctx = rt.newJSContext() @@ -102,6 +115,10 @@ proc addScripting*(window: Window, selector: Selector[int]) = ctx.addDOMModule() ctx.addURLModule() ctx.addHTMLModule() + ctx.addIntlModule() + ctx.addBlobModule() + ctx.addFormDataModule() + ctx.addRequestModule() proc runJSJobs*(window: Window) = window.jsrt.runJSJobs(window.console.err) |