Commit Graph

44702 Commits

Author SHA1 Message Date
Ell 3d30a036de libgimpconfig: relax precondition check in gimp_config_type_register()
Allow passing a non-NULL `pspecs` with `n_pspecs == 0` to
gimp_config_type_register(), in particular since
g_object_class_list_properties() may return such values.
2019-09-23 18:22:19 +03:00
Daniel Mustieles 88158db78c Updated Spanish Translation 2019-09-23 16:20:18 +02:00
Daniel Mustieles 68eab009ea Update Spanish translation
(cherry picked from commit a572718f71)
2019-09-23 14:14:18 +00:00
Jehan 2c6e21b1e7 plug-ins: fix another cast warning.
Fix again these warnings:
> cast from pointer to integer of different size
2019-09-23 10:50:33 +02:00
Ell 6bd5deea89 app: add offset support to shaped gradients
In gimp:gradient, handle the "offset" property in shaped gradients.
2019-09-22 21:59:07 +03:00
Jordi Mas c9ccc16a97 Update Catalan translation 2019-09-22 20:18:16 +02:00
Jehan edd824ddef libgimp: disable GObject Introspection generation when cross-compiling.
This is hopefully a temporary setback since we want to consider the
introspected API as a core feature (otherwise we'd end up with third
party builds deactivating the feature, and get a very random experience
depending on where you got GIMP) hence don't want it to be optional
(note that I haven't added a configure option).
Anyway for now, it seems that cross-building introspected data is not
really supported (or I'm still figuring it out).
2019-09-22 20:03:29 +02:00
lillolollo 47a8560bae Fix meson build error ../../gimp/app/widgets/gimplanguagestore-parser.c:339:33: error: #if with no expression 339 | #if ENABLE_RELOCATABLE_RESOURCES 2019-09-22 17:28:51 +00:00
Jehan d10a4cb83d app: support smooth scroll events in GimpTagPopup widget. 2019-09-22 18:57:25 +02:00
Ell beeaec5670 po: add gimpcompressioncombobox.c to POTFILES.in 2019-09-22 18:17:17 +03:00
Ell 5cc289b642 libgimpbase, libgimp, app: inherit swap-compression in plug-ins
Pass the swap-compression option set in the preferences down to
plug-ins, so that they use the same swap-compression algorithm as
the main app.
2019-09-22 18:05:24 +03:00
Ell 1664ecbf1d app: add "Swap compression" option to the preferences
Add a new "Swap compression" option to the preferences, allowing
explicit control over the tile-swap compression algorithm.
Previously, control over swap compression was only possible through
GEGL command-line options/environment variables.  Since the GEGL
API to list all available compression algorithms is still private
for now, we currently only list the three predefined compression
levels -- "best performance" (the default), "balanced", and "best
compression" -- and a "none" option, to disable compression
altogether.  Selecting a custom compression algorithm is possible
by entering its name manually.
2019-09-22 17:35:14 +03:00
Ell e30a24273d app: add missing NULL in call to gimp_directory_file() 2019-09-22 17:35:14 +03:00
Jehan 0567bb2e71 plug-ins: fix some more cast of different size warnings.
Use GINT_TO_POINTER() and GPOINTER_TO_INT() on GList functions.
2019-09-22 14:20:02 +02:00
Jehan a2c92c576d app, plug-ins: (Win32) fix calls to ShellExecute().
This function returns a HINSTANCE (which is technically a pointer if I
understand correctly) for backward compatibility reason. But this is
actually meant to be used as an int only according to the docs.
Yet casting to gint outputs "cast from pointer to integer of different
size" warnings.
We should use intptr_t instead for such cases, since it is a type made
explicitly to hold a pointer as int, hence should always be right on any
platform.

https://docs.microsoft.com/en-us/windows/win32/api/shellapi/nf-shellapi-shellexecutea
2019-09-22 14:09:09 +02:00
Jehan 6bc6a07b7e libgimpbase, plug-ins: fix all warnings to g_stat() calls.
The second parameter should be GStatBuf*, which will be defined to be
the right struct depending on the actual platform. Using `struct stat*`
was good on Linux but was outputting warnings on other platforms (at
least on Win32).
2019-09-22 13:52:37 +02:00
luzpaz 44d10e458c Fix various typos
Found via `codespell` (v1.17.0.dev0)
2019-09-21 17:10:46 +00:00
Michael Natterer 3ce2c7e3f9 libgimp: s/filename/file/ in docs 2019-09-21 19:02:40 +02:00
Michael Natterer bfe7bb1d05 libgimpconfig: fix doc typo 2019-09-21 19:02:22 +02:00
Jehan 142002446e plug-ins: fix a type warning.
When cross-compiling for Windows, I had this warning:
> plug-ins/file-ico/ico-load.c:221:22: warning: format '%lu' expects
> argument of type 'long unsigned int', but argument 5 has type 'long
> long unsigned int' [-Wformat=]

I guess that on some platform sizeof may be a long long uint. Just cast
the result to long uint instead (I could have done the other way around,
but I doubt the struct type IcoFileEntry would ever get bigger than long
uint max!).
2019-09-21 18:32:09 +02:00
Michael Natterer 1bca89163d libgimpbase: remove gimp_personal_rc_file()
and port its remaining users to gimp_directory_file().
2019-09-21 18:08:13 +02:00
Jehan 7806021a41 meson: minor formatting fixes. 2019-09-21 15:12:08 +02:00
Jehan aeaae6bff2 app: (meson) fix main executables linking when building for Windows.
The psapi library had been forgotten.
2019-09-21 14:39:42 +02:00
Jehan c77c903c8d plug-ins: fix C goat-exercise build/installation in meson.
It was installing in separate dirs `goat-exercise/goat-exercise` and
`goat-exercise-c/goat-exercise-c.c`. This is obviously wrong as the C
raw file is obviously not a plug-in of its own, it is just a data for
the built plug-in to be displayed as source.
Anyway now fixed to work like the autotools build.
2019-09-21 14:21:00 +02:00
Jehan 738dab0fce meson: fix relocatable-bundle feature and mypaint-brushes dependency.
It must not be a boolean but a `feature` option, with `auto` by default.
`auto` value mean enabled for macOS and Win32, and disabled for other
cases. This default logics disappeared in the meson build.

Also the mypaint-brushes package is a mandatory dependency, which must
always be checked. Absence is fatale.
Finally properly set the MYPAINT_BRUSHES_DIR macro depending on the
proper relocatable case.
2019-09-21 14:21:00 +02:00
Piotr Drąg 2b67a54b15 Update Polish translation 2019-09-21 12:59:40 +02:00
Michael Natterer a4775d5b2d libgimpbase: remove gimp_gtkrc() 2019-09-21 12:56:52 +02:00
Michael Natterer dbd793d631 libgimpconfig: get rid of filenames in all config related APIs
and rename function names which say "gfile" to just "file".
2019-09-21 12:55:12 +02:00
Jehan b327e0ff2f meson: fix several checks.
For pango and libbacktrace, we only need a compilation/link test. No run
is needed.
As for the exchndl (Windows only), this is an optional feature, hence
should not be a fatale check.
2019-09-21 12:36:48 +02:00
Jehan b8c34c41f1 meson: fix glib-networking check when cross-compiling.
3 cases are possible:
- in native build, the test must succeed and is a fatale error.
- in cross-compilation, if no `exe_wrapper` binaries were set in the
  toolchain file, we just bypass the check, yet still output a warning
  so that packagers won't forget to add the dependency.
- in cross-compilation with an `exe_wrapper` (for instance `wine` for a
  win32 target), we run the check. Even if it fails, we don't make it a
  fatale error then simply output a warning as cross-platform execution
  are not always reliable anyway.
2019-09-21 12:29:31 +02:00
Michael Natterer 693984e235 app, libgimpwidgets: use the new parasite (de)serialization API 2019-09-21 12:26:29 +02:00
Michael Natterer 82b11c361a libgimpconfig: add function which (de)desialize from/to a GimpParasite 2019-09-21 12:26:29 +02:00
Alexandre Prokoudine 3c1871680c Update Russian translation 2019-09-21 12:48:36 +03:00
Jehan 396d227436 libgimp: fix typo and libgimpui build.
Apart from some obvious typo, libgimpui link was failing with meson
because it now relies on a function from libgimpconfig (i.e.
gimp_config_reset()), since commit bfb7f43dbc. This fixes:
> /usr/bin/ld: libgimp/gimpproceduredialog.c:223: undefined reference to `gimp_config_reset'
2019-09-21 01:29:16 +02:00
Jehan 9ac117b143 meson: iso-codes is an optional dependency. 2019-09-21 00:27:15 +02:00
Jehan b834fdb64a plug-ins: remove unused variable.
Fix:
> ifs-compose.c:1501:20: warning: unused variable ‘style’ [-Wunused-variable]

Unused since commit b347cc73a1.
2019-09-21 00:27:15 +02:00
Michael Natterer df8d5b02ae libgimp, plug-ins: remove the "preview" parameter from gimp_ui_init()
It's dead since a looong time.
2019-09-20 19:56:00 +02:00
Michael Natterer aa41baef1e libgimp: add gimp_procedure_config_get_procedure()
and use it in gimp_procedure_dialog_new() to make sure that the passed
config was created by the passed procedure.
2019-09-20 19:33:50 +02:00
Michael Natterer f62665ad31 plug-ins: use GimpProcedureDialog in despeckle 2019-09-20 19:26:07 +02:00
Michael Natterer bfb7f43dbc libgimp: add GimpProcedureDialog, the new dialog class for plug-ins
It knows about the procedure and its config, and so far implements the
entire construction boilerplate and "Reset" on its own.
2019-09-20 19:24:40 +02:00
Michael Natterer df62d08798 plug-ins: as a proof-of-concept, port despeckle to GimpProcedureConfig
Its entire dialog and execution are now based on object properties and
widgets are views on the properties. Also add a "Reset" button.
2019-09-20 12:54:50 +02:00
Michael Natterer b441d100ff libgimp: add GimpProcedureConfig which implements the GimpConfig interface
It's the base for bringing proper management of saved settings
(including the last used values) and generated GUI using prop_widgets
to plug-ins.
2019-09-20 12:34:03 +02:00
Michael Natterer 31bf04a610 libgimpconfig: fix precondition checks in gimp_config_type_register()
check for zero pspecs or more than zero pspecs, but consistently check
both pspecs and n_pspecs.
2019-09-20 00:35:56 +02:00
Michael Natterer d52316741f devel-docs: remove duplicate </SECTION> that broke quite some stuff 2019-09-20 00:34:42 +02:00
Ell e7479cad47 app: add "show all" support to "Layer -> New from Visible"
When in "show all" mode and canvas padding is disabled, have the
"layers-new-from-visible" action create a new layer from the full
image content, rather than just the canvas content.
2019-09-19 20:24:38 +03:00
Ell 6ef21ed1f0 app: handle buffers with arbitrary origin in gimp_layer_new_from_gegl_buffer()
... by translating the layer according to the buffer's origin.
2019-09-19 20:24:37 +03:00
Ell 71f42f6675 app: add gimp_display_shell_get_canvas_pickable()
... which is similar to gimp_display_shell_get_pickable(), however,
it returns the projection, rather than the image, only when
gimp_display_shell_get_infinite_canvas() is TRUE, i.e., when the
shell is in "show all" mode *and* canvas padding is disabled.
2019-09-19 20:24:37 +03:00
Ell 7d2e872f4f app: in Rectangle/Ellipse tools, update selection when clicking inside existing one
In GimpRectangleSelectTool, when creating the rectangle widget as a
result of clicking inside an existing selection, update the
selection at the click, so that the tool's effects are applied
immediately, without having to further modify the selection.
2019-09-19 17:39:22 +03:00
Jehan fdb46684f8 app: revert `#pragma once` to macro guards in meson build.
Some change which happened with the meson port. From my research, this
`#pragma once` is not standard, though it is apparently implemented in
most common compilers.
Also apparently it is based on heuristic, hence it might happen that
file identity fails. Though unsure how often it would happen, if ever, I
don't find this very acceptable (and probably makes for hard-to-debug
bugs).

So let's revert to basic macro guards, stupid and no heuristic, which
don't ever fail and are very easy to read.
2019-09-19 13:31:22 +02:00
Rafael Fontenelle 791b2a12d4 Update Brazilian Portuguese translation
(cherry picked from commit 4bd55696ec)
2019-09-18 22:29:15 +00:00