GNOME Bugzilla – Bug 113477
Find alternatives to the Floating Selection when pasting
Last modified: 2008-05-27 20:09:07 UTC
Pasting should make a new layer. If someone wants to "anchor" the layer down, then they can do "merge down". That's why it exists. Most of the time when someone pastes (or floats a selection), they want it to remain a layer.
We cannot just remove floating selections (= limbo layers??) because that would immediately kill the feature of pasting to a channel the same way you paste to a layer. The way floating selections are handled is definitely questionable, but just saying "they need to go" without giving a good reason or alternative doesn't help much.
The user doesn't have to be presented with the layer-like floating selection with pasting, whether or not the Gimp handles things with floating selections or not. The concept of floating selections is one of the most confusing things for Gimp newbies, and it's something that us veteran Gimp users have to work around constantly. Internal workings of a program need not always be presented to the user. Often, they should not. In the case of pasting in the Gimp, a new layer should be formed with the pasted element. If the user wants to merge it down, then a simple "merge down" (or flatten, if the user does not like layers for whatever reason) should suffice. There should possibly be a way to convert floating selections to layers and vice versa.
The resolution INCOMPLETE for this bug does not seem to be appropriate. I am reopening it now. Mitch's comment sounds like it should be marked as WONTFIX, although I am not sure.
We need at least improve the representation of the floating selection in the layers dialog. If we need to keep floating selections for pastes, the user should clearly see this in the layers dialog. I would suggest we draw a special icon for floating selections similar to what we do for text layers.
As far as I can tell, in the 1.3 interface there is no way to tell the difference between a floating selection and a real layer except that in the L&C context menu there's a bunch of stuff greyed out. At least in 1.2 you had "Floating selection" and marching ants. I'd like to see some way to tell whether a floating selection is a floating selection visually... I'm attaching this comment here because it seems to be a reversion of the behaviour asked for in this bug, so I guess I'm saying I disagree. Dave.
Changing milestone on a bunch of bugs to 2.0 - none of these could be considered a blocker for a pre-release, IMHO. Many of these have patches or someone working on them, but they're not urgent. Dave.
Here's the icons for floating selections in the layers dock: http://jimmac.musichall.cz/ikony/i52/stock-floating-selection-16.png http://jimmac.musichall.cz/ikony/i52/stock-floating-selection-24.png http://jimmac.musichall.cz/ikony/i52/stock-floating-selection-32.png http://jimmac.musichall.cz/ikony/i52/stock-floating-selection-48.png
This seems to have been fixed in CVS HEAD by mitch (2003-09-06) - any reason this bug report is still open?
No, I just fixed the regression that the layers dialog didn't show floating selections as such. The report however requests to make the concept of floating selections invisible to the user, even if needed internally.
As the problem with not showing floating selection as such is fixed I moved this bug to Future.
Isn't this an enhancement request rather? I don't think the current behaviour can be considered a bug. I agree that we could think about ways to change it, but it's IMO not a bug. Any opinions?
Yes, I agree this is purely an enhancement request. I'm changing the severity and title accordingly but of course it's not set in stone. Those who disagree feel free to change it again but please explain the reasons.
Oops, the title did not properly reflect the intention of the report. Looking at the original report in more detail, I think that this could be easily solved by adding an option "Paste as New Layer" and renaming the current option "Paste as New" to "Paste as New Image". I don't agree with the poster about the fact that the user always wants to create a new layer; for example I sometimes want just to paste a little image several times on top of the current layer. Merge Down may not accomplish the same action as anchoring in all situations. I vote for keeping the current behaviour as is and either adding the new option that I'm suggesting or close as WONTFIX.
Hello everyone, I recently submitted a bug about this behavior (bug 144010). This report has had its status changed to resolved and notabug because I need to "try to understand the concept of floating selections". Telling me I don't understand is not a solution to this problem. I shouldn't have to be told how it works, it should be self apparent. There is also the problem that I've used Photoshop before, and this is the default Photoshop behavior. Actually, if I remember right, Pedro's suggestion of "Paste as New Layer" or "New Image" is how Photoshop does it. This would certainly solve the problem and would force me to choose what I want the pasted item to be. As far as current behavior, I thought my "floating selection" was a layer because it appeared with my other layers on the layer toolbar. Then it magically disappeared. Are floating selections that important/useful??? I've been editing images with Photoshop for 10 years and I've never worried about floating selections. All I know is that this bug is confusing enough to make me not want to use GIMP. I mean, when I edit images, what do I do other than use layers, chop pieces out, blend them together, etc??? Wait, I've looked up floating selections. Found it in the glossary of terms in the gimp help. It took a LONG time to find it because it is nowhere else in the help. Now that I see what it is, I can't think of any reason I would want to use a floating selection. What is the use??? I would just end up converting it to a layer everytime. What can you do with a floating selection that you can't do with a layer? Please email me and tell me. I'd love to know. This "feature" is so far to me extremely confusing and a pointless waste of time.
As clearly noted in comment #11 and comment #12 we consider this as an open enhancement request, but not a bug. The intended behaviour is intentional, but as the discussion on this bug report outlines, we are willing to change this behaviour in the future. Regarding your experienced with switching from Photoshop to the GIMP: The GIMP is not Photoshop, nor do we intend it to be. The GIMP is a to you new application and as with any new application you will have to learn how this particular application works.
err... the observed behaviour is intentional ;-)
Behaviors that confuse users are still bugs, even if they work as intended.
It's not just that this behavior is confusing. I _know_ the GIMP is not Photoshop. I'm willing to learn how to use it if it works as well or better than Photoshop. Floating selections are not a better way. They will just waste my time and get in the way. I'll have to convert them everytime I want to do anything. A time waster is not a feature. A confusing time waster is not worth learning. Why is this not clear??? What is the point of GIMP? Is it not to provide a nice image editing tool for Linux, to open up Linux to those who haven't switched because there is not Photoshop on Linux? What do you intend GIMP to be if not this? GIMP 2.0 is a radical improvement over the first GIMP. The interface is _MUCH_ better. But this layer thing is a showstopper.
Well, the reason that you have a problem with a feature doesn't neccessarily mean that it is bad. So, "Why is this not clear???" isn't really helpful. You should come up with a better solution instead.
Probably the way to go is to make floating selections belong to the drawable they float on instead of them being part of the image structure. That should allow to completely hide the floating selection from the user. It would appear as a selection that can be replaced but it wouldn't show up in the layers dialog. As soon as a different operation than moving is performed, the floating selection is automatically anchored.
*** Bug 157676 has been marked as a duplicate of this bug. ***
This topic was brought up on the #gimp IRC channel, and turns out nobody aside from neo knew why floating selections exist or that pasting to channels or masks is possible, and agreed that floating layers are more trouble than they are worth. Neo suggested behaviour where the common case of pasting to a layer creates a new layer, the same way as pasting and then clicking "New Layer" currently does. Pasting to a channel or mask creates a floating layer just like it does now. That way, most people will never encounter floating layers, and when they do, it's for a real and hopefully obvious purpose. If this is done, there could be a "Merge Down" button in place of the current "Anchor" button in the Layers dialog when the active layer is not a floating layer. This way the supposedly common operation of pasting and then anchoring/merging would remain quick (no need to open a menu), and the mousing sequence for "copy, paste, anchror" would remain identical, only the last click would invoke the Merge Down operation rather than the Anchor operation.
> nobody aside from neo knew why floating selections exist or that > pasting to channels or masks is possible, and agreed that floating > layers are more trouble than they are worth I'm sorry but this is FUD. Floating Selections exist for a good reason. The only thing that needs to be fixed is the annoying user interface (did you ever notice that photoshop has floating selection too?)
*** Bug 300331 has been marked as a duplicate of this bug. ***
I agree that they need to go (what happens internally is up to you guys and none of my concern as an end-user). Floating selections are an interference in my workflow, I have never, in the thousands of images I have worked on, not wanted a new layer.
Created attachment 47772 [details] [review] pasting to a layer create as new layer I suggest we consider this patch as a start to solve the problem. It changes the internal behaviour of gimp_edit_paste() so that it creates a new layer if possible. You still get floating selection with masks and channels. That introduces an inconsistency but if we want to get rid of floating selections, we should consider taking this risk. It should be possible to completely hide the remaining floating selections from the user but that will require a larger patch on top of this one.
Moving to milestone 2.4 so that we don't forget to consider the patch.
Created attachment 47773 [details] [review] pasting to a layer create a new layer sorry for the gibberish in the patch, here's a version without
Created attachment 47811 [details] [review] use Merge Down button instead of Anchor button unless there's a floating selection This patch goes with the former patch. It makes the layer dialog show the "Merge Down" button in place of the "Anchor" button. Only if a floating selection exists, the Anchor button replaces the Merge Down button.
Pasting as a new layer is an operation that inherently must be followed by additional complex operations. (the user is doing something fancy) Pasting without the creation of a layer is something that should be fast, for rapid-fire operations. So I suggest having at least these two operations: Paste Paste as new layer Maybe also have "Paste as floating layer", and something to allow for treating the alpha or mask differently than a user-defined default.
Creating a new layer is as fast or as slow as creating a floating selection.
Regarding comment #30 and follow-up comment #31, by "fast" I mean the total impact of user interface operations. I don't mean CPU time; I'm assuming the computer can keep up. I'm including future user operations that are implied. If the user creates a new layer, they will have to follow that at some future time with additional layer-related operations. So the human cost of the paste operation is probably insignificant when all is done. If the user does not want a new layer, then the human cost of pasting and any required "Merge Down" operation is 100% of the total. Simple operations like this, where the user is copying stuff around without layers, are likely to be done in rapid succession. So the speed of the user interface matters. Thus, the default should be to NOT get a new layer. When a layer is desired, the user can choose "Paste as new layer" from a menu or have a non-default user preference setting in effect. Such a default is also better for those who might not have the layers dialog open. I know none of the experts would consider doing this, but there exist people who just want to scribble something nice and simple.
Re comment #30: "Paste as floating selection" is hopelessly ambigous. Comment #32: So you don't like making it paste a new layer - but do you like the way it is today, or do you want a solution as in comment #20? It looks like you're more concerned about keeping the click count down and/or creating several options that do nearly the same, than to make easy, understandable interfaces. That's not very HIGish. Personally I think making it a new layer would be the obvious thing to do. That's what I expected when I filed bug 300331. The "floating selection" thing we have now is extremely counter intuitive, imho. (Before I filed the bug, I asked a "gimp poweruser" whether it was a bug or a feature. He said "probably a bug".)
Well, paste as floating selections is what all professional image manipulation programs do. What's ambigous is your comment (comment #33). I find it hard to find any useful information in it. Probably the reason is that there is none. Please come back when you have something to say.
After further discussion with Mitch I agreed that having Paste create a new layer by default is the wrong thing to do. We might want to add "Paste as Layer" but it shouldn't become the default Paste action and perhaps we should just not add it in order to avoid cluttering the menu. Everyone agrees that the way that floating selections are currently presented in the UI is not acceptable. Floating selections are meant to help the user, they allow him/her to reposition what was pasted. The floating selection should anchor itself as soon as the user does anything else but moving the floating selection. That's what PS is doing and we would probably do the right thing by copying this behaviour.
I'd like to add my "vote" to adding a "paste as new layer" option and put it in the "paste as" sub-menu so the UI does not become cluttered. A keyboard accelerator is mandatory - this is a power-user feature. I'd have liked Ctrl+Shift+V but it's taken so Ctrl+alt+V will do instead. I'd like to mention that Photoshop had floating selections and similar operation to GIMP back in version 3. When the functionality changed in version 4 and paste operations resulted in new layers, it took some time to adjust, and while today I can't think of doing it any other way, at the time I resented the change. I guess there's no right or wrong here. I also suggest to either show the floating layer in its correct place in the layer stack or remove the floating layer from the layer dialog completely. the way it is presented now is misleading - it always shows on top of all the layers, but when anchored drops back to the active layer.
I don't think that "paste as new layer" is a power-user feature. It is what the newcomer expects to happen on paste and IMO it should become the default, not some power-user feature hidden in a submenu.
Raising priority to Urgent because it is necessary to make a decision about how to handle this for 2.4. If significant changes are made, they must be made very soon.
Since nothing has happened yet with regard to this issue, we should postpone it to 2.6.
*** Bug 349350 has been marked as a duplicate of this bug. ***
Created attachment 108220 [details] [review] 001_paste-as-new-layer-by-default.patch
I also think that pasting should default to creating a new layer. I have attached a patch that is a merge of Sven's earlier two self-rejected changes, modified to apply cleanly on SVN trunk. What confuses me a bit are these contradictory statements: (comment #35 from Sven) > After further discussion with Mitch I agreed that having Paste create a new > layer by default is the wrong thing to do. (comment #37 from Sven) > I don't think that "paste as new layer" is a power-user feature. It is what the > newcomer expects to happen on paste and IMO it should become the default, not > some power-user feature hidden in a submenu. Sven what standpoint do you currently have?
I think we should move this discussion to the gimp-developer mailing-list.
After some further discussion on IRC it has been decided that the default behavior that pasting should create a floating selection is the right thing to do and it should remain this way. The core problem is that the management of floating selections is quite awkward, and it is this that should be solved. IMO we can close this bug report if we just add a Edit -> Paste as -> New Layer command since it would then be easy for users to workaround the default behavior if they wish to be able to paste the clipboard as a new layer using a single command. (Because this is not currently possible AFAICS although there might be a way I am not able to figure out.)
There isn't much point in keeping this bug report open. It has been agreed that pasting as a floating selection should continue be the default behavior (although how the floating selection itself is handled can be improved). Closing as INVALID.