Size, position and window maximize state are saved in gsettings
when closing Fractal. They are then restored on startup.
Window position is not working on all windowing systems.
Fixes#123
Currently the cache's directory is only initialized at first access. If
the cache gets destroyed the directory won't be created again, so future
cache data in the process cannot be saved. This can be reproduced by
logging in immediately after logout.
change get_image_media_info to include thumbnail
propagate need for backend
try to debug the code
remove a println I forgot
Progress on using channel for thumb uploads
move thumbnail code to the backend
fix mimetype on json and only call ge_image_media_info on image files
remove random 'e' from util.rs
move get_image_media_info back to the frontend
create Info struct
hehe
lol
add duration to
remove unwraps and put early return in place
change branch in flatpak file to master for our master branch
add gstreamer-editing-services dependency
trade match statements for the ? operator
start video upload support
match mime types from the matrix-sdk library
delete meee
HdyDialog is an adaptive version of GtkDialog that's always modal and adapts to fit the size of the screen if folded with HdyLeaflet. In the process of changing to use HdyDialog the width_request of the dialogs was moved from the window to their HeaderBars.
Related to https://gitlab.gnome.org/GNOME/fractal/issues/377
tree_magic was also used to get the mime type of uploads. We
can instead use gio::content_type_guess(). We can use it here because we are handling bytes, which is what it requires.
Fractal crashes when switching to rooms with images due
to an issue with tree_magic. We used tree_magic to sniff out
the mime type, but we can use gio::FileInfo instead.
Related to https://gitlab.gnome.org/GNOME/fractal/issues/37
Right click is not possible on touchscreens, so our right click menu would be inaccessible.
Here we use GtkGestureLongPress to create our right click menu, but only on touch devices.
The width-request of the HeaderBar dictates what size the room HeaderBar needs to be to fold at and the minimum width of the HdyLeaflets total in this case.
Prevents the room content from becoming too narrow.
The room_info labels could cause the leaflet to fold before
they could ellipsize, causing Fractal to fold at the wrong width. By wrapping in ScrolledWindow we work around that issue.
Fractal's main view could only shrink so far, barring usage at smaller sizes such as a phone's screen. HdyLeaflet enables
Fractal to adapt.
Related to https://gitlab.gnome.org/GNOME/fractal/issues/377
We used to request the complete room state to get only the memebers list
if there was no avatar, which was expensive and we actually have already
the members list.
This reduces memory use.
`markdown_popover` used the deprecated start and end properties and abused margins to space elements out.
Now it uses the `margin` property to create margins around widgets on all sides, as well as the properties of GtkGrid and GtkBox.
tree_magic did not previously return an Option from `from_filepath`, and used `unwrap()` internally, occasionally causing a crash when we used `is_gif()`.
On git master they have fixed this, so that's what we need to use until they put out a new release.
Related to https://gitlab.gnome.org/GNOME/fractal/issues/37
We implemented the structs to which we parse the sync response except
the events, which are a tough case for another commit. Some enhancements
and cleanups were made to the code surrounding the sync management in
order to be able to remove unnecessary error handling and/or queries.