jscolor-rails 1.4.0.1 → 1.4.2

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.
@@ -1,5 +1,5 @@
1
1
  module Jscolor
2
2
  module Rails
3
- VERSION = "1.4.0.1"
3
+ VERSION = "1.4.2"
4
4
  end
5
5
  end
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * jscolor, JavaScript Color Picker
3
3
  *
4
- * @version 1.4.0
4
+ * @version 1.4.2
5
5
  * @license GNU Lesser General Public License, http://www.gnu.org/copyleft/lesser.html
6
6
  * @author Jan Odvarko, http://odvarko.cz
7
7
  * @created 2008-06-15
8
- * @updated 2012-07-06
8
+ * @updated 2013-11-25
9
9
  * @link http://jscolor.com
10
10
  */
11
11
 
@@ -318,10 +318,10 @@ var jscolor = {
318
318
  },
319
319
 
320
320
 
321
- /*
322
- * Usage example:
323
- * var myColor = new jscolor.color(myInputElement)
324
- */
321
+ //
322
+ // Usage example:
323
+ // var myColor = new jscolor.color(myInputElement)
324
+ //
325
325
 
326
326
  color : function(target, prop) {
327
327
 
@@ -627,6 +627,23 @@ var jscolor = {
627
627
  dispatchImmediateChange();
628
628
  }
629
629
  };
630
+ if('ontouchstart' in window) { // if touch device
631
+ var handle_touchmove = function(e) {
632
+ var event={
633
+ 'offsetX': e.touches[0].pageX-touchOffset.X,
634
+ 'offsetY': e.touches[0].pageY-touchOffset.Y
635
+ };
636
+ if (holdPad || holdSld) {
637
+ holdPad && setPad(event);
638
+ holdSld && setSld(event);
639
+ dispatchImmediateChange();
640
+ }
641
+ e.stopPropagation(); // prevent move "view" on broswer
642
+ e.preventDefault(); // prevent Default - Android Fix (else android generated only 1-2 touchmove events)
643
+ };
644
+ p.box.removeEventListener('touchmove', handle_touchmove, false)
645
+ p.box.addEventListener('touchmove', handle_touchmove, false)
646
+ }
630
647
  p.padM.onmouseup =
631
648
  p.padM.onmouseout = function() { if(holdPad) { holdPad=false; jscolor.fireEvent(valueElement,'change'); } };
632
649
  p.padM.onmousedown = function(e) {
@@ -635,17 +652,43 @@ var jscolor = {
635
652
  case 0: if (THIS.hsv[2] === 0) { THIS.fromHSV(null, null, 1.0); }; break;
636
653
  case 1: if (THIS.hsv[1] === 0) { THIS.fromHSV(null, 1.0, null); }; break;
637
654
  }
655
+ holdSld=false;
638
656
  holdPad=true;
639
657
  setPad(e);
640
658
  dispatchImmediateChange();
641
659
  };
660
+ if('ontouchstart' in window) {
661
+ p.padM.addEventListener('touchstart', function(e) {
662
+ touchOffset={
663
+ 'X': e.target.offsetParent.offsetLeft,
664
+ 'Y': e.target.offsetParent.offsetTop
665
+ };
666
+ this.onmousedown({
667
+ 'offsetX':e.touches[0].pageX-touchOffset.X,
668
+ 'offsetY':e.touches[0].pageY-touchOffset.Y
669
+ });
670
+ });
671
+ }
642
672
  p.sldM.onmouseup =
643
673
  p.sldM.onmouseout = function() { if(holdSld) { holdSld=false; jscolor.fireEvent(valueElement,'change'); } };
644
674
  p.sldM.onmousedown = function(e) {
675
+ holdPad=false;
645
676
  holdSld=true;
646
677
  setSld(e);
647
678
  dispatchImmediateChange();
648
679
  };
680
+ if('ontouchstart' in window) {
681
+ p.sldM.addEventListener('touchstart', function(e) {
682
+ touchOffset={
683
+ 'X': e.target.offsetParent.offsetLeft,
684
+ 'Y': e.target.offsetParent.offsetTop
685
+ };
686
+ this.onmousedown({
687
+ 'offsetX':e.touches[0].pageX-touchOffset.X,
688
+ 'offsetY':e.touches[0].pageY-touchOffset.Y
689
+ });
690
+ });
691
+ }
649
692
 
650
693
  // picker
651
694
  var dims = getPickerDims(THIS);
@@ -896,7 +939,8 @@ var jscolor = {
896
939
  styleElement = jscolor.fetchElement(this.styleElement);
897
940
  var
898
941
  holdPad = false,
899
- holdSld = false;
942
+ holdSld = false,
943
+ touchOffset = {};
900
944
  var
901
945
  leaveValue = 1<<0,
902
946
  leaveStyle = 1<<1,
metadata CHANGED
@@ -1,34 +1,23 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: jscolor-rails
3
- version: !ruby/object:Gem::Version
4
- hash: 125
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.4.2
5
5
  prerelease:
6
- segments:
7
- - 1
8
- - 4
9
- - 0
10
- - 1
11
- version: 1.4.0.1
12
6
  platform: ruby
13
- authors:
7
+ authors:
14
8
  - Moandji Ezana
15
9
  autorequire:
16
10
  bindir: bin
17
11
  cert_chain: []
18
-
19
- date: 2013-01-21 00:00:00 Z
12
+ date: 2013-12-17 00:00:00.000000000 Z
20
13
  dependencies: []
21
-
22
14
  description:
23
- email:
15
+ email:
24
16
  - mwanji@gmail.com
25
17
  executables: []
26
-
27
18
  extensions: []
28
-
29
19
  extra_rdoc_files: []
30
-
31
- files:
20
+ files:
32
21
  - lib/jscolor-rails.rb
33
22
  - lib/jscolor-rails/version.rb
34
23
  - vendor/assets/images/arrow.gif
@@ -38,36 +27,26 @@ files:
38
27
  - vendor/assets/javascripts/jscolor.js
39
28
  homepage: https://github.com/mwanji/jscolor-rails
40
29
  licenses: []
41
-
42
30
  post_install_message:
43
31
  rdoc_options: []
44
-
45
- require_paths:
32
+ require_paths:
46
33
  - lib
47
- required_ruby_version: !ruby/object:Gem::Requirement
34
+ required_ruby_version: !ruby/object:Gem::Requirement
48
35
  none: false
49
- requirements:
50
- - - ">="
51
- - !ruby/object:Gem::Version
52
- hash: 3
53
- segments:
54
- - 0
55
- version: "0"
56
- required_rubygems_version: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ! '>='
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ required_rubygems_version: !ruby/object:Gem::Requirement
57
41
  none: false
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- hash: 3
62
- segments:
63
- - 0
64
- version: "0"
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
65
46
  requirements: []
66
-
67
47
  rubyforge_project:
68
- rubygems_version: 1.8.15
48
+ rubygems_version: 1.8.25
69
49
  signing_key:
70
50
  specification_version: 3
71
51
  summary: Integrates JSColor with Rails's asset pipeline
72
52
  test_files: []
73
-