Commit graph

36 commits

Author SHA1 Message Date
Vukašin Vojinović
1486569481 chore: use theme::spacing() where applicable 2025-04-02 00:33:21 +02:00
Michael Aaron Murphy
0aa518984e
chore: format for 2024 edition 2025-03-21 13:33:07 +01:00
Michael Aaron Murphy
8cf372c9b9
perf: inline public getters/setters, and use non-generic inner functions
To reduce compile-times and avoid some overhead to binary size, this will modify some of our
generic functions to use non-generic inner functions where possible. The inner functions are
marked carefully with `#[inline(never)]` to prevent being inlined by LLVM at their callsites

While looking for generic functions to optimize, I have also taken the opportunity to annotate
public non-generic getters and setters with `#[inline]` to ensure that LLVM will inline them
across crate boundaries. By default, only generic functions are automatically inlined, and
only when enabling fat LTO are constant functions reliably inlined across crate boundaries.
2025-03-21 13:31:34 +01:00
Ashley Wulber
337b80d4ca
feat: Tooltips and Better Surface Management 2025-03-14 16:56:21 +01:00
Vukašin Vojinović
de0c1921f7 fix(list_column): match padding/spacing to designs 2024-12-02 17:43:19 +01:00
Vukašin Vojinović
127ce17b85 improv: add window border 2024-11-05 10:02:19 +01:00
wiiznokes
0dfaa4d158 Update section.rs 2024-11-01 13:47:27 -04:00
Ashley Wulber
a73e91a12b refactor(toggler): remove required on_toggle function 2024-10-18 14:04:39 -04:00
Ashley Wulber
0491c4baaa libcosmic updates 2024-10-18 14:04:39 -04:00
Vukašin Vojinović
282700b987 improv: use spacing variables in more places 2024-09-23 12:40:22 -04:00
Michael Aaron Murphy
af68a3f660 refactor(settings/section): deprecate view_section for settings::section 2024-09-19 14:43:40 +02:00
Antoine C
c4e8f4d1e6 feat(settings/section): add method to create section with a list column 2024-09-19 14:43:40 +02:00
Michael Aaron Murphy
f12de010ec fix!(widget): rename button function to button::custom 2024-09-16 11:36:42 -06:00
Vukašin Vojinović
1046778d01 improv: spacing/padding fixes 2024-09-04 18:00:16 +02:00
Michael Aaron Murphy
76667418d8
fix(widget): toggler settings controls should not flex 2024-07-11 09:49:36 +02:00
Michael Aaron Murphy
095c2b5336 feat(widget/settings): add flex items and flex controls 2024-05-30 13:57:47 +02:00
Michael Aaron Murphy
db5d989972 refactor(theme): create Container::ContextDrawer style variant 2024-03-05 08:35:47 -07:00
Michael Aaron Murphy
041ca44132
fix(settings): broken layout with some settings items 2024-03-01 04:27:28 +01:00
Michael Aaron Murphy
cd9778a704
fix(settings): avoid overlap of item title and controls 2024-02-28 22:20:34 +01:00
Ashley Wulber
7cc791a3f5
feat: add support for dark / light mode switching (#178)
* feat: add support for dark / light mode switching and simultaneouscustom light / dark mode themes

* refactor(color-picker): optional initial color and fallback color

* refactor: used FixedPortion for layout of the settings item

This makes sure that the control always has at least the specified portion of the available space

* refactor: make all members of the ThemeBuilder public

* refactor: add and update palette colors

* fix(theme): typo and derive PartialEq for ThemeBuilder

* fix: update color picker usage

* feat: add more variables to the theme

* fix: radius on headerbar

* fix: Theme CosmicConfigEntry impl

* chore: specify rev of taffy

* fix: theme CosmicConfigEntry missing variables

* fix: apply theme type when theme mode changes

* wip: add plus icon to empty color picker button

* chore: fix rev and imports

* refactor(color-picker): allow custom size for the icon

* refactor(color_picker): make color_button public

* update iced
2023-10-16 16:19:04 -04:00
Michael Aaron Murphy
aa2dfe0ea5 fix(widget): unset max width for settings::view_column 2023-09-19 17:22:20 +02:00
Michael Aaron Murphy
4564c36c83 chore(widget): use Row type in settings::item 2023-09-14 01:38:56 +02:00
Michael Aaron Murphy
6402bcfe26 chore(widget): use Column type in settings::view_column 2023-09-14 01:38:56 +02:00
Michael Aaron Murphy
b5a6f81057 chore(widget): use push_maybe in settings::section 2023-09-14 01:38:56 +02:00
Michael Aaron Murphy
4e4eeaac12 feat!(widget): rewrite button & icon widget APIs 2023-09-14 01:38:56 +02:00
Michael Aaron Murphy
31f7e97d5b fix: incorrect font weights, sizes, line heights 2023-05-31 00:08:56 +02:00
Michael Aaron Murphy
8232e1d249
fix(settings): wrong title text size for control 2023-02-16 06:22:30 +01:00
Michael Aaron Murphy
b79fa9d2a9 fix(settings): set proper font sizes 2023-01-30 21:57:24 +01:00
Michael Aaron Murphy
18a21937b4 feat(settings): settings item builder API 2023-01-30 21:57:24 +01:00
Michael Aaron Murphy
b3a3c9c29a feat(widget): add text function with Cow<str> input 2023-01-30 21:57:24 +01:00
Victoria Brekenfeld
75687acf2f chore: apply cargo fmt 2023-01-04 05:46:24 +01:00
Michael Aaron Murphy
dcbde3b1f2
chore: Apply clippy lints 2022-12-23 15:10:13 +01:00
Jeremy Soller
e21f1ec7b8
Add abouts page, improve settings list padding 2022-12-21 12:18:54 -07:00
Jeremy Soller
dd13b8300c
Adjust padding for nav bar and content 2022-12-21 08:22:52 -07:00
Michael Aaron Murphy
ef71f7f027
feat(widget): Add SpinButtonModel
Enables convenient handling of spin messages, and specifying steppings, minimum, and maximum values
2022-12-07 03:03:41 +01:00
Michael Aaron Murphy
37f978d1b3
wip: Various refactorings and improvements 2022-12-06 16:14:39 +01:00