@mixin view() {
  .view {
    color: $text_color;
    background-color: $base_color;

    &:disabled {
      color: $disabled_fg_color;
      background-color: $disabled_bg_color;
    }

    &:selected, text:selected {
      &, &:focus {
        color: $selected_fg_color;
        background-color: $selected_bg_color;
        
        &:disabled {
          color: gtkmix($selected_fg_color,
      $disabled_fg_color,
      0.5);
          background-color: $selected_bg_color;
        }

        &:backdrop {
          color: $unfocused_selected_fg_color;
          background-color: $unfocused_selected_bg_color;
        }

        border-radius: $view_radius;
        -gtk-outline-radius: $view_radius;
      }
    }
    
    text selection {
      &, &:focus {
        color: $selected_text_color;
        background-color: $selected_base_color;
        
        &:disabled {
          color: gtkmix($selected_fg_color, $disabled_fg_color, 0.5);
          background-color: $selected_bg_color;
        }

        &:backdrop {
          color: $unfocused_selected_fg_color;
          background-color: $unfocused_selected_bg_color;
        }
      }
    }
  }
}
