summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhil Hughes <me@iamphill.com>2016-03-07 09:44:55 +0000
committerPhil Hughes <me@iamphill.com>2016-03-07 09:44:55 +0000
commitb9168b0759f36c4c1c19404fb3ab73a06fcdbeb3 (patch)
treeca3d8f9f3805b7213c5755687cb673e442c2631c
parentbe1ae2d660ad98cf6a44cefa3148f9c48b66806f (diff)
downloadgitlab-ce-b9168b0759f36c4c1c19404fb3ab73a06fcdbeb3.tar.gz
Affix the build scroll controls
Closes #4709
-rw-r--r--app/assets/javascripts/ci_build.js.coffee14
-rw-r--r--app/assets/javascripts/dispatcher.js.coffee2
-rw-r--r--app/assets/stylesheets/pages/builds.scss23
-rw-r--r--app/views/projects/builds/show.html.haml2
4 files changed, 36 insertions, 5 deletions
diff --git a/app/assets/javascripts/ci_build.js.coffee b/app/assets/javascripts/ci_build.js.coffee
new file mode 100644
index 00000000000..e110eece16b
--- /dev/null
+++ b/app/assets/javascripts/ci_build.js.coffee
@@ -0,0 +1,14 @@
+class @CiBuild
+ constructor: ->
+ @initScrollButtonAffix()
+
+ initScrollButtonAffix: ->
+ buildScroll = $('#js-build-scroll')
+ body = $('body')
+ buildTrace = $('#build-trace')
+
+ buildScroll.affix(
+ offset:
+ bottom: ->
+ body.outerHeight() - (buildTrace.outerHeight() + buildTrace.offset().top)
+ )
diff --git a/app/assets/javascripts/dispatcher.js.coffee b/app/assets/javascripts/dispatcher.js.coffee
index d7feb5d5c87..f5e5c7c75c7 100644
--- a/app/assets/javascripts/dispatcher.js.coffee
+++ b/app/assets/javascripts/dispatcher.js.coffee
@@ -103,6 +103,8 @@ class Dispatcher
new ProjectFork()
when 'projects:artifacts:browse'
new BuildArtifacts()
+ when 'projects:builds:show'
+ new CiBuild()
switch path.first()
when 'admin'
diff --git a/app/assets/stylesheets/pages/builds.scss b/app/assets/stylesheets/pages/builds.scss
index 3c2997c1d5a..75f298019e3 100644
--- a/app/assets/stylesheets/pages/builds.scss
+++ b/app/assets/stylesheets/pages/builds.scss
@@ -27,10 +27,25 @@
}
.scroll-controls {
- position: fixed;
- bottom: 10px;
- left: 250px;
- z-index: 100;
+ &.affix-top {
+ position: absolute;
+ top: 10px;
+ right: 25px;
+ }
+
+ &.affix-bottom {
+ position: absolute;
+ right: 25px;
+ }
+
+ &.affix {
+ right: 30px;
+ bottom: 15px;
+
+ @media (min-width: $screen-md-min) {
+ right: 26%;
+ }
+ }
a {
display: block;
diff --git a/app/views/projects/builds/show.html.haml b/app/views/projects/builds/show.html.haml
index 8eec78a557c..be7cc0f256c 100644
--- a/app/views/projects/builds/show.html.haml
+++ b/app/views/projects/builds/show.html.haml
@@ -70,7 +70,7 @@
.autoscroll-container
%button.btn.btn-success.btn-sm#autoscroll-button{:type => "button", :data => {:state => 'disabled'}} enable autoscroll
.clearfix
- .scroll-controls
+ #js-build-scroll.scroll-controls
= link_to '#up-build-trace', class: 'btn' do
%i.fa.fa-angle-up
= link_to '#down-build-trace', class: 'btn' do