uikit-sass-rails 1.2.0 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (31) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +3 -0
  3. data/README.md +2 -1
  4. data/lib/uikit/sass/rails/engine.rb +1 -1
  5. data/lib/uikit/sass/rails/version.rb +1 -1
  6. data/vendor/assets/javascripts/uikit.js +14 -14
  7. data/vendor/assets/javascripts/uikit/{addons → components}/autocomplete.js +19 -9
  8. data/vendor/assets/javascripts/uikit/{addons → components}/cover.js +1 -2
  9. data/vendor/assets/javascripts/uikit/{addons → components}/datepicker.js +3 -4
  10. data/vendor/assets/javascripts/uikit/{addons → components}/form-password.js +2 -3
  11. data/vendor/assets/javascripts/uikit/{addons → components}/form-select.js +1 -2
  12. data/vendor/assets/javascripts/uikit/{addons → components}/htmleditor.js +2 -3
  13. data/vendor/assets/javascripts/uikit/{addons → components}/nestable.js +28 -8
  14. data/vendor/assets/javascripts/uikit/{addons → components}/notify.js +1 -2
  15. data/vendor/assets/javascripts/uikit/{addons → components}/pagination.js +2 -3
  16. data/vendor/assets/javascripts/uikit/{addons → components}/search.js +4 -5
  17. data/vendor/assets/javascripts/uikit/{addons → components}/sortable.js +26 -15
  18. data/vendor/assets/javascripts/uikit/{addons → components}/sticky.js +1 -2
  19. data/vendor/assets/javascripts/uikit/{addons → components}/timepicker.js +5 -6
  20. data/vendor/assets/javascripts/uikit/{addons → components}/upload.js +1 -2
  21. data/vendor/assets/javascripts/uikit/uikit.js +1281 -1248
  22. data/vendor/assets/stylesheets/uikit.scss +1 -1
  23. data/vendor/assets/stylesheets/uikit/almost-flat.scss +2 -1
  24. data/vendor/assets/stylesheets/uikit/{addons/uikit.almost-flat.addons.scss → components/uikit.components.almost-flat.scss} +459 -443
  25. data/vendor/assets/stylesheets/uikit/{addons/uikit.gradient.addons.scss → components/uikit.components.gradient.scss} +503 -487
  26. data/vendor/assets/stylesheets/uikit/{addons/uikit.addons.scss → components/uikit.components.scss} +451 -435
  27. data/vendor/assets/stylesheets/uikit/gradient.scss +2 -1
  28. data/vendor/assets/stylesheets/uikit/uikit.almost-flat.scss +5 -6
  29. data/vendor/assets/stylesheets/uikit/uikit.gradient.scss +15 -16
  30. data/vendor/assets/stylesheets/uikit/uikit.scss +5 -6
  31. metadata +19 -19
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b626e9b61642192657b57527e121206bfa6b6152
4
- data.tar.gz: bd17764a5fe56abfe8d47bc9b6d178e57d04f4c9
3
+ metadata.gz: a17b855a151e036a73e030ecac26f9aa527a9179
4
+ data.tar.gz: 56e13192263bf1d978b7fa3798429bcac2281e27
5
5
  SHA512:
6
- metadata.gz: 9deb1dd9e1dc01e1c444d8c71ea60d15fc3b1ee42be5571ea3d23b47a63f8818ad0d198b81f995911778f81a7af3954e35c111a6763f4fbb013ddc2e035b7738
7
- data.tar.gz: 3174e72246f7db3686b6fa46a55ef80a36ddccee1daaeb4c0f8fa8f0220e09ce28d18ace8520854b1f44772b0294c4d4137bb54c4bd6de3ecea8500bfe18d451
6
+ metadata.gz: 8e6605cc259f223b2cd5a4ba0ae4df9d7e19988b3ebfc62d5f6096db90cd466726d94b92506284c3d3fa2cd4440b0f88508e378f66285e20b8bbe2326c1da637
7
+ data.tar.gz: e6a2bd8db05b3d89fd592f6d5136f151472a0df1c93d6def12f697db6680857557056a851f1f978062466d98f6896c1be3d9fa008ec540df7dc57de881d935d5
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ## 1.3.0
2
+ - UIkit 2.11.1
3
+
1
4
  ## 1.2.0
2
5
  - UIkit 2.10.0
3
6
  - Bugfix: Autocomplete
data/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # Uikit::Sass:Rails
2
2
 
3
- [![Gem Version](https://badge.fury.io/rb/uikit-sass-rails.svg)](http://badge.fury.io/rb/uikit-sass-rails)
3
+ [![Gem: Version 1.3](https://img.shields.io/gem/v/uikit-sass-rails.svg?style=flat-square)](https://rubygems.org/gems/uikit-sass-rails)
4
+ [![License: EUPL-1.1](https://img.shields.io/badge/license-EUPL--1.1-red.svg?style=flat-square)](https://github.com/marsec/uikit-sass-rails/blob/master/LICENSE.md)
4
5
 
5
6
  Uikit::Sass:Rails is a gem to make it super easy to use UIkit in your Rails project. It is written in Sass and compatible with the asset pipeline in Rails. You can start using Uikit::Sass:Rails in your projects by following the instructions below.
6
7
 
@@ -4,7 +4,7 @@ module Uikit
4
4
  class Engine < ::Rails::Engine
5
5
  isolate_namespace Uikit::Sass::Rails
6
6
  initializer 'uikitkit-sass-rails.assets.precompile' do |app|
7
- app.config.assets.precompile += %w(fontawesome-webfont.eot fontawesome-webfont.svg fontawesome-webfont.ttf fontawesome-webfont.woff)
7
+ app.config.assets.precompile += %w(fontawesome-webfont.eot fontawesome-webfont.otf fontawesome-webfont.svg fontawesome-webfont.ttf fontawesome-webfont.woff)
8
8
  end
9
9
  end
10
10
  end
@@ -1,7 +1,7 @@
1
1
  module Uikit
2
2
  module Sass
3
3
  module Rails
4
- VERSION = '1.2.0'
4
+ VERSION = '1.3.0'
5
5
  end
6
6
  end
7
7
  end
@@ -1,16 +1,16 @@
1
1
  //= require uikit/uikit
2
2
 
3
- //= require uikit/addons/autocomplete
4
- //= require uikit/addons/cover
5
- //= require uikit/addons/datepicker
6
- //= require uikit/addons/form-password
7
- //= require uikit/addons/form-select
8
- //= require uikit/addons/htmleditor
9
- //= require uikit/addons/nestable
10
- //= require uikit/addons/notify
11
- //= require uikit/addons/pagination
12
- //= require uikit/addons/search
13
- //= require uikit/addons/sortable
14
- //= require uikit/addons/sticky
15
- //= require uikit/addons/timepicker
16
- //= require uikit/addons/upload
3
+ //= require 'uikit/components/autocomplete'
4
+ //= require 'uikit/components/cover'
5
+ //= require 'uikit/components/datepicker'
6
+ //= require 'uikit/components/form-password'
7
+ //= require 'uikit/components/form-select'
8
+ //= require 'uikit/components/htmleditor'
9
+ //= require 'uikit/components/nestable'
10
+ //= require 'uikit/components/notify'
11
+ //= require 'uikit/components/pagination'
12
+ //= require 'uikit/components/search'
13
+ //= require 'uikit/components/sortable'
14
+ //= require 'uikit/components/sticky'
15
+ //= require 'uikit/components/timepicker'
16
+ //= require 'uikit/components/upload'
@@ -1,5 +1,4 @@
1
- /*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
2
-
1
+ /*! UIkit 2.11.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
3
2
  (function(addon) {
4
3
 
5
4
  var component;
@@ -16,6 +15,8 @@
16
15
 
17
16
  })(function($, UI){
18
17
 
18
+ var active;
19
+
19
20
  UI.component('autocomplete', {
20
21
 
21
22
  defaults: {
@@ -96,10 +97,7 @@
96
97
  }
97
98
 
98
99
  },
99
- "keyup": trigger,
100
- "blur": function(e) {
101
- setTimeout(function() { $this.hide(); }, 200);
102
- }
100
+ "keyup": trigger
103
101
  });
104
102
 
105
103
  this.dropdown.on("click", ".uk-autocomplete-results > *", function(){
@@ -177,7 +175,7 @@
177
175
 
178
176
  var data = this.selected.data();
179
177
 
180
- this.trigger("autocomplete-select", [data, this]);
178
+ this.trigger("uk.autocomplete.select", [data, this]);
181
179
 
182
180
  if (data.value) {
183
181
  this.input.val(data.value);
@@ -190,6 +188,8 @@
190
188
  if (this.visible) return;
191
189
  this.visible = true;
192
190
  this.element.addClass("uk-open");
191
+
192
+ active = this;
193
193
  return this;
194
194
  },
195
195
 
@@ -197,6 +197,11 @@
197
197
  if (!this.visible) return;
198
198
  this.visible = false;
199
199
  this.element.removeClass("uk-open");
200
+
201
+ if (active === this) {
202
+ active = false;
203
+ }
204
+
200
205
  return this;
201
206
  },
202
207
 
@@ -285,7 +290,7 @@
285
290
  this.dropdown.append(this.template({"items":data}));
286
291
  this.show();
287
292
 
288
- this.trigger('autocomplete-show');
293
+ this.trigger('uk.autocomplete.show');
289
294
  }
290
295
 
291
296
  return this;
@@ -293,7 +298,7 @@
293
298
  });
294
299
 
295
300
  // init code
296
- UI.$doc.on("focus.autocomplete.uikit", "[data-uk-autocomplete]", function(e) {
301
+ UI.$html.on("focus.autocomplete.uikit", "[data-uk-autocomplete]", function(e) {
297
302
 
298
303
  var ele = $(this);
299
304
  if (!ele.data("autocomplete")) {
@@ -301,5 +306,10 @@
301
306
  }
302
307
  });
303
308
 
309
+ // register outer click for autocompletes
310
+ UI.$html.on("click.autocomplete.uikit", function(e){
311
+ if (active && e.target!=active.input[0]) active.hide();
312
+ });
313
+
304
314
  return UI.autocomplete;
305
315
  });
@@ -1,5 +1,4 @@
1
- /*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
2
-
1
+ /*! UIkit 2.11.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
3
2
  (function(addon) {
4
3
 
5
4
  var component;
@@ -1,5 +1,4 @@
1
- /*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
2
-
1
+ /*! UIkit 2.11.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
3
2
  (function(addon) {
4
3
 
5
4
  var component;
@@ -297,7 +296,7 @@
297
296
 
298
297
 
299
298
  // init code
300
- UI.$doc.on("focus.datepicker.uikit", "[data-uk-datepicker]", function(e) {
299
+ UI.$html.on("focus.datepicker.uikit", "[data-uk-datepicker]", function(e) {
301
300
 
302
301
  var ele = $(this);
303
302
  if (!ele.data("datepicker")) {
@@ -307,7 +306,7 @@
307
306
  }
308
307
  });
309
308
 
310
- UI.$doc.on("click.datepicker.uikit", function(e) {
309
+ UI.$html.on("click.datepicker.uikit", function(e) {
311
310
 
312
311
  var target = $(e.target);
313
312
 
@@ -1,5 +1,4 @@
1
- /*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
2
-
1
+ /*! UIkit 2.11.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
3
2
  (function(addon) {
4
3
 
5
4
  var component;
@@ -46,7 +45,7 @@
46
45
  });
47
46
 
48
47
  // init code
49
- UI.$doc.on("click.formpassword.uikit", "[data-uk-form-password]", function(e) {
48
+ UI.$html.on("click.formpassword.uikit", "[data-uk-form-password]", function(e) {
50
49
 
51
50
  var ele = $(this);
52
51
  if (!ele.data("formPassword")) {
@@ -1,5 +1,4 @@
1
- /*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
2
-
1
+ /*! UIkit 2.11.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
3
2
  (function(addon) {
4
3
 
5
4
  var component;
@@ -1,5 +1,4 @@
1
- /*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
2
-
1
+ /*! UIkit 2.11.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
3
2
  (function(addon) {
4
3
 
5
4
  var component;
@@ -145,7 +144,7 @@
145
144
  $this.redraw();
146
145
  });
147
146
 
148
- this.element.attr('data-uk-check-display', 1).on('uk-check-display', function(e) {
147
+ this.element.attr('data-uk-check-display', 1).on('uk.check.display', function(e) {
149
148
  if(this.htmleditor.is(":visible")) this.fit();
150
149
  }.bind(this));
151
150
 
@@ -1,5 +1,4 @@
1
- /*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
2
-
1
+ /*! UIkit 2.11.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
3
2
  /*
4
3
  * Based on Nestable jQuery Plugin - Copyright (c) 2012 David Bushell - http://dbushell.com/
5
4
  */
@@ -22,7 +21,8 @@
22
21
  var hasTouch = 'ontouchstart' in window,
23
22
  html = $("html"),
24
23
  touchedlists = [],
25
- $win = UI.$win;
24
+ $win = UI.$win,
25
+ draggingElement;
26
26
 
27
27
  /**
28
28
  * Detect CSS pointer-events property
@@ -145,14 +145,14 @@
145
145
  }
146
146
  e.preventDefault();
147
147
  $this.dragStart(hasTouch ? e.touches[0] : e);
148
- $this.trigger('nestable-start', [$this]);
148
+ $this.trigger('uk.nestable.start', [$this]);
149
149
  };
150
150
 
151
151
  var onMoveEvent = function(e) {
152
152
  if ($this.dragEl) {
153
153
  e.preventDefault();
154
154
  $this.dragMove(hasTouch ? e.touches[0] : e);
155
- $this.trigger('nestable-move', [$this]);
155
+ $this.trigger('uk.nestable.move', [$this]);
156
156
  }
157
157
  };
158
158
 
@@ -160,8 +160,10 @@
160
160
  if ($this.dragEl) {
161
161
  e.preventDefault();
162
162
  $this.dragStop(hasTouch ? e.touches[0] : e);
163
- $this.trigger('nestable-stop', [$this]);
163
+ $this.trigger('uk.nestable.stop', [$this]);
164
164
  }
165
+
166
+ draggingElement = false;
165
167
  };
166
168
 
167
169
  if (hasTouch) {
@@ -329,6 +331,8 @@
329
331
  this.dragEl = $(document.createElement(this.options.listNodeName)).addClass(this.options.listClass + ' ' + this.options.dragClass);
330
332
  this.dragEl.css('width', dragItem.width());
331
333
 
334
+ draggingElement = this.dragEl;
335
+
332
336
  this.tmpDragOnSiblings = [dragItem[0].previousSibling, dragItem[0].nextSibling];
333
337
 
334
338
  // fix for zepto.js
@@ -368,10 +372,10 @@
368
372
 
369
373
  if (this.tmpDragOnSiblings[0]!=el[0].previousSibling || this.tmpDragOnSiblings[0]!=el[0].previousSibling) {
370
374
 
371
- this.element.trigger('nestable-change',[el, this.hasNewRoot ? "added":"moved"]);
375
+ this.element.trigger('uk.nestable.change',[el, this.hasNewRoot ? "added":"moved"]);
372
376
 
373
377
  if (this.hasNewRoot) {
374
- this.dragRootEl.trigger('nestable-change', [el, "removed"]);
378
+ this.dragRootEl.trigger('uk.nestable.change', [el, "removed"]);
375
379
  }
376
380
  }
377
381
 
@@ -558,6 +562,22 @@
558
562
 
559
563
  });
560
564
 
565
+ // adjust document scrolling
566
+ $('html').on('mousemove touchmove', function(e) {
567
+
568
+ if (draggingElement) {
569
+
570
+
571
+ var top = draggingElement.offset().top;
572
+
573
+ if (top < UI.$win.scrollTop()) {
574
+ UI.$win.scrollTop(UI.$win.scrollTop() - Math.ceil(draggingElement.height()/2));
575
+ } else if ( (top + draggingElement.height()) > (window.innerHeight + UI.$win.scrollTop()) ) {
576
+ UI.$win.scrollTop(UI.$win.scrollTop() + Math.ceil(draggingElement.height()/2));
577
+ }
578
+ }
579
+ });
580
+
561
581
  // init code
562
582
  UI.ready(function(context) {
563
583
 
@@ -1,5 +1,4 @@
1
- /*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
2
-
1
+ /*! UIkit 2.11.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
3
2
  (function(addon) {
4
3
 
5
4
  var component;
@@ -1,5 +1,4 @@
1
- /*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
2
-
1
+ /*! UIkit 2.11.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
3
2
  /*
4
3
  * Based on simplePagination - Copyright (c) 2012 Flavius Matis - http://flaviusmatis.github.com/simplePagination.js/ (MIT)
5
4
  */
@@ -69,7 +68,7 @@
69
68
  this.render(pages);
70
69
 
71
70
  this.options.onSelectPage.apply(this, [pageIndex]);
72
- this.trigger('uk-select-page', [pageIndex, this]);
71
+ this.trigger('uk.pagination.select', [pageIndex, this]);
73
72
  },
74
73
 
75
74
  _render: function() {
@@ -1,5 +1,4 @@
1
- /*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
2
-
1
+ /*! UIkit 2.11.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
3
2
  (function(addon) {
4
3
 
5
4
  var component;
@@ -67,11 +66,11 @@
67
66
  $this.element.removeClass("uk-active");
68
67
  });
69
68
 
70
- this.on('autocomplete-select', function(e, data) {
69
+ this.on('uk.autocomplete.select', function(e, data) {
71
70
  if (data.url) {
72
71
  location.href = data.url;
73
72
  } else if(data.moreresults) {
74
- this.autocomplete.input.closest('form').submit();
73
+ $this.autocomplete.input.closest('form').submit();
75
74
  }
76
75
  });
77
76
 
@@ -80,7 +79,7 @@
80
79
  });
81
80
 
82
81
  // init code
83
- UI.$doc.on("focus.search.uikit", "[data-uk-search]", function(e) {
82
+ UI.$html.on("focus.search.uikit", "[data-uk-search]", function(e) {
84
83
  var ele = $(this);
85
84
 
86
85
  if (!ele.data("search")) {
@@ -1,5 +1,4 @@
1
- /*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
2
-
1
+ /*! UIkit 2.11.1 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
3
2
  /*
4
3
  * Based on nativesortable - Copyright (c) Brian Grinstead - https://github.com/bgrins/nativesortable
5
4
  */
@@ -140,7 +139,7 @@
140
139
  addFakeDragHandlers();
141
140
 
142
141
  $this.options.start(this, currentlyDraggingElement);
143
- $this.trigger('sortable-start', [$this, currentlyDraggingElement]);
142
+ $this.trigger('uk.sortable.start', [$this, currentlyDraggingElement]);
144
143
 
145
144
  delayIdle = false;
146
145
  }
@@ -214,18 +213,21 @@
214
213
  }
215
214
  }
216
215
 
217
- if (!dragging) {
216
+ if (!dragging && !$this.options.warp) {
218
217
  return;
219
218
  }
220
219
 
221
220
  if ($this.options.warp) {
221
+
222
222
  var thisSibling = currentlyDraggingElement.nextSibling;
223
223
  this.parentNode.insertBefore(currentlyDraggingElement, this);
224
224
  this.parentNode.insertBefore(this, thisSibling);
225
+
226
+ UI.Utils.checkDisplay($this.element.parent());
225
227
  }
226
228
 
227
229
  $this.options.change(this, currentlyDraggingElement);
228
- $this.trigger('sortable-change', [$this, currentlyDraggingElement]);
230
+ $this.trigger('uk.sortable.change', [$this, currentlyDraggingElement]);
229
231
  });
230
232
 
231
233
  var handleDragEnd = function(e) {
@@ -245,7 +247,7 @@
245
247
  removeFakeDragHandlers();
246
248
 
247
249
  $this.options.stop(this);
248
- $this.trigger('sortable-stop', [$this]);
250
+ $this.trigger('uk.sortable.stop', [$this]);
249
251
 
250
252
  draggingPlaceholder.remove();
251
253
  draggingPlaceholder = null;
@@ -259,7 +261,7 @@
259
261
  return true;
260
262
  }
261
263
 
262
- children.removeClass($this.options.overClass);
264
+ $this.element.children().removeClass($this.options.overClass);
263
265
  currentlyDraggingTarget = this;
264
266
 
265
267
  if (!$this.options.warp) {
@@ -365,9 +367,9 @@
365
367
  children = list.children(),
366
368
  count = children.length;
367
369
 
368
- if($this.options.warp || !$this.options.animation) {
370
+ if ($this.options.warp || !$this.options.animation) {
369
371
  elementToMoveNextTo.parentNode.insertBefore(element, next);
370
- UI.Utils.checkDisplay($this.element);
372
+ UI.Utils.checkDisplay($this.element.parent());
371
373
  return;
372
374
  }
373
375
 
@@ -384,6 +386,8 @@
384
386
 
385
387
  elementToMoveNextTo.parentNode.insertBefore(element, next);
386
388
 
389
+ UI.Utils.checkDisplay($this.element.parent());
390
+
387
391
  children = list.children().each(function() {
388
392
  var ele = $(this);
389
393
  ele.data('offset-after', ele.position());
@@ -407,13 +411,11 @@
407
411
  count--
408
412
  if (!count) {
409
413
  list.css('min-height', '');
410
- UI.Utils.checkDisplay(ele);
414
+ UI.Utils.checkDisplay($this.element.parent());
411
415
  }
412
416
  });
413
417
  }, 0);
414
418
  });
415
-
416
-
417
419
  }
418
420
  });
419
421
 
@@ -479,10 +481,13 @@
479
481
  });
480
482
  });
481
483
 
482
- UI.$doc.on('mousemove touchmove', function(e) {
484
+ $('html').on('mousemove touchmove', function(e) {
483
485
 
484
486
  if (delayIdle) {
485
- if (Math.abs(e.pageX - delayIdle.pos.x) > delayIdle.threshold || Math.abs(e.pageY - delayIdle.pos.y) > delayIdle.threshold) {
487
+
488
+ var src = e.originalEvent.targetTouches ? e.originalEvent.targetTouches[0] : e;
489
+
490
+ if (Math.abs(src.pageX - delayIdle.pos.x) > delayIdle.threshold || Math.abs(src.pageY - delayIdle.pos.y) > delayIdle.threshold) {
486
491
  delayIdle.apply();
487
492
  }
488
493
  }
@@ -504,10 +509,16 @@
504
509
  top = parseInt(e.originalEvent.pageY, 10) + offset.top;
505
510
 
506
511
  draggingPlaceholder.css({'left': left, 'top': top });
512
+
513
+ if (top < UI.$win.scrollTop()) {
514
+ UI.$win.scrollTop(UI.$win.scrollTop() - Math.ceil(draggingPlaceholder.height()/2));
515
+ } else if ( (top + draggingPlaceholder.height()) > (window.innerHeight + UI.$win.scrollTop()) ) {
516
+ UI.$win.scrollTop(UI.$win.scrollTop() + Math.ceil(draggingPlaceholder.height()/2));
517
+ }
507
518
  }
508
519
  });
509
520
 
510
- UI.$doc.on('mouseup touchend', function() {
521
+ UI.$html.on('mouseup touchend', function() {
511
522
 
512
523
  if(!moving && clickedlink) {
513
524
  location.href = clickedlink.attr('href');