GSoC coding period started on Monday, so this is a good time to blog about what I’ve started working on and what’s my milestone to finish the project. First off, I’ve created a simple mockup using Sonny Piers’ amazing Workbench app. This is the first step in knowing how we want the UI to look like, at least in the first iteration.

Thanks to the mockup, I’ve created a milestone with approximate time estimates for each task. This is what my milestone looks like:
First part – Implement a basic media history viewer (18 days)
- Add
MediaTimeline
list model that can load media messages (6 days, in progress) - Add a subpage to the
RoomDetails
dialog for the media history with aGtkGridView
that links to theMediaTimeline
(2 days) - Add
MediaHistoryImage
widget that can show an image message type (3 days) - Add
MediaHistoryVideo
widget that can show a video message type (3 days) - Add
MediaHistoryAudio
widget that can show an audio message type (1 day) - Add
MediaHistoryVoice
widget that can show a voice message type (1 day) - Add
MediaHistoryFile
widget that can show a file message type (2 days)
Second part – Add click actions to the media history widgets (18 days)
- Integrate the
MediaViewer
inside the media history page as a subpage (2 days) - Make image and video message types to be opened by the
MediaViewer
on click (2 days) - Make the file of the
MediaHistoryFile
widget to download on click and show the progress (6 days) - Make the file of the
MediaHistoryFile
widget open on click when it’s downloaded (2 days) - Add a dialog to listen to the audio of the
MediaHistoryAudio
andMediaHistoryVoice
widgets on click (6 days)
Third part – Filters & Animations (12 days)
- Wrap the
MediaTimeline
list model to aGtkFilterListModel
to be able to filter the list (1 days) - Add options to filter the media history by media type (4 days)
- Add animations to the
MediaViewer
to open and close photos and videos (3 days) - Add a swipe back gesture to the
MediaViewer
, similar to the one found in Telegram (4 days)
Sneak peek: Media viewer animations
Some days ago I started working on a media viewer for my app Telegrand. I wanted a similar feeling of the media viewer on Telegram iOS and Android, which I’ve always found really cool to use. You can see my progress in the tweets below. The animations and the swipe gestures were liked quite a bit, so I’ve decided to add them in Fractal too, so that they can also be used in the media history viewer.