undo on bones in pose mode selects all channels in graph editor #53544

Closed
opened 2017-12-12 07:10:54 +01:00 by Stanislav Ovcharov · 35 comments

System Information
WIn 8.1, gtx 970m

Blender Version
Broken: 2.79 e92f235283

Short description of error
undo on bones in pose mode selects all channels in graph editor
tested on 2.76-2.79 on several machines

Exact steps for others to reproduce the error
1 Add a single bone or rigifay metarig or any other rig.
2 Go to the Pose mode.
3 Insert any keyframes on 1st frame
4 Go any other frame.
5 move\rotate\scale bone
6 Insert keyframes
7 Go to the graph editor and toggle on Show_only_selected option. Also toggle on - only_selected_curves_keyframes
8 Select any channel in the list. Let it will be - Loc X or whatever. So the only Loc X f-curve highlighted. Only Loc X keyframes are visible.
9 move any keyframe on f-curve.
10 Press ctrl+Z for Undo.
11 Now, after undo all existing channels become selected so you can see all the f-curves with all keyframes on them. Which is incorrect.

There is no such problem in object mode. If you repeat these steps on cube then after undoing in graph editor the only selected channel stay highlited with only that f-curve keyframes visible.

**System Information** WIn 8.1, gtx 970m **Blender Version** Broken: 2.79 e92f235283 **Short description of error** undo on bones in pose mode selects all channels in graph editor tested on 2.76-2.79 on several machines **Exact steps for others to reproduce the error** 1 Add a single bone or rigifay metarig or any other rig. 2 Go to the Pose mode. 3 Insert any keyframes on 1st frame 4 Go any other frame. 5 move\rotate\scale bone 6 Insert keyframes 7 Go to the graph editor and toggle on Show_only_selected option. Also toggle on - only_selected_curves_keyframes 8 Select any channel in the list. Let it will be - Loc X or whatever. So the only Loc X f-curve highlighted. Only Loc X keyframes are visible. 9 move any keyframe on f-curve. 10 Press ctrl+Z for Undo. 11 Now, after undo all existing channels become selected so you can see all the f-curves with all keyframes on them. Which is incorrect. There is no such problem in object mode. If you repeat these steps on cube then after undoing in graph editor the only selected channel stay highlited with only that f-curve keyframes visible.

Added subscriber: @StanislavOvcharov

Added subscriber: @StanislavOvcharov

#54361 was marked as duplicate of this issue

#54361 was marked as duplicate of this issue
Stanislav Ovcharov changed title from undo on bones in pose mode selects all channels in grapf editor to undo on bones in pose mode selects all channels in graph editor 2017-12-12 07:11:53 +01:00
Joshua Leung was assigned by Stanislav Ovcharov 2017-12-14 17:27:17 +01:00

Added subscriber: @JoshuaLeung

Added subscriber: @JoshuaLeung

Added subscriber: @Sergey

Added subscriber: @Sergey

@StanislavOvcharov, this always helps a lot to attach simple .blend file, with as few steps as needed to reproduce the issue.

@StanislavOvcharov, this always helps a lot to attach simple .blend file, with as few steps as needed to reproduce the issue.

In #53544#475541, @Sergey wrote:
@StanislavOvcharov, this always helps a lot to attach simple .blend file, with as few steps as needed to reproduce the issue.

did it - undo_grapheditor_bug.blend

  1. open it, move selected keyframe, press ctrl+z (all channeels become selected)
  2. select cube. move selected keyframe, press ctrl+z (only selected channel still selected)
> In #53544#475541, @Sergey wrote: > @StanislavOvcharov, this always helps a lot to attach simple .blend file, with as few steps as needed to reproduce the issue. did it - [undo_grapheditor_bug.blend](https://archive.blender.org/developer/F1442000/undo_grapheditor_bug.blend) 1. open it, move selected keyframe, press ctrl+z (all channeels become selected) 2. select cube. move selected keyframe, press ctrl+z (only selected channel still selected)

this is kind of really annoying thing when you animate character) Is it impossible to fix it in 2.79b?

this is kind of really annoying thing when you animate character) Is it impossible to fix it in 2.79b?

This is not a regression which is unlikely to have trivial fix. Such changes are not ending up in a corrective releases.

This is not a regression which is unlikely to have trivial fix. Such changes are not ending up in a corrective releases.

Added subscriber: @ideasman42

Added subscriber: @ideasman42

Currently working on undo code, if this is merged soon I can check on this issue.

Currently working on undo code, if this is merged soon I can check on this issue.

This comment was removed by @StanislavOvcharov

*This comment was removed by @StanislavOvcharov*

This comment was removed by @StanislavOvcharov

*This comment was removed by @StanislavOvcharov*
Member

Added subscribers: @angavrilov, @pablovazquez

Added subscribers: @angavrilov, @pablovazquez
Member

Can confirm this is still happening in 2.80 Alpha.

Is it part of the undo system or maybe something for @angavrilov to look at? It's pretty straight forward to reproduce just select a channel in the dopesheet, change a pose, undo, all channels get selected.

Can confirm this is still happening in 2.80 Alpha. Is it part of the undo system or maybe something for @angavrilov to look at? It's pretty straight forward to reproduce just select a channel in the dopesheet, change a pose, undo, all channels get selected.

In #53544#490445, @ideasman42 wrote:
Currently working on undo code, if this is merged soon I can check on this issue.

@ideasman42 Do you think it is not so easy to fix or it has low priority?

> In #53544#490445, @ideasman42 wrote: > Currently working on undo code, if this is merged soon I can check on this issue. @ideasman42 Do you think it is not so easy to fix or it has low priority?

This issue was referenced by 642c315bae

This issue was referenced by 642c315bae13ccb418ec767e6f29ca4e450dde5d

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'

@ideasman42 It doesn't work in 2.80 (sub 37), branch: blender2.8, commit date: 2018-12-11 23:04, hash: ff108aac63 Still all channels get selected after undo in pose mode

@ideasman42 It doesn't work in 2.80 (sub 37), branch: blender2.8, commit date: 2018-12-11 23:04, hash: ff108aac631 Still all channels get selected after undo in pose mode

@StanislavOvcharov tested again and cant redo the with a single pose bone in the default startup, timeline switched into graph editor.

@StanislavOvcharov tested again and cant redo the with a single pose bone in the default startup, timeline switched into graph editor.

@ideasman42 Here is a gif - Undo_GE_bug.gif

@ideasman42 Here is a gif - ![Undo_GE_bug.gif](https://archive.blender.org/developer/F5928208/Undo_GE_bug.gif)

Changed status from 'Resolved' to: 'Open'

Changed status from 'Resolved' to: 'Open'

@StanislavOvcharov, strange, I can't redo this bug, however I can redo it when running undo from the dope-sheet.

Re-opening.

@StanislavOvcharov, strange, I can't redo this bug, however I can redo it when running undo from the dope-sheet. Re-opening.

@ideasman42 on today build (2.80 (sub 37), branch: blender2.8, commit date: 2018-12-16 23:25, hash: 9149e89421) it works as yours - it works fine in graph editor and in dope-sheet it selects all channels after undo. But it is not so important as in graph editor. So, as for me bug is closed)

@ideasman42 on today build (2.80 (sub 37), branch: blender2.8, commit date: 2018-12-16 23:25, hash: 9149e894210) it works as yours - it works fine in graph editor and in dope-sheet it selects all channels after undo. But it is not so important as in graph editor. So, as for me bug is closed)

@StanislavOvcharov this is caused by the timeline being visible (explains why I couldn't redo it with just the graph editor)

@StanislavOvcharov this is caused by the timeline being visible (explains why I couldn't redo it with just the graph editor)

Update, this feature is broken by design.

This is not a matter of fixing a mistake in the code - Blender allows users to change the selection of the channels to make them out of sync with the pose bones ~ then refreshes these values on reload/undo/joining-area-regions.


A possible solution could be to leave the channel selection as-is when syncing on window refresh and file reload. So only explicit selection actions would touch channel selection. It will resolve the issue reported here but think it's likely to make the bones and channels get out of sync in other cases.

Update, this feature is broken by design. This is not a matter of fixing a mistake in the code - Blender allows users to change the selection of the channels to make them out of sync with the pose bones ~ then refreshes these values on reload/undo/joining-area-regions. ---- A possible solution could be to leave the channel selection as-is when syncing on window refresh and file reload. So only explicit selection actions would touch channel selection. It will resolve the issue reported here but think it's likely to make the bones and channels get out of sync in other cases.

This issue was referenced by 7721886ead

This issue was referenced by 7721886eadffc3eb07ac2d8c19cf5f4d12cb3f1c

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'

Changed status from 'Resolved' to: 'Open'

Changed status from 'Resolved' to: 'Open'

@ideasman42 Ok, if I understand right then it depends on additional editors enabled (dopesheet, timeline) If you have graph editor only visible then undo works fine, if you have graph editor + timeline visible undo selects all channels.
But
If I create new file with one bone and animate it then it works as you said.
But I have another file with rigged character which I start to animate. There are graph editor and timeline visible at the same time and undo in graph editor does not selects all channels after undo. That is why I thought that "bug" is fixed. So I'am a little bit confused now about whats going on :) file is here - challenge_melvin_b280+.blend
But in this file some other problem is occured. While was testing that undo thing with channels seems that many undo in a row caused shading problem (But I'm not sure what exactly it cause, can't redo) All of a sudden in solid shading mode something like 'fade geometry' from overlays menu enables. But 'fade geometry' item disappears from overlays menu and there is no fast way to switch that silhouette off. Looks like switching overlays on\off for a few times solves that 'silhouette' problem, brings shading and fade geometry item back (But I'm not sure 100% again about the way I did it, it happened for a first time)

@ideasman42 Ok, if I understand right then it depends on additional editors enabled (dopesheet, timeline) If you have graph editor only visible then undo works fine, if you have graph editor + timeline visible undo selects all channels. But If I create new file with one bone and animate it then it works as you said. But I have another file with rigged character which I start to animate. There are graph editor and timeline visible at the same time and undo in graph editor does not selects all channels after undo. That is why I thought that "bug" is fixed. So I'am a little bit confused now about whats going on :) file is here - [challenge_melvin_b280+.blend](https://archive.blender.org/developer/F5991633/challenge_melvin_b280_.blend) But in this file some other problem is occured. While was testing that undo thing with channels seems that many undo in a row caused shading problem (But I'm not sure what exactly it cause, can't redo) All of a sudden in solid shading mode something like 'fade geometry' from overlays menu enables. But 'fade geometry' item disappears from overlays menu and there is no fast way to switch that silhouette off. Looks like switching overlays on\off for a few times solves that 'silhouette' problem, brings shading and fade geometry item back (But I'm not sure 100% again about the way I did it, it happened for a first time)

Closed as duplicate of #54361

Closed as duplicate of #54361

Changed status from 'Duplicate' to: 'Open'

Changed status from 'Duplicate' to: 'Open'

Added subscriber: @ChristopheSEUX-4

Added subscriber: @ChristopheSEUX-4

Note that this change may impact this report: c598ad9ac6

Note that this change may impact this report: c598ad9ac6

In #53544#659367, @ideasman42 wrote:
Note that this change may impact this report: c598ad9ac6

Yes. It looks like the problem is solved, have checked it in 2.80.57. Thanks!

> In #53544#659367, @ideasman42 wrote: > Note that this change may impact this report: c598ad9ac6 Yes. It looks like the problem is solved, have checked it in 2.80.57. Thanks!

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#53544
No description provided.