1. 15 Mar, 2018 4 commits
    • Ell's avatar
    • Jehan's avatar
      libgimp, pdb: some generated files which were not in previous commits. · c5a0189b
      Jehan authored
      It's weird. I didn't see these when I added the GimpDistanceMetric enum
      type. Not sure why. Adding these now.
    • Jehan's avatar
      app: don't sync Blend tool's gradient-repeat property with gimp:blend... · c403e472
      Jehan authored
      ... when gradient_type >= GIMP_GRADIENT_SHAPEBURST_ANGULAR.
      Our current GUI code for the Blend tool options disables the "Repeat"
      widget with any of the shaped and spiral gradient types, which means (I
      assume) no repeat mode is allowed on these gradients. Nevertheless it
      was possible to change the repeat mode in another gradient type, then
      switch to one of these and get the repeat processed even though the GUI
      shows insensitive.
      I could simply reset the repeat mode to GIMP_REPEAT_NONE when setting
      one of these gradient types, but I think you'd want the repeat to stay
      at its value (being insensitive is enough to mean whatever value is set
      is not taken into account). So instead, I just unsync this specific
      property when appropriate.
      Note also I don't do this in the gimp:blend operation code because I am
      not sure this specific behavior is meant to be a generic blend behavior
      or just relative to the tool (render of the shaped gradients is barely
      different with a repeat, but there is still a difference).
    • Jehan's avatar
      app: add "distance-metric" property to the Blend tool options. · 87330a77
      Jehan authored
      It seems old blend tool (from GIMP 2.8) was using manhattan distance,
      whereas the new one uses euclidean. I guess there must be use cases for
      both. In any case, it is a good idea to simply propose the option since
      the property exists in the "gegl:distance-transform" operation.
      See also bug 781621.
  2. 14 Mar, 2018 5 commits
    • Ell's avatar
      app, pdb, libgimp, plug-ins, menus: rename layer composite modes · a7f3a2dd
      Ell authored
      Our composite modes don't correspond directly to the Porter-Duff
      operators after which they're named, and these names aren't too
      descriptive anyway.
      Rename the composite modes as follows:
        Source Over       =>  Union
        Source Atop       =>  Clip to Backdrop
        Destination Atop  =>  Clip to Layer
        Source In         =>  Intersection
      Update relevant code, including UI text, enumerator names, function
      names, and action names.
    • Ell's avatar
      pdb: fix paths in README_NEW_PDB_PROC · d29facda
      Ell authored
    • Ell's avatar
      pdb: fix generated file paths in enumgen.pl · 466025ab
      Ell authored
    • Jehan's avatar
      app: check "gradient-repeat" sensitivity at Blend Options creation. · 11ce60ba
      Jehan authored
      When starting the tool with one of the gradient types for which the
      repeat option should be deactivated, it is not. Run the handler function
      once at GUI creation.
      Also compare the gradient type with an enum value, which makes the test
      clearer than using an int.
    • Jehan's avatar
      Bug 781621 - PDB shapeburst gradient is slower than the blend tool. · 5751bb11
      Jehan authored
      PDB function gimp_edit_blend() was based on "gimp:shapeburst" operation
      whereas the rest of GIMP (in particular, the Blend tool) used
      "gegl:distance-transform" which is much faster.
      Setting the operation to "manhattan" metric ensures that it still
      renders the same way as in 2.8 while being a lot faster.
      There was still a problem regarding as how it renders differently from
      the Blend tool, but it turns out that the Blend tool is the one
      rendering differently from how it used to in 2.8. We should discuss
      adding the "metric" property in the tool options.
  3. 13 Mar, 2018 1 commit
    • Jehan's avatar
      app: disable multi-threading on "gimp:shapeburst" operation. · 6f127f9d
      Jehan authored
      This operation is currently broken on multi-thread. So disable
      multi-threading, at least temporarily (if not forever since apparently
      we can get similar output with "gegl:distance-transform", but much
      faster and nicer). See bug 781621.
  4. 12 Mar, 2018 2 commits
  5. 11 Mar, 2018 5 commits
  6. 10 Mar, 2018 14 commits
  7. 09 Mar, 2018 5 commits
    • Jehan's avatar
      Bug 794152 - JPEG 2000 Code Stream .j2c support. · 3d554529
      Jehan authored
      Current OpenJPEG code only supported the base JP2 container. It now
      supports also the JPEG 2000 codestream (which is usually contained
      inside other formats, like the JP2 container format, but can also
      sometimes be on its own).
      The current magics and extension strings were also mixing all kind of
      formats. This is now cleaned up a bit.
    • Jehan's avatar
      plug-ins: deduct color space from profile if not specified otherwise. · 00e828a3
      Jehan authored
      As explained in the previous commit, the color space is not always
      properly declared, in particular with J2K files. If a profile is present
      in such a case, try to deduct the color space from this information.
    • Jehan's avatar
      plug-ins: assume RGB/RGBA for JPEG2000 without declared color space. · 6f5c20ee
      Jehan authored
      It seems that the color space is not necessarily declared for a JPEG2000
      image. From tests, it looks like it especially happens with JPEG2000
      codestream (.j2c or .j2k). This variant is apparently mostly designed to
      be embedded (from what I read), which may explain why the color space is
      not always set (I assume the embedding format would have the color space
      information). Mostly a guess.
    • Jehan's avatar
      configure: make clearer the test for native GEGL executable. · 65ba879c
      Jehan authored
      If running for instance in a cross-compilation, I need to make clearer
      the fact we are looking for a native GEGL and also that we are looking
      for the executable (used during the build), not the library. This is a
      different test as the one for the library with PKG_CHECK_MODULES (which
      looks for the target platform's library).
    • Jehan's avatar
  8. 08 Mar, 2018 1 commit
  9. 07 Mar, 2018 3 commits