Commit Graph

9 Commits (6b3b45a1bcb90076e0f7c0fd237635b3f9273699)

Author SHA1 Message Date
Nefo Fortressia 6b3b45a1bc
feat: partially implement workspace opening
This implementation will not work atm.

We still need to implement a connection between the main thread and the Tokio runtime.

rt.spawn() requires the future to implement Sync, which open_folder() does not.

This is because it contains pointers to GTK4 objects, which aren't thread-safe.

Or, alternatively just use another alternative runtime that doesn't require Sync.

Idk if there are any.
2021-12-18 11:46:12 +07:00
Nefo Fortressia 18ac470c47
refactor: make tab label their own widget
This helps with downcasting which greatly helps with type safety.
2021-11-15 07:14:59 +07:00
Nefo Fortressia 8a9c414aee
refactor: reexport component preludes 2021-11-12 20:20:48 +07:00
Nefo Fortressia fb0a4e731d
refactor: reexport components in components/mod.rs 2021-11-12 19:45:19 +07:00
Nefo Fortressia 48f63a88ea style: format codebase with cargo fmt 2021-10-29 09:44:36 +07:00
Nefo Fortressia 6144feb857 refactor: move editor code to a separate EchidnaCoreEditor widget
This allows for a more component-based codebase, like those in web development.

Also added barebone minimap and refactored the file loading.

Should have commited them in a separate commit, but I'm just used to overusing git add -p.
2021-10-28 17:17:27 +07:00
Nefo Fortressia ffdc612e7e feat: implement barebone features for Sidebar widget 2021-10-28 17:11:14 +07:00
Nefo Fortressia 385f2dda32 refactor: move all traits to EchidnaWindow struct
Before, all the traits are implemented for EchidnaApplication.

This is added to better support using the app with many windows open.

EchidnaApplication may be obsolete now, but I'm not removing it for now.
2021-10-24 14:20:53 +07:00
Nefo Fortressia 3408ad2830 refactor: rewrite in Rust 2021-10-18 15:02:41 +07:00