Ian Douglas Scott
8a4d4b6957
Have icon_for_app_id run in a background thread
...
This should probably be faster, but it's good for things like this to
not block the UI thread regardless.
We could probably also cache for multiple apps with the same ID. Not
sure if there's a good way to detect changes to the icon for an app id
(Not really needed, probably?)
2025-01-21 09:24:19 -08:00
Peter Krull
0c9cabd21a
performance: Add app_id check to throttle icon fetch
2025-01-21 08:50:55 -08:00
Ian Douglas Scott
e3b65d4772
Remove LayerShell only once iced confirms surface destroyed
...
Prevents "NO VIEW" messages, and possible flicker to placeholder widget.
2025-01-16 14:50:45 -08:00
Ian Douglas Scott
a428659ade
Use std LazyLock instead of once_cell crate
2025-01-16 10:21:35 -08:00
Ian Douglas Scott
b259655839
Address some warnings
2025-01-16 10:19:58 -08:00
Ian Douglas Scott
5cb9f6eb09
Allow a couple clippy lints
2025-01-15 11:56:23 -08:00
Vukašin Vojinović
fe1363ea42
fix(interface): align closer to designs
2025-01-15 11:49:54 -08:00
Ian Douglas Scott
b70828e23f
Update iced/libcosmic
2025-01-13 10:26:45 -08:00
Ian Douglas Scott
e0c0f27f67
On mock backend, don't hide when toplevel is opened
...
Toplevels are only added on this backend when the workspaces view is
shown.
2024-12-16 17:55:14 -08:00
Ian Douglas Scott
ef0d7bbc63
Close workspaces view if window spawns while open
...
We may want to adjust this if it sometimes leads to confusing behavior.
This may be better for now anyway.
Fixes https://github.com/pop-os/cosmic-workspaces-epoch/issues/28 .
2024-07-29 22:14:47 -07:00
Ian Douglas Scott
e9e6cc275b
Move drag surface view into a function
...
It's a bit clearer this way.
2024-07-10 18:41:34 -07:00
Ian Douglas Scott
594ecffa66
Apply both offset and alpha to drag surfaces
2024-06-12 09:40:13 -07:00
Ian Douglas Scott
a014d8ca3d
Unset drop_target after success, or close
2024-05-08 13:48:13 -07:00
Ian Douglas Scott
30b0cfe17b
Fix handling leave event to one widget after enter for another
2024-05-02 12:53:09 -07:00
Ian Douglas Scott
0f237155bf
Clear drop_target when leaving drag
2024-05-02 08:05:51 -07:00
Ian Douglas Scott
ccef25c40c
Use subscription for cosmic-bg-config
...
Works, as long as a `config_state_subscription` is used.
Should also try caching image handles.
2024-05-02 08:05:51 -07:00
Ian Douglas Scott
6cca5476ab
User hover style for drop target
2024-05-02 08:05:51 -07:00
Ian Douglas Scott
b635c10837
Add offset logic, commented
...
With large drag surfaces, and no tranparency, this seems a bit akward
when not dragging from near top left. May be better with cursor
indicator.
2024-05-02 08:05:51 -07:00
Ian Douglas Scott
249c62ee0a
Update libcosmic/iced
2024-04-30 16:25:50 -07:00
Ian Douglas Scott
d759e1d7c2
Use cosmic_bg_config to get background
...
Scaling doesn't match `cosmic-bg`?
2024-04-30 12:49:08 -07:00
Ian Douglas Scott
8f571e9e25
Use custom style for workspace items
...
None of the default styles seem to work quite right here.
2024-04-25 14:10:09 -07:00
Ian Douglas Scott
7997d58ce7
Fix clippy lints
2024-04-24 13:51:20 -07:00
Ian Douglas Scott
ee1d54a12b
Format imports
2024-04-24 13:00:40 -07:00
Ian Douglas Scott
76daf6e980
Update libcosmic/iced for drag-and-drop fixes
2024-04-24 12:46:57 -07:00
Ian Douglas Scott
a6548057b6
Don't hide toplevel until drag is started
...
Seems to fix behavior on Sway, but on Smithay still destroys the drag
grab once the surface that started it is gone.
2024-04-23 17:23:57 -07:00
Ian Douglas Scott
c75a48535a
Add a mock backend for testing (including on other compositors)
...
Should help determine which issues are cosmic-comp bugs.
2024-04-23 13:44:59 -07:00
Ian Douglas Scott
170e102275
Use Cmd instead of sending more wayland objects to frontend
...
This isn't needed now that the workspaces view is persistent (before, it
was necessary to make sure activation requests are flushed before
closing).
This is easier to spoof, for testing.
2024-04-23 11:54:05 -07:00
Ian Douglas Scott
6f45933971
Fix various warnings
2024-04-19 15:44:55 -07:00
Ian Douglas Scott
09e03cd096
Hide toplevel from toplevel list when it is being dragged
...
Uses a custom wrapper widget, that makes `draw` do nothing when visible
is set to false.
This works well sometimes, but can cause weird bugs...
2024-04-19 15:28:16 -07:00
Ian Douglas Scott
b011ecd615
Use single-threaded async executor
2024-04-19 10:54:42 -07:00
Ian Douglas Scott
888b1c542d
Don't use dGPU for rendering on dual-graphics systems
...
Apparently the `antialiasing` flag determines this.
2024-04-09 15:35:09 -07:00
Ian Douglas Scott
b554dc3177
Fix / work around issue with drag surface not being destroyed
2024-03-06 16:09:58 -08:00
Ian Douglas Scott
5e290acbee
Use log instead of println!
2024-03-06 14:05:32 -08:00
Ian Douglas Scott
7106001179
Address various warnings
2024-03-05 12:25:20 -08:00
Ian Douglas Scott
66fcf19ccc
Run cargo update, and remove use of WorkspaceAmount
...
`WorkspaceAmount` has been removed from cosmic-comp for now.
2024-02-07 19:52:33 -08:00
Ian Douglas Scott
015f61922b
Update libcosmic
2024-02-06 13:32:29 -08:00
Ian Douglas Scott
14d2a66c9d
Re-use screencopy session instead of creating one each frame
2024-01-24 15:29:03 -08:00
Ian Douglas Scott
9d2f2f68d0
Update dependencies
2024-01-19 03:35:33 -08:00
Ian Douglas Scott
bc0898fa0a
Update dependencies
2024-01-03 10:57:47 -08:00
Ian Douglas Scott
907410fab9
Add cosmic-config settings, and subscribe
2023-12-29 13:44:19 -08:00
Ian Douglas Scott
b2f81b1a73
i18n
2023-12-26 13:54:29 -08:00
Ian Douglas Scott
68beafe911
Subscribe to changes in cosmic-comp configuration
2023-12-21 10:41:46 -08:00
Ian Douglas Scott
899dfb0a3d
Show icons for toplevels
2023-12-18 19:41:30 -08:00
Ian Douglas Scott
f189c2d49e
Don't remove last workspace
2023-12-14 16:19:53 -08:00
Ian Douglas Scott
a3e3bec885
Custom widget for sidebar; closing workspace
...
Need custom widget currently to distribute space correctly.
2023-12-13 15:54:33 -08:00
Ian Douglas Scott
ea9298c021
Make "New Workspace" button add workspace
2023-12-12 15:36:20 -08:00
Ian Douglas Scott
89021e3b8b
Fix drag and drop; send command to compositor if supported
2023-12-11 14:06:41 -08:00
Ian Douglas Scott
e020bf6607
Update libcosmic/iced
2023-12-08 20:14:31 -08:00
Ian Douglas Scott
5550f41814
dnd: Keep track of drop target
...
Now just need a protocol to move the toplevel to a workspace.
2023-12-06 11:02:21 -08:00
Ian Douglas Scott
f2c77d035c
Drag toplevel to workspace; recognize what toplevel was dragged
2023-12-06 10:51:55 -08:00