Commit graph

1205 commits

Author SHA1 Message Date
Jeremy Soller
a3c81119e8 Use fallback scale if size is invalid 2024-08-16 06:59:51 -06:00
Victoria Brekenfeld
8d2cc05f03
kms: Try to calculate dpi and scale factor (Take 2)
Co-authored-by: Jeremy Soller <jackpot51@gmail.com>
2024-08-15 15:10:40 -06:00
Richard Weber
bad8837d19 Add wl-clipboard to tiling exceptions 2024-08-14 11:05:58 -06:00
Victoria Brekenfeld
0916d3599a chore: Update smithay 2024-08-10 14:51:29 +02:00
Victoria Brekenfeld
7660f7aaa9 focus: Don't swap focus from maximized tiled windows 2024-08-08 21:26:30 +02:00
Victoria Brekenfeld
f9d39144ed focus: Check target for fullscreen instead of workspace 2024-08-08 21:26:30 +02:00
Victoria Brekenfeld
e5a7dfbdb0 layout/tiling: enumerate all children before swapping 2024-08-08 21:26:30 +02:00
Victoria Brekenfeld
450cc6a323 layout/tiling: Make swapping layout less confusing 2024-08-08 21:26:30 +02:00
Victoria Brekenfeld
1f8915f802 layout/tiling: Don't unmap before moving children 2024-08-08 21:26:30 +02:00
Victoria Brekenfeld
3eb002c3f1 state: Also set primary_output/preferred_scale for lock/cursor-surfaces 2024-08-08 21:26:30 +02:00
Victoria Brekenfeld
10d45f7134 iced: Set default font 2024-08-08 16:44:27 +02:00
Ian Douglas Scott
5537fa4822 Use EGL_MESA_device_software as fallback for screen capture
Previously, screenshots and screencopy panicked if no DRM render nodes
are present.

Instead, create a `GlowRenderer` using llvmpipe, if available. This
should work as a fallback until pixman is integrated.
2024-08-07 10:49:39 -07:00
Ian Douglas Scott
87020c79ba Define a RendererRef enum, referencing multi or glow renderer
Avoids a little duplication (matching two variants, instead of three
backends).

The behavior, including errors and panics, should be unchanged for now.
Performance should also not be impacted.

This should help for adding llvmpipe rendering without a device node on
the kms backend, or for adding a variant for pixman.
2024-08-07 10:49:39 -07:00
Ian Douglas Scott
4748916ff9 Make RenderElement implementations generic to reduce duplication
It would make sense to have a bound like
`for<'frame> R::Frame<'frame>: AsGlowFrame<'frame>`. But that appears to
not behave properly due to current limitations of the borrow checker:
https://blog.rust-lang.org/2022/10/28/gats-stabilization.html#implied-static-requirement-from-higher-ranked-trait-bounds

Instead, this makes `glow_frame` and `glow_frame_mut` associated
functions of the `AsGlowRenderer` trait. Then it is pretty
straightforward to make the `RenderElement` implementations generic
using that and `FromGlesError`.

It would make sense to make `Self::Error: FromGlessError` a requirement
of the `AsGlowRenderer` trait, but due to the lack of implied bounds
support, that produces a bunch of errors about missing bounds. If Rustc
improves that eventually, some bounds could be cleaned up a bit:
https://github.com/rust-lang/rust/issues/44491
2024-08-05 12:58:52 +02:00
Michael Aaron Murphy
3dd3460ee0
fix(config): PlayPause is not a valid xkb keysym 2024-08-03 11:16:40 +02:00
Aaron Honeycutt
90e3deb43a
chore(config): add PlayPause/Prev/Next shortcuts
* Add PlayPause
* Add Prev/Next
* Update cosmic-settings-config crate

---------

Co-authored-by: Aaron Honeycutt <aaronhoneycutt@proton.me>
2024-08-03 03:37:51 +02:00
Victoria Brekenfeld
dc3dbfdba0 chore: Remove unused method 2024-08-02 20:54:15 +02:00
Victoria Brekenfeld
c3524d3546 stack: Fix round corners on maximize 2024-08-02 20:54:15 +02:00
Victoria Brekenfeld
5aaac707f8 window: Fix round corners on maximize 2024-08-02 20:54:15 +02:00
Victoria Brekenfeld
c299748997 config: Load toolkit config on start 2024-08-02 20:54:15 +02:00
Victoria Brekenfeld
24462f728b chore: Update libcosmic 2024-08-02 20:54:15 +02:00
Ashley Wulber
b8eaf5dcb4 chore: update smithay 2024-08-02 15:54:05 +02:00
Ian Douglas Scott
9239dc1e75 Run cargo update
Updates `libcosmic`/`iced`, `cosmic-text`, and a few other things.
2024-08-02 09:25:55 +02:00
Victoria Brekenfeld
2cef99ae78 Revert "kms: Try to calculate dpi and scale factor"
This reverts commit 607bd71aeb.
2024-08-01 23:38:11 +02:00
Daniel
e01a55aae7
input: resize on Super + Right-Click Drag 2024-08-01 19:50:28 +02:00
Ian Douglas Scott
c1bf410466 toplevel-info: Fix race between binding wl_ouput and output_enter
This fixes an issue with `cosmic-panel` where, when a workspace is moved
back to an output after a monitor is disconnected and reconnected, the
panel doesn't hide because `cosmic-panel` thinks no toplevel is open on
that monitor.

After some testing, it seems `output_enter` isn't being sent here. In
particular, the `output_leave` call happens before the client binds the
`wl_output`, so there is no `wl_output` to send in an event yet.

This is addressed by keeping track of a set of `wl_output`s that we have
sent the event to. So if an output is bound, `refresh` can add it to
this list and send the event.

This is not needed for workspaces (though it could be done similarly)
since the handle objects are created by server events. So no race should
occur as long as the workspaces global is bound before the toplevel info
one.
2024-08-01 16:35:26 +02:00
Berk Elyesa Yıldırım
a2f9340b02 Update Turkish translation
Fix little mistakes and bring it closer to
the established FOSS translations for consistency

Signed-off-by: Berk Elyesa Yıldırım <beryesa@sayafe.org>
2024-07-31 14:43:02 +02:00
Victoria Brekenfeld
607bd71aeb kms: Try to calculate dpi and scale factor 2024-07-31 13:02:08 +02:00
Michael Aaron Murphy
6209e32f7b chore(config): enable tap-to-click and disable-while-typing by default for touchpads 2024-07-31 09:53:42 +02:00
VandaLHJ
e0e646caca
Update cosmic_comp.ftl PL translation
- The idea behind sticky don't work well in my language and is probably misleading about the functionality. I opted for zakrywające okna, because it's always on top, but maybe someone will find better allegory for that kind of functionality later on. Also, stack isn't really good to translate, i opted for karta(tab), because it's what the stack is. It might be not the best translation, but i feel it's more natural.
- Fixed stack terminology, based on feedback and contemporary wording in similar software.
2024-07-30 17:28:07 +02:00
Victoria Brekenfeld
af553a16a6 input: Send modifiers of modifier-only bindings to clients 2024-07-29 23:33:55 +02:00
Victoria Brekenfeld
6c517bd8de input: Also focus a window on click, if the super key is held 2024-07-29 21:52:19 +02:00
Ian Douglas Scott
8b458335c7 ci: Disable failing nix build job for now 2024-07-29 14:49:44 +02:00
Ian Douglas Scott
cc01f991a6 ci: Add job to run cargo check with different feature flags 2024-07-29 14:49:44 +02:00
Ian Douglas Scott
f0eeefb6fe ci: Run for master branch, not master_jammy 2024-07-29 14:49:44 +02:00
Ian Douglas Scott
de264e250f Fix build with debug feature 2024-07-29 14:49:44 +02:00
Ian Douglas Scott
0e78104477 Fix build with profile-with-tracy feature 2024-07-29 14:49:44 +02:00
Victoria Brekenfeld
fdde46febd config: watch CosmicTk 2024-07-26 16:40:28 +02:00
Victoria Brekenfeld
61f11d1363 element/stack: Style fixes 2024-07-26 14:59:11 +02:00
Victoria Brekenfeld
04b5c18a03 chore: Update toolchain 2024-07-26 14:58:24 +02:00
Victoria Brekenfeld
8971d8f430 kms: Fix previous commit.. 2024-07-26 14:07:21 +02:00
Victoria Brekenfeld
64e03d11d7 kms: Fix potential panic when enumerating connectors 2024-07-26 14:00:16 +02:00
Dominic Gerhauser
3214ef0250 element/window: Add maximize on header double-click 2024-07-26 13:22:56 +02:00
Victoria Brekenfeld
9239584435 chore: libcosmic update 2024-07-26 13:22:56 +02:00
Csani10
2edbdaf666 i18n(hu): Add Hungarian translation 2024-07-26 13:08:29 +02:00
Victoria Brekenfeld
bb27b767f2 chore: Update smithay 2024-07-25 23:05:15 +02:00
Ian Douglas Scott
2a4bbf4238 Update zbus and i18n-embed-fl dependencies 2024-07-25 22:54:53 +02:00
Weeesly
17de6df1cc
i18n: Add es-419 translations 2024-07-25 15:27:16 +02:00
Matthew Fallah (マシュー・ファラー)
f6e341a812
i18n: Add Japanese translation to cosmic_comp 2024-07-25 14:57:54 +02:00
khoidauminh
73518f9d57 Add Vietnamese localization 2024-07-25 14:52:45 +02:00