build.rs now runs glib-compile-schemas on data/ so that debug builds
can find the schema without a system-wide install. main.rs sets
GSETTINGS_SCHEMA_DIR from the build-time constant when running in
debug mode.
Add the full Rust + GTK4 + libadwaita project skeleton:
- Cargo.toml with all dependencies (gtk4 0.11, libadwaita 0.9,
webkit6 0.6, reqwest, serde, tokio, libsecret)
- build.rs that compiles Blueprint .blp files and bundles a GResource
- data/ui/window.blp — AdwApplicationWindow with AdwNavigationSplitView,
sidebar with refresh button/spinner and primary menu,
content page with article menu
- data/resources.gresource.xml bundling UI, HTML, and CSS
- data/net.jeena.FeedTheMonkey.gschema.xml with all GSettings keys
- html/content.html and html/content.css (minimal placeholders)
- src/main.rs, src/app.rs — AdwApplication with APP_ID net.jeena.FeedTheMonkey
- src/window.rs — AdwApplicationWindow GObject subclass loading the
Blueprint template and persisting window size in GSettings
- COPYING (GPL-3.0) restored from master
The app compiles and the binary is ready to open a blank window.
For some reason the JS never got loaded when it was in it's own
file, therefor I moved it into the HTML where it gets called.
Also when a session id on the server was expired or something, you
weren't able to log out, there is now code which fixes that.
There was no feedback on any login errors when a user provided a
wrong url, username, password or a disabled API. This commit
adds feedback to the user in this cases.
Fixes#15
As one of the first steps to offline capability we download all
images and put them into the JSON stirng and into the content
as data-uris for <img>-tags. This way you can go offline and keep
enjoying pictures in your feeds, at least untill you restart
FeedTheMonkey for now.