Incorrectly accessing the menu pointer, set it to NULL before doing the
tests.
We don't restore the menu pointer because it is invalid by the time the operator ends.
Issue, after a lot of blood sweat and tears, was found in
ui_but_update_from_old_block, where we restore a button to its old
values when possible. The problem here is that a1 and a2 are not really
meant to store temporary variables, because they tend to get overriden
and palette selection is one of those temporary states.
Instead, we now store the position of each button in the palette in a2
and pointer to the palette in the customdata pointer of each button and
use that to test if it's active. The positions won't change when
clicking so we are guaranteed that the old button won't override the new
one with garbage.
It's still hacky but it is better than testing button types when copying
old values.
Freestyle sections of the API docs were empty due to Freestyle module reorganization
in commit rB6498b96ce7081db039354228213d72e8c70bd3aa.
Module __all__ property was added to submodules so as to properly exclude irrelevant
documentation elements such as mathutils.Vector.
Was using first vertex for depth (which could be anywhere),
now use the view-pivot.
was also copying uninitialized vector into knife_find_closest_* return values (confused debugging).
Added a special notifier now NC_WM|ND_UNDO in order to deal with such cases
and now compositor/image will refresh when undo happens.
There are much more ways to fail compo to update the resul, like undoing
while it's not visible and so, but as mont29 said -- let's at least fix
obvious crap in the workflow.
Fix alpha under equation according to porter-duff and user docs that
state that effect should invert he order of channels and reduce to alpha
over when factor is 1.0.
BTW, we don't really expose any factor here...lost feature from 2.49?
@campbellbarton, it's really helpful to have strict flags enabled
for release builds as well -- especially when you're working in areas
which are heavily using least squares solvers.
For now made it so blender compiles, but it could be better solution here.
- selecting a boundary edge would randomly point in/outside the face (now point away).
- selecting 3 verts would use the first selected edge as the tangent (now use longest).
- selecting 1 vert betweem edges, uses the edges to define the tangent.
Freestyle was using the default Cycles rendering settings (e.g., the number
of samples) and users could not change them. Now all render parameters
(except for film_transparent) are inherited for Freestyle stroke rendering.
Problem report by Danny Grimm on Facebook, thanks!
- clamp selection on entering editmode (Python may have changed).
- BKE_vfont_select_get no longer succeeds with an empty selection
this caused many operators to go ahead and operate on zero size array.
First one, reported by Sergey, was searchbox not closing when validating it (enter or LMB click)
without any active item (we need to enable escapecancel here, to close menu too).
Second one was SEARCH_MENU_UNLINK variant not unlinking at validation when no active item.
Thanks a bunch to Campbell for help here!