Fix T72392: Resizing Outliner and Properties editor windows makes the outliner view go up if its long enough.: Make view2d lists use V2D_KEEPOFS_X and V2D_KEEPOFS_Y to maintain top
and side of region when resizing. Also added keepofs to stack view to
keep consistent with list view.
Details
- Reviewers
- None
- Group Reviewers
User Interface
Diff Detail
- Repository
- rB Blender
- Branch
- fix_T72392_outliner_resizing (branched from master)
- Build Status
Buildable 13471 Build 13471: arc lint + arc unit
Event Timeline
Before these changes, logic of resize for lists was to move cur rect by resize difference before cur rect had been resized, then it would resize cur rect with half of the difference at top and half at bottom. I think this code was there from long ago and mostly for x resize because it would shrink to middle when width was made smaller. It seems that removing this and just setting V2D_KEEPOFS_X and V2D_KEEPOFS_Y should be enough to maintain cur rect x and y offset. Current logic is to always just resize cur rect while maintaining cur->xmin or cur->ymin if possible.
I tested outliner and other lists such as in graph editor. Resizing from left, right, top, and bottom. Also testing resizing entire window. Didn't seem to break anything, but view2d touches almost all editors. If this patch is used I'd like it to be early in the bcon process so anything that crops up can be fixed before a release.
Oops, I see this seems to have screwed up the last operator settings region in 3dview, I'll check on that when I can.
Fix hud region view2d flags being reset between V2D_COMMONVIEW_LIST and V2D_COMMONVIEW_PANELS_UI.
It was done that way to disable/reset zoom but it works to just set minzoom and maxzoom after panels init.
At first glance this might fix the long-standing behaviors in Outliner where it sometimes does not update its scrollbars properly, as reported in https://developer.blender.org/D6505