Revision 213b391 by Christian Rauch July 15, 2021, 00:41 (GMT) |
enable WITH_GL_EGL to distribute binary X11-EGL builds |
July 14, 2021, 22:33 (GMT) |
Fix crash when adding a modifier after a subsurf modifier |
July 14, 2021, 22:32 (GMT) |
cmake: enable Wayland by default |
July 14, 2021, 22:32 (GMT) |
GHOST/wayland: try Wayland only when 'BLENDER_WAYLAND' is set |
Revision de9dda7 by Fabian Schempp (gsoc-2021-porting-modifiers-to-nodes-solidify, soc-2021-porting-modifiers-to-nodes_all) July 14, 2021, 22:07 (GMT) |
Merge branch 'master' into soc-2021-porting-modifiers-to-nodes-solidify # Conflicts: # release/scripts/startup/nodeitems_builtins.py # source/blender/blenkernel/BKE_node.h # source/blender/blenkernel/intern/node.cc # source/blender/blenkernel/intern/solidify_nonmanifold.c # source/blender/nodes/CMakeLists.txt # source/blender/nodes/NOD_geometry.h # source/blender/nodes/NOD_static_types.h |
Revision 6beb133 by Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 14, 2021, 21:56 (GMT) |
Changes based on review by Jacques Lucke (JacquesLucke) |
July 14, 2021, 20:49 (GMT) |
UI: Auto-scroll to keep active text buttons in view If a text button is activated that is not in view (i.e. scrolled away), the scrolling will now be adjusted to have it in view (with some small additional margin). While entering text, the view may also be updated should the button move out of view, for whatever reason. For the most part, this feature shouldn't be needed and won't kick in, except when a clicked on text button is partially out of view or very close to the region edge. It's however quite important for the previously committed feature, that is, pressing Ctrl+F to start searching in a UI list. The end of the list where the scroll button appears may not be in view. Plus while filtering the number of visible items changes so the scrolling has to be updated to keep the search button visible. Note that I disabled the auto-scrolling for when the text button spawned an additional popup, like for search-box buttons. That is because current code assumes the button to have a fixed position while the popup is open. There is no code to update the popup position together with the button/scrolling. I also think that the logic added here could be used in more places, e.g. for the "ensure file in view" logic the File Browser does. |
July 14, 2021, 20:49 (GMT) |
UI: New button/widget type for Asset Browser like preview tiles This button type shows a preview image above centered text, similar to the File Browser files in Thumbnail Display Mode or the default Asset Browser display. In fact we may want to port these over to use the new button type at some point. Will be used by the asset view UI template that will be added in a following commit. That is basically a mini version of the Asset Browser that can be displayed elsewhere in the UI. |
July 14, 2021, 20:49 (GMT) |
UI: Support defining UI lists in C So far all UI lists had to be defined in Python, this makes it possible to define them in C as well. Note that there is a whole bunch of special handling for the Python API that isn't there for C. I think most importantly custom properties support, which currently can't be added for C defined UI lists. The upcoming asset view UI template will use this, which needs to be defined in C. Adds a new file `interface_template_list.cc`, which at this point is mostly a dummy to have a place for the `ED_uilisttypes_ui()` definition. I plan a separate cleanup to move the UI-list template to that file. |
July 14, 2021, 20:49 (GMT) |
Cleanup: Use const for UI icon getter function |
July 14, 2021, 20:49 (GMT) |
UI/Assets: Initial Asset View UI template The asset view UI template is a mini-version of the Asset Browser that can be placed in regular layouts, regions or popups. At this point it's made specifically for placement in vertical layouts, it can be made more flexible in the future. Generally the way this is implemented will likely change a lot still as the asset system evolves. The Pose Library add-on will use the asset view to display pose libraries in the 3D View sidebar. References: * https://developer.blender.org/T86139 * https://code.blender.org/2021/06/asset-browser-project-update/#what-are-we-building * https://code.blender.org/2021/05/pose-library-v2-0/#use-from-3d-viewport Notes: * Important limitation: Due to the early & WIP implementation of the asset list, all asset views showing the same library will show the same assets. That is despite the ID type filter option the template provides. The first asset view created will determine what's visible. Of course this should be made to work eventually. * The template supports passing an activate and a drag operator name. The former is called when an asset is clicked on (e.g. to apply the asset) the latter when dragging (e.g. to .blend a pose asset). If no drag operator is set, regular asset drag & drop will be executed. * The template returns the properties for both operators (see example below). * The argument list for using the template is quite long, but we can't avoid that currently. The UI list design requires that we pass a number of RNA or custom properties to work with, that for the Pose Libraries should be registered at the Pose Library add-on level, not in core Blender. * Idea is that Python scripts or add-ons that want to use the asset view can register custom properties, to hold data like the list of assets, and the active asset index. Maybe that will change in future and we can manage these internally. As an example, the pose library add-on uses it like this: ``` activate_op_props, drag_op_props = layout.template_asset_view( "pose_assets", workspace, "active_asset_library", wm, "pose_assets", workspace, "active_pose_asset_index", filter_id_types={"filter_action"}, activate_operator="poselib.apply_pose_asset", drag_operator="poselib.blend_pose_asset", ) drag_op_props.release_confirm = True drag_op_props.flipped = wm.poselib_flipped activate_op_props.flipped = wm.poselib_flipped ``` |
July 14, 2021, 20:49 (GMT) |
Asset Browser: Python mixin utility for category-specific panels Using this mixin for a panel definition, it's possible to set in which categories the panel should appear. This is used by the Pose Library add-on. |
July 14, 2021, 20:49 (GMT) |
Fix T88281: Pose Library 'flip pose' sometimes flips wrong Correct cases where the X-axis of the bone (in pose space) aligns with the pose-space Y or Z-axis. In these cases the decomposition of the matrix fails, and a negative scale of the X-axis turns into a 180� rotation around the Y-axis. An extra -1 scale to the X and Z axes of the resulting matrix seems to fix things. |
July 14, 2021, 20:49 (GMT) |
UI: Support pressing Ctrl+F over UI lists to search Adds an operator invoked by default with Ctrl+F that while hovering a UI list, opens the search field of the list and enables text input for it. With this commit the search button may actually be out of view after Ctrl+F still. The following commit adds auto-scroll to solve that. A downside is that in the Properties, there also is Ctrl+F to start the editor-wide search. That's not unusual in Blender though (e.g. scolling with the mouse over a UI list also scrolls the list, not the region). |
July 14, 2021, 20:07 (GMT) |
Merge branch 'master' into temp-geometry-nodes-curve-sample |
July 14, 2021, 17:51 (GMT) |
Cleanup: Refactored fillet code |
Revision f9f3ece by Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate, soc-2021-porting-modifiers-to-nodes_all) July 14, 2021, 17:42 (GMT) |
Merge branch 'master' into soc-2021-porting-modifiers-to-nodes-decimate # Conflicts: # source/blender/blenkernel/BKE_node.h |
July 14, 2021, 16:47 (GMT) |
Fix error loading non-existent shadow kernel pass after recent changes |
July 14, 2021, 16:18 (GMT) |
UI: Support left-right arrow key walk navigation in UI lists Add improved arrow key walk navigation in grid layout UI List templates. Pressing up or down walks the active item to the adjacent row in that direction, while left and right walk through the items along the columns wrapping at the rows. Note from Julian: In combination with the following commit, this has the important limitation that the list's custom activate operator won't be called when "walking over" an item that is scrolled out of the list. That is because we don't actually create any buttons for those that could be used for the handling logic. For our purposes of the pose libraries that should be fine since the asset view list is always made big enough to display all items. Solving this might be difficult, we don't properly support nesting boxes with proper scrolling in regular layouts. It's all just hacked a bit for UI-lists to work. Overlaps quite a bit with T86149. Differential Revision: https://developer.blender.org/D11063 |
July 14, 2021, 16:18 (GMT) |
UI: Support UI list tooltips, defined via Python scripts Makes it possible to create tooltips for UI list rows, which can be filled in .py scripts, similar to how they can extend other menus. This is used by the (to be committed) Pose Library add-on to display pose operations (selecting bones of a pose, blending a pose, etc). It's important that the Python scripts check if the UI list is the correct one by checking the list ID. For this to work, a new `bpy.context.ui_list` can be checked. For example, the Pose Library add-on does the following check: ``` def is_pose_asset_view() -> bool: # Important: Must check context first, or the menu is added for every kind of list. list = getattr(context, "ui_list", None) if not list or list.bl_idname != "UI_UL_asset_view" or list.list_id != "pose_assets": return False if not context.asset_handle: return False return True ``` |
|
|
|


Master Commits
MiikaHweb | 2003-2021