Commit graph

563 commits

Author SHA1 Message Date
Ashley Wulber
40efcbbe31 refactor: use channel subscription for config subscriptions 2023-08-14 12:31:16 -04:00
Ashley Wulber
68225c78cd fix: write spacing and corner_radii when writing the theme 2023-08-14 12:31:16 -04:00
Ashley Wulber
2dfa9dab5a feat: add customization for status colors 2023-08-14 12:31:16 -04:00
Ashley Wulber
ea09abb892 cleanup: remove methods that aren't used anymore 2023-08-14 12:31:16 -04:00
Ashley Wulber
c819f94e74 feat: apply tints 2023-08-14 12:31:16 -04:00
Ashley Wulber
4c6912d351 fix: typo 2023-08-14 12:31:16 -04:00
Ashley Wulber
85f816f35b fix: example 2023-08-14 12:31:16 -04:00
Ashley Wulber
a618c1b94a wip: calculate theme using new method 2023-08-14 12:31:16 -04:00
Ashley Wulber
607883e4ad feat: add ThemeBuilder 2023-08-14 12:31:16 -04:00
Ashley Wulber
620c1adb74 wip: theme update & some cleanup 2023-08-14 12:31:16 -04:00
Ian Douglas Scott
54d47a1b38
app/settings: Don't use strip_option (#137)
Since these don't default to `None`, and the fields aren't public, using
`strip_option` makes it impossible to change them to `None`.
2023-08-03 13:12:32 -07:00
Michael Murphy
a223b60a0c
feat!: implement Application API 2023-08-02 11:54:07 +02:00
Ashley Wulber
e24465ba37 update(example): add button to cards and update cosmic-time 2023-07-28 14:01:14 -07:00
Ashley Wulber
785861a630 example: update cosmic-time and add extra row to each card 2023-07-28 14:01:14 -07:00
Ashley Wulber
5745ed3ffe chore: examples of animated card usage 2023-07-28 14:01:14 -07:00
Ian Douglas Scott
4895b0c9bd
config: Implement fmt::Display and std::error::Error for Error (#136) 2023-07-28 12:44:57 -07:00
Ashley Wulber
ab88a5b59f feat: animated image widget 2023-07-26 18:11:19 -04:00
Ashley Wulber
dd3f421c72 chore: update iced 2023-07-26 18:11:19 -04:00
Ian Douglas Scott
da9b6345d8 Add 'disabled' style for text-input, instead of panicking with todo! 2023-07-26 07:49:28 -06:00
Ian Douglas Scott
f77bd443d7 Use same sctk commit as iced 2023-07-25 09:33:37 -07:00
Ashley Wulber
a3ab6e93f3 chore: update theme colors 2023-07-21 15:29:57 -06:00
Ian Douglas Scott
b9bd41483d
Update iced (#131) 2023-07-20 14:05:23 -07:00
Ashley Wulber
f17d52f37f card widget 2023-07-20 11:11:50 -04:00
Ashley Wulber
56d24b2372 chore: update iced 2023-07-10 15:09:58 -04:00
Ashley Wulber
598bfaa611 feat: icon default fallbacks 2023-07-07 16:58:21 -04:00
Ian Douglas Scott
456b2ddcd5
config: Ignore some filesystem events (#125)
APIs like inotify can provide notification for some events that don't
change the contents of a file. It makes sense to ignore those here, even
if the expected way to write is through the config API.

This reduces the number of events on the directory received by a single
`:w` in vim from 12 to 8. And reduces a `touch` from 2 events to 1.

Atomic writes through the config API only result in 1 event per-setting,
before and after this change.
2023-07-03 14:33:25 -07:00
Ashley Wulber
b5a5e01de4 update iced 2023-06-27 13:05:57 -04:00
Michael Aaron Murphy
1562a80245 chore(iced): configurable natural scrolling 2023-06-26 14:01:31 -04:00
Michael Aaron Murphy
b0db23a169 perf(flexrow): provide reusable vec for storing elements 2023-06-26 17:00:50 +02:00
Michael Aaron Murphy
e3f30a1b5c feat(widget): add FlexRow widget 2023-06-24 12:30:52 +02:00
Ashley Wulber
42d7baf0d5 update iced: fixes scaling and autosize surface size issues 2023-06-21 17:45:21 -04:00
Ashley Wulber
ce685b5aeb fix(iced): always draw new surfaces 2023-06-16 12:35:20 -04:00
Ashley Wulber
944e77405f update iced 2023-06-15 19:39:45 -04:00
Ashley Wulber
bf456a08ee feat: animated togglers in the cosmic_sctk example 2023-06-15 20:38:16 +02:00
Ashley Wulber
78a3a1f29a fix CI 2023-06-15 20:38:16 +02:00
Ashley Wulber
850968715c udpate iced to use latest rebase 2023-06-15 20:38:16 +02:00
Victoria Brekenfeld
804b183492
chore: Update submodule (#115) 2023-06-13 19:11:19 +02:00
Ashley Wulber
a8a2e4ad26 feat: theme helper methods 2023-06-12 12:16:31 -04:00
Ashley Wulber
6699aa4756 fix: derive PartialEq for Theme 2023-06-09 18:13:30 -04:00
Ashley Wulber
31d7c75098 fix: update iced to fix Id reuse 2023-06-06 15:04:51 -04:00
Victoria Brekenfeld
cf2818c4a1
cosmic-config: Don't pull all of iced (#111) 2023-06-02 14:52:40 +02:00
Brock
5765053ad7
Expose internal iced crates for cosmic-time (#110)
This allows cosmic-time to use all imports via libcosmic, so the
versions of iced will not collide.
2023-06-01 16:12:57 -06:00
Ashley Wulber
ce713d9da7 refactor: move applet helpers to cosmic-applets repo 2023-05-31 10:33:46 -04:00
Michael Aaron Murphy
31f7e97d5b fix: incorrect font weights, sizes, line heights 2023-05-31 00:08:56 +02:00
Ashley Wulber
f06a81ccf9 chore: update deps 2023-05-30 14:39:22 -04:00
Ashley Wulber
e056e8c830
Cosmic advanced text (#103)
* wip: update to use cosmic-advanced-text

* use cosmic-advanced-text branch of iced

* fix: line height and spacing for segmented button and update to get svg fix

* fix: spin button styling & spacing

* update iced to fix segmented button border radius

* feat: example improvements

* feat: helper for loading fonts

* feat: add focus style to button

* fix: slider height and iced fixed

* feat: hash icon width and height

* cleanup

* update ci

* refactor: always use lazy feature of iced

* update iced

* update iced

* cleanup & update iced

* update iced: new slider & tiny-skia quad updates

* update iced: fixes for tiny-skia quad rendering with edge case border radius

* re-export iced_runtime & iced_widget

* merge master

* udpate iced

* update iced

* update iced

* update iced

* fix: make rectangle_tracker subscription only return update if there is some

* feat: derive macro for loading a cosmic-config

* feat (cosmic-config): iced subscription

* fix (example): update to rectangle tracker subscription

* fix (cosmic-config)

* refactor(cosmic-config-derive): add support for types with generic parameters

* fix (cosmic-config): feature gate updates for subscription helpers

* feat: support for custom & system themes + move cosmic-theme to libcosmic

* feat: sorta hacky way of creating header bars for libcosmic + update iced to get support for resizable windows in iced-sctk

* update iced

* update and reexport sctk

* fix: applet border radius

* feat (cosmic-theme): add id and name methods

* fix(cosmic-theme): reexport palette from cosmic-theme

* fix(cosmic-config-derive): allow use with reexported cosmic-config

* feat: update iced with fix and refactor applet env vars

* update iced
2023-05-30 12:03:15 -04:00
Ashley Wulber
a173794bed chore: use tagged version of iced 2023-05-30 10:54:05 -04:00
Ian Douglas Scott
98ec1bbd48
Add a Popover widget, that shows a widget in an overlay (#100)
This serves a similar purpose to `GtkPopover`. It takes two widgets, one
to show normally and one to show in an overlay.

This should basically work, though more options could be added here.
2023-05-11 13:29:05 -07:00
Ian Douglas Scott
355e5a9715
config: Add calloop feature to provide a calloop source (#102)
This should be useful for integrating cosmic-config into things using
calloop, like cosmic-comp.
2023-05-09 08:45:21 -07:00
Ian Douglas Scott
b85c504d72
theme: Use boxed functions instead fn pointers (#99)
This is more general, and necessary if the custom theming is dynamically
generated.

Iced's builtin theme also uses `Box`ed `Fn`, or `Rc` where clone is
required, so this seems reasonable.

Only `Text` is left using `fn`, since it needs to be `Copy`. Hopefully
that can be changed in Iced at some point.

`::custom` methods are added to make these variants a little more
convenient to construct. This replaces a couple `From` implementations,
which are potentially problematic with a generic.
2023-04-28 16:04:57 -07:00