ProMotion 0.7.8 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
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