UI of Dropdown Menus : long list of EnumProperty Items (ColorSpace, Language, RemapUser ID) is partially hidden #72093

Open
opened 3 years ago by marcuspollio · 33 comments

Hi all !
Here is a UI glitch in Dropdown Menus happening with long list of items.

Originally, this report was about the Language select list in the Preferences window but it actually occurs with every long Dropdown Menu lists.
This problem appears every time the Dropdown Menu is bigger than the window it is displayed inside.

System Information
Operating system: Linux-5.3.0-2-amd64-x86_64-with-debian-bullseye-sid 64 Bits
Graphics card: Mesa DRI Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2) Intel Open Source Technology Center 4.5 (Core Profile) Mesa 19.2.4
Display resolution : Full HD 1920x1080px

Blender Version
Broken: version: 2.82 (sub 3), branch: master, commit date: 2019-11-30 17:33, hash: f1ac64921b

Short description of error
Opening the Preferences window (or any small sized Blender window) with Factory Settings defaults and changing the translation language (or choosing any other option in a long Dropdown Menu) displays a "bigger than expected" dialog that is partially hidden by the side of the window in a 1920x1080 pixels screen. The user has then to resize the Preferences window to fit, not a big problem per se but would be better if defaults were better.
That is because the list of supported languages is becoming quite big, specially the "starting" ones.
Blender already has a few big list dialogs (e.g. the Editor Type or the Add Modifier) but those are generally dispayed correctly within the Blender window (almost full-screen).
That is not the case of the Preferences window.

Three possibilities to solve this:

  • reordering the list so it stays into the Preferences window (e.g. "In Progress" below "Complete")
  • allowing the list to go beyond the borders of the Preferences window (do not know if technically feasible)
  • resize a bit the whole Preferences window to fit
  • redesign how Dropdown Menus behave, allowing for easy scrolling and search

Exact steps for others to reproduce the error
see illustrations below
Thanks a lot ! =D

preferences_UI_bug.png

BLNDR_DropdownIssue.jpg

Hi all ! Here is a UI glitch in Dropdown Menus happening with long list of items. Originally, this report was about the Language select list in the Preferences window but it actually occurs with every long Dropdown Menu lists. This problem appears every time the Dropdown Menu is bigger than the window it is displayed inside. **System Information** Operating system: Linux-5.3.0-2-amd64-x86_64-with-debian-bullseye-sid 64 Bits Graphics card: Mesa DRI Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2) Intel Open Source Technology Center 4.5 (Core Profile) Mesa 19.2.4 Display resolution : Full HD 1920x1080px **Blender Version** Broken: version: 2.82 (sub 3), branch: master, commit date: 2019-11-30 17:33, hash: `f1ac64921b` **Short description of error** Opening the Preferences window (or any small sized Blender window) with Factory Settings defaults and changing the translation language (or choosing any other option in a long Dropdown Menu) displays a "bigger than expected" dialog that is partially hidden by the side of the window in a 1920x1080 pixels screen. The user has then to resize the Preferences window to fit, not a big problem per se but would be better if defaults were better. That is because the list of supported languages is becoming quite big, specially the "starting" ones. Blender already has a few big list dialogs (e.g. the Editor Type or the Add Modifier) but those are generally dispayed correctly within the Blender window (almost full-screen). That is not the case of the Preferences window. Three possibilities to solve this: - reordering the list so it stays into the Preferences window (e.g. "In Progress" below "Complete") - allowing the list to go beyond the borders of the Preferences window (do not know if technically feasible) - resize a bit the whole Preferences window to fit - redesign how Dropdown Menus behave, allowing for easy scrolling and search **Exact steps for others to reproduce the error** see illustrations below Thanks a lot ! =D ![preferences_UI_bug.png](https://archive.blender.org/developer/F8183531/preferences_UI_bug.png) ![BLNDR_DropdownIssue.jpg](https://archive.blender.org/developer/F8723431/BLNDR_DropdownIssue.jpg)
Poster

Added subscriber: @marcuspollio

Added subscriber: @marcuspollio
Collaborator

#94367 was marked as duplicate of this issue

#94367 was marked as duplicate of this issue
Collaborator

#83401 was marked as duplicate of this issue

#83401 was marked as duplicate of this issue
Collaborator

#79668 was marked as duplicate of this issue

#79668 was marked as duplicate of this issue
Collaborator

#73510 was marked as duplicate of this issue

#73510 was marked as duplicate of this issue
Collaborator

#64224 was marked as duplicate of this issue

#64224 was marked as duplicate of this issue
Collaborator

#62710 was marked as duplicate of this issue

#62710 was marked as duplicate of this issue
Collaborator

#52503 was marked as duplicate of this issue

#52503 was marked as duplicate of this issue
Collaborator

#72117 was marked as duplicate of this issue

#72117 was marked as duplicate of this issue
Poster

Just saw now a partially related report : #62710

Just saw now a partially related report : #62710
Harley commented 3 years ago
Collaborator

Added subscriber: @Harley

Added subscriber: @Harley
Harley commented 3 years ago
Collaborator

There is a similar complaint here: https://developer.blender.org/T72117

I'm not sure this is solved well by just adjusting the size of the Properties window. At 1X scale it needs to be at least about 960 wide to fit the width it. But the height still remains an issue because a list with columns is confusing when it has to vertically scroll. You need 700 high to see it all since it has to open downwards to show the entire thing.

I personally think we should be turning these into single column when they get close to the width of their window. At that point they are longer, scroll nicely, and make more sense:

LanguagesList.png

NarrowEnumLists.png

There is a similar complaint here: https://developer.blender.org/T72117 I'm not sure this is solved well by just adjusting the size of the Properties window. At 1X scale it needs to be at least about 960 wide to fit the width it. But the height still remains an issue because a list with columns is confusing when it has to vertically scroll. You need 700 high to see it all since it has to open downwards to show the entire thing. I personally think we should be turning these into single column when they get close to the width of their window. At that point they are longer, scroll nicely, and make more sense: ![LanguagesList.png](https://archive.blender.org/developer/F8185254/LanguagesList.png) ![NarrowEnumLists.png](https://archive.blender.org/developer/F8185256/NarrowEnumLists.png)
Collaborator

Added subscriber: @knekke

Added subscriber: @knekke
marcuspollio changed title from Small UI glitch in Preferences : Language Translation list is partially hidden to UI glitch in Dropdown Menu : long list of EnumProperty Items is partially hidden 3 years ago
Harley commented 3 years ago
Collaborator

Have a patch that collapses this list to a single column if there is enough available space. It has to base this on an estimation of what the menu width would be, which adds complication. That calculation could be made more accurate, but that adds yet more complexity, etc. So not sure if this is the proper road, but worth testing:

https://developer.blender.org/D6362

Have a patch that collapses this list to a single column if there is enough available space. It has to base this on an estimation of what the menu width would be, which adds complication. That calculation could be made more accurate, but that adds yet more complexity, etc. So not sure if this is the proper road, but worth testing: https://developer.blender.org/D6362
Collaborator

Added subscribers: @TodorNikolov, @mano-wii, @mont29

Added subscribers: @TodorNikolov, @mano-wii, @mont29
iss commented 3 years ago
Collaborator

Added subscribers: @Nart, @StephenSwaney

Added subscribers: @Nart, @StephenSwaney
iss commented 3 years ago
Collaborator

Added subscribers: @VincentGires, @Gunterr, @bbworld

Added subscribers: @VincentGires, @Gunterr, @bbworld
brecht commented 3 years ago
Owner

Added subscriber: @shotalot

Added subscriber: @shotalot
Poster

As Campbell Barton mentionned on the patch D6362, the lists of enums could be more like the ones of IDs, with are searchable and scrollable when exceeding a certain length. It would resolve most described problems of this task.

Have a great day !

As Campbell Barton mentionned on the patch [D6362](https://archive.blender.org/developer/D6362), the lists of enums could be more like the ones of IDs, with are searchable and scrollable when exceeding a certain length. It would resolve most described problems of this task. Have a great day !

Added subscriber: @YegorSmirnov

Added subscriber: @YegorSmirnov

Added subscriber: @B4adle7

Added subscriber: @B4adle7

Maybe update the ui dropdown widget to be only vertical list,
having default max_count of something like "10",
that can be changed by the tool maker, with a vertical scroll bar for the list.

This now has become a problem making use of the ACES colorspace. The only way to set the needed colorspace is via python command.
Did try using the expected method of starting to type in the selection desired. It does give the first one.
But then there is no way of cycling through list items.
Common methods for drop down widgets is either typing the item you need, or clicking the first letter of the item list, and it cycles through.

The QT UI system might be a good reference.

Here is the specific drop down widget issue this bug/feature/design issue is for.
With ACES Colorspace setup, it is impossible to select the needed input colorspaces from the UI/widget.
The most used input color spaces are "Utility - Raw" "Utility - sRGB - Texture" and "Utility - Linear - sRGB"
Drop down widget does not allow this unless possibly you have 4k monitor or 2 or more monitors to spread the application across to allow the widget to contain the list.
BLNDR_DropdownIssue.jpg

Maybe update the ui dropdown widget to be only vertical list, having default max_count of something like "10", that can be changed by the tool maker, with a vertical scroll bar for the list. This now has become a problem making use of the ACES colorspace. The only way to set the needed colorspace is via python command. Did try using the expected method of starting to type in the selection desired. It does give the first one. But then there is no way of cycling through list items. Common methods for drop down widgets is either typing the item you need, or clicking the first letter of the item list, and it cycles through. The QT UI system might be a good reference. Here is the specific drop down widget issue this bug/feature/design issue is for. With ACES Colorspace setup, it is impossible to select the needed input colorspaces from the UI/widget. The most used input color spaces are "Utility - Raw" "Utility - sRGB - Texture" and "Utility - Linear - sRGB" Drop down widget does not allow this unless possibly you have 4k monitor or 2 or more monitors to spread the application across to allow the widget to contain the list. ![BLNDR_DropdownIssue.jpg](https://archive.blender.org/developer/F8723431/BLNDR_DropdownIssue.jpg)

Poking. Auto search on typing on every dropdown would be very handy and intuitive as well as a scrollbar.

Poking. Auto search on typing on every dropdown would be very handy and intuitive as well as a scrollbar.
Collaborator

Added subscribers: @MAREYUS, @lichtwerk

Added subscribers: @MAREYUS, @lichtwerk
marcuspollio changed title from UI glitch in Dropdown Menu : long list of EnumProperty Items is partially hidden to UI of Dropdown Menus : long list of EnumProperty Items is partially hidden 3 years ago
EAW commented 2 years ago

Added subscriber: @PaulChambers

Added subscriber: @PaulChambers
ssh4 commented 1 year ago

Added subscriber: @ssh4

Added subscriber: @ssh4
ssh4 commented 1 year ago

Poking.
Drop down totally unusable on big lists for example ACES acio 1.2 default profiles{F10407923}

Poking. Drop down totally unusable on big lists for example ACES acio 1.2 default profiles{[F10407923](https://archive.blender.org/developer/F10407923/image.png)}
Asger commented 1 year ago

Added subscriber: @Asger

Added subscriber: @Asger
Asger commented 1 year ago

Poking.
This is a huge issue when working in ACES.

Poking. This is a huge issue when working in ACES.
lichtwerk changed title from UI of Dropdown Menus : long list of EnumProperty Items is partially hidden to UI of Dropdown Menus : long list of EnumProperty Items (ColorSpace, Language, RemapUser ID) is partially hidden 1 year ago
Collaborator

Added subscribers: @XenWildman, @jenkm, @NavidZambi0

Added subscribers: @XenWildman, @jenkm, @NavidZambi0

Added subscriber: @basvanbergen

Added subscriber: @basvanbergen

Added subscriber: @DanielBystedt

Added subscriber: @DanielBystedt

I agree that this is an issue when working with ACES. A pipeline colleague found this thread. I'm just going to poke this thread and add an image (from our wiki) of all the enum options on the screen to illustrate the issue

selecting correct color space.png

I agree that this is an issue when working with ACES. A pipeline colleague found this thread. I'm just going to poke this thread and add an image (from our wiki) of all the enum options on the screen to illustrate the issue ![selecting correct color space.png](https://archive.blender.org/developer/F13963689/selecting_correct_color_space.png)
lichtwerk removed the
legacy module/User Interface
label 3 hours ago
lichtwerk removed the
Interest/User Interface
label 3 hours ago
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/Collada
Interest/Compositing
Interest/Core
Interest/Cycles
Interest/Dependency Graph
Interest/Development Management
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/Modeling
Interest/Modifiers
Interest/Motion Tracking
Interest/Nodes & Physics
Interest/Overrides
Interest/Performance
Interest/Performance
Interest/Physics
Interest/Pipeline, Assets & I/O
Interest/Platforms, Builds, Tests & Devices
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
legacy module/Animation & Rigging
legacy module/Core
legacy module/Development Management
legacy module/Eevee & Viewport
legacy module/Grease Pencil
legacy module/Modeling
legacy module/Nodes & Physics
legacy module/Pipeline, Assets & IO
legacy module/Platforms, Builds, Tests & Devices
legacy module/Python API
legacy module/Rendering & Cycles
legacy module/Sculpt, Paint & Texture
legacy module/Triaging
legacy module/User Interface
legacy module/VFX & Video
legacy project/1.0.0-beta.2
legacy project/Asset Browser (Archived)
legacy project/BF Blender: 2.8
legacy project/BF Blender: After Release
legacy project/BF Blender: Next
legacy project/BF Blender: Regressions
legacy project/BF Blender: Unconfirmed
legacy project/Blender 2.70
legacy project/Code Quest
legacy project/Datablocks and Libraries
legacy project/Eevee
legacy project/Game Animation
legacy project/Game Audio
legacy project/Game Data Conversion
legacy project/Game Engine
legacy project/Game Logic
legacy project/Game Physics
legacy project/Game Python
legacy project/Game Rendering
legacy project/Game UI
legacy project/GPU / Viewport
legacy project/GSoC
legacy project/Infrastructure: Websites
legacy project/LibOverrides - Usability and UX
legacy project/Milestone 1: Basic, Local Asset Browser
legacy project/Nodes
legacy project/OpenGL Error
legacy project/Papercut
legacy project/Pose Library Basics
legacy project/Retrospective
legacy project/Tracker Curfew
legacy project/Wintab High Frequency
Meta/Good First Issue
Meta/Papercut
migration/requires-manual-verification
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 & Devices
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 Information 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
14 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#72093
Loading…
There is no content yet.