Commit graph

169 commits

Author SHA1 Message Date
Frederic Laing
591ba0f9b9 feat: gray out paste menu when clipboard is empty or location unsupported 2026-02-19 14:19:26 -07:00
Jeremy Soller
f9d4ca4867
Merge pull request #1631 from jasonrhansen/close-context-menu
fix: close context menus in various cases
2026-02-19 14:01:33 -07:00
Sebastiano Giordano
5d3d893c9e feat: add setting to enable/disable the "recents" feature 2026-02-17 13:02:28 -05:00
Jason Rodney Hansen
1dc14b6d39 fix: close context menus in various cases
* When clicking in window outside of context menu.
* When initiating or clearing a search.
* Close location context menu when ESC is pressed.
2026-02-15 12:48:34 -07:00
Jason Rodney Hansen
81d3b3b1ce fix: disable dialog save button when filename is empty 2026-02-07 14:43:38 -07:00
Vukašin Vojinović
1e25e7dd69 chore: clippy 2026-01-30 21:05:46 +01:00
Jeremy Soller
738f49adec Format src/dialog.rs 2026-01-13 11:55:55 -05:00
wowitsjack
26634889dc scroll to selected item when using type-to-select 2026-01-03 17:10:58 +10:00
wowitsjack
5e92d081c6 add type-to-select option for keyboard navigation 2025-12-27 19:07:21 +10:00
Jonatan Pettersson
361465e337 feat: add multi-file preview 2025-12-26 13:21:19 -06:00
Ashley Wulber
7bf8d7cd53
fix: better surface view cleanup 2025-11-20 13:32:52 -05:00
Jeremy Soller
0957f937db
Do not track modifiers in tab, fixes #1312 2025-11-20 08:39:04 -07:00
Jeremy Soller
15b748bf3a
Fix compilation without wayland feature and add feature testing to CI 2025-11-19 08:02:03 -07:00
Ashley Wulber
b571f11b92
fix: surface cleanup
Clean up surfaces before processing the dialog result message
2025-11-17 20:17:30 -05:00
Ashley Wulber
2c7d06c980
chore: add method for checking if a dialog tracks a surface
needed to call viewor update on the dialog popups
2025-11-17 17:58:08 -05:00
Vukašin Vojinović
2ba08c4928 chore: update dependencies
This adapts to the changed context drawer actions API.
Also simplifies the actions code.
2025-11-05 15:26:02 -07:00
Cheong Lau
bd1fa1f0a9 perf: general minor performance optimisations
Notably there is some code cleanup with the zooming functionality, I've
created a new module to reduce code duplication.
2025-10-29 08:16:50 +10:00
Cheong Lau
5f729829d7 chore: more pedantic clippy suggestions 2025-10-29 08:10:19 +10:00
Cheong Lau
c0736400e4
Merge branch 'pop-os:master' into rustc-hash 2025-10-28 03:12:10 +00:00
Cheong Lau
78f2ed2bdd
Merge branch 'master' into rustc-hash 2025-10-23 11:24:01 +00:00
Ashley Wulber
a2f81cdcf0 refactor: capture Escape in subscription
If the event status of a key event is captured by a widget, the libcosmic tab subscription will ignore it, but we can manually capture it in cosmic-files for its dialogs and handle it ourselves. Alternatively, the subscription could capture events regardless of status, and include it as an argument to on_escape.
2025-10-22 15:04:49 -04:00
Josh Megnauth
1a465ffd7a Close dialog on esc if text input is focused
Closes: pop-os/cosmic-edit#350

Escape unfocusses the main text input widget instead of closing the
dialog. The user has to hit escape twice to close the window. It's not a
big deal, but it's also unexpected and unergonomic.
2025-10-22 14:51:22 -04:00
Ashley Wulber
90d705dd52 chore: update libcosmic and use custom IDs
fixes #1087
2025-10-22 14:10:15 -04:00
Ashley Wulber
ee550266c6 chore: focus empty trash and mount error buttons 2025-10-22 14:10:15 -04:00
Cheong Lau
43a9fca4ec perf: use rustc-hash for HashMap and HashSet
Since we already depend on `rustc-hash` transiently, this doesn't add
any more dependencies. As long as DOS attacks aren't a concern (which I
don't think they are?), this should be free performance.

In my (admittedly naive) testing, this really improved CPU usage in some
cases, which is pretty nice to get for free.
2025-10-19 08:46:12 +10:00
Jeremy Soller
2e103dd4eb
Update dependencies and format 2025-10-14 11:18:23 -06:00
Jeremy Soller
4312179a4d
Allow type to enter path to select files in dialog 2025-10-14 11:16:37 -06:00
Jeremy Soller
9e8fb60b70
Implement type to search in dialog, fixes #965 2025-10-14 10:57:36 -06:00
Vukašin Vojinović
909577b364 chore: clippy 2025-10-03 14:36:00 -04:00
Vukašin Vojinović
131cf7e8cd chore: make dbus-config optional
Also fixes some lints.
2025-09-13 10:51:14 -06:00
Vukašin Vojinović
3ee1a07f09 chore: update dependencies
Updates all dependencies other than ICU.
Enables the `dbus-config` libcosmic feature to fix theming responsiveness.
Also prevents the trash and network drive layer container from touching the edge of the window.
2025-09-11 08:15:26 -06:00
Vukašin Vojinović
f95869a631 chore: migrate to Rust 2024 edition 2025-09-11 08:15:26 -06:00
Jeremy Soller
116774d5fa
Use Location::path_opt for checking for location path 2025-08-15 11:38:26 -06:00
Jeremy Soller
fb74be9a70
Restore tab scroll position, fixes #1115 2025-08-15 11:01:08 -06:00
Mitchel Stewart
293350092c
thumbnail: Support jxl and plumbing for future formats. (#1058)
* add plumbing for additional thumbnailers

* remove bad logging and fmt

* fix bad logging message

* add decoding ram limits

* add configuration for thumbs

* cleanups

* fix rebase fails
2025-07-30 15:45:53 -06:00
Ashley Wulber
6d9e6c1d20 fix(desktop): use the window id for context menus 2025-07-25 15:47:37 -04:00
Jeremy Soller
a6e369df0f
Enable context menu popups in dialog, close context menu when location changes 2025-07-24 11:34:41 -06:00
Jeremy Soller
605f44763b
On wayland, place context menus into popups, fixes #1090 2025-07-24 10:51:46 -06:00
Jeremy Soller
795f90ba95
Persist more dialog options 2025-07-22 09:13:14 -06:00
Jeremy Soller
4f0c5c1ec1 dialog: preserve show details setting 2025-07-21 19:51:30 -06:00
Jeremy Soller
5fd643b166 dialog: break options into two rows when condensed 2025-07-21 19:51:30 -06:00
Jeremy Soller
e5defb971c dialog: disable show details by default 2025-07-21 19:51:30 -06:00
Jeremy Soller
7524487ba7
Significantly optimize drag select performance 2025-07-10 13:57:41 -06:00
Jeremy Soller
b7c9ed8dff
Implement auto scroll in mouse area, improves performance 2025-07-10 11:52:42 -06:00
Ashley Wulber
01bf55865c feat: persist sort options for each location 2025-07-03 15:13:11 +00:00
Ashley Wulber
6a2bd1faf1 fix: add eject button for context menus on mount point 2025-07-01 00:25:58 +00:00
ellieplayswow
aba90279e6
add ability to pass appid through to file dialogs (#1042)
* dialog: add new Dialog::create() method with new DialogSettings struct to allow passing app_id from portal; deprecating Dialog::new()

* dialog: remove deprecation, move to builder pattern, add path_opt and kind options to DialogSettings

* dialog: instances of -> DialogSettings to -> Self
2025-06-27 16:26:24 -06:00
Jeremy Soller
037190babd
Remove unused icon sizes argument from preview 2025-04-30 08:27:55 -06:00
Gwen Lg
e220268954 Add ModifiersChanged message on Tab and keep value
The message is forwarded from app/dialog Message, and used to
keep the value of the status of modifiers in Tab.
2025-04-29 20:18:30 +02:00
Gwen Lg
d8a198e836 clean: rename Modifiers message to ModifiersChanged
to be more explicit/accurate.
2025-04-29 20:18:30 +02:00