fidgit 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,12 @@
1
1
  Fidgit changelog
2
2
  ================
3
3
 
4
+ v0.2.2
5
+ ------
6
+
7
+ * Prevented ToggleButton border colour changing.
8
+ * More careful about stripping out html tags in TextArea.
9
+
4
10
  v0.2.1
5
11
  ------
6
12
 
@@ -82,7 +82,7 @@ module Fidgit
82
82
 
83
83
  protected
84
84
  def update_colors
85
- [:color, :background_color, :border_color].each do |attribute|
85
+ [:color, :background_color].each do |attribute|
86
86
  send :"#{attribute.to_s}=", enabled? ? default(attribute) : default(:disabled, attribute)
87
87
  end
88
88
 
@@ -3,6 +3,7 @@
3
3
  module Fidgit
4
4
  class TextArea < Element
5
5
  ENTITY_PLACEHOLDER = "*"
6
+ ENTITIES_AND_TAGS_PATTERN = %r%<[a-z](?:=[a-f0-9]+)?>|</[a-z]>|&\w+;%i
6
7
 
7
8
  # @return [Number]
8
9
  attr_reader :min_height
@@ -282,12 +283,13 @@ module Fidgit
282
283
  lines_number * (font.height + line_spacing)
283
284
  end
284
285
 
286
+
285
287
  protected
286
288
  # Helper for #recalc
287
289
  # @return [Integer]
288
290
  def position_letters_in_word(word, line_width)
289
291
  # Strip tags before measuring word.
290
- word.gsub(/<[^>]*>|&[^;];/, '').each_char do |c|
292
+ word.gsub(ENTITIES_AND_TAGS_PATTERN, '').each_char do |c|
291
293
  char_width = font.text_width(c)
292
294
  line_width += char_width
293
295
  @caret_positions.push [line_width, y_at_line(@lines.size)]
@@ -473,7 +475,7 @@ module Fidgit
473
475
  tags_length = 0
474
476
  @tags = Hash.new('')
475
477
 
476
- @stripped_text = text.gsub(%r[(<[^>]*?>|&[^;]+;)]) do |tag|
478
+ @stripped_text = text.gsub(ENTITIES_AND_TAGS_PATTERN) do |tag|
477
479
  pos = $`.length - tags_length
478
480
  tags_length += tag.length
479
481
  @tags[pos] += tag
@@ -1,5 +1,5 @@
1
1
  # encoding: UTF-8
2
2
 
3
3
  module Fidgit
4
- VERSION = '0.2.1'
4
+ VERSION = '0.2.2'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fidgit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-06 00:00:00.000000000 Z
12
+ date: 2012-02-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: gosu
16
- requirement: &28344852 !ruby/object:Gem::Requirement
16
+ requirement: &23198904 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 0.7.41
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *28344852
24
+ version_requirements: *23198904
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: chingu
27
- requirement: &28344576 !ruby/object:Gem::Requirement
27
+ requirement: &23198004 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 0.9rc7
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *28344576
35
+ version_requirements: *23198004
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: clipboard
38
- requirement: &28344300 !ruby/object:Gem::Requirement
38
+ requirement: &23197164 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 0.9.9
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *28344300
46
+ version_requirements: *23197164
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: ffi
49
- requirement: &28344024 !ruby/object:Gem::Requirement
49
+ requirement: &23196276 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - =
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.0.9
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *28344024
57
+ version_requirements: *23196276
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rspec
60
- requirement: &28343748 !ruby/object:Gem::Requirement
60
+ requirement: &23195712 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 2.8.0
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *28343748
68
+ version_requirements: *23195712
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: texplay
71
- requirement: &28343472 !ruby/object:Gem::Requirement
71
+ requirement: &23195148 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: 0.3.5
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *28343472
79
+ version_requirements: *23195148
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: rake
82
- requirement: &28343244 !ruby/object:Gem::Requirement
82
+ requirement: &23194884 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: '0'
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *28343244
90
+ version_requirements: *23194884
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: yard
93
- requirement: &28342968 !ruby/object:Gem::Requirement
93
+ requirement: &23194524 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: '0'
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *28342968
101
+ version_requirements: *23194524
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: RedCloth
104
- requirement: &28342668 !ruby/object:Gem::Requirement
104
+ requirement: &23193828 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ~>
@@ -109,7 +109,7 @@ dependencies:
109
109
  version: 4.2.9
110
110
  type: :development
111
111
  prerelease: false
112
- version_requirements: *28342668
112
+ version_requirements: *23193828
113
113
  description: Fidgit is a GUI library built on Gosu/Chingu
114
114
  email:
115
115
  - bil.bagpuss@gmail.com
@@ -228,7 +228,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
228
228
  version: '0'
229
229
  requirements: []
230
230
  rubyforge_project: fidgit
231
- rubygems_version: 1.8.11
231
+ rubygems_version: 1.8.16
232
232
  signing_key:
233
233
  specification_version: 3
234
234
  summary: Fidgit is a GUI library built on Gosu/Chingu