47 Commits

Author SHA1 Message Date
6e69d72bee
Replaced custom "runtime" with tokio, with optional tokio-console support.
`Wgpu` now arcs the window (maybe reversible eventually once tokio supports scoped tasks).
2022-04-05 02:00:34 +01:00
3d93929134
Removed all side-effect support. 2022-04-03 12:02:10 +01:00
ed47d06960 Added Input to manage user input. 2022-02-18 01:28:12 +00:00
a8f8ca1131 Added rudimentary frame timings gui. 2022-02-17 20:57:07 +00:00
74e1277f58 Moved paint jobs to Egui.
Removed lock trees from `app::run`.
Added `FetchUpdateLock`.
2022-02-17 20:19:25 +00:00
739b60f9ae Reverted image back to 0.23.14. 2022-02-17 15:09:43 +00:00
b269deaec4 Added cursor parallax. 2022-02-17 14:38:41 +00:00
7159f1d3ee Uvs are now calculated with a matrix. 2022-02-17 13:46:02 +00:00
97dfd24e75 Now using futures's Mutex. 2022-02-16 06:38:46 +00:00
8f27b1e2ca Fixed some doc comments.
Removed `set_display_always_below`, as it wasn't neede anymore since we always choose the full desktop size.
2022-02-16 06:14:35 +00:00
eb8a04b4bd Moved renderer to it's own crate. 2022-02-16 00:38:43 +00:00
8d596faada Updated parking lot to 0.12.0. 2022-02-15 03:07:00 +00:00
8540878123 Updated image to 0.24.0 2022-02-14 20:23:28 +00:00
2e500d2582 Updated locked dependencies. 2022-02-14 20:11:38 +00:00
92e4514947 Moved settings window to it's own crate. 2022-02-14 19:56:08 +00:00
8407bbae97 Wgpu now has an async mutex. 2022-02-14 19:27:02 +00:00
e5f0e98c50 Moved initial lprofile loading to it's own function. 2022-02-14 18:07:16 +00:00
843a8b0d6f Profiles now has an async mutex. 2022-02-14 17:59:21 +00:00
26e0dd061c Panels now uses an async mutex. 2022-02-14 17:44:14 +00:00
ba8edd9d87 Playlist now properly locks it's inner data. 2022-02-14 17:12:36 +00:00
e9645159c2 async_lock::Mutex::lock is now disallowed. 2022-02-14 16:39:28 +00:00
f13863d4ce Egui now uses async locks.
`Lock` now accepts any guard.
`FutureRunner` now asserts it isn't called more than once.
2022-02-14 16:28:06 +00:00
6696aafb07 Moved profiles onto their own crate. 2022-02-14 04:11:20 +00:00
9cce16cef9 Moved panels into their own create.
Moved `rect` onto `zsw-util`.
2022-02-14 04:01:36 +00:00
693af3a758 Moved wgpu and egui modules onto their own crates. 2022-02-14 03:51:16 +00:00
da3f24d5f7 Moved image processing into it's own crate. 2022-02-14 03:38:16 +00:00
9e69f41144 Moved util and playlist modules onto their own crates. 2022-02-14 03:29:16 +00:00
9c65f3db87 Removed all existing command line arguments in favour of profiles.
Rects now have separate position and size types.
2022-02-14 01:57:15 +00:00
47f94bbfeb Now customizing the rayon global thread pool to avoid duplicated thread names. 2022-02-12 12:33:56 +00:00
2d2e2f8958 Renamed NeverFutureRunner to FutureRunner and made it be able to run any future.
`Playlist` now uses an async mutex.
Redesigned `visit_files_dir` in order to use generators.
2022-02-12 10:03:11 +00:00
b32c8ab72a Playlist and ImageLoader now use async so they may be cancelled without a dedicated channel. 2022-02-12 08:09:24 +00:00
36ef4213a3 Added proc macro to create side effect functions. 2022-02-04 20:18:14 +00:00
e63d0698f6 Created a workspace and moved zsw to within it.
Updated all dependencies in `Cargo.lock`.
2022-02-04 00:03:54 +00:00
c95dea9c34 Moved settings window to it's own thread (somewhat unsuccessfully).
Added deadlock detection in debug mode.
2022-02-02 01:32:16 +00:00
9ae9b3c73e Started work on profiles. 2022-01-26 14:56:06 +00:00
565c9abe3d Heavily revised path loading, again.
Root path can now be changed.
2022-01-24 00:52:43 +00:00
88f6e0a97e Started work on properly integration egui. 2022-01-21 17:20:11 +00:00
2dd5889aa0 Switched logging to fern. 2022-01-21 14:23:44 +00:00
6222244d0b Rendering now uses the surface size instead of window size to avoid panics during resizing. 2022-01-19 15:40:43 +00:00
1f17478d07 Added initial support for egui. 2022-01-18 14:44:25 +00:00
d497a28eb0 Now using wgpu for the backend rendering.
Separated most of application code into `App`.
Slightly cleaned up other parts of the project.
Removed image downscaling.
Updated logging and command line dependencies.
2022-01-18 12:24:20 +00:00
f69af3050b Image loader arguments are now loaded from a file. 2021-12-30 00:42:06 +00:00
a43d6b205a Heavily revised and split all of image loading into 3 sections.
`priority_spmc` now has a max capacity.
2021-11-18 20:35:13 +00:00
7307ad93c1 Implemented rrc and once_channel channels.
The image loader now asks the distributer for a path, and then requests from the loader threads.

This isn't the final design, but it's a step towards it.
2021-11-17 16:12:28 +00:00
7950c26249 Changed the hasher used to a stable one to prevent all cache being useless after upgrades. 2021-11-16 23:18:52 +00:00
56822f9941 Heavily refactored image loading. 2021-11-16 02:24:26 +00:00
f283385edf Initial commit.
Brought over from `zss` and adapted / cleaned up.
2021-10-22 06:37:35 +01:00