force panel open new window

This commit is contained in:
David Botton 2024-07-11 09:40:57 -04:00
parent ba25af0313
commit 9076566aae
6 changed files with 11 additions and 6 deletions

View file

@ -7,7 +7,7 @@
:width 592 :height 435
:client-movement *client-side-movement*))
(panel (create-asdf-systems (window-content win))))
(when *open-external*
(when (or *open-external* *open-external-panels-always*)
(setf (checkedp (ext-open-source panel)) t))
(when *open-panels-as-popups*
(setf (checkedp (pop-open-clog panel)) t))

View file

@ -1072,13 +1072,13 @@ not a temporarily attached one when using select-control."
(defun on-new-builder-page (obj)
"Open new page"
(if *open-external*
(if (or *open-external* *open-external-panels-always*)
(on-new-builder-panel-ext obj :open-ext t)
(on-new-builder-panel obj :open-ext t)))
(defun on-new-builder-basic-page (obj)
"Menu item to open new basic HTML page"
(if *open-external*
(if (or *open-external* *open-external-panels-always*)
(on-new-builder-panel-ext obj :open-ext :custom)
(on-new-builder-panel obj :open-ext :custom)))
@ -1086,7 +1086,7 @@ not a temporarily attached one when using select-control."
(input-dialog obj "Boot file Name?"
(lambda (file)
(when file
(if *open-external*
(if (or *open-external* *open-external-panels-always*)
(on-new-builder-panel-ext obj :open-ext file)
(on-new-builder-panel obj :open-ext file))))))

View file

@ -5,7 +5,7 @@
(cond ((and (> (length item) 5)
(equalp (subseq item (- (length item) 5)) ".clog"))
(if (or (eq method :tab)
(and (not (eq method :here)) *open-external*))
(and (not (eq method :here)) (or *open-external* *open-external-panels-always* )))
(on-new-builder-panel-ext panel :open-file item) ;; need ext for both
(on-new-builder-panel panel :open-file item)))
(t

View file

@ -15,6 +15,8 @@
(defparameter *password-protect* nil)
;; Open panels and files in new browser tabs by default
(defparameter *open-external* nil)
;; Force panels to open in new browser tabs
(defparameter *open-external-panels-always* nil)
;; Use clog-popup and extend desktop to popups
(defparameter *open-external-using-clog-popups* t)
;; Open files in browser popups instead of tabs if browser allows

View file

@ -439,7 +439,7 @@ clog-builder window.")
(on-open-file obj))))
(create-gui-menu-item file :content "New CLOG Panel Editor" :on-click
(lambda (obj)
(if *open-external*
(if (or *open-external* *open-external-panels-always*)
(on-new-builder-panel-ext obj)
(on-new-builder-panel obj))))
(create-gui-menu-item file :content "New CLOG Panel Popup Editor" :on-click 'on-new-builder-page)
@ -706,6 +706,7 @@ clog-builder window.")
(setf *open-external-source-in-popup* nil)
(setf *open-panels-as-popups* nil)
(setf *open-external-panels-in-popup* nil)
(setf *open-external-panels-always* nil)
(setf *open-external* nil)
(handler-case
(uiop:run-program (list "./clogframe"

View file

@ -35,6 +35,8 @@
;; Open panels and files in new browser tabs by default
(setf *open-external* nil)
;; Force panels to open in new browser tabs
(setf *open-external-panels-always* nil)
;; Use clog-popup and extend desktop to popups
(setf *open-external-using-clog-popups* t)