Commit graph

405 commits

Author SHA1 Message Date
Cheong Lau
78f2ed2bdd
Merge branch 'master' into rustc-hash 2025-10-23 11:24:01 +00:00
Jeremy Soller
704ff6ad4f
Unhighlight all items when config changes, fixes #1139 2025-10-20 14:16:03 -06:00
Jeremy Soller
e2c446b73a
Fix shift click sorting when items sorted by name, fixes #1135 2025-10-20 14:03:45 -06: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
Cheong Lau
f78d4a4b4f perf: use Rc<RefCell> for ArcElementWrapper
Since `Element` isn't `Sync` and `ArcElementWrapper` doesn't need to be
sent across threads, the overhead from using `Arc<Mutex>` isn't really
needed. Using an `Rc<RefCell>` has the same effect, but is faster and
isn't thread-safe.
2025-10-13 10:13:01 +10:00
Jason Rodney Hansen
d9d5a6fe3d Fix location context menu 2025-10-09 19:17:55 -06:00
Jeremy Soller
7d5fb79f02
Handle single click to open on release, fixes #1212 2025-10-09 13:52:41 -06:00
therealmate
23dd824746
fix: use the dimension of the image instead of the thumbnail's dimension
Fixes https://github.com/pop-os/cosmic-files/issues/1244
2025-10-05 22:50:56 +02:00
Vukašin Vojinović
909577b364 chore: clippy 2025-10-03 14:36:00 -04:00
Vukašin Vojinović
901bf3f564 chore: update to icu 2.0.0 2025-09-15 15:20:33 -06: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
Josh Megnauth
d8acbd2ce0 Fix extracting password protected archives
Closes: #1157

The fix splits the "canceled" and "failed" states for OperationError. It
also preserves that state because some functions overwrote the state by
rewrapping the error.
2025-09-09 07:52:32 -06:00
Ryan Brue
a76f7f8685 Fix tests
Tested with cargo test --all-features

Signed-off-by: Ryan Brue <ryanbrue.dev@gmail.com>
2025-08-20 17:13:43 -04:00
Jason Rodney Hansen
16868ca990 Fix for right-clicking file when context menu is open already
This fixes a bug where right-clicking a file while the context menu was open
for another file would open another context menu that couldn't be closed.

The new behavior is to close the context menu.
2025-08-17 16:25:10 -06:00
Jeremy Soller
a6f0d898ce
Support drag and drop to gvfs drives, fixes #1140 2025-08-15 11:27:33 -06:00
Jeremy Soller
fb74be9a70
Restore tab scroll position, fixes #1115 2025-08-15 11:01:08 -06:00
Jeremy Soller
b3a6d14bc6
Update dependencies 2025-08-13 12:40:20 -06:00
Ashley Wulber
c8e5d986f2
Fix context menu position (#1136)
* chore: update libcosmic

* fix(context menu): compensate for scroll virtual offset, and use window position
2025-08-13 11:01:03 -06:00
Ashley Wulber
a4e3bf3eea
fix: limit concurrent thumbnail generation (#1138) 2025-08-13 11:00:07 -06:00
Jeremy Soller
4f015eec7a
Only scroll to focused object on resize, fixes #1097 2025-07-31 10:04:34 -06:00
Jeremy Soller
67884d2800
Do not apply image size limit to all files 2025-07-30 15:52:21 -06:00
Jeremy Soller
5736fbb271
Remove unnecessary debug 2025-07-30 15:48:53 -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
Josh Megnauth
64c8506dd2 Decode URL encoded recents bookmark
File paths are URL encoded in the recently-used.xbel file. Paths with
spaces (or whatever) need to be decoded or else the Recents tab skips
those entries.
2025-07-28 15:27:51 -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
Ashley Wulber
5dad1f0d26 fix: exit early from thumbnail generation if file is too big 2025-07-17 10:14:54 -06:00
Ashley Wulber
a7a519b14c cleanup 2025-07-15 13:15:45 -06:00
Ashley Wulber
08367c9ea6 feat: handle opening network location in new window 2025-07-15 13:15:45 -06:00
Ashley Wulber
c7e9828d7b feat: retry opening network locations after mounting 2025-07-15 13:15:45 -06:00
Jeremy Soller
e1d3010145
Watch for drag event while scrolling 2025-07-10 14:00:31 -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
Jeremy Soller
5e4d4523f4
Only build widgets for visible items 2025-07-10 10:52:57 -06:00
Ashley Wulber
10f234bf79 fix(grid dnd): offset dnd icon by grid item padding 2025-07-10 10:20:53 -06:00
Ashley Wulber
319fa5faec fix(dnd): use zero offset for dnd icons 2025-07-09 15:29:04 -06:00
Jeremy Soller
15e1337e63
Preserve search time when normalizing, fixes #1062 2025-07-09 15:26:49 -06:00
Mitchel Stewart
e04f17b97d thumbnail: create thumbnail folder and fix bad cache 2025-07-08 09:18:18 -06:00
Jason Rodney Hansen
489eb2a066 Add caching for thumbnails based and freedesktop.org spec 2025-07-07 08:59:06 -06:00
Ashley Wulber
e4ffec63a1 refactor: apply limit on the number of persisted sort names 2025-07-03 19:34:48 +00: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
Jeremy Soller
b7d3d16d28
Fix compilation without gfvs feature 2025-06-18 20:54:58 -06:00
ellieplayswow
1ad5ec0398
drastically speed up gvfs mount directory listings (#1003)
* feat(gvfs): use gio::enumerate_children to iterate gvfs dirs and split some logic to avoid native fs:: methods

* feat(gvfs): allow thumbnails for GvfsPath + create ItemMetadata::file_size method

* feat(gvfs): fix up details panel + cargo fmt

* fixing panic with really large directories

* cargo fmt
2025-06-18 20:39:42 -06:00
Gwen Lg
b0e89cd5e3
fix some typos in comment or var name (#1027)
indicated by `typos` tool : https://github.com/crate-ci/typos/
2025-06-18 16:40:55 -06:00
Joshua Megnauth
ec685bd185
Save/simplify show hidden items (#1026)
Closes: #1022, #605
See: #982
Original PR: #36

This commit reimplements saving the "show hidden" files setting. I
simplified the implementation by making the toggle global. My original
PR (#36) implemented per tab show hidden, but that complicates saving
configs which is why (I think?) why the saving the toggle was scrapped.
2025-06-18 16:35:39 -06:00
Ashley Wulber
720caa5dba feat: menubar popups 2025-06-18 12:11:15 -04:00