Commit Graph

773 Commits

Author SHA1 Message Date
Francisco Vallarino
b0e513dd87 Remove old Common.Keyboard module. Remove unused imports 2020-05-10 18:41:44 -03:00
Francisco Vallarino
dc6e899ddd Refactor Graphics module into top level folder 2020-05-10 18:30:33 -03:00
Francisco Vallarino
b08b241605 Refactor Events module into top level folder 2020-05-10 16:41:27 -03:00
Francisco Vallarino
ff31652e93 Comment out type signatures in Main. Remove unused Main/Types module 2020-05-10 15:26:06 -03:00
Francisco Vallarino
25f49d08ef Reduce coupling in child modules 2020-05-09 20:20:02 -03:00
Francisco Vallarino
c23d406e3f Split Main into several library modules 2020-05-09 18:57:24 -03:00
Francisco Vallarino
7615eacd98 Pass app as parameters 2020-05-08 01:21:22 -03:00
Francisco Vallarino
14cc56c763 Pass buildUI as parameter, make more functions polymorphic 2020-05-07 17:04:27 -03:00
Francisco Vallarino
53c21abb17 Make more functions polymorphic 2020-05-07 17:04:27 -03:00
Francisco Vallarino
8dbd5714a8 Make handleAppEvents polymorphic. Move method inside GUIContext 2020-05-07 17:04:27 -03:00
Francisco Vallarino
a1a877e5f5 Simplify Widget API. Remove usage of MonadState at the Widget level 2020-05-07 17:04:27 -03:00
Francisco Vallarino
2d2fbe329c Avoid MonadState in Widget API 2020-05-07 17:04:27 -03:00
Francisco Vallarino
76cb82295d Don't use Seq for events 2020-05-07 17:04:27 -03:00
Francisco Vallarino
338673a313 Rename project from hs-gui to monomer 2020-05-07 17:04:27 -03:00
Francisco Vallarino
eb6fd9ad59 Update tasks 2020-05-07 17:04:27 -03:00
Francisco Vallarino
c417be6e25 Improve fps counter 2020-05-07 17:04:27 -03:00
Francisco Vallarino
8068bc3270 Add buggy frame counter 2020-05-07 17:04:27 -03:00
Francisco Vallarino
9bbc558c2c Call Renderer's begin/end 2020-05-07 17:04:27 -03:00
Francisco Vallarino
f432b149de Reorganize tasks 2020-05-07 17:04:27 -03:00
Francisco Vallarino
b205e510a1 Remove unneeded type 2020-05-07 17:04:27 -03:00
Francisco Vallarino
678cad0a6e Handle backwards focus change 2020-05-07 17:04:27 -03:00
Francisco Vallarino
9c6e6a381e Fix TextField state handling error 2020-05-07 17:04:27 -03:00
Francisco Vallarino
abcee7e5a7 Rename helper functions 2020-05-07 17:04:27 -03:00
Francisco Vallarino
b2db7cbd46 Use user's state if available 2020-05-07 17:04:27 -03:00
Francisco Vallarino
48a0fad519 Handle async user tasks 2020-05-07 17:04:27 -03:00
Francisco Vallarino
e3b007f9ca Simplify EventRequest data type 2020-05-07 17:04:27 -03:00
Francisco Vallarino
e0f25a8bdc Have widgets update user state with corresponding data 2020-05-07 17:04:27 -03:00
Francisco Vallarino
2fa8e0c3df Refactor handleWidgetEvents into several functions/types. Initial logic to handle user state updates 2020-05-07 17:04:27 -03:00
Francisco Vallarino
d2ea305d0b Rename KeyMotion to KeyStatus 2020-05-07 17:04:27 -03:00
Francisco Vallarino
dd6af38812 Store keyboard and mouse status 2020-05-07 17:04:27 -03:00
Francisco Vallarino
a167bddd8a Add enter/move/leave mouse support 2020-05-07 17:04:27 -03:00
Francisco Vallarino
fd8f770141 Only blink cursor if textField is focused 2020-05-07 17:04:27 -03:00
Francisco Vallarino
208557e158 Add support for Focus/Blur events 2020-05-07 17:04:27 -03:00
Francisco Vallarino
2a5e0a614f Remove unused code 2020-05-07 17:04:27 -03:00
Francisco Vallarino
74e13a7e6b Draw caret without splitting text 2020-05-07 17:04:27 -03:00
Francisco Vallarino
a7ca7cc1a9 Handle fixed size on instances 2020-05-07 17:04:27 -03:00
Francisco Vallarino
f2c798e339 Handle node visibility 2020-05-07 17:04:27 -03:00
Francisco Vallarino
548e18a5af Use simple type for Color (remove sum type) 2020-05-07 17:04:27 -03:00
Francisco Vallarino
e2e004d8e4 Handle HiDPI and window resizing 2020-05-07 17:04:27 -03:00
Francisco Vallarino
5ce49c30a4 Add clipboard support. Refactor a bit more. Use HiDPI mode 2020-05-07 17:04:27 -03:00
Francisco Vallarino
efbcf92649 Refactor modules a bit more 2020-05-07 17:04:27 -03:00
Francisco Vallarino
3cdc2e3c13 Refactor event handling logic, make textField handle Unicode text 2020-05-07 17:04:27 -03:00
Francisco Vallarino
af4fe933f5 Remove unused language extensions 2020-05-07 17:04:27 -03:00
Francisco Vallarino
f1c2f7fe8a Add vstack, make scroll assign all available space if contained widget is smaller and make textfield claim correct size if text is empty 2020-05-07 17:04:27 -03:00
Francisco Vallarino
7a32b47238 Refactor layout components 2020-05-07 17:04:27 -03:00
Francisco Vallarino
41df700e67 Consider renderArea when resizing 2020-05-07 17:04:27 -03:00
Francisco Vallarino
01b7363f30 Partial commit (working, pending improvements) of resizable grid/hstack 2020-05-07 17:04:27 -03:00
Francisco Vallarino
2c2ce94080 Add state save/restore handling 2020-05-07 17:04:27 -03:00
Francisco Vallarino
23284c8c2e Refactorings 2020-05-07 17:04:27 -03:00
Francisco Vallarino
91cfa8fa82 Refactor large blocks of code into smaller, named, functions. Reuse! 2020-05-07 17:04:27 -03:00