From ef93ae379249515818f8038715f21c8d8bc00197 Mon Sep 17 00:00:00 2001 From: Qstick Date: Sun, 20 May 2018 01:49:41 -0400 Subject: [PATCH] Fixed: Misc UI Fixes --- frontend/src/Calendar/Day/CalendarDayConnector.js | 10 ++++++++-- frontend/src/Components/Form/SelectInput.js | 13 ++++++++++--- frontend/src/Components/Table/TablePager.css | 7 +++++++ frontend/src/Components/Table/TablePager.js | 7 +++++++ .../Interactive/InteractiveImportModalContent.js | 2 +- src/Lidarr.Api.V1/Tracks/TrackModuleWithSignalR.cs | 2 +- 6 files changed, 34 insertions(+), 7 deletions(-) diff --git a/frontend/src/Calendar/Day/CalendarDayConnector.js b/frontend/src/Calendar/Day/CalendarDayConnector.js index 467f799e7..5eb1ebf51 100644 --- a/frontend/src/Calendar/Day/CalendarDayConnector.js +++ b/frontend/src/Calendar/Day/CalendarDayConnector.js @@ -2,8 +2,8 @@ import _ from 'lodash'; import moment from 'moment'; import PropTypes from 'prop-types'; import React, { Component } from 'react'; -import { connect } from 'react-redux'; import { createSelector } from 'reselect'; +import connectSection from 'Store/connectSection'; import CalendarDay from './CalendarDay'; function createCalendarEventsConnector() { @@ -52,4 +52,10 @@ CalendarDayConnector.propTypes = { date: PropTypes.string.isRequired }; -export default connect(createMapStateToProps)(CalendarDayConnector); +export default connectSection( + createMapStateToProps, + undefined, + undefined, + undefined, + { section: 'calendar' } +)(CalendarDayConnector); diff --git a/frontend/src/Components/Form/SelectInput.js b/frontend/src/Components/Form/SelectInput.js index 79218f54f..113d50a09 100644 --- a/frontend/src/Components/Form/SelectInput.js +++ b/frontend/src/Components/Form/SelectInput.js @@ -27,7 +27,9 @@ class SelectInput extends Component { values, isDisabled, hasError, - hasWarning + hasWarning, + autoFocus, + onBlur } = this.props; return ( @@ -41,7 +43,9 @@ class SelectInput extends Component { disabled={isDisabled} name={name} value={value} + autoFocus={autoFocus} onChange={this.onChange} + onBlur={onBlur} > { values.map((option) => { @@ -76,13 +80,16 @@ SelectInput.propTypes = { isDisabled: PropTypes.bool, hasError: PropTypes.bool, hasWarning: PropTypes.bool, - onChange: PropTypes.func.isRequired + autoFocus: PropTypes.bool.isRequired, + onChange: PropTypes.func.isRequired, + onBlur: PropTypes.func }; SelectInput.defaultProps = { className: styles.select, disabledClassName: styles.isDisabled, - isDisabled: false + isDisabled: false, + autoFocus: false }; export default SelectInput; diff --git a/frontend/src/Components/Table/TablePager.css b/frontend/src/Components/Table/TablePager.css index e3fb645bd..17d300fb9 100644 --- a/frontend/src/Components/Table/TablePager.css +++ b/frontend/src/Components/Table/TablePager.css @@ -53,6 +53,13 @@ color: $disabledColor; } +.pageSelect { + composes: select from 'Components/Form/SelectInput.css'; + + padding: 0 2px; + height: 25px; +} + @media only screen and (max-width: $breakpointSmall) { .pager { flex-wrap: wrap; diff --git a/frontend/src/Components/Table/TablePager.js b/frontend/src/Components/Table/TablePager.js index e3bc10be7..3c7c5a8f1 100644 --- a/frontend/src/Components/Table/TablePager.js +++ b/frontend/src/Components/Table/TablePager.js @@ -33,6 +33,10 @@ class TablePager extends Component { this.props.onPageSelect(parseInt(page)); } + onPageSelectBlur = () => { + this.setState({ isShowingPageSelect: false }); + } + // // Render @@ -115,10 +119,13 @@ class TablePager extends Component { { isShowingPageSelect && } diff --git a/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContent.js b/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContent.js index 9469c35f5..3a2a9f862 100644 --- a/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContent.js +++ b/frontend/src/InteractiveImport/Interactive/InteractiveImportModalContent.js @@ -136,7 +136,7 @@ class InteractiveImportModalContent extends Component { onImportSelectedPress = () => { const selected = this.getSelectedIds(); - this.props.onImportSelectedPress(selected, this.state.importMode); + this.props.onImportSelectedPress(selected, this.props.importMode); } onFilterExistingFilesChange = (value) => { diff --git a/src/Lidarr.Api.V1/Tracks/TrackModuleWithSignalR.cs b/src/Lidarr.Api.V1/Tracks/TrackModuleWithSignalR.cs index 1f28b2de3..e5c3fe9c2 100644 --- a/src/Lidarr.Api.V1/Tracks/TrackModuleWithSignalR.cs +++ b/src/Lidarr.Api.V1/Tracks/TrackModuleWithSignalR.cs @@ -117,7 +117,7 @@ namespace Lidarr.Api.V1.Tracks { foreach (var track in message.TrackFile.Tracks.Value) { - BroadcastResourceChange(ModelAction.Deleted, track.Id); + BroadcastResourceChange(ModelAction.Updated, track.Id); } }