glimmer-dsl-opal 0.20.0 → 0.20.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 531f953f5ec4fe36dfa9a7bc8e7a98e5155c8dced489215e74b6679543feff1b
4
- data.tar.gz: 3e429ff4bac544027a49e458c75b670adf0d3f6110da692f151da6153511e889
3
+ metadata.gz: dbd180470d6421bf31347afe95c80b1c3d017f5a440ea70adfaf5f2f9c61c773
4
+ data.tar.gz: fed3355d1102131fcce5814893a69e8a4d3a0462b2f5ac1293c44e3d7b132b59
5
5
  SHA512:
6
- metadata.gz: 2822a5d9881c20c06c31b4a1115cf08a1cc5e79db5da15ca2cf8491a9f1c9e7114ccb8380e94af27b55f14e7e533a2247890cd11ea06bd2d8a82b7038c9e628d
7
- data.tar.gz: ea93b2b373f4aea2c742c09d1e05752899c91ba62d12b5e5cde96492631984cf49e70fcbc8d744ea516ac2bbd42fc00bd58d84b0cc8f297cb04d0d6a45d34210
6
+ metadata.gz: 353ca4a775c9e96bf2cdee78c4d936dd4a58a25ca4c80f0acb4e2017f476f48d43f1da20475b91bd4568cb3dbc1fead4d403df358dab5a763f114039de238c92
7
+ data.tar.gz: be5b5b268fb9772a1140c0880d7fabb477de96e4b719831a836daf0b4f8d021741ef0eaaf8cc641a9378100841167e33b15f7fc3b3e1bd3e7c97fa25db2af5fb
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Change Log
2
2
 
3
+ ## 0.20.1
4
+
5
+ - Support `spinner` automatic insertion of decimal point when `digits` attribute is specified
6
+
3
7
  ## 0.20.0
4
8
 
5
9
  - Support `spinner` widget (leaving out automatic insertion of decimal point when digits are specified)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.20.0
1
+ 0.20.1
@@ -12,21 +12,23 @@ module Glimmer
12
12
  dom_element.spinner
13
13
  end
14
14
 
15
- def selection=(value)
15
+ def selection=(value, format_digits: true)
16
16
  old_value = @selection.to_f
17
17
  if @selection.nil?
18
18
  @selection = value.to_f / divider
19
19
  else
20
20
  @selection = value.to_f
21
21
  end
22
- # TODO do not apply digits if last change was done by keyboard not spinner
23
- # if @digits.to_i > 0
24
- # new_value = "%0.#{@digits.to_i}f" % @selection
25
- # dom_element.value = new_value if value.to_f != old_value.to_f
26
- # else
27
- dom_element.value = @selection if value.to_f != old_value.to_f
28
- # end
22
+ if value.to_i != old_value.to_i
23
+ if format_digits && @digits.to_i > 0
24
+ new_value = "%0.#{@digits.to_i}f" % @selection
25
+ dom_element.value = new_value
26
+ else
27
+ dom_element.value = @selection if @selection != 0
28
+ end
29
+ end
29
30
  end
31
+ alias set_selection selection=
30
32
 
31
33
  def selection
32
34
  @selection && @selection * divider
@@ -85,11 +87,28 @@ module Glimmer
85
87
  }
86
88
  }
87
89
  },
90
+ {
91
+ event: 'keyup',
92
+ event_handler: -> (event_listener) {
93
+ -> (event) {
94
+ @keyup = true # ensures spinstop event does not set selection if caused by key up entry
95
+ }
96
+ }
97
+ },
98
+ {
99
+ event: 'spin',
100
+ event_handler: -> (event_listener) {
101
+ -> (event) {
102
+ @keyup = false
103
+ }
104
+ }
105
+ },
88
106
  {
89
107
  event: 'spinstop',
90
108
  event_handler: -> (event_listener) {
91
109
  -> (event) {
92
- self.selection = event.target.value
110
+ self.set_selection(event.target.value, format_digits: !@keyup)
111
+ @keyup = false
93
112
  event_listener.call(event)
94
113
  }
95
114
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: glimmer-dsl-opal
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.20.0
4
+ version: 0.20.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - AndyMaleh
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-08-16 00:00:00.000000000 Z
11
+ date: 2021-08-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: glimmer