Commit Graph

23 Commits

Author SHA1 Message Date
7b300333cf I am going insane 2023-03-31 01:06:29 -04:00
53bfc8df68 Re-organized module structure 2023-03-30 23:19:04 -04:00
02a27447b9 Changed the clipboard API so that it will work with X
In X, clipboard/selection data is specific to each window, and it
may take some time before the clipboard data is fully transferred.
This actually makes sense because there can be entire images in
the clipboard and it is important the clipboard API supports large
file transfer. Because of this, the Copy and Paste methods have
been moved into Window, and Paste now returns a channel.
2023-03-25 13:32:48 -04:00
3aa8495873 Terrible discovery (panels don't work properly) 2023-03-24 17:38:21 -04:00
cf672824a6 im dumb as hell bruh 2023-03-08 21:05:56 -05:00
43fea5c8ba Tomo will call the parse functions in Theme and Config 2023-02-03 17:50:45 -05:00
bdf599f93c Backends must now accept Config and Theme 2023-02-03 01:25:45 -05:00
04d2ea4767 Atomized the functionality of the base tomo package 2023-02-02 01:47:01 -05:00
2c55824920 Made the clipboard API a bit better
This should work better with the X clipboard system better when I
eventually make use of that.
2023-01-30 00:54:06 -05:00
21c19363dd Added x clipboard stub
It doesn't do anything yet but boy is it going to
2023-01-26 14:52:43 -05:00
ddf48d2333 Split the functionality of tomo.go into multiple files 2023-01-14 21:24:39 -05:00
34bf3038ac Replaced tomo.Image with tomo.Canvas and tomo.Pattern
This is the first step in transitioning the API over to the new
design. The new tomo.Canvas interface gives drawing functions
direct access to data buffers and eliminates overhead associated
with calling functions for every pixel.

The entire artist package will be remade around this.
2023-01-14 01:54:57 -05:00
519e0b9c6b Keynav moment 2023-01-11 22:30:14 -05:00
80c0a6be71 Window attempts to advance child's selection on alt-tab 2023-01-11 18:32:02 -05:00
c2a76fcaf6 Added extended selection capabilities to the API 2023-01-11 15:46:48 -05:00
Sasha Koshka
6eed70e79e The beginnings of a layout system 2023-01-10 16:39:37 -05:00
b1fd021120 dasjkhkljashdkjsha 2023-01-10 11:51:46 -05:00
d1ec5f2cec Split element core into two separate structs - public and private
The public core half can be directly embedded, which means no
wrapper methods!
2023-01-09 13:06:55 -05:00
1526772a05 Implemented Do()
Oops
2023-01-09 11:36:37 -05:00
292669a43f Further simplified the API and updated the X backend to match
The MinimumWidth and MinimumHeight behaviors have been condensed
into MinimumSize, which returns both dimensions at once.
2023-01-09 11:31:59 -05:00
c94329e273 Added useful run methods to ParentHooks 2023-01-09 11:28:18 -05:00
192a91757f Changed the API to make it handle keynav better and be simpler
I have yet to actually update the code to reflect these changes.
I will do this shortly.
2023-01-09 11:17:29 -05:00
00d75d4488 Initial commit 2023-01-09 01:03:19 -05:00