Issues with the add Workspace /+\ menu #66314

Closed
opened 2019-07-01 21:15:54 +02:00 by Gavin Scott · 17 comments

System Information
Operating system: Windows-10-10.0.17134 64 Bits
Graphics card: GeForce GTX 1060/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 419.17

Blender Version
Broken: version: 2.80 (sub 74), branch: master (modified), commit date: 2019-07-01 14:26, hash: a6fe4d112f

Short description of error
The tabbed Workspace UI is one of the most substantial and immediately noticeable changes when moving from 2.79 to 2.80, and the tabs and the associated /+\ add Workspace button/menu/tab are likely to be one of the first things a new user pokes at when they try 2.80.

In addition to the crash issue described in #65899 there remain a number of other substantial issues that provide a very poor user experience. these might result from the same underlying cause, I'm not sure (but see below).

Each of the following assumes a default config and fresh Blender instance. Some of them may crash intermittently or reproducibly (see #65899).

  1. When certain Workspace tabs are active, the Add Workspace menu does not work at all. Switch to the Modeling workspace and then click the /+\ and select any Workspace to add. All of them fail to do anything and in fact, all the menu options appear "disabled" even for the workspaces that don't have a current instance of that type.

  2. When adding a new Layout workspace from the default Layout workspace, the results are nonsensical. From the default state with the Layout workspace active, select /+\ General->Layout. If it doesn't crash, what happens is that a new tab is created on the right end of the workspace tabs as expected, but that new tab now points to the contents of the OLD Layout tab and retains the focus, while the old leftmost tab now has the name and contents of the new Layout workspace instance. It SHOULD have left the old Layout where it was and put the new one (Layout.001) in the new tab and it should get the focus / become the active Workspace. This problem seems to occur or not in different cases of what tab you start in and what workspace you're trying to create.

It's possible that the intended design of this is that the "disabled" options in the /+\ menu are really supposed to be unselectable, and that's the problem that's leading to some or all of this. So one solution that might work well would be to not show the options in the /+\ menu at all if there's already a Workspace of the type in existence. This means if you have a Layout tab and you want another Layout workspace, then you need to right-click the existing one and Duplicate it. It also cleans up the disturbingly redundant /+\ menu tree by only showing things that don't yet exist. (but then there might be whole categories that contain no menu items if instances of all of those Workspace types exist).

A better version then might be to change /+\ pseudo-tab into "More..." and have it be a simple single level menu of all the predefined Workspace types that don't currently have an instance. And remove the "Duplicate Current" option from /+\ which is redundant as that option is in all existing workspace tabs right-click menus.

The last thing that would be needed would be a "Reset Layout" right-click menu option on each tab so you can turn that tab back into the default layout for its original type (this just needs to destroy and recreate the workspace so it ought to be simple). Now you can get one of each workspace type by picking it from the More... menu (if there isn't already one), Duplicate any existing one through right-click to get a copy of it, and Reset Layout if you want to go back to the original state. Now we have almost achieved Workpsace Tab Nirvana(tm).

I know it's awfully late for 2.80, but the implementation as it is is broken and will be very confusing for new 2.80 users. I think even the /+\ to "More..." change would be something that would be worthwhile as a last-minute UI change and ought to be obvious to users. Edit: to avoid invalidating literally every UI screenshot, I'd be OK with leaving the appearance of /+\ alone and just changing its contents and saving the More... rename for 2.81 say.

I want to thank @Harley for his contributions to the above fix suggestions.

**System Information** Operating system: Windows-10-10.0.17134 64 Bits Graphics card: GeForce GTX 1060/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 419.17 **Blender Version** Broken: version: 2.80 (sub 74), branch: master (modified), commit date: 2019-07-01 14:26, hash: `a6fe4d112f` **Short description of error** The tabbed Workspace UI is one of the most substantial and immediately noticeable changes when moving from 2.79 to 2.80, and the tabs and the associated /+\ add Workspace button/menu/tab are likely to be one of the first things a new user pokes at when they try 2.80. In addition to the crash issue described in #65899 there remain a number of other substantial issues that provide a **very poor user experience**. these might result from the same underlying cause, I'm not sure (but see below). Each of the following assumes a default config and fresh Blender instance. Some of them may crash intermittently or reproducibly (see #65899). 1. When certain Workspace tabs are active, the Add Workspace menu does not work at all. Switch to the Modeling workspace and then click the /+\ and select any Workspace to add. All of them fail to do anything and in fact, all the menu options appear "disabled" even for the workspaces that don't have a current instance of that type. 2. When adding a new Layout workspace from the default Layout workspace, the results are nonsensical. From the default state with the Layout workspace active, select /+\ General->Layout. If it doesn't crash, what happens is that a new tab is created on the right end of the workspace tabs as expected, but that new tab now points to the contents of the OLD Layout tab and retains the focus, while the old leftmost tab now has the name and contents of the new Layout workspace instance. It SHOULD have left the old Layout where it was and put the new one (Layout.001) in the new tab and it should get the focus / become the active Workspace. This problem seems to occur or not in different cases of what tab you start in and what workspace you're trying to create. It's possible that the intended design of this is that the "disabled" options in the /+\ menu are really supposed to be unselectable, and that's the problem that's leading to some or all of this. So one solution that might work well would be to not show the options in the /+\ menu at all if there's already a Workspace of the type in existence. This means if you have a Layout tab and you want another Layout workspace, then you need to right-click the existing one and Duplicate it. It also cleans up the disturbingly redundant /+\ menu tree by only showing things that don't yet exist. (but then there might be whole categories that contain no menu items if instances of all of those Workspace types exist). A better version then might be to change /+\ pseudo-tab into "More..." and have it be a simple single level menu of all the predefined Workspace types that don't currently have an instance. And remove the "Duplicate Current" option from /+\ which is redundant as that option is in all existing workspace tabs right-click menus. The last thing that would be needed would be a "Reset Layout" right-click menu option on each tab so you can turn that tab back into the default layout for its original type (this just needs to destroy and recreate the workspace so it ought to be simple). Now you can get one of each workspace type by picking it from the More... menu (if there isn't already one), Duplicate any existing one through right-click to get a copy of it, and Reset Layout if you want to go back to the original state. Now we have almost achieved Workpsace Tab Nirvana(tm). I know it's awfully late for 2.80, but the implementation as it is is broken and will be very confusing for new 2.80 users. I think even the /+\ to "More..." change would be something that would be worthwhile as a last-minute UI change and ought to be obvious to users. Edit: to avoid invalidating literally every UI screenshot, I'd be OK with leaving the appearance of /+\ alone and just changing its contents and saving the More... rename for 2.81 say. I want to thank @Harley for his contributions to the above fix suggestions.
Author

Added subscribers: @Harley, @GavinScott

Added subscribers: @Harley, @GavinScott
Author

Added subscriber: @WilliamReynish

Added subscriber: @WilliamReynish
Author

Hi Bill, I hope you don't mind if I tag you on this one for your thoughts.

Hi Bill, I hope you don't mind if I tag you on this one for your thoughts.

Added subscriber: @brecht

Added subscriber: @brecht

Currently you can only add workspaces that aren't already loaded.

@brecht Seems like there is some wonky behavior in this area

Currently you can only add workspaces that aren't already loaded. @brecht Seems like there is some wonky behavior in this area
Author

Ok, then most of the problems are that that's just broken (Edit: apart from issue #1). I've seen other places recently where "disabled" (dimmed) menu selections still fire their associated actions when you pick them. Not sure if there's something fundamental there that's not working.

I still stand by the other potential improvements to the way things work. If you simply disable creating a new Layout if there's already a Layout in existence, then if you've customized your original one, there would be no way to get a new default Layout because you can only duplicate the existing customized one.

Ok, then most of the problems are that that's just broken (Edit: apart from issue #1). I've seen other places recently where "disabled" (dimmed) menu selections still fire their associated actions when you pick them. Not sure if there's something fundamental there that's not working. I still stand by the other potential improvements to the way things work. If you simply disable creating a new Layout if there's already a Layout in existence, then if you've customized your original one, there would be no way to get a new default Layout because you can only duplicate the existing customized one.

Ín Blender we can set items both as active/inactive and also enabled/disabled. Disabled items cannot be interacted with, whereas inactive items you can.

Ín Blender we can set items both as active/inactive and also enabled/disabled. Disabled items cannot be interacted with, whereas inactive items you can.
Author

Just another weirdness: Open a Preferences editor window then go back to the main window and create a new Layout workspace (I know you're not supposed to be able to) then right click the active Layout tab (on the right end of the tabs) and choose delete. Now bring up the Preferences editor window that's been sitting in the background and it will have turned into a (small) duplicate of the Scripting Workspace!

Just another weirdness: Open a Preferences editor window then go back to the main window and create a new Layout workspace (I know you're not supposed to be able to) then right click the active Layout tab (on the right end of the tabs) and choose delete. Now bring up the Preferences editor window that's been sitting in the background and it will have turned into a (small) duplicate of the Scripting Workspace!

Added subscriber: @rocketman

Added subscriber: @rocketman

I don't see any reason why workspaces in the "add workspace" menu should be disabled or inactive at all. The "disabling" only takes effect if a workspace of the same name already exists, but that is pointless. It is rather like disabling "Add Cube" if an object named "Cube" already exists in the scene.

I don't see any reason why workspaces in the "add workspace" menu should be disabled or inactive at all. The "disabling" only takes effect if a workspace of the *same name* already exists, but that is pointless. It is rather like disabling "Add Cube" if an object named "Cube" already exists in the scene.
Member

@WilliamReynish : Ín Blender we can set items both as active/inactive and also enabled/disabled

But it is difficult to communicate any difference between "inactive" and "disabled" items in a simple dropdown menu.

To my eyes, there is lots going wrong in those workspace tabs.

It starts off with the very question of "how many workspaces do we have?" The "Plus" at the end says it is to "Add Workspace" so this would imply that we have 10 of them but can add more. How many more? The items on the "Add" menu have submenus with so many duplicates that it is hard to tell. There are 5 more. So we have 10 workspaces but add 5 more.

The items on the "Add" menu are broken up into arbitrary sections with duplications and showing items in alpha order, while the main tabs are in some arbitrary order.

Most of the items on the "more" menu look greyed out and disabled, yet I can click on any of them and I get a new workspace. The new one is added to the end of the list. But if it was one that was already opened then it gives me a new one with that name but renames the existing one. yikes.

Even the names seem a bit funky. If we are "shading", "sculpting" and "compositing", then shouldn't we be "animating" and "texture painting"?

How I personally think it should all work:

The concept should be that we have 15 workspaces but are showing just a subset. So start off with less tabs, perhaps just 4. The "Add" button becomes "more" for the overflow, showing just the 11 that are not visible. That "more" button could be a vertical or horizontal ellipsis. There is no need for submenus, nor any items that are not workspaces.

If the main window is very wide, then show more active tabs, but if you shrink the window then show less tabs and put more on the overflow menu.

If you select an item from the overflow menu it is added to the list of active tabs. So you are now showing 5 with just 10 on the overflow. That new item is added to the end of the list. In essence you are just reordering that item, moving it up from overflow to the active row if there is room. So to be clear, selecting from "more" would not be adding a new thing, but would be selecting from our existing workspaces. What is now "Add" is no longer adding, just a way of selecting a workspace that is not on the top row and putting it there.

If you don't like the order then just drag them to suit.

Click on any active tab to get a context menu with "close", "first", "last", "duplicate", and "reset"

> @WilliamReynish : Ín Blender we can set items both as active/inactive and also enabled/disabled But it is difficult to communicate any difference between "inactive" and "disabled" items in a simple dropdown menu. To my eyes, there is lots going wrong in those workspace tabs. It starts off with the very question of "how many workspaces do we have?" The "Plus" at the end says it is to "Add Workspace" so this would imply that we have 10 of them but can add more. How many more? The items on the "Add" menu have submenus with so many duplicates that it is hard to tell. There are 5 more. So we have 10 workspaces but add 5 more. The items on the "Add" menu are broken up into arbitrary sections with duplications and showing items in alpha order, while the main tabs are in some arbitrary order. Most of the items on the "more" menu look greyed out and disabled, yet I can click on any of them and I get a new workspace. The new one is added to the end of the list. But if it was one that was already opened then it gives me a new one with that name **but renames the existing one**. yikes. Even the names seem a bit funky. If we are "shading", "sculpting" and "compositing", then shouldn't we be "animat**ing**" and "texture paint**ing**"? **How I personally think it should all work**: The concept should be that we have 15 workspaces but are showing just a subset. So start off with less tabs, perhaps just 4. The "Add" button becomes "more" for the overflow, showing just the 11 that are not visible. That "more" button could be a vertical or horizontal ellipsis. There is no need for submenus, nor any items that are not workspaces. If the main window is very wide, then show more active tabs, but if you shrink the window then show less tabs and put more on the overflow menu. If you select an item from the overflow menu it is added to the list of active tabs. So you are now showing 5 with just 10 on the overflow. That new item is added to the end of the list. In essence you are just reordering that item, moving it up from overflow to the active row if there is room. So to be clear, selecting from "more" would not be adding a new thing, but would be selecting from our existing workspaces. What is now "Add" is no longer adding, just a way of selecting a workspace that is not on the top row and putting it there. If you don't like the order then just drag them to suit. Click on any active tab to get a context menu with "close", "first", "last", "duplicate", and "reset"
Member

A quick mockup...

WorkspacesMore.png

A quick mockup... ![WorkspacesMore.png](https://archive.blender.org/developer/F7559508/WorkspacesMore.png)

The above solution aims to fix a small design flaw with an entire UI overhaul. With respect, I would like to suggest a simple fix instead:

  • Do not disable/inactivate workspaces in the "Add Workspace" menu (again, this is like disabling "Add Cube" if there is already an object named "Cube")
  • If a workspace is appended from the menu and one of the same name already exists, name it "Workspace.001" and put it at the end of the tab bar like anything else
The above solution aims to fix a small design flaw with an entire UI overhaul. With respect, I would like to suggest a simple fix instead: - Do not disable/inactivate workspaces in the "Add Workspace" menu (again, this is like disabling "Add Cube" if there is already an object named "Cube") - If a workspace is appended from the menu and one of the same name already exists, name it "Workspace.001" and put it at the end of the tab bar like anything else

Added subscriber: @ZedDB

Added subscriber: @ZedDB
Brecht Van Lommel was assigned by Sebastian Parborg 2019-07-03 17:15:53 +02:00

@brecht any input?

@brecht any input?

This issue was referenced by 0a3e73a91f

This issue was referenced by 0a3e73a91fb06ca340e4de70a3ddd1ac037e9e33

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
7 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#66314
No description provided.