Show More
@@ -35,6 +35,7 b' body {' | |||||
35 | width: 100%; |
|
35 | width: 100%; | |
36 | height: 1px; |
|
36 | height: 1px; | |
37 | background: @navbar-default-border; |
|
37 | background: @navbar-default-border; | |
|
38 | margin-bottom: -1px; | |||
38 | } |
|
39 | } | |
39 |
|
40 | |||
40 | @media print { |
|
41 | @media print { |
@@ -1,5 +1,6 b'' | |||||
1 | #menubar { |
|
1 | #menubar { | |
2 | .border-box-sizing(); |
|
2 | .border-box-sizing(); | |
|
3 | margin-top: 1px; | |||
3 |
|
4 | |||
4 | .navbar { |
|
5 | .navbar { | |
5 | border-top: 1px; |
|
6 | border-top: 1px; |
@@ -8285,6 +8285,7 b' body {' | |||||
8285 | width: 100%; |
|
8285 | width: 100%; | |
8286 | height: 1px; |
|
8286 | height: 1px; | |
8287 | background: #e7e7e7; |
|
8287 | background: #e7e7e7; | |
|
8288 | margin-bottom: -1px; | |||
8288 | } |
|
8289 | } | |
8289 | @media print { |
|
8290 | @media print { | |
8290 | #header { |
|
8291 | #header { | |
@@ -8510,7 +8511,7 b' ul.breadcrumb span {' | |||||
8510 | vertical-align: middle; |
|
8511 | vertical-align: middle; | |
8511 | } |
|
8512 | } | |
8512 | .list_toolbar .tree-buttons { |
|
8513 | .list_toolbar .tree-buttons { | |
8513 |
padding-top: |
|
8514 | padding-top: 1px; | |
8514 | } |
|
8515 | } | |
8515 | .list_toolbar [class*="span"] { |
|
8516 | .list_toolbar [class*="span"] { | |
8516 | min-height: 24px; |
|
8517 | min-height: 24px; | |
@@ -8521,11 +8522,11 b' ul.breadcrumb span {' | |||||
8521 | .list_container { |
|
8522 | .list_container { | |
8522 | margin-top: 4px; |
|
8523 | margin-top: 4px; | |
8523 | margin-bottom: 20px; |
|
8524 | margin-bottom: 20px; | |
8524 |
border: 1px solid # |
|
8525 | border: 1px solid #dddddd; | |
8525 | border-radius: 2px; |
|
8526 | border-radius: 2px; | |
8526 | } |
|
8527 | } | |
8527 | .list_container > div { |
|
8528 | .list_container > div { | |
8528 |
border-bottom: 1px solid # |
|
8529 | border-bottom: 1px solid #dddddd; | |
8529 | } |
|
8530 | } | |
8530 | .list_container > div:hover .list-item { |
|
8531 | .list_container > div:hover .list-item { | |
8531 | background-color: red; |
|
8532 | background-color: red; | |
@@ -8534,7 +8535,7 b' ul.breadcrumb span {' | |||||
8534 | border: none; |
|
8535 | border: none; | |
8535 | } |
|
8536 | } | |
8536 | .list_item:hover .list_item { |
|
8537 | .list_item:hover .list_item { | |
8537 | background-color: #ddd; |
|
8538 | background-color: #dddddd; | |
8538 | } |
|
8539 | } | |
8539 | .list_item a { |
|
8540 | .list_item a { | |
8540 | text-decoration: none; |
|
8541 | text-decoration: none; | |
@@ -8648,6 +8649,10 b' input.engine_num_input {' | |||||
8648 | .file_icon:before.pull-right { |
|
8649 | .file_icon:before.pull-right { | |
8649 | margin-left: .3em; |
|
8650 | margin-left: .3em; | |
8650 | } |
|
8651 | } | |
|
8652 | #notebook_toolbar .pull-right { | |||
|
8653 | padding-top: 0px; | |||
|
8654 | margin-right: -1px; | |||
|
8655 | } | |||
8651 | ul#new-menu { |
|
8656 | ul#new-menu { | |
8652 | left: auto; |
|
8657 | left: auto; | |
8653 | right: 0; |
|
8658 | right: 0; | |
@@ -8666,6 +8671,37 b' ul#new-menu {' | |||||
8666 | #tab_content { |
|
8671 | #tab_content { | |
8667 | padding-top: 20px; |
|
8672 | padding-top: 20px; | |
8668 | } |
|
8673 | } | |
|
8674 | #running .panel-group .panel { | |||
|
8675 | margin-top: 3px; | |||
|
8676 | margin-bottom: 1em; | |||
|
8677 | } | |||
|
8678 | #running .panel-group .panel .panel-heading { | |||
|
8679 | background-color: #eeeeee; | |||
|
8680 | padding-top: 4px; | |||
|
8681 | padding-bottom: 4px; | |||
|
8682 | padding-left: 7px; | |||
|
8683 | padding-right: 7px; | |||
|
8684 | line-height: 22px; | |||
|
8685 | } | |||
|
8686 | #running .panel-group .panel .panel-heading a:focus, | |||
|
8687 | #running .panel-group .panel .panel-heading a:hover { | |||
|
8688 | text-decoration: none; | |||
|
8689 | } | |||
|
8690 | #running .panel-group .panel .panel-body { | |||
|
8691 | padding: 0px; | |||
|
8692 | } | |||
|
8693 | #running .panel-group .panel .panel-body .list_container { | |||
|
8694 | margin-top: 0px; | |||
|
8695 | margin-bottom: 0px; | |||
|
8696 | border: 0px; | |||
|
8697 | border-radius: 0px; | |||
|
8698 | } | |||
|
8699 | #running .panel-group .panel .panel-body .list_container .list_item { | |||
|
8700 | border-bottom: 1px solid #dddddd; | |||
|
8701 | } | |||
|
8702 | #running .panel-group .panel .panel-body .list_container .list_item:last-child { | |||
|
8703 | border-bottom: 0px; | |||
|
8704 | } | |||
8669 | /*! |
|
8705 | /*! | |
8670 | * |
|
8706 | * | |
8671 | * IPython text editor webapp |
|
8707 | * IPython text editor webapp | |
@@ -10269,6 +10305,7 b' select[multiple].celltoolbar select {' | |||||
10269 | box-sizing: border-box; |
|
10305 | box-sizing: border-box; | |
10270 | -moz-box-sizing: border-box; |
|
10306 | -moz-box-sizing: border-box; | |
10271 | -webkit-box-sizing: border-box; |
|
10307 | -webkit-box-sizing: border-box; | |
|
10308 | margin-top: 1px; | |||
10272 | } |
|
10309 | } | |
10273 | #menubar .navbar { |
|
10310 | #menubar .navbar { | |
10274 | border-top: 1px; |
|
10311 | border-top: 1px; |
@@ -21,6 +21,36 b' define([' | |||||
21 | this.events = options.events; |
|
21 | this.events = options.events; | |
22 | this.sessions = {}; |
|
22 | this.sessions = {}; | |
23 | this.base_url = options.base_url || utils.get_body_data("baseUrl"); |
|
23 | this.base_url = options.base_url || utils.get_body_data("baseUrl"); | |
|
24 | ||||
|
25 | // Add collapse arrows. | |||
|
26 | $('#running .panel-group .panel .panel-heading a').each(function(index, el) { | |||
|
27 | var $link = $(el); | |||
|
28 | var $icon = $('<i />') | |||
|
29 | .addClass('fa fa-caret-down'); | |||
|
30 | $link.append($icon); | |||
|
31 | $link.down = true; | |||
|
32 | $link.click(function () { | |||
|
33 | if ($link.down) { | |||
|
34 | $link.down = false; | |||
|
35 | // jQeury doesn't know how to animate rotations. Abuse | |||
|
36 | // jQueries animate function by using an unused css attribute | |||
|
37 | // to do the animation (borderSpacing). | |||
|
38 | $icon.animate({ borderSpacing: 90 }, { | |||
|
39 | step: function(now,fx) { | |||
|
40 | $icon.css('transform','rotate(-' + now + 'deg)'); | |||
|
41 | } | |||
|
42 | }, 250); | |||
|
43 | } else { | |||
|
44 | $link.down = true; | |||
|
45 | // See comment above. | |||
|
46 | $icon.animate({ borderSpacing: 0 }, { | |||
|
47 | step: function(now,fx) { | |||
|
48 | $icon.css('transform','rotate(-' + now + 'deg)'); | |||
|
49 | } | |||
|
50 | }, 250); | |||
|
51 | } | |||
|
52 | }); | |||
|
53 | }); | |||
24 | }; |
|
54 | }; | |
25 |
|
55 | |||
26 | SesssionList.prototype.load_sessions = function(){ |
|
56 | SesssionList.prototype.load_sessions = function(){ |
@@ -20,7 +20,7 b' define([' | |||||
20 | * base_url: string |
|
20 | * base_url: string | |
21 | */ |
|
21 | */ | |
22 | this.base_url = options.base_url || utils.get_body_data("baseUrl"); |
|
22 | this.base_url = options.base_url || utils.get_body_data("baseUrl"); | |
23 |
this.element_name = options.element_name || ' |
|
23 | this.element_name = options.element_name || 'running'; | |
24 | this.selector = selector; |
|
24 | this.selector = selector; | |
25 | this.terminals = []; |
|
25 | this.terminals = []; | |
26 | if (this.selector !== undefined) { |
|
26 | if (this.selector !== undefined) { | |
@@ -38,7 +38,7 b' define([' | |||||
38 | $('#refresh_' + this.element_name + '_list').click(function () { |
|
38 | $('#refresh_' + this.element_name + '_list').click(function () { | |
39 | that.load_terminals(); |
|
39 | that.load_terminals(); | |
40 | }); |
|
40 | }); | |
41 |
$('#new |
|
41 | $('#new-terminal').click($.proxy(this.new_terminal, this)); | |
42 | }; |
|
42 | }; | |
43 |
|
43 | |||
44 | TerminalList.prototype.new_terminal = function () { |
|
44 | TerminalList.prototype.new_terminal = function () { |
@@ -41,7 +41,7 b' ul.breadcrumb {' | |||||
41 | vertical-align: middle; |
|
41 | vertical-align: middle; | |
42 |
|
42 | |||
43 | .tree-buttons { |
|
43 | .tree-buttons { | |
44 |
padding-top: |
|
44 | padding-top: 1px; | |
45 | } |
|
45 | } | |
46 | } |
|
46 | } | |
47 |
|
47 | |||
@@ -56,12 +56,12 b' ul.breadcrumb {' | |||||
56 | .list_container { |
|
56 | .list_container { | |
57 | margin-top: @dashboard_tb_pad; |
|
57 | margin-top: @dashboard_tb_pad; | |
58 | margin-bottom: 5*@dashboard_tb_pad; |
|
58 | margin-bottom: 5*@dashboard_tb_pad; | |
59 |
border: 1px solid @border |
|
59 | border: 1px solid @table-border-color; | |
60 | border-radius: @border-radius-base; |
|
60 | border-radius: @border-radius-base; | |
61 | } |
|
61 | } | |
62 |
|
62 | |||
63 | .list_container > div { |
|
63 | .list_container > div { | |
64 |
border-bottom: 1px solid @border |
|
64 | border-bottom: 1px solid @table-border-color; | |
65 | &:hover .list-item{ |
|
65 | &:hover .list-item{ | |
66 | background-color: red; |
|
66 | background-color: red; | |
67 | }; |
|
67 | }; | |
@@ -73,7 +73,7 b' ul.breadcrumb {' | |||||
73 |
|
73 | |||
74 | .list_item { |
|
74 | .list_item { | |
75 | &:hover .list_item { |
|
75 | &:hover .list_item { | |
76 |
background-color: |
|
76 | background-color: @table-border-color; | |
77 | }; |
|
77 | }; | |
78 | a {text-decoration: none;} |
|
78 | a {text-decoration: none;} | |
79 | } |
|
79 | } | |
@@ -156,6 +156,11 b' input.engine_num_input {' | |||||
156 | .icon(@fa-var-file-o) |
|
156 | .icon(@fa-var-file-o) | |
157 | } |
|
157 | } | |
158 |
|
158 | |||
|
159 | #notebook_toolbar .pull-right { | |||
|
160 | padding-top: 0px; | |||
|
161 | margin-right: -1px; | |||
|
162 | } | |||
|
163 | ||||
159 | ul#new-menu { |
|
164 | ul#new-menu { | |
160 | // align right instead of left |
|
165 | // align right instead of left | |
161 | left: auto; |
|
166 | left: auto; | |
@@ -179,3 +184,44 b' ul#new-menu {' | |||||
179 | #tab_content { |
|
184 | #tab_content { | |
180 | padding-top: @page-header-padding; |
|
185 | padding-top: @page-header-padding; | |
181 | } |
|
186 | } | |
|
187 | ||||
|
188 | #running { | |||
|
189 | .panel-group{ | |||
|
190 | .panel { | |||
|
191 | margin-top: 3px; | |||
|
192 | margin-bottom: 1em; | |||
|
193 | ||||
|
194 | .panel-heading { | |||
|
195 | background-color: @page-backdrop-color; | |||
|
196 | padding-top: @dashboard_tb_pad; | |||
|
197 | padding-bottom: @dashboard_tb_pad; | |||
|
198 | padding-left: @dashboard_lr_pad; | |||
|
199 | padding-right: @dashboard_lr_pad; | |||
|
200 | line-height: @btn_mini_height; | |||
|
201 | ||||
|
202 | a:focus, a:hover { | |||
|
203 | text-decoration: none; | |||
|
204 | } | |||
|
205 | } | |||
|
206 | ||||
|
207 | .panel-body { | |||
|
208 | padding: 0px; | |||
|
209 | ||||
|
210 | .list_container { | |||
|
211 | margin-top: 0px; | |||
|
212 | margin-bottom: 0px; | |||
|
213 | border: 0px; | |||
|
214 | border-radius: 0px; | |||
|
215 | ||||
|
216 | .list_item { | |||
|
217 | border-bottom: 1px solid @table-border-color; | |||
|
218 | ||||
|
219 | &:last-child { | |||
|
220 | border-bottom: 0px; | |||
|
221 | } | |||
|
222 | } | |||
|
223 | } | |||
|
224 | } | |||
|
225 | } | |||
|
226 | } | |||
|
227 | } |
@@ -19,9 +19,6 b' data-terminals-available="{{terminals_available}}"' | |||||
19 | <ul id="tabs" class="nav nav-tabs"> |
|
19 | <ul id="tabs" class="nav nav-tabs"> | |
20 | <li class="active"><a href="#notebooks" data-toggle="tab">Files</a></li> |
|
20 | <li class="active"><a href="#notebooks" data-toggle="tab">Files</a></li> | |
21 | <li><a href="#running" data-toggle="tab">Running</a></li> |
|
21 | <li><a href="#running" data-toggle="tab">Running</a></li> | |
22 | {% if terminals_available %} |
|
|||
23 | <li><a href="#terminals" data-toggle="tab">Terminals</a></li> |
|
|||
24 | {% endif %} |
|
|||
25 | <li><a href="#clusters" data-toggle="tab">Clusters</a></li> |
|
22 | <li><a href="#clusters" data-toggle="tab">Clusters</a></li> | |
26 | </ul> |
|
23 | </ul> | |
27 | <div class="tab-content"> |
|
24 | <div class="tab-content"> | |
@@ -52,6 +49,11 b' data-terminals-available="{{terminals_available}}"' | |||||
52 | <li role="presentation" id="new-folder"> |
|
49 | <li role="presentation" id="new-folder"> | |
53 | <a role="menuitem" tabindex="-1" href="#">Folder</a> |
|
50 | <a role="menuitem" tabindex="-1" href="#">Folder</a> | |
54 | </li> |
|
51 | </li> | |
|
52 | {% if terminals_available %} | |||
|
53 | <li role="presentation" id="new-terminal"> | |||
|
54 | <a role="menuitem" tabindex="-1" href="#">Terminal</a> | |||
|
55 | </li> | |||
|
56 | {% endif %} | |||
55 | <li role="presentation" class="divider"></li> |
|
57 | <li role="presentation" class="divider"></li> | |
56 | <li role="presentation" class="dropdown-header" id="notebook-kernels">Notebooks</li> |
|
58 | <li role="presentation" class="dropdown-header" id="notebook-kernels">Notebooks</li> | |
57 | </ul> |
|
59 | </ul> | |
@@ -78,7 +80,7 b' data-terminals-available="{{terminals_available}}"' | |||||
78 | <div id="running" class="tab-pane"> |
|
80 | <div id="running" class="tab-pane"> | |
79 | <div id="running_toolbar" class="row"> |
|
81 | <div id="running_toolbar" class="row"> | |
80 | <div class="col-sm-8 no-padding"> |
|
82 | <div class="col-sm-8 no-padding"> | |
81 |
<span id="running_list_info">Currently running |
|
83 | <span id="running_list_info">Currently running Jupyter processes</span> | |
82 | </div> |
|
84 | </div> | |
83 | <div class="col-sm-4 no-padding tree-buttons"> |
|
85 | <div class="col-sm-4 no-padding tree-buttons"> | |
84 | <span id="running_buttons" class="pull-right"> |
|
86 | <span id="running_buttons" class="pull-right"> | |
@@ -86,32 +88,43 b' data-terminals-available="{{terminals_available}}"' | |||||
86 | </span> |
|
88 | </span> | |
87 | </div> |
|
89 | </div> | |
88 | </div> |
|
90 | </div> | |
89 | <div id="running_list"> |
|
91 | <div class="panel-group" id="accordion" > | |
90 | <div id="running_list_header" class="row list_header"> |
|
92 | <div class="panel panel-default"> | |
91 | <div> There are no notebooks running. </div> |
|
93 | <div class="panel-heading"> | |
92 | </div> |
|
94 | <a data-toggle="collapse" data-target="#collapseOne" href="#"> | |
93 | </div> |
|
95 | Terminals | |
94 |
</ |
|
96 | </a> | |
95 | {% if terminals_available %} |
|
97 | </div> | |
96 |
<div id=" |
|
98 | <div id="collapseOne" class=" collapse in"> | |
97 | <div id="terminal_toolbar" class="row"> |
|
99 | <div class="panel-body"> | |
98 | <div class="col-xs-8 no-padding"> |
|
100 | {% if terminals_available %} | |
99 | <span id="terminal_list_info">Currently running terminals</span> |
|
101 | <div id="terminal_list"> | |
100 | </div> |
|
102 | <div id="terminal_list_header" class="row list_header"> | |
101 | <div class="col-xs-4 no-padding tree-buttons"> |
|
103 | <div> There are no terminals running. </div> | |
102 | <span id="terminal_buttons" class="pull-right"> |
|
104 | </div> | |
103 | <button id="new_terminal" title="New terminal" class="btn btn-default btn-xs">New Terminal</button> |
|
105 | </div> | |
104 | <button id="refresh_terminal_list" title="Refresh terminal list" class="btn btn-default btn-xs"><i class="fa fa-refresh"></i></button> |
|
106 | {% endif %} | |
105 |
</ |
|
107 | </div> | |
|
108 | </div> | |||
106 | </div> |
|
109 | </div> | |
107 | </div> |
|
110 | <div class="panel panel-default"> | |
108 | <div id="terminal_list"> |
|
111 | <div class="panel-heading"> | |
109 | <div id="terminal_list_header" class="row list_header"> |
|
112 | <a data-toggle="collapse" data-target="#collapseTwo" href="#"> | |
110 | <div> There are no terminals running. </div> |
|
113 | Notebooks | |
|
114 | </a> | |||
|
115 | </div> | |||
|
116 | <div id="collapseTwo" class=" collapse in"> | |||
|
117 | <div class="panel-body"> | |||
|
118 | <div id="running_list"> | |||
|
119 | <div id="running_list_header" class="row list_header"> | |||
|
120 | <div> There are no notebooks running. </div> | |||
|
121 | </div> | |||
|
122 | </div> | |||
|
123 | </div> | |||
|
124 | </div> | |||
111 | </div> |
|
125 | </div> | |
112 | </div> |
|
126 | </div> | |
113 | </div> |
|
127 | </div> | |
114 | {% endif %} |
|
|||
115 | <div id="clusters" class="tab-pane"> |
|
128 | <div id="clusters" class="tab-pane"> | |
116 | <div id="cluster_toolbar" class="row"> |
|
129 | <div id="cluster_toolbar" class="row"> | |
117 | <div class="col-xs-8 no-padding"> |
|
130 | <div class="col-xs-8 no-padding"> |
General Comments 0
You need to be logged in to leave comments.
Login now