Gimp/app/tools
Alx Sa a749329ab6 tools: Turn off floating selection outline when moving
When moving a floating layer or selection, we draw a solid
border around the object. However, we also let the "marching
ants" selection continue (if the user has it enabled). This slows
down performance when moving, especially on large selections.

This patch incorporates logic from the Selection tools into the
Edit Selection tool (which the Move Tool uses for translation).
It stores the user's "Show Selection" setting, sets it to FALSE
while moving the layer or selection, then restores it to its
prior value when the cursor is released.

This logic also extends to using Ctrl + Alt to drag a floating
selection out of a layer that already has a selection.
2026-03-31 23:46:05 +00:00
..
gimp-tool-options-manager.c app: Make the layer auto expand options shared between tools 2023-11-25 16:19:43 +00:00
gimp-tool-options-manager.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimp-tools.c app: rename GimpContainer's "children-type" property to "child-type" 2025-07-18 08:19:13 +02:00
gimp-tools.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpairbrushtool.c app: Add pattern to context props for tools supporting auto-expand 2023-11-25 16:19:43 +00:00
gimpairbrushtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpalignoptions.c app, menus: vectors -> path in dialog and action identifiers 2025-07-07 16:16:48 +02:00
gimpalignoptions.h app, pdb, libgimp: use "#pragma once" instead of: 2025-07-13 03:21:37 +02:00
gimpaligntool.c app: globally block editing vector and link layers. 2025-10-08 23:21:59 +02:00
gimpaligntool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpbrightnesscontrasttool.c app, libgimpwidgets: move gimp_prop_spin_scale_new() and… 2022-02-19 00:14:44 +01:00
gimpbrightnesscontrasttool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpbrushtool.c app: action names set in GimpToolControl don't need the group name appended. 2023-04-12 22:07:08 +02:00
gimpbrushtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpbucketfilloptions.c app: make GimpContainerView behave like a normal widget 2025-08-01 10:02:37 +02:00
gimpbucketfilloptions.h app, pdb, libgimp: use "#pragma once" instead of: 2025-07-13 03:21:37 +02:00
gimpbucketfilltool.c app: globally block editing vector and link layers. 2025-10-08 23:21:59 +02:00
gimpbucketfilltool.h app, pdb, libgimp: use "#pragma once" instead of: 2025-07-13 03:21:37 +02:00
gimpbycolorselecttool.c app, libgimp, pdb, plug-ins: getting rid of some GimpRGB usage. 2024-02-11 23:28:02 +01:00
gimpbycolorselecttool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpcageoptions.c
gimpcageoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpcagetool.c app: add accessors for GimpDrawableFilter::temporary and use them 2025-05-31 14:14:02 +02:00
gimpcagetool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpcloneoptions-gui.c Issue #8102: crash when using the clone tool. 2022-04-21 19:13:01 +02:00
gimpcloneoptions-gui.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpclonetool.c app: Make the layer auto expand options shared between tools 2023-11-25 16:19:43 +00:00
gimpclonetool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpcoloroptions.c app, libgimpwidgets: move gimp_prop_spin_scale_new() and… 2022-02-19 00:14:44 +01:00
gimpcoloroptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpcolorpickeroptions.c app: GimpFilterTool displays a "Sample merged" checkbox. 2020-09-26 12:40:54 +02:00
gimpcolorpickeroptions.h
gimpcolorpickertool.c app: globally block editing vector and link layers. 2025-10-08 23:21:59 +02:00
gimpcolorpickertool.h
gimpcolortool.c app, libgimp, pdb, plug-ins: gimp_context_[gs]et_foreground() now using GeglColor. 2024-02-11 23:28:02 +01:00
gimpcolortool.h app: some more GimpRGB to GeglColor port. 2024-02-11 23:28:02 +01:00
gimpconvolvetool.c app: Add pattern to context props for tools supporting auto-expand 2023-11-25 16:19:43 +00:00
gimpconvolvetool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpcropoptions.c gui: Update text of 'Crop tool' option to 'Selected layers only' 2021-02-25 23:02:04 +06:00
gimpcropoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpcroptool.c tools: Add alpha if crop can grow the layer 2026-02-14 14:23:39 +00:00
gimpcroptool.h
gimpcurvestool.c tools, operation: Add support for loading PS Curve presets 2025-05-22 18:52:30 +00:00
gimpcurvestool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpdodgeburntool.c app, libgimpwidgets: move gimp_prop_spin_scale_new() and… 2022-02-19 00:14:44 +01:00
gimpdodgeburntool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpdrawtool.c Adding on canvas text for equidistance snapping visualization 2023-07-25 15:31:16 +02:00
gimpdrawtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpeditselectiontool.c tools: Turn off floating selection outline when moving 2026-03-31 23:46:05 +00:00
gimpeditselectiontool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpellipseselecttool.c
gimpellipseselecttool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimperasertool.c
gimperasertool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpfilteroptions.c app: the "color-options-expanded" filter option is now bogus. 2025-01-10 23:43:31 +01:00
gimpfilteroptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpfiltertool-settings.c
gimpfiltertool-settings.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpfiltertool-widgets.c app/tools: Use NDE filter's drawable for on-canvas widgets 2025-06-12 15:11:31 +00:00
gimpfiltertool-widgets.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpfiltertool.c Issue #15206: do not initialize transform tools when swapping tools… 2025-11-08 11:26:04 +01:00
gimpfiltertool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpflipoptions.c
gimpflipoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpfliptool.c tools: Add arrow keys to Flip tool 2026-02-06 04:05:48 +00:00
gimpfliptool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpforegroundselectoptions.c Issue #15575: add arg to color button prop widget to choose context awareness. 2026-02-03 13:10:41 +01:00
gimpforegroundselectoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpforegroundselecttool.c tools: Don't run Foreground Selection without strokes 2025-06-11 19:49:52 +00:00
gimpforegroundselecttool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpforegroundselecttoolundo.c app: big porting of weak pointers to g_set,clear_weak_pointer() 2023-05-22 18:16:09 +02:00
gimpforegroundselecttoolundo.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpfreeselecttool.c
gimpfreeselecttool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpfuzzyselecttool.c app: rework and fix the logic for copy-pasting multiple drawables. 2022-11-12 18:28:58 +01:00
gimpfuzzyselecttool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpgegltool.c app: Make block-listing of GIMP operations optional 2025-08-03 21:38:28 +00:00
gimpgegltool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpgenerictransformtool.c Make transform matrix selectable 2023-06-21 21:02:23 +00:00
gimpgenerictransformtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpgradientoptions.c app, libgimpwidgets: move gimp_prop_spin_scale_new() and… 2022-02-19 00:14:44 +01:00
gimpgradientoptions.h
gimpgradienttool-editor.c Issue #8900 and #9923: reimplementing GimpUnit as a proper class. 2024-08-02 10:46:38 +02:00
gimpgradienttool-editor.h
gimpgradienttool.c app: add accessors for GimpDrawableFilter::temporary and use them 2025-05-31 14:14:02 +02:00
gimpgradienttool.h
gimpguidetool.c gimpguidetool: fix somewhat pointless warning about uninitalized variable 2023-05-20 18:47:14 +02:00
gimpguidetool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimphandletransformoptions.c app, libgimpwidgets: move GimpSpinScale to libgimpwidgets. 2022-02-17 23:13:42 +01:00
gimphandletransformoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimphandletransformtool.c
gimphandletransformtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimphealtool.c app: Add pattern to context props for tools supporting auto-expand 2023-11-25 16:19:43 +00:00
gimphealtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimphistogramoptions.c
gimphistogramoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpinkoptions-gui.c app: mark missing tool option as translatable 2024-01-18 13:20:21 +00:00
gimpinkoptions-gui.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpinktool.c app: Add pattern to context props for tools supporting auto-expand 2023-11-25 16:19:43 +00:00
gimpinktool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpiscissorsoptions.c
gimpiscissorsoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpiscissorstool.c tools: Close iscissors curve on pressing Enter 2025-05-11 16:23:12 +00:00
gimpiscissorstool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimplevelstool.c Issue #15962: initialize Levels dialog in Perceptual. 2026-03-09 14:26:58 +01:00
gimplevelstool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpmagnifyoptions.c
gimpmagnifyoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpmagnifytool.c app: globally block editing vector and link layers. 2025-10-08 23:21:59 +02:00
gimpmagnifytool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpmeasureoptions.c
gimpmeasureoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpmeasuretool.c app: globally block editing vector and link layers. 2025-10-08 23:21:59 +02:00
gimpmeasuretool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpmoveoptions.c tools: Connect MoveOptions and TransformOptions to icon size 2025-04-04 10:46:23 +00:00
gimpmoveoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpmovetool.c app: globally block editing vector and link layers. 2025-10-08 23:21:59 +02:00
gimpmovetool.h app, pdb, libgimp: use "#pragma once" instead of: 2025-07-13 03:21:37 +02:00
gimpmybrushoptions-gui.c core, paint, tools: Port to MyPaint Brushes2 2025-07-09 22:14:42 +00:00
gimpmybrushoptions-gui.h
gimpmybrushtool.c tools: Fix missing cursor for MyPaint Brush tool 2025-10-03 22:14:52 +00:00
gimpmybrushtool.h
gimpnpointdeformationoptions.c app, libgimpwidgets: move gimp_prop_spin_scale_new() and… 2022-02-19 00:14:44 +01:00
gimpnpointdeformationoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpnpointdeformationtool.c app: GimpTool multi-drawable aware. 2020-05-26 14:15:17 +02:00
gimpnpointdeformationtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpoffsettool.c pdb, operations, tool: Replace GimpContext with GeglColor... 2024-11-29 00:29:36 -05:00
gimpoffsettool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpoperationtool.c app: auxiliary input pads should have nicer names as registered by the operation. 2024-08-13 22:32:44 +00:00
gimpoperationtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimppaintbrushtool.c app: Add pattern to context props for tools supporting auto-expand 2023-11-25 16:19:43 +00:00
gimppaintbrushtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimppaintoptions-gui.c tools: Hide Force slider for Pencil Tool 2025-04-11 02:58:42 +00:00
gimppaintoptions-gui.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimppaintselectoptions.c app: use the same mode box in Paint Select as in other Selection tools. 2025-11-27 22:24:54 +01:00
gimppaintselectoptions.h app: use the same mode box in Paint Select as in other Selection tools. 2025-11-27 22:24:54 +01:00
gimppaintselecttool.c app: use the same mode box in Paint Select as in other Selection tools. 2025-11-27 22:24:54 +01:00
gimppaintselecttool.h app: use the same mode box in Paint Select as in other Selection tools. 2025-11-27 22:24:54 +01:00
gimppainttool-paint.c app: Blink lock when layer expansion is prevented by lock 2023-11-25 16:19:43 +00:00
gimppainttool-paint.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimppainttool.c app: globally block editing vector and link layers. 2025-10-08 23:21:59 +02:00
gimppainttool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimppathoptions.c app, desktop: update demo tour for vector layers. 2025-08-29 13:15:24 +02:00
gimppathoptions.h path, tools, pdb: UX updates to vector layers 2025-08-17 02:20:19 +00:00
gimppathtool.c tools: Don't disconnect rasterized layer signals 2026-02-20 02:48:05 +00:00
gimppathtool.h app: improve layer and path selection logic. 2025-10-15 21:07:55 +02:00
gimppenciltool.c app: Add pattern to context props for tools supporting auto-expand 2023-11-25 16:19:43 +00:00
gimppenciltool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpperspectiveclonetool.c app: action names set in GimpToolControl don't need the group name appended. 2023-04-12 22:07:08 +02:00
gimpperspectiveclonetool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpperspectivetool.c
gimpperspectivetool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimppolygonselecttool.c
gimppolygonselecttool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimprectangleoptions.c Issue #8900 and #9923: reimplementing GimpUnit as a proper class. 2024-08-02 10:46:38 +02:00
gimprectangleoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimprectangleselectoptions.c app, libgimpwidgets: move gimp_prop_spin_scale_new() and… 2022-02-19 00:14:44 +01:00
gimprectangleselectoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimprectangleselecttool.c
gimprectangleselecttool.h
gimpregionselectoptions.c app, libgimpwidgets: move gimp_prop_spin_scale_new() and… 2022-02-19 00:14:44 +01:00
gimpregionselectoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpregionselecttool.c app: mask colors are GeglColor. 2024-02-11 23:28:03 +01:00
gimpregionselecttool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimprotatetool.c Issue #8900 and #9923: reimplementing GimpUnit as a proper class. 2024-08-02 10:46:38 +02:00
gimprotatetool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpsamplepointtool.c
gimpsamplepointtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpscaletool.c
gimpscaletool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpseamlesscloneoptions.c app, libgimpwidgets: move gimp_prop_spin_scale_new() and… 2022-02-19 00:14:44 +01:00
gimpseamlesscloneoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpseamlessclonetool.c tools: Update Seamless Clone paste check 2025-07-31 14:49:35 +00:00
gimpseamlessclonetool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpselectionoptions.c app/tools: Fix ordering of selection mode options 2026-03-09 10:26:46 +00:00
gimpselectionoptions.h app: use the same mode box in Paint Select as in other Selection tools. 2025-11-27 22:24:54 +01:00
gimpselectiontool.c tools: Turn off floating selection outline when moving 2026-03-31 23:46:05 +00:00
gimpselectiontool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpsheartool.c tools: Add arrow keys to Shear tool 2026-02-14 22:36:08 +00:00
gimpsheartool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpsmudgetool.c app: Add pattern to context props for tools supporting auto-expand 2023-11-25 16:19:43 +00:00
gimpsmudgetool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpsourcetool.c app: get rid of unused variable warning. 2023-04-20 15:38:17 +02:00
gimpsourcetool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptextoptions.c Issue #15575: add arg to color button prop widget to choose context awareness. 2026-02-03 13:10:41 +01:00
gimptextoptions.h app, pdb, libgimp: use "#pragma once" instead of: 2025-07-13 03:21:37 +02:00
gimptexttool-editor.c tools: prioritize proxy bindings over IM context in text tool 2026-03-31 15:31:25 +02:00
gimptexttool-editor.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptexttool.c tools: destry text style editor each time a textbox is selected 2025-10-31 15:39:10 +01:00
gimptexttool.h move style_overlay_offset_[xy] to text_layer 2025-10-31 15:39:10 +01:00
gimpthresholdtool.c app: GimpTool multi-drawable aware. 2020-05-26 14:15:17 +02:00
gimpthresholdtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptilehandleriscissors.c
gimptilehandleriscissors.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptool-progress.c
gimptool-progress.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptool.c app, libgimpbase, plug-ins, tools: Include missing IO headers if on Windows 2025-11-29 18:16:54 -03:00
gimptool.h app: globally block editing vector and link layers. 2025-10-08 23:21:59 +02:00
gimptoolcontrol.c app: new double action "tools-mypaint-brush-pixel-size-set", used as… 2022-08-17 14:20:18 +02:00
gimptoolcontrol.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptooloptions-gui.c
gimptooloptions-gui.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptools-utils.c app: show a menu path to advertize how to "Rasterize" and blink the selected layer. 2025-10-15 14:57:36 +02:00
gimptools-utils.h app: show a menu path to advertize how to "Rasterize" and blink the selected layer. 2025-10-15 14:57:36 +02:00
gimptransform3doptions.c
gimptransform3doptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptransform3dtool.c Issue #8900 and #9923: reimplementing GimpUnit as a proper class. 2024-08-02 10:46:38 +02:00
gimptransform3dtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptransformgridoptions.c app, libgimpwidgets: move gimp_prop_spin_scale_new() and… 2022-02-19 00:14:44 +01:00
gimptransformgridoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptransformgridtool.c tools: Fix crash in passthrough composited preview 2025-08-15 06:03:13 +00:00
gimptransformgridtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptransformgridtoolundo.c app: big porting of weak pointers to g_set,clear_weak_pointer() 2023-05-22 18:16:09 +02:00
gimptransformgridtoolundo.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptransformoptions.c tools: Connect MoveOptions and TransformOptions to icon size 2025-04-04 10:46:23 +00:00
gimptransformoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimptransformtool.c app: globally block editing vector and link layers. 2025-10-08 23:21:59 +02:00
gimptransformtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpunifiedtransformtool.c
gimpunifiedtransformtool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpwarpoptions.c app: big porting of weak pointers to g_set,clear_weak_pointer() 2023-05-22 18:16:09 +02:00
gimpwarpoptions.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
gimpwarptool.c app: add accessors for GimpDrawableFilter::temporary and use them 2025-05-31 14:14:02 +02:00
gimpwarptool.h app: #pragma once in app/tools 2025-07-13 09:26:04 +02:00
meson.build Declare gexiv2 dependency on many targets (due to gimpmetadata.h) 2025-10-03 18:31:53 -03:00
tool_manager.c Issue #15206: do not initialize transform tools when swapping tools… 2025-11-08 11:26:04 +01:00
tool_manager.h Issue #15206: do not initialize transform tools when swapping tools… 2025-11-08 11:26:04 +01:00
tools-enums.c app: use the same mode box in Paint Select as in other Selection tools. 2025-11-27 22:24:54 +01:00
tools-enums.h app: use the same mode box in Paint Select as in other Selection tools. 2025-11-27 22:24:54 +01:00
tools-types.h app, pdb, libgimp: use "#pragma once" instead of: 2025-07-13 03:21:37 +02:00