Commit Graph

41546 Commits

Author SHA1 Message Date
3f954350d9 app: don't let gtk_tree_store_clear() mess with our selected item
gimp_container_tree_view_clear_items(): GTK+ 3.x always keeps the row
with the cursor selected, so we get a gazillion selection changed
during gtk_tree_store_clear(), block our selection changed handler
during the clear.
2018-06-03 21:45:16 +02:00
1b1739bb06 app: use gimp_data_factory_get_data_path() in GimpFontFactory
Also, make sure we freeze() and thaw() the font container correctly,
so that all places keep their fonts across a refresh.

The only thing to make this actually work seems to be a bug in the
list views, grid views work perfectly.
2018-06-03 20:44:28 +02:00
68cf2641f8 app: add gimp_data_factory_get_data_path[_writable]()
which return GLists of GFiles. Use the new API in GimpDataFactory's
default implementations.
2018-06-03 20:42:21 +02:00
4ab0891be2 Update Catalan translation 2018-06-03 20:25:04 +02:00
Ell
ec5f4d03fa app: strengthen gimp_async_set_{wait,cancel}()
Make sure gimp_async_set_wait() and gimp_async_set_cancel() work
correctly, even if the set changes in nontrivial ways as a result
of waiting-on/canceling individual operations.  This is purely
theoretic right now, but why not.
2018-06-03 10:05:02 -04:00
e88fb8e9c7 app: remove all old font management code, switch to GimpFontFactory[View]
Biggest change in this commit is reordering stuff in GimpContext
because GimpFont is now a first class citizen.
2018-06-03 01:27:06 +02:00
d153c7489e app: add GimpFontFactoryView as replacement for GimpFontView 2018-06-03 01:25:25 +02:00
9dc5c7767d app: GimpDataFactoryView: don't add buttons for actions which don't exist 2018-06-03 01:25:25 +02:00
0763ea2a69 app: add new GimpDataFactory subclass GimpFontFactory
which contains all the font loading and refreshing including all async
stuff and is a complete replacement for gimp-fonts.c and GimpFontList.
2018-06-03 01:25:25 +02:00
4d3c715990 app: derive GimpFont from GimpData 2018-06-03 00:45:06 +02:00
5280d7a277 app: change all GimpCoreConfig data paths to GIMP_CONFIG_PARAM_CONFIRM
so they can be changed without restart (see previous commit).
2018-06-03 00:45:06 +02:00
01e4104236 app: make GimpDataFactory properly derivable
Virtualize a lot of functions and move their code into the default
implementation. Also connect to changes of the "path" property and
reload data automatically when the path changes. Add "wait" method
which is by default empty but is to be implemented by fonts.
2018-06-03 00:45:06 +02:00
Ell
8e6a5298c1 plug-ins: increase input precision in guides-new-percent.scm
Increase the percision of the "position" property of
guides-new-percent.scm to two decimal places.  Currently, it only
accepts integers, which limits its accuracy to 100px.
2018-06-01 10:53:06 -04:00
Ell
8d35299410 libgimpwidgets: add exponentiation support to eevl
Add support for exponentiation (using the ^ operator) to eevl.
This is occasionally useful, e.g., in geometrically-derived
quantities involving square roots.
2018-06-01 10:53:06 -04:00
1b7d63cce9 Use g_set_object() in a lot of places, and splrinkle some g_clear_object() 2018-06-01 12:59:52 +02:00
23ea457751 .gitlab: make double space for separate lines.
Otherwise markdown just puts everything on the same line, which makes
horrible formatting.
2018-05-31 23:22:14 +02:00
ccf1c2812d configure.ac: update the logic that doesn't add FOO_DISABLE_DEPRECATED
for future glib and pango versions.
2018-05-31 20:41:03 +02:00
5ed713a367 plug-ins: undeprecate screenshot-x11.c 2018-05-31 20:38:41 +02:00
127ad04bfa app: finish porting GdkScreen/monitor_number to GdkMonitor
gui_unique_*_idle_open were missed in
5ece7a8d1f
2018-05-31 16:33:54 +00:00
50c623494e build: do not depend on base module for flatpak.
Let's go with a simpler manifest since soon it will be built on a better
machine (our CI server) and to make scripts simpler.
Note that I also removed the old webkitgtk dependency, but actually I
realize the GNOME runtime does not have the new dependency as well,
since the runtime actually has a webkit2gtk-4.0 instead. We'll have to
look into this.
2018-05-31 15:36:15 +02:00
38091a5796 configure: fix "webkit_required_version".
In commit dbd9797a13, it had been renamed to webkitgtk_required_version
in some places, but not all!
2018-05-31 15:36:15 +02:00
b391d24485 themes: use "large-toolbar" for toolbox buttons, "button" is too small 2018-05-31 15:24:13 +02:00
Ell
e5e998e9c5 app: hide container-editor busy box when clearing async-set binding 2018-05-31 05:00:28 -04:00
Ell
f847796943 app, libgimpwidgets: add generated cursor files to CLEANFILES
Needed after commit a9592a59c8.
2018-05-31 02:56:07 -04:00
Ell
ebd0a14e97 configure.ac: don't generate_po_makefile([po-python])
It's skipped.  See previous commits.
2018-05-31 02:01:17 -04:00
Ell
8c4aa6f154 po-plug-ins: add skipped files to POTFILES.skip 2018-05-31 00:37:23 -04:00
Ell
8cc2aeaee4 configure.ac, Makefile.am: skip po-python/
... to fix distcheck, since we don't build pygimp ATM.
2018-05-31 00:29:36 -04:00
Ell
662b7003e8 po-plug-ins: exclude skipped plug-ins from POTFILES.in
... to fix distcheck.
2018-05-31 00:29:23 -04:00
Ell
e8de6322fa po: update POTFILES.in 2018-05-31 00:21:49 -04:00
6aebd30de1 app: remove icon sizing preferences.
With GTK+3, high or low density is taken care by the screen scale
factor. Having a separate preferences for this is redundant, and likely
even wrong.
It may be interesting though to have a new preference later, which would
allow smaller scale icon sizing since some people like their icon
slightly smaller or bigger, and also when you are using screens whose
density is at a limit scale factor. Right now, this can be done through
themes, but a GUI settings may be interesting. If I add such feature,
let's just do it from scratch later.
2018-05-31 04:12:05 +02:00
82f7e8c6c3 app: fix application icon compositing with the canvas on display scale.
This fixes this error on gdk_pixbuf_composite():
> assertion 'dest_x >= 0 && dest_x + dest_width <= dest->width' failed
2018-05-31 00:27:23 +02:00
6a806c39d1 icons: some more rectangle cleanup! 2018-05-31 00:06:28 +02:00
0ac3cd01f0 libgimpwidgets: fix default icon.
gtk_window_set_default_icon_name() apparently isn't able to properly
fallback to symbolic or non-symbolic variant. So let's test both.
There is also gtk_window_set_icon_list() but it takes a list of pixbuf,
so I really doubt it is the best solution either. The proposed solution
is working ok for now, even though I feel it is again a bit hackish.
2018-05-30 23:52:24 +02:00
ee6eb194c5 icons: fix EXTRA_DIST. 2018-05-30 21:53:08 +02:00
2e4f14decb app: fixing example icons in Preferences.
Use a cairo surface with scale factor in the list cell, instead of
pixbuf property, so that the example icon keeps sharpness even on high
density (when possible, i.e with vector icons, or available high res
version).
Also if an example icon was not set, search for the symbolic variant
first, then fallback to non-symbolic.
2018-05-30 21:17:36 +02:00
f018340dc7 icons: example item for the Symbolic theme is "gimp-wilber-symbolic". 2018-05-30 21:17:36 +02:00
Ell
7c96d4569b configure.ac: disable devel-docs and pygimp makefile generation
Commit b2df13749c disabled building
devel-docs and pygimp in the makefiles, but their makefiles are
still generated by configure, which breaks distcheck, because the
necessary Makefile.in files are missing from the tarball.

Comment out the skipped files in configure.ac too.
2018-05-30 15:08:46 -04:00
0179f5d023 Update Swedish translation
(cherry picked from commit 2296d39bf5)
2018-05-30 17:11:50 +00:00
Ell
0e19f159f5 app: restore font list in async callback, not async-set notify handler
When font loading is finished, restore the font list in the
corresponding async completion callback, and not in the
"notify::empty" signal handler of the fonts async set

This solves a problem arising when gimp_fonts_wait() is called
*inside* a "notify::empty" signal handler, emitted when reloading
fonts (causing the "empty" property of the fonts async set to
switch from TRUE to FALSE):  When the wait is over, "empty" will
switch back from FALSE to TRUE, however, since the "notify" signal
is non-recursive, the corresponding handler will not be called,
gimp_fonts_wait() will return *before* the font list is restored,
and the caller will see an empty font list.  This can happen under
certain circumstances when reloading fonts while the text tool is
active.
2018-05-30 12:58:09 -04:00
321d7735f6 Update Swedish translation
(cherry picked from commit 35d2d52fe2)
2018-05-30 16:52:11 +00:00
0fd2120819 Updated Danish translation of gimp-plug-ins 2018-05-30 17:08:21 +02:00
22a54933f8 Updated Danish translation of gimp-script-fu 2018-05-30 17:08:21 +02:00
f3347d6961 libgimpwidgets: making GimpCellRenderer symbolic and DPI aware.
This commit makes 2 improvements to this renderer. First it will allow
it to find symbolic variants of icons. Second it properly renders icons
when the display is scaled, by producing pixbuf size double to logical
drawing size and making cairo rendering it at the expected logical size.
2018-05-30 16:16:32 +02:00
368e5b4935 icons: fixing more icons.
Invisible squares everywhere!
2018-05-30 13:43:05 +02:00
1345f6d0f9 Update Dutch translation 2018-05-30 11:34:23 +00:00
29fbed1654 modules: undeprecate GimpColorWheel 2018-05-30 12:47:55 +02:00
da3ae4cf75 configure: remove Symbolic-Inverted's Makefile from configure! 2018-05-30 12:36:32 +02:00
75b226775e authors: adding Simon Müller who did some nice patches on the Win32...
... screenshot plug-in.
2018-05-30 12:11:40 +02:00
ff6d7a7550 plug-ins: renaming Win32 implementation files to follow namespacing. 2018-05-30 11:57:31 +02:00
2caa400a96 Issue #1458 - Small border on side of single-window screenshot on...
... Windows.

Reviewer note (Jehan): I have not built on Windows because I need to
refresh my crossbuild environment, but it looks sane enough, and Gil
previously did good patches. I push as-is, hoping it still builds fine
on Windows. :-)
2018-05-30 11:57:31 +02:00