Commit Graph

62 Commits

Author SHA1 Message Date
Robert C. Martin
041345517d Don't add a child to a tree node if the child already exists in that tree node. This situations resulted from the addition of tabs... I'm not sure I like the fix. It repairs the problem after the fact. It might be better to figure out how to prevent the problem in the first place by, (probably) partitioning the node-maps by tabs. 2022-05-26 11:25:18 -05:00
Robert C. Martin
ac1962b386 Added the filtering code for the tabs. Event ids and user's pubkeys can either be selected or blocked. Events that contain the a selected id as the root of a thread are also selected, meaning that the entire rooted thread is selected. 2022-05-26 10:44:10 -05:00
Robert C. Martin
b87ab38e22 Clicking on the citing or root in the article window, hunts for the event in the currently selected tab. Removed the passing of ui-context and event-agent around because ui-context is a global that contains event-agent. More to do on this. Also, I need to switch tabs if the clicked on citing is not in the selected tab but is in the #all tab.
Is the #all tab permanent?
2022-05-25 09:07:24 -05:00
Robert C. Martin
4cbcab18ef Change subscription time to two days ago. Just to keep the load time down. 2022-05-23 15:38:46 -05:00
Robert C. Martin
8ac8c808ae Invert chronological order so that latest message is at the top of the tree. 2022-05-23 08:20:30 -05:00
Robert C. Martin
09563d1480 Resolution of orphaned references. References will be orphaned when a reply child event comes in before the parent event being replied to comes in. This can happen because we are pulling events from multiple relays. 2022-05-22 16:10:52 -05:00
Robert C. Martin
ab7caa0d48 Tests all pass again. (oops). 2022-05-21 15:50:42 -05:00
Robert C. Martin
3f6288e02a Subject is used in article-tree header. 2022-05-21 15:14:47 -05:00
Robert C. Martin
bdffc9e06e Clean up ui.swing by breaking it up into panel/window specific modules, and fixing cyclic dependencies. 2022-05-17 09:50:48 -05:00
Robert C. Martin
d02682dc16 Chronological sort using java.util.Collections/binarySearch. Much faster. 2022-05-16 17:55:51 -05:00
Robert C. Martin
26377873da Chronological sort of header tree. Slow. Should use binary search. 2022-05-16 13:33:04 -05:00
Robert C. Martin
c94bafd84a Clean up the main-window file. Much better now. 2022-05-05 15:14:30 -05:00
Robert C. Martin
b21203bd5d Added incremental article threading. Also added try/catch to name-event in case someone sends an ill-formatted message. 2022-05-02 09:22:09 -05:00
Robert C. Martin
c9c31633b3 Massing cleanup and deletion. Much better. 2022-04-30 13:24:45 -05:00
Robert C. Martin
bc2b912cab Rudimentary reply is working. 2022-04-20 09:15:31 -05:00
Robert C. Martin
7afaa564c6 Copies article being replied to into edit window, prefixed with '>'. 2022-04-19 13:51:41 -05:00
Robert C. Martin
52639cb80e fixed improperly created graphics-dummy. 2022-04-18 16:13:07 -05:00
Robert C. Martin
6cbeceb035 Begin the process of replying. ^R is the reply command. So far just clears the edit window if no article is selected.
Also began creation of the object-mother.
2022-04-18 16:03:11 -05:00
Robert C. Martin
e09addbbec Can use backspace to delete characters in edit window. 2022-04-03 10:12:37 -05:00
Robert C. Martin
e726c21f06 Can add multiple lines to edit window. Can navigate with arrows. Ignores control keys, etc. 2022-04-02 12:21:33 -05:00
Robert C. Martin
849ee68e63 Can add chars to edit window. Very primitive, but... 2022-04-02 10:13:28 -05:00
Robert C. Martin
9038199c35 Clean up author window formatting. 2022-03-07 08:23:27 -06:00
Robert C. Martin
acf4250223 Fix reformatting bug that inserted a line end before the last word. 2022-03-07 07:34:21 -06:00
Robert C. Martin
502964a328 Arrow keys move the selected header. 2022-03-05 13:23:09 -06:00
Robert C. Martin
421488c26f Keyboard focus and passing events from child to parent widgets. A little cleanup in widget to ensure functions are functions. 2022-03-04 07:32:16 -06:00
Robert C. Martin
fb0abcc2c2 Refactor and add tests to reformat-article. Much improved. 2022-03-03 12:24:32 -06:00
Robert C. Martin
4bd5abb22c Very preliminary formatter for articles. Based on the old word-wrap problem. 2022-03-03 11:30:00 -06:00
Robert C. Martin
5ccb060d98 Headers abbreviated properly. 2022-03-03 08:49:21 -06:00
Robert C. Martin
b2df19a432 Repartitioning. Eliminated content/article. Created ui/formatters and moved specific formatting into the window modules. Those modules will likely need to be split into specific control and formatting modules. But not yet. 2022-03-03 08:18:29 -06:00
Robert C. Martin
c5b1cfd6a4 Layout article-window. No content yet. 2022-02-28 14:03:43 -06:00
Robert C. Martin
44af6bcf9a Add some unit tests that would have helped me through my previous headache. 2022-02-26 11:27:23 -06:00
Robert C. Martin
91a821a73c Use mouse functions in defsketch instead of the silly stuff I was doing in button. This was a big change that took a long time and was a big headache. Forced me to repartion widget and app-util to avoid cyclic dependencies. 2022-02-26 09:48:37 -06:00
Robert C. Martin
c920f46432 Can select and deselect headers. 2022-02-25 09:15:03 -06:00
Robert C. Martin
4244ea9f53 Header is hilighted when mouse hovers. This required quite a bit of refactoring in order to tune the button tags and defer the mouse-wheel up from the button to the frame. I'm not sure that deferral is the right approach. 2022-02-24 13:57:44 -06:00
Robert C. Martin
18b6d4c75d Merge text-frame into text-window, rearrage a bit, and write header comment for text-window. 2022-02-24 09:12:42 -06:00
Robert C. Martin
20ad98139c Decoupling of headers from text-window and text-frame is complete. Now the text-window should be generic and usable for any window displaying text with scrollbars. 2022-02-21 12:54:32 -06:00
Robert C. Martin
1e66acb7ed Decouple headers from text-frame. In progress. More to do. 2022-02-21 11:54:29 -06:00
Robert C. Martin
f0a43f96b8 Decouple text-window from articles and headers. Next step is to decouple header-frame and transform it into text-frame and header-frame-functions. 2022-02-21 11:03:00 -06:00
Robert C. Martin
519038ceed Eliminate 'unused local variable' warnings by prefixing those variables with an underscore. 2022-02-20 13:21:44 -06:00
Robert C. Martin
8e196c3983 Repartition functions in article-window and header-frame in preparation for text-window generalization. 2022-02-20 10:51:25 -06:00
Robert C. Martin
97a89886fe Generalize the update scheme in preparation for generalizing text-windows. 2022-02-19 13:41:49 -06:00
Robert C. Martin
241801fbbf Mouse lock implemented, so thumb can be dragged with reckless abandon.
Also cleaned up the update and lock functions by creating app-util.
And changed all path additions from conj to concat.  That probably needs a function too.
2022-02-17 13:22:06 -06:00
Robert C. Martin
ed3e4fa526 Split header-frame from article-window 2022-02-16 12:13:55 -06:00
Robert C. Martin
50e8ed9505 Mouse wheel works. 2022-02-16 09:29:23 -06:00
Robert C. Martin
6be1b896cc Thread open/closed buttons are working. 2022-02-14 15:01:31 -06:00
Robert C. Martin
88ebeea663 Do all the markup and formatting in update. Draw each header based on its position. Tighten up the display. 2022-02-13 16:25:44 -06:00
Robert C. Martin
9d54c856cf Calculate the number of headers that fit in the article frame. 2022-02-13 15:14:10 -06:00
Robert C. Martin
e84781d962 Move the threading and selection of articles to the update function. This will save lots of cycles, and sets the stage for the thread control buttons. 2022-02-11 15:10:47 -06:00
Robert C. Martin
7897186935 Preliminary display of threaded articles. 2022-02-11 12:16:36 -06:00
Robert C. Martin
0a96011517 Build the thread of open events. 2022-02-10 13:17:17 -06:00