Skip to content
Snippets Groups Projects
Commit cb83c50d authored by Annabel Dunstone Gray's avatar Annabel Dunstone Gray
Browse files

Add mobile navigation on project page

parent fe0c3b79
No related branches found
No related tags found
No related merge requests found
/* eslint-disable func-names, space-before-function-paren, no-var, prefer-arrow-callback, no-unused-vars, one-var, one-var-declaration-per-line, vars-on-top, max-len */
import _ from 'underscore';
import NewNavSidebar from './new_sidebar';
 
(function() {
var hideEndFade;
Loading
Loading
@@ -53,6 +54,7 @@ import _ from 'underscore';
}
 
$(() => {
new NewNavSidebar();
$(window).on('scroll', _.throttle(applyScrollNavClass, 100));
});
}).call(window);
const SIDEBAR_EXPANDED_CLASS = 'nav-sidebar-expanded';
export default class NewNavSidebar {
constructor() {
this.initDomElements();
this.bindEvents();
}
initDomElements() {
this.$sidebar = $('.nav-sidebar');
this.$openSidebar = $('.toggle-mobile-nav');
this.$closeSidebar = $('.close-nav-button');
}
bindEvents() {
this.$openSidebar.on('click', e => this.toggleSidebarNav(e, true));
this.$closeSidebar.on('click', e => this.toggleSidebarNav(e, false));
}
toggleSidebarNav(show) {
this.$sidebar.toggleClass(SIDEBAR_EXPANDED_CLASS, show);
}
}
Loading
Loading
@@ -275,8 +275,6 @@ header.navbar-gitlab-new {
.breadcrumbs {
display: flex;
min-height: 60px;
padding-top: $gl-padding-top;
padding-bottom: $gl-padding-top;
color: $gl-text-color;
border-bottom: 1px solid $border-color;
 
Loading
Loading
@@ -300,6 +298,7 @@ header.navbar-gitlab-new {
display: flex;
width: 100%;
position: relative;
align-items: center;
 
.dropdown-menu-projects {
margin-top: -$gl-padding;
Loading
Loading
Loading
Loading
@@ -26,41 +26,75 @@ $new-sidebar-width: 220px;
}
 
.context-header {
border-bottom: 1px solid $border-color;
font-weight: 600;
display: flex;
align-items: center;
padding: 10px 16px 10px 10px;
color: $gl-text-color;
position: relative;
 
.avatar-container {
flex: 0 0 40px;
background-color: $white-light;
}
&:hover {
background-color: $hover-background;
color: $hover-color;
border-color: $hover-background;
a {
border-bottom: 1px solid $border-color;
font-weight: 600;
display: flex;
align-items: center;
padding: 10px 16px 10px 10px;
color: $gl-text-color;
 
.avatar-container {
border-color: transparent;
@media (max-width: $screen-xs-max) {
padding-right: 30px;
}
 
.settings-avatar {
background-color: $indigo-500;
&:hover {
background-color: $hover-background;
color: $hover-color;
border-color: $hover-background;
 
i {
color: $hover-color;
.avatar-container {
border-color: transparent;
}
.settings-avatar {
background-color: $indigo-500;
i {
color: $hover-color;
}
}
}
}
 
.avatar-container {
flex: 0 0 40px;
background-color: $white-light;
}
.project-title,
.group-title {
overflow: hidden;
text-overflow: ellipsis;
}
&:hover {
.close-nav-button {
color: $white-light;
}
}
.close-nav-button {
display: none;
position: absolute;
top: 0;
right: 0;
height: 100%;
background-color: transparent;
border: 0;
padding: 0 10px;
@media (max-width: $screen-xs-max) {
display: block;
}
&:hover {
color: $gl-text-color;
}
}
}
 
.settings-avatar {
Loading
Loading
@@ -89,6 +123,10 @@ $new-sidebar-width: 220px;
background-color: $gray-normal;
box-shadow: inset -2px 0 0 $border-color;
 
&.nav-sidebar-expanded {
width: $new-sidebar-width;
}
a {
text-decoration: none;
}
Loading
Loading
@@ -185,6 +223,25 @@ $new-sidebar-width: 220px;
}
}
 
.toggle-mobile-nav {
display: none;
background-color: transparent;
border: 0;
padding: 6px 16px;
margin: 0 16px 0 -15px;
height: 46px;
border-right: 1px solid $gl-text-color-quaternary;
i {
font-size: 20px;
color: $gl-text-color-secondary;
}
@media (max-width: $screen-xs-max) {
display: inline-block;
}
}
 
// Make issue boards full-height now that sub-nav is gone
 
Loading
Loading
Loading
Loading
@@ -3,6 +3,8 @@
 
%nav.breadcrumbs{ role: "navigation" }
.breadcrumbs-container{ class: [container_class, @content_class] }
%button.toggle-mobile-nav
= icon ('bars')
.breadcrumbs-links.js-title-container
- unless hide_top_links
.title
Loading
Loading
.nav-sidebar
- can_edit = can?(current_user, :admin_project, @project)
= link_to project_path(@project), title: @project.name, class: 'context-header' do
.avatar-container.s40.project-avatar
= project_icon(@project, alt: @project.name, class: 'avatar s40 avatar-tile')
.project-title
= @project.name
.context-header
= link_to project_path(@project), title: @project.name do
.avatar-container.s40.project-avatar
= project_icon(@project, alt: @project.name, class: 'avatar s40 avatar-tile')
.project-title
= @project.name
%button.close-nav-button
= icon('times')
%ul.sidebar-top-level-items
= nav_link(path: ['projects#show', 'projects#activity', 'cycle_analytics#show'], html_options: { class: 'home' }) do
= link_to project_path(@project), title: 'Project', class: 'shortcuts-project' do
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment