Commit Graph

2636 Commits

Author SHA1 Message Date
b348678890 app: avoid inadvertent calls to image actions on file -> revert
When reverting, we load a new image into the old image's existing
displays, and replace all references to the old image by the new image
in all GimpContext instances. We used to first update the displays and
then the contexts, which would shortly produce an inconsistent state
where the contexts were out of sync. When updating the displays with
the new image, we sometimes call menu update functions which would
then use that old image from the context when they should use the new
one, and thus triggered callbacks as if the user had activated a menu
(like image -> precision). To fix this, update the contexts before the
displays. It is also more logical to first update model objects and
then view objects.
2012-12-09 22:54:30 +01:00
5d668971d7 display - run the file-open command when double-clicking in an empty shell. 2012-12-01 22:31:29 +09:00
908f727f0a Chain up unconditionally in GObject::constructed()
It's supported since GLib 2.28.
2012-11-12 21:51:22 +01:00
54cf6c6e9f Bug 680621 - View menu options are discarded after closing an image
Sync GimpDisplayShell's properties with the default values when it's
emptied and turns into the empty display, so the default values used
when filling it with an image are displayed while it's empty.
2012-11-12 00:57:43 +01:00
fe19ad9706 Bug 683694 - Spelling errors
Reworded all places that used to say "allows to".
2012-11-11 15:50:25 +01:00
5de48ef8b5 Bug 686521 - Zoom Tool Displays Wrong Cursor When Zooming In/Out
When updating the tool cursor on BUTTON_PRESS, pass a state *without*
the newly pressed button's mask to gimp_display_shell_update_cursor(),
or it will simply never call the cursor update function. Tool cursors
don't normally change when a mouse button is down.
2012-11-06 22:46:47 +01:00
55f025e469 Bug 687673 - The image has been exported to '(null)' when export...
Show the imported URI if the exported URI is NULL, they are equivalent
for this dialog.
2012-11-06 22:13:49 +01:00
56c6935a0c Bug 686025 - Closing a tab closes wrong tab
Replace /* FIXME: switch tabs */ with an actual call to
gimp_image_window_set_active_shell(). WTF...
2012-10-13 00:22:21 +02:00
d4c72cd5ab Bug 595708 - WM_WINDOW_ROLE should be unique
Make the roles of toolbox, dock and image window unique by adding a
serial number, resulting in e.g. gimp-dock-1.
2012-10-07 18:16:35 +02:00
a9353cd3a2 app: use g_get_monotonic_time() also for limiting display flushing 2012-10-06 18:01:41 +02:00
3084c8be7a Bug 684785 - typo in log message
Apply patch from Okano Takayoshi that fixes the typo.
2012-09-25 22:01:31 +02:00
a2e037fb00 Corrected spelling errors spotted by Ari Pollak (Mostly fixes bug #683694)
Still need to address the "allows to" grammatical error.
2012-09-10 12:22:12 -04:00
e546f2b43b Bug 683462 - cropping with rectangular select tool leaves misaligned...
Reset the tool on image changes again, but not if only the active
drawable changes, so keep bug #678890 closed:

Introduce new dirty flag GIMP_DIRTY_ACTIVE_DRAWABLE and set it on all
tools' dirty_mask except for rect select. Check the new flag when
reseting the active tool because of a drawable change.
2012-09-06 23:55:35 +02:00
9ab3abc98b Bug 683050 - Copying a layer group to a new xcf results in portions...
Use gimp_item_translate() not gimp_item_set_offset() to position
dropped layers, because the latter doesn't affect child layers.
2012-09-05 13:03:47 +02:00
21bb9e3d46 app: fix condition that disallowed bottom right side cursor 2012-08-27 15:06:30 +02:00
c6ba0ffbdf app/cursors/libgimpwidgets: bye bye stone age B&W bitmap cursors 2012-08-26 22:53:04 +02:00
b11a705203 transformtool: rotate handles along with frame 2012-08-22 22:53:59 +02:00
a8a8450b6e transformtool: Add temporary new handles
put perspective handles on the outside instead (if you invert the frame,
they'll switch place with the scale handles, oh well)
2012-08-20 15:22:22 +02:00
e324913284 app: fix drawing of the GIMP_HANDLE_CROSS canvas item 2012-08-20 15:22:20 +02:00
f6f22ed431 Remove stray semicolons 2012-08-20 15:22:20 +02:00
47c987b09e Bug 676270 - cppcheck report
Fix a couple of harmless stuff pointed out in the report, and one
real bug: gimp_plug_in_close() was killing each process 10 times
on windows.
2012-08-04 03:20:36 +02:00
eda6fa1c14 Bug 586462 - Layer inserts misplaced
Another attempt to fix paste/drop positions for good.

Paste/drop target is either the selected area of a drawable, the
drawable itself, or the image:

- if the paste is larger than the target, center on the target
- if there is a viewport, and the viewport intersects with the
  target, center on the intersection
- otherwise, center on the target

Finally, if we did viewport-centered pasting, make sure the paste is
as completely within image bounds as possible.
2012-07-30 16:20:11 +02:00
220b28677b Bug 676566 - Window title becomes "Untitled" after exporting without saving
Fix this and other issues more globally by moving the logic that
formats the image's display name into the GimpImage object, and return
the properly formatted name, e.g. "Foo.xcf", or "[Foo] (imported)"
from gimp_image_get_display_name().

Also add gimp_image_get_display_path() which returns the full path
instead. Use the two functions for formatting the image title, and
apply various other fixes that make sure the UI always uses the same
string to identify the image.

Call gimp_object_name_changed() whenever the save/export status
changes, so the image's cached display name and path get cleared.
2012-07-17 22:52:49 +02:00
2c54f4b340 Bug 679256 - SWM image tabs must have a minimum width
Set all tabs to the same width so very narrow images' tabs stay
clickable.
2012-07-09 22:53:17 +02:00
6b6d39fc64 app: add GimpTileHandlerProjection and use it to validate the projection
as the projection buffer is being read from. Projection performance is
now back at its old speed.
2012-07-05 21:42:26 +02:00
58a7449bb8 app: clean up last fix in GimpToolDialog 2012-06-30 14:27:48 +02:00
3d4b972f5f app: remove GimpDisplayShell-scroll API that is now unused 2012-06-30 14:22:47 +02:00
09be89a24e Bug 679082: Crash after using Rotate tool 2012-06-30 13:05:56 +02:00
38bec7d924 app: compress motion events up to the first release event
I'm not sure if it'd be better to compress only sequence
of contiguous motion events, thinking to the case of anticipating
a motion event before a modifier key press/release.
2012-06-24 13:23:11 +02:00
373a4e7469 app: completely remove TileManager and friends (base/ and paint-funcs/)
And along with it a lot of stuff like the drawable preview cache, the
gegl tile manager backend, temporary gimp_gegl_buffer_foo() stuff, and
the remaining bits of performance.

The projection is in an evil semi-ported state which makes it work
ok-ish for stuff like layer moving, but absolutely unbearable for
painting, there is also an off-by-one rendering glitch at some zoom
levels.
2012-06-20 21:44:09 +02:00
5835a730a3 Bug 677375: tools do not strictly follow mouse...
pointer (missing motion events)

Disable calls gimp_help_set_help_data for shell->canavs
2012-06-18 18:14:43 +02:00
d5b6608ad4 Bug 677375: tools do not strictly follow mouse...
pointer (missing motion events)
2012-06-10 17:22:33 +02:00
1338bba7db Bug 645345: 'Color Management' display filter causes performance problems 2012-06-09 15:36:53 +02:00
f400bc49ca Bug 677262 - move the layer with the arrow keys, broken after...
commit 9ce8d4fae2. Fix the return_val
logic added in that commit, and make sure we always swallow arroy key
events, because we don't want focus keynav away from the canvas.
2012-06-08 00:21:07 +02:00
cc916e4894 app: speed up GimpCanvasTransformPreview massively
by reading from the source buffers in their native format, and then
calling babl_process() on an entire line of pixels at once.
2012-06-07 00:50:58 +02:00
89760cf044 app: Save the maximized state of the main window in the sessionrc file. 2012-05-27 20:42:02 +02:00
6c9f1b5715 Bug 676872 - Image Properties keyboard shortcut Alt+Return Broken
Don't swallow key events which were not handled by the keyboard
controller.
2012-05-27 19:55:42 +02:00
c1cfe98d35 Bug 676522 - Changing tabs in single-window-mode should switch the active image
Change the active image when switching tabs in single-window-mode.
2012-05-23 01:25:22 +02:00
57d4680ab3 Bug 675399 - Mention that the image was at least exported in the close...
If the image was exported, mention it in the close warning dialog.
2012-05-10 01:10:27 +02:00
20f3cba2b6 app: rename gimp_image_base_type() to gimp_image_get_base_type() 2012-05-07 21:57:33 +02:00
e2c8a60665 app: remove the "confirm-on-close" preference
the warning dialog cannot be disabled any longer now.
2012-05-07 14:02:36 +02:00
010418d874 app: remove gimp_drawable_get_tiles() 2012-05-06 04:39:23 +02:00
f164069c9c app: remove gimp_drawable_bytes() and ask its format instead 2012-05-02 17:51:16 +02:00
7f8c6c475f app: show the precision in the image title string for %t 2012-05-02 17:51:11 +02:00
736eb26637 app: port GimpCanvasTransformPreview to gegl_buffer_sample() 2012-05-02 17:51:11 +02:00
e737bf77fa app: add gimp-babl.[ch] and move Babl specific code there 2012-05-02 17:51:08 +02:00
85bd6b0dd9 app: pass a format, not bpp, to gimp_viewable_get_dummy_pixbuf()
and add tons of <gegl.h> includes.
2012-05-02 17:51:08 +02:00
310c1bfb71 app: add gimp_babl_get_description()
which keeps around human readable and translatable strings for Babl
formats, as replacement for the to-be-obsoleted image type etc. enum
descriptions.
2012-05-02 17:51:03 +02:00
53cf2c657b app: move the GTK-free cairo utility functions to core/gimp-cairo.[ch] 2012-05-02 17:51:02 +02:00
c14738806e app: use gimp_image_get_layer_format() instead of dealing with image_type 2012-05-02 17:50:57 +02:00