semantic-ui-sass 1.7.0.0 → 1.7.3.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 (69) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/app/assets/javascripts/semantic-ui/accordion.js +100 -47
  4. data/app/assets/javascripts/semantic-ui/api.js +9 -9
  5. data/app/assets/javascripts/semantic-ui/checkbox.js +14 -13
  6. data/app/assets/javascripts/semantic-ui/dimmer.js +9 -9
  7. data/app/assets/javascripts/semantic-ui/dropdown.js +98 -58
  8. data/app/assets/javascripts/semantic-ui/form.js +23 -23
  9. data/app/assets/javascripts/semantic-ui/modal.js +14 -14
  10. data/app/assets/javascripts/semantic-ui/popup.js +91 -40
  11. data/app/assets/javascripts/semantic-ui/progress.js +12 -6
  12. data/app/assets/javascripts/semantic-ui/rating.js +6 -6
  13. data/app/assets/javascripts/semantic-ui/search.js +217 -206
  14. data/app/assets/javascripts/semantic-ui/shape.js +8 -8
  15. data/app/assets/javascripts/semantic-ui/sidebar.js +116 -93
  16. data/app/assets/javascripts/semantic-ui/site.js +2 -2
  17. data/app/assets/javascripts/semantic-ui/state.js +6 -6
  18. data/app/assets/javascripts/semantic-ui/sticky.js +11 -11
  19. data/app/assets/javascripts/semantic-ui/tab.js +12 -12
  20. data/app/assets/javascripts/semantic-ui/transition.js +9 -9
  21. data/app/assets/javascripts/semantic-ui/video.js +4 -4
  22. data/app/assets/javascripts/semantic-ui/visibility.js +3 -3
  23. data/app/assets/javascripts/semantic-ui/visit.js +7 -7
  24. data/app/assets/stylesheets/semantic-ui/collections/_breadcrumb.scss +1 -1
  25. data/app/assets/stylesheets/semantic-ui/collections/_form.scss +1 -1
  26. data/app/assets/stylesheets/semantic-ui/collections/_grid.scss +118 -14
  27. data/app/assets/stylesheets/semantic-ui/collections/_menu.scss +23 -9
  28. data/app/assets/stylesheets/semantic-ui/collections/_message.scss +4 -4
  29. data/app/assets/stylesheets/semantic-ui/collections/_table.scss +1 -1
  30. data/app/assets/stylesheets/semantic-ui/elements/_button.scss +127 -126
  31. data/app/assets/stylesheets/semantic-ui/elements/_divider.scss +1 -1
  32. data/app/assets/stylesheets/semantic-ui/elements/_flag.scss +1 -2
  33. data/app/assets/stylesheets/semantic-ui/elements/_header.scss +1 -1
  34. data/app/assets/stylesheets/semantic-ui/elements/_icon.scss +2 -2
  35. data/app/assets/stylesheets/semantic-ui/elements/_image.scss +1 -1
  36. data/app/assets/stylesheets/semantic-ui/elements/_input.scss +1 -1
  37. data/app/assets/stylesheets/semantic-ui/elements/_label.scss +5 -5
  38. data/app/assets/stylesheets/semantic-ui/elements/_list.scss +4 -3
  39. data/app/assets/stylesheets/semantic-ui/elements/_loader.scss +1 -1
  40. data/app/assets/stylesheets/semantic-ui/elements/_rail.scss +1 -1
  41. data/app/assets/stylesheets/semantic-ui/elements/_reveal.scss +13 -1
  42. data/app/assets/stylesheets/semantic-ui/elements/_segment.scss +1 -7
  43. data/app/assets/stylesheets/semantic-ui/elements/_step.scss +36 -35
  44. data/app/assets/stylesheets/semantic-ui/globals/_reset.scss +1 -1
  45. data/app/assets/stylesheets/semantic-ui/globals/_site.scss +23 -4
  46. data/app/assets/stylesheets/semantic-ui/modules/_accordion.scss +3 -3
  47. data/app/assets/stylesheets/semantic-ui/modules/_checkbox.scss +1 -1
  48. data/app/assets/stylesheets/semantic-ui/modules/_dimmer.scss +1 -1
  49. data/app/assets/stylesheets/semantic-ui/modules/_dropdown.scss +115 -29
  50. data/app/assets/stylesheets/semantic-ui/modules/_modal.scss +1 -1
  51. data/app/assets/stylesheets/semantic-ui/modules/_nag.scss +1 -1
  52. data/app/assets/stylesheets/semantic-ui/modules/_popup.scss +1 -6
  53. data/app/assets/stylesheets/semantic-ui/modules/_progress.scss +13 -1
  54. data/app/assets/stylesheets/semantic-ui/modules/_rating.scss +1 -1
  55. data/app/assets/stylesheets/semantic-ui/modules/_search.scss +1 -1
  56. data/app/assets/stylesheets/semantic-ui/modules/_shape.scss +1 -1
  57. data/app/assets/stylesheets/semantic-ui/modules/_sidebar.scss +134 -16
  58. data/app/assets/stylesheets/semantic-ui/modules/_sticky.scss +1 -1
  59. data/app/assets/stylesheets/semantic-ui/modules/_tab.scss +1 -1
  60. data/app/assets/stylesheets/semantic-ui/modules/_transition.scss +1 -1
  61. data/app/assets/stylesheets/semantic-ui/modules/_video.scss +1 -1
  62. data/app/assets/stylesheets/semantic-ui/views/_ad.scss +13 -1
  63. data/app/assets/stylesheets/semantic-ui/views/_card.scss +1 -1
  64. data/app/assets/stylesheets/semantic-ui/views/_comment.scss +1 -1
  65. data/app/assets/stylesheets/semantic-ui/views/_feed.scss +1 -1
  66. data/app/assets/stylesheets/semantic-ui/views/_item.scss +1 -1
  67. data/app/assets/stylesheets/semantic-ui/views/_statistic.scss +1 -1
  68. data/lib/semantic/ui/sass/version.rb +2 -2
  69. metadata +2 -2
@@ -115,7 +115,7 @@ $.fn.shape = function(parameters) {
115
115
  module.reset();
116
116
  module.set.active();
117
117
  };
118
- $.proxy(settings.beforeChange, $nextSide[0])();
118
+ settings.beforeChange.call($nextSide.get());
119
119
  if(module.get.transitionEvent()) {
120
120
  module.verbose('Starting CSS animation');
121
121
  $module
@@ -189,7 +189,7 @@ $.fn.shape = function(parameters) {
189
189
 
190
190
  defaultSide: function() {
191
191
  $activeSide = $module.find('.' + settings.className.active);
192
- $nextSide = ( $activeSide.next(selector.side).size() > 0 )
192
+ $nextSide = ( $activeSide.next(selector.side).length > 0 )
193
193
  ? $activeSide.next(selector.side)
194
194
  : $module.find(selector.side).first()
195
195
  ;
@@ -222,7 +222,7 @@ $.fn.shape = function(parameters) {
222
222
  $activeSide = $clone.find('.' + settings.className.active),
223
223
  $nextSide = (nextIndex)
224
224
  ? $clone.find(selector.side).eq(nextIndex)
225
- : ( $activeSide.next(selector.side).size() > 0 )
225
+ : ( $activeSide.next(selector.side).length > 0 )
226
226
  ? $activeSide.next(selector.side)
227
227
  : $clone.find(selector.side).first(),
228
228
  newSize = {}
@@ -245,7 +245,7 @@ $.fn.shape = function(parameters) {
245
245
  nextIndex = selector;
246
246
  $nextSide = $side.filter(selector);
247
247
  nextIndex = $side.index($nextSide);
248
- if($nextSide.size() === 0) {
248
+ if($nextSide.length === 0) {
249
249
  module.set.defaultSide();
250
250
  module.error(error.side);
251
251
  }
@@ -260,7 +260,7 @@ $.fn.shape = function(parameters) {
260
260
  $nextSide
261
261
  .addClass(className.active)
262
262
  ;
263
- $.proxy(settings.onChange, $nextSide[0])();
263
+ settings.onChange.call($nextSide.get());
264
264
  module.set.defaultSide();
265
265
  }
266
266
  },
@@ -458,7 +458,7 @@ $.fn.shape = function(parameters) {
458
458
  },
459
459
 
460
460
  nextSide: function() {
461
- return ( $activeSide.next(selector.side).size() > 0 )
461
+ return ( $activeSide.next(selector.side).length > 0 )
462
462
  ? $activeSide.next(selector.side)
463
463
  : $module.find(selector.side).first()
464
464
  ;
@@ -683,8 +683,8 @@ $.fn.shape = function(parameters) {
683
683
  if(moduleSelector) {
684
684
  title += ' \'' + moduleSelector + '\'';
685
685
  }
686
- if($allModules.size() > 1) {
687
- title += ' ' + '(' + $allModules.size() + ')';
686
+ if($allModules.length > 1) {
687
+ title += ' ' + '(' + $allModules.length + ')';
688
688
  }
689
689
  if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) {
690
690
  console.groupCollapsed(title);
@@ -15,20 +15,20 @@
15
15
 
16
16
  $.fn.sidebar = function(parameters) {
17
17
  var
18
- $allModules = $(this),
19
- $window = $(window),
20
- $document = $(document),
21
- $html = $('html'),
22
- $head = $('head'),
18
+ $allModules = $(this),
19
+ $window = $(window),
20
+ $document = $(document),
21
+ $html = $('html'),
22
+ $head = $('head'),
23
23
 
24
- moduleSelector = $allModules.selector || '',
24
+ moduleSelector = $allModules.selector || '',
25
25
 
26
- time = new Date().getTime(),
27
- performance = [],
26
+ time = new Date().getTime(),
27
+ performance = [],
28
28
 
29
- query = arguments[0],
30
- methodInvoked = (typeof query == 'string'),
31
- queryArguments = [].slice.call(arguments, 1),
29
+ query = arguments[0],
30
+ methodInvoked = (typeof query == 'string'),
31
+ queryArguments = [].slice.call(arguments, 1),
32
32
 
33
33
  requestAnimationFrame = window.requestAnimationFrame
34
34
  || window.mozRequestAnimationFrame
@@ -83,7 +83,7 @@ $.fn.sidebar = function(parameters) {
83
83
  transitionEvent = module.get.transitionEvent();
84
84
 
85
85
  // cache on initialize
86
- if( module.is.legacy() || settings.legacy) {
86
+ if( ( settings.useLegacy == 'auto' && module.is.legacy() ) || settings.useLegacy === true) {
87
87
  settings.transition = 'overlay';
88
88
  settings.useLegacy = true;
89
89
  }
@@ -93,7 +93,12 @@ $.fn.sidebar = function(parameters) {
93
93
  }
94
94
 
95
95
  // avoids locking rendering if initialized in onReady
96
- requestAnimationFrame(module.setup.layout);
96
+ if(settings.delaySetup) {
97
+ requestAnimationFrame(module.setup.layout);
98
+ }
99
+ else {
100
+ module.setup.layout();
101
+ }
97
102
 
98
103
  module.instantiate();
99
104
  },
@@ -129,7 +134,7 @@ $.fn.sidebar = function(parameters) {
129
134
 
130
135
  event: {
131
136
  clickaway: function(event) {
132
- if( $(event.target).closest(selector.sidebar).size() === 0 ) {
137
+ if( $(event.target).closest(selector.sidebar).length === 0 ) {
133
138
  module.verbose('User clicked on dimmed page');
134
139
  module.hide();
135
140
  }
@@ -146,7 +151,7 @@ $.fn.sidebar = function(parameters) {
146
151
  }
147
152
  },
148
153
  scroll: function(event) {
149
- if( $(event.target).closest(selector.sidebar).size() === 0 ) {
154
+ if( $(event.target).closest(selector.sidebar).length === 0 ) {
150
155
  event.preventDefault();
151
156
  }
152
157
  }
@@ -192,73 +197,78 @@ $.fn.sidebar = function(parameters) {
192
197
  },
193
198
 
194
199
  add: {
195
- bodyCSS: function(direction, distance) {
200
+ bodyCSS: function() {
196
201
  var
197
- width = $module.outerWidth(),
198
- height = $module.outerHeight(),
202
+ width = $module.outerWidth(),
203
+ height = $module.outerHeight(),
204
+ direction = module.get.direction(),
205
+ distance = {
206
+ left : width,
207
+ right : -width,
208
+ top : height,
209
+ bottom : -height
210
+ },
199
211
  style
200
212
  ;
201
- style = ''
202
- + '<style title="' + namespace + '">'
203
- + ' .ui.visible.left.sidebar ~ .fixed,'
204
- + ' .ui.visible.left.sidebar ~ .pusher {'
205
- + ' -webkit-transform: translate3d('+ width + 'px, 0, 0);'
206
- + ' transform: translate3d('+ width + 'px, 0, 0);'
207
- + ' }'
208
- + ' .ui.visible.right.sidebar ~ .fixed,'
209
- + ' .ui.visible.right.sidebar ~ .pusher {'
210
- + ' -webkit-transform: translate3d(-'+ width + 'px, 0, 0);'
211
- + ' transform: translate3d(-'+ width + 'px, 0, 0);'
212
- + ' }'
213
- + ' .ui.visible.left.sidebar ~ .ui.visible.right.sidebar ~ .fixed,'
214
- + ' .ui.visible.left.sidebar ~ .ui.visible.right.sidebar ~ .pusher,'
215
- + ' .ui.visible.right.sidebar ~ .ui.visible.left.sidebar ~ .fixed,'
216
- + ' .ui.visible.right.sidebar ~ .ui.visible.left.sidebar ~ .pusher {'
217
- + ' -webkit-transform: translate3d(0px, 0, 0);'
218
- + ' transform: translate3d(0px, 0, 0);'
219
- + ' }'
220
- + ' .ui.visible.top.sidebar ~ .fixed,'
221
- + ' .ui.visible.top.sidebar ~ .pusher {'
222
- + ' -webkit-transform: translate3d(0, ' + height + 'px, 0);'
223
- + ' transform: translate3d(0, ' + height + 'px, 0);'
224
- + ' }'
225
- + ' .ui.visible.bottom.sidebar ~ .fixed,'
226
- + ' .ui.visible.bottom.sidebar ~ .pusher {'
227
- + ' -webkit-transform: translate3d(0, -' + height + 'px, 0);'
228
- + ' transform: translate3d(0, -' + height + 'px, 0);'
229
- + ' }'
230
- ;
213
+ if( module.is.rtl() ){
214
+ module.verbose('RTL detected, flipping widths');
215
+ distance.left = -width;
216
+ distance.right = width;
217
+ }
218
+
219
+ style = '<style title="' + namespace + '">';
220
+
221
+ if(direction === 'left' || direction === 'right') {
222
+ module.debug('Adding CSS rules for animation distance', width);
223
+ style += ''
224
+ + ' .ui.visible.' + direction + '.sidebar ~ .fixed,'
225
+ + ' .ui.visible.' + direction + '.sidebar ~ .pusher {'
226
+ + ' -webkit-transform: translate3d('+ distance[direction] + 'px, 0, 0);'
227
+ + ' transform: translate3d('+ distance[direction] + 'px, 0, 0);'
228
+ + ' }'
229
+ ;
230
+ }
231
+ else if(direction === 'top' || direction == 'bottom') {
232
+ style += ''
233
+ + ' .ui.visible.' + direction + '.sidebar ~ .fixed,'
234
+ + ' .ui.visible.' + direction + '.sidebar ~ .pusher {'
235
+ + ' -webkit-transform: translate3d(0, ' + distance[direction] + 'px, 0);'
236
+ + ' transform: translate3d(0, ' + distance[direction] + 'px, 0);'
237
+ + ' }'
238
+ ;
239
+ }
231
240
 
232
241
  /* IE is only browser not to create context with transforms */
233
242
  /* https://www.w3.org/Bugs/Public/show_bug.cgi?id=16328 */
234
243
  if( module.is.ie() ) {
244
+ if(direction === 'left' || direction === 'right') {
245
+ module.debug('Adding CSS rules for animation distance', width);
246
+ style += ''
247
+ + ' .ui.visible.' + direction + '.sidebar ~ .pusher:after {'
248
+ + ' -webkit-transform: translate3d('+ distance[direction] + 'px, 0, 0);'
249
+ + ' transform: translate3d('+ distance[direction] + 'px, 0, 0);'
250
+ + ' }'
251
+ ;
252
+ }
253
+ else if(direction === 'top' || direction == 'bottom') {
254
+ style += ''
255
+ + ' .ui.visible.' + direction + '.sidebar ~ .pusher:after {'
256
+ + ' -webkit-transform: translate3d(0, ' + distance[direction] + 'px, 0);'
257
+ + ' transform: translate3d(0, ' + distance[direction] + 'px, 0);'
258
+ + ' }'
259
+ ;
260
+ }
261
+ /* opposite sides visible forces content overlay */
235
262
  style += ''
236
- + ' .ui.visible.left.sidebar ~ .pusher:after {'
237
- + ' -webkit-transform: translate3d('+ width + 'px, 0, 0);'
238
- + ' transform: translate3d('+ width + 'px, 0, 0);'
239
- + ' }'
240
- + ' .ui.visible.right.sidebar ~ .pusher:after {'
241
- + ' -webkit-transform: translate3d(-'+ width + 'px, 0, 0);'
242
- + ' transform: translate3d(-'+ width + 'px, 0, 0);'
243
- + ' }'
244
263
  + ' .ui.visible.left.sidebar ~ .ui.visible.right.sidebar ~ .pusher:after,'
245
264
  + ' .ui.visible.right.sidebar ~ .ui.visible.left.sidebar ~ .pusher:after {'
246
265
  + ' -webkit-transform: translate3d(0px, 0, 0);'
247
266
  + ' transform: translate3d(0px, 0, 0);'
248
267
  + ' }'
249
- + ' .ui.visible.top.sidebar ~ .pusher:after {'
250
- + ' -webkit-transform: translate3d(0, ' + height + 'px, 0);'
251
- + ' transform: translate3d(0, ' + height + 'px, 0);'
252
- + ' }'
253
- + ' .ui.visible.bottom.sidebar ~ .pusher:after {'
254
- + ' -webkit-transform: translate3d(0, -' + height + 'px, 0);'
255
- + ' transform: translate3d(0, -' + height + 'px, 0);'
256
- + ' }'
257
268
  ;
258
269
  }
259
270
 
260
- style += '</style>';
261
-
271
+ style += '</style>';
262
272
  $head.append(style);
263
273
  $style = $('style[title=' + namespace + ']');
264
274
  module.debug('Adding sizing css to head', $style);
@@ -287,7 +297,7 @@ $.fn.sidebar = function(parameters) {
287
297
 
288
298
  setup: {
289
299
  layout: function() {
290
- if( $context.children(selector.pusher).size() === 0 ) {
300
+ if( $context.children(selector.pusher).length === 0 ) {
291
301
  module.debug('Adding wrapper element for sidebar');
292
302
  module.error(error.pusher);
293
303
  $pusher = $('<div class="pusher" />');
@@ -299,7 +309,7 @@ $.fn.sidebar = function(parameters) {
299
309
  ;
300
310
  module.refresh();
301
311
  }
302
- if($module.nextAll(selector.pusher).size() === 0 || $module.nextAll(selector.pusher)[0] !== $pusher[0]) {
312
+ if($module.nextAll(selector.pusher).length === 0 || $module.nextAll(selector.pusher)[0] !== $pusher[0]) {
303
313
  module.debug('Moved sidebar to correct parent element');
304
314
  module.error(error.movedSidebar, element);
305
315
  $module.detach().prependTo($context);
@@ -318,7 +328,7 @@ $.fn.sidebar = function(parameters) {
318
328
  ? module[event]
319
329
  : module.toggle
320
330
  ;
321
- if($toggle.size() > 0) {
331
+ if($toggle.length > 0) {
322
332
  module.debug('Attaching sidebar events to element', selector, event);
323
333
  $toggle
324
334
  .on('click' + eventNamespace, event)
@@ -331,7 +341,7 @@ $.fn.sidebar = function(parameters) {
331
341
 
332
342
  show: function(callback) {
333
343
  var
334
- animateMethod = (settings.useLegacy)
344
+ animateMethod = (settings.useLegacy === true)
335
345
  ? module.legacyPushPage
336
346
  : module.pushPage
337
347
  ;
@@ -346,18 +356,19 @@ $.fn.sidebar = function(parameters) {
346
356
  settings.transition = 'overlay';
347
357
  }
348
358
  module.refresh();
349
- if(module.othersVisible() && module.get.transition() != 'overlay') {
350
- module.debug('Other sidebars currently open');
359
+ if(module.othersActive() && module.get.transition() !== 'overlay') {
360
+ module.debug('Other sidebars currently visible');
361
+ settings.transition = 'overlay';
351
362
  if(settings.exclusive) {
352
363
  module.hideOthers();
353
364
  }
354
365
  }
355
366
  animateMethod(function() {
356
- $.proxy(callback, element)();
357
- $.proxy(settings.onShow, element)();
367
+ callback.call(element);
368
+ settings.onShow.call(element);
358
369
  });
359
- $.proxy(settings.onChange, element)();
360
- $.proxy(settings.onVisible, element)();
370
+ settings.onChange.call(element);
371
+ settings.onVisible.call(element);
361
372
  }
362
373
  else {
363
374
  module.debug('Sidebar is already visible');
@@ -366,7 +377,7 @@ $.fn.sidebar = function(parameters) {
366
377
 
367
378
  hide: function(callback) {
368
379
  var
369
- animateMethod = (settings.useLegacy)
380
+ animateMethod = (settings.useLegacy === true)
370
381
  ? module.legacyPullPage
371
382
  : module.pullPage
372
383
  ;
@@ -378,25 +389,32 @@ $.fn.sidebar = function(parameters) {
378
389
  module.debug('Hiding sidebar', callback);
379
390
  module.refreshSidebars();
380
391
  animateMethod(function() {
381
- $.proxy(callback, element)();
382
- $.proxy(settings.onHidden, element)();
392
+ callback.call(element);
393
+ settings.onHidden.call(element);
383
394
  });
384
- $.proxy(settings.onChange, element)();
385
- $.proxy(settings.onHide, element)();
395
+ settings.onChange.call(element);
396
+ settings.onHide.call(element);
386
397
  }
387
398
  },
388
399
 
400
+ othersAnimating: function() {
401
+ return ($sidebars.not($module).filter('.' + className.animating).length > 0);
402
+ },
389
403
  othersVisible: function() {
390
- return ($sidebars.not($module).filter('.' + className.visible).size() > 0);
404
+ return ($sidebars.not($module).filter('.' + className.visible).length > 0);
405
+ },
406
+ othersActive: function() {
407
+ return(module.othersVisible() || module.othersAnimating());
391
408
  },
392
409
 
393
410
  hideOthers: function(callback) {
394
411
  var
395
412
  $otherSidebars = $sidebars.not($module).filter('.' + className.visible),
396
- callback = callback || function(){},
397
- sidebarCount = $otherSidebars.size(),
413
+ sidebarCount = $otherSidebars.length,
398
414
  callbackCount = 0
399
415
  ;
416
+ callback = callback || function(){};
417
+
400
418
  $otherSidebars
401
419
  .sidebar('hide', function() {
402
420
  callbackCount++;
@@ -422,7 +440,7 @@ $.fn.sidebar = function(parameters) {
422
440
  transition = module.get.transition(),
423
441
  $transition = (transition == 'safe')
424
442
  ? $context
425
- : (transition == 'overlay' || module.othersVisible())
443
+ : (transition === 'overlay' || module.othersActive())
426
444
  ? $module
427
445
  : $pusher,
428
446
  animate,
@@ -453,7 +471,7 @@ $.fn.sidebar = function(parameters) {
453
471
  $transition.off(transitionEvent + elementNamespace, transitionEnd);
454
472
  module.remove.animating();
455
473
  module.bind.scrollLock();
456
- $.proxy(callback, element)();
474
+ callback.call(element);
457
475
  }
458
476
  };
459
477
  $transition.off(transitionEvent + elementNamespace);
@@ -466,7 +484,7 @@ $.fn.sidebar = function(parameters) {
466
484
  transition = module.get.transition(),
467
485
  $transition = (transition == 'safe')
468
486
  ? $context
469
- : (transition == 'overlay' || module.othersVisible())
487
+ : (transition == 'overlay' || module.othersActive())
470
488
  ? $module
471
489
  : $pusher,
472
490
  animate,
@@ -478,6 +496,7 @@ $.fn.sidebar = function(parameters) {
478
496
  ;
479
497
  module.verbose('Removing context push state', module.get.direction());
480
498
 
499
+ module.set.transition();
481
500
  module.unbind.clickaway();
482
501
  module.unbind.scrollLock();
483
502
 
@@ -497,7 +516,7 @@ $.fn.sidebar = function(parameters) {
497
516
  if(transition == 'scale down' || (settings.returnScroll && module.is.mobile()) ) {
498
517
  module.scrollBack();
499
518
  }
500
- $.proxy(callback, element)();
519
+ callback.call(element);
501
520
  }
502
521
  };
503
522
  $transition.off(transitionEvent + elementNamespace);
@@ -529,7 +548,7 @@ $.fn.sidebar = function(parameters) {
529
548
  .animate(properties, settings.duration, settings.easing, function() {
530
549
  module.remove.animating();
531
550
  module.bind.clickaway();
532
- $.proxy(callback, module)();
551
+ callback.call(element);
533
552
  })
534
553
  ;
535
554
  },
@@ -549,14 +568,14 @@ $.fn.sidebar = function(parameters) {
549
568
  module.unbind.clickaway();
550
569
  module.set.animating();
551
570
  module.remove.visible();
552
- if(settings.dimPage && !module.othersVisible()) {
571
+ if(settings.dimPage && !module.othersActive()) {
553
572
  $pusher.removeClass(className.dimmed);
554
573
  }
555
574
  $context
556
575
  .css('position', 'relative')
557
576
  .animate(properties, settings.duration, settings.easing, function() {
558
577
  module.remove.animating();
559
- $.proxy(callback, module)();
578
+ callback.call(element);
560
579
  })
561
580
  ;
562
581
  },
@@ -613,7 +632,7 @@ $.fn.sidebar = function(parameters) {
613
632
 
614
633
  bodyCSS: function() {
615
634
  module.debug('Removing body css styles', $style);
616
- if($style.size() > 0) {
635
+ if($style && $style.length > 0) {
617
636
  $style.remove();
618
637
  }
619
638
  },
@@ -777,6 +796,9 @@ $.fn.sidebar = function(parameters) {
777
796
  },
778
797
  animating: function() {
779
798
  return $context.hasClass(className.animating);
799
+ },
800
+ rtl: function () {
801
+ return $module.css('direction') == 'rtl';
780
802
  }
781
803
  },
782
804
 
@@ -990,8 +1012,9 @@ $.fn.sidebar.settings = {
990
1012
  dimPage : true,
991
1013
  scrollLock : false,
992
1014
  returnScroll : false,
1015
+ delaySetup : false,
993
1016
 
994
- useLegacy : false,
1017
+ useLegacy : 'auto',
995
1018
  duration : 500,
996
1019
  easing : 'easeInOutQuint',
997
1020