Commit Graph

95 Commits

Author SHA1 Message Date
1a66224648 X backend window sets itself as parent (oops) 2023-03-15 01:43:32 -04:00
Sasha Koshka
14ad35d85c X backend now conforms to new API changes 2023-03-14 18:54:24 -04:00
d31aee1ba8 X backend now follows API 2023-03-12 01:06:12 -05:00
51084a6cfe Removed references to flexible from layouts, x backend, core 2023-03-11 00:43:26 -05:00
f3c1c95a57 Keyboard control for sliders 2023-03-07 19:13:08 -05:00
423e6869c0 X backend better handles expose events
Previously, when an expose event was recieved, the backend would
call Window.paste, converting RGBA image data to BGRA image data.
Now we only call Window.pushRegion with the bounds given to us by
the expose event(s). This speeds up window resizing significantly.
2023-03-07 12:48:29 -05:00
Sasha Koshka
270b49f825 Removed that annoying log message on window close 2023-02-16 17:22:33 -05:00
8ac5108211 Elements are no longer images 2023-02-13 01:49:33 -05:00
Sasha Koshka
6e7cf285cc Fixed issue with X backend not recognizing key repeats 2023-02-09 17:26:36 -05:00
16a0e76145 Removed a bunch of redundant draw calls
Most were related to a but with the keynav api
2023-02-09 01:30:14 -05:00
43fea5c8ba Tomo will call the parse functions in Theme and Config 2023-02-03 17:50:45 -05:00
d79701d01b X backend conforms to new API 2023-02-03 01:35:59 -05:00
99942466f8 Updated X backend to match 2023-02-02 01:47:55 -05:00
8f0f2be9e9 Reduce allocation of X buffers and canvases 2023-02-01 01:47:08 -05:00
Sasha Koshka
6d6a0c59a1 X backend now conforms to new API 2023-01-31 16:13:20 -05:00
801c3ef6f5 Hocus focus 2023-01-30 17:01:47 -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
Sasha Koshka
0f9a33fc57 Refactored the X backend draw code a bit 2023-01-26 18:01:39 -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
4692b2c898 oh mmy god 2023-01-26 02:08:07 -05:00
92a9c9370d Scrollbars respond to mouse dragging more naturally 2023-01-21 01:24:24 -05:00
72f604e819 Repeated keys are detected properly
The repeated bool was removed and instead key release events are
*only* sent when the key is actually let go. If an element wants to
listen to repeat presses, it can just listen to press events.
2023-01-20 17:40:28 -05:00
2f53c942ac The scroll wheel scrolls the scroll box 2023-01-20 16:44:07 -05:00
Sasha Koshka
8a72e8bf01 Mouse test now conforms to new API 2023-01-19 15:05:13 -05:00
Sasha Koshka
c0d013a9fb X backend now conforms to new API 2023-01-19 15:02:56 -05:00
dcc7fcb251 Ok thats it next commit im getting rid of parent hooks 2023-01-19 13:07:27 -05:00
Sasha Koshka
5e3dfeaadd Progress bars
... And also the Do function works now
2023-01-17 20:16:03 -05:00
Sasha Koshka
375205a4d2 Core no longer naievely constrains canvas resize dimensions 2023-01-17 14:31:06 -05:00
Sasha Koshka
91e60900ad X backend now understands flexible min widths 2023-01-17 14:17:26 -05:00
e94e170a04 Half-working container flexibility propagation 2023-01-16 23:34:17 -05:00
76d50bb01a Renamed Expanding to Flexible 2023-01-16 22:27:17 -05:00
d9281b139f Labels may request an expanding height change 2023-01-16 18:04:41 -05:00
7754679710 Selectable elements can now request the selection to be moved 2023-01-16 13:49:32 -05:00
fb0795ec7b Keynav works flawlessly 2023-01-16 12:21:47 -05:00
77ef7554ac X backend conforms to new API 2023-01-15 12:23:13 -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
31fb42ab58 Vertical layout stub 2023-01-09 20:34:19 -05:00
Sasha Koshka
80aafdf60c Buttons respond to enter key, window auto-selects root child 2023-01-09 18:19:19 -05:00
70e0566f3f Styling now supports selection 2023-01-09 15:14:36 -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
7c6b9317fc Updated the X backend to reflect the new API change
The window no longer behaves like an element, and it sets an
entire ParentHooks struct instead of individual callbacks.
2023-01-09 11:21:23 -05:00
00d75d4488 Initial commit 2023-01-09 01:03:19 -05:00