GSoC update #1 – Planning

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.

Media history viewer mockup

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 a GtkGridView that links to the MediaTimeline (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 and MediaHistoryVoice widgets on click (6 days)

Third part – Filters & Animations (12 days)

  • Wrap the MediaTimeline list model to a GtkFilterListModel 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.

2 thoughts on “GSoC update #1 – Planning”

  1. I assume it’s laggy just because of the screen recording. I love the animations! It feels like it’s alive! ❤


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s