Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-10-02Fix T81200: Crash on certain armature select operators when OpenGL DepthPhilipp Oeser
Picking is disabled Affected were (at least) - Select Linked pick - Select Shortest Path Was originally caused by rB8b347fc2cdc6 [which got improved in rBfc8a7a44b200 - but only partially]. After removal of BONESEL_NOSEL we have to filter out -1 from the hits for any bone picking it seems (since armature drawing uses this). In rBfc8a7a44b200, this was done for 'ED_armature_edit_select_pick' (or 'get_nearest_editbonepoint' precisely), now do this for 'ed_armature_pick_bone_impl' as well. Reviewers: campbellbarton Maniphest Tasks: T81200 Differential Revision: https://developer.blender.org/D9080
2020-10-02Cleanup: Refactor `ed_screen_context()` to use hash lookupsSybren A. Stüvel
Refactor `ed_screen_context()` to use `GHash` lookups instead of a sequence of string comparisons. This should provide a nice speedup, given that the hash for `member` only has to be computed once instead of matching it to each possible string. Reviwed by: brecht Differential Revision: https://developer.blender.org/D9090
2020-10-02Cleanup: split up `ed_screen_context()` into separate functionsSybren A. Stüvel
Refactor `ed_screen_context()` to call separate functions, instead of having the entire functionality in one function. Each function now only retrieves the data it needs from the context. Furthermore, some string comparisons are removed. No functional changes. Reviwed by: brecht Differential Revision: https://developer.blender.org/D9090
2020-10-02CleanUp: Remove header only definitionJeroen Bakker
node_draw_link_straight existed in header files without a body
2020-10-02Fix userpref.blend using version from startup.blendCampbell Barton
Version patching userpref.blend wasn't using the correct version, causing settings not to be properly updated. This seems the likely cause of T70196 and similar bugs.
2020-10-02Fix (unreported) design flow in how workspace's relation data are read from ↵Bastien Montagne
.blend file. Relying on pointer addresses across different data-blocks is extremely not recommended (and should be strictly forbidden ideally), in particular in direct_link step of blend file reading. - It assumes a specific order in reading of data, which is not ensured in future, and is in any case a very bad, non explicit, hidden dependency on behaviors of other parts of the codebase. - It is intrinsically unsafe (as in, it makes writing bad code and making mistakes easy, see e.g. fix in rB84b3f6e049b35f9). - It makes advanced handling of data-blocks harder (thinking about partial undo code e.g., even though in this specific case it was not an issue as we do not re-read neither windowmanagers nor worspaces during undo). New code uses windows' `winid` instead as 'anchor' to find again proper workspace hook in windows at read time. As a bonus, it will also cleanup the list of relations from any invalid ones (afaict it was never done previously). Differential Revision: https://developer.blender.org/D9073
2020-10-02CleanUp: snode_group_offset -> space_node_group_offsetJeroen Bakker
2020-10-02CleanUp: Renamed drawnodespace -> node_draw_spaceJeroen Bakker
2020-10-02Fix text editor auto-complete refinement featureCampbell Barton
Left/right arrow keys can refine the completion, this wasn't redrawing and there was an off-by-one error checking the next character.
2020-10-02Fix text editor auto-complete mouse interactionCampbell Barton
- Remove MMB for activating an auto-complete item (use LMB instead). - Update on cursor motion.
2020-10-01Fix warnings in cloth brush int castsPablo Dobarro
Use POINTER_AS_INT instead Reviewed By: HooglyBoogly Differential Revision: https://developer.blender.org/D9083
2020-10-01Fix T80873: Grab active vertex preview not working with shape keysPablo Dobarro
When a Shape Key is active, use the PBVH deformed coordinates for the preview. Reviewed By: sergey Maniphest Tasks: T80873 Differential Revision: https://developer.blender.org/D8921
2020-10-01Paint: Ignore inbetween events for anchored strokesPablo Dobarro
When using anchored strokes, inbetween events are not needed since there is no stroke path to be reconstructed. Handling the inbewteen events are only producing unnecessary updates, creating performance issues. Reviewed By: sergey, brecht Differential Revision: https://developer.blender.org/D9053
2020-10-01Sculpt: Cloth Simulation Dynamic area modePablo Dobarro
This simulation area mode moves the active area with the brush. When enabled, the cloth brush has no restrictions on stroke length, area or mesh vertex count. In order to work, this enables PBVH nodes dynamically for simulation as the stroke location moves and builds the constraints for new nodes during the stroke. When a node is not inside the simulated area, all the constraints that were created for it and vertex collisions are not computed. The simulation limits falloff areas and constraints tweaking control how the simulated and no simulated nodes blend. Reviewed By: sergey, zeddb Differential Revision: https://developer.blender.org/D8726
2020-10-01Fix T81248: World nodetree action is linked after duplicationPhilipp Oeser
This was already changed for Material nodetrees on duplication in rBa75ac18638f4. Since it is not obvious from the UI how change World actions - and to be consistent with Material actions, it is best to copy the action as the default behavior. So use generic BKE_id_copy functions with LIB_ID_COPY_ACTIONS flag [which also enables us to get rid of `BKE_world_copy`] Note: taking the User Preference `USER_DUP_ACT` into account here (for both material and world actions) could be a followup step. Maniphest Tasks: T81248 Differential Revision: https://developer.blender.org/D9046
2020-10-01Fx several issues with Outliner's collection editing re linked/override.Bastien Montagne
Most collection operations should not be allowed when either the scene or the parent collection are linked or liboverrides. This commit adds more stricter checks in both polling and execution aspects of several related operators. Fix T81282: Crash on instance to scene of a collection of a linked scene.
2020-09-30Fix implicit conversion from pointer to boolHans Goudey
Error in 9b6c5268bc20. Also move variable declaration to where it's used to reduce confusion.
2020-09-30Cleanup: Remove unused View2D variables and functionHans Goudey
It looks like this code was left over from tabbed panels in the properties editor. It wasn't used anywhere except for in one line of the horizontally-aligned panel code that was recently removed. Differential Revision: https://developer.blender.org/D8651
2020-09-30Cleanup: Reduce indentationHans Goudey
Instead of indenting the entire functional block, check for the error case and the supported case early to make the code more readable.
2020-09-30Cleanup: convert gforge task ID's to phabricator formatValentin
Cleanup old tracker task format to the new. e.g: [#34039] to T34039 Ref D8718
2020-09-30Cleanup: sort struct declarationsCampbell Barton
2020-09-30Cleanup: Make function privateHans Goudey
The "UI_panel_set_expand_from_list_data" doesn't need to be in the public API since it's just called every time an instanced panel is added. This commit just sets the expansion automatically and adjusts some naming to account for the moved function.
2020-09-30Fix use after free deleting object with modifier panels visibleHans Goudey
It's necessary to check if the panels are active before accessing their data. Thanks to @ankitm for reporting this.
2020-09-30Cleanup: Use LISTBASE_FOREACH macro in outliner codeHans Goudey
2020-09-29Sculpt: Preserve Mesh visibility from edit mode using the Face SetsPablo Dobarro
Before this change, when users switch from edit mode to sculpt mode, the entire mesh would be visible. Even if in the edit mesh mode part of it was set to invisible. With this change the visibility is preserved, by creating a separate face set for the visible and invisible parts of the mesh and setting their initial visibility. Implementation details: This adds a function to initialize a new Face Set datalayer taking the current mesh visibility into account which is stored in the ME_HIDE flag of the vertices. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8901
2020-09-29Sculpt: Line Project Gesture toolPablo Dobarro
This tool projects all vertices to the right of the plane defined by the line gesture towards the plane. By doing this, this tool can create cuts and plane surfaces in the mesh without modifying the geometry or using boolean operations, so it is much faster than bisecting the mesh for cases where the geometry was going to be remeshed afterwards. Added as experimental as it does not have icon. Reviewed By: sergey, Severin Differential Revision: https://developer.blender.org/D9021
2020-09-29Property Search: Set expansion properly for child panelsHans Goudey
Although I haven't seen this cause any visible errors, there is some incorrect handling for setting panel expansion during search: - Properly check if child panel is active first - Don't stop traversal at headerless panels that could theoretically have children
2020-09-28Outliner: Draw hierarchy lines dashed for object childrenNathan Craddock
Draw dashed lines for object child hierarchies in the outliner. This makes the difference between collection and object hierarchies more clear. Dashes are also consistent with viewport relationship lines. Differential Revision: https://developer.blender.org/D8997
2020-09-28Fix T80657: Not freed memory blocks with Batch-Generate Previews.Bastien Montagne
`ED_preview_icon_render()` owns the `id_copy` localized ID, so it has to free it itself.
2020-09-28UI Code Quality: Clear layout pointer on layout destructionJulian Eisel
The layout pointer is quite ugly, but currently needed to work around design issues. At least it should be cleared to avoid use-after-free.
2020-09-28Cleanup: animation, simplify `anim_flush_channel_setting_up()`Sybren A. Stüvel
Simplify `anim_flush_channel_setting_up()` by flipping conditions and returning early. This makes it easier to understand what is actually happening in the code. No functional changes.
2020-09-28Cleanup: animation, split up ANIM_flush_setting_anim_channels()Sybren A. Stüvel
Split up `ANIM_flush_setting_anim_channels()` into smaller functions. This makes it easier to understand how it works, and makes future improvements also easier. No functional changes.
2020-09-28Fix typo in UI messages.Bastien Montagne
2020-09-28Fix T79275: Missing redraw for pinned active tool settings panelsDavid Friedli
In the 3D view sidebar, the active tool settings panel can be pinned to other categories, and in those other categories it doesn't redraw when the active tool changes. This commit checks for pinned panels from the "Tool" category when checking whether to redraw. Note that the relatively expensive string comparison is only done for currently visible pinned panels. Differential Revision: https://developer.blender.org/D9012
2020-09-26Sculpt: Line gestures and Mask Line toolPablo Dobarro
This adds support for line gesture to SculptGestureContext and implements a Mask Line tool, which affects everything to the right of a plane defined by the straightline gesture. For this to work, a new WM_gesture_straightline_oneshot_modal is needed which only runs exec when the gesture is over. Added as experimental as it does not have icon. Reviewed By: Severin Differential Revision: https://developer.blender.org/D8722
2020-09-26Fix T81205: Grease pencil material slots don't auto-erase void slots above ↵Antonio Vazquez
the first material
2020-09-25Cleanup: Use canonical variable nameHans Goudey
2020-09-25Cleanup: Decrease indentation by returning earlyHans Goudey
Where the if statement was just a check for an error or an unhandled condition and there are no else statements, the rest of the function doesn't need to be indented.
2020-09-25Cleanup: Declare variables where initialized, lower scopeHans Goudey
Also use "r_" prefix for return arguments in a few places.
2020-09-25Fix T81161: Bad properties context panel placement loading old filesHans Goudey
These breadcrumbs used to be a panel in 2.79 and 2.80 development. If a file was saved in those versions, and the panels rearranged in a version that didn't have this panel, its sortorder would be changed even though it wasn't visible or even used in that version. A simple fix is to use a new ID name for the new version of this panel in 2.91. "Buttons" is an old name anyway.
2020-09-25Cleanup: Miscellaneous code improvementsHans Goudey
- Declare variables where initialized - Return early in some cases - Use "i" as an iteration index variable - Use bool instead of int where applicable
2020-09-25Fix constrain plane not being set in tranform codeGermano Cavalcante
Error introduced in rB388b9162469650c
2020-09-25Fix T80937: Changing the contrain axis does not return to the scene orientationGermano Cavalcante
This was the behavior in old versions of blender. During a transformation operation, when pressing a contrain key, the chosen orientation is that of the scene. If you press the same key, the orientation changes to Global or Local. However, if you choose another contrain axis with the orientation changed, the orientation does not return to the set for the scene. It remains Global or Local. Now when changing a contrain axis, no matter what the current orientation is, it always returns to the scene orientation.
2020-09-25Animation: set Action `idroot` at assignment instead of just at evaluationSybren A. Stüvel
Actions are either locked to a specific ID type, or "floating". Actions in the floating state are now locked when they are assigned to an ID block. Previously (rB94b99b5d4a7c20cf2) this was done at evaluation time, which caused various problems: - The ID type was set on the evaluated copy, and inconsistently flushed back to the original. - A newly created Action could not be assigned to an Action constraint, unless a depsgraph evaluation was be forced first. This is now resolved by calling `BKE_animdata_set_action()` to set the action (instead of direct assignment) where possible, and calling `BKE_animdata_action_ensure_idroot()` otherwise. Manifest Task: https://developer.blender.org/T80986
2020-09-25Modifiers: add icon field to ModifierTypeInfoJacques Lucke
With this change `outliner_draw.c` does not have to be edited anymore when a new modifier is added. Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D8998
2020-09-25Cleanup: SpaceGraph ED code: use boolean litterals when needed.Bastien Montagne
2020-09-25Object: Move Switch Active Objects to experimentalPablo Dobarro
The operator has some problems with Undo, so better put it in experimental for now. Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D9007
2020-09-24Cleanup: Move function to proper sectionHans Goudey
The main panel drawing funciton should be in the "Drawing" section.
2020-09-24Cleanup: Remove unused functionHans Goudey
2020-09-24Cleanup: Remove unecessary storage of search filter in uiBlockHans Goudey
Since the search is applied all in one phase, there is no need to store a reference to the search filter in every uiBlock. Instead just pass it as an argument to UI_block_apply_search_filter.