File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -32,9 +32,9 @@ function createEmptyView() {
3232function toSplitViewView ( view : IView , getHeight : ( ) => number ) : ISplitViewView {
3333 return {
3434 element : view . element ,
35- maximumSize : view . maximumWidth ,
36- minimumSize : view . minimumWidth ,
37- onDidChange : mapEvent ( view . onDidChange , widthAndHeight => widthAndHeight && widthAndHeight . width ) ,
35+ get maximumSize ( ) { return view . maximumWidth ; } ,
36+ get minimumSize ( ) { return view . minimumWidth ; } ,
37+ onDidChange : mapEvent ( view . onDidChange , e => e && e . width ) ,
3838 layout : size => view . layout ( size , getHeight ( ) )
3939 } ;
4040}
Original file line number Diff line number Diff line change @@ -425,8 +425,17 @@ export class SplitView implements IDisposable {
425425
426426 size = typeof size === 'number' ? size : item . size ;
427427 size = clamp ( size , item . view . minimumSize , item . view . maximumSize ) ;
428- item . size = size ;
429- this . relayout ( index ) ;
428+
429+ if ( this . inverseAltBehavior && index > 0 ) {
430+ // In this case, we want the view to grow or shrink both sides equally
431+ // so we just resize the "left" side by half and let `resize` do the clamping magic
432+ this . resize ( index - 1 , Math . floor ( ( item . size - size ) / 2 ) ) ;
433+ this . distributeEmptySpace ( ) ;
434+ this . layoutViews ( ) ;
435+ } else {
436+ item . size = size ;
437+ this . relayout ( index , undefined ) ;
438+ }
430439 }
431440
432441 resizeView ( index : number , size : number ) : void {
You can’t perform that action at this time.
0 commit comments