Michael Aaron Murphy
2b0227d34f
feat(iconsource): additional helper methods for creating handles
2023-01-19 19:58:31 +01:00
Michael Aaron Murphy
b3d550cc5e
feat!(segmented-button): improved interfaces and documentation
...
BREAKING CHANGE: Various type and function names have changed to reflect
themselves better in documentation. Code has been reorganized into
separate modules with a better placement in libcosmic. Most of the
functions, types, and modules now have documentation and examples.
These changes no longer require the `Model` type to define the
data/component type that it stores. The component functionality is now
optional, and it's also possible to associate many components to an item
with one component per type. This has had a side effect of simplifying a
lot of the type signatures in the implementation.
Before, to insert an item into the model, you had to define a
`SegmentedItem` and a `Component` on insert, and get back an ID for that
item. Which makes it difficult to define an item that contains only an
icon or has no components. And requires an extra insert function to
activate the item on insert.
Now, there is a flexible builder-style API for configuring
newly-inserted items in the model. So the complexity for inserting and
retrieving values from the model has decreased significantly
2023-01-19 19:58:31 +01:00
Michael Aaron Murphy
095e4c1acd
chore(vscode): rust-analyzer key for overrideCommand changed
2023-01-19 19:58:31 +01:00
Ashley Wulber
2ce171e5ad
feat: dyrend
2023-01-19 08:28:37 -07:00
Ian Douglas Scott
cd19bbf37a
Re-export iced_sctk when build with wayland feature
2023-01-18 16:59:10 -07:00
Ian Douglas Scott
db2e6c236d
When built with tokio, provide a SingleThreadExecutor
...
An application can (optionally) use this to spawn a single tokio thread
instead of one per processor thread.
2023-01-18 16:59:10 -07:00
Eduardo Flores
abf8fc96c2
feat(widget): add warning widget
2023-01-17 16:49:52 +01:00
Victoria Brekenfeld
aa4a5e1e18
chore(ci): Test variant without shell
2023-01-17 13:47:47 +01:00
Victoria Brekenfeld
1d4c233ab2
chore(deps): Update iced
2023-01-17 13:47:47 +01:00
Victoria Brekenfeld
b6c09aaa85
improv(widget/headerbar): Allow owned string ( #73 )
2023-01-17 13:47:44 +01:00
Ashley Wulber
2c1216c725
chore(deps): update iced
2023-01-17 13:45:33 +01:00
Michael Aaron Murphy
f441a364a6
feat: add keyboard_nav module with unfocus support
2023-01-10 20:49:49 +01:00
Michael Aaron Murphy
352bf8e401
improv: use current design for nav bar toggle button
2023-01-10 20:49:49 +01:00
Michael Aaron Murphy
c4bd0fa3d8
feat: Re-orderable positioning of items in segmented button
...
Calling `model.swap_position(key1, key2)` will swap the positions of
these two items in the model.
2023-01-10 20:49:49 +01:00
Michael Aaron Murphy
a55f41fc42
chore: fix cosmic-sctk with a partial sync of cosmic
2023-01-10 20:49:49 +01:00
Michael Aaron Murphy
e598d2bea3
fix: Prevent focus of disabled items in segmented button
2023-01-10 20:49:49 +01:00
Michael Aaron Murphy
29c7444a30
feat: focusable segmented items in segmented button
2023-01-10 20:49:49 +01:00
Michael Aaron Murphy
a89ec01297
chore: Add a few more multi-select examples in the demo
2023-01-10 20:49:49 +01:00
Michael Aaron Murphy
8988b25b6a
feat: MultiSelect support for segmented buttons
2023-01-10 20:49:49 +01:00
Michael Aaron Murphy
b1cbcfaf5b
refactor: Replace nav bar macros with nav bar widget
2023-01-10 20:49:49 +01:00
Michael Aaron Murphy
dd29f958af
feat: add nav_bar widget based on vertical view switcher
2023-01-10 20:49:49 +01:00
Michael Aaron Murphy
dd3ff2e622
feat(segmented-button): icon support with state ergonomics
2023-01-10 20:49:49 +01:00
Michael Aaron Murphy
197d5a1c14
feat: Add IconSource::load method to get icon handles
2023-01-10 20:49:49 +01:00
Jeremy Soller
5224c9b75c
Update iced
2023-01-06 13:10:15 -07:00
Jeremy Soller
a858662f70
Update iced and set cosmic example to use winit_softbuffer
2023-01-06 12:18:16 -07:00
13r0ck
59edb3bbf1
Cosmic example: Add Tab navagation
2023-01-06 10:58:42 -07:00
Ashley Wulber
1554a1ee03
chore: update iced
2023-01-06 09:47:47 -07:00
Ashley Wulber
0f417eb89e
chore: update iced
2023-01-05 22:00:40 +01:00
Michael Aaron Murphy
7d018a2139
feat(settings): global setting for icon theme
2023-01-05 16:57:02 +01:00
Michael Aaron Murphy
043485c68d
improv(icon): icon theme set to None by default
2023-01-05 16:57:02 +01:00
Michael Aaron Murphy
38f9de4405
improv(icon): IconSource paths now stored as Cow<Path>
2023-01-05 16:57:02 +01:00
Ashley Wulber
dc4edb2a4d
feat: applet button theme helper
2023-01-05 16:20:33 +01:00
Victoria Brekenfeld
a36552cba8
chore: update iced
2023-01-05 07:56:42 -07:00
Michael Aaron Murphy
357de5e9be
improv(segmented-button): Express vertical/horizontal variants as a state machine
...
It's difficult to make iterative developments when there's two
nearly-identical types that need to be kept synchronized to any change.
Rust gives us traits so we should use them instead of duplicating code.
This made it easier to make styling and layout improvements to both
instances of the segmented button.
2023-01-04 05:55:27 +01:00
Michael Aaron Murphy
b704eea531
chore(vscode): Fix clippy suggestions
2023-01-04 05:46:24 +01:00
Michael Aaron Murphy
176c30901a
chore: ignore doc tests for segmented button examples
2023-01-04 05:46:24 +01:00
Victoria Brekenfeld
a736b361a1
ci: add CI for different feature combinations
2023-01-04 05:46:24 +01:00
Michael Aaron Murphy
f024bdf2fd
chore: update iced
2023-01-04 05:46:24 +01:00
Victoria Brekenfeld
75687acf2f
chore: apply cargo fmt
2023-01-04 05:46:24 +01:00
Victoria Brekenfeld
cb2b0f7b9a
chore: Do not enable iced/tokio features unconditionally
2023-01-03 22:48:53 +01:00
Michael Aaron Murphy
444e389496
refactor!: separate horizontal and vertical segmented button widgets
...
- Removes the orientation enum in favor of two separate widgets
- Implements the spacing attribute for both widgets
- Demo is updated to display spaced variants of the widgets
2023-01-03 20:29:50 +01:00
Ashley Wulber
3af1da6332
chore(iced): update sctk
2023-01-03 17:16:18 +01:00
Michael Aaron Murphy
0cea2023f8
refactor(cosmic): Separate states across views
2023-01-03 00:12:28 -05:00
Michael Aaron Murphy
ad0443af3f
feat(segmented-button): Vertical orientation functionality
2023-01-03 00:12:28 -05:00
Michael Aaron Murphy
de580ffefc
feat(widget): add an Orientation::{Horizontal,Vertical} enum
2023-01-03 00:12:28 -05:00
Michael Aaron Murphy
052d9f655b
feat(segmented-button): Configurable fonts
2022-12-28 18:34:45 -05:00
Michael Aaron Murphy
5f9ff54352
improv(segmented-button): Documentation improvements with cosmic widget configurations
2022-12-28 18:34:45 -05:00
Michael Aaron Murphy
b13ad0b453
improv(segmented-button): Add more From implementations for ButtonContent
2022-12-28 18:34:45 -05:00
Michael Aaron Murphy
bbac6b9bbf
feat(segmented-button): Selection style and implementation
2022-12-28 18:34:45 -05:00
Michael Aaron Murphy
3454483345
feat(segmented-button): Configurable background and hover styling
2022-12-28 18:34:45 -05:00