1. 23 Feb, 2018 5 commits
    • Rūdolfs Mazurs's avatar
      Update Latvian translation · 042bcef9
      Rūdolfs Mazurs authored
    • Jordi Mas's avatar
      Update Catalan translation · 40cdc77a
      Jordi Mas authored
    • Simon Mueller's avatar
      Bug 793722 - Capture screenshot of single window fails if... · 14236761
      Simon Mueller authored
      ... thewindow is IE 11.
      The screenshot plugin for windows had a problem when capturing
      applications that use hardware rendering acceleration (e.g.
      Chromium-based Apps, IE11). Those applications seem to render their
      content to a device context (DC) that is different from the one that can
      be retrieved via GetDCEx(hWnd). So a screenshot that simply copies the
      main window DC will be incomplete (see bug attachment) or just plain
      This patch removes the code that uses GetDCEx for single window
      screenshots and always uses the display device context instead. This
      makes sure that all window contents are actually visible in the
      screenshot. With this change, we now have to set the source coordinates
      in the call to BitBlt() to the window's coordinates to exclude
      everything that isn't the window from the screenshot when doing a single
      window screenshot.
      Review comment by Jehan: as Simon notes in bug 793722, there is a
      regression though, which is that this new code cannot capture any part
      of a window which is not in any screen. This is still an improvement
      because at least for what is on screen, we always get exactly the same
      as what is displayed. This is especially true since hardware-accelerated
      applications are more and more common. So let's push this first commit
      and hope for further improvements.
    • Alan Mortensen's avatar
      Updated Danish translation · cd2fcc3d
      Alan Mortensen authored
    • Alan Mortensen's avatar
  2. 22 Feb, 2018 7 commits
  3. 21 Feb, 2018 10 commits
  4. 19 Feb, 2018 1 commit
  5. 18 Feb, 2018 5 commits
  6. 17 Feb, 2018 7 commits
    • Ell's avatar
      app: more action history sorting logic improvements/fixes · bdab2829
      Ell authored
      Simplify the action history sorting logic introduced in the
      previous commit, and fix a few issues in its implementation.
    • Ell's avatar
      app: improve action history sorting · 2e544833
      Ell authored
      The current sorting logic of actions in the history is essentially
      linear, so that when an action is activated it moves up one place
      in the history.  This has the undesirable effect that actions take
      very long to climb up the history list, as well as that actions at
      the top of the list can change their relative order too frequently.
      Improve the sorting logic, such that items climb up the list
      faster, while top items retain their relative position longer.  See
      the comment at the top of the diff for the actual logic.
    • Ell's avatar
      app: extend initialism-based action search · 5f1816aa
      Ell authored
      A hidden feature of the action search dialog, is that actions can
      be matched based on their label's initials.  E.g., "gb" will match
      "Gaussian blur".  While very convenient, this feature is currently
      limited to two-letter initialisms.
      Extend initialism-based search, by matching arbitrarily-long
      initialisms, and by allowing partial matches (with lesser
    • Ell's avatar
      app: exclude undo/redo actions from history · 9653cdfc
      Ell authored
      The undo/redo actions' label changes based on context, and may
      interfere with the labels of more relevant, but less frequent,
      For example, after applying filter Foo, the label of edit-undo
      becomes "Undo Foo", so searching for "Foo" results in both
      edit-undo, and the action referring to the filter, with edit-undo
      most likely appearing at the top of the list due to its frequency.
      Excluding the undo/redo actions from the history is a simple, if
      suboptimal, way to fix this.
    • Ell's avatar
      app: add gimp_action_history_is_blacklisted_action() · 2816695e
      Ell authored
      ... and rename gimp_action_history_excluded_action() to
      is_blacklisted_action() determines whether an action should be
      excluded from *both* the history and the search results, while
      is_excluded_action() determines if an action should be excluded
      only from the history.  This eliminates some redundancy across
      gimpaction-history and action-search-dialog.
    • Ell's avatar
    • Alexandre Prokoudine's avatar
  7. 15 Feb, 2018 5 commits
    • Ell's avatar
      Bug 784802 - Crop and rectangle-select tools incorrectly detect ... · 49b3695e
      Ell authored
      ... current aspect ratio
      When updating the default aspect ratio of a widget-less crop tool,
      construct a temporary GimpToolRectangle widget, so that we can use
      it to call gimp_tool_rectangle_constraint_size_set() and pick the
      correct ratio, instead of just bailing.
      When halting the crop tool, update the default aspect ratio, which
      now does the right thing, as per the above.
      Update the default aspect ratio upon changes to the active layer of
      the current image, and to the size of the active layer, which
      affect the default aspect ratio when "current layer only" is
    • Ell's avatar
      Bug 784802 - Crop and rectangle-select tools incorrectly detect ... · 547d3149
      Ell authored
      ... current aspect ratio
      When starting the rectangle-select (and ellipse-select) tools,
      properly reset their default aspect ratio to 1:1.  This fixes an
      issue where the tool would use the aspect ratio of the last
      rectangle when there's no user-overriden aspect ratio specified.
      This restores the 2.8 behavior, except for the fact that the aspect
      ratio resets to 1:1 when the tool is commited (if there's no user-
      overriden ratio), rather than keeping the aspect ratio of the last
      rectangle (i.e. "Current"); in 2.8 this only happend when halting.
      The current behavior seems more consistent anyway.
    • Ell's avatar
      app: set GimpRectangleOptions highlight-opacity scale to 100 · 7959c7bf
      Ell authored
      Set the scale of the GimpRectangleOptions highlight-opacity
      spinscale to 100, so that the spinscale's range is 0-100, instead
      of 0-1, like the rest of our opacity spinscales.
    • Jehan's avatar
      libgimpbase: rename FILE * argument to stream instead of fd. · 9e8e321d
      Jehan authored
      As noted in bug 793494, my naming was unfortunate. A FILE pointer is not
      a file descriptor (which is why we use fileno() on it).
    • Ting-Wei Lan's avatar
      libgimpbase: Cast fd to FILE* before calling fileno · 7b6756af
      Ting-Wei Lan authored
      It is required if the system implements fileno as a macro doing direct
      struct member access.