Age | Commit message (Collapse) | Author |
|
This was a read after free error. This only fix the undefined behavior.
The result is still not correct in certain cases (see T67226).
We want to include this for 2.80
|
|
Text datablocks should always have a 'single user' flag set, and they
usually do not have any user (since neither text editor itself, nor
Freestyle usage are text users - the second is odd btw...), the only one
am aware of is the script node (e.g. for OSL).
Add text case was simply not doing anything, so added.
Load text case was doing things in inversed logic (setting user count to
zero in BKE, then setting 'real user' flag in ED code). Made it the
other way around (BKE ID creation code should not care about usercount
usually, this is up to higher-level code to decide what to do
(operators, RNA...).
Note: tried to check all cases, but there might very well be some more
hidden bugs here...
|
|
This reverts commit b0b2546d4a3a308da19d218d919915aac4834e59.
Please do not sweept the dirt under the carpet like that! If there is a
bug, either report it or fix it, but do not silence it!
|
|
|
|
|
|
|
|
|
|
|
|
Editing Context
Previously when switching modes, the code didn't check if we were in the
correct view for the masking mode.
Reviewed By: Sergey
Differential Revision: http://developer.blender.org/D5288
|
|
|
|
This wasn't working properly and needs to be finished,
disable for release.
|
|
This was caused by TAA offset being computed as the 2nd sample even if the
sampling was reset afterwards.
The fix is to update the matrices after any potential reset.
|
|
Vertices were hard to see, draw the same size as edit-mesh vertices.
|
|
|
|
Missing from f2df5206987f6, harmless but confusing to leave
in checks for preferences having asked to skip them.
|
|
Reviewed By: brecht, sergey
Differential Revision: https://developer.blender.org/D5284
|
|
This fix relies on 2.7x logic, only de-selecting other armature objects,
making multiple armatures in weight paint mode usable.
|
|
Extend pose object checks to all pose-mode objects
used by the mesh.
|
|
Selecting multiple armature objects and entering weight paint mode
wasn't working.
Entering weight + pose modes at once was only done when
object mode locking was enabled. Now it's done even when
mode-locking is off - because it's still inconvenient to setup
and useful default behavior.
Resolves issues raised by T66949
|
|
Regression from 2.7x caused by 28dfc47cf0b06
|
|
|
|
This reverts commit 9e9fbb39d7f9e0a63c71fbc96237ace62fae0db6.
Adding back object+pose bone selection support removes the need for this fix.
|
|
If the parent collection was out of view we were not taking its
properties into consideration. We need it even when not drawing the
parent to set active/inactive values for its children.
Related Task: T66948
Reviewers: brecht
Subscribers: Zachman
Differential Revision: https://developer.blender.org/D5272
|
|
Basically layer_collection_sync was calling BKE_base_eval_flags right away while
iterating over the bases.
However when a parent/sibling collection is to influence the collection flag of
an object that exists in more than one collection, it is too late since we
deselect the object in BKE_base_eval_flags right away.
Related to T64312.
Reviewers: sergey, brecht
Differential Revision: https://developer.blender.org/D5243
|
|
Based on feedback from @matiasmendio
There was a problem with the control points because it was very difficult to know what point move. Now the points are moved apart and makes easy to know what point use.
|
|
Like Blender renders without a Z channel. The single layer case assume that channel
names are just R/G/B/A without any layer name prefix, and would not read channels
like "Image.R".
Carefully tested for regressions with the openexr project tests images, so this
should be safe.
|
|
`layer_used` runtime data, which controls the drawing of dots in the UI was not getting refreshed properly.
This used to happen in the drawing code, but was no longer working for reasons explained in:
{rB2b09062defa093a243b5fe64b099accb07b440a3}
The solution was to update each layer manually in the operators:
* ARMATURE_OT_bone_primitive_add
* ARMATURE_OT_delete
* ARMATURE_OT_dissolve
* ARMATURE_OT_fill
* ARMATURE_OT_merge
* ARMATURE_OT_separate
* ARMATURE_OT_bone_layers
* POSE_OT_bone_layers
Differential Revision: https://developer.blender.org/D5281
|
|
Reviewers: brecht
Reviewed By: brecht
Maniphest Tasks: T66919
Differential Revision: https://developer.blender.org/D5275
|
|
When objects are not in the view layer, just return false rather than throwing
an error. As far as the script is concerned the object is not visible or
selected when it's not in the current view layer.
|
|
|
|
When ng mask layer operations (add, remove, move) the
original mask was not tagged to be updated resulting
in missing data on the copy. The Masking function
assumes that the copy and the original is always
structured the same.
Reviewed By: brecht, sergey
Differential Revision: https://developer.blender.org/D5283
|
|
It is possible that undo will change current scene frame and that was
not synchronizing current frame from scene to movie clip user.
Reported as a part of T66519.
Reviewers: brecht
Reviewed By: brecht
Maniphest Tasks: T66519
Differential Revision: https://developer.blender.org/D5280
|
|
the dot icon in the layers UI"
This commit did not follow the protocol that requires a review first.
This reverts commit 580acab1737c726f43e39792dbb75f3ca2089fcb.
|
|
icon in the layers UI
|
|
clipping region
`DRW_STATE_CLIP_PLANES` has to be enabled independent of the workbench material.
Reviewers: fclem, jbakker
Differential Revision: https://developer.blender.org/D5278
|
|
animation
|
|
Applying/undoing incremental changes didn't fit well when
mixed with periodic snapshots from mem-file undo.
This moves to a much simpler undo system.
- Uses array storage with de-duplication from `BLI_array_store`.
- Loads the buffer into existing text data,
for better performance on large files.
- Has the advantage that Python operators can be supported
since we don't depend on hard coded undo operations.
Solves T67045, T66695, T65909.
|
|
|
|
Similar fix to 495aff7.
Reviewers: brecht
Reviewed By: brecht
Maniphest Tasks: T67047
Differential Revision: https://developer.blender.org/D5268
|
|
The new selected object was activated but not selected.
|
|
Part of D5274, reviewed by Campbell Barton.
|
|
If one of the objects had invalid selected edges, it would lead to a
crash since none of the for loops were checking for whether the edge
slide data is valid.
We could refactor the macros to create a new
FOREACH_TRANS_DATA_CONTAINER_WITH_DATA
However we are too close to 2.80 final release so we manually skip them
for now.
Note: TRANS_DATA_CONTAINER_FIRST_OK cannot be used either for the same
reason.
Reviewers: campbellbarton
Differential Revision: https://developer.blender.org/D5274
|
|
Based on feedback from T66675, the current interface is confusing,
leading to users accidentally overwriting their preferences.
Now, once factory settings are loaded preferences are not saved
and the save button is shown (as when auto-save is disabled).
Tool tips note that factory settings require manual saving
afterwards.
Also rename preference menu items for better consistency
(settings/state -> preferences).
|
|
This code is not guaranteed to run with any specific space theme, so pass
it explicitly.
|
|
|
|
The Pinch, Push, Twist and Clone were not using the object transformation to compute point changes, so the point was way off of the right place.
|
|
Don't try to use old screens as workspaces, just leave them out of the menu.
Differential Revision: https://developer.blender.org/D5270
|
|
|
|
Update the default init step values to be the same for all caches.
This is actually a small hack as these values are not used on the
creation of the first cache. But the default init value is 1, so this
will not be noticeable anymore.
Reviewed By: Brecht
Differential Revision: http://developer.blender.org/D5271
|
|
RigidBodyConstraints collection.
We only had a very limited, specific handling of that in collection
duplication code, but this has to be handled at a much more general
level in Object copy code itself, since it makes no sense to duplicate
rigidbody object data without adding new copy to relevant rigidbody
collections...
WARNING: This is a fairly risky rework of rigidbody handling logic
when copying an Object data-block. It is *NOT* considered safe enough
for 2.80 release.
I tried to take into account copy flags to not mess with other IDs
(collections) when we are copying outside of Main, and also not do deg
tags when this is forbidden, but risk of something going wrong here is
too high...
|