Compensate for scrollbar disappearing when media modal visible (#8100)
* Compensate for scrollbar disappearing when media modal visible Make auth pages backgrounds lighter * Fix typo
This commit is contained in:
		
					parent
					
						
							
								e7e577dd6e
							
						
					
				
			
			
				commit
				
					
						60df87f6f0
					
				
			
		
					 13 changed files with 49 additions and 35 deletions
				
			
		|  | @ -29,19 +29,19 @@ export default class MediaContainer extends PureComponent { | |||
|   }; | ||||
| 
 | ||||
|   handleOpenMedia = (media, index) => { | ||||
|     document.body.classList.add('media-standalone__body'); | ||||
|     document.body.classList.add('with-modals--active'); | ||||
|     this.setState({ media, index }); | ||||
|   } | ||||
| 
 | ||||
|   handleOpenVideo = (video, time) => { | ||||
|     const media = ImmutableList([video]); | ||||
| 
 | ||||
|     document.body.classList.add('media-standalone__body'); | ||||
|     document.body.classList.add('with-modals--active'); | ||||
|     this.setState({ media, time }); | ||||
|   } | ||||
| 
 | ||||
|   handleCloseMedia = () => { | ||||
|     document.body.classList.remove('media-standalone__body'); | ||||
|     document.body.classList.remove('with-modals--active'); | ||||
|     this.setState({ media: null, index: null, time: null }); | ||||
|   } | ||||
| 
 | ||||
|  |  | |||
|  | @ -41,14 +41,15 @@ export default class ModalRoot extends React.PureComponent { | |||
|   }; | ||||
| 
 | ||||
|   getSnapshotBeforeUpdate () { | ||||
|     const visible = !!this.props.type; | ||||
|     return { | ||||
|       overflowY: visible ? 'hidden' : null, | ||||
|     }; | ||||
|     return { visible: !!this.props.type }; | ||||
|   } | ||||
| 
 | ||||
|   componentDidUpdate (prevProps, prevState, { overflowY }) { | ||||
|     document.body.style.overflowY = overflowY; | ||||
|   componentDidUpdate (prevProps, prevState, { visible }) { | ||||
|     if (visible) { | ||||
|       document.body.classList.add('with-modals--active'); | ||||
|     } else { | ||||
|       document.body.classList.remove('with-modals--active'); | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   renderLoading = modalId => () => { | ||||
|  |  | |||
|  | @ -1,8 +1,6 @@ | |||
| body { | ||||
|   font-family: 'mastodon-font-sans-serif', sans-serif; | ||||
|   background: darken($ui-base-color, 8%); | ||||
|   background-size: cover; | ||||
|   background-attachment: fixed; | ||||
|   font-size: 13px; | ||||
|   line-height: 18px; | ||||
|   font-weight: 400; | ||||
|  | @ -34,16 +32,24 @@ body { | |||
|     height: 100%; | ||||
|     padding: 0; | ||||
|     background: $ui-base-color; | ||||
| 
 | ||||
|     &.with-modals--active { | ||||
|       overflow-y: hidden; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   &.about-body { | ||||
|     background: darken($ui-base-color, 8%); | ||||
|     padding-bottom: 0; | ||||
|   &.lighter { | ||||
|     background: $ui-base-color; | ||||
|   } | ||||
| 
 | ||||
|   &.tag-body { | ||||
|     background: darken($ui-base-color, 8%); | ||||
|     padding-bottom: 0; | ||||
|   &.with-modals { | ||||
|     overflow-x: hidden; | ||||
|     overflow-y: scroll; | ||||
| 
 | ||||
|     &--active { | ||||
|       overflow-y: hidden; | ||||
|       margin-right: 13px; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   &.player { | ||||
|  |  | |||
|  | @ -60,10 +60,6 @@ | |||
|   } | ||||
| } | ||||
| 
 | ||||
| .media-standalone__body { | ||||
|   overflow: hidden; | ||||
| } | ||||
| 
 | ||||
| .account-header { | ||||
|   width: 400px; | ||||
|   margin: 0 auto; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue