Page MenuHome

Blender development todo list -- User Interface
Confirmed, NormalPublicTO DO


NOTE: this is a direct dump of (without cherrypicking the [still] valid items)

General 2.5 targets

  • Support in operators for 'menu names', remove all custom names in UI scripts.
  • Selecting Fonts and "Styles" for drawing UI (font sizes for panel headers etc) has to be implemented still

General todo items

  • Consistent method for generating/appending/reordering/removing customizable lists of tools (tool shelf, custom menus, etc). If this can't be done quickly, then remove customization options for tool shelf and leave for a later release.
  • Editing multiple datablocks at once.
  • Saving thumbnails currently saves the 3D view, which isn't useful for blend files primarily using the sequencer: See T34112
  • Reduce memory usage of font caches for utf8 fonts (T34627)
  • Search function: Unicode is case sensitive when it shouldn't be (T43221)
  • Support font rendering using sub-pixel bitmaps. Should fix jagged drawing of some fonts without anti-aliasing enabled (T53041).

Properties Editor

  • Undo looses buttons stored path (T40046)
  • Default property units is not always what users expect it to be T40312

File Path handling

  • Implement generic system to handle cross platform paths, relative paths, network drives, shortcuts, stream input files, etc.
  • Path editing and commands in Blender now still leave 'trails' (old strings readable). (T35712)

Issues per category

Mouse Support

  • X11 Isn't using true grabbing since it can lock the OS, see T39144
  • Continuous grab doesn't work when the Blender window goes outside of the screen, see T50005

Tablet Support

  • Fix conflicts with tablets in absolute mode and Continuous Grab enabled (i.e. by ignoring Continuous grab if events come from tablet), see T43106

NDOF / 3D Mouse

  • Note: default usage keeps view pivot the same, so you can use it for modeling. Options for panning or free fly mode are with modifier keys. You can set own preferences via the User Preferences keymap editor.
  • The Space-Navigator software on windows seems to be causing problems T42694

Keymap Editing

  • Check for key conflicts. (operator wm.keyconfig_test already does that but only prints result to console due to high number of false positives)
  • Check for key conflicts when assigning a key, see T35588
  • Allow Mouse Events to work with Custom Modifier Key T32641, T34822
  • Keymap conversion is not always correct across Blender versions T44115
  • Blender hotkey priority is defined by order but hotkey editor does not allow for order editing T53710

File Browser

  • Create button types for File Browser buttons (mostly hardcoded, atm)

Blender Window Manager

  • <none>


  • Resolve the case when the mouse isn't able to select the last used item in a menu see: T32542
  • Some menus are too wide to draw reliably for narrow windows. T34500
  • Add assign shortcuts option to Menus. T51095

Search menu

  • Search (space) doesn't show hotkeys for operators (like Mark Seam) that in a collection, like CTRL+E. Unsure what best solution would be, but definitely worth investigating.
  • ID search menu has got fixed width which isn't convenient to choosing long datablock names, see T33294


  • Pressing non-modifier key before releasing previous non-modifier button is treating as second key with modifier of first key, which is confusing in some cases (see T29586)
  • Need to implement two queues of events for dominant and secondary operands so it'll be a general way to apply some tool and navigate through viewspace.
  • ESC presses to stop render or simulations now don't use events, but set the "G.is_break" always before events get handled. That's to ensure an ESC is working always, but it conflicts with pressing ESC in buttons or FileWindow etc.
  • Implementation of mouse "Press" versus "Tweak" versus "Click" and "Release" event is very fuzzy, and seems to be not much in control for KeyMaps. Main reason is Select-activate operator, that marks an event "Handled" as well as "Pass through". See T34206, T35859
  • Holding buttons generates key-repeat events, making it impossible to have actions execute while a key is held. T40537
  • Modifiers keys should probably be reworked, currently in some cases (like <alt-tab>-switching between windows) wrong modifiers states can remain in wmWindow, this should be managed by Ghost (see T40155).
  • Seems some operators doesn't check where event came from when dealing with different zoom methods T37372
  • Holding a modifier key before activating a window, Blender doesn't update that the modifier is being pressed. T40317


  • UI to create/record/edit them.
  • Python can't set with properties for nested operators yet when calling a macro.
  • Macro options can't be edited in the toolbar T35079

Toolbars, Property views

  • Save positions in file, implement useful memory here as well (per mode, object type?).
  • Set properties, icons, text for items.
  • Different shapes, horizontal, .. ?

Regions, Areas, Screens

  • Scrolling on pop-up regions doesn't behave properly (T28199)
  • Popup dialog box buttons for operator can only be pressed once (T35154)
  • Opening a temporary fullscreen editor from an existing one of the same type shouldn't override settings of the existing one (T70583)

Undo, Redo and Operator Context

  • Global undo doesn't work with editing text. (also mentioned in Editors category) (T24543)
  • Redo in editmode fails for ops that are not in editmode, like 'New Image' texture and "Edit texture space" (future todo)
  • Redo for operators that depend on mouse position doesn't work.
  • Redoing operators should give reports in some cases, see (T21060).
  • Patch for more elaborate operator context poll (T21888) (needs review still). Operator context and rna context are still problematic...
  • Run operator, change a property somewhere and then redo operator reverts the property ((T28482), T31231)
  • Redo operator behaves wrong when run from edit mode and operator changes data not related on topology and geometry (see (T30968))
  • It's not currently possible to create a key logging python script that captures all events, there is no way for the operator to always receive events or get the context as the mouse moves ((T28969))
  • Memory usage of global undo might be improved in cases like removing CustomData layers (T31377)
  • Undo 'Create Transform Orientation' leaves a blank menu (screen data becomes out of sync with the scene) (T42468)
  • Undo/Redo 'Create Transform Orientation' does not handle Use After Creation option well (similar issue as above) (T46011).
  • Undo 'Bake' currently fails (T45788)

Undo stack

  • Redesign undo stack to get rid of problems caused by global and local stacks. Some of known limitations:
    • Text editor vs global undo conflict, same for texture painting
    • Unable to undo changes made to modifiers stack when user is in sculpt/edit mode
    • Armature editmode undo doesn't restore pose constraints.
    • Changing frame number followed by operator redo resets frame back (see (T28871)).
    • Undo during painting doesn't restore expected object data, see T38436
  • Undo stack isn't aware about memory usage which easily leads to all memory used and crash ((T30730)).
  • Mixing object modes confuses hook remapping on undo after toggling edit mode T41226



  • Better updates between windows when i.e. playing animation: (T21412).
  • Closing a render window invalidates material preview render area: (T23848) (temp fix in rev 32040)

Interactive Updates (slowness)

  • Immediate update when dragging button can be slow,<br>can give problems when setting very high number for e.g. subsurf, can lock up. see (T24137).

User Preferences

  • Theme colors need to be exposed in less messing way, so it'll be clear which exactly UI element is controlled by this color (see (T26947))
  • Resetting defaults doesn't update presets menu T34454
  • Some options can't be easily decoupled between user_pref.blend and startup.blend T48112

UI Widgets

  • Todo
    • Port operator names from UI scrips to operators
    • Color coding in buttons only works when animated property is in "own" ID data (for example, a material driver is on object level, and doesn't color button purple)
    • Tab-key cycle to new button should skip option buttons: T23666
    • Make tooltips for properties show shortcuts, in case an operator exists that changes this property
    • Remove time for tooltip to appear after the the user has waited for the first one. Reset this timer when the user moves away from viewing tooltips.
    • Couple usages of UILayout.template_preview will display only the first, see T28822.
    • Some interface elements are getting misaligned when toggling some property, see T32188
    • prop_search() buttons cant be created by the auto-ui, and currently need to be done manually in a draw function. see, T35154
    • Add back alt+scroll for non-RNA pulldown menus, to cycle into values. Not so easy to do, probably can only be handled with a dedicated callback? T39374
    • Alignment tips from the scripts not always gives expected results T28391 Dimensinal UI items (like e.g. normal size or object's position) do not take into account scene's scale setting, which makes them pretty much unusable with big or small scales (e.g. 0.001 in metric, making millimeter as default unit, values change way to quickly, T41308).
    • Dimensions buttons dont support multi-drag T38587
    • ColorPicker/menu closing behaviour when opened over other area T22476
    • ColorPicker HSV values currently ignores color pipeline T41287
  • Proposals
    • The maximum (100%) value for scroll bars is usually too small in 2d views such as Node Editor etc. (you can never zoom out far enough using the handles)
    • Make the Import and Export commands single operators. The import/export file format can then be chosen from a menu inside the file browser. [ Mockup]
    • RNA Path Builder widget/mini-outliner for setting up Drivers and Keying Sets
    • List Template popup for quick overview/search of many items. [ Mockup]
    • jendrzych made a good proposal on how to improve the listview for materials/textures [ Mockup.]
    • Implement new clean modifier list [ Mockup]
    • Drag support for reordering textures, modifiers and constraints.
    • Tweak console list. It is very hard to distill the essential information here.
    • Make Info window stick to the top or bottom of the screen and remove ability to drag it. This causes some issues with the menus disappearing and is no longer needed.
    • Animate sub-regions in and out
    • Scroll bar wdiges could hide if not needed
    • Disable most entries in the File menu when FileBrowser is open (Clicking open while a filebrowser for opening files already exists opens a new one in the info area)
    • Limit Operator vs Tools resizing so there isn't a way to lose Operator area.
    • Gamma correction options for Histogram and RGB curves widget
    • Check on negative colours interaction with HSVCIRCLE widgets
    • Text selection background for sliders is using the same color as for slide bar (T30881)


  • Remember the chosen preset for things like subsurface scattering and cloth. Would also be good to change the shown preset name to "custom" when a value defined by the presets is changed. See T23597.
  • Preset names are always CamelCase T31295.

Archived Design Tasks

This list is for for user interface tasks which have no conclusion.

No resolution or activity in over 3 months,
archiving, listed in the wiki.
Can re-open when we have time to handle this one.

  • Update brush icons T37960.
  • Making the mode selection dropdown list in the Editor headers consistent across all editors that use them T38254.
  • Presets & ID browser. Move + and x into the menu T38082.
  • Sequencer - Display timestamps using standard timecodes instead of a custom method T38242.
  • Use brightness to communicate information depth T38036.
  • Improve visual distinction between Editors T38038.
  • Improve visual connection between properties screens and areas T37702.
  • Tools with no settings pollute the 'redo' panel T37443.
  • Transform tools redo panels show options that don’t make sense. T37446.
  • 'Redo' panel: Some redo settings don't make sense to edit T37439.

Related Objects

ConfirmedTO DONone
ConfirmedTO DONone

Event Timeline

Philipp Oeser (lichtwerk) lowered the priority of this task from 90 to Normal.Jun 7 2018, 12:52 PM
Philipp Oeser (lichtwerk) created this task.

Went through the list to check which items are still valid. Quite some were addressed already. Marked them as done, and left a quick comment explaining why in the linked tasks (in non-obvious cases at least).