mirror of
https://codeberg.org/cage/tinmop/
synced 2025-02-17 08:10:36 +01:00
- [gemini] ensured we have not to wait a stream is completed before opening a new one.
This commit is contained in:
parent
c8d1e6aa2b
commit
fa10de925e
@ -73,6 +73,12 @@
|
||||
specials:*gemini-streams-window*)
|
||||
(line-oriented-window:resync-rows-db specials:*gemini-streams-window*))))
|
||||
|
||||
(defun bury-download-stream ()
|
||||
(let ((program-events:*process-events-immediately* t)
|
||||
(event (make-instance 'program-events:gemini-push-behind-downloading-event
|
||||
:priority program-events:+maximum-event-priority+)))
|
||||
(program-events:push-event event)))
|
||||
|
||||
(defun force-rendering-of-cached-file (stream-object)
|
||||
;; this is more than a mere setter
|
||||
;; and is 'eql' specialized on rendering
|
||||
|
@ -77,23 +77,15 @@
|
||||
(decoded-path (percent-decode url)))
|
||||
(cond
|
||||
((string= gemini-constants:+gemini-scheme+ scheme)
|
||||
(let ((program-events:*process-events-immediately* t)
|
||||
(event (make-instance 'program-events:gemini-push-behind-downloading-event
|
||||
:priority program-events:+maximum-event-priority+)))
|
||||
(db:insert-in-history (ui:gemini-open-url-prompt) url)
|
||||
(db:gemlog-mark-as-seen url)
|
||||
(gemini-viewer:ensure-just-one-stream-rendering)
|
||||
(program-events:push-event event)
|
||||
(gemini-viewer:load-gemini-url url
|
||||
:give-focus-to-message-window nil
|
||||
:enqueue enqueue
|
||||
:use-cached-file-if-exists t)))
|
||||
(db:insert-in-history (ui:gemini-open-url-prompt) url)
|
||||
(db:gemlog-mark-as-seen url)
|
||||
(gemini-viewer:ensure-just-one-stream-rendering)
|
||||
(gemini-viewer:load-gemini-url url
|
||||
:give-focus-to-message-window nil
|
||||
:enqueue enqueue
|
||||
:use-cached-file-if-exists t))
|
||||
((fs:dirp decoded-path)
|
||||
(let ((program-events:*process-events-immediately* t)
|
||||
(event (make-instance 'program-events:gemini-push-behind-downloading-event
|
||||
:priority program-events:+maximum-event-priority+)))
|
||||
(program-events:push-event event)
|
||||
(gemini-viewer:load-gemini-url decoded-path :give-focus-to-message-window nil)))
|
||||
(gemini-viewer:load-gemini-url decoded-path :give-focus-to-message-window nil))
|
||||
(t
|
||||
(os-utils:open-resource-with-external-program decoded-path nil)))))
|
||||
|
||||
|
@ -2313,6 +2313,7 @@
|
||||
:find-db-stream-url
|
||||
:ensure-just-one-stream-rendering
|
||||
:abort-download-stream
|
||||
:bury-download-stream
|
||||
:db-entry-to-foreground
|
||||
:gemini-metadata-p
|
||||
:maybe-initialize-metadata
|
||||
|
@ -1046,6 +1046,8 @@
|
||||
((text-utils:string-empty-p url)
|
||||
(ui:error-message (_ "Empty address")))
|
||||
((gemini-client:absolute-gemini-url-p url)
|
||||
(gemini-viewer:bury-download-stream)
|
||||
(gemini-viewer:ensure-just-one-stream-rendering)
|
||||
(gemini-viewer:request url
|
||||
:enqueue enqueue
|
||||
:use-cached-file-if-exists use-cached-file-if-exists))
|
||||
@ -1078,6 +1080,7 @@
|
||||
:comes-from-local-file t))
|
||||
(ir (gemini-parser:sexp->text-rows parsed
|
||||
gemini-client:*gemini-page-theme*)))
|
||||
(gemini-viewer:bury-download-stream)
|
||||
(gemini-viewer:maybe-initialize-metadata window)
|
||||
(gemini-viewer:push-url-to-history window index-path)
|
||||
(refresh-gemini-message-window links raw-text ir nil)
|
||||
|
Loading…
x
Reference in New Issue
Block a user