Try variable resizing
parent
30027a6556
commit
83df79aab9
|
@ -77,7 +77,8 @@ export default class RoomSublist2 extends React.Component<IProps, IState> {
|
||||||
};
|
};
|
||||||
|
|
||||||
private onResize = (e: React.MouseEvent, data: ResizeCallbackData) => {
|
private onResize = (e: React.MouseEvent, data: ResizeCallbackData) => {
|
||||||
const tileDiff = e.movementY < 0 ? -1 : +1;
|
const direction = e.movementY < 0 ? -1 : +1;
|
||||||
|
const tileDiff = this.props.layout.pixelsToTiles(Math.abs(e.movementY)) * direction;
|
||||||
this.props.layout.visibleTiles += tileDiff;
|
this.props.layout.visibleTiles += tileDiff;
|
||||||
this.forceUpdate(); // because the layout doesn't trigger a re-render
|
this.forceUpdate(); // because the layout doesn't trigger a re-render
|
||||||
};
|
};
|
||||||
|
@ -254,7 +255,7 @@ export default class RoomSublist2 extends React.Component<IProps, IState> {
|
||||||
axis="y"
|
axis="y"
|
||||||
minConstraints={[-1, minTilesPx]}
|
minConstraints={[-1, minTilesPx]}
|
||||||
maxConstraints={[-1, maxTilesPx]}
|
maxConstraints={[-1, maxTilesPx]}
|
||||||
draggableOpts={{grid: [-1, layout.tileHeight]}}
|
draggableOpts={{grid: [-1, 1]}}
|
||||||
resizeHandles={handles}
|
resizeHandles={handles}
|
||||||
onResize={this.onResize}
|
onResize={this.onResize}
|
||||||
className="mx_RoomSublist2_resizeBox"
|
className="mx_RoomSublist2_resizeBox"
|
||||||
|
|
|
@ -57,6 +57,10 @@ export class ListLayout {
|
||||||
return n * this.tileHeight;
|
return n * this.tileHeight;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public pixelsToTiles(px: number): number {
|
||||||
|
return px / this.tileHeight;
|
||||||
|
}
|
||||||
|
|
||||||
private serialize(): ISerializedListLayout {
|
private serialize(): ISerializedListLayout {
|
||||||
return {
|
return {
|
||||||
numTiles: this.visibleTiles,
|
numTiles: this.visibleTiles,
|
||||||
|
|
Loading…
Reference in New Issue