ProMotion 0.7.8 → 1.0.0

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.
Files changed (91) hide show
  1. data/.gitignore +2 -1
  2. data/.travis.yml +1 -1
  3. data/ProMotion.gemspec +2 -0
  4. data/README.md +51 -449
  5. data/Rakefile +11 -1
  6. data/app/screens/basic_screen.rb +0 -24
  7. data/lib/ProMotion/cocoatouch/{NavigationController.rb → navigation_controller.rb} +0 -0
  8. data/lib/ProMotion/cocoatouch/split_view_controller.rb +29 -0
  9. data/lib/ProMotion/cocoatouch/tab_bar_controller.rb +43 -0
  10. data/lib/ProMotion/cocoatouch/{TableViewCell.rb → table_view_cell.rb} +0 -1
  11. data/lib/ProMotion/cocoatouch/{TableViewController.rb → table_view_controller.rb} +0 -0
  12. data/lib/ProMotion/cocoatouch/{ViewController.rb → view_controller.rb} +6 -1
  13. data/lib/ProMotion/{screen_helpers → containers}/split_screen.rb +0 -2
  14. data/lib/ProMotion/containers/tabs.rb +95 -0
  15. data/lib/ProMotion/delegate/delegate.rb +2 -13
  16. data/lib/ProMotion/delegate/{delegate_helper.rb → delegate_module.rb} +29 -16
  17. data/lib/ProMotion/delegate/delegate_notifications.rb +17 -8
  18. data/lib/ProMotion/delegate/delegate_parent.rb +11 -0
  19. data/lib/ProMotion/extensions/conversions.rb +20 -0
  20. data/lib/ProMotion/{helpers/logger.rb → logger.rb} +0 -0
  21. data/lib/ProMotion/map/map_screen.rb +6 -0
  22. data/lib/ProMotion/map/map_screen_annotation.rb +56 -0
  23. data/lib/ProMotion/map/map_screen_module.rb +207 -0
  24. data/lib/ProMotion/{push_notifications → push_notification}/push_notification.rb +13 -6
  25. data/lib/ProMotion/{screens → screen}/screen.rb +1 -1
  26. data/lib/ProMotion/{screens/_screen_module.rb → screen/screen_module.rb} +76 -51
  27. data/lib/ProMotion/{screen_helpers → screen}/screen_navigation.rb +8 -12
  28. data/lib/ProMotion/{screens/_tables → table/cell}/table_view_cell_module.rb +18 -27
  29. data/lib/ProMotion/table/data/table_data.rb +98 -0
  30. data/lib/ProMotion/table/extensions/indexable.rb +9 -0
  31. data/lib/ProMotion/table/extensions/refreshable.rb +45 -0
  32. data/lib/ProMotion/table/extensions/searchable.rb +61 -0
  33. data/lib/ProMotion/table/grouped_table.rb +9 -0
  34. data/lib/ProMotion/table/grouped_table_screen.rb +6 -0
  35. data/lib/ProMotion/table/table.rb +312 -0
  36. data/lib/ProMotion/table/table_screen.rb +6 -0
  37. data/lib/ProMotion/{screens/_compatibility → thirdparty}/formotion_screen.rb +18 -5
  38. data/lib/ProMotion/version.rb +1 -1
  39. data/lib/ProMotion/view/styling.rb +137 -0
  40. data/lib/ProMotion/web/web_screen.rb +6 -0
  41. data/lib/ProMotion/web/web_screen_module.rb +155 -0
  42. data/resources/WebScreen.html +6 -0
  43. data/resources/test.jpeg +0 -0
  44. data/spec/functional/func_map_screen_spec.rb +105 -0
  45. data/spec/functional/func_screen_spec.rb +54 -7
  46. data/spec/functional/func_searchable_table_spec.rb +1 -1
  47. data/spec/functional/func_tab_bar_spec.rb +78 -0
  48. data/spec/functional/func_table_screen_spec.rb +61 -14
  49. data/spec/functional/func_web_screen_spec.rb +51 -0
  50. data/spec/helpers/map_screen.rb +51 -0
  51. data/spec/helpers/present_screen.rb +26 -0
  52. data/spec/helpers/tab_screen.rb +4 -0
  53. data/spec/helpers/table_screen.rb +12 -3
  54. data/spec/helpers/table_screen_formotion.rb +25 -0
  55. data/spec/helpers/table_screen_indexable.rb +13 -0
  56. data/spec/helpers/test_delegate.rb +28 -0
  57. data/spec/helpers/web_screen.rb +22 -0
  58. data/spec/unit/delegate_spec.rb +53 -4
  59. data/spec/unit/map_spec.rb +48 -0
  60. data/spec/unit/screen_helpers_spec.rb +24 -16
  61. data/spec/unit/screen_spec.rb +22 -18
  62. data/spec/unit/split_screen_in_tab_bar_spec.rb +2 -2
  63. data/spec/unit/split_screen_open_screen_spec.rb +15 -10
  64. data/spec/unit/split_screen_spec.rb +2 -2
  65. data/spec/unit/tab_spec.rb +41 -0
  66. data/spec/unit/tables/formotion_screen_spec.rb +16 -0
  67. data/spec/unit/tables/table_indexable_spec.rb +12 -0
  68. data/spec/unit/tables/table_module_spec.rb +24 -9
  69. data/spec/unit/tables/table_screen_spec.rb +1 -1
  70. data/spec/unit/tables/table_view_cell_spec.rb +9 -8
  71. data/spec/unit/view_helper_spec.rb +2 -2
  72. data/spec/unit/web_spec.rb +106 -0
  73. metadata +96 -35
  74. data/lib/ProMotion/cocoatouch/SplitViewController.rb +0 -23
  75. data/lib/ProMotion/helpers/console.rb +0 -29
  76. data/lib/ProMotion/helpers/measure_helper.rb +0 -20
  77. data/lib/ProMotion/helpers/system_helper.rb +0 -29
  78. data/lib/ProMotion/helpers/view_helper.rb +0 -82
  79. data/lib/ProMotion/screen_helpers/screen_elements.rb +0 -36
  80. data/lib/ProMotion/screen_helpers/screen_tabs.rb +0 -95
  81. data/lib/ProMotion/screens/_table_screen_module.rb +0 -47
  82. data/lib/ProMotion/screens/_tables/_refreshable_table.rb +0 -45
  83. data/lib/ProMotion/screens/_tables/_searchable_table.rb +0 -60
  84. data/lib/ProMotion/screens/_tables/_sectioned_table.rb +0 -5
  85. data/lib/ProMotion/screens/_tables/_table.rb +0 -169
  86. data/lib/ProMotion/screens/_tables/grouped_table.rb +0 -16
  87. data/lib/ProMotion/screens/_tables/plain_table.rb +0 -17
  88. data/lib/ProMotion/screens/_tables/table_data.rb +0 -175
  89. data/lib/ProMotion/screens/behaves_like_screen.rb +0 -10
  90. data/lib/ProMotion/screens/table_screen.rb +0 -16
  91. data/spec/unit/ios_version_spec.rb +0 -28
@@ -28,12 +28,12 @@ describe "split screen functionality" do
28
28
 
29
29
  it "should set the first viewController to MasterScreen" do
30
30
  @split_screen.master_screen.should == @master_screen
31
- @split_screen.viewControllers.first.should == @master_screen.pm_main_controller
31
+ @split_screen.viewControllers.first.should == (@master_screen.navigationController || @master_screen)
32
32
  end
33
33
 
34
34
  it "should set the second viewController to DetailScreen" do
35
35
  @split_screen.detail_screen.should == @detail_screen
36
- @split_screen.viewControllers.last.should == @detail_screen.pm_main_controller
36
+ @split_screen.viewControllers.last.should == (@detail_screen.navigationController || @detail_screen)
37
37
  end
38
38
 
39
39
  it "should set the title on both screens" do
@@ -0,0 +1,41 @@
1
+ describe "tab bar functionality" do
2
+
3
+ before do
4
+ @app = TestDelegate.new
5
+
6
+ @tab_1 = TabScreen.new
7
+ @tab_2 = BasicScreen.new
8
+ @tab_3 = HomeScreen.new
9
+ @tab_4 = TestTableScreen.new
10
+
11
+ @tab_bar = @app.open_tab_bar @tab_1, @tab_2, @tab_3, @tab_4
12
+ end
13
+
14
+ after do
15
+
16
+ end
17
+
18
+ it "should have created a tab bar with four items" do
19
+ @tab_bar.should != nil
20
+ @tab_bar.should.be.kind_of(UITabBarController)
21
+ @tab_bar.viewControllers.length.should == 4
22
+ end
23
+
24
+ it "should have set a custom tab bar item" do
25
+ @tab_bar.tabBar.items.first.title.should == "Tab Item"
26
+ end
27
+
28
+ it "should have set the others to their respective titles" do
29
+ @tab_bar.tabBar.items[1].title.should == "Basic"
30
+ @tab_bar.tabBar.items[2].title.should == "Home"
31
+ @tab_bar.tabBar.items[3].title.should == "TestTableScreen"
32
+ end
33
+
34
+ it "should allow changing the tab bar item with set_tab_bar_item" do
35
+ @tab_1.set_tab_bar_item title: "Custom", icon: "test.jpeg"
36
+ @tab_bar.tabBar.items.first.title.should == "Custom"
37
+ end
38
+
39
+ end
40
+
41
+
@@ -0,0 +1,16 @@
1
+ describe "PM::FormotionScreen" do
2
+
3
+ before do
4
+ @screen = TestFormotionScreen.new
5
+ end
6
+
7
+ it "should store title" do
8
+ TestFormotionScreen.get_title.should == 'Formotion Test'
9
+ @screen.class.get_title.should == "Formotion Test"
10
+ end
11
+
12
+ it "should set default title on new instances" do
13
+ @screen.title.should == "Formotion Test"
14
+ end
15
+
16
+ end
@@ -0,0 +1,12 @@
1
+ describe "PM::Table module" do
2
+
3
+ before do
4
+ @screen = TableScreenIndexable.new
5
+ end
6
+
7
+ it "should automatically return the first letter of each section" do
8
+ result = %w{ A G M O S U }
9
+ @screen.sectionIndexTitlesForTableView(@screen.table_view).should == result
10
+ end
11
+
12
+ end
@@ -5,6 +5,7 @@ describe "PM::Table module" do
5
5
  end
6
6
 
7
7
  def custom_cell
8
+ @image = UIImage.imageNamed("list")
8
9
  cell_factory({
9
10
  title: "Crazy Full Featured Cell",
10
11
  subtitle: "This is way too huge..see note",
@@ -15,16 +16,14 @@ describe "PM::Table module" do
15
16
  cell_identifier: "Cell",
16
17
  cell_class: PM::TableViewCell,
17
18
  masks_to_bounds: true,
18
- background_color: UIColor.whiteColor,
19
+ background_color: UIColor.colorWithPatternImage(@image),
19
20
  selection_style: UITableViewCellSelectionStyleGray,
20
- cell_class_attributes: {
21
- # any Obj-C attributes to set on the cell
22
- backgroundColor: UIColor.whiteColor
21
+ accessory: {
22
+ view: :switch, # currently only :switch is supported
23
+ type: UITableViewCellAccessoryCheckmark,
24
+ checked: true # whether it's "checked" or not
23
25
  },
24
- accessory: :switch, # currently only :switch is supported
25
- accessory_type: UITableViewCellAccessoryCheckmark,
26
- accessory_checked: true, # whether it's "checked" or not
27
- image: { image: UIImage.imageNamed("something"), radius: 15 },
26
+ image: { image: @image, radius: 15 },
28
27
  remote_image: { # remote image, requires SDWebImage CocoaPod
29
28
  url: "http://placekitten.com/200/300", placeholder: "some-local-image",
30
29
  size: 50, radius: 15
@@ -41,7 +40,7 @@ describe "PM::Table module" do
41
40
  },{
42
41
  title: "Table cell group 2", cells: [ cell_factory ]
43
42
  },{
44
- title: "Table cell group 3", cells: [ cell_factory(title: "3-1"), cell_factory(title: "3-2") ]
43
+ title: "Table cell group 3", cells: [ cell_factory(title: "3-1"), cell_factory(title: "3-2", background_color: UIColor.blueColor) ]
45
44
  },{
46
45
  title: "Table cell group 4", cells: [ custom_cell, cell_factory(title: "4-2"), cell_factory(title: "4-3"), cell_factory(title: "4-4") ]
47
46
  }]
@@ -103,5 +102,21 @@ describe "PM::Table module" do
103
102
 
104
103
  @subject.tableView(@subject.table_view, didSelectRowAtIndexPath:@custom_ip)
105
104
  end
105
+
106
+ it "should set a custom cell background image" do
107
+ @image.should.not.be.nil
108
+ ip = NSIndexPath.indexPathForRow(0, inSection: 3) # Cell 2-1
109
+ cell = @subject.tableView(@subject.table_view, cellForRowAtIndexPath: ip)
110
+ cell.should.be.kind_of(UITableViewCell)
111
+ cell.backgroundColor.should.be.kind_of(UIColor)
112
+ cell.backgroundColor.should == UIColor.colorWithPatternImage(@image)
113
+ end
114
+
115
+ it "should set a custom cell background color" do
116
+ cell = @subject.tableView(@subject.table_view, cellForRowAtIndexPath: @ip)
117
+ cell.should.be.kind_of(UITableViewCell)
118
+ cell.backgroundColor.should.be.kind_of(UIColor)
119
+ cell.backgroundColor.should == UIColor.blueColor
120
+ end
106
121
 
107
122
  end
@@ -12,7 +12,7 @@ describe "table screens" do
12
12
  end
13
13
 
14
14
  it "should have proper cell numbers" do
15
- @screen.tableView(@screen.tableView, numberOfRowsInSection:0).should == 6
15
+ @screen.tableView(@screen.tableView, numberOfRowsInSection:0).should == 7
16
16
  @screen.tableView(@screen.tableView, numberOfRowsInSection:1).should == 2
17
17
  @screen.tableView(@screen.tableView, numberOfRowsInSection:2).should == 4
18
18
  @screen.tableView(@screen.tableView, numberOfRowsInSection:3).should == 3
@@ -8,7 +8,7 @@ describe "PM::TableViewCellModule" do
8
8
  action: :tapped_cell_1,
9
9
  height: 50, # manually changes the cell's height
10
10
  cell_style: UITableViewCellStyleSubtitle,
11
- cell_identifier: "Cell",
11
+ cell_identifier: "Custom Cell",
12
12
  cell_class: PM::TableViewCell,
13
13
  layer: { masks_to_bounds: true },
14
14
  background_color: UIColor.redColor,
@@ -28,7 +28,7 @@ describe "PM::TableViewCellModule" do
28
28
  { title: "", cells: [
29
29
  {title: "Test 1", accessory_type: UITableViewCellStateShowingEditControlMask },
30
30
  custom_cell,
31
- { title: "Test2", accessory: button } ] }
31
+ { title: "Test2", accessory: { view: button } } ] }
32
32
  ]
33
33
  end
34
34
 
@@ -54,12 +54,13 @@ describe "PM::TableViewCellModule" do
54
54
  end
55
55
 
56
56
  it "should have the right custom re-use identifier" do
57
- @subject.reuseIdentifier.should == "Cell"
57
+ @subject.reuseIdentifier.should == "Custom Cell"
58
58
  end
59
+
59
60
  it "should have the right generated re-use identifier" do
60
61
  ip = NSIndexPath.indexPathForRow(2, inSection: 1)
61
62
  subject = @screen.tableView(@screen.table_view, cellForRowAtIndexPath: ip)
62
- subject.reuseIdentifier.should == "Cell-accessory"
63
+ subject.reuseIdentifier.should == "ProMotion::TableViewCell-accessory"
63
64
  end
64
65
 
65
66
  it "should have the correct height" do
@@ -71,7 +72,7 @@ describe "PM::TableViewCellModule" do
71
72
  end
72
73
 
73
74
  it "should set the background color" do
74
- @subject.backgroundView.backgroundColor.should == UIColor.redColor
75
+ @subject.backgroundColor.should == UIColor.redColor
75
76
  end
76
77
 
77
78
  it "should set the selection color style" do
@@ -102,9 +103,9 @@ describe "PM::TableViewCellModule" do
102
103
  end
103
104
 
104
105
  it "should create two extra subviews" do
105
- @subject.subviews.length.should == 4
106
- @subject.subviews[2].class.should == UIView
107
- @subject.subviews[3].class.should == UILabel
106
+ @subject.subviews.length.should == 3
107
+ @subject.subviews[1].class.should == UIView
108
+ @subject.subviews[2].class.should == UILabel
108
109
  end
109
110
 
110
111
 
@@ -6,7 +6,7 @@ describe "view helpers" do
6
6
 
7
7
  before do
8
8
  @dummy = UIView.alloc.initWithFrame CGRectZero
9
- @dummy.extend ProMotion::ViewHelper
9
+ @dummy.extend ProMotion::Styling
10
10
  end
11
11
 
12
12
  it "should allow you to set attributes" do
@@ -78,7 +78,7 @@ describe "view helpers" do
78
78
 
79
79
  before do
80
80
  @dummy = UIView.alloc.initWithFrame CGRectZero
81
- @dummy.extend ProMotion::ViewHelper
81
+ @dummy.extend ProMotion::Styling
82
82
 
83
83
  @parent = UIView.alloc.initWithFrame(CGRectMake(0, 0, 320, 480))
84
84
  @child = UIView.alloc.initWithFrame(CGRectZero)
@@ -0,0 +1,106 @@
1
+ describe "web screen properties" do
2
+ extend WebStub::SpecHelpers
3
+
4
+ before { disable_network_access! }
5
+ after { enable_network_access! }
6
+
7
+ describe "when open web page with http request" do
8
+ before do
9
+ class TestWebScreenWithHTTPRequest < TestWebScreen
10
+ attr_accessor :on_request, :on_request_args
11
+ def on_request(request, type)
12
+ self.on_request_args = [request, type]
13
+ self.on_request = true
14
+ end
15
+ end
16
+ stub_request(:get, "http://mixi.jp/").
17
+ to_return(body: "<html><body>[mixi]</body></html>", content_type: "text/html")
18
+ # Simulate AppDelegate setup of web screen
19
+ @webscreen = TestWebScreenWithHTTPRequest.new modal: true, nav_bar: true, external_links: false
20
+ end
21
+
22
+ it "should get the current url" do
23
+ @webscreen.open_url(NSURL.URLWithString('http://mixi.jp/'))
24
+
25
+ wait_for_change @webscreen, 'load_finished' do
26
+ @webscreen.current_url.should == 'http://mixi.jp/'
27
+ end
28
+ end
29
+
30
+ it "should open web page by url string" do
31
+ @webscreen.open_url('http://mixi.jp/')
32
+ wait_for_change @webscreen, 'load_finished' do
33
+ @webscreen.html.should =~ /mixi/
34
+ end
35
+ end
36
+
37
+ it "should called on_request hook" do
38
+ @webscreen.open_url(NSURL.URLWithString('http://mixi.jp/'))
39
+
40
+ wait_for_change @webscreen, 'on_request' do
41
+ @webscreen.on_request_args[0].is_a?(NSURLRequest).should == true
42
+ # on_request is called when @webscreen request for some iframe
43
+ @webscreen.on_request_args[0].URL.absoluteString.should =~ %r|https?://.*|
44
+ end
45
+ end
46
+
47
+ end
48
+
49
+ describe "when use on_request hook by web brigde rpc" do
50
+ before do
51
+ class TestWebScreenWithRPC < TestWebScreen
52
+ attr_accessor :on_request, :on_request_args
53
+
54
+ def on_request(request, type)
55
+ self.on_request_args = [request, type]
56
+ self.on_request = true
57
+ # return false to prevent loadRequest
58
+ false
59
+ end
60
+ end
61
+ stub_request(:get, "http://mixi.jp/").
62
+ to_return(body: "<html><body>[mixi]</body></html>", content_type: "text/html")
63
+ # Simulate AppDelegate setup of web screen
64
+ @webscreen = TestWebScreenWithRPC.new modal: true, nav_bar: true, external_links: false
65
+ end
66
+
67
+ it "should called on_request hook" do
68
+ # simulate web bridge request from html links
69
+ @webscreen.open_url(NSURL.URLWithString('webbridge://method'))
70
+
71
+ wait_for_change @webscreen, 'on_request' do
72
+ request = @webscreen.on_request_args[0]
73
+ # on_request is called when @webscreen request for some iframe
74
+ request.URL.absoluteString.should == 'webbridge://method'
75
+ end
76
+
77
+ wait 0.3 do
78
+ # it should not load request when return false in on_request
79
+ !!(@webscreen.load_finished.should) == false
80
+ end
81
+ end
82
+ end
83
+
84
+ describe "when load static html file" do
85
+ before do
86
+ # Simulate AppDelegate setup of web screen
87
+ @webscreen = TestWebScreen.new modal: true, nav_bar: true, external_links: false
88
+ @webscreen.set_content("WebScreen.html")
89
+ end
90
+
91
+ it "should get the url of content" do
92
+ @webscreen.current_url.should == 'about:blank'
93
+ end
94
+
95
+ it "should have a UIWebView as the primary view" do
96
+ @webscreen.web.class.should == UIWebView
97
+ end
98
+
99
+ it "should load the about html page" do
100
+ wait_for_change @webscreen, 'load_finished' do
101
+ @webscreen.load_finished.should == true
102
+ end
103
+ end
104
+ end
105
+
106
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ProMotion
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.8
4
+ version: 1.0.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,8 +11,24 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2013-07-10 00:00:00.000000000 Z
14
+ date: 2013-07-15 00:00:00.000000000 Z
15
15
  dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: webstub
18
+ requirement: !ruby/object:Gem::Requirement
19
+ none: false
20
+ requirements:
21
+ - - ! '>='
22
+ - !ruby/object:Gem::Version
23
+ version: '0'
24
+ type: :development
25
+ prerelease: false
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ none: false
28
+ requirements:
29
+ - - ! '>='
30
+ - !ruby/object:Gem::Version
31
+ version: '0'
16
32
  - !ruby/object:Gem::Dependency
17
33
  name: motion-stump
18
34
  requirement: !ruby/object:Gem::Requirement
@@ -45,6 +61,22 @@ dependencies:
45
61
  - - ! '>='
46
62
  - !ruby/object:Gem::Version
47
63
  version: '0'
64
+ - !ruby/object:Gem::Dependency
65
+ name: formotion
66
+ requirement: !ruby/object:Gem::Requirement
67
+ none: false
68
+ requirements:
69
+ - - ! '>='
70
+ - !ruby/object:Gem::Version
71
+ version: '0'
72
+ type: :development
73
+ prerelease: false
74
+ version_requirements: !ruby/object:Gem::Requirement
75
+ none: false
76
+ requirements:
77
+ - - ! '>='
78
+ - !ruby/object:Gem::Version
79
+ version: '0'
48
80
  - !ruby/object:Gem::Dependency
49
81
  name: rake
50
82
  requirement: !ruby/object:Gem::Requirement
@@ -83,71 +115,87 @@ files:
83
115
  - app/app_delegate.rb
84
116
  - app/screens/basic_screen.rb
85
117
  - lib/ProMotion.rb
86
- - lib/ProMotion/.DS_Store
87
- - lib/ProMotion/cocoatouch/NavigationController.rb
88
- - lib/ProMotion/cocoatouch/SplitViewController.rb
89
- - lib/ProMotion/cocoatouch/TableViewCell.rb
90
- - lib/ProMotion/cocoatouch/TableViewController.rb
91
- - lib/ProMotion/cocoatouch/ViewController.rb
118
+ - lib/ProMotion/cocoatouch/navigation_controller.rb
119
+ - lib/ProMotion/cocoatouch/split_view_controller.rb
120
+ - lib/ProMotion/cocoatouch/tab_bar_controller.rb
121
+ - lib/ProMotion/cocoatouch/table_view_cell.rb
122
+ - lib/ProMotion/cocoatouch/table_view_controller.rb
123
+ - lib/ProMotion/cocoatouch/view_controller.rb
124
+ - lib/ProMotion/containers/split_screen.rb
125
+ - lib/ProMotion/containers/tabs.rb
92
126
  - lib/ProMotion/delegate/delegate.rb
93
- - lib/ProMotion/delegate/delegate_helper.rb
127
+ - lib/ProMotion/delegate/delegate_module.rb
94
128
  - lib/ProMotion/delegate/delegate_notifications.rb
95
- - lib/ProMotion/helpers/console.rb
96
- - lib/ProMotion/helpers/logger.rb
97
- - lib/ProMotion/helpers/measure_helper.rb
98
- - lib/ProMotion/helpers/system_helper.rb
99
- - lib/ProMotion/helpers/view_helper.rb
129
+ - lib/ProMotion/delegate/delegate_parent.rb
130
+ - lib/ProMotion/extensions/conversions.rb
131
+ - lib/ProMotion/logger.rb
132
+ - lib/ProMotion/map/map_screen.rb
133
+ - lib/ProMotion/map/map_screen_annotation.rb
134
+ - lib/ProMotion/map/map_screen_module.rb
100
135
  - lib/ProMotion/pro_motion.rb
101
- - lib/ProMotion/push_notifications/push_notification.rb
102
- - lib/ProMotion/screen_helpers/screen_elements.rb
103
- - lib/ProMotion/screen_helpers/screen_navigation.rb
104
- - lib/ProMotion/screen_helpers/screen_tabs.rb
105
- - lib/ProMotion/screen_helpers/split_screen.rb
106
- - lib/ProMotion/screens/_compatibility/formotion_screen.rb
107
- - lib/ProMotion/screens/_screen_module.rb
108
- - lib/ProMotion/screens/_table_screen_module.rb
109
- - lib/ProMotion/screens/_tables/_refreshable_table.rb
110
- - lib/ProMotion/screens/_tables/_searchable_table.rb
111
- - lib/ProMotion/screens/_tables/_sectioned_table.rb
112
- - lib/ProMotion/screens/_tables/_table.rb
113
- - lib/ProMotion/screens/_tables/grouped_table.rb
114
- - lib/ProMotion/screens/_tables/plain_table.rb
115
- - lib/ProMotion/screens/_tables/table_data.rb
116
- - lib/ProMotion/screens/_tables/table_view_cell_module.rb
117
- - lib/ProMotion/screens/behaves_like_screen.rb
118
- - lib/ProMotion/screens/screen.rb
119
- - lib/ProMotion/screens/table_screen.rb
136
+ - lib/ProMotion/push_notification/push_notification.rb
137
+ - lib/ProMotion/screen/screen.rb
138
+ - lib/ProMotion/screen/screen_module.rb
139
+ - lib/ProMotion/screen/screen_navigation.rb
140
+ - lib/ProMotion/table/cell/table_view_cell_module.rb
141
+ - lib/ProMotion/table/data/table_data.rb
142
+ - lib/ProMotion/table/extensions/indexable.rb
143
+ - lib/ProMotion/table/extensions/refreshable.rb
144
+ - lib/ProMotion/table/extensions/searchable.rb
145
+ - lib/ProMotion/table/grouped_table.rb
146
+ - lib/ProMotion/table/grouped_table_screen.rb
147
+ - lib/ProMotion/table/table.rb
148
+ - lib/ProMotion/table/table_screen.rb
149
+ - lib/ProMotion/thirdparty/formotion_screen.rb
120
150
  - lib/ProMotion/version.rb
151
+ - lib/ProMotion/view/styling.rb
152
+ - lib/ProMotion/web/web_screen.rb
153
+ - lib/ProMotion/web/web_screen_module.rb
154
+ - resources/WebScreen.html
121
155
  - resources/list.png
156
+ - resources/test.jpeg
157
+ - spec/functional/func_map_screen_spec.rb
122
158
  - spec/functional/func_screen_spec.rb
123
159
  - spec/functional/func_searchable_table_spec.rb
124
160
  - spec/functional/func_split_screen_spec.rb
161
+ - spec/functional/func_tab_bar_spec.rb
125
162
  - spec/functional/func_table_screen_spec.rb
163
+ - spec/functional/func_web_screen_spec.rb
126
164
  - spec/helpers/basic_screen.rb
127
165
  - spec/helpers/detail_screen.rb
128
166
  - spec/helpers/dummy_class.rb
129
167
  - spec/helpers/functional_screen.rb
130
168
  - spec/helpers/home_screen.rb
169
+ - spec/helpers/map_screen.rb
131
170
  - spec/helpers/master_screen.rb
171
+ - spec/helpers/present_screen.rb
132
172
  - spec/helpers/screen_module_view_controller.rb
173
+ - spec/helpers/tab_screen.rb
133
174
  - spec/helpers/table_screen.rb
175
+ - spec/helpers/table_screen_formotion.rb
176
+ - spec/helpers/table_screen_indexable.rb
134
177
  - spec/helpers/table_screen_refreshable.rb
135
178
  - spec/helpers/table_screen_searchable.rb
136
179
  - spec/helpers/test_delegate.rb
180
+ - spec/helpers/web_screen.rb
137
181
  - spec/unit/delegate_spec.rb
138
- - spec/unit/ios_version_spec.rb
139
182
  - spec/unit/logger_spec.rb
140
183
  - spec/unit/main_spec.rb
184
+ - spec/unit/map_spec.rb
141
185
  - spec/unit/screen_helpers_spec.rb
142
186
  - spec/unit/screen_module_spec.rb
143
187
  - spec/unit/screen_spec.rb
144
188
  - spec/unit/split_screen_in_tab_bar_spec.rb
145
189
  - spec/unit/split_screen_open_screen_spec.rb
146
190
  - spec/unit/split_screen_spec.rb
191
+ - spec/unit/tab_spec.rb
192
+ - spec/unit/tables/formotion_screen_spec.rb
193
+ - spec/unit/tables/table_indexable_spec.rb
147
194
  - spec/unit/tables/table_module_spec.rb
148
195
  - spec/unit/tables/table_screen_spec.rb
149
196
  - spec/unit/tables/table_view_cell_spec.rb
150
197
  - spec/unit/view_helper_spec.rb
198
+ - spec/unit/web_spec.rb
151
199
  homepage: https://github.com/clearsightstudio/ProMotion
152
200
  licenses: []
153
201
  post_install_message:
@@ -176,32 +224,45 @@ summary: ProMotion is a new way to organize RubyMotion apps. Instead of dealing
176
224
  your app and include a ton of great utilities to make iOS development more like
177
225
  Ruby and less like Objective-C.
178
226
  test_files:
227
+ - spec/functional/func_map_screen_spec.rb
179
228
  - spec/functional/func_screen_spec.rb
180
229
  - spec/functional/func_searchable_table_spec.rb
181
230
  - spec/functional/func_split_screen_spec.rb
231
+ - spec/functional/func_tab_bar_spec.rb
182
232
  - spec/functional/func_table_screen_spec.rb
233
+ - spec/functional/func_web_screen_spec.rb
183
234
  - spec/helpers/basic_screen.rb
184
235
  - spec/helpers/detail_screen.rb
185
236
  - spec/helpers/dummy_class.rb
186
237
  - spec/helpers/functional_screen.rb
187
238
  - spec/helpers/home_screen.rb
239
+ - spec/helpers/map_screen.rb
188
240
  - spec/helpers/master_screen.rb
241
+ - spec/helpers/present_screen.rb
189
242
  - spec/helpers/screen_module_view_controller.rb
243
+ - spec/helpers/tab_screen.rb
190
244
  - spec/helpers/table_screen.rb
245
+ - spec/helpers/table_screen_formotion.rb
246
+ - spec/helpers/table_screen_indexable.rb
191
247
  - spec/helpers/table_screen_refreshable.rb
192
248
  - spec/helpers/table_screen_searchable.rb
193
249
  - spec/helpers/test_delegate.rb
250
+ - spec/helpers/web_screen.rb
194
251
  - spec/unit/delegate_spec.rb
195
- - spec/unit/ios_version_spec.rb
196
252
  - spec/unit/logger_spec.rb
197
253
  - spec/unit/main_spec.rb
254
+ - spec/unit/map_spec.rb
198
255
  - spec/unit/screen_helpers_spec.rb
199
256
  - spec/unit/screen_module_spec.rb
200
257
  - spec/unit/screen_spec.rb
201
258
  - spec/unit/split_screen_in_tab_bar_spec.rb
202
259
  - spec/unit/split_screen_open_screen_spec.rb
203
260
  - spec/unit/split_screen_spec.rb
261
+ - spec/unit/tab_spec.rb
262
+ - spec/unit/tables/formotion_screen_spec.rb
263
+ - spec/unit/tables/table_indexable_spec.rb
204
264
  - spec/unit/tables/table_module_spec.rb
205
265
  - spec/unit/tables/table_screen_spec.rb
206
266
  - spec/unit/tables/table_view_cell_spec.rb
207
267
  - spec/unit/view_helper_spec.rb
268
+ - spec/unit/web_spec.rb