feat: Use CSS contain to avoid computations (#3158)
This commit is contained in:
		
				
					committed by
					
						
						Eugen Rochko
					
				
			
			
				
	
			
			
			
						parent
						
							8c5eaf7ae9
						
					
				
				
					commit
					b369fc2de4
				
			@@ -100,7 +100,9 @@ class Notifications extends React.PureComponent {
 | 
			
		||||
      unread = <div className='notifications__unread-indicator' />;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (isLoading || notifications.size > 0) {
 | 
			
		||||
    if (isLoading && this.scrollableArea) {
 | 
			
		||||
      scrollableArea = this.scrollableArea;
 | 
			
		||||
    } else if (notifications.size > 0) {
 | 
			
		||||
      scrollableArea = (
 | 
			
		||||
        <div className='scrollable' onScroll={this.handleScroll} ref={this.setRef}>
 | 
			
		||||
          {unread}
 | 
			
		||||
@@ -119,6 +121,8 @@ class Notifications extends React.PureComponent {
 | 
			
		||||
      );
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    this.scrollableArea = scrollableArea;
 | 
			
		||||
 | 
			
		||||
    return (
 | 
			
		||||
      <Column icon='bell' active={isUnread} heading={intl.formatMessage(messages.title)}>
 | 
			
		||||
        <ColumnSettingsContainer />
 | 
			
		||||
 
 | 
			
		||||
@@ -1314,6 +1314,7 @@
 | 
			
		||||
.drawer {
 | 
			
		||||
  flex: 1 1 100%;
 | 
			
		||||
  overflow: hidden;
 | 
			
		||||
  contain: strict;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@media screen and (min-width: 360px) {
 | 
			
		||||
@@ -1488,6 +1489,7 @@
 | 
			
		||||
  flex: 1 1 auto;
 | 
			
		||||
  backface-visibility: hidden;
 | 
			
		||||
  -webkit-overflow-scrolling: touch;
 | 
			
		||||
  contain: strict;
 | 
			
		||||
 | 
			
		||||
  &.optionally-scrollable {
 | 
			
		||||
    overflow-y: auto;
 | 
			
		||||
@@ -2234,6 +2236,7 @@ button.icon-button.active i.fa-retweet {
 | 
			
		||||
  flex: 1 1 auto;
 | 
			
		||||
  align-items: center;
 | 
			
		||||
  justify-content: center;
 | 
			
		||||
  contain: strict;
 | 
			
		||||
 | 
			
		||||
  a {
 | 
			
		||||
    color: $ui-highlight-color;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user