Commit Graph

34431 Commits

Author SHA1 Message Date
41148e8996 app: bring back Debug -> Benchmark Projection 2014-06-02 21:32:00 +02:00
2068c61a85 Bug 730862 - Preview frozen while dragging selection tools...
...(crop, rectangle, etc) in large image zoomed-to-fit

Default to GIMP_MOTION_MODE_COMPRESS in all tools, and override it to
GIMP_MOTION_MODE_EXACT if the tool really needs the exact path of
motion events. This greatly reduces the events processed by the
rectangle tools and makes them much more responsive.
2014-06-02 20:55:33 +02:00
1781b79a16 app: record GimpDrawTool's last draw time *after* it has drawn its stuff
not before. Doesn't seem to change things but it's more correct.
2014-06-02 20:45:31 +02:00
6f9fc7b10a devel-docs: some more items for GIMP3-API-Changes.txt 2014-06-02 20:38:20 +02:00
660854f53c app: clean up the generated and custom GEGL GUI code a bit
Still slightly horrible but getting better...
2014-06-02 20:27:59 +02:00
069996d75f app: some random code cleanup 2014-06-02 20:17:39 +02:00
8836127efb app: call gdk_display_flush() in gimp_cursor_set()
Cursor change feedback should be immediate even under heavy load.
2014-06-02 20:16:04 +02:00
e424b9ebbd app: gimp_channel_new_from_alpha(): use gimp_drawable_get_component_format() 2014-06-02 08:12:48 +02:00
8e0563954d app: add gimp_drawable_get_component_format() and _component_index() 2014-06-02 02:31:42 +02:00
8424ccbedf app: don't create a temporary GimpChannel in gimp_channel_translate()
a temporary GeglBuffer is enough.
2014-06-02 01:57:17 +02:00
1464bee257 app: use the GParamSpec's nick as label in gimp_prop_spin_scale_new()
if a NULL label was passed. Override this with explicit calls to
gimp_spin_scale_set_label() in the two cases where we really don't
want a label.
2014-06-01 23:39:19 +02:00
06d91251da Bug 731085 - Dragging an image out of the image area freezes GIMP
In GimpProjection, use gimp_rectangle_intersect() instead of ad-hoc
CLAMP() constructs to sanitize rectangles, and don't let rectangles
enter the projection if they don't intersect with the projectable.

(apparently I have killed some check that did the same when porting
to cairo regions).
2014-06-01 21:30:11 +02:00
65b46244c7 app: add a menu of kelvin presets to GEGL properties with unit "kelvin"
Values taken from http://en.wikipedia.org/wiki/Color_temperature
2014-06-01 20:59:57 +02:00
1b1f3a60e2 app: enable the buffer copy in gimp_drawable_merge_filter() again
Thanks to gegl:copy-buffer this is now without much overhead.
Edit->Fade now works again on the result of any GEGL op.
2014-06-01 18:37:57 +02:00
987d9e2800 app: add a gegl:copy-buffer to GimpApplicator
which allows to get a buffer copy of the result of the applied
operation without the overhead of running the entire graph again just
for this purpose.
2014-06-01 18:35:18 +02:00
9125f876df app: make GimpImageMap merge the filter before removing it from the drawable
This is a prerequisite for making it use cached results; not quite
there yet.
2014-06-01 16:24:32 +02:00
a7953fb1a1 build/win: Upgrade webkitgtk to 2.0.4
Also fix the build against the latest versions of freetype.
2014-05-31 23:38:57 -04:00
42ba02bcd6 app: don't duplicate code in gimp_drawable_merge_filter()
gimp_gegl_apply_operation() already takes care of the
src_buffer == dest_buffer special case.
2014-05-31 22:32:10 +02:00
49818c7179 app: more cleanup in GimpProjection
Pull freeing the update regions into gimp_projection_free_buffer()
because freeing the buffer definitely obsoletes them. Get rid of
the last x1, y1, x2, y2 and use x, y, w, h inatead.
2014-05-31 15:13:32 +02:00
0b01f3b2b8 app: remove duplicate typedef GimpProjectionPrivate 2014-05-31 09:58:14 +02:00
0349b8972a app: rename gimpimage-contiguous-region.[ch] to gimppickable-....[ch]
The functions don't need to know about sample_merged, in fact they
used the boolean only to either use the passed image or drawable and
otherwise ran the same code. The sample_merged logic belongs into
their callers (and sometimes not even there).
2014-05-31 09:52:44 +02:00
5db796e17d app: improve code readability in GimpProjection 2014-05-31 02:58:21 +02:00
c78d82a43c app: render/update the visible part of the image first
Set the active display's viewport as priority rectangle on the image.

Update the rectangle in the default implementations of
GimpDisplayShell::scaled(), ::scrolled() and ::rotated(), which isn't
entirely correct yet but much better than before, and the only "bad"
thing that can happen with a bogus priority rectangle is that the
image is updated as out-of-viewport as before, just differently.
2014-05-31 02:36:25 +02:00
639319367a app: allow to set a "priority rectangle" on GimpProjection
If it is set, that rectangle gets processed first when
idle-constructing the image via ChunkRender.
2014-05-31 02:34:56 +02:00
f509fce5d2 app: clean up the projections ChunkRender code
Remove member "running" it was always identical to "idle_id != 0".
Rename and reorder variables to make more sense. Simplify
gimp_projection_chunk_render_iteration() work area calculation.
2014-05-31 01:42:28 +02:00
9b341d05bb app: remove GimpArea and use cairo_region_t instead
This may or may not remove some logic that avoids drawing tiny update
regions, and may or may not improve things or make them worse. Will
add code that actually tile-aligns update areas later.
2014-05-31 01:26:06 +02:00
6845766200 app: gimp_drawable_merge_filte(): don't create a copy of the applied buffer
This removes the huge delay when applying any GEGL op, at the cost of
breaking Edit->Fade. Need to find a better way to create this buffer.
2014-05-31 01:08:42 +02:00
a8f0c0e998 app: move all GimpProjection members to a private struct 2014-05-31 00:08:43 +02:00
a0e8208650 app: GimpUndo's icon should be "edit-undo" not "gtk-undo" 2014-05-31 00:08:10 +02:00
b39f0757db script-fu: don't add "Erase Every Other Row" to the menus
because it's not only useless but also utterly slow.
2014-05-30 23:26:09 +02:00
dd6dca2435 Bug 730942 - "Rotate Image?" dialog doesn't offer understandable options
Add a preview of the rotated image and reword all labels.
2014-05-30 20:51:39 +02:00
bb8d65bcee Bug 730862 - Preview frozen while dragging selection tools...
...(crop, rectangle, etc) in large image zoomed-to-fit

Introduce a hash of the last 16 used icons in GimpStatusbar, it was
loading icons at a very high frequency. Found by Massimo.
2014-05-30 19:40:11 +02:00
6714a414a7 configure: search only Python 2 interpreter and headers.
Do not accept Python 3 interpreter/headers, even when this is the
default installed Python. Search only for Python 2.
2014-05-30 09:59:51 +00:00
d895b62348 plug-ins: removing deleted color-rotate translations 2014-05-30 09:26:42 +02:00
d569ed37e3 Add app/widgets/gimppropgui-constructors.c to POTFILES.in 2014-05-30 06:59:41 +02:00
0df36e9dcf app: move lots of state handling from sunclasses to GimpCircle 2014-05-30 03:25:02 +02:00
7438d5bd04 plug-ins: remove the color-rotate plug-in 2014-05-30 01:37:39 +02:00
f963f55fa4 app: add a "Select All" button to color-rotate's angle range controls 2014-05-30 01:23:15 +02:00
78f84e6267 build/win: Upgrade poppler to 0.26.1 2014-05-29 19:02:06 -04:00
45da2c8abb app: use the new GimpPolar in the custom color-rotate GUI 2014-05-30 00:36:43 +02:00
71f3895597 app: GimpPolar: add () around && within a || 2014-05-30 00:36:43 +02:00
fe7aa1384d app: add gimp_prop_polar_new() 2014-05-30 00:36:43 +02:00
ca818d7c88 app: add new GimpCircle subblass GimpPolar to select polar coordinates 2014-05-30 00:36:42 +02:00
f1fe8b9c24 configure: clean out forgotten debug print. 2014-05-30 00:12:12 +00:00
38e2983c24 app: improve button label in color-rotate's custom GUI 2014-05-29 18:35:25 +02:00
227cff3af4 app: add gegl:color-rotate to Colors -> Map 2014-05-29 18:34:45 +02:00
f15b48b3c8 plug-ins, pdb: remove convolution-matrix and add a PDB compat procedure 2014-05-29 16:27:35 +02:00
4fbaff92a1 pdb: replace \1 \2 \3 by $1 $2 $2 as suggested by perl warning 2014-05-29 16:26:16 +02:00
00f6973b3c app: add gegl:convolution-matrix to Filters -> Generic 2014-05-29 02:36:59 +02:00
31e07a13d1 app: convolution-matrix' matrix was flipped 2014-05-29 00:43:44 +02:00