Skip to content
  1. Apr 25, 2024
  2. Apr 24, 2024
    • Jehan's avatar
      meson: fixing the datadir/libdir/sysconfdir. · 973c2dd7
      Jehan authored
      As noticd by Bruno, the meson port is inconsistent with our 2.10
      autotools build here too (and therefore our data path standards).
      Fixing.
      973c2dd7
    • Jehan's avatar
    • Bruno Lopes's avatar
      build: Add pedagogic README towards 'gimp-macos-build' repo · b494944f
      Bruno Lopes authored
      It's not obvious (when browsing in the repo) where the macOS files are.
      Now, that we have one folder per OS, this became desirable for clarity.
      b494944f
    • Martin's avatar
      Update Slovenian translation · 9406b61a
      Martin authored and Administrator's avatar Administrator committed
      9406b61a
    • Jehan's avatar
      tools: update the rm command for macOS. · c40dc612
      Jehan authored
      Hopefully now the CI jobs can run?!
      c40dc612
    • Martin's avatar
      Update Slovenian translation · 16d15dcc
      Martin authored and Administrator's avatar Administrator committed
      16d15dcc
    • Anders Jonsson's avatar
      Update POTFILES.in · 80b77277
      Anders Jonsson authored
      80b77277
    • Jehan's avatar
      tools: fix in-build-gimp.sh on macOS. · 4e8f7c5b
      Jehan authored
      This should hopefully fix:
      
      > realpath: /Users/circleci/macports-gimp3-arm64/var/macports/build/_Users_circleci_project_ports_graphics_gimp3/gimp3/work/build/.GIMP3-build-config-: No such file or directory
      
      Though it's harder to verify because of the "Intel macOS resource brownouts"
      going on on CircleCI infra, and only x86_64 runners allowed me to SSH to them.
      But I think that's the right fix seeing the error.
      4e8f7c5b
    • Jehan's avatar
      plug-ins: port file-wmf-load to GimpVectorLoadProcedure. · 55b5e14f
      Jehan authored
      The preview widget is a bit stretched, though at least I fix the contents to be
      distorted (instead, the preview is fine but we've got black-filled parts
      around). I'm not focusing on it because anyway, I'm not sure either if the
      preview is that important, or (if it is) whether we should not just integrate it
      as part of GimpVectorLoadProcedureDialog, i.e. for every vector images.
      55b5e14f
    • Martin's avatar
      Update Slovenian translation · ecec7985
      Martin authored and Administrator's avatar Administrator committed
      ecec7985
    • Bruno Lopes's avatar
      gitlab-ci: Unify artifacts 'expire_in' time a bit more rationally · 5495483c
      Bruno Lopes authored
      For our two "development" sub-stages, the expiration is as follows:
      The 'dependencies' stage artifacts continues to expire in 2 hours.
      Now, all 'gimp' ones expires in 2 days (to avoid time zone limbo).
      
      For "stage"/tests and "production"/dist, the expire time depends
      on the source of the CI pipeline. If the artifact is oriented to a
      'short-span' source (e.g. MRs and commits), it expires in 2 days.
      If is oriented to a 'LONG-span' one (e.g. web, schedule), 8 days
      (we choose 8 to have a +1 day artifact just in case if something
      goes wrong in the weekly schedule day, which isn't rare actually).
      5495483c
    • Jehan's avatar
      app: fix cases of missing data directories by always trying to mkdir them. · 390340b4
      Jehan authored
      This happens in particular for in-build runs (or when using
      GIMP3_DIRECTORY environment variable on an empty directory). In any
      case, I don't see why we wouldn't try and create a directory which was
      configured for data storage.
      390340b4
    • Jehan's avatar
      meson: fails to compile with -Dpython=disabled flag. · 3fbf34da
      Jehan authored
      We compile GObject-Introspection anyway (except for cross-builds, where
      anyway we don't rely on local Python scripts), so even if not installing
      the Python plug-ins, still use them locally.
      3fbf34da
    • Alx Sa's avatar
      plug-ins: Fix IFS color updates · 106706ca
      Alx Sa authored
      Resolves #11176
      
      After the initial color space invasion, changing colors in the IFS color
      transformation section no longer affected the image. It seems that
      ifsD->*_cmap->color held the actual color selected by the user, but
      this value was not making it into elements[ifsD->current_element]->v.*_color.
      This patch connects the *_cmap->color values to the functions used
      to draw the image on the screen.
      106706ca
    • Lloyd Konneker's avatar
      ScriptFu: build: "stable release" not install test framework or test plugins · 283ec65d
      Lloyd Konneker authored and Lloyd Konneker's avatar Lloyd Konneker committed
      meson.build exclude subdirs script-fu/test/
      and script-fu/scripts/test
      on a stable release.
      283ec65d
    • Lloyd Konneker's avatar
      ScriptFu: move test plugins and install more in unstable build · 60a584f9
      Lloyd Konneker authored and Lloyd Konneker's avatar Lloyd Konneker committed
      Move test plugins from /scripts to /scripts/test.
      POTFILES.skip that directory.
      
      Add a readme to scripts dir.
      
      Revise readme in scripts/test
      
      Rename test9.scm which tests the new byte type support in Scheme.
      Install it in unstable build, it is an important test,
      long and sophisticated.
      
      Install contactsheet.scm as a test plugin in unstable build.
      See test/meson.build for comments about its issue.
      60a584f9
    • Lloyd Konneker's avatar
      Plugins: GUI: Fix redundant Clothify plugins · deb4dc81
      Lloyd Konneker authored and Lloyd Konneker's avatar Lloyd Konneker committed
      Formerly, both Clothify and "Clothify v3" are installed
      in menu Filters>Artistic.
      They are duplicates.
      
      Clothify is the original using the old-style, homegrown interface.
      "Clothify v3" is new-style, GimpProcedureDialog interface.
      
      Both are marked for translation.
      Only Clothify (v2) is translated (in potfiles.in)
      "Clothify v3" is not translated (in potfiles.skip)
      This commit does not break string freeze.
      
      Moves "Clothify v3" to Demos menu.
      It only installs in an unstable build.
      The new is installed in unstable only for comparison with the old.
      
      FUTURE: when no string freeze:
      Swap the new and the old.
      Move "Clothify v3" clothify-v3.scm to potfiles.in
      and move "Clothify" clothify.scm to potfiles.skip.
      Swap the menu items, so the user doesn't see "v3."
      deb4dc81
    • Jehan's avatar
      libgimp: fix libgimp introspection. · 25b9f677
      Jehan authored
      - Fix a few broken references and an inconsistent argument name.
      - Add the new headers in the introspectable header list.
      - Add a few missing class descriptions for GimpProcedure and subclasses.
      25b9f677
    • Jehan's avatar
      libgimp: new fill_start() and fill_end() class method for GimpProcedureDialog. · dd6acc86
      Jehan authored
      Instead of filling default GUI for a specific type of plug-in procedure in
      fill_list(), we add 2 methods:
      
      * fill_start() is ensured to run once (and only once) before any fill_list()
        code runs.
      * fill_end() is ensured to run once (and only once) after all fill_list() ran.
      
      This takes care of 2 kind of GUI bugs which we could have:
      
      1. First if no explicit fill were run (i.e. neither gimp_procedure_dialog_fill()
         nor gimp_procedure_dialog_fill_list() were ever run), then the default
         interface would not be added to the dialog. Yet this case could happen when
         we don't want anything else but the default GUI (this will be the case in the
         upcoming file-wmf-load GUI).
      2. Second if at the opposite, you fill several times fill functions (I hadn't
         thought of this, but noticed some already started to do this in our ported
         plug-ins), we obviously don't want the default GUI to be added several times
         either.
      dd6acc86
    • Alx Sa's avatar
      libgimp: Fix casing in documentation · 9a2774f7
      Alx Sa authored
      9a2774f7
  3. Apr 23, 2024
    • Jehan's avatar
    • Jehan's avatar
      plug-ins: port file-pdf-load to GimpVectorLoadProcedure and… · a931f4c9
      Jehan authored
      … GimpVectorLoadProcedureDialog.
      a931f4c9
    • Jehan's avatar
      libgimp: new GimpVectorLoadProcedureDialog widget. · bed41ea3
      Jehan authored
      As expected, it is made to reuse shared code for every GimpVectorLoadProcedure.
      In particular, they all need to choose dimensions to load at, so we are sharing
      a same GimpResolutionEntry widget logic everywhere now.
      
      I am in fact still very unsure about the code logic for this widget by the way
      for these reasons:
      
      * It still puts too much emphasis on the "resolution" (pixel density) part,
        which makes people believe it's important, while they should in fact choose
        the pixel dimensions most of the time and not care about the pixel density.
      * Right now we can't break ratio (which in fact was already impossible in most
        vector format plug-ins we had). Do we want to add a chain and allow this?
      * If we consider the pixel density as the one we want to set the document with
        (which may not be the same thing as the one from when we load the document),
        we also want to break link between width/height dimensions and pixel density.
        Right now we can't (updating one field updates the others too).
      * There is always this issue of precision with pixel density vs. pixel
        dimensions because we don't necessarily find the same values when computing
        from one side to another because of lack of precision and this confuses
        people.
      * Finally there is the question of multi-page documents (e.g. PDF) where the
        chosen dimensions are the document dimensions whereas each page may have a
        different size which has to be recomputed independently and this got me
        off-by-one errors. I think I'll need to review a bit the logic, but I'll do
        once I've ported all the vector format load plug-ins first to see the most
        common usages.
      bed41ea3
    • Jehan's avatar
      libgimp: re-promote GimpResolutionEntry in its own file and improve its API. · 3a3f67ef
      Jehan authored
      The code comes from plug-ins/common/file-pdf-load.c and apparently it used to be
      in libgimpwidgets (very long ago). I'm copying it to its own file and massively
      improve the code (depending on property binding which makes the behavior much
      more robust).
      
      Still I left it as private because I don't want to say the API is finale without
      having tested it a bit more. But eventually we should make it public for
      plug-ins to use it directly too. When this happens, it should get back to
      libgimpwidgets.
      3a3f67ef
    • Jehan's avatar
      app, libgimp, pdb: new GimpVectorLoadProcedure class. · 768f871b
      Jehan authored
      It's still basic but will help to share code for support of various vector-able
      formats, such as the logic for dimensioning them, but also the generated GUI.
      
      Not only this, but we are paving the way for the link layers (though it'll be
      after GIMP 3, we want plug-in procedures' API to stay stable) by giving a way
      for a plug-in procedure to advertize a vector format support. This way, the core
      will know when a source file is vector and can be directly reloaded at any
      target size (right now, in my MR for link layers, the list of "vector" formats
      is hardcoded, which is not reliable).
      768f871b
    • Martin's avatar
      Update Slovenian translation · c363991c
      Martin authored and Administrator's avatar Administrator committed
      c363991c
    • Cheesequake's avatar
    • Yuri Chornoivan's avatar
      Update Ukrainian translation · 6c6ad241
      Yuri Chornoivan authored and Administrator's avatar Administrator committed
      6c6ad241
    • Anders Jonsson's avatar
    • Bruno Lopes's avatar
      gitlab-ci, build: Enable ccache for win crossbuilds · f40ecca6
      Bruno Lopes authored
      Due to design, crossroad install everything in the same prefix. So, let's
      drop the pkg caching (.cache) and reuse ccache path inherited from .default.
      f40ecca6
    • Alx Sa's avatar
      core, libgimpcolor: CMKY & HSL to float · 47aabfc9
      Alx Sa authored
      Continuing 32d64ab1, this converts the
      few instances of CMYK and HSL/A double
      to float to match babl's precision.
      47aabfc9