RubyApp 0.5.16 → 0.5.17

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,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- RubyApp (0.5.16)
4
+ RubyApp (0.5.17)
5
5
  BlueCloth
6
6
  chronic
7
7
  chronic_duration
@@ -122,6 +122,14 @@ module RubyApp
122
122
  self.tap_selector("a:contains('#{text}')")
123
123
  end
124
124
 
125
+ def tap_list_item(text)
126
+ self.tap_selector("a.item:contains('#{text}')")
127
+ end
128
+
129
+ def tap_list_link(text)
130
+ self.tap_selector("a.link[title*='#{text}']")
131
+ end
132
+
125
133
  def tap_selector(selector)
126
134
  _selector = ".ui-page-active #{selector}"
127
135
  self.execute("RubyApp.tap(#{_selector.to_json});")
@@ -24,24 +24,32 @@ module RubyApp
24
24
 
25
25
  @list = RubyApp::Elements::Mobile::List.new
26
26
  @list.attributes.merge!('data-inset' => true)
27
+ @list.is_split = true
27
28
  @list.items += [ 'Item 01',
28
29
  'Item 02',
29
30
  'Item 03',
30
31
  'Item 04',
31
32
  'Item 05' ]
32
- @list.clicked do |element, event|
33
- RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked #{event.item}."), :transition => 'pop')
33
+ @list.item_clicked do |element, event|
34
+ RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked the item #{event.item}."), :transition => 'pop')
35
+ end
36
+ @list.link_clicked do |element, event|
37
+ RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked the link #{event.item}."), :transition => 'pop')
34
38
  end
35
39
 
36
40
  @select = RubyApp::Elements::Mobile::Lists::Select.new
37
41
  @select.attributes.merge!('data-inset' => true)
42
+ @select.is_split = true
38
43
  @select.items += [ 'Item 11',
39
44
  'Item 12',
40
45
  'Item 13',
41
46
  'Item 14',
42
47
  'Item 15' ]
43
- @select.clicked do |element, event|
44
- RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked #{event.item}."), :transition => 'pop')
48
+ @select.item_clicked do |element, event|
49
+ RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked the item #{event.item}."), :transition => 'pop')
50
+ end
51
+ @select.link_clicked do |element, event|
52
+ RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked the link #{event.item}."), :transition => 'pop')
45
53
  end
46
54
 
47
55
  end
@@ -3,5 +3,8 @@
3
3
  %ul.list{attributes}
4
4
  - self.items.each_with_index do |item, index|
5
5
  %li.item{'data-icon' => 'false'}
6
- %a.item{:href => '#', :index => index}
6
+ %a.item{:href => '#', 'data-index' => index}
7
7
  = yield(:item, item, index) || item
8
+ - if self.split?
9
+ %a.link{:href => '#', 'data-index' => index}
10
+ = yield(:link, item, index) || item
@@ -3,7 +3,11 @@
3
3
  $(document).ready( function() {
4
4
  $(document).on('tap', 'ul.list > li.item a.item', function(event) {
5
5
  event.preventDefault();
6
- RubyApp.queueEvent({_class:'RubyApp::Elements::Mobile::List::ClickedEvent', source:$(this).parents('ul.list').attr('id'), index:$(this).attr('index')});
6
+ RubyApp.queueEvent({_class:'RubyApp::Elements::Mobile::List::ItemClickedEvent', source:$(this).parents('ul.list').attr('id'), index:$(this).attr('data-index')});
7
+ });
8
+ $(document).on('tap', 'ul.list > li.item a.link', function(event) {
9
+ event.preventDefault();
10
+ RubyApp.queueEvent({_class:'RubyApp::Elements::Mobile::List::LinkClickedEvent', source:$(this).parents('ul.list').attr('id'), index:$(this).attr('data-index')});
7
11
  });
8
12
  });
9
13
  = yield
@@ -28,29 +28,57 @@ module RubyApp
28
28
 
29
29
  end
30
30
 
31
+ class ItemClickedEvent < RubyApp::Elements::Mobile::List::ClickedEvent
32
+
33
+ def initialize(data)
34
+ super(data)
35
+ end
36
+
37
+ end
38
+
39
+ class LinkClickedEvent < RubyApp::Elements::Mobile::List::ClickedEvent
40
+
41
+ def initialize(data)
42
+ super(data)
43
+ end
44
+
45
+ end
46
+
31
47
  template_path(:all, File.dirname(__FILE__))
32
48
 
33
49
  attr_accessor :items
50
+ attr_accessor :is_split
34
51
 
35
- event :clicked
52
+ event :item_clicked
53
+ event :link_clicked
36
54
 
37
55
  def initialize
38
56
  super
39
57
  self.attributes.merge!('data-role' => 'listview')
40
58
 
41
59
  @items = []
60
+ @is_split = false
42
61
 
43
62
  end
44
63
 
64
+ def split?
65
+ return self.is_split
66
+ end
67
+
45
68
  protected
46
69
 
47
70
  def on_event(event)
48
- on_clicked(event) if event.is_a?(RubyApp::Elements::Mobile::List::ClickedEvent)
71
+ on_item_clicked(event) if event.is_a?(RubyApp::Elements::Mobile::List::ItemClickedEvent)
72
+ on_link_clicked(event) if event.is_a?(RubyApp::Elements::Mobile::List::LinkClickedEvent)
49
73
  super(event)
50
74
  end
51
75
 
52
- def on_clicked(event)
53
- clicked(event)
76
+ def on_item_clicked(event)
77
+ item_clicked(event)
78
+ end
79
+
80
+ def on_link_clicked(event)
81
+ link_clicked(event)
54
82
  end
55
83
 
56
84
  end
@@ -3,5 +3,8 @@
3
3
  %ul.list{attributes}
4
4
  - self.items.each_with_index do |item, index|
5
5
  %li.item{'data-icon' => 'false', 'data-theme' => self.selected_item == item ? self.attributes['data-selected-theme'] : nil}
6
- %a.item{:href => '#', :index => index}
6
+ %a.item{:href => '#', 'data-index' => index}
7
7
  = yield(:item, item, index) || item
8
+ - if self.split?
9
+ %a.link{:href => '#', 'data-index' => index}
10
+ = yield(:link, item, index) || item
@@ -26,7 +26,7 @@ module RubyApp
26
26
 
27
27
  protected
28
28
 
29
- def on_clicked(event)
29
+ def on_item_clicked(event)
30
30
  @selected_item = event.item
31
31
  event.update_element(self)
32
32
  super(event)
@@ -24,7 +24,7 @@ module RubyApp
24
24
  @back_button = RubyApp::Elements::Mobile::Navigation::BackButton.new
25
25
 
26
26
  @documents_list = RubyApp::Elements::Mobile::Pages::Information::DocumentsList.new(@session)
27
- @documents_list.clicked do |element, event|
27
+ @documents_list.item_clicked do |element, event|
28
28
  RubyApp::Elements::Mobile::Pages::Information::DocumentPage.new(event.item).show(event, element.options)
29
29
  end
30
30
 
@@ -24,7 +24,7 @@ module RubyApp
24
24
  @back_button = RubyApp::Elements::Mobile::Navigation::BackButton.new
25
25
 
26
26
  @pages_list = RubyApp::Elements::Mobile::Pages::Information::PagesList.new(@document)
27
- @pages_list.clicked do |element, event|
27
+ @pages_list.item_clicked do |element, event|
28
28
  RubyApp::Elements::Mobile::Pages::Information::PagePage.new(event.item).show(event, element.options)
29
29
  end
30
30
 
@@ -22,7 +22,7 @@ module RubyApp
22
22
  @back_button = RubyApp::Elements::Mobile::Navigation::BackButton.new
23
23
 
24
24
  @scripts_list = RubyApp::Elements::Mobile::Pages::Information::ScriptsList.new
25
- @scripts_list.clicked do |element, event|
25
+ @scripts_list.item_clicked do |element, event|
26
26
  if RubyApp::Session.configuration.scripts.enabled
27
27
  event.go(event.item.url)
28
28
  else
@@ -22,7 +22,7 @@ module RubyApp
22
22
  @back_button = RubyApp::Elements::Mobile::Navigation::BackButton.new
23
23
 
24
24
  @sessions_list = RubyApp::Elements::Mobile::Pages::Information::SessionsList.new
25
- @sessions_list.clicked do |element, event|
25
+ @sessions_list.item_clicked do |element, event|
26
26
  RubyApp::Elements::Mobile::Pages::Information::SessionPage.new(event.item).show(event, element.options)
27
27
  end
28
28
 
@@ -7,22 +7,44 @@ end
7
7
 
8
8
  add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
9
9
  event.assert_exists_link('Item 01')
10
- event.tap_link('Item 01')
10
+ event.tap_list_item('Item 01')
11
11
  end
12
12
 
13
13
  add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
14
- event.assert_exists_text('You clicked Item 01.')
14
+ event.assert_exists_text('You clicked the item Item 01.')
15
+ event.assert_exists_link('OK')
16
+ event.tap_link('OK')
17
+ end
18
+
19
+ add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
20
+ event.assert_exists_link('Item 01')
21
+ event.tap_list_link('Item 01')
22
+ end
23
+
24
+ add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
25
+ event.assert_exists_text('You clicked the link Item 01.')
26
+ event.assert_exists_link('OK')
27
+ event.tap_link('OK')
28
+ end
29
+
30
+ add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
31
+ event.assert_exists_link('Item 11')
32
+ event.tap_list_item('Item 11')
33
+ end
34
+
35
+ add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
36
+ event.assert_exists_text('You clicked the item Item 11.')
15
37
  event.assert_exists_link('OK')
16
38
  event.tap_link('OK')
17
39
  end
18
40
 
19
41
  add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
20
42
  event.assert_exists_link('Item 11')
21
- event.tap_link('Item 11')
43
+ event.tap_list_link('Item 11')
22
44
  end
23
45
 
24
46
  add_step! RubyApp::Elements::Mobile::Page::ShownEvent do |event|
25
- event.assert_exists_text('You clicked Item 11.')
47
+ event.assert_exists_text('You clicked the link Item 11.')
26
48
  event.assert_exists_link('OK')
27
49
  event.tap_link('OK')
28
50
  end
@@ -1,4 +1,4 @@
1
1
  module RubyApp
2
- VERSION = "0.5.16"
2
+ VERSION = "0.5.17"
3
3
  ROOT = File.expand_path(File.dirname(__FILE__))
4
4
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: RubyApp
3
3
  version: !ruby/object:Gem::Version
4
- hash: 43
4
+ hash: 41
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 5
9
- - 16
10
- version: 0.5.16
9
+ - 17
10
+ version: 0.5.17
11
11
  platform: ruby
12
12
  authors:
13
13
  - Frank G. Ficnar
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-04-16 00:00:00 Z
18
+ date: 2012-04-17 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  prerelease: false