Jump to content

The "Show All" and "Unlock All" features work incorrectly.


Recommended Posts

When I try to unhide all hidden layers by clicking the 'Layer → Show All' option, it doesn't work correctly. I have to click the menu item several times for it to perform its function. Demonstration:

5V8acSNogMxkprBU.gif.5e0e64362ece2c3e1cc3a736a276f45a.gif

 

In the following example, I had to select the 'Show All' menu item three times to make it work:

St3dSCiTVrRtIb0S.gif.b23b3c2643f2ad9756610588152e8709.gif

 

Please, fix it asap.

 

Affinity Photo v2.5.5

macOS 12.7.6

Link to comment
Share on other sites

The function performed is partly determined by the layers you have Selected in the Layers panel. If you have layers Selected, it applies only to those layers.

This is mentioned in the Help, but slightly incorrectly, where it says:

Quote

If a hidden layer(s) is selected before Show All is applied, only that layer will be displayed, instead of all layers.

It in fact applies to any layers you may have Selected, and if some of them are Hidden then they are Shown.

If no layers are Selected, everything will be Shown.

You could click outside the workspace with the Move Tool to deselect everything, or use Select > Deselect, before using Layer > Show All.

I think this is just probably a minor error in the Help, but the Serif staff will know for sure.

 

-- Walt
Designer, Photo, and Publisher V1 and V2 at latest retail and beta releases
PC:
    Desktop:  Windows 11 Pro 23H2, 64GB memory, AMD Ryzen 9 5900 12-Core @ 3.00 GHz, NVIDIA GeForce RTX 3090 

    Laptop:  Windows 11 Pro 23H2, 32GB memory, Intel Core i7-10750H @ 2.60GHz, Intel UHD Graphics Comet Lake GT2 and NVIDIA GeForce RTX 3070 Laptop GPU.
    Laptop 2: Windows 11 Pro 24H2,  16GB memory, Snapdragon(R) X Elite - X1E80100 - Qualcomm(R) Oryon(TM) 12 Core CPU 4.01 GHz, Qualcomm(R) Adreno(TM) X1-85 GPU
iPad:  iPad Pro M1, 12.9": iPadOS 18.1, Apple Pencil 2, Magic Keyboard 
Mac:  2023 M2 MacBook Air 15", 16GB memory, macOS Sequoia 15.0.1

Link to comment
Share on other sites

1 hour ago, walt.farrell said:

The function performed is partly determined by the layers you have Selected in the Layers panel. If you have layers Selected, it applies only to those layers.

This is mentioned in the Help, but slightly incorrectly, where it says:

Quote

If a hidden layer(s) is selected before Show All is applied, only that layer will be displayed, instead of all layers.

It in fact applies to any layers you may have Selected, and if some of them are Hidden then they are Shown.

If no layers are Selected, everything will be Shown.

@walt.farrell But why would it work that way? For what purpose? What layers does the feature "Show All" work with in the first place, selected or all existing ones?

The problem with this feature is that sometimes it works as "Show All <Existing Layers>" when no layers have been selected, and sometimes as "Show All <Selected Layers>" when one or several hidden layers have been selected. But why make it complicated to use if you can show (unhide) selected hidden layers with the simple "Show" option ("Layer → Show")?

So, basically, when one or more hidden layers are selected, the options 'Show' and 'Show All' function the same. What for?  🤷‍♂️

Moreover, if one or more regular (unhidden) layers are selected then clicking the "Show All" option just deselects them. Same as "Select → Deselect". 🤦‍♂️  Why? 

Gosh, it's so confusing!

Link to comment
Share on other sites

After some investigation, I found out that the 'Show All' option (Layer → Show All), for some reason, depends on the layer's state (shown/hidden and selected/deselected). It works as follows:

  1. When no layers are selected:
    Shows (unhides) all hidden layers.
  2. When a hidden layer is selected:
    Shows (unhides) the selected hidden layers while leaving the rest hidden layers hidden. Same as 'Layer → Show'.
  3. When a regular (unhidden) layer is selected:
    Deselects the selected regular layers, leaving hidden layers hidden. Same as clicking outside the list of layers in the Layers panel, ⌘ + clicking on the selected layer in the Layers panel, or clicking outside the canvas with the Move (Select) tool in the Document view.

The fact that the function of the "Show All" feature depends on the state of the layers makes it complicated and confusing to use, offering no benefits in return.

Developers, please address this issue and make the feature simpler and more predictable. Its function should not depend on the state of the layer (hidden/shown or selected/deselected), like this:

  1. When no layers are selected:
    Shows (unhides) ALL hidden layers.
  2. When a hidden layer is selected:
    Shows (unhides) ALL hidden layers.
  3. When a regular (unhidden) layer is selected:
    Shows (unhides) ALL hidden layers.
Link to comment
Share on other sites

After further investigation, I found that the 'Unlock All' option ('Layer → Unlock All') works in a similarly strange way. Depending on the layer's state (locked/non-locked and selected/non-selected), it may not perform its primary function:

  1. When no layers are selected:
    Unlocks all locked layers.
  2. When a locked layer is selected:
    Unlocks the locked layer leaving the rest locked layers locked. (Same as "Layer → Unlock")
  3. When a non-locked layer is selected:
    Deselects the selected non-locked layer leaving the locked layers locked. (Same as clicking outside the list of layers in the Layers panel, ⌘ + clicking on the selected layer in the Layers panel, or clicking outside the canvas with the Move (Select) tool in the Document view.)

Developers, please fix this feature as well asap. Ensure that this option does not depend on the layers' state, so it always performs its primary function.

Link to comment
Share on other sites

  • Staff

Hi @Eugen,

The 'Show all' scenario described is something that's been historically logged with the developers, however the feedback we received from the development team is that this is by design due to how the function works on Groups and Parent/Child Layers, see the historical post from Dan C below.

On 8/6/2024 at 3:59 PM, Dan C said:

I have raised a similar issue previously with our team which was closed as 'By Design' - essentially I understand that is depends on your current active selection.

With no active selection, Layer > Show All will enable all currently deactivated layers.

With a hidden layer selected, Layer > Show All will enable for all currently selected, deactivated layers

With a visible layer selected, Layer > Show All will have no effect, but will deselect the visible object - this is why on the second use the tool enables all hidden layers, as you now have no active selection.

The above behaviour is due to how the feature works on a Group or Parent/Child layer.

This behaviour/logic is similarly used in the 'Unlock All' function for the same reasons, but you're welcome to share this as feedback.

Link to comment
Share on other sites

On 9/12/2024 at 6:04 PM, NathanC said:

This behaviour/logic is similarly used in the 'Unlock All' function for the same reasons, but you're welcome to share this as feedback.

@NathanC If so, here is my additional feedback:

If it works 'by design' like that, then I believe these features are poorly designed. The developers went overboard, making the features so complicated and confusing that users like me and @ASUNDER mistook them for a bug. I believe the 'duck principle' applies here: 'If something looks like a bug and feels like a bug, then it's a bug (even if it was intentionally designed that way).'  
I would like to ask the developers to redesign this feature, making it simpler and more intuitive. Here's an alternative way this feature could work:

  • The feature should NOT depend on the state of a selected layer (whether it's hidden or non-hidden)
  • When working inside a group (i.e., a group is selected or a layer inside a group is selected (whether hidden or not)), clicking 'Layer → Show All' would unhide all hidden layers inside that group.  
  • When working outside a group (i.e., a layer is selected (whether hidden or not) or no layers are selected), clicking 'Layer → Show All' would unhide all hidden layers (and groups (excluding hidden layers within a group)).

Personally, until these features are redesigned, I won’t be using them. They’re too complicated and confusing, which led to the misconception that they were bugs.

Link to comment
Share on other sites

Exactly.  Hiding/Showing All or Others should not be dependent on their current state.  If I want them all hidden with one click, that's what I want.
They could copy the existing framework for music production: mute and solo buttons.  They have the same purpose.

There are two possible methods here, that the user could set up their preference.  Return the other objects to their previous state, or don't.
I would like to see a button on the toolbar that can toggle this.

An Alt + click on the target show button could perform its tasks only for that group.  And again, if the global hotkey was pressed, it would disregard whatever other objects are currently shown/hidden.

But I like using tags and the snapshots, and the hotkeys for selecting tags by colour, and the custom queries.  I can't complain while those two things exist.

Windows 10 Home 22H2 64 bit
Affinity Designer 2.5.3 , Photo 2 , Publisher 2
Good computer

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.
Note: Your post will require moderator approval before it will be visible.

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.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.