Previously kinetic scrolling was disabled while loading more
messages and was never re-enabled. This could lead to rooms
not scrolling with touch gestures.
Now after we add widgets to the top, we re-enable kinetic
scrolling for our ScrolledWindow.
Fixes https://gitlab.gnome.org/GNOME/fractal/issues/458
"size-allocate" signal can be triggered even when the revealer's state
doesn't change, so we need to check if the revealer is actually
revealing.
The 'obvious' solutions for this don't work. If we connect to
"child-revealed", the scroll only happens *after* expanding the
revealer. If we connect to "reveal-child", we'll only scroll to the
bottom at the beginning of the revealer's expansion, so the list will
grow longer without scrolling.
The handling is still imperfect though, since we always scroll to bottom
regardless where the revealer is.
When allowing stable builds to test verbosity, there
were a few mistakes that caused the stable build to fail.
This commit cleans up those mistakes and makes sure
we don't have an unused variable that produced a warning
for stable builds.
By default, a release build of Fractal will only log errors.
A debug build will use the max level for development
purposes.
Running `fractal -v` will get users the same verbosity as
the debug build. Subsequent `-v`s will use increased
verbosity that will include extra info from our dependencies.
Previously we moved from println! to the `log` crate, but `log` requires you to set a logger in order to output anything. `loggerv` is one such logger, with detailed output that tells you exactly where a log comes from.
Closes https://gitlab.gnome.org/GNOME/fractal/issues/430
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