Commit graph

17 commits

Author SHA1 Message Date
Ritchie Frodomar
d2565530ed Emoji support
* Add support for raw emoji parsing in TextWidget

* Fix SDL not honouring Wayland Support setting

* Fix improper markup parsing in TextWidget after emoji support was added

* Use Twemoji for emoji, and add support for COLR font glyphs.

* Add support for emoji rendering in TextWidget if the font is provided

* Add support for parsing emoji shortcodes in TextWidget

* Add emoji lookup table to AcidicGUI

* Add Noto Color Emoji font for future use
2024-11-27 02:35:56 +00:00
Ritchie Frodomar
79d5f00e99 New UI Visual Style System
* Move visual style types to their own files

* Use new visual style system for chat completion list

* Use new visual style system for window decorations

* Use new visual style system for chat message bubbles

* Add support for running actions inside GUI debugger

* Completely rewrite the UI debugger

* Fix scrollbars not rendering

* Argh. Blur is messed up in a way I can't describe.

* Minimize draw call overhead of widgets

* Don't use the same vertex and index buffer over and over again when rendering UI meshes. Create and cache buffers for each widget instead.

* Use actual blitting techniques when possible in IVirtualScreen.Blit

* Squeeze some extra performance out of the blur shader

* Optimize background blurs by only blurring the area under the widget

* Add support for region-to-region grabbing of the virtual screen

* Various widget property cache fixes

* Use new visual style system for window tabs

* Add support for dynamic text color in new style system

* Allow background blur darkening

* Optimize window dragging

* Use new visual style system for blur panels

* Use new visual style system for form fields

* Render input field caret in SociallyDistantVisualStyle

* Fix message dialog buttons calling their callbacks multiple times

* Use new visual style system for input fields

* Use new visual style for list items

* Use new visual style system for Dock

* Use new visual style system for the Status Bar

* Use new visual style system for decorative blocks

* Use new visual style system for toggles

* Use new visual style system for buttons and move buttons into AcidicGUI

* Add support for animated scrollbars

* Add support for click scrolling in ScrollBar

* Avoid layout updates when scrolling in a ScrollView

* Fix scrollbar not disappearing in scroll views that do not have enough content to scroll

* Add suppport for basic drag scrolling in ScrollView

* Add support for starting a drag and drop session from a MouseDown event

* Fix dropdowns not laying out their items properly after switch to new visual style system

* Fix handling of focus events when a mouse event results in a widget being created

* Consume all scroll events when a dropdown is open

* Use new visual style system for dropdown item backgrounds

* Use new visual style system for rendering all widget backgrounds

* Skip rendering widgets whose computed render opacity is zero, including rendering any of their children.

* Use new visual style system for dropdown item backgrounds

* Add support for drawing default widget backgrounds with the BackgroundStyle property

Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>

* Use new visual style system for scroll bars

Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>

* Split Scroll View and Scroll Bar into separate widgets

* Use new visual style system for Sliders

* Re-add support for mouse scrolling in Terminal
2024-11-03 19:15:27 +00:00
Ritchie Frodomar
75c8b5432c Fix various platform issues and slightly improve UI
* Fix crash on lower screen resolutions when clicking on Terminal

Mouse coordinates were not being scaled from screenspace into
canvas space, resulting in a crash when clicking on the Terminal.

Also add documentation for internal VirtualScreen
implementation, and define dynamic properties for
CanvasWidth and CanvasHeight in the UI system.

Issue: #13
Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>

* Remove old GuiService virtual screen and document IVirtualScreen

Whoever wrote that old code was high, fuck... wait a minute...

Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>

* Fix various errors after emergency rebase

* Remove Rider caches

* Attempt to enable Wayland support

* Add support for enabling/disabling Wayland support on Linux

* Move SettingsManager to GameApplication so settings can be loaded before the game engine fully boots.

* Test commit.

Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>

* Move Terminals to their own tile

* Add support for getting CPU name on Windows via registry

* Add support for disabling background blur

* Fix window hints not being restored when switching between main tool tabs

* Testing the DCO acknowledgement job

Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>
2024-10-28 03:17:01 +00:00
Ritchie Frodomar
e2cf7e12dd
Dependency conflict
Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>
2024-10-25 20:14:19 -04:00
Ritchie Frodomar
a39daf7c1f
Upgrade MonoGame packages
A fix was introduced for Windows that fixes a crash
when trying to build fonts on minimal Windows installs.

Issue: #14
Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>
2024-10-25 20:01:41 -04:00
Ritchie Frodomar
5cca93ffa3 Add support for clipboard
Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>
2024-08-24 14:01:25 -04:00
Ritchie Frodomar
1d15be232e Upgrade MonoGame to use Silk.NET.SDL
Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>
2024-08-23 22:47:26 -04:00
Ritchie Frodomar
08e39e64d2 Upgrade MonoGame
Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>
2024-08-22 23:48:42 -04:00
Ritchie Frodomar
d19e149dc9 Fix all warnings
Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>
2024-08-22 23:17:01 -04:00
Ritchie Frodomar
9d3911fb72 Fix dotnet tool manifest, so that --prerelease is no longer needed.
Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>
2024-08-22 13:52:14 -04:00
Ritchie Frodomar
19b4a7ea13 Fix mouse button events
Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>
2024-08-21 20:27:58 -04:00
Ritchie Frodomar
19e95e507a Switch to our custom MonoGame fork
Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>
2024-08-21 20:02:13 -04:00
Ritchie Frodomar
eb2bdd50e4 Add submodule for our flavour of MonoGame
Signed-off-by: Ritchie Frodomar <alkalinethunder@gmail.com>
2024-08-21 13:01:31 -04:00
Ritchie Frodomar
3fcb53b0ea Port Terminal (still in progress) 2024-07-09 22:26:46 -04:00
Ritchie Frodomar
d24ae2f680 Add support for text rendering 2024-07-03 16:42:12 -04:00
Ritchie Frodomar
8e710a82d0 Update gitignore 2024-06-29 14:22:49 -04:00
Ritchie Frodomar
5b6fd403f8 Port Developer Menu 2024-06-27 23:44:59 -04:00