Commit Graph

428 Commits

Author SHA1 Message Date
Sasha Koshka 1a66224648 X backend window sets itself as parent (oops) 2023-03-15 01:43:32 -04:00
Sasha Koshka 275e113e3b Fun elements now conform to new API 2023-03-15 01:42:07 -04:00
Sasha Koshka 0015820fac Basic elements now conform to new API 2023-03-15 01:41:23 -04:00
Sasha Koshka f4799ba03d Testing elements now conform to new API 2023-03-14 19:41:36 -04:00
Sasha Koshka 14ad35d85c X backend now conforms to new API changes 2023-03-14 18:54:24 -04:00
Sasha Koshka a34e8768ab Redid cores to conform to the new API changes 2023-03-14 18:30:32 -04:00
Sasha Koshka b08cbea320 Overhauled the element interfaces
Instead of the previous parenting model where parents would set
child callbacks during adoption by probing for callback setters,
child elements will instead probe their parents for notify methods
listed in the standard parent interfaces. This means that an
element cannot be half-parented to something, nor can it be
parented to two things at once. Parent elements may themselves
fulfill these interfaces, or they can pass a hook that fulfills
them to the child.
2023-03-14 17:08:39 -04:00
Sasha Koshka 9d84c50db3 Merge pull request 'flexible-elements-were-a-mistake' (#11) from flexible-elements-were-a-mistake into main
Reviewed-on: sashakoshka/tomo#11
2023-03-14 03:37:58 +00:00
Sasha Koshka 99e029ae09 TextBox no longer aggressively requests focus 2023-03-13 22:25:57 -04:00
Sasha Koshka 5149c27cf3 Added untested label collapse 2023-03-13 17:10:27 -04:00
Sasha Koshka 7ef95cc751 Removed unneeded Container.reflectChildProperties() 2023-03-12 01:57:56 -05:00
Sasha Koshka b09994973c List and Piano do shattering properly 2023-03-12 01:47:58 -05:00
Sasha Koshka 37048c6759 Raycaster runs? 2023-03-12 01:33:05 -05:00
Sasha Koshka be45f7ad71 Fixed some artist bugs 2023-03-12 01:23:20 -05:00
Sasha Koshka c45268d8c1 Testing elements now conform to the new API 2023-03-12 01:19:40 -05:00
Sasha Koshka 92e5822185 Basic and fun elements conform to new API change 2023-03-12 01:15:36 -05:00
Sasha Koshka d31aee1ba8 X backend now follows API 2023-03-12 01:06:12 -05:00
Sasha Koshka 0f8affd2b2 Made similar changes to the Pattern interface and all of artist 2023-03-12 01:04:06 -05:00
Sasha Koshka 3d28ebe4cf Made interfacial changes that will allow for elements to be clipped 2023-03-12 00:17:35 -05:00
Sasha Koshka 5afbc0e713 DocumentContainer constrains its scroll position on resize 2023-03-11 20:04:08 -05:00
Sasha Koshka b7a7800370 DocumentContainer has a proper minimum width 2023-03-11 19:25:35 -05:00
Sasha Koshka 15fa3b2497 Quelled some of the strangeness 2023-03-11 18:27:16 -05:00
Sasha Koshka 081b005679 Added a somewhat buggy DocumentContainer 2023-03-11 18:00:29 -05:00
Sasha Koshka 1be769526d Removed references to flexible from containers 2023-03-11 00:48:15 -05:00
Sasha Koshka 51084a6cfe Removed references to flexible from layouts, x backend, core 2023-03-11 00:43:26 -05:00
Sasha Koshka 677dca1dbf ScrollContainer uses ScrollBar for scrolling 2023-03-11 00:21:54 -05:00
Sasha Koshka 9cc9e78504 Large icons in the default set! 2023-03-10 18:53:27 -05:00
Sasha Koshka 5d4a26a877 AnalogClock is no longer flexible. 2023-03-10 13:45:53 -05:00
Sasha Koshka aaa794ac04 ScrollBar handles scroll wheel events 2023-03-10 13:42:51 -05:00
Sasha Koshka 8658ecd879 Sort of fixed a flexible height bug 2023-03-10 00:10:26 -05:00
Sasha Koshka 1c28613981 The scroll bar is better 2023-03-09 23:27:08 -05:00
Sasha Koshka 8e1638e054 I may have fixed the wierd scrollbar rendering
And something else I didn't realize was there
2023-03-09 22:23:09 -05:00
Sasha Koshka aff9aca835 We now have an untested lone scrollbar element 2023-03-09 18:15:52 -05:00
Sasha Koshka cf672824a6 im dumb as hell bruh 2023-03-08 21:05:56 -05:00
Sasha Koshka 04884bd8e3 Oh my joodness 2023-03-08 20:41:48 -05:00
Sasha Koshka 305acea285 Use ezprof to profile 2023-03-08 20:24:43 -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 803812f9c9 Texture pattern now samples X position correctly 2023-03-06 21:40:20 -05:00
Sasha Koshka c171273240 Sped up rendering significantly 2023-03-06 21:34:14 -05:00
Sasha Koshka 11402cfc25 Button applies the sink offset correctly to icons 2023-03-05 11:20:33 -05:00
Sasha Koshka 7e0d64e8bd TextBox text is now vertically centered 2023-03-05 10:58:27 -05:00
Sasha Koshka d38bd1cbf5 Hiding button text actually works now 2023-03-05 00:31:41 -05:00
Sasha Koshka 865dd20724 Buttons can now hide their text 2023-03-05 00:23:45 -05:00
Sasha Koshka 6c46fc6f7c Made a few icons blacker 2023-03-05 00:07:37 -05:00
Sasha Koshka 0071994ba6 Buttons can now have icons 2023-03-05 00:05:56 -05:00
Sasha Koshka 11c747e225 Dialog boxes now have icons 2023-03-04 23:09:46 -05:00
Sasha Koshka 61bbe0e346 Added an Icon element 2023-03-04 22:56:44 -05:00
Sasha Koshka 1e8bb56b7c Added small icons to default theme 2023-03-04 22:07:59 -05:00
Sasha Koshka ae6cf128f8 Created Icon interface 2023-03-04 20:48:46 -05:00