Commit Graph

53 Commits

Author SHA1 Message Date
Sasha Koshka 6a3f45a2e0 Set transient for on panels
This makes panels behave as expected. It feels incredibly wrong but
shotcut does it, it can't be that bad.
2023-03-24 22:49:53 -04:00
Sasha Koshka 3aa8495873 Terrible discovery (panels don't work properly) 2023-03-24 17:38:21 -04:00
Sasha Koshka bdc1109bcf Modal dialogs lock the window's input until they are closed 2023-03-24 01:31:40 -04:00
Sasha Koshka d710d13f0d Added the ability to make different window types 2023-03-24 00:34:25 -04:00
Sasha Koshka b90ffeb4fd X backend window disowns child before closing
This prevents elements from drawing to a closed window (causing
xgb to print an error)
2023-03-16 14:42:18 -04:00
Sasha Koshka c55925d152 Added a package that just links all backends 2023-03-16 01:14:39 -04:00
Sasha Koshka 11b680db63 Added package summaries to more packages 2023-03-16 01:10:59 -04:00
Sasha Koshka c1b3562d10 It compiles 2023-03-15 23:47:13 -04:00
Sasha Koshka 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
Sasha Koshka d31aee1ba8 X backend now follows API 2023-03-12 01:06:12 -05:00
Sasha Koshka 51084a6cfe Removed references to flexible from layouts, x backend, core 2023-03-11 00:43:26 -05:00
Sasha Koshka f3c1c95a57 Keyboard control for sliders 2023-03-07 19:13:08 -05:00
Sasha Koshka 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
Sasha Koshka 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
Sasha Koshka 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
Sasha Koshka 43fea5c8ba Tomo will call the parse functions in Theme and Config 2023-02-03 17:50:45 -05:00
Sasha Koshka d79701d01b X backend conforms to new API 2023-02-03 01:35:59 -05:00
Sasha Koshka 99942466f8 Updated X backend to match 2023-02-02 01:47:55 -05:00
Sasha Koshka 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
Sasha Koshka 801c3ef6f5 Hocus focus 2023-01-30 17:01:47 -05:00
Sasha Koshka 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
Sasha Koshka 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
Sasha Koshka 4692b2c898 oh mmy god 2023-01-26 02:08:07 -05:00
Sasha Koshka 92a9c9370d Scrollbars respond to mouse dragging more naturally 2023-01-21 01:24:24 -05:00
Sasha Koshka 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
Sasha Koshka 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
Sasha Koshka 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
Sasha Koshka e94e170a04 Half-working container flexibility propagation 2023-01-16 23:34:17 -05:00
Sasha Koshka 76d50bb01a Renamed Expanding to Flexible 2023-01-16 22:27:17 -05:00
Sasha Koshka d9281b139f Labels may request an expanding height change 2023-01-16 18:04:41 -05:00
Sasha Koshka 7754679710 Selectable elements can now request the selection to be moved 2023-01-16 13:49:32 -05:00
Sasha Koshka fb0795ec7b Keynav works flawlessly 2023-01-16 12:21:47 -05:00
Sasha Koshka 77ef7554ac X backend conforms to new API 2023-01-15 12:23:13 -05:00
Sasha Koshka 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
Sasha Koshka 519e0b9c6b Keynav moment 2023-01-11 22:30:14 -05:00
Sasha Koshka 80c0a6be71 Window attempts to advance child's selection on alt-tab 2023-01-11 18:32:02 -05:00
Sasha Koshka 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
Sasha Koshka 70e0566f3f Styling now supports selection 2023-01-09 15:14:36 -05:00