Commit Graph

25284 Commits

Author SHA1 Message Date
Michael Natterer 9b1681216d Bug 586591 - Opening jpg image sets cpu activity to 100%
(gimp_projection_validate_tile): fix stupid braino that made the
recently added optimization loop infinitely on images with a width
that is a multiple of TILE_WIDTH.
2009-06-22 20:24:28 +02:00
Michael Natterer 0ced7020d3 Add naive handling of PageUp/PageDown in the text tool 2009-06-22 13:55:52 +02:00
Michael Natterer 0f55bf15bc Enable cut/copy/paste for the text tool
* app/tools/tools-enums.[ch]: add enum GimpClipboardAction which can be
{ CUT, COPY, PASTE }

* app/tools/gimptool.[ch]
* app/tools/tool_manager.[ch]: add GimpTool::clipboard_action() which
returns a boolean indicating whether the tool handled the action.

* app/tools/gimptexttool.c: implement clipboard_action().

* app/actions/edit-commands.c: try the active tool first in the cut,
copy and paste callbacks.
2009-06-21 23:37:18 +02:00
Michael Natterer 1f91136e35 Make sure mouse selections work together nicely with keyboard navigation
(gimp_text_tool_motion): always keep the "insert" mark at the mouse
location and the "selection_bound" one at the other end of the
selection.

(gimp_text_tool_key_press): make cursor navigation always move the
"insert" mark, and move "selection_bound" along with it unless shift
is pressed. It was exactly the other way around.
2009-06-21 17:33:25 +02:00
Michael Natterer a7271e6b25 Handle double and triple click and enable selecting words and lines 2009-06-21 16:20:16 +02:00
Michael Natterer cd880b3946 Rename member "text_cursor_changing" to "selecting" and remove unreachable code 2009-06-21 14:31:49 +02:00
Michael Natterer 1a16b48c93 Add infrastructure for sending double and triple clicks to tools
* app/tools/tools-enums.[ch]: add enum GimpButtonPressType which can
be { NORMAL, DOUBLE, TRIPLE }

* app/tools/gimptool.[ch]: add press_type paramater to GimpTool::button_press()

* app/tools/gimp*tool.c
* app/tools/tool_manager.[ch]: changed accordingly.

* app/tools/gimptoolcontrol.[ch]: add members and API so tools can choose
to receive double and triple clicks.

* app/display/gimpdisplayshell-callbacks.c (gimp_display_shell_tool_events):
dispatch double and triple clicks to tools if they want them, and if they
became active by the preceding normal button press.
2009-06-20 17:37:31 +02:00
Michael Schumacher fa388d8cea Corrected consistency of name length and wording of the v3 explanation
The v1 brush name length was still shown as byte 20 - (header_size -20) instead of 20 - (headersize - 1).
The v3 explanation did use 'noticing' instead of 'notifying'.
2009-06-20 12:46:42 +02:00
Sven Neumann 5865dcf63e devel-docs: fix byte range in format documentation
The byte range for the brush, repspective pattern name, was wrong in
the documentation of the GBR and PAT file formats. This commit
corrects this.
2009-06-19 20:48:24 +02:00
Michael Natterer 2a88723a40 Bug 573256 - Text tool appearance doesn't account for DPI
* app/text/gimptextlayout-render.c: remove private function which
creates the transform matrix.

* app/text/gimptextlayout.[ch]: add it here as public API. Also add
function which transform and untransform PangoRectangles, points and
distances using the transform matrix.

* app/tools/gimptexttool.c: convert coordinates using above new
transform functions when drawing selection and cursor, and when
processing mouse events.
2009-06-19 17:08:34 +02:00
Sven Neumann 2e11cf878a Adapt mkgen.pl to create the .gitignore file with Win32 executables
The .gitignore file in plug-ins/common is created by mkgen.pl, just
like Makefile.am in this directory. Changed the script to also
include names of the Microsoft Windows executables in the created
.gitignore file.
2009-06-19 09:31:10 +02:00
Michael Schumacher eed061efbb Adding Microsoft Windows executables to the .gitignore files
All binaries have been added individually.
Old binaries are supposed to show up as untracked.
2009-06-19 00:14:17 +02:00
Michael Natterer d93941df7c Bug 563029 - Closing maximized image doesn't restore document window size
(gimp_display_shell_empty): Call gtk_window_unmaximize() before
setting the empty display's size.
2009-06-17 21:29:08 +02:00
Michael Natterer e2d90e3e1f Bug 585488 – Perspective transformation on a layer with a mask causes crash
(gimp_drawable_transform_affine)
(gimp_drawable_transform_flip)
(gimp_drawable_transform_rotate): also transform the layer mask if we
are transforming a layer and there is no selection (which causes the
entire layer to be transformed).
2009-06-17 21:14:32 +02:00
Michael Natterer 8423757d3f Add forgotten #include "libgimpbase/gimpbase.h" 2009-06-17 20:55:05 +02:00
Michael Natterer bdd8d8e3fb Use more x,y,width,height instead of x1,y1,x2,y2
(gimp_paint_core_get_orig_image)
(gimp_paint_core_get_orig_proj): changed parameters to x,y,width,height.
Update callers accordingly and use x,y,width,height there too except
in gimpperspectiveclone.c which does better with a bounding box.
2009-06-17 20:46:28 +02:00
Michael Natterer 13cb156a80 Get rid of more x1,y1,x2,y2 uglyness
(gimp_drawable_push_undo): change x1,y1,x2,y2 parameters to
x,y,witdh,height and update all callers accordingly.
2009-06-16 22:59:07 +02:00
Michael Natterer 06a3b3a85a Bug 586008 - GIMP crashes when right-click canceling a drawing action initiated outside layer boundaries
(gimp_paint_core_cancel): don't pass out-of-drawable coordinates to
gimp_paint_core_copy_valid_tiles().
2009-06-16 22:09:48 +02:00
Michael Natterer 6049768abf Bug 578630 - File Creation Permission Bug Only for Some File Types: Creating as 644 (rw-r--r--) when should be 664 (rw-rw-r--)
Use 0666 as permissions instead of 0644 and let the user's umask care
about restricting, so creating a file with open() behaves the same way
as with fopen().
2009-06-15 19:28:06 +02:00
Per Kongstad efd6cd9bc3 Updated Danish translation 2009-06-14 23:36:51 +02:00
Mads Lundby 52087997f0 Updated Danish translation 2009-06-14 23:28:25 +02:00
Michael Natterer 9af87c83aa Speed up the gegl projection by a factor of about 4
(gimp_projection_validate_tile): validate a strip of up to 8 invalid
tiles at once to reduce whatever overhead inflicted on gegl.
2009-06-11 22:22:11 +02:00
Michael Natterer 907971bab3 Bug 563966 - Edit - Copy _Visible Named tooltip can be improved
Mention "what is visible" in the tooltip for edit-named-copy-visible.
2009-06-11 13:41:05 +02:00
Michael Natterer 9b6c9e1fe4 Bug 155733 – need to check return values of gimp_drawable_mask_bounds()
Finally commit the patch from Luidnel Maignan, but don't spit messages
when the effected region is empty (core functions don't spit messages
either). Also got rid of some x2 and y2 variables that are not needed
any longer.
2009-06-07 23:52:37 +02:00
Nicholas Doyle 90db6c0891 plug-ins: Add support for opening raw 16bit (RGB565) color images 2009-06-06 21:50:56 +02:00
Alexia Death f3f7b28079 Fix for another potentially crashing and while.
This time in gimp_coords_interpolate_catmull. This should be
the last one.
2009-06-06 19:25:13 +03:00
Michael Natterer 38e9012023 Bug 575158 – default view prefs should affect no-image window
Add gimp_display_shell_sync_config() which copies the prefs settings
to the display shell and call it from gimp_display_shell_new() and
gimp_display_shell_fill().
2009-06-05 22:21:19 +02:00
Sven Neumann 8f37a96d70 only spit out debug output if TILE_PROFILING is defined 2009-06-04 12:15:07 +02:00
Sven Neumann b2fc6d2876 whitespace and coding style cleanups 2009-06-04 12:15:06 +02:00
Sven Neumann ac680f1cbd whitespace cleanup and removed inclusion of <sys/types.h> 2009-06-04 12:15:06 +02:00
Monty 717d8b4e56 Correct startup flaw in idle swapper start.
Check that the cache itself is idle. Previously it would start during
transforms and long pyramid rendering ops and toss writes and large
seeks into the tile cache while it was potentially under heavy pressure.

Also increase its flush rate more to be more in line with modern system
and editing needs.
2009-06-04 12:15:06 +02:00
Monty e925338321 Replace two list 'flush clean first' cache strategy with an LRU strategy.
Although the clean-first strategy gives fast light-load performance,
it also degrades catastrophically under moderate cache pressure. LRU is
not as efficient under light load, but degrades more gracefully under
moderate and heavy load.
2009-06-04 12:15:05 +02:00
Monty ac51a588d6 Add additional profiling to tile usage.
Add more profiling In order to analyze efficiency and behavior of the
tile cache. Profiling includes run-time indication of idle swapper
activity.

Also, fixes to original tile profiling code that appears to have
bitrotted some; it was no longer tracking changes made to tile memory
outside of tile.c.
2009-06-04 12:15:05 +02:00
Monty 2eaa777314 Optimize TILE_DATA_POINTER() macro
Minor change to TILE_DATA_POINTER that restricts TILE_WIDTH and
TILE_HEIGHT to powers of two, but eliminates two integer divisions
(or, in reality, eliminates the over-complicated assembly resulting
from optimizing out two integer divisions in a C compliant fashion).
2009-06-04 12:14:22 +02:00
Sven Neumann 874e16c669 Bug 522483 – use gtk_show_uri() instead of calling firefox directly
As a first step, changed the default web-browser to xdg-open.
2009-06-02 23:50:20 +02:00
Sven Neumann c8ef19d25d add new plug-ins to POTFILES.in 2009-06-02 21:19:52 +02:00
Sven Neumann 030aa9b26d plug-ins: minor coding style adjustments in file-xmc.c 2009-06-02 21:11:34 +02:00
Takeshi Matsuyama 27cec2c3f2 plug-ins: add X11 Mouse Cursor plug-in
This commit adds a plug-in to read and write X11 mouse cursor files.
2009-06-02 21:11:06 +02:00
Sven Neumann aac9e75ec3 updated mkgen.pl script for use with git
Change the mkgen.pl script to modify .gitignore instead of trying to
change the svn:ignore property.
2009-06-02 20:41:51 +02:00
Michael Natterer 77439d689e Bug 584408 - If brush selection popup overlaps color gradient, clicks pass through
Keep track of the drag state the widget is in so it doesn't get confused
by release or motion events that don't have a related press event.
2009-06-01 22:55:43 +02:00
Sven Neumann af965d82dd Bug 584345 – when printing, the number of copies should be reset to 1
at each new GIMP session

Do not store the number of copies in the print-settings resource file,
but keep it in the print-settings that are attached to the image.
2009-06-01 20:02:19 +02:00
Sven Neumann 5e79335cf3 git: ignore config.h.in~ 2009-06-01 19:47:19 +02:00
Aurimas Juška 6e581ca990 Add JPEG2000 load plug-in written by Aurimas Juška 2009-06-01 18:44:30 +02:00
drtvasudevan f255dcad8a Added ta translation 2009-05-30 10:25:02 +05:30
Sven Neumann ac11569830 app: fix the questionable while loop in another place
The questionable while loops to get GimpCoords.direction into a proper
range were used in two places. This commit fixes the actual problematic
place where, under some rare circumstances, the code used to go into a
loop for a very long time.
2009-05-29 23:33:54 +02:00
Alexia Death 936df1a183 app: Fix gimp_display_shell_eval_event that had some questionable whiles 2009-05-29 22:26:57 +03:00
Michael Natterer c73b71810d Use g_strdup_printf() instead of g_new() and g_sprintf() 2009-05-29 20:49:40 +02:00
Christopher Montgomery b559354af1 plug-ins: Make sure to flush output in ts_stdout_output_func() 2009-05-28 21:07:07 +02:00
Stephen Griffiths d5fddb5ba9 app: gimpuimanager.c formatting 2009-05-28 19:42:18 +02:00
Timo Jyrinki 9dbbbba8d4 Updated Finnish translation by Aapo Rantalainen 2009-05-28 15:10:20 +03:00