From 24052ac10deef63efd16c3538e14f18f47678d16 Mon Sep 17 00:00:00 2001 From: Daniel Barlow Date: Sat, 5 Mar 2022 23:04:24 +0000 Subject: [PATCH] viewplex: index views by Notebook page number --- just/just.fnl | 3 --- just/viewplex.fnl | 11 ++++++----- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/just/just.fnl b/just/just.fnl index 1dddb41..80a39cf 100644 --- a/just/just.fnl +++ b/just/just.fnl @@ -21,9 +21,6 @@ (.. cache-dir "/cookies.db") WebKit2.CookiePersistentStorage.SQLITE)) - - - (fn named-image [name size] (Gtk.Image.new_from_icon_name name diff --git a/just/viewplex.fnl b/just/viewplex.fnl index 0cc6b1a..207e5ce 100644 --- a/just/viewplex.fnl +++ b/just/viewplex.fnl @@ -10,25 +10,26 @@ :show_tabs false ;;# :on_switch_page }) - views []] + views {}] (var foreground-view nil) { :listen (fn [_ name fun] (if (not (. relay-events name)) - (each [_ v (ipairs views)] (v:listen name #(listeners:notify name $1)))) + (each [_ v (pairs views)] (table.insert relay-events name) (listeners:add name fun)) :widget widget :add-view (fn [self webview] (set foreground-view webview) (webview.widget:show) - (table.insert views webview) (each [_ event-name (ipairs relay-events)] (webview:listen event-name #(listeners:notify event-name $1))) - (set widget.page - (widget:append_page webview.widget))) + (let [page (widget:append_page webview.widget)] + (tset views page webview) + (set widget.page page) + page)) :visit #(and foreground-view (foreground-view:visit $2)) :stop-loading #(and foreground-view (foreground-view:stop-loading))