]> git.immae.eu Git - github/fretlink/time-picker.git/commitdiff
Add keydown function on header input
authorshoaibbhimani <shoaibbhimani1392@gmail.com>
Thu, 24 Aug 2017 11:11:19 +0000 (16:41 +0530)
committershoaibbhimani <shoaibbhimani1392@gmail.com>
Thu, 24 Aug 2017 11:11:19 +0000 (16:41 +0530)
src/Header.jsx
src/Panel.jsx
src/TimePicker.jsx

index 91e8549e14664555290a905a8b0102cddd27f808..f6dd24157ae34e04fb43d66ff8e34475d4ae48c0 100644 (file)
@@ -22,6 +22,7 @@ class Header extends Component {
     allowEmpty: PropTypes.bool,
     defaultOpenValue: PropTypes.object,
     currentSelectPanel: PropTypes.string,
+    onKeyDown: PropTypes.func,
   };
 
   constructor(props) {
@@ -122,9 +123,12 @@ class Header extends Component {
   }
 
   onKeyDown = (e) => {
+    const { onEsc, onKeyDown } = this.props;
     if (e.keyCode === 27) {
-      this.props.onEsc();
+      onEsc();
     }
+
+    onKeyDown(e);
   }
 
   onClear = () => {
index 1953ad497a0a69309251846e3c25980bd8b57741..8a6c872e7e73784aeeace67fe3d4bca09384b57b 100644 (file)
@@ -40,6 +40,7 @@ class Panel extends Component {
     onClear: PropTypes.func,
     use12Hours: PropTypes.bool,
     addon: PropTypes.func,
+    onKeyDown: PropTypes.func,
   };
 
   static defaultProps = {
@@ -52,6 +53,7 @@ class Panel extends Component {
     defaultOpenValue: moment(),
     use12Hours: false,
     addon: noop,
+    onKeyDown: noop,
   };
 
   constructor(props) {
@@ -89,7 +91,7 @@ class Panel extends Component {
     const {
       prefixCls, className, placeholder, disabledHours, disabledMinutes,
       disabledSeconds, hideDisabledOptions, allowEmpty, showHour, showMinute, showSecond,
-      format, defaultOpenValue, clearText, onEsc, addon, use12Hours, onClear,
+      format, defaultOpenValue, clearText, onEsc, addon, use12Hours, onClear, onKeyDown,
     } = this.props;
     const {
       value, currentSelectPanel,
@@ -122,6 +124,7 @@ class Panel extends Component {
           onChange={this.onChange}
           onClear={onClear}
           allowEmpty={allowEmpty}
+          onKeyDown={onKeyDown}
         />
         <Combobox
           prefixCls={prefixCls}
index 2c6a1f16ea69f5825fd7b7f30963ea308a3528ca..0b985dd41b052498bc0e0a69fa436c65d02dcc29 100644 (file)
@@ -46,6 +46,7 @@ export default class Picker extends Component {
     name: PropTypes.string,
     autoComplete: PropTypes.string,
     use12Hours: PropTypes.bool,
+    onKeyDown: PropTypes.func,
   };
 
   static defaultProps = {
@@ -71,6 +72,7 @@ export default class Picker extends Component {
     onClose: noop,
     addon: noop,
     use12Hours: false,
+    onKeyDown: noop,
   };
 
   constructor(props) {
@@ -157,7 +159,7 @@ export default class Picker extends Component {
       prefixCls, placeholder, disabledHours,
       disabledMinutes, disabledSeconds, hideDisabledOptions,
       allowEmpty, showHour, showMinute, showSecond, defaultOpenValue, clearText,
-      addon, use12Hours,
+      addon, use12Hours, onKeyDown,
     } = this.props;
     return (
       <Panel
@@ -181,6 +183,7 @@ export default class Picker extends Component {
         hideDisabledOptions={hideDisabledOptions}
         use12Hours={use12Hours}
         addon={addon}
+        onKeyDown={onKeyDown}
       />
     );
   }