102 Commits

Author SHA1 Message Date
36ef4213a3 Added proc macro to create side effect functions. 2022-02-04 20:18:14 +00:00
1017a766f1 Cleaned up documentation on the deadlock side-effect. 2022-02-04 18:42:50 +00:00
45b1d2658b Marked crossbeam::channel::Receiver::recv as blocking. 2022-02-04 01:13:38 +00:00
e9541accce Renamed MightBlock to MightDeadlock. 2022-02-04 00:51:40 +00:00
02cfc23a2c Added side effect detection.
This is to prevent the existing deadlocks by annotating all blocking.
2022-02-04 00:36:16 +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
e2ce1e4e0c Removed old TODO comments. 2022-02-02 00:29:59 +00:00
10165b923b Renderer, event handler and settings window no longer carry any references. 2022-02-02 00:12:49 +00:00
b06dd4c969 Split image loader into ImageLoader and ImageReceiver.
Implemented joining all threads.
2022-02-02 00:05:26 +00:00
50fc798dee Slightly overhauled thread spawning in app::run. 2022-02-01 23:07:16 +00:00
1324b3d7c0 Moved all panels onto their own struct. 2022-02-01 22:27:50 +00:00
53b19d4f0e Moved panel drawing onto it's own widget.
Slightly revised new panel state.
2022-01-30 23:26:14 +00:00
6000be373d Moved settings window to it's own module. 2022-01-30 22:47:45 +00:00
2ecdd29933 Updated formatting. 2022-01-30 19:34:59 +00:00
8288206531 Moved event handler and renderer onto their own modules. 2022-01-30 18:58:54 +00:00
ca991912d6 Starting progress is now at most 0.5. 2022-01-30 18:52:21 +00:00
49bd2e581d Wgpu now doesn't require a static lifetime window. 2022-01-30 18:50:35 +00:00
8b33caa0b1 Removed App and Inner, decentralizing the full app state. 2022-01-30 18:44:47 +00:00
8403aa4522 Panels renderer now stores all panel images. 2022-01-29 08:51:13 +00:00
c61cba110f Image loader now returns the image path alongside the image. 2022-01-29 07:08:05 +00:00
2d4364e56b Slightly improved documentation on panels renderer. 2022-01-29 07:03:04 +00:00
40bcf38d9f Fixed some documentation on wgpu. 2022-01-29 06:38:42 +00:00
efc3bac7d5 Image loader now distributes DynamicImages. 2022-01-29 06:00:14 +00:00
edb325a7c0 Removed useless end parameter from uvs. 2022-01-29 05:28:10 +00:00
5d7717c392 Fixed cachedd paths being reloaded on every cycle. 2022-01-29 05:21:06 +00:00
d12bca8cdd Revised documentation on the paths channel. 2022-01-29 05:04:06 +00:00
ef56699e6e Revised logging.
Default level for other libs is now `Info` in debug builds.
2022-01-29 04:57:51 +00:00
8e97e2a259 Merged update and render thread.
Updater not doesn't block anymore.
2022-01-26 15:49:12 +00:00
9ae9b3c73e Started work on profiles. 2022-01-26 14:56:06 +00:00
772f63d66e Logging in debug mode now outputs Trace.
"Improved" panel skipping.
2022-01-26 04:40:18 +00:00
8a79fa3f30 Moved event handling into it's own function. 2022-01-26 04:22:46 +00:00
ea413ae971 Image loader threads are now loaded during running. 2022-01-26 04:17:56 +00:00
4481c8e969 Removed should_quit flag. 2022-01-26 03:58:19 +00:00
08b8ab4d60 Moved paths distributer and receiver into their own modules. 2022-01-26 03:50:19 +00:00
e526995546 Paths now stores all paths in a HashSet. 2022-01-26 03:45:08 +00:00
4052ef476b Removed ImageReceiver. 2022-01-26 03:18:41 +00:00
cb155e4666 Added ability to add new panels. 2022-01-25 22:46:51 +00:00
3564a6a4f6 Removed image loader arguments. 2022-01-25 22:25:16 +00:00
a10a73ff7c Cached paths's memory is now kept on root path changes. 2022-01-25 22:13:43 +00:00
5dc80d3af7 Now deriving paths::Inner. 2022-01-24 17:19:49 +00:00
7bb66e751b Now using drag values instead of sliders for geometry. 2022-01-24 17:18:25 +00:00
dfeeb66633 Fixed panels' collapsing ui to close itself when changing geometry.
This was due to using the geometry as an id, we now just enumerate the panels.
2022-01-24 02:04:27 +00:00
9fea3b7691 Added more panel settings.
Changing the root path not clears all panels and images.
2022-01-24 01:18:25 +00:00
565c9abe3d Heavily revised path loading, again.
Root path can now be changed.
2022-01-24 00:52:43 +00:00
ab96b7dac6 Re-added x11 window type due to not being able to position window outside of a monitor's position.
Implemented better egui integration.
2022-01-21 20:15:55 +00:00
788cdb505d Panel's geometry is now public. 2022-01-21 18:56:36 +00:00
ebffc8643a Panel images no longer store the panel size.
Added panel resizing with egui.
2022-01-21 18:31:28 +00:00
513f30e075 Image loader now doesn't do requests anymore and simply sends images back in a channel.
`PanelImage` now has all fields private and only a single image requester.
Removed all custom channels.
Removed `image-backlog` argument.
2022-01-21 18:22:32 +00:00
5955d57a80 Removed per image vertex buffer. Now using a shared vertex buffer and passing uvs in the uniforms. 2022-01-21 17:57:19 +00:00