From 52892e009d9d1e506910adb50a424fb103bdbb29 Mon Sep 17 00:00:00 2001 From: Hans Dijkema Date: Thu, 9 Apr 2026 10:41:58 +0200 Subject: [PATCH] - --- info.rkt | 1 + private/utils.rkt | 11 +++++++++++ racket-webview-qt.rkt | 4 ++-- racket-webview.rkt | 41 ++++++++++------------------------------- wv-dialog.rkt | 15 ++++++--------- wv-window.rkt | 7 ++++--- 6 files changed, 34 insertions(+), 45 deletions(-) diff --git a/info.rkt b/info.rkt index cee28e0..16a6cfa 100644 --- a/info.rkt +++ b/info.rkt @@ -40,6 +40,7 @@ "finalizer" "web-server-lib" "net-cookies-lib" + "simple-log" ) ) diff --git a/private/utils.rkt b/private/utils.rkt index 53257d0..aa14542 100644 --- a/private/utils.rkt +++ b/private/utils.rkt @@ -8,6 +8,7 @@ (prefix-in g: gregor/time) gregor-utils racket-sprintf + simple-log ) (provide while @@ -32,8 +33,18 @@ date->string string->datetime datetime->string + + dbg-webview + err-webview + info-webview + warn-webview + fatal-webview + ) + +(sl-def-log webview) + (define-syntax while (syntax-rules () ((_ cond body ...) diff --git a/racket-webview-qt.rkt b/racket-webview-qt.rkt index 126ad9a..c443465 100644 --- a/racket-webview-qt.rkt +++ b/racket-webview-qt.rkt @@ -572,7 +572,7 @@ (hash-remove! rkt-wv-store (rkt-wv-win handle)) 'quit) (begin - (displayln (format "Unexpected data in event queue: ~a" evt)) + (warn-webview "Unexpected data in event queue: ~a" evt) (rkt-process-events handle))) (begin ((rkt-wv-callback handle) handle evt) @@ -605,7 +605,7 @@ (if (eq? r 'quit) (begin (set-rkt-wv-valid! handle #f) - (displayln "Quitting event loop") + (info-webview "Quitting event loop") 'done) (begin ;(displayln "Waiting for events.") diff --git a/racket-webview.rkt b/racket-webview.rkt index cb9a920..a505934 100644 --- a/racket-webview.rkt +++ b/racket-webview.rkt @@ -28,6 +28,7 @@ gregor-utils lru-cache racket-self-signed-cert + simple-log ) (provide webview-new-context @@ -626,21 +627,9 @@ (define (file-open-save wv title base-dir permitted-exts open-save-f) (let* ((bd (if (path? base-dir) (path->string base-dir) base-dir)) (ext-filter (make-exts-filter permitted-exts))) - (displayln ext-filter); + (dbg-webview "file-open-save - filters: ~a" ext-filter) (let ((res (open-save-f (wv-win-handle wv) title bd ext-filter))) res))) -; (if (eq? res #f) -; #f -; (cond ((eq? (car res) 'oke) -; (let* ((h (make-hash (hash->list (fromJson (cadr res)))))) -; (hash-set! h 'state (string->symbol (hash-ref h 'state))) -; (hash-set! h 'used-filter (filter->exts (hash-ref h 'used-filter))) -; h)) -; (else #f)) -; ) -; ) -; ) -; ) (define/contract (webview-file-open wv title base-dir permitted-exts) @@ -724,7 +713,6 @@ (define/contract (webview-call-js wv js) (-> wv-win? string? (or/c string? list? boolean? hash? symbol?)) (let ((result (rkt-webview-call-js (wv-win-handle wv) js))) - ;(displayln result) (if (webview-call-js-result? result) (if (eq? (car result) 'oke) (hash-ref (fromJson (cadr result)) 'result #f) @@ -1020,29 +1008,20 @@ ;; testing ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(define-runtime-path example-path "../example") - -(define file-getter (webview-standard-file-getter example-path)) - -(define test-context (webview-new-context file-getter)) +(define-runtime-path example-path "example") (define (test) - (let* ((cb (λ (handle evt) - (displayln evt))) + (let* ((file-getter (webview-standard-file-getter example-path)) + (test-context (webview-new-context file-getter)) + (cb (λ (handle evt) + (dbg-webview "~a" evt))) (h (webview-create test-context "index.html" cb)) ) - (displayln h) + (sl-log-to-display) + (dbg-webview "~a" h) (webview-set-title! h "This is a test window") (webview-resize h 800 600) (webview-move h 350 220) - ;(webview-present h) h)) + - -; (while (not (webview-has-events? h)) -; (displayln "Waiting...") -; (sleep 1)) -; (let ((evt (webview-get-event h))) -; (when (string=? (hash-ref evt 'evt) "html-loaded") -; (webview-bind h "button" "click"))) -; h)) \ No newline at end of file diff --git a/wv-dialog.rkt b/wv-dialog.rkt index 33ce322..4d06745 100644 --- a/wv-dialog.rkt +++ b/wv-dialog.rkt @@ -2,6 +2,7 @@ (require racket/class "wv-window.rkt" + "private/utils.rkt" ) (provide wv-dialog% @@ -18,29 +19,25 @@ (super-new) (define/override (init-size) - (displayln "init-size") + (dbg-webview "init-size") (let ((px (get-field x parent)) (py (get-field y parent)) (pw (get-field width parent)) (ph (get-field height parent)) ) - (displayln px) - (displayln py) - (displayln pw) - (displayln ph) + (dbg-webview "geom: ~a, ~a; ~a, ~a" px py pw ph) (let ((dw (send settings get 'width (if (eq? width #f) (default-w) width))) (dh (send settings get 'height (if (eq? height #f) (default-h) height))) ) - (displayln dw) - (displayln dh) + (dbg-webview "size: ~a, ~a" dw dh) (let ((xx (/ (- pw dw) 2)) (yy (/ (- ph dh) 2))) (let ((x (inexact->exact (round (exact->inexact (+ px xx))))) (y (inexact->exact (round (exact->inexact (+ py yy))))) ) - (displayln (format "move ~a ~a" x y)) + (dbg-webview "move ~a ~a" x y) (send this move x y) - (displayln (format "resize ~a ~a" x y)) + (dbg-webview "resize ~a ~a" dw dh) (send this resize dw dh) ) ) diff --git a/wv-window.rkt b/wv-window.rkt index d1beea7..8eab99d 100644 --- a/wv-window.rkt +++ b/wv-window.rkt @@ -8,6 +8,7 @@ "wv-settings.rkt" "rgba.rkt" "menu.rkt" + "private/utils.rkt" net/url net/sendurl racket/string @@ -147,7 +148,7 @@ (define (event-handler wv evt) (let ((event (hash-ref evt 'event 'unknown-event)) ) - (displayln evt) + (dbg-webview "event-handler - evt = ~a" evt) (cond ((eq? event 'resize) (send this resized (hash-ref evt 'w) (hash-ref evt 'h))) @@ -170,7 +171,7 @@ (hash-set! e 'data (hash-ref je 'js_evt (make-hash))) (hash-set! e 'event 'js-evt) (when (eq? (send this js-event e) 'wv-unhandled-js-event) - (displayln (format "Unhandled javascript event: ~a" e))) + (warn-webview "Unhandled javascript event: ~a" e)) )) ((eq? event 'navigation-request) (let ((type (string->symbol (hash-ref evt 'type))) @@ -193,7 +194,7 @@ (eq? event 'msgbox-no)) (send this message-done event)) (else - (displayln (format "Unhandled event: ~a (~a)" event evt))) + (err-webview "Unhandled event: ~a (~a)" event evt)) )) )