Jump to content

[UI question] Editing a hidden layer: maybe warn (or even disallow)?


Recommended Posts

 

I'm a new user, and not a graphic designer or power user, and trying out the software for the first time everything seemed fantastic, until I suddenly found that "Erase Selection" would not work, no matter what I tried, with just the one layer shown (so I was definitely editing that layer!)

 

I was about to give up on the software, when I worked it out: in the Layer Selector, only one layer was ticked for displaying, yes, but the pale highlight was on a different layer. Turns out, I was genuinely making all those attempted edits/deletions to a different, invisible layer...

 

I'm sure you all know this and, sure, once you learn this is possible, and learn to be a bit more careful, it's not a problem – but it is perhaps a problem for losing potential new users like me, before they become "users"(!) - to me, testing out the software, this just seemed like some *enormous* bug, or hideous UI: I could not make "Erase Selection" work.

 

Maybe all pro graphic design tools do this, I wouldn't know. But I guess actually it *is* a very strange thing for any software to be doing, to be making changes to an invisible layer, invisibly? When I can't possibly be making any "edits" accurately/intentionally? So I wonder: if the software finds itself doing that, could it maybe display some small warning, along the lines of "the layer you're editing is not currently shown"? (I'm assuming there is some reason why the situation is allowed in the first place?!)

 

PS As I know so little about graphic design or paint.net, this post (my first) could easily be idiotic or inappropriate – apologies in advance, if so.

 

PPS Thanks, it does seem pretty amazing software.

Link to comment
Share on other sites

Been there, did that.

 

It is definitely a UX issue, not specific to new users.

It can cost me some time even if I know that it can happen.

I (as a user) can be so deep in my thoughts about the object of my work so I can miss something about the tool.

 

I would definitely love to have some sanity/safety check and save me some time.

 

Although sometimes it can also happen on a layer that is not hidden by checkbox, just completely overpainted by a higher layer. This one might not have any nice solution.

Link to comment
Share on other sites

There's a setting that's intended to help prevent this. It's called "Auto-select nearest visible layer after hiding a layer."  When enabled, making the active layer invisible automatically deactivates it, and makes a nearby visible layer the active layer.

 

I don't recommend enabling it because (in my experience, at least) it causes more problems than it solves. I still end up modifying the wrong layer, just a different wrong layer, and in a way that's often less obvious. Modifying an invisible layer results in no change, which is a clue that something is wrong. Modifying a visible layer, but not the intended layer, quite often looks like what was expected, but may ruin that layer.

 

It might make sense to warn the user if an attempt is made to modify an invisible layer; though I'm not sure what form such warning could take. I don't recall anything like popup warnings in PDN. Warning seems better than preventing it. It's very occasionally useful to modify an invisible layer, and if it were prevented, there would need to be a warning also, or it would still result in confusion.

 

We've all modified the wrong layer at times (some of us more than others), but I think the only real solution is being careful, and using undo when it happens. I believe I've modified the wrong visible layer quite a bit more often than I've inadvertently modified an invisible layer, and as I mentioned above, that's usually more difficult to detect.

 

 

 

 

 

Link to comment
Share on other sites

I'm not saying this is necessarily the best way to do it, but for the sake of comparison, here's Krita when you try to make a brush stroke when the active layer is not visible.

 

jrYJf6L.png

 

Krita does not allow actions to be performed on an invisible layer.

(September 25th, 2023)  Sorry about any broken images in my posts. I am aware of the issue.

bp-sig.png
My Gallery  |  My Plugin Pack

Layman's Guide to CodeLab

Link to comment
Share on other sites

@toe_head2001
There exists a workaround, set the opacity to zero. Useful at times. I don't see a issue with OP suggestion.

Edited by Reptillian

G'MIC Filter Developer

 

I am away from this forum for undetermined amount of time: If you really need anything related to my PDN plugin or my G'MIC filter within G'MIC plugin, then you can contact me via Paint.NET discord, and mention me.

Link to comment
Share on other sites

I'm guessing there must be reasons why you couldn't just say:

"whenever a Layer becomes Current – overwhelmingly because you click on it in the Layer selector – then it also becomes Visible"
?
(I do, truly, know nothing about graphics software.)

 

(And PS - if you could do the above, then if a person then ticked the Current Layer to Hide it, you'd have to make a nearby, Visible layer 'Current'.)

Edited by nickatslash
to add a tiny detail
Link to comment
Share on other sites

3 hours ago, nickatslash said:

I'm guessing there must be reasons why you couldn't just say:

"whenever a Layer becomes Current – overwhelmingly because you click on it in the Layer selector – then it also becomes Visible"

 

One example, I might need to repeatedly
copy a mask layer to the clipboard.

 

The layer doesn't need to be visible to do this.

 

It would be really annoying to have the layer automatically become

visible every time I made it active so that I could copy it.
 

3 hours ago, nickatslash said:

if a person ticked the Current Layer to Hide it, you'd have to make a nearby, Visible layer 'Current'.)

 

This option is available in the Settings window.

Link to comment
Share on other sites

That's really interesting –

Not being a "graphics person", and having no idea how often you guys "repeatedly copy a mask layer to the clipboard" (say), can I just ask:

If a person clicks on a Layer to make it Current, but it happens that that Layer is currently Hidden, what would the percentage chance be that they want it to become Visible, for whatever they might be about to do next to it / with it?

Link to comment
Share on other sites

1 hour ago, nickatslash said:

If a person clicks on a Layer to make it Current, but it happens that that Layer is currently Hidden, what would the percentage chance be that they want it to become Visible, for whatever they might be about to do next to it / with it?

 

The most common reason I'd make an invisible layer the current layer is the one you mentioned: to copy it to the clipboard. I do that quite often, so I wouldn't want that behavior to change.

 

I don't think it's common for someone to make an invisible layer the active layer, but forget to make it visible. The fact that they don't see a layer they expect to see would normally be a reminder they forgot to do something. The other way around -- making a layer visible but forgetting to make it the active layer -- is, I believe, quite common. However, it isn't uncommon to make a layer visible without intending to make it the active layer. I often temporarily switch off layers when making edits to another layer, then switch them back on to view the change in context. I certainly wouldn't want one of those layers to automatically become active.

 

The problem with most of the ideas for automatically tying activation with visibility is that there are exceptions where they would create confusion. I tend to think it's better to allow the users to make their own mistakes, rather than have PDN make mistakes for them.

 

ADDED: One change that I don't think would result in any significant problems is not allowing invisible layers to be modified, along with a warning if it's attempted. I can't see much reason to modify an invisible layer, and it it were really necessary, the user could temporarily set the opacity to 0, as a workaround, as Reptilian suggested.

Link to comment
Share on other sites

....At the expense of annoying every other user who is familiar with this behavior. A warning here is not the solution. Learning the way paint.net works is.

Link to comment
Share on other sites

I think Photoshop solves this by changing the mouse cursor to have an X, and if you try to click/draw on the layer it pops up an error.

 

But, I'm with @Ego Eram Reputo on this: it's just part of the learning curve. It would require quite a bit of work to change this and there hasn't been many reports of this. It's certainly possible I just don't see it rising to the top of the priority list any time soon.

The Paint.NET Blog: https://blog.getpaint.net/

Donations are always appreciated! https://www.getpaint.net/donate.html

forumSig_bmwE60.jpg

Link to comment
Share on other sites

Thanks. I expect you have way bigger things than this.

 

(To be fair, though, the issue was that non-expert people trying out the app may suddenly find that basic functionality seems to have stopped working, or is too hard to understand - and those people may give up and go try a different app.

So I’m not sure that “learn how paint.net works” is much of a solution, because those frustrated “tryout” people have left already, and are no longer using the app.

And equally, if you're not hearing reports about this, well, reports would be super-rare by definition, as it’s about potential users who give up and go somewhere else, while all those who stay have managed to “learn how paint.net works”.)

 

But anyway, thanks for listening. It’s an amazing app.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...