]> cat aescling's git repositories - mastodon.git/commitdiff
Make columns-area unscrollable when modal opened (#6241)
authorneetshin <neetshin@neetsh.in>
Mon, 15 Jan 2018 05:51:00 +0000 (05:51 +0000)
committerEugen Rochko <eugen@zeonfederated.com>
Mon, 15 Jan 2018 05:51:00 +0000 (06:51 +0100)
* Add aria-autocomplete='list' in Textaria

ref: https://www.w3.org/TR/wai-aria-1.1/#aria-autocomplete

* Make detect empty string brefore assign upload description

* Change code elements in keyboard-shortcuts component to kbd

* Add validation for onMuteNotifications

* Make columns-area unscrollable when modal opend

* Make columns-area unscrollable when modal opened

app/javascript/mastodon/features/ui/components/columns_area.js
app/javascript/mastodon/features/ui/containers/columns_area_container.js
app/javascript/styles/mastodon/components.scss

index f00b74dfdcdb701c43ae36c1791d1ee394e64fd7..a01e5a390ebf28643441a7ba44ebc3c496442680 100644 (file)
@@ -37,6 +37,7 @@ export default class ColumnsArea extends ImmutablePureComponent {
   static propTypes = {
     intl: PropTypes.object.isRequired,
     columns: ImmutablePropTypes.list.isRequired,
+    isModalOpen: PropTypes.bool.isRequired,
     singleColumn: PropTypes.bool,
     children: PropTypes.node,
   };
@@ -144,7 +145,7 @@ export default class ColumnsArea extends ImmutablePureComponent {
   }
 
   render () {
-    const { columns, children, singleColumn } = this.props;
+    const { columns, children, singleColumn, isModalOpen } = this.props;
     const { shouldAnimate } = this.state;
 
     const columnIndex = getIndex(this.context.router.history.location.pathname);
@@ -159,7 +160,7 @@ export default class ColumnsArea extends ImmutablePureComponent {
     }
 
     return (
-      <div className='columns-area' ref={this.setRef}>
+      <div className={`columns-area ${ isModalOpen ? 'unscrollable' : '' }`} ref={this.setRef}>
         {columns.map(column => {
           const params = column.get('params', null) === null ? null : column.get('params').toJS();
 
index 95f95618b2ca70d13c242a27e42ff28f40d61609..f3e82a8ac27aaa6297c1f834374d089f6b4d707f 100644 (file)
@@ -3,6 +3,7 @@ import ColumnsArea from '../components/columns_area';
 
 const mapStateToProps = state => ({
   columns: state.getIn(['settings', 'columns']),
+  isModalOpen: !!state.get('modal').modalType,
 });
 
 export default connect(mapStateToProps, null, null, { withRef: true })(ColumnsArea);
index e8adceb66817d7b3f475733762bb1e5774a9469f..dbb277af9653baa9405e5443b5666572aa549fce 100644 (file)
   justify-content: flex-start;
   overflow-x: auto;
   position: relative;
+
+  &.unscrollable {
+    overflow-x: hidden;
+  }
 }
 
 @media screen and (min-width: 360px) {