Page MenuHome

Remove confirmation dialogs for save and delete

Authored by Nathan Craddock (Zachman) on Nov 17 2018, 9:14 AM.



Removed popup confirmation dialogs for save and delete operators in favor of a status bar message. (See T57880)

For delete, it reports the number of deleted objects


Now pressing the delete key will not show a confirmation popup, but "X" will create a operator confirm popup.

Diff Detail

rB Blender

Event Timeline


It also worked with this line deleted, I'm not sure what the convention is though

Nathan Craddock (Zachman) edited the summary of this revision. (Show Details)EditedNov 18 2018, 6:43 AM
Nathan Craddock (Zachman) updated this revision to Diff 12551.

Based on discussion on papercut task (T57880) confirmation popups are back for pressing the "X" key to delete. Pressing the delete key will not create a popup.

Personally while testing I really really enjoyed pressing "X" without a popup for deleting. It just felt so fast! But that might be just me, and the points made in the discussion considering massive amounts of objects do have merit.

I tested this, and to me this works very well. Saving not being a two-step action is a huge benefit, and the X-key vs Delete key difference seems like a good tradeoff.

@Campbell Barton (campbellbarton) Can you review the code if it's ok with you?

This revision is now accepted and ready to land.Nov 18 2018, 12:49 PM

Thanks for the patch! committed:

  • rB750690ae7a5c5331921dede7e62b095619154c70
    • Report even when zero items are deleted - since users may have expected some result.
    • Change report type to info since warning are for when things don't act as expected.
    • Rename counter to changed_count, remove changed.
  • rB47139c69d7e46975c273a8f6981aca9e5cdda1d1
    • Move confirm with check to generic, reusable API call: WM_operator_confirm_or_exec.
    • Default confirm to true and remove the option from the keymap when it's true (since we can assume confirmation is useful if the operator author added it at all, turning off is the exception).