1. 29 Jun, 2018 3 commits
  2. 28 Jun, 2018 5 commits
    • Debarshi Ray's avatar
      image-view: Reduce memory fragmentation · 491a1822
      Debarshi Ray authored
      Instead of allocating and de-allocating memory for the throwaway Cairo
      surface on every invocation of the GtkWidget::draw virtual method,
      allocate a memory area big enough to draw the entire widget and keep
      re-using it.
      491a1822
    • Debarshi Ray's avatar
      image-view: Rename variables for clarity · ed033da0
      Debarshi Ray authored
      ed033da0
    • Debarshi Ray's avatar
      image-view: Rename variables for consistency · 2fcbfc0f
      Debarshi Ray authored
      Use "allocation" instead of "viewport" and "scaled" instead of "real".
      2fcbfc0f
    • Debarshi Ray's avatar
      base-item: Use the correct stride value · c3ef33ea
      Debarshi Ray authored
      The stride with which the Cairo surface is created should be the same
      as the one with which data was written to it. The Cairo surface and its
      underlying memory buffer were being created based on the stride
      specified by Cairo, while data was being written to it based on a
      potentially smaller stride value, which could have caused visual
      glitches.
      
      GEGL_AUTO_ROWSTRIDE represents the product of the bytes per pixel of
      the Babl format with the requested width. This might not match the
      value specified by the Cairo surface because it might be more
      performant to have extra padding at the end of each row to satisfy
      alignment requirements, etc..
      
      There are no known bugs caused by this, possibly because a
      CAIRO_ARGB32 pixel has a nicely rounded length of 32 bits, which makes
      a mismatch unlikely. However, the possibility cannot be ruled out.
      There was a similar bug in gegl:pixbuf [1] where the stride with which
      a GdkPixbuf was created didn't match the one with which data was read
      from it.
      
      [1] GEGL commit aaf2477caec750
          https://bugzilla.gnome.org/show_bug.cgi?id=779135
      c3ef33ea
    • Debarshi Ray's avatar
      image-view: Use the correct stride value · 15542a14
      Debarshi Ray authored
      Multiplying the bytes per pixel of the Babl format with the requested
      width is the same as GEGL_AUTO_ROWSTRIDE. Therefore, it makes no sense
      to pass an explicit stride if that's just the same thing as
      GEGL_AUTO_ROWSTRIDE.
      
      The correct value would be the one specified by the Cairo surface
      because ultimately the size of the allocated memory is defined by the
      product of the stride and height. Any mismatch between Cairo and
      GEGL_AUTO_ROWSTRIDE, due to extra padding at the end of each row to
      satisfy alignment requirements, etc., would affect performance.
      
      It's hard to know the performance impact of the current code, and
      a CAIRO_ARGB32 pixel has a nicely rounded length of 32 bits, which
      makes a mismatch unlikely. Still, it is wise to make this change
      because the Cairo documentation recommends this. For what it's worth,
      GIMP also uses the Cairo stride value when copying pixels out of a
      GeglBuffer into a Cairo surface.
      15542a14
  3. 11 Jun, 2018 1 commit
  4. 01 Jun, 2018 2 commits
  5. 24 May, 2018 3 commits
  6. 27 Apr, 2018 1 commit
  7. 06 Apr, 2018 1 commit
  8. 27 Mar, 2018 1 commit
  9. 21 Mar, 2018 2 commits
    • Debarshi Ray's avatar
      export-notification: Fix typo · 4771ebd3
      Debarshi Ray authored
      The housekeeping plugin's D-Bus name changed in GNOME 3.24, not 3.26,
      which was shipped in Fedora 26. Confusing!
      
      Fallout from 8ad2cbdd
      4771ebd3
    • Debarshi Ray's avatar
      export-notification: Unbreak the "Empty Trash" button on GNOME >= 3.26 · 8ad2cbdd
      Debarshi Ray authored
      The /org/gnome/SettingsDaemon/Housekeeping D-Bus object got moved to
      the org.gnome.SettingsDaemon.Housekeeping bus name when the
      gnome-settings-daemon plugins were split into their own processes in
      GNOME 3.26.
      
      Support for older GNOME versions have been retained to allow new
      Flatpaks to run on older host OSes.
      8ad2cbdd
  10. 15 Mar, 2018 1 commit
  11. 06 Mar, 2018 5 commits
  12. 02 Mar, 2018 2 commits
  13. 27 Feb, 2018 1 commit
  14. 26 Feb, 2018 3 commits
  15. 16 Feb, 2018 2 commits
  16. 15 Feb, 2018 7 commits