Commit Graph

70 Commits

Author SHA1 Message Date
Sasha Koshka c1e2bf46a6 TextBox supports copy/paste with keyboard commands 2023-03-31 03:25:46 -04:00
Sasha Koshka 7b300333cf I am going insane 2023-03-31 01:06:29 -04:00
Sasha Koshka 53bfc8df68 Re-organized module structure 2023-03-30 23:19:04 -04:00
Sasha Koshka 6456759bfc The targets list now has the proper type of ATOM 2023-03-30 20:51:11 -04:00
Sasha Koshka 0d4104255c Selection data is property sent to the requestor 2023-03-30 18:52:29 -04:00
Sasha Koshka 17422cc054 selectionClaim seeks to the start of the data before reading it 2023-03-30 18:42:40 -04:00
Sasha Koshka a16f3c2cd7 TARGETS list is now properly assembled 2023-03-30 18:32:14 -04:00
Sasha Koshka 017543aa0f Temporary redirect to patched xgbutil that will only work on my machine 2023-03-30 18:05:29 -04:00
Sasha Koshka f9e5503320 Pasting implemented (nonworking) 2023-03-30 13:10:58 -04:00
Sasha Koshka 8abc4defa7 Fixed INCR
Oops!
2023-03-29 23:24:42 -04:00
Sasha Koshka fc228a13d3 Fleshed out the mime type conversion method a bit 2023-03-29 12:33:57 -04:00
Sasha Koshka 1ebf5e1103 Implemented INCR selection properties 2023-03-29 12:27:23 -04:00
Sasha Koshka ab61615018 X backend generates mime type from owner response 2023-03-29 03:03:13 -04:00
Sasha Koshka 39dc09bc4a X backend clipboard properly negotiates data type with owner
The clipboard API has been changed to allow an application to
accept a number of different mime types, and the X backend will now
check the accepted types list against the owner's TARGETS list and
choose the best one.
2023-03-29 02:55:12 -04:00
Sasha Koshka 0aede3502b This should have been several separate commits 2023-03-29 00:50:23 -04:00
Sasha Koshka 6f15ff3366 We now set the target atom properly 2023-03-28 01:00:54 -04:00
Sasha Koshka 01a0fc1bd3 You can fcucking PASTE now!!! 2023-03-27 20:44:39 -04:00
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