Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • ristretto ristretto
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Graph
    • Compare revisions
  • Issues 33
    • Issues 33
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • AppsApps
  • ristrettoristretto
  • Issues
  • #29
Closed
Open
Issue created Aug 23, 2019 by Bugzilla Migration@bugzilla-migration

Simply load the image in a thread instead async file reading and progressive loading

Submitted by Magnus Bergman

Assigned to Igor @f2404

Link to original bug (#15874)

Description

Created attachment 8943 The patch

The current code uses the asynchronous API of GFile to read files and the progressive API of GDK-Pixbuf for decoding the image. This allows images to be gradually displayed while asynchronously loaded while (at least theoretically) avoid using threads. This is neat and all, but IMHO overly complex and possibly even error prone. This patch, instead, simply loads the image in a separate thread. This will hopefully solve bug 11577 as well as making it easier to support alternative image loader backends (bug 15288). On the downside it also removes support for gradually displaying images as they load. But this isn't working now anyway (the function to update the view is first invoked then the image is completely decoded). And even if it worked, the use case would be quite limited since images load pretty much instantaneously nowadays. And a partially loaded image showing up for a brief moment would probably only be perceived as ugly, and a bad user experience.

Patch 8943, "The patch":
ristretto-20190823-noprogressive.patch

Blocking

  • Bug 15288
Assignee
Assign to
Time tracking