Commit Graph

397 Commits

Author SHA1 Message Date
Jehan 68851c1aaa Issue #5875: Close button too big on wayland backend.
The issue is that on X11, the window manager draws the title bar hence
uses the window-close button from the system theme, though on Wayland,
GTK draws its own decorations. Since we provide a window-close, we end
up with a disparity between this button and the minimize/maximize
buttons.

For now, let's just get rid of the window-close icon as an easy
solution, thus GIMP will always use the window-close icon from system
theme.

Maybe we can restore our own window-close icon later, but we should make
sure to at least have also window-maximize and window-minimize icons so
that the 3 buttons next to each others won't look too mismatched. And
probably we should also have smaller-size design because it doesn't look
so nice when huge (though it might simply have been the size mismatch
which gave this feeling).
2021-07-05 11:04:13 +02:00
Jehan 35ef549028 Issue #5879: Legacy icon theme not installed with meson build.
Actually most of the build code was already there but the initial meson
contributor commented the Legacy icon theme out. Not sure why.

I only had to fix a few icon names, which changed into Freedesktop
standard names after commit 1e5cf10585. Other than this, existing meson
build rules seem to work fine AFAICS.
2021-05-22 18:28:58 +02:00
Aryeom Han 603e912dc3 Issue #6179: New Icon for Paint Select Tool.
Based on original very nice designs by Yash Arya.
2021-04-26 02:07:06 +02:00
Jehan 78fabc1e47 icons: (meson) install the new icons for the Paint Select tool. 2020-11-24 21:59:45 +01:00
Thomas Manni e1cdb9f54e app, icons: add Paint Select tool in the playground
A -quick done- first step towards the addition of a smart selection tool.
Require the gegl:paint-select workshop operation.
Still LOT of work to do (wip):
- fluctuations removal (GEGL side)
- multilevels pyramid approach + banded graphcut for instant result on large
   image (GEGL ? GIMP ?)
- Gaussian Mixtures for color models (GEGL side)
- drawable offsets (GIMP side)
- undo / redo (GIMP side)
- scribbles edition mode (GIMP side)
- dedicated icons
- ...
2020-11-24 12:10:40 +01:00
Jehan c6063183d3 Issue #4922: install software-update-available from Adwaita on hicolor.
I took the icon directly from Adwaita repository as of today's version:
https://gitlab.gnome.org/GNOME/adwaita-icon-theme/-/blob/master/Adwaita/scalable/status/software-update-available-symbolic.svg

By being installed on our local GIMP-only hicolor, this gets picked up
after any custom theme software-update-available version. I didn't
install it inside the Symbolic or Color theme because anyway Adwaita
seems only to provide a single vector version. There is a color version,
yet as PNG icons and installed in the legacy/ section. I don't think it
makes sense to use an icon considered as legacy by its author and
without vector version. So I just install the symbolic version and all
themes can fallback to it (be them symbolic icon themes or not).

This icon comes from the Adwaita repository and is therefore licensed
under the terms of either the GNU LGPL v3 or Creative Commons
Attribution-Share Alike 3.0 United States License. See:
https://gitlab.gnome.org/GNOME/adwaita-icon-theme/-/blob/master/COPYING
2020-10-24 19:43:40 +02:00
Jehan 68e0463501 icons: (meson) gimp-curve-point-* icons were not installed for the…
… Symbolic theme.
It was installed for the Color theme, but not the Symbolic one with the
meson build.
2020-09-27 18:55:03 +02:00
Jehan 3fb28202f0 icons: remove old file move error.
It seems to be an old file move error I did 2 years ago (commit
1e5cf10585). I wonder how I only realize this now. Anyway let's remove
this lonely file.
2020-09-21 19:14:18 +02:00
Jehan 8cb02716d6 icons: modify dialog-information to work around a librsvg bug.
So it turns out there are still a few bugs in librsvg position/size
computation. One of them is described in my comments:
https://gitlab.gnome.org/GNOME/librsvg/-/issues/250#note_900325

To work around them, I had to increase stroke width of a SVG <circle> to
be over 0.5px.
2020-08-28 20:25:41 +02:00
Jehan 05de70e002 icons: add all missing icons in the main SVG files.
In particular adding the new gimp-curve-point-smooth|corner,
gimp-pivot-*, gimp-text-dir-ttb-*, gimp-transform-3d-* and
gimp-tool-transform-3d icons.
2020-08-28 20:25:40 +02:00
Jehan a3a95ad47e icons: rename ID of some icons moved to Freedesktop naming.
See commit 1e5cf10585.
I am reorganizing again a bit the global file with all icons to
experiment a bit again with icon extraction using librsvg (let's see how
the library evolve since last time I tried, a few years ago!).
2020-08-27 18:39:43 +02:00
Jehan e815c615e1 icons: install switch-(on|off)-symbolic icons in GIMP's hicolor theme.
These icons are not available in any of our themes (Symbolic or Color).
Also they don't seem to be available in many icon themes either actually
and I'm not sure GIMP properly fallbacks to system icon theme when an
icon is missing in the selected theme anyway (I think to remember this
used to work, but it doesn't look like it works anymore).

Anyway I just copied the 2 symbolic switch on|off icons available in the
GTK+ repository at gtk/icons/scalable/status/. These are supposed to be
used by GtkSwitch but somehow they aren't. So for the time being, let's
bundle them directly with GIMP (until we figure something better out).
I put them in hicolor because this is the generic/default theme which is
always used as last resort and is common to any theme. It means any
specific theme will be able to override these icons, but if missing,
hicolor will be able to provide a fallback.
2020-08-22 23:53:49 +00:00
Alexandre Prokoudine b4cac9dc25 Fix non-linear/perceptual symbolic icons
The rendering of strokes continues not working for some reason.
2020-08-07 12:35:30 +03:00
Sabri Ünal 9d3b2ba756 Issue 2874 - gimp-tool-pencil.svg icon size is corrected on Color icon theme
(cherry picked from commit 0bf0f31a5b)
2020-07-28 19:06:41 +02:00
Ell 287adbd1e6 icons: in Symbolic theme, fix gimp-curve-point-{corner,smooth} PNGs 2020-03-06 12:21:55 +02:00
Ell b7b30ca3cb icons: in Symbolic theme, fix media-record and gimp-marker icons 2020-03-06 12:21:55 +02:00
Alexandre Prokoudine 274b677923 icons: clean up the crop tool icon by redoing it 2020-03-06 02:25:20 +03:00
Alexandre Prokoudine de7d6537e6 icons: redo the gimp-zoom-follow-window icon for it was broken 2020-03-06 01:51:55 +03:00
Alexandre Prokoudine ce7f59ec3e icons: fix the dashboard icon by removing empty rectangle 2020-03-06 01:18:32 +03:00
Ell 601a555321 icons: in Symbolic theme, fix gimp-curve-point-{corner,smooth} icons 2020-03-05 22:19:05 +02:00
Alexandre Prokoudine 34f00e8a7a icons: convert some rectangles to outlines, fixes #4672
Whatever GIMP uses for rendering SVG icons, it fails to process rectangles
that only have a stroke and no fill, so it renders these icons wrong.
2020-03-05 02:37:44 +03:00
Ell 885d4fb1cb icons: replace gimp-visible symbolic icon again 2020-01-21 19:11:42 +02:00
Ell 864ed16435 icons: replace symbolic gimp-visible icon (aka the eye icon)
It looked meh :)
2020-01-20 22:56:12 +02:00
Ell 469f8d6193 icons: fix PNG 3D-transform icons in makefile 2020-01-15 18:15:00 +02:00
Ell a3cbf6bc13 icons: add pivot icons to meson 2020-01-07 22:24:39 +02:00
Jehan 095e8299a0 icons: install the new icons on meson build too.
The whole icon installation is a bit of a mess. We should really look
more closely into it.
2020-01-07 14:52:30 +01:00
Ell 5646e03eb3 app, icons: add 3D Transform tool
Add a new 3D Transform tool, based on GimpToolTransform3DGrid,
added in the previous commit.  The tool UI provides a notbook with
three tabs, corresponding to the three GimpToolTransform3DGrid
modes:

  Camera - allows setting the primary vanishing point, as well as
  the camera's focal length, expressed either directly, or as the
  camera's angle of view, relative to the whole image or the
  transformed item.  By default, the vanishing point is aligned
  with the item's center, and the angle of view is fixed relative
  to the item; this essentially means that each item is transformed
  using a local perspective, independent of its position and size
  relative to the image.  A global perspective can be achieved by
  using a common vanishing point and focal length (or an image-
  relative angle of view).

  Move   - allows moving the item using X, Y, and Z offsets.

  Rotate - allows rotating the item using X, Y, and Z Euler angles.
  The order of rotation of the different axes can be controlled by
  a set of numbered buttons next to the sliders, and the rotation's
  pivot can be controlled using a pivot selector.
2020-01-06 21:52:54 +02:00
Ell 46e01d37db app, icons: add GimpPivotSelector widget
GimpPivotSelector is a 3x3 grid of toggle buttons, used for
selecting a natural pivot position (e.g., for a transform) relative
to an item: its center, its corners, and the midpoints of its
edges.
2020-01-06 21:35:52 +02:00
Jehan d6fa772f22 icons: (meson) gimp-frame and gimp-texture were not installed.
This is a quick and dirty fix to just deal with this specific issue, but
looking at meson rules for icons, it looks like I will need to do a
proper and very detailed review of this part of the build system.
2019-10-12 12:25:55 +02:00
Félix Piédallu 65eff6f150 Meson port. 2019-09-11 16:42:04 +02:00
Ell e962e8b3de icons: fix symbolic gimp-tool-offset icons 2019-06-06 04:32:43 -04:00
Ell 3a4a00c71e Issue #40 - Layer offset tool
Add a new Offset filter tool, as a front-end to gimp:offset.  The
tool replaces, and provides the same interface as, the drawable-
offset dialog, while also providing live preview and on-canvas
interaction.

Note that we don't simply use a custom propgui constructor for
gimp:offset, since we need a little more control.
2019-06-05 19:06:56 -04:00
luz.paz 86edc31b11 Misc. typos
Found via `codespell`
2019-05-09 09:13:37 -04:00
Ell 33e47c85a2 app: add smooth/corner curve-point types
Allow setting the type of GimpCurve control-points to either SMOOTH
or CORNER.  Smooth points produce a smooth curve, while corner
points produce a sharp curve (previously, all points were smooth).

In GimpCureView, display corner points using a diamond shape,
instead of a circle.

In the Curves tool, allow changing the curve's point types.
2019-04-19 10:34:32 -04:00
Jehan ef8042e812 icons: fix icons!
Ok looks like I missed some changes when I updated these icon Makefiles.
Anyway I still have a lot to straighten up within icons. :-/
2018-09-17 19:17:32 +02:00
Ell 36477bb287 app, icons, menus: add performance-log recording to the dashboard
Add an option to record a performance log through the dashboard.
The log contains a series of samples of the dashboard variables, as
well as the full program backtrace, when available.  As such, it
essentially acts as a built-in profiler, which allows us to
correlate program execution with the information available through
the dashboard.  It is meant to be used for creating logs to
accompany perofrmance-related bug reports, as well as for profiling
GIMP during development.

The sample frequency defaults to 10 samples per second, but can be
overridden using the GIMP_PERFORMANCE_LOG_SAMPLE_FREQUENCY
environment variable.  Backtraces are included by default when
available, but can be suppressed using the
GIMP_PERFORMANCE_LOG_NO_BACKTRACE environment variable.

Logs are created through the new "record" button at the bottom of
the dashboard dialog.  When pressed, a file dialog is opened to
select the log file, and, once confirmed, data is being recorded to
the selected file.  Recording is stopped by pressing the "record"
button again (we use a highlight to indicate that recording is
active.)

While recording, the "reset" button is replaced with an "add marker"
button, which can be used to add event markers to the log.  These
can be used to mark events of interest, such as "started painting"
and "stopped painting", which then appear in the log as part of the
sample stream.  Markers are numbered sequentually, and the number
of the next (to-be-added) marker appears on the button.  Shift-
clicking the button adds an empty (description-less) marker, which
is only identified by its number; this can be used when markers
need to be added quickly.

The log is an XML file, containing some extra information (such as
the output of "$ gimp -v", and symbol information) in addition to
the samples.  The data in the file is delta-encoded to reduce the
file size, meaning that samples (as well as some other elements)
only specify the changes since the previous sample.  This adds a
necessary decoding step before data can be processed; the next
commit adds a tool that does that.

There are currently no tools to actually analyze the data -- that's
still TBD -- but at least we can start gathering it.
2018-09-02 03:11:02 -04:00
Michael Natterer 5d937a237b icons: make the gap of the broken chain larger in the Color theme
(cherry picked from commit 6837554376)
2018-08-20 20:02:19 +02:00
Jehan 0b73a1bc93 icons: fix build with vector icons (default).
That's the problem of having alternative build options! My previous
commits were made when testing the build with PNG icons.
Anyway I am planning to soon merge the 2 options.
2018-08-18 18:21:58 +02:00
Jehan babf74a3db icons: generate PNG symbolic icons with `gtk-encode-symbolic-svg`.
We don't need to commit PNG symbolic icons as `gtk-encode-symbolic-svg`
is perfectly able to generate them from the SVG.
Moreover its man says that it makes "specially prepared png files",
whatever that means. So I don't think we should just rename our
self-exported PNG files as '*-symbolic.symbolic.png'. It is better to
generate them with this tool.

Note that I am now splitting icon-list.mk into 2 files. This is only a
temporary stepback, as I am actually going to merge the 2 icon themes
into one very soon, and hopefully we should be able to generate the list
to ensure we don't miss an icon.
Anyway the icon lists had already diverged earlier, even though it was
only all still in a single file.
2018-08-18 12:51:59 +02:00
Michael Natterer bcdd575124 Issue ##2000 - Linked and unlinked chain icons look almost identical
Make the gap of the broken chain icons of the "Color" theme wider.

(cherry picked from commit b1fbf1eb63)
2018-08-17 15:44:38 +02:00
Jehan e326faa77c icons: update icons for new top-to-bottom text feature.
They are not perfect (not a designer here!) but a bit less packed than
the previous one. So hopefully more understandable.
2018-07-30 19:14:49 +02:00
ONO Yoshio 587d9bbb03 MR !19: Add support for vertical text writing.
Squashed commit of the following:

commit ee1ff7d502658cfa1248a13a3f0348495db07eda
Author: ONO Yoshio <ohtsuka.yoshio@gmail.com>
Date:   Sun Jul 29 00:31:47 2018 +0900

    Fixed that gimp-text-dir-ttb-* icons are lacked in Symbolic.

commit d87d012d697628da28fe90199cc04b95b72ba8ef
Author: ONO Yoshio <ohtsuka.yoshio@gmail.com>
Date:   Sat Jul 28 16:23:10 2018 +0900

    Fix a typo.

commit cf0238bf7df56c384cdf3b7ec69557d14740f853
Author: ONO Yoshio <ohtsuka.yoshio@gmail.com>
Date:   Sat Jul 28 15:50:57 2018 +0900

    Fixed seg fault error.

commit b07f60d06f
Author: ONO Yoshio <ohtsuka.yoshio@gmail.com>
Date:   Fri Jul 27 17:15:34 2018 +0900

    Add support for vertical text writing.

    https://gitlab.gnome.org/GNOME/gimp/issues/641
2018-07-30 19:14:49 +02:00
Jehan 1e5cf10585 icons, app, libgimpwidgets: use Freedesktop standard icons.
Some icons were still using old gimp-namespaced names.
2018-07-28 12:27:10 +02:00
Michael Schumacher 9a03a7f6cd icons: add missing Symbolic/24/gimp-color-space-non-linear.png 2018-07-22 01:09:40 +02:00
Michael Schumacher 97f6179281 icons: add missing Symbolic/16/gimp-color-space-non-linear.png 2018-07-22 00:50:50 +02:00
Michael Schumacher ce0d6b3799 icons: add missing file 16/gimp-color-space-non-linear.png 2018-07-22 00:36:25 +02:00
Michael Natterer 5c94ebaed3 libgimpwidgets, icons: add gimp-color-space-non-linear icon
For now just a copy of the "perceptual" icon.
2018-07-20 17:21:53 +02:00
Jehan a4c1d73b75 icons: toilet paper should always be white!
I know that the idea of black toilet paper is traumatizing nomis! ;-)
So here it is, using the CSS "!important" trick to override GTK+ CSS
recoloring code.
In order for the icon to be always visible, even on light background, I
am adding a path around the toilet paper shape (which this time will
be properly recolored by GTK+ with the foreground color, hence making
the icon clearly visible).
2018-07-07 17:08:02 +02:00
Jehan 56717f80cc icons: fix symbolic icon gtk-select-color.
There was again a visible square.
2018-07-07 16:23:43 +02:00
Jehan b87d34bace icons: work around dimension bug of librsvg for a bunch of color icons.
It feels I am just fighting against the system. So annoying!
2018-06-24 00:03:59 +02:00