twitter-bootswatch-rails 3.3.2.0 → 3.3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/twitter/bootstrap/affix.js +5 -5
  3. data/app/assets/javascripts/twitter/bootstrap/alert.js +2 -2
  4. data/app/assets/javascripts/twitter/bootstrap/button.js +2 -2
  5. data/app/assets/javascripts/twitter/bootstrap/carousel.js +6 -6
  6. data/app/assets/javascripts/twitter/bootstrap/collapse.js +7 -7
  7. data/app/assets/javascripts/twitter/bootstrap/dropdown.js +3 -3
  8. data/app/assets/javascripts/twitter/bootstrap/modal.js +41 -26
  9. data/app/assets/javascripts/twitter/bootstrap/popover.js +3 -8
  10. data/app/assets/javascripts/twitter/bootstrap/scrollspy.js +17 -20
  11. data/app/assets/javascripts/twitter/bootstrap/tab.js +3 -3
  12. data/app/assets/javascripts/twitter/bootstrap/tooltip.js +17 -13
  13. data/app/assets/javascripts/twitter/bootstrap/transition.js +1 -1
  14. data/lib/generators/bootswatch/install/templates/variables.less.tt +5 -1
  15. data/lib/generators/bootswatch/themed/templates/_form.html.erb +1 -1
  16. data/lib/generators/bootswatch/themed/templates/_form.html.haml +1 -1
  17. data/lib/generators/bootswatch/themed/templates/_form.html.slim +1 -1
  18. data/lib/twitter/bootswatch/rails/version.rb +1 -1
  19. data/vendor/toolkit/twitter/bootstrap/alerts.less +2 -2
  20. data/vendor/toolkit/twitter/bootstrap/badges.less +6 -5
  21. data/vendor/toolkit/twitter/bootstrap/component-animations.less +1 -2
  22. data/vendor/toolkit/twitter/bootstrap/dropdowns.less +1 -1
  23. data/vendor/toolkit/twitter/bootstrap/forms.less +10 -2
  24. data/vendor/toolkit/twitter/bootstrap/glyphicons.less +4 -0
  25. data/vendor/toolkit/twitter/bootstrap/jumbotron.less +1 -1
  26. data/vendor/toolkit/twitter/bootstrap/modals.less +3 -1
  27. data/vendor/toolkit/twitter/bootstrap/navbar.less +0 -1
  28. data/vendor/toolkit/twitter/bootstrap/navs.less +0 -2
  29. data/vendor/toolkit/twitter/bootstrap/responsive-embed.less +8 -8
  30. data/vendor/toolkit/twitter/bootstrap/scaffolding.less +12 -0
  31. data/vendor/toolkit/twitter/bootstrap/tooltip.less +0 -1
  32. data/vendor/toolkit/twitter/bootstrap/type.less +1 -1
  33. data/vendor/toolkit/twitter/bootstrap/utilities.less +0 -1
  34. data/vendor/toolkit/twitter/bootstrap/variables.less +5 -1
  35. metadata +8 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bb5ad9093a96a47008a727273be82a3e1453b2b1
4
- data.tar.gz: e65bd8f37625310e58339bf7d91eaaedb3c21464
3
+ metadata.gz: 5b83b909ff85a03dd1fd746a3af09aab4a95d48e
4
+ data.tar.gz: f6b0a599eae40602b768ec79f6e7fae5b37c618c
5
5
  SHA512:
6
- metadata.gz: 5a980a3606b0ca957ab4964ec64b9373611a3a2d4c850977ff44d41df916f206708c337b56646a5f0a8a92f1ad05b75681d52059dfe118a4794e303fcdb7d2b9
7
- data.tar.gz: 4b074ca0aac6b4f43549d8e36fa41bf76e7de0527f9b08980c5014f5d4cb9f15ba4c213e37c401f70eb8f837c4e76eb96270356f63892fc2eae8ddf1e2ad0d40
6
+ metadata.gz: 39bad967de5e92f47bc9684da0a0956ba7e434c8c76e00bdf8d48eda09e24cd650545ccb3995abbf797a490e18aebbd258d30f6752627bd5002d5d35de21bb60
7
+ data.tar.gz: 297a1eb0edd4a6e27cea77f0fc6a1a12fa1907125f1840e19754ef28a5607d3ba334bfc25421ab5a4067b844c05895a7a8832833aa99d685ec4f638b7f03c96d
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: affix.js v3.3.2
2
+ * Bootstrap: affix.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#affix
4
4
  * ========================================================================
5
5
  * Copyright 2011-2015 Twitter, Inc.
@@ -21,14 +21,14 @@
21
21
  .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this))
22
22
 
23
23
  this.$element = $(element)
24
- this.affixed =
25
- this.unpin =
24
+ this.affixed = null
25
+ this.unpin = null
26
26
  this.pinnedOffset = null
27
27
 
28
28
  this.checkPosition()
29
29
  }
30
30
 
31
- Affix.VERSION = '3.3.2'
31
+ Affix.VERSION = '3.3.4'
32
32
 
33
33
  Affix.RESET = 'affix affix-top affix-bottom'
34
34
 
@@ -78,7 +78,7 @@
78
78
  var offset = this.options.offset
79
79
  var offsetTop = offset.top
80
80
  var offsetBottom = offset.bottom
81
- var scrollHeight = $('body').height()
81
+ var scrollHeight = $(document.body).height()
82
82
 
83
83
  if (typeof offset != 'object') offsetBottom = offsetTop = offset
84
84
  if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element)
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: alert.js v3.3.2
2
+ * Bootstrap: alert.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#alerts
4
4
  * ========================================================================
5
5
  * Copyright 2011-2015 Twitter, Inc.
@@ -18,7 +18,7 @@
18
18
  $(el).on('click', dismiss, this.close)
19
19
  }
20
20
 
21
- Alert.VERSION = '3.3.2'
21
+ Alert.VERSION = '3.3.4'
22
22
 
23
23
  Alert.TRANSITION_DURATION = 150
24
24
 
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: button.js v3.3.2
2
+ * Bootstrap: button.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#buttons
4
4
  * ========================================================================
5
5
  * Copyright 2011-2015 Twitter, Inc.
@@ -19,7 +19,7 @@
19
19
  this.isLoading = false
20
20
  }
21
21
 
22
- Button.VERSION = '3.3.2'
22
+ Button.VERSION = '3.3.4'
23
23
 
24
24
  Button.DEFAULTS = {
25
25
  loadingText: 'loading...'
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: carousel.js v3.3.2
2
+ * Bootstrap: carousel.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#carousel
4
4
  * ========================================================================
5
5
  * Copyright 2011-2015 Twitter, Inc.
@@ -17,10 +17,10 @@
17
17
  this.$element = $(element)
18
18
  this.$indicators = this.$element.find('.carousel-indicators')
19
19
  this.options = options
20
- this.paused =
21
- this.sliding =
22
- this.interval =
23
- this.$active =
20
+ this.paused = null
21
+ this.sliding = null
22
+ this.interval = null
23
+ this.$active = null
24
24
  this.$items = null
25
25
 
26
26
  this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this))
@@ -30,7 +30,7 @@
30
30
  .on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
31
31
  }
32
32
 
33
- Carousel.VERSION = '3.3.2'
33
+ Carousel.VERSION = '3.3.4'
34
34
 
35
35
  Carousel.TRANSITION_DURATION = 600
36
36
 
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: collapse.js v3.3.2
2
+ * Bootstrap: collapse.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#collapse
4
4
  * ========================================================================
5
5
  * Copyright 2011-2015 Twitter, Inc.
@@ -16,7 +16,8 @@
16
16
  var Collapse = function (element, options) {
17
17
  this.$element = $(element)
18
18
  this.options = $.extend({}, Collapse.DEFAULTS, options)
19
- this.$trigger = $(this.options.trigger).filter('[href="#' + element.id + '"], [data-target="#' + element.id + '"]')
19
+ this.$trigger = $('[data-toggle="collapse"][href="#' + element.id + '"],' +
20
+ '[data-toggle="collapse"][data-target="#' + element.id + '"]')
20
21
  this.transitioning = null
21
22
 
22
23
  if (this.options.parent) {
@@ -28,13 +29,12 @@
28
29
  if (this.options.toggle) this.toggle()
29
30
  }
30
31
 
31
- Collapse.VERSION = '3.3.2'
32
+ Collapse.VERSION = '3.3.4'
32
33
 
33
34
  Collapse.TRANSITION_DURATION = 350
34
35
 
35
36
  Collapse.DEFAULTS = {
36
- toggle: true,
37
- trigger: '[data-toggle="collapse"]'
37
+ toggle: true
38
38
  }
39
39
 
40
40
  Collapse.prototype.dimension = function () {
@@ -172,7 +172,7 @@
172
172
  var data = $this.data('bs.collapse')
173
173
  var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option)
174
174
 
175
- if (!data && options.toggle && option == 'show') options.toggle = false
175
+ if (!data && options.toggle && /show|hide/.test(option)) options.toggle = false
176
176
  if (!data) $this.data('bs.collapse', (data = new Collapse(this, options)))
177
177
  if (typeof option == 'string') data[option]()
178
178
  })
@@ -203,7 +203,7 @@
203
203
 
204
204
  var $target = getTargetFromTrigger($this)
205
205
  var data = $target.data('bs.collapse')
206
- var option = data ? 'toggle' : $.extend({}, $this.data(), { trigger: this })
206
+ var option = data ? 'toggle' : $this.data()
207
207
 
208
208
  Plugin.call($target, option)
209
209
  })
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: dropdown.js v3.3.2
2
+ * Bootstrap: dropdown.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#dropdowns
4
4
  * ========================================================================
5
5
  * Copyright 2011-2015 Twitter, Inc.
@@ -19,7 +19,7 @@
19
19
  $(element).on('click.bs.dropdown', this.toggle)
20
20
  }
21
21
 
22
- Dropdown.VERSION = '3.3.2'
22
+ Dropdown.VERSION = '3.3.4'
23
23
 
24
24
  Dropdown.prototype.toggle = function (e) {
25
25
  var $this = $(this)
@@ -72,7 +72,7 @@
72
72
  return $this.trigger('click')
73
73
  }
74
74
 
75
- var desc = ' li:not(.divider):visible a'
75
+ var desc = ' li:not(.disabled):visible a'
76
76
  var $items = $parent.find('[role="menu"]' + desc + ', [role="listbox"]' + desc)
77
77
 
78
78
  if (!$items.length) return
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: modal.js v3.3.2
2
+ * Bootstrap: modal.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#modals
4
4
  * ========================================================================
5
5
  * Copyright 2011-2015 Twitter, Inc.
@@ -14,12 +14,15 @@
14
14
  // ======================
15
15
 
16
16
  var Modal = function (element, options) {
17
- this.options = options
18
- this.$body = $(document.body)
19
- this.$element = $(element)
20
- this.$backdrop =
21
- this.isShown = null
22
- this.scrollbarWidth = 0
17
+ this.options = options
18
+ this.$body = $(document.body)
19
+ this.$element = $(element)
20
+ this.$dialog = this.$element.find('.modal-dialog')
21
+ this.$backdrop = null
22
+ this.isShown = null
23
+ this.originalBodyPad = null
24
+ this.scrollbarWidth = 0
25
+ this.ignoreBackdropClick = false
23
26
 
24
27
  if (this.options.remote) {
25
28
  this.$element
@@ -30,7 +33,7 @@
30
33
  }
31
34
  }
32
35
 
33
- Modal.VERSION = '3.3.2'
36
+ Modal.VERSION = '3.3.4'
34
37
 
35
38
  Modal.TRANSITION_DURATION = 300
36
39
  Modal.BACKDROP_TRANSITION_DURATION = 150
@@ -64,6 +67,12 @@
64
67
 
65
68
  this.$element.on('click.dismiss.bs.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this))
66
69
 
70
+ this.$dialog.on('mousedown.dismiss.bs.modal', function () {
71
+ that.$element.one('mouseup.dismiss.bs.modal', function (e) {
72
+ if ($(e.target).is(that.$element)) that.ignoreBackdropClick = true
73
+ })
74
+ })
75
+
67
76
  this.backdrop(function () {
68
77
  var transition = $.support.transition && that.$element.hasClass('fade')
69
78
 
@@ -75,7 +84,6 @@
75
84
  .show()
76
85
  .scrollTop(0)
77
86
 
78
- if (that.options.backdrop) that.adjustBackdrop()
79
87
  that.adjustDialog()
80
88
 
81
89
  if (transition) {
@@ -91,7 +99,7 @@
91
99
  var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })
92
100
 
93
101
  transition ?
94
- that.$element.find('.modal-dialog') // wait for modal to slide in
102
+ that.$dialog // wait for modal to slide in
95
103
  .one('bsTransitionEnd', function () {
96
104
  that.$element.trigger('focus').trigger(e)
97
105
  })
@@ -120,6 +128,9 @@
120
128
  .removeClass('in')
121
129
  .attr('aria-hidden', true)
122
130
  .off('click.dismiss.bs.modal')
131
+ .off('mouseup.dismiss.bs.modal')
132
+
133
+ this.$dialog.off('mousedown.dismiss.bs.modal')
123
134
 
124
135
  $.support.transition && this.$element.hasClass('fade') ?
125
136
  this.$element
@@ -180,13 +191,18 @@
180
191
  var doAnimate = $.support.transition && animate
181
192
 
182
193
  this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
183
- .prependTo(this.$element)
184
- .on('click.dismiss.bs.modal', $.proxy(function (e) {
185
- if (e.target !== e.currentTarget) return
186
- this.options.backdrop == 'static'
187
- ? this.$element[0].focus.call(this.$element[0])
188
- : this.hide.call(this)
189
- }, this))
194
+ .appendTo(this.$body)
195
+
196
+ this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) {
197
+ if (this.ignoreBackdropClick) {
198
+ this.ignoreBackdropClick = false
199
+ return
200
+ }
201
+ if (e.target !== e.currentTarget) return
202
+ this.options.backdrop == 'static'
203
+ ? this.$element[0].focus()
204
+ : this.hide()
205
+ }, this))
190
206
 
191
207
  if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
192
208
 
@@ -221,16 +237,9 @@
221
237
  // these following methods are used to handle overflowing modals
222
238
 
223
239
  Modal.prototype.handleUpdate = function () {
224
- if (this.options.backdrop) this.adjustBackdrop()
225
240
  this.adjustDialog()
226
241
  }
227
242
 
228
- Modal.prototype.adjustBackdrop = function () {
229
- this.$backdrop
230
- .css('height', 0)
231
- .css('height', this.$element[0].scrollHeight)
232
- }
233
-
234
243
  Modal.prototype.adjustDialog = function () {
235
244
  var modalIsOverflowing = this.$element[0].scrollHeight > document.documentElement.clientHeight
236
245
 
@@ -248,17 +257,23 @@
248
257
  }
249
258
 
250
259
  Modal.prototype.checkScrollbar = function () {
251
- this.bodyIsOverflowing = document.body.scrollHeight > document.documentElement.clientHeight
260
+ var fullWindowWidth = window.innerWidth
261
+ if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8
262
+ var documentElementRect = document.documentElement.getBoundingClientRect()
263
+ fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left)
264
+ }
265
+ this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth
252
266
  this.scrollbarWidth = this.measureScrollbar()
253
267
  }
254
268
 
255
269
  Modal.prototype.setScrollbar = function () {
256
270
  var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10)
271
+ this.originalBodyPad = document.body.style.paddingRight || ''
257
272
  if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth)
258
273
  }
259
274
 
260
275
  Modal.prototype.resetScrollbar = function () {
261
- this.$body.css('padding-right', '')
276
+ this.$body.css('padding-right', this.originalBodyPad)
262
277
  }
263
278
 
264
279
  Modal.prototype.measureScrollbar = function () { // thx walsh
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: popover.js v3.3.2
2
+ * Bootstrap: popover.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#popovers
4
4
  * ========================================================================
5
5
  * Copyright 2011-2015 Twitter, Inc.
@@ -19,7 +19,7 @@
19
19
 
20
20
  if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
21
21
 
22
- Popover.VERSION = '3.3.2'
22
+ Popover.VERSION = '3.3.4'
23
23
 
24
24
  Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {
25
25
  placement: 'right',
@@ -75,11 +75,6 @@
75
75
  return (this.$arrow = this.$arrow || this.tip().find('.arrow'))
76
76
  }
77
77
 
78
- Popover.prototype.tip = function () {
79
- if (!this.$tip) this.$tip = $(this.options.template)
80
- return this.$tip
81
- }
82
-
83
78
 
84
79
  // POPOVER PLUGIN DEFINITION
85
80
  // =========================
@@ -90,7 +85,7 @@
90
85
  var data = $this.data('bs.popover')
91
86
  var options = typeof option == 'object' && option
92
87
 
93
- if (!data && option == 'destroy') return
88
+ if (!data && /destroy|hide/.test(option)) return
94
89
  if (!data) $this.data('bs.popover', (data = new Popover(this, options)))
95
90
  if (typeof option == 'string') data[option]()
96
91
  })
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: scrollspy.js v3.3.2
2
+ * Bootstrap: scrollspy.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#scrollspy
4
4
  * ========================================================================
5
5
  * Copyright 2011-2015 Twitter, Inc.
@@ -14,10 +14,8 @@
14
14
  // ==========================
15
15
 
16
16
  function ScrollSpy(element, options) {
17
- var process = $.proxy(this.process, this)
18
-
19
- this.$body = $('body')
20
- this.$scrollElement = $(element).is('body') ? $(window) : $(element)
17
+ this.$body = $(document.body)
18
+ this.$scrollElement = $(element).is(document.body) ? $(window) : $(element)
21
19
  this.options = $.extend({}, ScrollSpy.DEFAULTS, options)
22
20
  this.selector = (this.options.target || '') + ' .nav li > a'
23
21
  this.offsets = []
@@ -25,12 +23,12 @@
25
23
  this.activeTarget = null
26
24
  this.scrollHeight = 0
27
25
 
28
- this.$scrollElement.on('scroll.bs.scrollspy', process)
26
+ this.$scrollElement.on('scroll.bs.scrollspy', $.proxy(this.process, this))
29
27
  this.refresh()
30
28
  this.process()
31
29
  }
32
30
 
33
- ScrollSpy.VERSION = '3.3.2'
31
+ ScrollSpy.VERSION = '3.3.4'
34
32
 
35
33
  ScrollSpy.DEFAULTS = {
36
34
  offset: 10
@@ -41,20 +39,19 @@
41
39
  }
42
40
 
43
41
  ScrollSpy.prototype.refresh = function () {
44
- var offsetMethod = 'offset'
45
- var offsetBase = 0
42
+ var that = this
43
+ var offsetMethod = 'offset'
44
+ var offsetBase = 0
45
+
46
+ this.offsets = []
47
+ this.targets = []
48
+ this.scrollHeight = this.getScrollHeight()
46
49
 
47
50
  if (!$.isWindow(this.$scrollElement[0])) {
48
51
  offsetMethod = 'position'
49
52
  offsetBase = this.$scrollElement.scrollTop()
50
53
  }
51
54
 
52
- this.offsets = []
53
- this.targets = []
54
- this.scrollHeight = this.getScrollHeight()
55
-
56
- var self = this
57
-
58
55
  this.$body
59
56
  .find(this.selector)
60
57
  .map(function () {
@@ -69,8 +66,8 @@
69
66
  })
70
67
  .sort(function (a, b) { return a[0] - b[0] })
71
68
  .each(function () {
72
- self.offsets.push(this[0])
73
- self.targets.push(this[1])
69
+ that.offsets.push(this[0])
70
+ that.targets.push(this[1])
74
71
  })
75
72
  }
76
73
 
@@ -99,7 +96,7 @@
99
96
  for (i = offsets.length; i--;) {
100
97
  activeTarget != targets[i]
101
98
  && scrollTop >= offsets[i]
102
- && (!offsets[i + 1] || scrollTop <= offsets[i + 1])
99
+ && (offsets[i + 1] === undefined || scrollTop < offsets[i + 1])
103
100
  && this.activate(targets[i])
104
101
  }
105
102
  }
@@ -110,8 +107,8 @@
110
107
  this.clear()
111
108
 
112
109
  var selector = this.selector +
113
- '[data-target="' + target + '"],' +
114
- this.selector + '[href="' + target + '"]'
110
+ '[data-target="' + target + '"],' +
111
+ this.selector + '[href="' + target + '"]'
115
112
 
116
113
  var active = $(selector)
117
114
  .parents('li')
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: tab.js v3.3.2
2
+ * Bootstrap: tab.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#tabs
4
4
  * ========================================================================
5
5
  * Copyright 2011-2015 Twitter, Inc.
@@ -17,7 +17,7 @@
17
17
  this.element = $(element)
18
18
  }
19
19
 
20
- Tab.VERSION = '3.3.2'
20
+ Tab.VERSION = '3.3.4'
21
21
 
22
22
  Tab.TRANSITION_DURATION = 150
23
23
 
@@ -88,7 +88,7 @@
88
88
  element.removeClass('fade')
89
89
  }
90
90
 
91
- if (element.parent('.dropdown-menu')) {
91
+ if (element.parent('.dropdown-menu').length) {
92
92
  element
93
93
  .closest('li.dropdown')
94
94
  .addClass('active')
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: tooltip.js v3.3.2
2
+ * Bootstrap: tooltip.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#tooltip
4
4
  * Inspired by the original jQuery.tipsy by Jason Frame
5
5
  * ========================================================================
@@ -15,17 +15,17 @@
15
15
  // ===============================
16
16
 
17
17
  var Tooltip = function (element, options) {
18
- this.type =
19
- this.options =
20
- this.enabled =
21
- this.timeout =
22
- this.hoverState =
18
+ this.type = null
19
+ this.options = null
20
+ this.enabled = null
21
+ this.timeout = null
22
+ this.hoverState = null
23
23
  this.$element = null
24
24
 
25
25
  this.init('tooltip', element, options)
26
26
  }
27
27
 
28
- Tooltip.VERSION = '3.3.2'
28
+ Tooltip.VERSION = '3.3.4'
29
29
 
30
30
  Tooltip.TRANSITION_DURATION = 150
31
31
 
@@ -52,6 +52,10 @@
52
52
  this.options = this.getOptions(options)
53
53
  this.$viewport = this.options.viewport && $(this.options.viewport.selector || this.options.viewport)
54
54
 
55
+ if (this.$element[0] instanceof document.constructor && !this.options.selector) {
56
+ throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!')
57
+ }
58
+
55
59
  var triggers = this.options.trigger.split(' ')
56
60
 
57
61
  for (var i = triggers.length; i--;) {
@@ -272,10 +276,10 @@
272
276
  this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical)
273
277
  }
274
278
 
275
- Tooltip.prototype.replaceArrow = function (delta, dimension, isHorizontal) {
279
+ Tooltip.prototype.replaceArrow = function (delta, dimension, isVertical) {
276
280
  this.arrow()
277
- .css(isHorizontal ? 'left' : 'top', 50 * (1 - delta / dimension) + '%')
278
- .css(isHorizontal ? 'top' : 'left', '')
281
+ .css(isVertical ? 'left' : 'top', 50 * (1 - delta / dimension) + '%')
282
+ .css(isVertical ? 'top' : 'left', '')
279
283
  }
280
284
 
281
285
  Tooltip.prototype.setContent = function () {
@@ -288,7 +292,7 @@
288
292
 
289
293
  Tooltip.prototype.hide = function (callback) {
290
294
  var that = this
291
- var $tip = this.tip()
295
+ var $tip = $(this.$tip)
292
296
  var e = $.Event('hide.bs.' + this.type)
293
297
 
294
298
  function complete() {
@@ -305,7 +309,7 @@
305
309
 
306
310
  $tip.removeClass('in')
307
311
 
308
- $.support.transition && this.$tip.hasClass('fade') ?
312
+ $.support.transition && $tip.hasClass('fade') ?
309
313
  $tip
310
314
  .one('bsTransitionEnd', complete)
311
315
  .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) :
@@ -449,7 +453,7 @@
449
453
  var data = $this.data('bs.tooltip')
450
454
  var options = typeof option == 'object' && option
451
455
 
452
- if (!data && option == 'destroy') return
456
+ if (!data && /destroy|hide/.test(option)) return
453
457
  if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options)))
454
458
  if (typeof option == 'string') data[option]()
455
459
  })
@@ -1,5 +1,5 @@
1
1
  /* ========================================================================
2
- * Bootstrap: transition.js v3.3.2
2
+ * Bootstrap: transition.js v3.3.4
3
3
  * http://getbootstrap.com/javascript/#transitions
4
4
  * ========================================================================
5
5
  * Copyright 2011-2015 Twitter, Inc.
@@ -210,6 +210,9 @@
210
210
  //** Small `.form-control` height
211
211
  @input-height-small: (floor(@font-size-small * @line-height-small) + (@padding-small-vertical * 2) + 2);
212
212
 
213
+ //** `.form-group` margin
214
+ @form-group-margin-bottom: 15px;
215
+
213
216
  @legend-color: @gray-dark;
214
217
  @legend-border-color: #e5e5e5;
215
218
 
@@ -269,7 +272,8 @@
269
272
  @zindex-popover: 1060;
270
273
  @zindex-tooltip: 1070;
271
274
  @zindex-navbar-fixed: 1030;
272
- @zindex-modal: 1040;
275
+ @zindex-modal-background: 1040;
276
+ @zindex-modal: 1050;
273
277
 
274
278
 
275
279
  //== Media queries breakpoints
@@ -1,4 +1,4 @@
1
- <%%= form_for @<%= resource_name %>, :html => { :class => 'form-horizontal' } do |f| %>
1
+ <%%= form_for @<%= resource_name %> do |f| %>
2
2
  <%- columns.each do |column| -%>
3
3
  <div class="form-group">
4
4
  <%%= f.label :<%= column.name %>, :class => 'control-label' %>
@@ -1,4 +1,4 @@
1
- = form_for @<%= resource_name %>, :html => { :class => 'form-horizontal' } do |f|
1
+ = form_for @<%= resource_name %> do |f|
2
2
  <%- columns.each do |column| -%>
3
3
  .form-group
4
4
  = f.label :<%= column.name %>, :class => 'control-label'
@@ -1,4 +1,4 @@
1
- = form_for @<%= resource_name %>, :html => { :class => 'form-horizontal' } do |f|
1
+ = form_for @<%= resource_name %> do |f|
2
2
  <%- columns.each do |column| -%>
3
3
  .form-group
4
4
  = f.label :<%= column.name %>, :class => 'control-label'
@@ -1,7 +1,7 @@
1
1
  module Twitter
2
2
  module Bootswatch
3
3
  module Rails
4
- VERSION = '3.3.2.0'
4
+ VERSION = '3.3.4.0'
5
5
  end
6
6
  end
7
7
  end
@@ -18,7 +18,7 @@
18
18
  // Specified for the h4 to prevent conflicts of changing @headings-color
19
19
  color: inherit;
20
20
  }
21
-
21
+
22
22
  // Provide class for links that match alerts
23
23
  .alert-link {
24
24
  font-weight: @alert-link-font-weight;
@@ -29,7 +29,7 @@
29
29
  > ul {
30
30
  margin-bottom: 0;
31
31
  }
32
-
32
+
33
33
  > p + p {
34
34
  margin-top: 5px;
35
35
  }
@@ -28,8 +28,9 @@
28
28
  position: relative;
29
29
  top: -1px;
30
30
  }
31
-
32
- .btn-xs & {
31
+
32
+ .btn-xs &,
33
+ .btn-group-xs > .btn & {
33
34
  top: 0;
34
35
  padding: 1px 5px;
35
36
  }
@@ -50,15 +51,15 @@
50
51
  color: @badge-active-color;
51
52
  background-color: @badge-active-bg;
52
53
  }
53
-
54
+
54
55
  .list-group-item > & {
55
56
  float: right;
56
57
  }
57
-
58
+
58
59
  .list-group-item > & + & {
59
60
  margin-right: 5px;
60
61
  }
61
-
62
+
62
63
  .nav-pills > li > a > & {
63
64
  margin-left: 3px;
64
65
  }
@@ -17,9 +17,8 @@
17
17
 
18
18
  .collapse {
19
19
  display: none;
20
- visibility: hidden;
21
20
 
22
- &.in { display: block; visibility: visible; }
21
+ &.in { display: block; }
23
22
  tr&.in { display: table-row; }
24
23
  tbody&.in { display: table-row-group; }
25
24
  }
@@ -10,7 +10,7 @@
10
10
  height: 0;
11
11
  margin-left: 2px;
12
12
  vertical-align: middle;
13
- border-top: @caret-width-base solid;
13
+ border-top: @caret-width-base dashed;
14
14
  border-right: @caret-width-base solid transparent;
15
15
  border-left: @caret-width-base solid transparent;
16
16
  }
@@ -141,11 +141,15 @@ output {
141
141
  &[disabled],
142
142
  &[readonly],
143
143
  fieldset[disabled] & {
144
- cursor: @cursor-disabled;
145
144
  background-color: @input-bg-disabled;
146
145
  opacity: 1; // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655
147
146
  }
148
147
 
148
+ &[disabled],
149
+ fieldset[disabled] & {
150
+ cursor: @cursor-disabled;
151
+ }
152
+
149
153
  // Reset height for `textarea`s
150
154
  textarea& {
151
155
  height: auto;
@@ -198,7 +202,7 @@ input[type="search"] {
198
202
  // horizontal forms, use the predefined grid classes.
199
203
 
200
204
  .form-group {
201
- margin-bottom: 15px;
205
+ margin-bottom: @form-group-margin-bottom;
202
206
  }
203
207
 
204
208
 
@@ -238,6 +242,7 @@ input[type="search"] {
238
242
  // Radios and checkboxes on same line
239
243
  .radio-inline,
240
244
  .checkbox-inline {
245
+ position: relative;
241
246
  display: inline-block;
242
247
  padding-left: 20px;
243
248
  margin-bottom: 0;
@@ -294,6 +299,7 @@ input[type="checkbox"] {
294
299
  padding-bottom: (@padding-base-vertical + 1);
295
300
  // Remove default margin from `p`
296
301
  margin-bottom: 0;
302
+ min-height: (@line-height-computed + @font-size-base);
297
303
 
298
304
  &.input-lg,
299
305
  &.input-sm {
@@ -323,6 +329,7 @@ input[type="checkbox"] {
323
329
  padding: @padding-small-vertical @padding-small-horizontal;
324
330
  font-size: @font-size-small;
325
331
  line-height: @line-height-small;
332
+ min-height: (@line-height-computed + @font-size-small);
326
333
  }
327
334
  }
328
335
 
@@ -338,6 +345,7 @@ input[type="checkbox"] {
338
345
  padding: @padding-large-vertical @padding-large-horizontal;
339
346
  font-size: @font-size-large;
340
347
  line-height: @line-height-large;
348
+ min-height: (@line-height-computed + @font-size-large);
341
349
  }
342
350
  }
343
351
 
@@ -266,8 +266,12 @@
266
266
  .glyphicon-piggy-bank { &:before { content: "\e225"; } }
267
267
  .glyphicon-scissors { &:before { content: "\e226"; } }
268
268
  .glyphicon-bitcoin { &:before { content: "\e227"; } }
269
+ .glyphicon-btc { &:before { content: "\e227"; } }
270
+ .glyphicon-xbt { &:before { content: "\e227"; } }
269
271
  .glyphicon-yen { &:before { content: "\00a5"; } }
272
+ .glyphicon-jpy { &:before { content: "\00a5"; } }
270
273
  .glyphicon-ruble { &:before { content: "\20bd"; } }
274
+ .glyphicon-rub { &:before { content: "\20bd"; } }
271
275
  .glyphicon-scale { &:before { content: "\e230"; } }
272
276
  .glyphicon-ice-lolly { &:before { content: "\e231"; } }
273
277
  .glyphicon-ice-lolly-tasted { &:before { content: "\e232"; } }
@@ -13,7 +13,7 @@
13
13
  .h1 {
14
14
  color: @jumbotron-heading-color;
15
15
  }
16
-
16
+
17
17
  p {
18
18
  margin-bottom: (@jumbotron-padding / 2);
19
19
  font-size: @jumbotron-font-size;
@@ -62,10 +62,12 @@
62
62
 
63
63
  // Modal background
64
64
  .modal-backdrop {
65
- position: absolute;
65
+ position: fixed;
66
66
  top: 0;
67
67
  right: 0;
68
+ bottom: 0;
68
69
  left: 0;
70
+ z-index: @zindex-modal-background;
69
71
  background-color: @modal-backdrop-bg;
70
72
  // Fade for backdrop
71
73
  &.fade { .opacity(0); }
@@ -67,7 +67,6 @@
67
67
 
68
68
  &.collapse {
69
69
  display: block !important;
70
- visibility: visible !important;
71
70
  height: auto !important;
72
71
  padding-bottom: 0; // Override default setting
73
72
  overflow: visible !important;
@@ -223,11 +223,9 @@
223
223
  .tab-content {
224
224
  > .tab-pane {
225
225
  display: none;
226
- visibility: hidden;
227
226
  }
228
227
  > .active {
229
228
  display: block;
230
- visibility: visible;
231
229
  }
232
230
  }
233
231
 
@@ -22,14 +22,14 @@
22
22
  width: 100%;
23
23
  border: 0;
24
24
  }
25
+ }
25
26
 
26
- // Modifier class for 16:9 aspect ratio
27
- &.embed-responsive-16by9 {
28
- padding-bottom: 56.25%;
29
- }
27
+ // Modifier class for 16:9 aspect ratio
28
+ .embed-responsive-16by9 {
29
+ padding-bottom: 56.25%;
30
+ }
30
31
 
31
- // Modifier class for 4:3 aspect ratio
32
- &.embed-responsive-4by3 {
33
- padding-bottom: 75%;
34
- }
32
+ // Modifier class for 4:3 aspect ratio
33
+ .embed-responsive-4by3 {
34
+ padding-bottom: 75%;
35
35
  }
@@ -148,3 +148,15 @@ hr {
148
148
  clip: auto;
149
149
  }
150
150
  }
151
+
152
+
153
+ // iOS "clickable elements" fix for role="button"
154
+ //
155
+ // Fixes "clickability" issue (and more generally, the firing of events such as focus as well)
156
+ // for traditionally non-focusable elements with role="button"
157
+ // see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
158
+ // Upstream patch for normalize.css submitted: https://github.com/necolas/normalize.css/pull/379 - remove this fix once that is merged
159
+
160
+ [role="button"] {
161
+ cursor: pointer;
162
+ }
@@ -8,7 +8,6 @@
8
8
  position: absolute;
9
9
  z-index: @zindex-tooltip;
10
10
  display: block;
11
- visibility: visible;
12
11
  // Reset font and text properties given new insertion method
13
12
  font-family: @font-family-base;
14
13
  font-size: @font-size-small;
@@ -238,7 +238,7 @@ abbr[data-original-title] {
238
238
  }
239
239
  .initialism {
240
240
  font-size: 90%;
241
- text-transform: uppercase;
241
+ .text-uppercase();
242
242
  }
243
243
 
244
244
  // Blockquotes
@@ -44,7 +44,6 @@
44
44
 
45
45
  .hidden {
46
46
  display: none !important;
47
- visibility: hidden !important;
48
47
  }
49
48
 
50
49
 
@@ -207,6 +207,9 @@
207
207
  //** Small `.form-control` height
208
208
  @input-height-small: (floor(@font-size-small * @line-height-small) + (@padding-small-vertical * 2) + 2);
209
209
 
210
+ //** `.form-group` margin
211
+ @form-group-margin-bottom: 15px;
212
+
210
213
  @legend-color: @gray-dark;
211
214
  @legend-border-color: #e5e5e5;
212
215
 
@@ -266,7 +269,8 @@
266
269
  @zindex-popover: 1060;
267
270
  @zindex-tooltip: 1070;
268
271
  @zindex-navbar-fixed: 1030;
269
- @zindex-modal: 1040;
272
+ @zindex-modal-background: 1040;
273
+ @zindex-modal: 1050;
270
274
 
271
275
 
272
276
  //== Media queries breakpoints
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twitter-bootswatch-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.2.0
4
+ version: 3.3.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - scottvrosenthal
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-16 00:00:00.000000000 Z
11
+ date: 2015-06-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties
@@ -51,6 +51,9 @@ dependencies:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
53
  version: '2.3'
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 2.3.0
54
57
  type: :runtime
55
58
  prerelease: false
56
59
  version_requirements: !ruby/object:Gem::Requirement
@@ -58,6 +61,9 @@ dependencies:
58
61
  - - "~>"
59
62
  - !ruby/object:Gem::Version
60
63
  version: '2.3'
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: 2.3.0
61
67
  - !ruby/object:Gem::Dependency
62
68
  name: rails
63
69
  requirement: !ruby/object:Gem::Requirement