Commit Graph

40 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 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 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 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 0f9a33fc57 Refactored the X backend draw code a bit 2023-01-26 18:01:39 -05:00
Sasha Koshka 4692b2c898 oh mmy god 2023-01-26 02:08:07 -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 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 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 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
Sasha Koshka 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
Sasha Koshka 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
Sasha Koshka 00d75d4488 Initial commit 2023-01-09 01:03:19 -05:00