diff --git a/IPython/html/services/notebooks/tests/test_notebooks_api.py b/IPython/html/services/notebooks/tests/test_notebooks_api.py
index c8c82e874..fcb920abf 100644
--- a/IPython/html/services/notebooks/tests/test_notebooks_api.py
+++ b/IPython/html/services/notebooks/tests/test_notebooks_api.py
@@ -300,7 +300,7 @@ class APITest(NotebookTestBase):
saved = resp.json()
self.assertEqual(saved['name'], 'a2.ipynb')
self.assertEqual(saved['path'], 'foo/bar')
- assert os.path.isfile(pjoin(self.notebook_dir.name,'foo','bar','a2.ipynb'))
+ assert os.path.isfile(pjoin(self.notebook_dir.name,'foo','progress-bar','a2.ipynb'))
assert not os.path.isfile(pjoin(self.notebook_dir.name, 'foo', 'a.ipynb'))
with assert_http_error(404):
self.nb_api.read('a.ipynb', 'foo')
diff --git a/IPython/html/static/auth/js/loginmain.js b/IPython/html/static/auth/js/loginmain.js
index 4b6c53643..d914bf743 100644
--- a/IPython/html/static/auth/js/loginmain.js
+++ b/IPython/html/static/auth/js/loginmain.js
@@ -13,7 +13,7 @@
$(document).ready(function () {
IPython.page = new IPython.Page();
- $('button#login_submit').addClass("btn");
+ $('button#login_submit').addClass("btn btn-default");
IPython.page.show();
$('input#password_input').focus();
diff --git a/IPython/html/static/auth/js/loginwidget.js b/IPython/html/static/auth/js/loginwidget.js
index efa1de79e..329ba0e0e 100644
--- a/IPython/html/static/auth/js/loginwidget.js
+++ b/IPython/html/static/auth/js/loginwidget.js
@@ -24,7 +24,7 @@ var IPython = (function (IPython) {
};
LoginWidget.prototype.style = function () {
- this.element.find("button").addClass("btn btn-small");
+ this.element.find("button").addClass("btn btn-default btn-sm");
};
diff --git a/IPython/html/static/base/js/dialog.js b/IPython/html/static/base/js/dialog.js
index 350bd2ab5..ca08d2a04 100644
--- a/IPython/html/static/base/js/dialog.js
+++ b/IPython/html/static/base/js/dialog.js
@@ -37,7 +37,7 @@ IPython.dialog = (function (IPython) {
for (var label in options.buttons) {
var btn_opts = options.buttons[label];
var button = $("")
- .addClass("btn")
+ .addClass("btn btn-default")
.attr("data-dismiss", "modal")
.text(label);
if (btn_opts.click) {
diff --git a/IPython/html/static/custom/custom.js b/IPython/html/static/custom/custom.js
index f8d1afee0..8e3cc5f1e 100644
--- a/IPython/html/static/custom/custom.js
+++ b/IPython/html/static/custom/custom.js
@@ -20,7 +20,7 @@
* $([IPython.events]).on('app_initialized.NotebookApp', function(){
* IPython.toolbar.add_buttons_group([
* {
- * 'label' : 'run qtconsole',
+ * 'label label-default' : 'run qtconsole',
* 'icon' : 'icon-terminal', // select your icon from http://fortawesome.github.io/Font-Awesome/icons
* 'callback': function () {
* IPython.notebook.kernel.execute('%qtconsole')
diff --git a/IPython/html/static/notebook/js/celltoolbar.js b/IPython/html/static/notebook/js/celltoolbar.js
index 8a1d231f7..05e203ffd 100644
--- a/IPython/html/static/notebook/js/celltoolbar.js
+++ b/IPython/html/static/notebook/js/celltoolbar.js
@@ -144,7 +144,7 @@ var IPython = (function (IPython) {
* button.click(function(){
* var v = cell.metadata.foo;
* cell.metadata.foo = !v;
- * button.button("option", "label", String(!v));
+ * button.button("option", "label label-default", String(!v));
* })
*
* // add the button to the DOM div.
diff --git a/IPython/html/static/notebook/js/celltoolbarpresets/default.js b/IPython/html/static/notebook/js/celltoolbarpresets/default.js
index 74210ca7c..cb3b12e35 100644
--- a/IPython/html/static/notebook/js/celltoolbarpresets/default.js
+++ b/IPython/html/static/notebook/js/celltoolbarpresets/default.js
@@ -27,7 +27,7 @@
var add_raw_edit_button = function(div, cell) {
var button_container = div;
var button = $('')
- .addClass("btn btn-mini")
+ .addClass("btn btn-default btn-xs")
.text("Edit Metadata")
.click( function () {
raw_edit(cell);
diff --git a/IPython/html/static/notebook/js/celltoolbarpresets/example.js b/IPython/html/static/notebook/js/celltoolbarpresets/example.js
index 8f26c4ef7..126c5eb05 100644
--- a/IPython/html/static/notebook/js/celltoolbarpresets/example.js
+++ b/IPython/html/static/notebook/js/celltoolbarpresets/example.js
@@ -64,7 +64,7 @@
button.click(function(){
var v = cell.metadata.foo;
cell.metadata.foo = !v;
- button.button("option","label",String(!v));
+ button.button("option","label label-default",String(!v));
})
button_container.append(button);
}
diff --git a/IPython/html/static/notebook/js/outputarea.js b/IPython/html/static/notebook/js/outputarea.js
index 337e07f89..182242824 100644
--- a/IPython/html/static/notebook/js/outputarea.js
+++ b/IPython/html/static/notebook/js/outputarea.js
@@ -61,7 +61,7 @@ var IPython = (function (IPython) {
this.wrapper.addClass('output_wrapper');
this.element.addClass('output');
- this.collapse_button.addClass("btn output_collapsed");
+ this.collapse_button.addClass("btn btn-default output_collapsed");
this.collapse_button.attr('title', 'click to expand output');
this.collapse_button.text('. . .');
diff --git a/IPython/html/static/notebook/js/toolbar.js b/IPython/html/static/notebook/js/toolbar.js
index 6f0052a96..bf17ae8d0 100644
--- a/IPython/html/static/notebook/js/toolbar.js
+++ b/IPython/html/static/notebook/js/toolbar.js
@@ -72,7 +72,7 @@ var IPython = (function (IPython) {
for(var i=0; i < list.length; i++) {
el = list[i];
var button = $('')
- .addClass('btn')
+ .addClass('btn btn-default')
.attr("title", el.label)
.append(
$("").addClass(el.icon)
diff --git a/IPython/html/static/notebook/js/tour.js b/IPython/html/static/notebook/js/tour.js
index e3c013248..d3c63678f 100644
--- a/IPython/html/static/notebook/js/tour.js
+++ b/IPython/html/static/notebook/js/tour.js
@@ -112,13 +112,13 @@ var tour_steps = [
var tour_style = "
\
\
\
\
- \
- \
- \
+ \
+ \
+ \
\
";
diff --git a/IPython/html/static/notebook/less/toolbar.less b/IPython/html/static/notebook/less/toolbar.less
index 1186d6d54..b05646dfa 100644
--- a/IPython/html/static/notebook/less/toolbar.less
+++ b/IPython/html/static/notebook/less/toolbar.less
@@ -15,7 +15,7 @@
padding: 0px;
padding-top: 3px;
}
- .btn {
+ .btn.btn-default {
padding: 2px 8px;
}
}
diff --git a/IPython/html/static/tree/js/clusterlist.js b/IPython/html/static/tree/js/clusterlist.js
index b941a22cb..98c12f7f8 100644
--- a/IPython/html/static/tree/js/clusterlist.js
+++ b/IPython/html/static/tree/js/clusterlist.js
@@ -83,7 +83,7 @@ var IPython = (function (IPython) {
};
ClusterItem.prototype.style = function () {
- this.element.addClass('list_item').addClass("row-fluid");
+ this.element.addClass('list_item').addClass("row");
};
ClusterItem.prototype.update_state = function (data) {
@@ -106,7 +106,7 @@ var IPython = (function (IPython) {
.attr('size',3)
.addClass('engine_num_input');
engines_col.append(input);
- var start_button = $('').addClass("btn btn-mini").text("Start");
+ var start_button = $('').addClass("btn btn-default btn-xs").text("Start");
var action_col = $('').addClass('action_col span2').append(
$("").addClass("item_buttons btn-group").append(
start_button
@@ -153,7 +153,7 @@ var IPython = (function (IPython) {
var profile_col = $('').addClass('profile_col span4').text(this.data.profile);
var status_col = $('').addClass('status_col span3').text('running');
var engines_col = $('').addClass('engines_col span3').text(this.data.n);
- var stop_button = $('').addClass("btn btn-mini").text("Stop");
+ var stop_button = $('').addClass("btn btn-default btn-xs").text("Stop");
var action_col = $('').addClass('action_col span2').append(
$("").addClass("item_buttons btn-group").append(
stop_button
diff --git a/IPython/html/static/tree/js/notebooklist.js b/IPython/html/static/tree/js/notebooklist.js
index 896856409..838c69cb8 100644
--- a/IPython/html/static/tree/js/notebooklist.js
+++ b/IPython/html/static/tree/js/notebooklist.js
@@ -189,7 +189,7 @@ var IPython = (function (IPython) {
NotebookList.prototype.new_notebook_item = function (index) {
- var item = $('').addClass("list_item").addClass("row-fluid");
+ var item = $('').addClass("list_item").addClass("row");
// item.addClass('list_item ui-widget ui-widget-content ui-helper-clearfix');
// item.css('border-top-style','none');
item.append($("").addClass("span12").append(
@@ -265,7 +265,7 @@ var IPython = (function (IPython) {
NotebookList.prototype.add_shutdown_button = function (item, session) {
var that = this;
- var shutdown_button = $("").text("Shutdown").addClass("btn btn-mini btn-danger").
+ var shutdown_button = $("").text("Shutdown").addClass("btn btn-default btn-xs btn-danger").
click(function (e) {
var settings = {
processData : false,
@@ -292,7 +292,7 @@ var IPython = (function (IPython) {
NotebookList.prototype.add_delete_button = function (item) {
var new_buttons = $('').addClass("btn-group pull-right");
var notebooklist = this;
- var delete_button = $("").text("Delete").addClass("btn btn-mini").
+ var delete_button = $("").text("Delete").addClass("btn btn-default btn-xs").
click(function (e) {
// $(this) is the button that was clicked.
var that = $(this);
@@ -339,7 +339,7 @@ var IPython = (function (IPython) {
NotebookList.prototype.add_upload_button = function (item) {
var that = this;
var upload_button = $('').text("Upload")
- .addClass('btn btn-primary btn-mini upload_button')
+ .addClass('btn btn-default btn-primary btn-xs upload_button')
.click(function (e) {
var nbname = item.find('.item_name > input').val();
if (nbname.slice(nbname.length-6, nbname.length) != ".ipynb") {
@@ -375,7 +375,7 @@ var IPython = (function (IPython) {
return false;
});
var cancel_button = $('').text("Cancel")
- .addClass("btn btn-mini")
+ .addClass("btn btn-default btn-xs")
.click(function (e) {
console.log('cancel click');
item.remove();
diff --git a/IPython/html/static/widgets/js/widget_bool.js b/IPython/html/static/widgets/js/widget_bool.js
index 5bf8626c9..8017f9970 100644
--- a/IPython/html/static/widgets/js/widget_bool.js
+++ b/IPython/html/static/widgets/js/widget_bool.js
@@ -76,7 +76,7 @@ define(["widgets/js/widget"], function(WidgetManager){
// Called when view is rendered.
var that = this;
this.setElement($('')
- .addClass('btn')
+ .addClass('btn btn-default')
.attr('type', 'button')
.on('click', function (e) {
e.preventDefault();
diff --git a/IPython/html/static/widgets/js/widget_button.js b/IPython/html/static/widgets/js/widget_button.js
index 36a20e8aa..0da9f28b5 100644
--- a/IPython/html/static/widgets/js/widget_button.js
+++ b/IPython/html/static/widgets/js/widget_button.js
@@ -20,7 +20,7 @@ define(["widgets/js/widget"], function(WidgetManager){
render : function(){
// Called when view is rendered.
this.setElement($("")
- .addClass('btn'));
+ .addClass('btn btn-default'));
this.update(); // Set defaults.
},
diff --git a/IPython/html/static/widgets/js/widget_container.js b/IPython/html/static/widgets/js/widget_container.js
index 692d1990b..2ca65ca89 100644
--- a/IPython/html/static/widgets/js/widget_container.js
+++ b/IPython/html/static/widgets/js/widget_container.js
@@ -165,7 +165,7 @@ define(["widgets/js/widget"], function(WidgetManager) {
this.$show_button = $('')
.html(" ")
- .addClass('btn btn-info widget-modal-show')
+ .addClass('btn btn-default btn-info widget-modal-show')
.appendTo(this.$el)
.click(function(){
that.show();
diff --git a/IPython/html/static/widgets/js/widget_int.js b/IPython/html/static/widgets/js/widget_int.js
index f6761abb7..732b4150c 100644
--- a/IPython/html/static/widgets/js/widget_int.js
+++ b/IPython/html/static/widgets/js/widget_int.js
@@ -274,7 +274,7 @@ define(["widgets/js/widget"], function(WidgetManager){
.appendTo(this.$el);
this.$el_to_style = this.$progress; // Set default element to style
this.$bar = $('')
- .addClass('bar')
+ .addClass('progress-bar')
.css('width', '50%')
.appendTo(this.$progress);
this.update(); // Set defaults.
diff --git a/IPython/html/static/widgets/js/widget_selection.js b/IPython/html/static/widgets/js/widget_selection.js
index f95622e49..e7557f376 100644
--- a/IPython/html/static/widgets/js/widget_selection.js
+++ b/IPython/html/static/widgets/js/widget_selection.js
@@ -31,12 +31,12 @@ define(["widgets/js/widget"], function(WidgetManager){
.appendTo(this.$el);
this.$el_to_style = this.$buttongroup; // Set default element to style
this.$droplabel = $('')
- .addClass('btn')
+ .addClass('btn btn-default')
.addClass('widget-combo-btn')
.html(" ")
.appendTo(this.$buttongroup);
this.$dropbutton = $('')
- .addClass('btn')
+ .addClass('btn btn-default')
.addClass('dropdown-toggle')
.addClass('widget-combo-carrot-btn')
.attr('data-toggle', 'dropdown')
@@ -246,7 +246,7 @@ define(["widgets/js/widget"], function(WidgetManager){
if (!$item_element.length) {
$item_element = $('')
.attr('type', 'button')
- .addClass('btn')
+ .addClass('btn btn-default')
.html(item_html)
.appendTo(that.$buttongroup)
.attr('data-value', item)
diff --git a/IPython/html/static/widgets/js/widget_selectioncontainer.js b/IPython/html/static/widgets/js/widget_selectioncontainer.js
index a585162ac..e7981de10 100644
--- a/IPython/html/static/widgets/js/widget_selectioncontainer.js
+++ b/IPython/html/static/widgets/js/widget_selectioncontainer.js
@@ -19,10 +19,10 @@ define(["widgets/js/widget"], function(WidgetManager){
var AccordionView = IPython.DOMWidgetView.extend({
render: function(){
// Called when view is rendered.
- var guid = 'accordion' + IPython.utils.uuid();
+ var guid = 'panel-group' + IPython.utils.uuid();
this.$el
.attr('id', guid)
- .addClass('accordion');
+ .addClass('panel-group');
this.containers = [];
this.model_containers = {};
this.update_children([], this.model.get('_children'));
@@ -60,7 +60,7 @@ define(["widgets/js/widget"], function(WidgetManager){
var accordian = that.containers[page_index];
if (accordian !== undefined) {
accordian
- .find('.accordion-heading')
+ .find('.panel-heading')
.find('.accordion-toggle')
.text(title);
}
@@ -71,9 +71,9 @@ define(["widgets/js/widget"], function(WidgetManager){
// Only update the selection if the selection wasn't triggered
// by the front-end. It must be triggered by the back-end.
if (options === undefined || options.updated_view != this) {
- this.containers[old_index].find('.accordion-body').collapse('hide');
+ this.containers[old_index].find('.panel-collapse').collapse('hide');
if (0 <= new_index && new_index < this.containers.length) {
- this.containers[new_index].find('.accordion-body').collapse('show');
+ this.containers[new_index].find('.panel-collapse').collapse('show');
}
}
},
@@ -101,10 +101,10 @@ define(["widgets/js/widget"], function(WidgetManager){
var index = this.containers.length;
var uuid = IPython.utils.uuid();
var accordion_group = $('')
- .addClass('accordion-group')
+ .addClass('panel panel-default')
.appendTo(this.$el);
var accordion_heading = $('')
- .addClass('accordion-heading')
+ .addClass('panel-heading')
.appendTo(accordion_group);
var that = this;
var accordion_toggle = $('')
@@ -122,10 +122,10 @@ define(["widgets/js/widget"], function(WidgetManager){
.text('Page ' + index)
.appendTo(accordion_heading);
var accordion_body = $('', {id: uuid})
- .addClass('accordion-body collapse')
+ .addClass('panel-collapse collapse')
.appendTo(accordion_group);
var accordion_inner = $('')
- .addClass('accordion-inner')
+ .addClass('panel-body')
.appendTo(accordion_body);
var container_index = this.containers.push(accordion_group) - 1;
accordion_group.container_index = container_index;
diff --git a/IPython/html/static/widgets/less/widgets.less b/IPython/html/static/widgets/less/widgets.less
index c18b79811..f2fce2512 100644
--- a/IPython/html/static/widgets/less/widgets.less
+++ b/IPython/html/static/widgets/less/widgets.less
@@ -185,7 +185,7 @@
/* Progress Bar */
width : 363px;
- .bar {
+ .progress-bar {
/* Disable progress bar animation */
-webkit-transition : none;
-moz-transition : none;
diff --git a/IPython/html/templates/page.html b/IPython/html/templates/page.html
index 8a1816aed..b4446866a 100644
--- a/IPython/html/templates/page.html
+++ b/IPython/html/templates/page.html
@@ -52,7 +52,7 @@