Page MenuHome

Modal number input's strange behaviour
Closed, InvalidPublic


Blender Version
v2.69.11 f1a0278

Short description of error
In any modal number input (like Scale), type "2/5" without hitting the new "=", and the result will be "1/25". Also if you type "2*2", you will get "22".
It is a different behaviour from what happened before, when simple * and / operations was allowed.
The new equation input mode is a great feature, but I think it should not break the old system.



Event Timeline

Tested in 2.69 and a recent build and there is no difference to the outcome of the final scale.

The outcome in 2.69 is as you have described but since this is before number buttons were re-factored, this seems like its at least not a regression.

Can you detail exactly what you did and exactly what you expect, double checking behavior in 2.69 release?

Campbell Barton (campbellbarton) lowered the priority of this task from Normal to Needs Information from User.Feb 26 2014, 5:18 AM

Yep, old numinput never allowed operators! It only had shortcuts to negate/invert value, that’s all. You must be confusing with some build after 2.69 release, when the "advanced" mode was the only one available, and hence on by default!

@Campbell Barton (campbellbarton) Here's exactly what I did:

  1. With the default cube selected, keys typed in the following order: S 1 / 2
  2. The output scale is 1/12 = 0.08
  3. It should be 1/2 = 0.5 (if advanced mode is considered)
  4. Or 12 if the / operator is ignored like the * operator already is.

Maybe the best design for this interaction should be to activate the advanced mode after the use of any operation (/, *, (, ...), except the + - and other normal mode operators (X, Y, Z...).

The alternative is to inhibit the use of such operators before activating the advanced mode, what I think could not be the proper solution for this.

@Bastien Montagne (mont29), I still can't confirm if this is a +v2.69 behaviour like you're saying, but you must be right and I'm really sorry if I made this mistake. But this issue is not Invalid.

The strange behaviour I'm presenting here is happening in v2.69.11.

Once again, there is no bug here, and this behavior is not invalid, it has worked this way since ages! You could only type in numbers, and use - or / to negate/inverse those numbers.

I only added support for full math after 2.69, and kept tweaking this since then, so now by default you get same behavior as always, and have to explicitly enable advanced mode with either = or * to use real math operators, units, etc.

Please read release notes!

It seems our definition of bug is a quiet different. Even this is being there for ages, it is still a bug of User Iteration. A behaviour that can be improved.

Can this be looked at again? As @Paulo José Oliveira Amaro (pauloup) said, intention aside this feels like a bug to the user, and could be improved upon. Would this be a big task?

I fell that the way this is intended to work is completely counter-intuitive and will prevent the vast majority of users from discovering this functionality. The ability to quickly divide or multiply a value is much more commonly useful than inversing the values. Just because it's been around for a long time doesn't make it good design. The actual functionality is amazing i just wish it was more open and intuitive so other users could enjoy it too!