Commit Graph

103271 Commits

Author SHA1 Message Date
Sergey Sharybin
ba767610cf Fix #113280: Incorrect display of Cycles border render while rendering
A regression since d579ac2b3f.

Cycles delays allocation of the render buffers, which makes it impossible
to access effective render resolution during rendering. This was making the
drawing code to fall-back to the full scene resolution with only percentage
and crop accounted for.

This change makes it so an empty ImBuf is used to communicate the render
result resolution. It does not have any pixel buffer associated with it,
which actually matches the behaivor prior to the offending commit.

Pull Request: https://projects.blender.org/blender/blender/pulls/113282
2023-10-05 15:16:15 +02:00
Damien Picard
730bb2ee3e I18n: make new bones and bone collections' names translatable
Newly created bones and bone collections get a default name. Like
other types of data, these names should be translated if the user
enabled the translation of new data in the preferences.

This commit adds the appropriate `DATA_()` macro:
- when creating a new armature;
- when creating a new bone;
- when creating a new bone collection through `ANIM_bonecoll_new()`;
- when ensuring that a new bone collection has a unique name;
- when renaming a bone collection;
- in the bone collection tests, to check that new bones have the
  expected translated name.

It also sets the default value of the bone name in the
`ARMATURE_OT_bone_primitive_add()` operator to a null string instead
of "Bone", so that the default name may be chosen while checking for
unique names, since an empty string will default to the translation.

Pull Request: https://projects.blender.org/blender/blender/pulls/113171
2023-10-05 14:38:51 +02:00
Damien Picard
e773e0952a I18n: fix translation of Grease Pencil 3.0 layer names
The Grease Pencil 3.0 layers and groups were not properly translated:
- The layers and groups' names were translated during display in the
  layer list. Since they are data, they should be left untranslated at
  this time.
- On object creation, the names "GP_Layer", "Color", "Lines", and
  "Fills" were not translated at all.
  This adds DATA_() macros around to translate them if the user has
  enabled translation of new data names.
- The functions returning unique names for layers and groups
  unique_layer_group_name() and unique_layer_name() would return
  "GP_Layer" and "GP_Group" by default.
  These defaults are now translated.
- When adding new layers and groups, the name was always hardcoded to
  "GP_Layer" and "GP_Group" because the operators' properties for the
  names defaulted to that, and prop defaults cannot be translated.
  Instead, make them default to a null string, but choose an
  appropriate name when executing the op. This name is chosen by
  unique_layer_name() and unique_layer_group_name(), whose defaults
  are now translated.

Pull Request: https://projects.blender.org/blender/blender/pulls/112930
2023-10-05 10:51:31 +02:00
Campbell Barton
c1ee3f9759 UI: correct names for sequencer modifiers
The commit that de-duplicated arrays [0] changed the user visible names
since the names didn't match exactly.

[0]: 9f06aec32f
2023-10-05 15:03:31 +11:00
Campbell Barton
2cf8c7ecf4 Docs: note why the wait cursor isn't set for the startup file 2023-10-05 14:56:29 +11:00
Campbell Barton
9d20632925 Cleanup: ensure trailing newline, delete trailing space 2023-10-05 13:57:14 +11:00
Campbell Barton
3859a08704 Cleanup: use the name 'ot' for wmOperatorType for unused arguments 2023-10-05 13:55:35 +11:00
Campbell Barton
9d4dc5376c Fix #112377: Edit Source missing info in the status bar
Reports from the internal operator weren't forwarded to the Python
operator, they were printed in the console instead.

Resolve by moving the operator to C++, use a utility function
to launch the external editor instead of an operator.
2023-10-05 13:09:47 +11:00
Campbell Barton
c9130e38e3 Cleanup: spelling in comments 2023-10-05 13:07:58 +11:00
Campbell Barton
0e1eff96e2 Cleanup: use exec/invoke suffix for operator callbacks 2023-10-05 12:57:31 +11:00
Campbell Barton
291e54abfb Fix building WITH_PYTHON=OFF 2023-10-05 12:57:29 +11:00
Germano Cavalcante
d6b2b5d0c5 Fix #112978: MacOS no longer has a path associated with the window
The problem was introduced in 636f3697ee

MacOS has a different way of handling the title.

In this OS the directory is searched and taken from the title string
which is then formatted.

This limits the title format and makes it prone to errors.

This commit makes the code more generic by splitting each component of
the title beforehand and allowing the associated directory to be informed
with `GHOST_SetTitle`.
2023-10-04 21:23:38 -03:00
Brecht Van Lommel
6f6fd99dbb Fix I/O debug message printed without debugging enabled 2023-10-04 21:30:41 +02:00
Harley Acheson
af91b3dd72 Cleanup: Make format
Just formatting changes from Make Format
2023-10-04 12:12:31 -07:00
ChengduLittleA
6d64c6dcd7 UI: Recognize CJK punctuation when selecting text
Add frequently-used Chinese, Japanese, Korean special character
delimiters (punctuation, quote characters, brackets, etc) to aid the
selection of character segments in text operations.

Pull Request: https://projects.blender.org/blender/blender/pulls/112852
2023-10-04 21:08:13 +02:00
Richard Antalik
dcf2c11d5e Fix build warning in previous commit 2023-10-04 19:44:14 +02:00
Richard Antalik
1b59571f6b Fix VSE retiming usability issues
Rename Retime Strips -> Toggle Retiming Keys
Gray out items in retiming menu instead of hiding
Remove selection operators from retiming menu
Gray out items in select menu when retiming
Prevent selecting keys, if overlay is disabled
Add show retiming keys toggle to sidebar time panel

ref https://projects.blender.org/blender/blender/issues/112343

Pull Request: https://projects.blender.org/blender/blender/pulls/113211
2023-10-04 19:27:28 +02:00
Vasilis-Milios
6d1c5790d5 Fix #113194: show the single value for sockets of type field
Pull Request: https://projects.blender.org/blender/blender/pulls/113244
2023-10-04 19:21:07 +02:00
Sergey Sharybin
92647bdbdd Fix light linking state being lost on collection copy and duplicate
This preserves the light linking state when collection is copied manually
via the copy-paste or duplicate functionality, but also should fix the
problem of lost light linking state when adding a collection override.

Pull Request: https://projects.blender.org/blender/blender/pulls/113243
2023-10-04 18:10:09 +02:00
Damien Picard
1fa7ba125c I18n: translate bones' 'Move to Collection' operator menu.
Several items are untranslated in the 'Move to Collection' operator
menu (the bone collections one, `ARMATURE_OT_move_to_collection`).
This is because it uses custom callback to allow the menu content
to be dynamically generated.

Because of this, some labels have to be translated manually using
`CTX_IFACE_()`. The translation context is "Operator" because these
messages come from an operator.

On the other hand, the destination collections themselves should not
have their name translated since they are data. The property now uses
the `PROP_ENUM_NO_TRANSLATE` flag for this.

PR: https://projects.blender.org/blender/blender/pulls/113224.
2023-10-04 16:59:57 +02:00
Bastien Montagne
2d2c7457cf Fix #112548: Assert in object parenting liboverride code.
Dummy mistake in commit(s) a few months ago that fixed/improved handling
of parenting between objects in liboverride context, trying to access an
Enum propoerty as an int one...

This will have to be backported to 3.6LTS as well.
2023-10-04 14:43:42 +02:00
Bastien Montagne
c820f9b85c Fix #112649: Crash loading early 2.80 blend file without a scene collection.
Caused by 23835a393c, which removed entirely the transitive
`SceneCollection` struct and associated versioning code. This was used
in very early 2.80 development period (up to 2.80 sub 14 apparently)
instead of the current 'master collection'.

The purpose of this commit is only to fix the crash, not to restore
the support for this old, deprecated and never-released type of data.
2023-10-04 12:42:53 +02:00
Peng Yan
dcb2c0bdf6 BMesh: remove redundant calculation from BMesh bisect
Besides being a redundant calculation,
reducing stack memory usage is generally worthwhile.

Ref !113153.
2023-10-04 15:25:07 +11:00
Colin Basnett
46647ed911 Fix typo in documentation for BMVertSeq.new
Ref !113190.
2023-10-04 15:13:06 +11:00
Campbell Barton
30a580bf30 Fix failure to remove temp-dir when initializing GPU backend fails
Call WM_exit() instead of exit() cleanup functions run.
2023-10-04 11:41:59 +11:00
Campbell Barton
f82e520d22 Cleanup: spelling in comments 2023-10-04 10:31:52 +11:00
Harley Acheson
e44f500be8 Fix #102591: Improvements to Context Menu Path Operators
Improvements to `ui_but_menu_add_path_operators` so that it properly
differentiates between files and directories even if the filepath is
not slash terminated. It will also not add the operators to the menu
if the filepath does not exist.

---

Right-clicking on a pathname input we get a context menu that might contain "Open File Externally" and/or "Open Location Externally".  But the first problem is that it does not check if this location exists, and we do have times where the paths do not exist yet.  This PR makes this function a bool so that can return false if the files do not exist.

The second problem is that the function does not properly differentiate between a file path and directory path. For a directory path that is not slash terminated it will assume it is a file path.  This PR actually checks the path (BLI_is_dir) to see if it really is a directory path.

Pull Request: https://projects.blender.org/blender/blender/pulls/113216
2023-10-03 18:44:56 +02:00
Damien Picard
b05db089af I18n: translate node panel titles
Nodes recently gained the ability to group inputs into collapsible
panels. These were untranslated, so this commit:
- Adds the appropriate regex to extract node panels defined with
  the `add_panel()` callback.
- Adds the `IFACE()` translation macro to the drawing code for the
  nodes, as well as the properties.

Pull Request: https://projects.blender.org/blender/blender/pulls/112968
2023-10-03 18:24:19 +02:00
Damien Picard
52fcd5fdfd I18n: extract and disambiguate a few messages
Disambiguate:
- Rename "Near" to "Proximity" as a particle event type, because using
  an adjective in this context is inconsistent and sounds
  strange (even in English IMO).

Extract:
- "Skip" (Geometry nodes Simulation node output socket)
- "Bake" (Directory path to geometry nodes bake files in the modifier
  UI)
- " (Recovered)" (File information in title bar)

Pull Request: https://projects.blender.org/blender/blender/pulls/112974
2023-10-03 18:21:03 +02:00
Marcos Perez
5c76c7bf84 Fix: #113084 VSE equalizer stutters when any strip is animated
Only update equalizer data, when sound is tagged to be recalculated.

Co-authored-by: menda <alguien@aqui.es>
Pull Request: https://projects.blender.org/blender/blender/pulls/113156
2023-10-03 18:13:24 +02:00
Lukas Tönne
050c081784 Fix #113210: Custom socket declarations require idname reference
This was removed accidentally. Custom socket declarations require the
idname reference to check for matching node group sockets.

Pull Request: https://projects.blender.org/blender/blender/pulls/113214
2023-10-03 18:09:17 +02:00
Sergey Sharybin
fff74145f1 Fix #113186: The Render Result attribute "has_data" is always False
Caused by d579ac2b3f

This change restores the behavior of the flag to how it was prior to
the refactor which used ImBuf for storage in the RenderResult.

This flag still has issues with configurations when there are multiple
scenes in the .blend file, and that it is only "valid" when the image
is actually displayed. However, these limitations and quirks already
existed prior to the refactor commit.

Pull Request: https://projects.blender.org/blender/blender/pulls/113199
2023-10-03 17:09:04 +02:00
Brecht Van Lommel
8562cecf1b Fix #112991: crash switching from Hydra Storm viewport to other renderer
The viewport render engine was freed outside the DRW OpenGL context, which
resulted in Storm deleting a VAO from another OpenGL context.
2023-10-03 16:12:45 +02:00
Germano Cavalcante
586ffcd669 Fix 'Automatic Constraint' appearing in statusbar although not supported 2023-10-03 11:10:22 -03:00
Lukas Tönne
71732a9600 Fix #113014: Improved sorting to keep node group outputs above inputs
The position validation when manipulating node group items now includes
outputs..inputs order in addition to sockets..panels order. The method
for finding a valid position has been simplified, it's just a single
iteration of insertion sort.

Versioning has been added to ensure files from 4.0 alpha with
potentially unsorted sockets get re-sorted. This uses `std::stable_sort`
so that sockets keep their relative order apart from the input/output
grouping.

Pull Request: https://projects.blender.org/blender/blender/pulls/113060
2023-10-03 12:18:36 +02:00
Lukas Tönne
a06403cd3b Nodes: Include rotation socket type in anonymous attribute inferencing
Rotation socket is missing in `is_possible_field_socket` for detecting socket types that can be fields.

Pull Request: https://projects.blender.org/blender/blender/pulls/113197
2023-10-03 11:39:47 +02:00
Jacques Lucke
48fe3aab36 UI: start search in menu when pressing spacebar
This way one can easily access the item that has been searched for most
recently if `Sort by Most Recent` is enabled in the user preferences.

Pull Request: https://projects.blender.org/blender/blender/pulls/113144
2023-10-03 11:39:00 +02:00
Sybren A. Stüvel
3d6713e086 Fix #113178: .dae file with collection-less armature crashes on import
If the DAE file was written with something other than Blender 4.0, it
doesn't have the bone collections info. That resulted in a nullptr, which
is now handled properly.
2023-10-03 10:34:44 +02:00
Campbell Barton
41d62f36d5 Fix uninitialized variable use accessing the screen size under Wayland
It's possible for there to be no outputs under Wayland
(when unplugging monitors for e.g.) so this must be accounted for.

Also avoid calculating the window position when the GHOST backend
doesn't support window positions (which is the case for Wayland).

Add checks for the SDL backend too, where accessing the
screen & desktop size may fail.
2023-10-03 15:40:58 +11:00
Campbell Barton
dea7a94e0c Cleanup: remove redundant call to GHOST_GetMainDisplayDimensions
A maximum window size was calculated but not used
(dating back to the first commit).
2023-10-03 15:09:53 +11:00
Campbell Barton
26bb029ad8 Fix #113154: Hang double-clicking on UI elements outside a text field
The logic to handle word selection from double clicking ran even when
the event wasn't inside the button. This would pass an invalid position
to BLI_str_cursor_step_bounds_utf8 which hung.

Resolve by limiting word-selection to when the event is inside
the text editing field as well as clamping the position to ensure
it's within the allowed range.
2023-10-03 13:57:33 +11:00
Campbell Barton
779239f5e1 Cleanup: spelling in comments 2023-10-03 11:16:55 +11:00
Campbell Barton
69d18c6063 Cleanup: quiet unknown escape sequence warning 2023-10-03 11:08:49 +11:00
Harley Acheson
68bde462e5 Cleanup: Make format
Formatting changes resulting from Make Format
2023-10-02 17:06:55 -07:00
Pratik Borhade
fcd6b6f4f6 Fix #112630: Skip grave and acute quotations when selecting
Treat grave and acute accent characters as delimiters. Allows selection
of words in the same way as if surrounded by double and single
quotation marks.

Pull Request: https://projects.blender.org/blender/blender/pulls/112652
2023-10-03 01:56:59 +02:00
Harley Acheson
e196f0a874 Fix #113044: Reset Fonts When Loading New Files
Close user-loaded fonts when loading a new blend file so that the
global_font slots are not taken up by the old file's fonts.

Pull Request: https://projects.blender.org/blender/blender/pulls/113104
2023-10-03 01:21:03 +02:00
Germano Cavalcante
ba3f8e957f Cleanup: fix unused variable warning
Caused by e7ba91a6f3
2023-10-02 18:40:42 -03:00
Hans Goudey
85580c5835 Fix #113142: Sculpt fairing operators don't update normals
Tagging the PBVH nodes isn't enough, each vertex has to be tagged too.
2023-10-02 17:36:44 -04:00
Germano Cavalcante
e7ba91a6f3 Fix #113130: Versioning error in snap type in animation editors
Caused by fb556c75df

The ideal would be to increase the version file, but this would make
the versioning code a bit messy, and it was a recent error
(it shouldn't affect many users).
2023-10-02 17:26:07 -03:00
Germano Cavalcante
c706de891c Fix snap to endpoint being represented as loose point
Since different symbols are implemented, there is a distinction between
endpoint and loose point, which was partially missing in the snap code
for Mesh.
2023-10-02 16:33:05 -03:00