mirror of
https://github.com/unclebob/more-speech.git
synced 2024-09-30 10:30:56 +00:00
add root of thread when adding an event to a tab.
This commit is contained in:
parent
55f953b52b
commit
4676aba4ca
@ -370,6 +370,13 @@
|
|||||||
(should= 2 root)
|
(should= 2 root)
|
||||||
(should= 2 referent)
|
(should= 2 referent)
|
||||||
(should= [1 4] mentions)))
|
(should= [1 4] mentions)))
|
||||||
|
|
||||||
|
(it "finds the root when only root is marked."
|
||||||
|
(let [event {:tags [[:e (hexify 2) "" "root"]]}
|
||||||
|
[root mentions referent] (get-references event)]
|
||||||
|
(should= 2 root)
|
||||||
|
(should= 2 referent)
|
||||||
|
(should= [] mentions)))
|
||||||
)
|
)
|
||||||
|
|
||||||
(describe "json"
|
(describe "json"
|
||||||
|
@ -5,7 +5,8 @@
|
|||||||
[more-speech.ui.swing.article-tree-util :refer :all]
|
[more-speech.ui.swing.article-tree-util :refer :all]
|
||||||
[more-speech.nostr.util :as util]
|
[more-speech.nostr.util :as util]
|
||||||
[more-speech.ui.swing.ui-context :refer :all]
|
[more-speech.ui.swing.ui-context :refer :all]
|
||||||
[more-speech.ui.swing.article-panel :as article-panel])
|
[more-speech.ui.swing.article-panel :as article-panel]
|
||||||
|
[more-speech.ui.swing.util :as swing-util])
|
||||||
(:import (javax.swing.tree DefaultMutableTreeNode)))
|
(:import (javax.swing.tree DefaultMutableTreeNode)))
|
||||||
|
|
||||||
(defn hexify [n] (util/num32->hex-string n))
|
(defn hexify [n] (util/num32->hex-string n))
|
||||||
@ -498,3 +499,32 @@
|
|||||||
copied-node (copy-node node)]
|
copied-node (copy-node node)]
|
||||||
(should= [1 [2] [3 [4]]] (depict-node copied-node))))
|
(should= [1 [2] [3 [4]]] (depict-node copied-node))))
|
||||||
)
|
)
|
||||||
|
|
||||||
|
(describe "adding ids to tabs"
|
||||||
|
(with-stubs)
|
||||||
|
(it "adds an an unrooted article id to a tab"
|
||||||
|
(let [message-id 1
|
||||||
|
messages {message-id {:tags []}}
|
||||||
|
event-context (atom {:text-event-map messages})
|
||||||
|
]
|
||||||
|
(reset! ui-context {:event-context event-context})
|
||||||
|
(with-redefs [swing-util/add-id-to-tab (stub :add-id-to-tab)
|
||||||
|
swing-util/relaunch (stub :relaunch)]
|
||||||
|
(add-article-to-tab 1 "tab" nil)
|
||||||
|
(should-have-invoked :relaunch)
|
||||||
|
(should-have-invoked :add-id-to-tab {:with ["tab" :selected 1]}))))
|
||||||
|
|
||||||
|
(it "adds the root id of a thread to a tab"
|
||||||
|
(let [message-id 1
|
||||||
|
root-id 100
|
||||||
|
messages {message-id {:tags [[:e (hexify root-id) "" "root"]]}}
|
||||||
|
event-context (atom {:text-event-map messages})
|
||||||
|
]
|
||||||
|
(reset! ui-context {:event-context event-context})
|
||||||
|
(with-redefs [swing-util/add-id-to-tab (stub :add-id-to-tab)
|
||||||
|
swing-util/relaunch (stub :relaunch)]
|
||||||
|
(add-article-to-tab message-id "tab" nil)
|
||||||
|
(should-have-invoked :relaunch)
|
||||||
|
(should-have-invoked :add-id-to-tab {:with ["tab" :selected root-id]})
|
||||||
|
)))
|
||||||
|
)
|
@ -193,6 +193,13 @@
|
|||||||
(prn 'get-references 'bad-tags-in-event (.getMessage e) event)
|
(prn 'get-references 'bad-tags-in-event (.getMessage e) event)
|
||||||
[nil nil nil])))
|
[nil nil nil])))
|
||||||
|
|
||||||
|
(defn get-root-of-thread [id]
|
||||||
|
(let [event-context (:event-context @ui-context)
|
||||||
|
messages (:text-event-map @event-context)
|
||||||
|
event (get messages id)
|
||||||
|
[root _ _] (get-references event)]
|
||||||
|
(if (some? root) root id)))
|
||||||
|
|
||||||
(defn process-references [state event]
|
(defn process-references [state event]
|
||||||
(let [[_ _ referent] (get-references event)]
|
(let [[_ _ referent] (get-references event)]
|
||||||
(if (nil? referent)
|
(if (nil? referent)
|
||||||
|
@ -82,7 +82,8 @@
|
|||||||
|
|
||||||
(defn add-article-to-tab [event-id tab-name _e]
|
(defn add-article-to-tab [event-id tab-name _e]
|
||||||
(when-let [tab-name (if-new-tab tab-name)]
|
(when-let [tab-name (if-new-tab tab-name)]
|
||||||
(swing-util/add-id-to-tab tab-name :selected event-id)
|
(let [root-of-thread (events/get-root-of-thread event-id)]
|
||||||
|
(swing-util/add-id-to-tab tab-name :selected root-of-thread))
|
||||||
(swing-util/relaunch)))
|
(swing-util/relaunch)))
|
||||||
|
|
||||||
(defn block-article-from-tab [event-id tab-name _e]
|
(defn block-article-from-tab [event-id tab-name _e]
|
||||||
|
Loading…
Reference in New Issue
Block a user