After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 316392 - Make canvas, layer, image resizing dialogs remember preferences
Make canvas, layer, image resizing dialogs remember preferences
Status: RESOLVED FIXED
Product: GIMP
Classification: Other
Component: User Interface
2.3.x
Other All
: Normal enhancement
: 2.4
Assigned To: GIMP Bugs
GIMP Bugs
Depends on:
Blocks:
 
 
Reported: 2005-09-15 13:50 UTC by Lance Dockins
Modified: 2008-01-15 14:04 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Lance Dockins 2005-09-15 13:50:20 UTC
Right now, these dialogs do have the ability to remember your preferred
interpolation method (where applicable).  They need a way to remember your
preferred resizing options in the drop-down menus.  For instance, while resizing
by pixels or pixels/inch may be beneficial, I usually have to switch at least
one of those menus (e.g. switching the image size drop-down to percent instead
of pixels).  While it doesn't take long to make the switch, it's annoying to
have to do it every time.  Would it be possible to remember the preferred
resizing method (e.g. pixels, percent, inches, etc.) and Resolution scale
(pixels/in, pixels/mm, etc.)  As a side note, it goes without saying that, the
rest of these dialogs cannot and should not also be affected by the change (as
you're probably not going to resize every image you work on to the same size)
Comment 1 Sven Neumann 2005-09-15 16:09:45 UTC
See also #164995.
Comment 2 Sven Neumann 2005-09-15 16:11:00 UTC
This is a duplicate of bug #312950, isn't it?
Comment 3 Lance Dockins 2005-09-15 16:26:43 UTC
Sven, 
I don't think this is an exact duplicate.  If I understood correctly, the patch
you applied should remember the setting during the life of the image you're
working with, right?  If that's correct then the patch won't help those people
who use resizing frequently but call up and resize multiple different images. 
Of course, I don't know if your patch also affects the layer and canvas dialogs
as well. 

My recommendation was to make this a global GIMP setting that is consistent from
image to image but is configurable from the Preferences dialog in the event that
a change is required.  That might require that you make either one setting
available that controls all three dialogs or, better yet, three settings, one
for each dialog.  If that's what your patch does, then "yes" it's a duplicate. 
If that's not what your patch does, my request stands.

Of course, I might like to test your patch as well.  When's the next development
release of GIMP (2.3.4) scheduled for release?
Comment 4 Sven Neumann 2005-09-16 10:03:34 UTC
Can you imagine a common use case where one would need three different settings?
Comment 5 Lance Dockins 2005-09-16 13:12:34 UTC
Personally, I can't think of 3, but I can think of two.  Of course, understand
that those 3 would be one setting for each dialog.  The two cases I can think of
are image resizing and canvas resizing.  It's not uncommon that I have to resize
an image by a wide margin using the % option.  In the same image or even a
different image, it's also not uncommon for me to have to resize the canvas at a
precision level requiring pixels instead of %.  And that's just me, Sven.  The
reason I mentioned 3 dialogs is because it doesn't matter whether or not we can
think of a way to use all three. I can guarantee that people will want to use
GIMP in more ways than we can think of.

The point I guess I'm making here is that it is a usability issue to have to
reset these dialogs every time you open them.  Since you fixed that in your
patch, I must admit that it's still only slightly less frustrating to have to
resize them every time you create a new image or restart GIMP.  That's the same
usability issue that GIMP currently has with remembering Save and Export
configurations in the dialogs (which I am working up a mockup solution for, by
the way).  

The only solution to this problem that I can see that would eliminate the entire
usability issue (namely repetitive input on the part of the user), is to make
the setting global for each of the three resize dialogs and allow people to
change their preferences in the Preferences dialog after they've saved them... 
or for that matter, you could even use the resize dialogs for this provided that
you add a control (like a check box) to the dialogs that indicate to the user
that they are making this their preferred setting.  By doing it this way, you're
going to prevent creating a new problem in your solution, because the way that I
believe it's implemented in the fix is going to get complaints as well if we
leave it as is.  I know that that is a bit annoying because I regularly have to
take such suggestions myself, but in the end, every suggestion you get from a
user can tell you something about what you can do to improve the product.  
Comment 6 Lance Dockins 2005-09-26 22:06:23 UTC
Another recommendation for 2.4
Comment 7 weskaggs 2006-05-18 20:39:43 UTC
confirming as an enhancement request
Comment 8 weskaggs 2006-05-21 18:33:58 UTC
Bumping to Future because this is not going to make it into 2.4, unfortunately.
Comment 9 Michael Natterer 2006-10-14 16:54:44 UTC
Fixed in CVS:

2006-10-14  Michael Natterer  <mitch@gimp.org>

	Remember the settings in the scale and resize dialogs for images
	and layers. Fixes bug #164995, bug #316392, and bug #357424.

	* app/dialogs/scale-dialog.h: removed GimpScaleCallback typedef.

	* app/dialogs/dialogs-types.h: added it here.

	* app/dialogs/image-scale-dialog.[ch]: made the ImageScaleDialog
	struct private, return a GtkWidget* from image_scale_dialog_new()
	and use a GimpScaleCallback in the public API.

	* app/actions/actions-types.h: #include "dialogs/dialogs-types.h"

	* app/actions/image-commands.c: changed according to image scale
	dialog changes. Remember the scale dialog's unit (if it is
	"percent") and interpolation type across dialog invocations. Also
	remember the resize dialog's unit (if it is "percent").

	* app/actions/layers-commands.c: remember scale and resize dialog
	stuff as in image-commands.c