summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2015-02-03 13:11:33 -0800
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2015-02-03 13:11:33 -0800
commit254a63dcf7dcfe824eb0b7227e2cd63fac027f85 (patch)
tree899dacf9dd67bd106b22a719ec7335cc6e3ea579
parentded30e3efe78360bd310be604d7723638c039a17 (diff)
downloadgitlab-ce-254a63dcf7dcfe824eb0b7227e2cd63fac027f85.tar.gz
Improve collapsing sidebar
-rw-r--r--app/assets/javascripts/sidebar.js.coffee11
-rw-r--r--app/assets/stylesheets/sections/nav_sidebar.scss62
-rw-r--r--app/helpers/application_helper.rb8
-rw-r--r--app/views/layouts/_collapse_button.html.haml4
-rw-r--r--app/views/layouts/_page.html.haml4
5 files changed, 41 insertions, 48 deletions
diff --git a/app/assets/javascripts/sidebar.js.coffee b/app/assets/javascripts/sidebar.js.coffee
index d1b165a2311..5013bcdacd0 100644
--- a/app/assets/javascripts/sidebar.js.coffee
+++ b/app/assets/javascripts/sidebar.js.coffee
@@ -27,10 +27,15 @@ $(window).resize ->
$(document).on("click", '.toggle-nav-collapse', (e) ->
e.preventDefault()
- if $('.page-with-sidebar').hasClass('collapsed')
- $('.page-with-sidebar').removeClass('collapsed')
+ collapsed = 'page-sidebar-collapsed'
+ expanded = 'page-sidebar-expanded'
+
+ if $('.page-with-sidebar').hasClass(collapsed)
+ $('.page-with-sidebar').removeClass(collapsed).addClass(expanded)
+ $('.toggle-nav-collapse i').removeClass('fa-angle-right').addClass('fa-angle-left')
$.cookie("collapsed_nav", "false", { path: '/' })
else
- $('.page-with-sidebar').addClass('collapsed')
+ $('.page-with-sidebar').removeClass(expanded).addClass(collapsed)
+ $('.toggle-nav-collapse i').removeClass('fa-angle-left').addClass('fa-angle-right')
$.cookie("collapsed_nav", "true", { path: '/' })
)
diff --git a/app/assets/stylesheets/sections/nav_sidebar.scss b/app/assets/stylesheets/sections/nav_sidebar.scss
index 0c278aec3f5..b35043821da 100644
--- a/app/assets/stylesheets/sections/nav_sidebar.scss
+++ b/app/assets/stylesheets/sections/nav_sidebar.scss
@@ -1,5 +1,3 @@
-
-
.page-with-sidebar {
background: #F5F5F5;
@@ -101,16 +99,14 @@
}
@mixin expanded-sidebar {
- .page-with-sidebar {
- padding-left: $sidebar_width;
- }
+ padding-left: $sidebar_width;
.sidebar-wrapper {
width: $sidebar_width;
.nav-sidebar {
margin-top: 20px;
- position: relative;
+ position: fixed;
top: 45px;
width: $sidebar_width;
}
@@ -122,9 +118,7 @@
}
@mixin folded-sidebar {
- .page-with-sidebar {
- padding-left: 50px;
- }
+ padding-left: 50px;
.sidebar-wrapper {
width: 52px;
@@ -150,47 +144,33 @@
}
}
-.collapse-nav {
- position: relative;
- top: 50px;
- width: 230px;
- text-align: right;
- padding-right: 21px;
+.collapse-nav a {
+ position: fixed;
+ bottom: 15px;
+ padding: 10px;
+ background: #DDD;
}
-.page-with-sidebar.collapsed {
-
- .collapse-nav {
- width: 53px;
+@media (max-width: $screen-md-max) {
+ .page-sidebar-collapsed {
+ @include folded-sidebar;
}
- padding-left: 50px;
-
- .sidebar-wrapper {
- width: 52px;
- overflow-x: hidden;
-
- .nav-sidebar {
- width: 52px;
- }
-
- .nav-sidebar li a > span {
- display: none;
- }
+ .page-sidebar-expanded {
+ @include folded-sidebar;
}
-}
-
-@media (max-width: $screen-md-max) {
- @include folded-sidebar;
+ .collapse-nav {
+ display: none;
+ }
}
@media(min-width: $screen-md-max) {
- @include expanded-sidebar;
-}
+ .page-sidebar-collapsed {
+ @include folded-sidebar;
+ }
-@media (max-width: $screen-md-max) {
- .collapse-nav {
- display: none;
+ .page-sidebar-expanded {
+ @include expanded-sidebar;
}
}
diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index 1fbb44ee442..e45f4650309 100644
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -315,4 +315,12 @@ module ApplicationHelper
profile_key_path(key)
end
end
+
+ def nav_sidebar_class
+ if nav_menu_collapsed?
+ "page-sidebar-collapsed"
+ else
+ "page-sidebar-expanded"
+ end
+ end
end
diff --git a/app/views/layouts/_collapse_button.html.haml b/app/views/layouts/_collapse_button.html.haml
index 52c19f1d99d..b3b338b55bb 100644
--- a/app/views/layouts/_collapse_button.html.haml
+++ b/app/views/layouts/_collapse_button.html.haml
@@ -1,4 +1,4 @@
- if nav_menu_collapsed?
- = link_to icon('plus-square'), '#', class: 'toggle-nav-collapse'
+ = link_to icon('angle-right'), '#', class: 'toggle-nav-collapse'
- else
- = link_to icon('minus-square'), '#', class: 'toggle-nav-collapse'
+ = link_to icon('angle-left'), '#', class: 'toggle-nav-collapse'
diff --git a/app/views/layouts/_page.html.haml b/app/views/layouts/_page.html.haml
index e20aec89110..98a3d2278a3 100644
--- a/app/views/layouts/_page.html.haml
+++ b/app/views/layouts/_page.html.haml
@@ -1,10 +1,10 @@
- if defined?(sidebar)
- .page-with-sidebar{:class => ("collapsed" if nav_menu_collapsed?)}
+ .page-with-sidebar{ class: nav_sidebar_class }
= render "layouts/broadcast"
.sidebar-wrapper
= render(sidebar)
.collapse-nav
- = render :partial => 'layouts/collapse_button'
+ = render partial: 'layouts/collapse_button'
.content-wrapper
.container-fluid
.content