Commit graph

34 commits

Author SHA1 Message Date
3f5735e10f Don't send mouse events to hidden scroller children 2023-01-05 18:35:39 +03:00
b9a5861e85 Make ui::find_element_by_id traverse children in reverse order 2022-05-28 15:52:13 +03:00
21ae912271 Add ui::find_element_by_id 2022-05-25 22:55:25 +03:00
924533fc7f Add ui::element::id 2022-05-25 22:55:12 +03:00
e05a28463d Fix reshape caching 2022-05-23 20:32:49 +03:00
1af6f26e80 Simplify reshaping logic 2022-05-23 20:07:40 +03:00
4c106cc4c6 Make ui::element store style as non-const 2022-05-15 13:17:20 +03:00
49e3e2e07b Mark ui::element::style_updated/own_style_updated as const 2022-05-14 16:05:24 +03:00
6aebd8c931 Introduce ui::element::{width,height}_constraint - constraints on one dimension given the size in another dimension 2022-04-16 17:16:09 +03:00
7848d5a8b3 Add text input helpers in ui::element 2022-04-01 17:43:12 +03:00
440b7b6214 Add an assert in ui::element::set_parent to prevent changing element's parent without removing from old parent first 2022-03-30 19:35:15 +03:00
b6ddd70989 Implement ui element hinting support 2022-03-29 18:14:43 +03:00
036c1c543f Call style_updated when ui element parent changes 2022-03-17 15:23:47 +03:00
e237959894 Add ui::element::style_updated & own_style_updated replacing set_style(style()) 2022-03-11 13:11:47 +03:00
4922877431 Don't update ui style elements list when updating to the same style 2022-03-11 00:48:10 +03:00
4dcac2a5ac Make ui styles update elements on change 2022-03-10 17:36:17 +03:00
4a6d3a9d88 Add ui helper for sending fake mouse move events to force mouseover status 2022-03-10 12:19:57 +03:00
98ab4ee39d Fix element reshape caching 2022-03-01 14:17:56 +03:00
742ae9e21e Fix propagating reshape_posted flag 2022-02-19 19:23:20 +03:00
aca553c566 Propagate reshape_posted to and from parents 2022-02-19 16:39:43 +03:00
2004f8043a Don't post ui reshape if one if already posted 2022-02-19 16:36:17 +03:00
a01bd019f8 Support delaying posted callbacks until a ui element gets attached to an event loop 2022-02-02 22:05:40 +03:00
7499785c72 Support non-propagating styles in ui elements 2021-10-13 22:52:45 +03:00
4139c9b5c0 Make ui::element::post const 2021-07-03 23:37:58 +03:00
4641c5d7d2 UI element::post uses movable function 2021-03-04 14:30:46 +03:00
ea46e820ab UI elements should explicitly reset parent for their children 2021-03-04 13:58:15 +03:00
5dda61ab50 UI: use async::event_loop instead of abstract async::executor 2021-03-03 13:03:32 +03:00
b37d2d25c7 Implement cached style merging 2021-02-27 20:21:50 +03:00
93a28062b9 UI: use closest loop for ui events instead of root loop 2021-02-27 10:58:22 +03:00
539799814e UI element::loop & style return first non-null result when going up element tree 2021-02-27 10:54:34 +03:00
79e0009422 Don't warn if ui callback was posted without loop 2021-02-25 21:03:27 +03:00
8c04087a44 Add loop posting utilities in ui::element 2021-02-25 14:59:53 +03:00
b7014f2eda Add style description & use it in default element factory 2021-02-25 10:36:50 +03:00
a53b32067f UI library prototype wip 2021-02-25 09:07:39 +03:00