Jonathan Johnson
8f2ff1b5dc
Sliders now draw round-rect tracks
2023-11-20 12:13:31 -08:00
Jonathan Johnson
bb66803653
Custom widget, layout size rounding
...
Closes #56
2023-11-20 10:11:10 -08:00
Jonathan Johnson
9c1c77f9b1
Updated winit
2023-11-20 06:32:58 -08:00
Jonathan Johnson
4af82ae188
Component type safety, some font support
2023-11-19 21:52:45 -08:00
Jonathan Johnson
92249047ce
Fixing Input selection to the left of the input
2023-11-19 15:46:52 -08:00
Jonathan Johnson
ca58cb5fcf
Fixing password field clicking
2023-11-19 15:38:26 -08:00
Jonathan Johnson
d5bde44e27
Subpixels + Feathering + figures refactor
...
Much curves
2023-11-19 10:34:06 -08:00
Jonathan Johnson
aea9def07d
Rounded rect drawing
2023-11-18 14:45:02 -08:00
Jonathan Johnson
8ae315e229
Drawing refactor from Kludgine
2023-11-17 08:07:37 -08:00
Jonathan Johnson
c39f8f33ad
Rewrote text input
...
Also implemnted secure/masked input
Closes #58
2023-11-16 15:34:26 -08:00
Jonathan Johnson
a8841e6f1c
Merge branch 'main' into feature/world-coords
2023-11-15 18:45:39 -08:00
Jonathan Johnson
1ed1a95a1d
Input copy/paste works now
...
Also updated to wgpu 0.18.1
2023-11-15 14:25:59 -08:00
Jonathan Johnson
42840b950c
Hover updates after widget removal
...
This also fixes some inconsistencies that arose when the focus widget
was "stuck" on a removed widget. Button previously handled it hackily in
a redraw function, but now Gooey handles it automatically without
needing to wait for a repaint.
2023-11-15 12:41:41 -08:00
Jonathan Johnson
5506a24dae
Added WidgetCacheKey
2023-11-15 10:36:00 -08:00
Jonathan Johnson
534f676ef0
Enable/disable is now handled for all widgets
...
Closes #66
2023-11-15 10:23:42 -08:00
Jonathan Johnson
5a9aa6b55d
Tic-tac-toe, Buttons labels now stretch to fill
2023-11-15 09:32:28 -08:00
Jonathan Johnson
947f1cd8a7
Stack with premeasured content now work
...
This makes nested scroll areas work correctly.
2023-11-15 07:47:23 -08:00
Jonathan Johnson
54e01f1911
Checkbox, ButtonKind, linked/linked_string + more
2023-11-14 20:39:29 -08:00
Jonathan Johnson
89c8805924
Refactored switcher to use Dynamic<WidgetInstance>
2023-11-14 13:24:23 -08:00
Jonathan Johnson
4c7c3be5ba
Helpers galore
2023-11-14 09:31:56 -08:00
Jonathan Johnson
b72e4b0caf
Optimizing Stack layout in Known dimensions
2023-11-14 07:59:13 -08:00
Jonathan Johnson
a04619a279
Layout caching, Lerp underflow fix, label fix
2023-11-14 07:38:39 -08:00
Togglebit
fa56922594
try to update the player colour based on mouse position (currently not working)
2023-11-14 08:51:57 +01:00
Togglebit
1d80f8467c
removed comment
2023-11-14 08:23:09 +01:00
Togglebit
bb5a0a2ab2
fixed cargo.lock issue with rustix, removed duplicate methods from merge
2023-11-14 08:20:41 +01:00
Togglebit
fd362c7341
world coords and hover state for tilemap (this is very much debug)
2023-11-14 08:06:08 +01:00
Jonathan Johnson
cc7d4bac45
Merge pull request #74 from ModProg/button-fun
...
button outline without drawing
2023-11-13 16:29:41 -08:00
Jonathan Johnson
40343e163f
Scroll fixes, resize helpers
2023-11-13 11:30:45 -08:00
Jonathan Johnson
ee3813f44d
Switcher, h/v expand
2023-11-13 09:14:38 -08:00
Roland Fredenhagen
90884a8184
format
2023-11-13 17:03:53 +01:00
Roland Fredenhagen
7467f6408e
working outline
2023-11-13 17:03:53 +01:00
Roland Fredenhagen
4a4578bdd6
button outline without drawing
2023-11-13 17:03:51 +01:00
Jonathan Johnson
07b93397c5
Optimizations
2023-11-12 19:54:10 -08:00
Jonathan Johnson
96d407ddc2
Container, query_parent_style
2023-11-12 13:37:32 -08:00
Jonathan Johnson
2a50bb32d4
define_components embrace, sanitize, docs, export
2023-11-12 09:21:49 -08:00
Jonathan Johnson
849710dbb1
Diverging from material
...
Introducing two new colors:
- ColorTheme::color_dim, for dimmed/disabled primary colors
- SurfaceTheme::opaque_widget, for buttons.
In material design, a button's background color uses the Highest
Container role, which seems incorrect because then buttons wouldn't have
a different color when placed inside of the highest level container.
Rather than remove a container level, I added one more tone using the
neutral variant.
Other changes are just gut feelings to have a slightly richer dark
theme. I feel like material is a little muddy in dark mode.
2023-11-12 07:55:28 -08:00
Jonathan Johnson
b3bef345a5
Tweaking highlight color and focus ring drawing
2023-11-12 07:24:59 -08:00
Jonathan Johnson
022880822c
Rest of merge
...
I started making more changes, and I lost track of what was merge
related and what wasn't, so I committed the merge with what was staged,
but it probably didn't compile.
This is the remaining changes to get things back to a state I'm happy
with, mostly tweaking the constrast behavior.
2023-11-11 20:20:09 -08:00
Jonathan Johnson
6220394df2
Merge branch 'main' into button-fun
2023-11-11 20:18:06 -08:00
Roland Fredenhagen
a5dfd06f90
more styles
2023-11-12 02:15:09 +01:00
Jonathan Johnson
d07dcdc9aa
Paired dynamics are now possible
...
Also sliders look better
2023-11-11 16:51:07 -08:00
Roland Fredenhagen
83cb88925a
Make button take MakeWidget
2023-11-12 00:38:43 +01:00
Jonathan Johnson
27d5baef5d
ThemeMode
2023-11-11 13:41:34 -08:00
Jonathan Johnson
68339dfb62
Scroll fixes
2023-11-11 10:23:24 -08:00
Jonathan Johnson
eb4b24f4a9
Slider
2023-11-11 09:42:53 -08:00
Jonathan Johnson
972a1c1c13
Button/input outline, Input select all
2023-11-10 19:29:24 -08:00
Jonathan Johnson
d844a44b33
Refactored LabelBackground to WidgetBackground
2023-11-10 18:15:45 -08:00
Jonathan Johnson
81f6f8c4d3
Theme example reacts
2023-11-10 18:11:31 -08:00
Jonathan Johnson
e471cb0ea5
Removing debug statements
2023-11-10 15:55:23 -08:00
Jonathan Johnson
95c1f2a01a
Fixing DimensionRange for ..=
2023-11-10 15:46:38 -08:00
Jonathan Johnson
60e85c78d0
Resize exact fix, stack overflow now works
2023-11-10 15:11:46 -08:00
Jonathan Johnson
e683b7d31f
fill(), expand at root, Space::colored
2023-11-10 12:20:56 -08:00
Jonathan Johnson
d7384b63d8
Added WIP theming system
2023-11-10 09:39:33 -08:00
Jonathan Johnson
724f6d7b18
Resize now accepts ranges, Window honors Resize
...
Closes #62 , Closes #63
2023-11-09 14:54:41 -08:00
Jonathan Johnson
1714948174
Styles are now reactive
2023-11-09 10:42:56 -08:00
Jonathan Johnson
a2e28cb522
Dynamic::take, align helpers, scroll fix
...
Scroll was previously taking the graphics region as its control size as
opposed to the constraints. This was due to this code originally living
in redraw. This fixes scroll areas being able to scroll their contents
fully when sharing window space with other widgts.
2023-11-09 10:04:09 -08:00
Jonathan Johnson
85928675ab
AutoFocusableControls, LayoutOrder
2023-11-09 08:51:24 -08:00
Jonathan Johnson
e4092532d3
Line scroll honors LineHeight, ignore no scroll
2023-11-09 07:58:59 -08:00
Jonathan Johnson
58b98a9a16
LinearInterpolation now requires PartialEq
...
This also means that if an animation is animating over discrete values
and the actual value has not changed, the Dynamic will no longer detect
a change because it's now using update instead of set.
2023-11-09 07:46:02 -08:00
Jonathan Johnson
a818cc41fd
TileMap focus, Style helpers
2023-11-09 06:58:58 -08:00
Jonathan Johnson
8e268615a1
WrapperWidget, Space
2023-11-08 19:09:59 -08:00
Jonathan Johnson
747813f6b8
Button.enabled
2023-11-08 12:37:58 -08:00
Jonathan Johnson
a8cd3df22c
Better Input keyboard event handling
2023-11-08 11:21:45 -08:00
Jonathan Johnson
bf9836a82b
Default + Cancel widgets
2023-11-08 11:03:17 -08:00
Jonathan Johnson
fc165628e5
Input no longer blinks in the background
...
Also, Expand now expands properly.
2023-11-08 08:44:16 -08:00
Jonathan Johnson
ca42ecc956
Fixed mouse events + docs
2023-11-07 16:43:19 -08:00
Jonathan Johnson
5e5d826267
Checkpoint
...
Progress on tab focus
2023-11-07 15:16:29 -08:00
Jonathan Johnson
e7b4fe00b6
Updating to intentional
2023-11-06 14:30:03 -08:00
Jonathan Johnson
fbf6134a0a
Initial window focus
2023-11-06 06:19:41 -08:00
Jonathan Johnson
0f6d3838b1
LayoutContext
...
measure() now is layout(). LayoutContext can either persist layout
information or be used temporarily for measurement. While this caching
is constantly thrown out currently, this is a step towards being able to
only re-layout widgets if they've been invalidated.
2023-11-05 11:50:59 -08:00
Jonathan Johnson
6f5ffd80b4
Easing functions as styles
2023-11-03 13:37:27 -07:00
Jonathan Johnson
32b5e16695
Fixing size_to_fit unit test
...
Part of the refactor yesterday made Stack's size-to-fit behavior work in
both dimensions.
2023-11-03 07:21:17 -07:00
Jonathan Johnson
501eecd7a5
Async, better scroll, Input::on_key
2023-11-03 07:15:34 -07:00
Jonathan Johnson
0026a6db0d
Resize/Expand rework + basic readme
2023-11-02 14:23:36 -07:00
Jonathan Johnson
a95a7dc850
Spacing widget
2023-11-02 10:09:03 -07:00
Jonathan Johnson
ed31805693
Tuple animations
2023-11-02 07:48:30 -07:00
Jonathan Johnson
64f46a46e2
Button animations, hover fixes, ComponentType
2023-11-01 20:11:05 -07:00
Jonathan Johnson
6b8e5f886b
Update scroll example + work around cosmic_text
...
I decided scrolling a label would work better, so I loaded a source file
and noticed it wasn't rendering quite right in the label. It turns out
that the text wrapping was triggering despite the width in redraw being
the same as the measured amount. In short: sometimes the width I measure
can't be the width I set as the cosmic_text::Buffer size, because it
will cause it to wrap.
I've worked around it by caching the measured text for now. But it may
still show up in other situations and may require a more generalized
fix by seeing what else we can gleam from the glyphs being measured.
2023-11-01 15:43:56 -07:00
Jonathan Johnson
79be9a063b
Scroll and Animations
...
Scroll is only working to the absolute barest of requirements.
2023-11-01 15:15:14 -07:00
Jonathan Johnson
93a9545cc4
Renamed Array to Stack
2023-10-30 21:41:14 -07:00
Jonathan Johnson
c9c4c9aeed
Documentation
2023-10-30 21:12:04 -07:00
Jonathan Johnson
04e5381187
Added Tick to TileMap
2023-10-29 08:41:50 -07:00
Jonathan Johnson
c84ff988f3
Added TileMap widget
2023-10-27 15:28:51 -07:00
Jonathan Johnson
90593e1938
Updates for Kludgine text refactor
2023-10-27 14:23:42 -07:00
Jonathan Johnson
5b94d37b6f
Callback can now return a result
2023-10-27 12:25:31 -07:00
Jonathan Johnson
304032f1b0
Run, MakeWidget, styles!
2023-10-27 10:41:13 -07:00
Jonathan Johnson
69f6f68ba6
Added blinking cursor
2023-10-25 09:08:53 -07:00
Jonathan Johnson
dc6c22372b
Refreshing after ime input
2023-10-19 15:03:47 -07:00
Jonathan Johnson
983b6a97ad
More progress on input/event handling
2023-10-19 14:56:18 -07:00
Jonathan Johnson
8607fc51d2
Enabling IME
2023-10-18 16:07:26 -07:00
Jonathan Johnson
87578e5c76
Progress towards an input widget
2023-10-18 15:44:13 -07:00
Jonathan Johnson
e04b1b14ad
Added keyboard_input
2023-10-18 08:51:11 -07:00
Jonathan Johnson
fc707835f5
Initial commit
2023-10-18 08:22:41 -07:00