Skip to content

Commit 103fd97

Browse files
committed
bugfix when dragging header
1 parent dddf990 commit 103fd97

File tree

9 files changed

+145
-48
lines changed

9 files changed

+145
-48
lines changed

build/dist/react-calendar-timeline.js

Lines changed: 102 additions & 26 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/dist/react-calendar-timeline.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/dist/react-calendar-timeline.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build/dist/react-calendar-timeline.min.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

modules/lib/Timeline.js

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -549,7 +549,17 @@ var ReactCalendarTimeline = function (_Component) {
549549
}, {
550550
key: 'handleMouseDown',
551551
value: function handleMouseDown(e) {
552-
this.setState({ isDragging: true, dragStartPosition: e.pageX });
552+
var topOffset = this.state.topOffset;
553+
var pageY = e.pageY;
554+
var _props3 = this.props;
555+
var headerLabelGroupHeight = _props3.headerLabelGroupHeight;
556+
var headerLabelHeight = _props3.headerLabelHeight;
557+
558+
var headerHeight = headerLabelGroupHeight + headerLabelHeight;
559+
560+
if (pageY - topOffset > headerHeight) {
561+
this.setState({ isDragging: true, dragStartPosition: e.pageX });
562+
}
553563
}
554564
}, {
555565
key: 'handleMouseMove',
@@ -685,14 +695,14 @@ var ReactCalendarTimeline = function (_Component) {
685695
}, {
686696
key: 'stackItems',
687697
value: function stackItems(items, groups, canvasTimeStart, visibleTimeStart, visibleTimeEnd, width) {
688-
var _props3 = this.props;
689-
var keys = _props3.keys;
690-
var dragSnap = _props3.dragSnap;
691-
var lineHeight = _props3.lineHeight;
692-
var headerLabelGroupHeight = _props3.headerLabelGroupHeight;
693-
var headerLabelHeight = _props3.headerLabelHeight;
694-
var stackItems = _props3.stackItems;
695-
var itemHeightRatio = _props3.itemHeightRatio;
698+
var _props4 = this.props;
699+
var keys = _props4.keys;
700+
var dragSnap = _props4.dragSnap;
701+
var lineHeight = _props4.lineHeight;
702+
var headerLabelGroupHeight = _props4.headerLabelGroupHeight;
703+
var headerLabelHeight = _props4.headerLabelHeight;
704+
var stackItems = _props4.stackItems;
705+
var itemHeightRatio = _props4.itemHeightRatio;
696706
var _state2 = this.state;
697707
var draggingItem = _state2.draggingItem;
698708
var dragTime = _state2.dragTime;
@@ -788,11 +798,11 @@ var ReactCalendarTimeline = function (_Component) {
788798
}, {
789799
key: 'render',
790800
value: function render() {
791-
var _props4 = this.props;
792-
var items = _props4.items;
793-
var groups = _props4.groups;
794-
var headerLabelGroupHeight = _props4.headerLabelGroupHeight;
795-
var headerLabelHeight = _props4.headerLabelHeight;
801+
var _props5 = this.props;
802+
var items = _props5.items;
803+
var groups = _props5.groups;
804+
var headerLabelGroupHeight = _props5.headerLabelGroupHeight;
805+
var headerLabelHeight = _props5.headerLabelHeight;
796806
var _state4 = this.state;
797807
var draggingItem = _state4.draggingItem;
798808
var resizingItem = _state4.resizingItem;

modules/lib/layout/Header.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,9 @@ var Header = function (_Component) {
126126
var time = _e$target$dataset.time;
127127
var unit = _e$target$dataset.unit;
128128

129-
this.props.showPeriod((0, _moment2.default)(time - 0), unit);
129+
if (time && unit) {
130+
this.props.showPeriod((0, _moment2.default)(time - 0), unit);
131+
}
130132
}
131133
}, {
132134
key: 'touchStart',

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "react-calendar-timeline",
3-
"version": "0.7.2",
3+
"version": "0.7.3",
44
"description": "react calendar timeline",
55
"main": "modules/index.js",
66
"scripts": {

src/lib/Timeline.jsx

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -430,7 +430,14 @@ export default class ReactCalendarTimeline extends Component {
430430
}
431431

432432
handleMouseDown (e) {
433-
this.setState({isDragging: true, dragStartPosition: e.pageX})
433+
const { topOffset } = this.state
434+
const { pageY } = e
435+
const { headerLabelGroupHeight, headerLabelHeight } = this.props
436+
const headerHeight = headerLabelGroupHeight + headerLabelHeight
437+
438+
if (pageY - topOffset > headerHeight) {
439+
this.setState({isDragging: true, dragStartPosition: e.pageX})
440+
}
434441
}
435442

436443
handleMouseMove (e) {

src/lib/layout/Header.jsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,9 @@ export default class Header extends Component {
8585

8686
periodClick (e) {
8787
const {time, unit} = e.target.dataset
88-
this.props.showPeriod(moment(time - 0), unit)
88+
if (time && unit) {
89+
this.props.showPeriod(moment(time - 0), unit)
90+
}
8991
}
9092

9193
touchStart (e) {

0 commit comments

Comments
 (0)