glimmer-dsl-opal 0.20.0 → 0.20.1

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.
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