Commit Graph

3492 Commits

Author SHA1 Message Date
Jacques Lucke
c49045ff53 Nodes: open node property panel by default
This makes it easier to find these properties which are more common
nowadays than they used to be. Especially in geometry nodes.
2024-06-04 19:06:26 +02:00
Bastien Montagne
1e5d1c0d04 Fix (unreported) I18N error when generating messages for an add-on.
Would error when a language is not selected in the translation UI, and
new messages are generated by the update.
2024-06-04 18:42:17 +02:00
Bastien Montagne
b179378766 Fix (unreported) crash in I18N messages extraction script.
Using `bpy.types.OperatorProperties.__subclasses__()` has become utterly
unreliable now, to the point that it keeps references to freed (aka
unregistered) operators now, leading to crash when accessing them.

This commit refactors quite seriously the `dump_rna_messages` code, by
first listing all 'valid' classes, and then processing them all at once
in a flat iteration.

RNA classes are still generated from class hierarchy rooted on the
'virtual' `rna_struct` one, except for operators. These are now
generated by introspecting `bpy.ops` instead.
2024-06-04 18:42:17 +02:00
Dalai Felinto
98dd62ebda UI: Extensions: Missing Script Files tweaks
* Move missing script files inside a panel.
* Call it Missing Add-ons.
* Add an explicit "X" to dismiss (instead of the checkbox).

Note: The panel is collapsed by default.

Co-authored by Pablo Vazquez.

Pull Request: https://projects.blender.org/blender/blender/pulls/122721
2024-06-04 18:16:34 +02:00
Pablo Vazquez
ae26d0468b UI: Extensions: Use icon for check notification
This message replaces labels that contain icons, since this message
didn't have an icon the UI looks like it flickers since the text
shifts position.
2024-06-04 18:05:42 +02:00
Dalai Felinto
c67bf1be9c UI: Extensions: "Online Extensions" panel tweaks
* Make the text smaller.
* Stash the entire panel content inside a box.

Co-authored by: Pablo Vazquez

Pull Request: https://projects.blender.org/blender/blender/pulls/122715
2024-06-04 18:04:54 +02:00
Falk David
0ac65555b2 Cleanup: GPv3: Draw Tool: Shorten name in UI
Shorten the display name of "Subdivision Steps" to "Subdivisions".
2024-06-04 17:24:54 +02:00
Sean Kim
e600a7c229 Fix #122493: Line Trim UI missing Extrude Mode
Exposes the missed `Extrude Mode` setting for the *Line Trim* tool.

Pull Request: https://projects.blender.org/blender/blender/pulls/122695
2024-06-04 16:38:37 +02:00
Brecht Van Lommel
5ce58d63b7 Fix: bl_info version from extension is string instead of int tuple
The extensions spec says this should use semantic version,
so it should always start with X.Y.Z numbers.

Co-authored-by: Campbell Barton <campbell@blender.org>
Pull Request: https://projects.blender.org/blender/blender/pulls/122687
2024-06-04 16:21:25 +02:00
Jeroen Bakker
6a71a91b83 EEVEE-Next: Light Probe RNA
Split `bpy.types.LightProbe` into specialized subclasses.
- Rename all grid_* to remove the prefix in the RNA and limit access to
  volume probe.
- Parallax and other sphere probe only properties should be limited to
  sphere probe.
- `visibility` properties are deprecated (to be removed in a future
  Blender version)

Ref #113976

Pull Request: https://projects.blender.org/blender/blender/pulls/122353
2024-06-04 15:05:22 +02:00
Dalai Felinto
67c292f26b Extensions: update Show Legacy Add-ons tooltip
The old tooltip was wrong. But it was also not very informative on to
what is a legacy add-on.
2024-06-04 15:02:11 +02:00
Dalai Felinto
8b53355602 UI: Add Extensions Updates to user preferences
This was an oversight when we introduced the Extensions Updates on the
Status Bar. Reported in real life by Pablo Vazquez.
2024-06-04 15:02:11 +02:00
Jeroen Bakker
c7807a425a EEVEE: Alias/remove legacy RNA material attributes
- `bpy.types.Material.blend_method` aliases `bpy.types.Material.surface_render_method`.
  'Opaque' and 'Alpha Clip' maps to deferred.
- Renamed `show_transparent_back` to `use_transparency_overlap`
- Renamed `use_screen_refraction` to `use_raytrace_refraction`
- Deprecate `use_sss_translucency` and `use_sss_translucency`

Related to: #113976

**NOTE**
The light probe changes will be done in a different patch.
Both patches should land just before we remove EEVEE Legacy
from the code-base.

Pull Request: https://projects.blender.org/blender/blender/pulls/122297
2024-06-04 14:48:40 +02:00
Clément Foucault
cc0d12dd20 EEVEE: Remove EEVEE-Legacy
This handles the transition to EEVEE-Next (now EEVEE).

This removes some things that make no sense to keep
even for compatibility.
- Scene.eevee.light_cache_data
- Scene Light cache operators
- Scene Light cache RNA properties

The remaining legacy properties will be removed later
on to avoid python API breakage.

We keep the identifier of EEVEE-Next as `BLENDER_EEVEE_NEXT`
to avoid addons being incorrectly silently made compatible
with the EEVEE-Next where the Python API is different.
This renaming should be done in 5.0 release.

Thank you EEVEE-Legacy, you served us well.

Pull Request: https://projects.blender.org/blender/blender/pulls/122433
2024-06-04 14:17:58 +02:00
Falk David
aaae9b956a GPv3: Draw Tool: Add separate "Stroke" panel
Duplicates the UI code for the "Stroke" panel and makes
sure it checks for the new GPv3 type in the poll functions.

This will allow us to slightly adapt the UI without
interfering with GPv2.
2024-06-04 13:58:10 +02:00
Dalai Felinto
a4aa5faa20 UI: Extensions: stash Dismiss/Allow Online Access buttons inside the panel
This includes a small cleanup:
* Remove dead code.
* Rename context to _context since it is not being used.
2024-06-04 09:49:36 +02:00
Campbell Barton
595ac21d85 Cleanup: remove now unused logic for refreshing the splash screen 2024-06-04 10:49:11 +10:00
Richard Antalik
f98b01e492 VSE: Improved handle tweaking
This commit changes how users can interact with handles:

Unselected handles are not drawn anymore by default. Handles are bit
thinner. If handle can't be selected, because strip is too small,
it is not drawn.

When hovering over strip handle a cursor is changed to represent a
handle shape. It is possible to select 2 handles at once if strips are
adjoined.

When tweak event happens on unselected handle, handle selection is lost
ater tweaking.

This behavior can be disabled in preferences:
Editing > Video Sequencer > Tweak Handles.

Moving strips with G key works same way as before.

Pull Request: https://projects.blender.org/blender/blender/pulls/109522
2024-06-03 23:17:41 +02:00
Harley Acheson
10071caea8 UI: Show Passepartout When All Overlays Off
Bring back old behavior where passepartout is shown when all overlays
are disabled. Move the passepartout option to the sidebar.

Pull Request: https://projects.blender.org/blender/blender/pulls/122577
2024-06-03 19:17:21 +02:00
Pratik Borhade
059c74dc98 GPv3: Console error after opening layer extras panel
Caused by c80e30684c.
TypeError in console after opening layer extras panel while group is
active.

The fix makes sure `layer` is not `None`.

Pull Request: https://projects.blender.org/blender/blender/pulls/122586
2024-06-03 19:15:06 +02:00
Jacques Lucke
717f4d4dae Fix #122660: show Add Rest Position checkbox only for meshes 2024-06-03 18:12:55 +02:00
Sybren A. Stüvel
5bab6126c1 Anim: Baklava, prevent infinite redraw loop in temp animation layer panel
Make the hack to get an Action selector slightly less hacky, in order to
prevent an infinite redraw loop.

No functional changes, except that `window_manager.selected_action` is only
set when it needs to change.
2024-06-03 17:55:09 +02:00
John Swenson
b5389f32c8 UI: Fix polling in sequencer preview overlays
When the sequencer overlays menu was restructured in #121591, the new
Sequencer panel types did not include polling, which means that they
also show up in the Preview-only view type.

Details and screenshots in the pull request.

Pull Request: https://projects.blender.org/blender/blender/pulls/122638
2024-06-03 16:38:47 +02:00
Nika Kutsniashvili
1fe8fbd93a UI: Reorganize mesh sculpt mode menus
Reorganization of the mesh Sculpt mode menu for simplicity and consistency.

Changes include:

- Moved transform operators into its own menu, consistent with other modes.
- Group Box, Lasso, Line, and Polyline Show/Hide operators
- Box, Lasso, Line, and Polyline Trim/Add operators moved to a new "Trim/Add"
- Cleanup and simplification of labels

Detailed explanation and example images in the pull request.

Pull Request: https://projects.blender.org/blender/blender/pulls/122437
2024-06-03 16:36:32 +02:00
Campbell Barton
a26031ed9b Fix #122652: Clicking offline status icon enabled online access
Oversight in [0] made clicking on the status bar icon enable online
access instead of opening the preferences.

[0]: c9a99c7eeb
2024-06-03 23:49:07 +10:00
Campbell Barton
916268bed9 Fix #122645: Extensions tag popover empty until checking for updates 2024-06-03 21:02:33 +10:00
Campbell Barton
1839ec7d9c Extensions: support showing files included in the build sub-command
Add a verbose argument to list all files included in a package,
useful when checking paths are properly included.
2024-06-03 21:02:32 +10:00
Campbell Barton
4a117f3116 Extensions: add popover to filter by tags
Since the categories from add-ons are no longer shown all extensions
are shown together. Support filtering by tags as an alternative.
2024-06-02 23:25:49 +10:00
Campbell Barton
5e462135f3 Extensions: avoid redundant conversion the new manifest to bl_info
Converting the manifest TOML to the bl_info ran before checking
if the add-on was legacy.
2024-06-02 23:00:11 +10:00
Campbell Barton
f1bf9d366c Extensions: support canceling asynchronous operations
Pressing escape now passes `canceled` the finished action
(not currently used).
2024-06-02 21:49:44 +10:00
Julien Duroure
c8d77efe27 glTF exporter: fix typo in a previous commit
Checking if mesh has vertex color was wrong
2024-06-01 16:56:53 +02:00
Julien Duroure
04b08bcb40 glTF exporter: Fix glTF vendor extensions declaration 2024-06-01 16:51:26 +02:00
Dalai Felinto
c9a99c7eeb Extensions: revised welcome message + behavior
Make it possible allow online access directly from the welcome screen.

Ref !122511
2024-06-01 23:17:11 +10:00
Clément Foucault
c0864e8d5f Fix: UI: Missing Texture panels in EEVEE-Next
Fix #122497
2024-06-01 15:14:47 +02:00
Campbell Barton
b696d34928 UI: tweak legacy enum not to include trailing separator 2024-06-01 22:54:52 +10:00
Campbell Barton
42c4678707 Cleanup: quiet warnings from mypy & ruff 2024-06-01 22:54:52 +10:00
Julien Duroure
cab79018ee glTF exporter: Remove false positive warning 2024-06-01 10:05:43 +02:00
Campbell Barton
d002703484 PyAPI: fixes for defining operator macros
- Support passing in operator ID's using Python dot syntax.
- Support define operators that haven't yet been registered
  matching Blender's own behavior.

Also add doc-string for bpy.types.Macro.define.
2024-06-01 16:17:02 +10:00
Campbell Barton
a700fdc163 Fix class methods being excluded from the Python API docs
All class methods were excluded which makes sense for methods such
as poll, draw ... etc. however this would also exclude utility methods
that aren't associated with RNA classes.

The following methods for `bpy.types` classes are now included:

- Macro.define
- UI_UL_list.sort_items_by_name
- {Header/Menu/Panel/UIList}.{append/prepend/remove/is_extended}
2024-06-01 16:17:01 +10:00
Campbell Barton
90d513f7d3 Cleanup: improve checks for function types for RNA introspection
Function checks were too ambiguous making debugging difficult.
2024-06-01 16:08:56 +10:00
Jesse Yurkovich
7806d3229a Cleanup: make format 2024-05-31 18:59:34 +02:00
Jacques Lucke
5a43eb0cbc Add-ons: make node wrangler a core add-on
Making node wrangler a core add-ons means that it will ship with Blender, but it still has to be enabled explicitly. It won't be available on the extensions platform anymore.

We'll still continue to move parts of its functionality out of the add-on into default Blender. However, that takes a little bit longer, because we need to go over the design and code quality in more detail first. Once, the most important functionality (#121749) is merged, the remaining node wrangler features can be put on the extensions platform.

Ref !122557
2024-05-31 16:53:26 +02:00
Brecht Van Lommel
d568abea62 Extensions: Install From Disk operator handling both legacy and new
When a user has downloaded an add-on as a zip file, it's not clear in
advance if this is a legacy add-on or a new extension. So they would
have to use trial and error, or inspect the zip file contents.

This uses a simple heuristic to check if the file is a legacy add-on,
and if so automatically calls the legacy operator instead.

The operator now show both extension and legacy add-on properties,
with the latter in a default collapsed subpanel.

Pull Request: https://projects.blender.org/blender/blender/pulls/121926
2024-05-31 16:22:08 +02:00
Campbell Barton
a21f75d04d Extensions: improve checks for packages to upgrade
- All remote repositories are included in the check for outdated
  packages, the check-for-updates setting is only used to sync with
  the remote before checking for outdated packages.
- Defer checking for repositories to notify until after Blender
  has opened since checking for installed packages & outdated
  repositories could add some noticeable overhead.
2024-05-31 23:26:28 +10:00
Pratik Borhade
c80e30684c GPv3: Lock material layer property
This ports the `lock_material` layer property to GPv3.
For this, the `layer_index` is also required in `retrieve_editable_points`
and `retrieve_editable_strokes` to choose strokes based on
the `lock_material` property.
In `retrieve_editable_elements` we now pass the `MutableDrawingInfo`
to get both the `drawing` and `layer_index`.

Pull Request: https://projects.blender.org/blender/blender/pulls/119913
2024-05-31 15:13:35 +02:00
Campbell Barton
8bd3be2160 Extensions: show extension updates in the status bar
Move extension update display from the splash screen to the status bar.
Based on !122413 with minor changes & removal of splash text.

Co-authored-by: Harley Acheson <harley.acheson@gmail.com>
2024-05-31 21:37:37 +10:00
Dalai Felinto
40b882437e Extensions: Use the INTERNET_OFFLINE icon for the offline mode message 2024-05-31 13:07:41 +02:00
Dalai Felinto
711b722ec1 Extensions: Fix missing operator
This was probably borked during one of the recent renames.
To reproduce the original issue:

* Go to Preferences > Extensions
* Check the console:

rna_uiItemO: unknown operator 'extensions.show_online_prefs'
4.2/scripts/addons_core/bl_pkg/bl_extension_ui.py:354
2024-05-31 13:06:29 +02:00
Iliya Katushenock
fb6b9092a7 Geometry Nodes: new Instance Transform attribute input node
New node to access `instance_transform` built-in attribute of instances.

Pull Request: https://projects.blender.org/blender/blender/pulls/122477
2024-05-31 12:55:40 +02:00
Campbell Barton
43a47f39f9 UI: always show text on the splash when running in offline mode
see #119521
2024-05-31 18:47:15 +10:00