mirror of
https://github.com/rabbibotton/clog.git
synced 2025-12-06 02:30:42 -08:00
Better support for sudden connection lost.
This commit is contained in:
parent
844afdf7f4
commit
f6792ca0ed
7 changed files with 21 additions and 6 deletions
|
|
@ -169,6 +169,7 @@
|
|||
(sleep .1))))
|
||||
|
||||
(defun on-new-window (body)
|
||||
(set-html-on-close body "Connection Lost")
|
||||
(let ((app (make-instance 'app-data)))
|
||||
(setf (connection-data-item body "app-data") app))
|
||||
(display-splash body)
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@
|
|||
*global-list-box-hash*))
|
||||
|
||||
(defun on-new-window (body)
|
||||
(set-html-on-close body "Connection Lost")
|
||||
(load-css (html-document body) "/css/w3.css")
|
||||
(setf (title (html-document body)) "CLOG Chat")
|
||||
|
||||
|
|
|
|||
|
|
@ -173,6 +173,7 @@
|
|||
(declare (ignore obj))()))))
|
||||
|
||||
(defun on-new-window (body)
|
||||
(set-html-on-close body "Connection Lost")
|
||||
(let ((app (make-instance 'app-data)))
|
||||
(setf (connection-data-item body "app-data") app))
|
||||
(clog-gui-initialize body)
|
||||
|
|
|
|||
|
|
@ -159,6 +159,7 @@
|
|||
(id-me app)))))
|
||||
|
||||
(defun on-new-window (body)
|
||||
(set-html-on-close body "Connection Lost")
|
||||
;; Create an app-data object for every connection
|
||||
(let ((app (make-instance 'app-data)))
|
||||
(setf (connection-data-item body "app-data") app)
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@
|
|||
;;;;;;;;;
|
||||
|
||||
(defgeneric run (clog-body)
|
||||
(:documentation "Keeps the main thread alive to prevent garbage
|
||||
(:documentation "Keeps the connection thread alive to prevent garbage
|
||||
collection of local objects when not using connection-data objects
|
||||
or global objects."))
|
||||
|
||||
|
|
@ -57,6 +57,15 @@ or global objects."))
|
|||
(sleep 10)
|
||||
(return))))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; set-html-on-close ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(defun set-html-on-close (clog-body html)
|
||||
"In case of connection loss to this CLOG-BODY, replace the browser contents
|
||||
with HTML."
|
||||
(clog-connection:set-html-on-close (connection-id clog-body) html))
|
||||
|
||||
;;;;;;;;;;;;
|
||||
;; window ;;
|
||||
;;;;;;;;;;;;
|
||||
|
|
|
|||
|
|
@ -492,6 +492,7 @@ HTML <br />."
|
|||
the browser contents in case of connection loss."
|
||||
(execute connection-id (format nil "clog['html_on_close']='~A'"
|
||||
(escape-string html))))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; compiled-boot-js ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
|
|
|||
|
|
@ -674,6 +674,7 @@ embedded in a native template application.)"
|
|||
|
||||
"CLOG-Body - Properties"
|
||||
(run generic-function)
|
||||
(set-html-on-close generic-function)
|
||||
(window generic-function)
|
||||
(html-document generic-function)
|
||||
(location generic-function)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue