Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/twbs/bootstrap-rubygem.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGleb Mazovetskiy <glex.spb@gmail.com>2014-07-12 18:44:16 +0400
committerGleb Mazovetskiy <glex.spb@gmail.com>2014-07-12 20:23:39 +0400
commit43a76e57c9e3d8c53603ef0956b80e9dfcb24931 (patch)
tree574c4c47cdc67ff2b3d623cec533b9ac12ed2aee /assets/javascripts
parentd5625c907168b6311be122b99d89614e02448475 (diff)
rake convert
Diffstat (limited to 'assets/javascripts')
-rw-r--r--assets/javascripts/bootstrap.js58
-rw-r--r--assets/javascripts/bootstrap/affix.js2
-rw-r--r--assets/javascripts/bootstrap/button.js28
-rw-r--r--assets/javascripts/bootstrap/collapse.js5
-rw-r--r--assets/javascripts/bootstrap/modal.js6
-rw-r--r--assets/javascripts/bootstrap/tab.js4
-rw-r--r--assets/javascripts/bootstrap/tooltip.js13
7 files changed, 80 insertions, 36 deletions
diff --git a/assets/javascripts/bootstrap.js b/assets/javascripts/bootstrap.js
index 30409f4..a7870a9 100644
--- a/assets/javascripts/bootstrap.js
+++ b/assets/javascripts/bootstrap.js
@@ -83,7 +83,7 @@
this.$element
.removeClass(Affix.RESET)
.addClass(affixType)
- .trigger($.Event(affixType.replace('affix', 'affixed')))
+ .trigger(affixType.replace('affix', 'affixed') + '.bs.affix')
if (affix == 'bottom') {
this.$element.offset({
@@ -333,15 +333,31 @@
}
+ // FOCUS SHIM (FOR BUTTON GROUPS)
+ // ==============================
+
+ function getBtnTarget(target) {
+ var $target = $(target)
+ return $target.hasClass('btn') ? $target : $target.parent('.btn')
+ }
+
+
// BUTTON DATA-API
// ===============
- $(document).on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) {
- var $btn = $(e.target)
- if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
- Plugin.call($btn, 'toggle')
- e.preventDefault()
- })
+ $(document)
+ .on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) {
+ var $btn = $(e.target)
+ if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
+ Plugin.call($btn, 'toggle')
+ e.preventDefault()
+ })
+ .on('focus.bs.button.data-api', '[data-toggle^="button"]', function (e) {
+ getBtnTarget(e.target).addClass('focus')
+ })
+ .on('blur.bs.button.data-api', '[data-toggle^="button"]', function (e) {
+ getBtnTarget(e.target).removeClass('focus')
+ })
}(jQuery);
@@ -659,8 +675,7 @@
this.$element
.addClass('collapsing')
- .removeClass('collapse')
- .removeClass('in')
+ .removeClass('collapse in')
this.transitioning = 1
@@ -732,7 +747,7 @@
if (!data || !data.transitioning) {
if ($parent) $parent.find('[data-toggle="collapse"][data-parent="' + parent + '"]').not($this).addClass('collapsed')
- $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
+ $this.toggleClass('collapsed', $target.hasClass('in'))
}
Plugin.call($target, option)
@@ -949,7 +964,7 @@
var $active = container.find('> .active')
var transition = callback
&& $.support.transition
- && $active.hasClass('fade')
+ && (($active.length && $active.hasClass('fade')) || !!container.find('> .fade').length)
function next() {
$active
@@ -973,7 +988,7 @@
callback && callback()
}
- transition ?
+ $active.length && transition ?
$active
.one('bsTransitionEnd', next)
.emulateTransitionEnd(150) :
@@ -1389,11 +1404,11 @@
Modal.prototype.escape = function () {
if (this.isShown && this.options.keyboard) {
- this.$element.on('keyup.dismiss.bs.modal', $.proxy(function (e) {
+ this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) {
e.which == 27 && this.hide()
}, this))
} else if (!this.isShown) {
- this.$element.off('keyup.dismiss.bs.modal')
+ this.$element.off('keydown.dismiss.bs.modal')
}
}
@@ -1420,7 +1435,7 @@
this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
.appendTo(this.$body)
- this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) {
+ this.$element.on('mousedown.dismiss.bs.modal', $.proxy(function (e) {
if (e.target !== e.currentTarget) return
this.options.backdrop == 'static'
? this.$element[0].focus.call(this.$element[0])
@@ -1851,13 +1866,20 @@
Tooltip.prototype.getPosition = function ($element) {
$element = $element || this.$element
+
var el = $element[0]
var isBody = el.tagName == 'BODY'
- return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : null, {
- scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop(),
+ var isSvg = window.SVGElement && el instanceof window.SVGElement
+
+ var elRect = el.getBoundingClientRect ? el.getBoundingClientRect() : null
+ var elOffset = isBody ? { top: 0, left: 0 } : $element.offset()
+ var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() }
+ var outerDims = isSvg ? {} : {
width: isBody ? $(window).width() : $element.outerWidth(),
height: isBody ? $(window).height() : $element.outerHeight()
- }, isBody ? { top: 0, left: 0 } : $element.offset())
+ }
+
+ return $.extend({}, elRect, scroll, outerDims, elOffset)
}
Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) {
diff --git a/assets/javascripts/bootstrap/affix.js b/assets/javascripts/bootstrap/affix.js
index 7d404eb..26b09db 100644
--- a/assets/javascripts/bootstrap/affix.js
+++ b/assets/javascripts/bootstrap/affix.js
@@ -83,7 +83,7 @@
this.$element
.removeClass(Affix.RESET)
.addClass(affixType)
- .trigger($.Event(affixType.replace('affix', 'affixed')))
+ .trigger(affixType.replace('affix', 'affixed') + '.bs.affix')
if (affix == 'bottom') {
this.$element.offset({
diff --git a/assets/javascripts/bootstrap/button.js b/assets/javascripts/bootstrap/button.js
index dc3164f..7e2a6e4 100644
--- a/assets/javascripts/bootstrap/button.js
+++ b/assets/javascripts/bootstrap/button.js
@@ -97,14 +97,30 @@
}
+ // FOCUS SHIM (FOR BUTTON GROUPS)
+ // ==============================
+
+ function getBtnTarget(target) {
+ var $target = $(target)
+ return $target.hasClass('btn') ? $target : $target.parent('.btn')
+ }
+
+
// BUTTON DATA-API
// ===============
- $(document).on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) {
- var $btn = $(e.target)
- if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
- Plugin.call($btn, 'toggle')
- e.preventDefault()
- })
+ $(document)
+ .on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) {
+ var $btn = $(e.target)
+ if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
+ Plugin.call($btn, 'toggle')
+ e.preventDefault()
+ })
+ .on('focus.bs.button.data-api', '[data-toggle^="button"]', function (e) {
+ getBtnTarget(e.target).addClass('focus')
+ })
+ .on('blur.bs.button.data-api', '[data-toggle^="button"]', function (e) {
+ getBtnTarget(e.target).removeClass('focus')
+ })
}(jQuery);
diff --git a/assets/javascripts/bootstrap/collapse.js b/assets/javascripts/bootstrap/collapse.js
index e4e6d79..5a52424 100644
--- a/assets/javascripts/bootstrap/collapse.js
+++ b/assets/javascripts/bootstrap/collapse.js
@@ -88,8 +88,7 @@
this.$element
.addClass('collapsing')
- .removeClass('collapse')
- .removeClass('in')
+ .removeClass('collapse in')
this.transitioning = 1
@@ -161,7 +160,7 @@
if (!data || !data.transitioning) {
if ($parent) $parent.find('[data-toggle="collapse"][data-parent="' + parent + '"]').not($this).addClass('collapsed')
- $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
+ $this.toggleClass('collapsed', $target.hasClass('in'))
}
Plugin.call($target, option)
diff --git a/assets/javascripts/bootstrap/modal.js b/assets/javascripts/bootstrap/modal.js
index 29eedf1..fdefdd2 100644
--- a/assets/javascripts/bootstrap/modal.js
+++ b/assets/javascripts/bootstrap/modal.js
@@ -135,11 +135,11 @@
Modal.prototype.escape = function () {
if (this.isShown && this.options.keyboard) {
- this.$element.on('keyup.dismiss.bs.modal', $.proxy(function (e) {
+ this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) {
e.which == 27 && this.hide()
}, this))
} else if (!this.isShown) {
- this.$element.off('keyup.dismiss.bs.modal')
+ this.$element.off('keydown.dismiss.bs.modal')
}
}
@@ -166,7 +166,7 @@
this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
.appendTo(this.$body)
- this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) {
+ this.$element.on('mousedown.dismiss.bs.modal', $.proxy(function (e) {
if (e.target !== e.currentTarget) return
this.options.backdrop == 'static'
? this.$element[0].focus.call(this.$element[0])
diff --git a/assets/javascripts/bootstrap/tab.js b/assets/javascripts/bootstrap/tab.js
index c0e1e46..573b369 100644
--- a/assets/javascripts/bootstrap/tab.js
+++ b/assets/javascripts/bootstrap/tab.js
@@ -55,7 +55,7 @@
var $active = container.find('> .active')
var transition = callback
&& $.support.transition
- && $active.hasClass('fade')
+ && (($active.length && $active.hasClass('fade')) || !!container.find('> .fade').length)
function next() {
$active
@@ -79,7 +79,7 @@
callback && callback()
}
- transition ?
+ $active.length && transition ?
$active
.one('bsTransitionEnd', next)
.emulateTransitionEnd(150) :
diff --git a/assets/javascripts/bootstrap/tooltip.js b/assets/javascripts/bootstrap/tooltip.js
index 9cdb6c9..0c3a79d 100644
--- a/assets/javascripts/bootstrap/tooltip.js
+++ b/assets/javascripts/bootstrap/tooltip.js
@@ -316,13 +316,20 @@
Tooltip.prototype.getPosition = function ($element) {
$element = $element || this.$element
+
var el = $element[0]
var isBody = el.tagName == 'BODY'
- return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : null, {
- scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop(),
+ var isSvg = window.SVGElement && el instanceof window.SVGElement
+
+ var elRect = el.getBoundingClientRect ? el.getBoundingClientRect() : null
+ var elOffset = isBody ? { top: 0, left: 0 } : $element.offset()
+ var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() }
+ var outerDims = isSvg ? {} : {
width: isBody ? $(window).width() : $element.outerWidth(),
height: isBody ? $(window).height() : $element.outerHeight()
- }, isBody ? { top: 0, left: 0 } : $element.offset())
+ }
+
+ return $.extend({}, elRect, scroll, outerDims, elOffset)
}
Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) {