gametel 0.3 → 0.4

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 (907) hide show
  1. data/features/main_screen.feature +1 -1
  2. data/features/step_definitions/button_steps.rb +1 -1
  3. data/features/step_definitions/main_screen_steps.rb +1 -2
  4. data/features/support/env.rb +24 -1
  5. data/features/text.feature +0 -12
  6. data/features/view.feature +0 -1
  7. data/lib/gametel.rb +3 -4
  8. data/lib/gametel/accessors.rb +0 -1
  9. data/lib/gametel/platforms/brazenhead/basic.rb +17 -0
  10. data/lib/gametel/platforms/brazenhead/spinner.rb +17 -0
  11. data/lib/gametel/platforms/brazenhead/text.rb +39 -0
  12. data/lib/gametel/platforms/brazenhead/view.rb +24 -0
  13. data/lib/gametel/platforms/brazenhead_platform.rb +139 -0
  14. data/lib/gametel/version.rb +1 -1
  15. data/spec/lib/gametel/accessors_spec.rb +46 -31
  16. data/spec/lib/gametel_spec.rb +30 -12
  17. data/spec/spec_helper.rb +4 -2
  18. metadata +32 -897
  19. data/.calabash_settings +0 -1
  20. data/.gitignore +0 -26
  21. data/.irbrc +0 -16
  22. data/.rspec +0 -2
  23. data/.rvmrc +0 -1
  24. data/.travis.yml +0 -5
  25. data/ApiDemos/.classpath +0 -8
  26. data/ApiDemos/.project +0 -33
  27. data/ApiDemos/.settings/org.eclipse.jdt.core.prefs +0 -4
  28. data/ApiDemos/AndroidManifest.xml +0 -2715
  29. data/ApiDemos/README.txt +0 -19
  30. data/ApiDemos/assets/HelloActivity.apk +0 -0
  31. data/ApiDemos/assets/fonts/samplefont.ttf +0 -0
  32. data/ApiDemos/assets/read_asset.txt +0 -3
  33. data/ApiDemos/build.xml +0 -83
  34. data/ApiDemos/proguard-project.txt +0 -20
  35. data/ApiDemos/project.properties +0 -14
  36. data/ApiDemos/res/anim/animator.xml +0 -23
  37. data/ApiDemos/res/anim/animator_set.xml +0 -32
  38. data/ApiDemos/res/anim/color_animator.xml +0 -23
  39. data/ApiDemos/res/anim/cycle_7.xml +0 -17
  40. data/ApiDemos/res/anim/fade.xml +0 -20
  41. data/ApiDemos/res/anim/hold.xml +0 -20
  42. data/ApiDemos/res/anim/hyperspace_in.xml +0 -17
  43. data/ApiDemos/res/anim/hyperspace_out.xml +0 -61
  44. data/ApiDemos/res/anim/layout_animation_row_left_slide.xml +0 -19
  45. data/ApiDemos/res/anim/layout_animation_row_right_slide.xml +0 -20
  46. data/ApiDemos/res/anim/layout_animation_table.xml +0 -19
  47. data/ApiDemos/res/anim/layout_bottom_to_top_slide.xml +0 -20
  48. data/ApiDemos/res/anim/layout_grid_fade.xml +0 -20
  49. data/ApiDemos/res/anim/layout_grid_inverse_fade.xml +0 -21
  50. data/ApiDemos/res/anim/layout_random_fade.xml +0 -20
  51. data/ApiDemos/res/anim/layout_wave_scale.xml +0 -21
  52. data/ApiDemos/res/anim/object_animator.xml +0 -23
  53. data/ApiDemos/res/anim/push_left_in.xml +0 -20
  54. data/ApiDemos/res/anim/push_left_out.xml +0 -20
  55. data/ApiDemos/res/anim/push_up_in.xml +0 -20
  56. data/ApiDemos/res/anim/push_up_out.xml +0 -20
  57. data/ApiDemos/res/anim/shake.xml +0 -17
  58. data/ApiDemos/res/anim/slide_left.xml +0 -20
  59. data/ApiDemos/res/anim/slide_right.xml +0 -20
  60. data/ApiDemos/res/anim/slide_top_to_bottom.xml +0 -20
  61. data/ApiDemos/res/anim/wave_scale.xml +0 -33
  62. data/ApiDemos/res/anim/zoom_enter.xml +0 -28
  63. data/ApiDemos/res/anim/zoom_exit.xml +0 -33
  64. data/ApiDemos/res/animator/fragment_slide_left_enter.xml +0 -32
  65. data/ApiDemos/res/animator/fragment_slide_left_exit.xml +0 -32
  66. data/ApiDemos/res/animator/fragment_slide_right_enter.xml +0 -32
  67. data/ApiDemos/res/animator/fragment_slide_right_exit.xml +0 -32
  68. data/ApiDemos/res/drawable-hdpi/alert_dialog_icon.png +0 -0
  69. data/ApiDemos/res/drawable-hdpi/apidemo_androidlogo.png +0 -0
  70. data/ApiDemos/res/drawable-hdpi/app_sample_code.png +0 -0
  71. data/ApiDemos/res/drawable-hdpi/arrow_down_float.png +0 -0
  72. data/ApiDemos/res/drawable-hdpi/arrow_up_float.png +0 -0
  73. data/ApiDemos/res/drawable-hdpi/btn_check_off.png +0 -0
  74. data/ApiDemos/res/drawable-hdpi/btn_check_on.png +0 -0
  75. data/ApiDemos/res/drawable-hdpi/btn_circle_normal.png +0 -0
  76. data/ApiDemos/res/drawable-hdpi/btn_default_normal.9.png +0 -0
  77. data/ApiDemos/res/drawable-hdpi/button.9.png +0 -0
  78. data/ApiDemos/res/drawable-hdpi/ic_contact_picture.png +0 -0
  79. data/ApiDemos/res/drawable-hdpi/ic_launcher_settings.png +0 -0
  80. data/ApiDemos/res/drawable-hdpi/ic_popup_reminder.png +0 -0
  81. data/ApiDemos/res/drawable-hdpi/icon48x48_2.png +0 -0
  82. data/ApiDemos/res/drawable-hdpi/logo240dpi.png +0 -0
  83. data/ApiDemos/res/drawable-hdpi/npatch240dpi.9.png +0 -0
  84. data/ApiDemos/res/drawable-hdpi/progress_circular_background.png +0 -0
  85. data/ApiDemos/res/drawable-hdpi/progress_particle.png +0 -0
  86. data/ApiDemos/res/drawable-hdpi/reslogo240dpi.png +0 -0
  87. data/ApiDemos/res/drawable-hdpi/scrollbar_state2.png +0 -0
  88. data/ApiDemos/res/drawable-hdpi/smlnpatch240dpi.9.png +0 -0
  89. data/ApiDemos/res/drawable-hdpi/star_big_on.png +0 -0
  90. data/ApiDemos/res/drawable-hdpi/stat_happy.png +0 -0
  91. data/ApiDemos/res/drawable-hdpi/stat_neutral.png +0 -0
  92. data/ApiDemos/res/drawable-hdpi/stat_sad.png +0 -0
  93. data/ApiDemos/res/drawable-hdpi/stat_sample.png +0 -0
  94. data/ApiDemos/res/drawable-hdpi/stylogo240dpi.png +0 -0
  95. data/ApiDemos/res/drawable-ldpi/logo120dpi.png +0 -0
  96. data/ApiDemos/res/drawable-ldpi/npatch120dpi.9.png +0 -0
  97. data/ApiDemos/res/drawable-ldpi/reslogo120dpi.png +0 -0
  98. data/ApiDemos/res/drawable-ldpi/smlnpatch120dpi.9.png +0 -0
  99. data/ApiDemos/res/drawable-ldpi/stylogo120dpi.png +0 -0
  100. data/ApiDemos/res/drawable-mdpi/alert_dialog_icon.png +0 -0
  101. data/ApiDemos/res/drawable-mdpi/apidemo_androidlogo.png +0 -0
  102. data/ApiDemos/res/drawable-mdpi/app_sample_code.png +0 -0
  103. data/ApiDemos/res/drawable-mdpi/arrow_down_float.png +0 -0
  104. data/ApiDemos/res/drawable-mdpi/arrow_up_float.png +0 -0
  105. data/ApiDemos/res/drawable-mdpi/btn_check_off.png +0 -0
  106. data/ApiDemos/res/drawable-mdpi/btn_check_on.png +0 -0
  107. data/ApiDemos/res/drawable-mdpi/btn_circle_normal.png +0 -0
  108. data/ApiDemos/res/drawable-mdpi/btn_default_normal.9.png +0 -0
  109. data/ApiDemos/res/drawable-mdpi/button.9.png +0 -0
  110. data/ApiDemos/res/drawable-mdpi/ic_contact_picture.png +0 -0
  111. data/ApiDemos/res/drawable-mdpi/ic_launcher_settings.png +0 -0
  112. data/ApiDemos/res/drawable-mdpi/ic_popup_reminder.png +0 -0
  113. data/ApiDemos/res/drawable-mdpi/ic_settings_applications.png +0 -0
  114. data/ApiDemos/res/drawable-mdpi/ic_settings_display.png +0 -0
  115. data/ApiDemos/res/drawable-mdpi/icon48x48_2.png +0 -0
  116. data/ApiDemos/res/drawable-mdpi/progress_circular_background.png +0 -0
  117. data/ApiDemos/res/drawable-mdpi/progress_particle.png +0 -0
  118. data/ApiDemos/res/drawable-mdpi/scrollbar_state2.png +0 -0
  119. data/ApiDemos/res/drawable-mdpi/star_big_on.png +0 -0
  120. data/ApiDemos/res/drawable-mdpi/stat_happy.png +0 -0
  121. data/ApiDemos/res/drawable-mdpi/stat_neutral.png +0 -0
  122. data/ApiDemos/res/drawable-mdpi/stat_sad.png +0 -0
  123. data/ApiDemos/res/drawable-mdpi/stat_sample.png +0 -0
  124. data/ApiDemos/res/drawable-nodpi/frantic.jpg +0 -0
  125. data/ApiDemos/res/drawable-nodpi/logonodpi120.png +0 -0
  126. data/ApiDemos/res/drawable-nodpi/logonodpi160.png +0 -0
  127. data/ApiDemos/res/drawable-nodpi/logonodpi240.png +0 -0
  128. data/ApiDemos/res/drawable-xhdpi/ic_launcher_settings.png +0 -0
  129. data/ApiDemos/res/drawable/animated_gif.gif +0 -0
  130. data/ApiDemos/res/drawable/balloons.jpg +0 -0
  131. data/ApiDemos/res/drawable/beach.jpg +0 -0
  132. data/ApiDemos/res/drawable/black_box.xml +0 -21
  133. data/ApiDemos/res/drawable/black_opaque_box.xml +0 -21
  134. data/ApiDemos/res/drawable/box.xml +0 -24
  135. data/ApiDemos/res/drawable/circular_progress.xml +0 -29
  136. data/ApiDemos/res/drawable/filled_box.xml +0 -25
  137. data/ApiDemos/res/drawable/frog.gif +0 -0
  138. data/ApiDemos/res/drawable/gallery_background_1.xml +0 -20
  139. data/ApiDemos/res/drawable/gallery_photo_1.jpg +0 -0
  140. data/ApiDemos/res/drawable/gallery_photo_2.jpg +0 -0
  141. data/ApiDemos/res/drawable/gallery_photo_3.jpg +0 -0
  142. data/ApiDemos/res/drawable/gallery_photo_4.jpg +0 -0
  143. data/ApiDemos/res/drawable/gallery_photo_5.jpg +0 -0
  144. data/ApiDemos/res/drawable/gallery_photo_6.jpg +0 -0
  145. data/ApiDemos/res/drawable/gallery_photo_7.jpg +0 -0
  146. data/ApiDemos/res/drawable/gallery_photo_8.jpg +0 -0
  147. data/ApiDemos/res/drawable/hover_background.xml +0 -20
  148. data/ApiDemos/res/drawable/hover_background_active.xml +0 -23
  149. data/ApiDemos/res/drawable/hover_background_inactive.xml +0 -23
  150. data/ApiDemos/res/drawable/icon48x48_1.png +0 -0
  151. data/ApiDemos/res/drawable/line.xml +0 -21
  152. data/ApiDemos/res/drawable/logo160dpi.png +0 -0
  153. data/ApiDemos/res/drawable/magnifying_glass.png +0 -0
  154. data/ApiDemos/res/drawable/npatch160dpi.9.png +0 -0
  155. data/ApiDemos/res/drawable/photo1.jpg +0 -0
  156. data/ApiDemos/res/drawable/photo2.jpg +0 -0
  157. data/ApiDemos/res/drawable/photo3.jpg +0 -0
  158. data/ApiDemos/res/drawable/photo4.jpg +0 -0
  159. data/ApiDemos/res/drawable/photo5.jpg +0 -0
  160. data/ApiDemos/res/drawable/photo6.jpg +0 -0
  161. data/ApiDemos/res/drawable/picture_frame.png +0 -0
  162. data/ApiDemos/res/drawable/reslogo160dpi.png +0 -0
  163. data/ApiDemos/res/drawable/sample_0.jpg +0 -0
  164. data/ApiDemos/res/drawable/sample_1.jpg +0 -0
  165. data/ApiDemos/res/drawable/sample_2.jpg +0 -0
  166. data/ApiDemos/res/drawable/sample_3.jpg +0 -0
  167. data/ApiDemos/res/drawable/sample_4.jpg +0 -0
  168. data/ApiDemos/res/drawable/sample_5.jpg +0 -0
  169. data/ApiDemos/res/drawable/sample_6.jpg +0 -0
  170. data/ApiDemos/res/drawable/sample_7.jpg +0 -0
  171. data/ApiDemos/res/drawable/sample_thumb_0.jpg +0 -0
  172. data/ApiDemos/res/drawable/sample_thumb_1.jpg +0 -0
  173. data/ApiDemos/res/drawable/sample_thumb_2.jpg +0 -0
  174. data/ApiDemos/res/drawable/sample_thumb_3.jpg +0 -0
  175. data/ApiDemos/res/drawable/sample_thumb_4.jpg +0 -0
  176. data/ApiDemos/res/drawable/sample_thumb_5.jpg +0 -0
  177. data/ApiDemos/res/drawable/sample_thumb_6.jpg +0 -0
  178. data/ApiDemos/res/drawable/sample_thumb_7.jpg +0 -0
  179. data/ApiDemos/res/drawable/scrollbar_vertical_thumb.xml +0 -21
  180. data/ApiDemos/res/drawable/scrollbar_vertical_track.xml +0 -21
  181. data/ApiDemos/res/drawable/shape_1.xml +0 -22
  182. data/ApiDemos/res/drawable/shape_2.xml +0 -24
  183. data/ApiDemos/res/drawable/shape_3.xml +0 -24
  184. data/ApiDemos/res/drawable/shape_4.xml +0 -20
  185. data/ApiDemos/res/drawable/shape_5.xml +0 -23
  186. data/ApiDemos/res/drawable/smlnpatch160dpi.9.png +0 -0
  187. data/ApiDemos/res/drawable/stylogo160dpi.png +0 -0
  188. data/ApiDemos/res/layout-h550dp/resources_height.xml +0 -53
  189. data/ApiDemos/res/layout-h670dp/resources_height.xml +0 -63
  190. data/ApiDemos/res/layout-h974dp/resources_height.xml +0 -83
  191. data/ApiDemos/res/layout-land/fragment_arguments.xml +0 -57
  192. data/ApiDemos/res/layout-land/fragment_layout.xml +0 -34
  193. data/ApiDemos/res/layout-sw480dp/resources_smallest_width_inner.xml +0 -43
  194. data/ApiDemos/res/layout-sw480dp/resources_smallest_width_row.xml +0 -43
  195. data/ApiDemos/res/layout-sw600dp/resources_smallest_width_inner.xml +0 -53
  196. data/ApiDemos/res/layout-sw600dp/resources_smallest_width_row.xml +0 -53
  197. data/ApiDemos/res/layout-sw720dp/resources_smallest_width_inner.xml +0 -63
  198. data/ApiDemos/res/layout-sw720dp/resources_smallest_width_row.xml +0 -63
  199. data/ApiDemos/res/layout-w1024dp/resources_width.xml +0 -83
  200. data/ApiDemos/res/layout-w600dp/resources_width.xml +0 -53
  201. data/ApiDemos/res/layout-w720dp/resources_width.xml +0 -63
  202. data/ApiDemos/res/layout/accessibility_service.xml +0 -36
  203. data/ApiDemos/res/layout/action_bar_display_options.xml +0 -48
  204. data/ApiDemos/res/layout/action_bar_display_options_custom.xml +0 -17
  205. data/ApiDemos/res/layout/action_bar_settings_action_provider.xml +0 -34
  206. data/ApiDemos/res/layout/action_bar_tab_content.xml +0 -19
  207. data/ApiDemos/res/layout/action_bar_tabs.xml +0 -49
  208. data/ApiDemos/res/layout/activity_animation.xml +0 -42
  209. data/ApiDemos/res/layout/activity_recreate.xml +0 -37
  210. data/ApiDemos/res/layout/alarm_controller.xml +0 -45
  211. data/ApiDemos/res/layout/alarm_service.xml +0 -41
  212. data/ApiDemos/res/layout/alert_dialog.xml +0 -60
  213. data/ApiDemos/res/layout/alert_dialog_text_entry.xml +0 -67
  214. data/ApiDemos/res/layout/animation_1.xml +0 -44
  215. data/ApiDemos/res/layout/animation_2.xml +0 -67
  216. data/ApiDemos/res/layout/animation_3.xml +0 -44
  217. data/ApiDemos/res/layout/animation_cloning.xml +0 -28
  218. data/ApiDemos/res/layout/animation_custom_evaluator.xml +0 -28
  219. data/ApiDemos/res/layout/animation_loading.xml +0 -28
  220. data/ApiDemos/res/layout/animation_multi_property.xml +0 -28
  221. data/ApiDemos/res/layout/animation_reversing.xml +0 -40
  222. data/ApiDemos/res/layout/animation_seeking.xml +0 -40
  223. data/ApiDemos/res/layout/animations_main_screen.xml +0 -36
  224. data/ApiDemos/res/layout/animator_custom_evaluator.xml +0 -34
  225. data/ApiDemos/res/layout/animator_events.xml +0 -122
  226. data/ApiDemos/res/layout/appwidget_configure.xml +0 -42
  227. data/ApiDemos/res/layout/appwidget_provider.xml +0 -24
  228. data/ApiDemos/res/layout/autocomplete_1.xml +0 -48
  229. data/ApiDemos/res/layout/autocomplete_2.xml +0 -44
  230. data/ApiDemos/res/layout/autocomplete_3.xml +0 -165
  231. data/ApiDemos/res/layout/autocomplete_4.xml +0 -49
  232. data/ApiDemos/res/layout/autocomplete_5.xml +0 -45
  233. data/ApiDemos/res/layout/autocomplete_6.xml +0 -48
  234. data/ApiDemos/res/layout/baseline_1.xml +0 -40
  235. data/ApiDemos/res/layout/baseline_2.xml +0 -43
  236. data/ApiDemos/res/layout/baseline_3.xml +0 -56
  237. data/ApiDemos/res/layout/baseline_4.xml +0 -55
  238. data/ApiDemos/res/layout/baseline_6.xml +0 -34
  239. data/ApiDemos/res/layout/baseline_7.xml +0 -36
  240. data/ApiDemos/res/layout/baseline_nested_1.xml +0 -85
  241. data/ApiDemos/res/layout/baseline_nested_2.xml +0 -85
  242. data/ApiDemos/res/layout/baseline_nested_3.xml +0 -96
  243. data/ApiDemos/res/layout/bouncing_balls.xml +0 -22
  244. data/ApiDemos/res/layout/buttons_1.xml +0 -53
  245. data/ApiDemos/res/layout/chronometer.xml +0 -64
  246. data/ApiDemos/res/layout/clipboard.xml +0 -107
  247. data/ApiDemos/res/layout/contacts_filter.xml +0 -37
  248. data/ApiDemos/res/layout/controls_1.xml +0 -154
  249. data/ApiDemos/res/layout/custom_dialog_activity.xml +0 -24
  250. data/ApiDemos/res/layout/custom_title.xml +0 -57
  251. data/ApiDemos/res/layout/custom_title_1.xml +0 -33
  252. data/ApiDemos/res/layout/custom_view_1.xml +0 -44
  253. data/ApiDemos/res/layout/custom_view_accessibility.xml +0 -44
  254. data/ApiDemos/res/layout/date_widgets_example_1.xml +0 -40
  255. data/ApiDemos/res/layout/date_widgets_example_2.xml +0 -33
  256. data/ApiDemos/res/layout/density_image_views.xml +0 -37
  257. data/ApiDemos/res/layout/density_styled_image_views.xml +0 -26
  258. data/ApiDemos/res/layout/dialog_activity.xml +0 -53
  259. data/ApiDemos/res/layout/drag_layout.xml +0 -93
  260. data/ApiDemos/res/layout/external_storage.xml +0 -27
  261. data/ApiDemos/res/layout/external_storage_item.xml +0 -58
  262. data/ApiDemos/res/layout/focus_1.xml +0 -42
  263. data/ApiDemos/res/layout/focus_2.xml +0 -41
  264. data/ApiDemos/res/layout/focus_3.xml +0 -64
  265. data/ApiDemos/res/layout/focus_5.xml +0 -60
  266. data/ApiDemos/res/layout/foreground_dispatch.xml +0 -23
  267. data/ApiDemos/res/layout/foreground_service_controller.xml +0 -49
  268. data/ApiDemos/res/layout/forward_target.xml +0 -30
  269. data/ApiDemos/res/layout/forwarding.xml +0 -37
  270. data/ApiDemos/res/layout/fragment_arguments.xml +0 -54
  271. data/ApiDemos/res/layout/fragment_context_menu.xml +0 -38
  272. data/ApiDemos/res/layout/fragment_dialog.xml +0 -40
  273. data/ApiDemos/res/layout/fragment_dialog_or_activity.xml +0 -64
  274. data/ApiDemos/res/layout/fragment_hide_show.xml +0 -57
  275. data/ApiDemos/res/layout/fragment_layout.xml +0 -27
  276. data/ApiDemos/res/layout/fragment_menu.xml +0 -46
  277. data/ApiDemos/res/layout/fragment_pager_support.xml +0 -44
  278. data/ApiDemos/res/layout/fragment_pager_support_list.xml +0 -52
  279. data/ApiDemos/res/layout/fragment_retain_instance.xml +0 -46
  280. data/ApiDemos/res/layout/fragment_stack.xml +0 -38
  281. data/ApiDemos/res/layout/gallery_1.xml +0 -32
  282. data/ApiDemos/res/layout/gallery_2.xml +0 -38
  283. data/ApiDemos/res/layout/game_controller_input.xml +0 -52
  284. data/ApiDemos/res/layout/game_controller_input_heading.xml +0 -21
  285. data/ApiDemos/res/layout/game_controller_input_text_column.xml +0 -34
  286. data/ApiDemos/res/layout/google_login.xml +0 -60
  287. data/ApiDemos/res/layout/grid_1.xml +0 -29
  288. data/ApiDemos/res/layout/grid_2.xml +0 -30
  289. data/ApiDemos/res/layout/grid_layout_1.xml +0 -87
  290. data/ApiDemos/res/layout/hello_world.xml +0 -26
  291. data/ApiDemos/res/layout/horizontal_scroll_view1.xml +0 -26
  292. data/ApiDemos/res/layout/hover.xml +0 -64
  293. data/ApiDemos/res/layout/image_button_1.xml +0 -36
  294. data/ApiDemos/res/layout/image_switcher_1.xml +0 -40
  295. data/ApiDemos/res/layout/image_view_1.xml +0 -144
  296. data/ApiDemos/res/layout/incoming_message.xml +0 -50
  297. data/ApiDemos/res/layout/incoming_message_info.xml +0 -38
  298. data/ApiDemos/res/layout/incoming_message_interstitial.xml +0 -37
  299. data/ApiDemos/res/layout/incoming_message_panel.xml +0 -42
  300. data/ApiDemos/res/layout/incoming_message_view.xml +0 -80
  301. data/ApiDemos/res/layout/install_apk.xml +0 -56
  302. data/ApiDemos/res/layout/intent_activity_flags.xml +0 -43
  303. data/ApiDemos/res/layout/intents.xml +0 -37
  304. data/ApiDemos/res/layout/labeled_text_edit.xml +0 -38
  305. data/ApiDemos/res/layout/launcher_shortcuts.xml +0 -40
  306. data/ApiDemos/res/layout/layout_animation_1.xml +0 -30
  307. data/ApiDemos/res/layout/layout_animation_3.xml +0 -21
  308. data/ApiDemos/res/layout/layout_animation_4.xml +0 -30
  309. data/ApiDemos/res/layout/layout_animation_5.xml +0 -30
  310. data/ApiDemos/res/layout/layout_animation_6.xml +0 -29
  311. data/ApiDemos/res/layout/layout_animation_7.xml +0 -57
  312. data/ApiDemos/res/layout/layout_animations.xml +0 -80
  313. data/ApiDemos/res/layout/layout_animations_by_default.xml +0 -34
  314. data/ApiDemos/res/layout/layout_animations_hideshow.xml +0 -52
  315. data/ApiDemos/res/layout/linear_layout_1.xml +0 -46
  316. data/ApiDemos/res/layout/linear_layout_10.xml +0 -122
  317. data/ApiDemos/res/layout/linear_layout_2.xml +0 -47
  318. data/ApiDemos/res/layout/linear_layout_3.xml +0 -51
  319. data/ApiDemos/res/layout/linear_layout_4.xml +0 -50
  320. data/ApiDemos/res/layout/linear_layout_5.xml +0 -76
  321. data/ApiDemos/res/layout/linear_layout_6.xml +0 -53
  322. data/ApiDemos/res/layout/linear_layout_7.xml +0 -54
  323. data/ApiDemos/res/layout/linear_layout_8.xml +0 -53
  324. data/ApiDemos/res/layout/linear_layout_9.xml +0 -38
  325. data/ApiDemos/res/layout/link.xml +0 -68
  326. data/ApiDemos/res/layout/list_12.xml +0 -35
  327. data/ApiDemos/res/layout/list_13.xml +0 -34
  328. data/ApiDemos/res/layout/list_7.xml +0 -35
  329. data/ApiDemos/res/layout/list_8.xml +0 -61
  330. data/ApiDemos/res/layout/list_item_checkbox.xml +0 -22
  331. data/ApiDemos/res/layout/list_item_icon_text.xml +0 -32
  332. data/ApiDemos/res/layout/list_position.xml +0 -25
  333. data/ApiDemos/res/layout/local_sample.xml +0 -37
  334. data/ApiDemos/res/layout/local_service_binding.xml +0 -42
  335. data/ApiDemos/res/layout/local_service_controller.xml +0 -42
  336. data/ApiDemos/res/layout/log_text_box_1.xml +0 -42
  337. data/ApiDemos/res/layout/mapview.xml +0 -31
  338. data/ApiDemos/res/layout/marquee.xml +0 -46
  339. data/ApiDemos/res/layout/mediaplayer_1.xml +0 -31
  340. data/ApiDemos/res/layout/mediaplayer_2.xml +0 -13
  341. data/ApiDemos/res/layout/messenger_service_binding.xml +0 -47
  342. data/ApiDemos/res/layout/morse_code.xml +0 -37
  343. data/ApiDemos/res/layout/notify_with_text.xml +0 -34
  344. data/ApiDemos/res/layout/notifying_controller.xml +0 -41
  345. data/ApiDemos/res/layout/overscan.xml +0 -79
  346. data/ApiDemos/res/layout/pick_contact.xml +0 -48
  347. data/ApiDemos/res/layout/popup_menu_1.xml +0 -25
  348. data/ApiDemos/res/layout/preference_widget_mypreference.xml +0 -25
  349. data/ApiDemos/res/layout/progressbar_1.xml +0 -74
  350. data/ApiDemos/res/layout/progressbar_2.xml +0 -41
  351. data/ApiDemos/res/layout/progressbar_3.xml +0 -32
  352. data/ApiDemos/res/layout/progressbar_4.xml +0 -27
  353. data/ApiDemos/res/layout/quick_contacts.xml +0 -47
  354. data/ApiDemos/res/layout/radio_group_1.xml +0 -49
  355. data/ApiDemos/res/layout/ratingbar_1.xml +0 -60
  356. data/ApiDemos/res/layout/read_asset.xml +0 -29
  357. data/ApiDemos/res/layout/receive_result.xml +0 -50
  358. data/ApiDemos/res/layout/redirect_enter.xml +0 -36
  359. data/ApiDemos/res/layout/redirect_getter.xml +0 -42
  360. data/ApiDemos/res/layout/redirect_main.xml +0 -47
  361. data/ApiDemos/res/layout/relative_layout_1.xml +0 -54
  362. data/ApiDemos/res/layout/relative_layout_2.xml +0 -78
  363. data/ApiDemos/res/layout/remote_binding_options.xml +0 -82
  364. data/ApiDemos/res/layout/remote_service_binding.xml +0 -52
  365. data/ApiDemos/res/layout/remote_service_controller.xml +0 -42
  366. data/ApiDemos/res/layout/reorder_four.xml +0 -38
  367. data/ApiDemos/res/layout/reorder_on_launch.xml +0 -38
  368. data/ApiDemos/res/layout/reorder_three.xml +0 -38
  369. data/ApiDemos/res/layout/reorder_two.xml +0 -38
  370. data/ApiDemos/res/layout/resources.xml +0 -55
  371. data/ApiDemos/res/layout/resources_height.xml +0 -33
  372. data/ApiDemos/res/layout/resources_layout_reference.xml +0 -35
  373. data/ApiDemos/res/layout/resources_layout_reference_tablet.xml +0 -35
  374. data/ApiDemos/res/layout/resources_smallest_width.xml +0 -35
  375. data/ApiDemos/res/layout/resources_smallest_width_inner.xml +0 -33
  376. data/ApiDemos/res/layout/resources_smallest_width_row.xml +0 -33
  377. data/ApiDemos/res/layout/resources_width.xml +0 -33
  378. data/ApiDemos/res/layout/resources_width_and_height.xml +0 -35
  379. data/ApiDemos/res/layout/rotating_list.xml +0 -37
  380. data/ApiDemos/res/layout/rotating_view.xml +0 -160
  381. data/ApiDemos/res/layout/save_restore_state.xml +0 -58
  382. data/ApiDemos/res/layout/screen_orientation.xml +0 -37
  383. data/ApiDemos/res/layout/scroll_view_1.xml +0 -90
  384. data/ApiDemos/res/layout/scroll_view_2.xml +0 -41
  385. data/ApiDemos/res/layout/scrollbar1.xml +0 -169
  386. data/ApiDemos/res/layout/scrollbar2.xml +0 -172
  387. data/ApiDemos/res/layout/scrollbar3.xml +0 -136
  388. data/ApiDemos/res/layout/search_invoke.xml +0 -96
  389. data/ApiDemos/res/layout/search_query_results.xml +0 -76
  390. data/ApiDemos/res/layout/search_view.xml +0 -19
  391. data/ApiDemos/res/layout/searchview_actionbar.xml +0 -28
  392. data/ApiDemos/res/layout/searchview_filter.xml +0 -31
  393. data/ApiDemos/res/layout/secure_view.xml +0 -112
  394. data/ApiDemos/res/layout/secure_view_overlay.xml +0 -50
  395. data/ApiDemos/res/layout/seekbar_1.xml +0 -36
  396. data/ApiDemos/res/layout/select_dialog.xml +0 -29
  397. data/ApiDemos/res/layout/send_result.xml +0 -45
  398. data/ApiDemos/res/layout/service_start_arguments_controller.xml +0 -57
  399. data/ApiDemos/res/layout/shape_drawable_1.xml +0 -73
  400. data/ApiDemos/res/layout/simple_list_item_checkable_1.xml +0 -29
  401. data/ApiDemos/res/layout/sms_demo.xml +0 -67
  402. data/ApiDemos/res/layout/soft_input_modes.xml +0 -64
  403. data/ApiDemos/res/layout/spinner_1.xml +0 -51
  404. data/ApiDemos/res/layout/split_touch_view.xml +0 -42
  405. data/ApiDemos/res/layout/status_bar_balloon.xml +0 -32
  406. data/ApiDemos/res/layout/status_bar_notifications.xml +0 -157
  407. data/ApiDemos/res/layout/styled_text.xml +0 -52
  408. data/ApiDemos/res/layout/surface_view_overlay.xml +0 -84
  409. data/ApiDemos/res/layout/switches.xml +0 -82
  410. data/ApiDemos/res/layout/table_layout_1.xml +0 -56
  411. data/ApiDemos/res/layout/table_layout_10.xml +0 -58
  412. data/ApiDemos/res/layout/table_layout_11.xml +0 -93
  413. data/ApiDemos/res/layout/table_layout_12.xml +0 -85
  414. data/ApiDemos/res/layout/table_layout_2.xml +0 -40
  415. data/ApiDemos/res/layout/table_layout_3.xml +0 -62
  416. data/ApiDemos/res/layout/table_layout_4.xml +0 -42
  417. data/ApiDemos/res/layout/table_layout_5.xml +0 -82
  418. data/ApiDemos/res/layout/table_layout_6.xml +0 -92
  419. data/ApiDemos/res/layout/table_layout_7.xml +0 -106
  420. data/ApiDemos/res/layout/table_layout_8.xml +0 -87
  421. data/ApiDemos/res/layout/table_layout_9.xml +0 -92
  422. data/ApiDemos/res/layout/tabs1.xml +0 -39
  423. data/ApiDemos/res/layout/tabs_right_gravity.xml +0 -37
  424. data/ApiDemos/res/layout/tabs_scroll.xml +0 -41
  425. data/ApiDemos/res/layout/tasklist_main.xml +0 -47
  426. data/ApiDemos/res/layout/tasklist_row.xml +0 -38
  427. data/ApiDemos/res/layout/text_switcher_1.xml +0 -31
  428. data/ApiDemos/res/layout/text_to_speech.xml +0 -26
  429. data/ApiDemos/res/layout/translucent_background.xml +0 -24
  430. data/ApiDemos/res/layout/videoview.xml +0 -14
  431. data/ApiDemos/res/layout/visibility_1.xml +0 -71
  432. data/ApiDemos/res/layout/voice_recognition.xml +0 -61
  433. data/ApiDemos/res/layout/wallpaper_2.xml +0 -27
  434. data/ApiDemos/res/layout/webview_1.xml +0 -79
  435. data/ApiDemos/res/menu/action_bar_settings_action_provider.xml +0 -28
  436. data/ApiDemos/res/menu/action_bar_share_action_provider.xml +0 -28
  437. data/ApiDemos/res/menu/actions.xml +0 -48
  438. data/ApiDemos/res/menu/camera_menu.xml +0 -5
  439. data/ApiDemos/res/menu/category_order.xml +0 -57
  440. data/ApiDemos/res/menu/checkable.xml +0 -91
  441. data/ApiDemos/res/menu/disabled.xml +0 -55
  442. data/ApiDemos/res/menu/display_options_actions.xml +0 -19
  443. data/ApiDemos/res/menu/groups.xml +0 -45
  444. data/ApiDemos/res/menu/list_select_menu.xml +0 -22
  445. data/ApiDemos/res/menu/order.xml +0 -38
  446. data/ApiDemos/res/menu/popup.xml +0 -32
  447. data/ApiDemos/res/menu/searchview_in_menu.xml +0 -22
  448. data/ApiDemos/res/menu/shortcuts.xml +0 -60
  449. data/ApiDemos/res/menu/submenu.xml +0 -44
  450. data/ApiDemos/res/menu/title_icon.xml +0 -31
  451. data/ApiDemos/res/menu/title_only.xml +0 -25
  452. data/ApiDemos/res/menu/visible.xml +0 -37
  453. data/ApiDemos/res/raw/androids.pkm +0 -0
  454. data/ApiDemos/res/raw/robot.png +0 -0
  455. data/ApiDemos/res/raw/skycubemap0.jpg +0 -0
  456. data/ApiDemos/res/raw/skycubemap1.jpg +0 -0
  457. data/ApiDemos/res/raw/skycubemap2.jpg +0 -0
  458. data/ApiDemos/res/raw/skycubemap3.jpg +0 -0
  459. data/ApiDemos/res/raw/skycubemap4.jpg +0 -0
  460. data/ApiDemos/res/raw/skycubemap5.jpg +0 -0
  461. data/ApiDemos/res/raw/sound_ringer_normal.ogg +0 -0
  462. data/ApiDemos/res/raw/sound_ringer_silent.ogg +0 -0
  463. data/ApiDemos/res/raw/sound_ringer_vibrate.ogg +0 -0
  464. data/ApiDemos/res/raw/sound_screen_off.ogg +0 -0
  465. data/ApiDemos/res/raw/sound_screen_on.ogg +0 -0
  466. data/ApiDemos/res/raw/sound_view_clicked.ogg +0 -0
  467. data/ApiDemos/res/raw/sound_view_focused_or_selected.ogg +0 -0
  468. data/ApiDemos/res/raw/sound_view_hover_enter.ogg +0 -0
  469. data/ApiDemos/res/raw/sound_window_state_changed.ogg +0 -0
  470. data/ApiDemos/res/raw/test_cbr.mp3 +0 -0
  471. data/ApiDemos/res/values-hdpi/strings.xml +0 -19
  472. data/ApiDemos/res/values-ldpi/strings.xml +0 -19
  473. data/ApiDemos/res/values-mdpi/strings.xml +0 -19
  474. data/ApiDemos/res/values-sw600dp/layout.xml +0 -22
  475. data/ApiDemos/res/values-v11/bools.xml +0 -20
  476. data/ApiDemos/res/values-v11/styles.xml +0 -29
  477. data/ApiDemos/res/values-v13/bools.xml +0 -20
  478. data/ApiDemos/res/values-v14/bools.xml +0 -20
  479. data/ApiDemos/res/values-xhdpi/strings.xml +0 -19
  480. data/ApiDemos/res/values-xlarge/layout.xml +0 -22
  481. data/ApiDemos/res/values/arrays.xml +0 -149
  482. data/ApiDemos/res/values/attrs.xml +0 -55
  483. data/ApiDemos/res/values/bools.xml +0 -32
  484. data/ApiDemos/res/values/colors.xml +0 -32
  485. data/ApiDemos/res/values/ids.xml +0 -19
  486. data/ApiDemos/res/values/strings.xml +0 -1343
  487. data/ApiDemos/res/values/styles.xml +0 -124
  488. data/ApiDemos/res/xml/advanced_preferences.xml +0 -38
  489. data/ApiDemos/res/xml/appwidget_provider.xml +0 -28
  490. data/ApiDemos/res/xml/default_values.xml +0 -44
  491. data/ApiDemos/res/xml/device_admin_encryption.xml +0 -34
  492. data/ApiDemos/res/xml/device_admin_expiration.xml +0 -53
  493. data/ApiDemos/res/xml/device_admin_general.xml +0 -40
  494. data/ApiDemos/res/xml/device_admin_headers.xml +0 -41
  495. data/ApiDemos/res/xml/device_admin_lock_wipe.xml +0 -50
  496. data/ApiDemos/res/xml/device_admin_quality.xml +0 -79
  497. data/ApiDemos/res/xml/device_admin_sample.xml +0 -30
  498. data/ApiDemos/res/xml/filter_nfc.xml +0 -28
  499. data/ApiDemos/res/xml/fragmented_preferences.xml +0 -97
  500. data/ApiDemos/res/xml/fragmented_preferences_inner.xml +0 -26
  501. data/ApiDemos/res/xml/preference_dependencies.xml +0 -35
  502. data/ApiDemos/res/xml/preference_headers.xml +0 -44
  503. data/ApiDemos/res/xml/preference_switch +0 -46
  504. data/ApiDemos/res/xml/preferences.xml +0 -101
  505. data/ApiDemos/res/xml/searchable.xml +0 -30
  506. data/ApiDemos/res/xml/taskbackconfig.xml +0 -24
  507. data/ApiDemos/src/com/example/android/apis/ApiDemos.java +0 -149
  508. data/ApiDemos/src/com/example/android/apis/ApiDemosApplication.java +0 -36
  509. data/ApiDemos/src/com/example/android/apis/Shakespeare.java +0 -223
  510. data/ApiDemos/src/com/example/android/apis/accessibility/ClockBackActivity.java +0 -54
  511. data/ApiDemos/src/com/example/android/apis/accessibility/ClockBackService.java +0 -575
  512. data/ApiDemos/src/com/example/android/apis/accessibility/CustomViewAccessibilityActivity.java +0 -280
  513. data/ApiDemos/src/com/example/android/apis/accessibility/TaskBackService.java +0 -190
  514. data/ApiDemos/src/com/example/android/apis/accessibility/TaskListActivity.java +0 -58
  515. data/ApiDemos/src/com/example/android/apis/accessibility/TaskListView.java +0 -115
  516. data/ApiDemos/src/com/example/android/apis/animation/AnimationCloning.java +0 -148
  517. data/ApiDemos/src/com/example/android/apis/animation/AnimationLoading.java +0 -165
  518. data/ApiDemos/src/com/example/android/apis/animation/AnimationSeeking.java +0 -173
  519. data/ApiDemos/src/com/example/android/apis/animation/AnimatorEvents.java +0 -237
  520. data/ApiDemos/src/com/example/android/apis/animation/BouncingBalls.java +0 -184
  521. data/ApiDemos/src/com/example/android/apis/animation/CustomEvaluator.java +0 -174
  522. data/ApiDemos/src/com/example/android/apis/animation/FixedGridLayout.java +0 -108
  523. data/ApiDemos/src/com/example/android/apis/animation/LayoutAnimations.java +0 -210
  524. data/ApiDemos/src/com/example/android/apis/animation/LayoutAnimationsByDefault.java +0 -61
  525. data/ApiDemos/src/com/example/android/apis/animation/LayoutAnimationsHideShow.java +0 -178
  526. data/ApiDemos/src/com/example/android/apis/animation/ListFlipper.java +0 -126
  527. data/ApiDemos/src/com/example/android/apis/animation/MultiPropertyAnimation.java +0 -178
  528. data/ApiDemos/src/com/example/android/apis/animation/ReversingAnimation.java +0 -135
  529. data/ApiDemos/src/com/example/android/apis/animation/Rotate3dAnimation.java +0 -92
  530. data/ApiDemos/src/com/example/android/apis/animation/ShapeHolder.java +0 -100
  531. data/ApiDemos/src/com/example/android/apis/animation/Transition3d.java +0 -175
  532. data/ApiDemos/src/com/example/android/apis/app/ActionBarDisplayOptions.java +0 -124
  533. data/ApiDemos/src/com/example/android/apis/app/ActionBarMechanics.java +0 -73
  534. data/ApiDemos/src/com/example/android/apis/app/ActionBarSettingsActionProviderActivity.java +0 -111
  535. data/ApiDemos/src/com/example/android/apis/app/ActionBarShareActionProviderActivity.java +0 -125
  536. data/ApiDemos/src/com/example/android/apis/app/ActionBarTabs.java +0 -131
  537. data/ApiDemos/src/com/example/android/apis/app/ActionBarUsage.java +0 -93
  538. data/ApiDemos/src/com/example/android/apis/app/ActivityRecreate.java +0 -73
  539. data/ApiDemos/src/com/example/android/apis/app/AlarmController.java +0 -168
  540. data/ApiDemos/src/com/example/android/apis/app/AlarmService.java +0 -89
  541. data/ApiDemos/src/com/example/android/apis/app/AlarmService_Service.java +0 -131
  542. data/ApiDemos/src/com/example/android/apis/app/AlertDialogSamples.java +0 -423
  543. data/ApiDemos/src/com/example/android/apis/app/Animation.java +0 -74
  544. data/ApiDemos/src/com/example/android/apis/app/AppUpdateReceiver.java +0 -34
  545. data/ApiDemos/src/com/example/android/apis/app/ContactsFilter.java +0 -53
  546. data/ApiDemos/src/com/example/android/apis/app/ContactsFilterInstrumentation.java +0 -73
  547. data/ApiDemos/src/com/example/android/apis/app/ContactsSelectInstrumentation.java +0 -86
  548. data/ApiDemos/src/com/example/android/apis/app/CustomDialogActivity.java +0 -48
  549. data/ApiDemos/src/com/example/android/apis/app/CustomTitle.java +0 -85
  550. data/ApiDemos/src/com/example/android/apis/app/DeviceAdminSample.java +0 -934
  551. data/ApiDemos/src/com/example/android/apis/app/DialogActivity.java +0 -86
  552. data/ApiDemos/src/com/example/android/apis/app/ForegroundService.java +0 -240
  553. data/ApiDemos/src/com/example/android/apis/app/ForwardTarget.java +0 -41
  554. data/ApiDemos/src/com/example/android/apis/app/Forwarding.java +0 -85
  555. data/ApiDemos/src/com/example/android/apis/app/FragmentAlertDialog.java +0 -109
  556. data/ApiDemos/src/com/example/android/apis/app/FragmentArguments.java +0 -108
  557. data/ApiDemos/src/com/example/android/apis/app/FragmentContextMenu.java +0 -77
  558. data/ApiDemos/src/com/example/android/apis/app/FragmentCustomAnimations.java +0 -131
  559. data/ApiDemos/src/com/example/android/apis/app/FragmentDialog.java +0 -168
  560. data/ApiDemos/src/com/example/android/apis/app/FragmentDialogOrActivity.java +0 -82
  561. data/ApiDemos/src/com/example/android/apis/app/FragmentHideShow.java +0 -113
  562. data/ApiDemos/src/com/example/android/apis/app/FragmentLayout.java +0 -220
  563. data/ApiDemos/src/com/example/android/apis/app/FragmentListArray.java +0 -60
  564. data/ApiDemos/src/com/example/android/apis/app/FragmentMenu.java +0 -132
  565. data/ApiDemos/src/com/example/android/apis/app/FragmentReceiveResult.java +0 -133
  566. data/ApiDemos/src/com/example/android/apis/app/FragmentRetainInstance.java +0 -232
  567. data/ApiDemos/src/com/example/android/apis/app/FragmentStack.java +0 -124
  568. data/ApiDemos/src/com/example/android/apis/app/FragmentTabs.java +0 -118
  569. data/ApiDemos/src/com/example/android/apis/app/HelloWorld.java +0 -66
  570. data/ApiDemos/src/com/example/android/apis/app/IRemoteService.aidl +0 -37
  571. data/ApiDemos/src/com/example/android/apis/app/IRemoteServiceCallback.aidl +0 -29
  572. data/ApiDemos/src/com/example/android/apis/app/ISecondary.aidl +0 -36
  573. data/ApiDemos/src/com/example/android/apis/app/IncomingMessage.java +0 -197
  574. data/ApiDemos/src/com/example/android/apis/app/IncomingMessageInterstitial.java +0 -64
  575. data/ApiDemos/src/com/example/android/apis/app/IncomingMessageView.java +0 -59
  576. data/ApiDemos/src/com/example/android/apis/app/IntentActivityFlags.java +0 -86
  577. data/ApiDemos/src/com/example/android/apis/app/Intents.java +0 -47
  578. data/ApiDemos/src/com/example/android/apis/app/LauncherShortcuts.java +0 -141
  579. data/ApiDemos/src/com/example/android/apis/app/LoaderCursor.java +0 -177
  580. data/ApiDemos/src/com/example/android/apis/app/LoaderCustom.java +0 -481
  581. data/ApiDemos/src/com/example/android/apis/app/LoaderThrottle.java +0 -512
  582. data/ApiDemos/src/com/example/android/apis/app/LocalSample.java +0 -53
  583. data/ApiDemos/src/com/example/android/apis/app/LocalSampleInstrumentation.java +0 -92
  584. data/ApiDemos/src/com/example/android/apis/app/LocalService.java +0 -120
  585. data/ApiDemos/src/com/example/android/apis/app/LocalServiceActivities.java +0 -171
  586. data/ApiDemos/src/com/example/android/apis/app/MenuInflateFromXml.java +0 -174
  587. data/ApiDemos/src/com/example/android/apis/app/MessengerService.java +0 -169
  588. data/ApiDemos/src/com/example/android/apis/app/MessengerServiceActivities.java +0 -178
  589. data/ApiDemos/src/com/example/android/apis/app/NotificationDisplay.java +0 -82
  590. data/ApiDemos/src/com/example/android/apis/app/NotifyWithText.java +0 -80
  591. data/ApiDemos/src/com/example/android/apis/app/NotifyingController.java +0 -61
  592. data/ApiDemos/src/com/example/android/apis/app/NotifyingService.java +0 -128
  593. data/ApiDemos/src/com/example/android/apis/app/OneShotAlarm.java +0 -42
  594. data/ApiDemos/src/com/example/android/apis/app/PersistentState.java +0 -128
  595. data/ApiDemos/src/com/example/android/apis/app/QuickContactsDemo.java +0 -104
  596. data/ApiDemos/src/com/example/android/apis/app/ReceiveResult.java +0 -153
  597. data/ApiDemos/src/com/example/android/apis/app/RedirectEnter.java +0 -59
  598. data/ApiDemos/src/com/example/android/apis/app/RedirectGetter.java +0 -87
  599. data/ApiDemos/src/com/example/android/apis/app/RedirectMain.java +0 -122
  600. data/ApiDemos/src/com/example/android/apis/app/RemoteService.java +0 -652
  601. data/ApiDemos/src/com/example/android/apis/app/ReorderFour.java +0 -46
  602. data/ApiDemos/src/com/example/android/apis/app/ReorderOnLaunch.java +0 -44
  603. data/ApiDemos/src/com/example/android/apis/app/ReorderThree.java +0 -44
  604. data/ApiDemos/src/com/example/android/apis/app/ReorderTwo.java +0 -44
  605. data/ApiDemos/src/com/example/android/apis/app/RepeatingAlarm.java +0 -40
  606. data/ApiDemos/src/com/example/android/apis/app/SaveRestoreState.java +0 -98
  607. data/ApiDemos/src/com/example/android/apis/app/ScreenOrientation.java +0 -73
  608. data/ApiDemos/src/com/example/android/apis/app/SearchInvoke.java +0 -241
  609. data/ApiDemos/src/com/example/android/apis/app/SearchQueryResults.java +0 -118
  610. data/ApiDemos/src/com/example/android/apis/app/SearchSuggestionSampleProvider.java +0 -50
  611. data/ApiDemos/src/com/example/android/apis/app/SendResult.java +0 -81
  612. data/ApiDemos/src/com/example/android/apis/app/ServiceStartArguments.java +0 -272
  613. data/ApiDemos/src/com/example/android/apis/app/SetWallpaperActivity.java +0 -89
  614. data/ApiDemos/src/com/example/android/apis/app/SoftInputModes.java +0 -67
  615. data/ApiDemos/src/com/example/android/apis/app/StatusBarNotifications.java +0 -270
  616. data/ApiDemos/src/com/example/android/apis/app/TextToSpeechActivity.java +0 -136
  617. data/ApiDemos/src/com/example/android/apis/app/TranslucentActivity.java +0 -48
  618. data/ApiDemos/src/com/example/android/apis/app/TranslucentBlurActivity.java +0 -55
  619. data/ApiDemos/src/com/example/android/apis/app/VoiceRecognition.java +0 -226
  620. data/ApiDemos/src/com/example/android/apis/app/WallpaperActivity.java +0 -48
  621. data/ApiDemos/src/com/example/android/apis/appwidget/ExampleAppWidgetConfigure.java +0 -134
  622. data/ApiDemos/src/com/example/android/apis/appwidget/ExampleAppWidgetProvider.java +0 -122
  623. data/ApiDemos/src/com/example/android/apis/appwidget/ExampleBroadcastReceiver.java +0 -56
  624. data/ApiDemos/src/com/example/android/apis/content/ClipboardSample.java +0 -144
  625. data/ApiDemos/src/com/example/android/apis/content/ExternalStorage.java +0 -376
  626. data/ApiDemos/src/com/example/android/apis/content/FileProvider.java +0 -114
  627. data/ApiDemos/src/com/example/android/apis/content/InstallApk.java +0 -179
  628. data/ApiDemos/src/com/example/android/apis/content/PickContact.java +0 -114
  629. data/ApiDemos/src/com/example/android/apis/content/ReadAsset.java +0 -73
  630. data/ApiDemos/src/com/example/android/apis/content/ResourcesLayoutReference.java +0 -33
  631. data/ApiDemos/src/com/example/android/apis/content/ResourcesSample.java +0 -90
  632. data/ApiDemos/src/com/example/android/apis/content/ResourcesSmallestWidth.java +0 -33
  633. data/ApiDemos/src/com/example/android/apis/content/ResourcesWidthAndHeight.java +0 -33
  634. data/ApiDemos/src/com/example/android/apis/content/StyledText.java +0 -51
  635. data/ApiDemos/src/com/example/android/apis/graphics/AlphaBitmap.java +0 -91
  636. data/ApiDemos/src/com/example/android/apis/graphics/AnimateDrawable.java +0 -72
  637. data/ApiDemos/src/com/example/android/apis/graphics/AnimateDrawables.java +0 -67
  638. data/ApiDemos/src/com/example/android/apis/graphics/Arcs.java +0 -118
  639. data/ApiDemos/src/com/example/android/apis/graphics/BitmapDecode.java +0 -144
  640. data/ApiDemos/src/com/example/android/apis/graphics/BitmapMesh.java +0 -130
  641. data/ApiDemos/src/com/example/android/apis/graphics/BitmapPixels.java +0 -161
  642. data/ApiDemos/src/com/example/android/apis/graphics/CameraPreview.java +0 -311
  643. data/ApiDemos/src/com/example/android/apis/graphics/Clipping.java +0 -111
  644. data/ApiDemos/src/com/example/android/apis/graphics/ColorFilters.java +0 -180
  645. data/ApiDemos/src/com/example/android/apis/graphics/ColorMatrixSample.java +0 -122
  646. data/ApiDemos/src/com/example/android/apis/graphics/ColorPickerDialog.java +0 -233
  647. data/ApiDemos/src/com/example/android/apis/graphics/Compass.java +0 -130
  648. data/ApiDemos/src/com/example/android/apis/graphics/CompressedTextureActivity.java +0 -157
  649. data/ApiDemos/src/com/example/android/apis/graphics/CreateBitmap.java +0 -126
  650. data/ApiDemos/src/com/example/android/apis/graphics/Cube.java +0 -100
  651. data/ApiDemos/src/com/example/android/apis/graphics/CubeMapActivity.java +0 -416
  652. data/ApiDemos/src/com/example/android/apis/graphics/CubeRenderer.java +0 -108
  653. data/ApiDemos/src/com/example/android/apis/graphics/DensityActivity.java +0 -220
  654. data/ApiDemos/src/com/example/android/apis/graphics/DrawPoints.java +0 -79
  655. data/ApiDemos/src/com/example/android/apis/graphics/FingerPaint.java +0 -208
  656. data/ApiDemos/src/com/example/android/apis/graphics/FrameBufferObjectActivity.java +0 -282
  657. data/ApiDemos/src/com/example/android/apis/graphics/GLES20Activity.java +0 -72
  658. data/ApiDemos/src/com/example/android/apis/graphics/GLES20TriangleRenderer.java +0 -255
  659. data/ApiDemos/src/com/example/android/apis/graphics/GLSurfaceViewActivity.java +0 -56
  660. data/ApiDemos/src/com/example/android/apis/graphics/GradientDrawable1.java +0 -31
  661. data/ApiDemos/src/com/example/android/apis/graphics/GraphicsActivity.java +0 -43
  662. data/ApiDemos/src/com/example/android/apis/graphics/Layers.java +0 -65
  663. data/ApiDemos/src/com/example/android/apis/graphics/MatrixPaletteActivity.java +0 -52
  664. data/ApiDemos/src/com/example/android/apis/graphics/MatrixPaletteRenderer.java +0 -408
  665. data/ApiDemos/src/com/example/android/apis/graphics/MeasureText.java +0 -112
  666. data/ApiDemos/src/com/example/android/apis/graphics/PathEffects.java +0 -121
  667. data/ApiDemos/src/com/example/android/apis/graphics/PathFillTypes.java +0 -77
  668. data/ApiDemos/src/com/example/android/apis/graphics/Patterns.java +0 -125
  669. data/ApiDemos/src/com/example/android/apis/graphics/PictureLayout.java +0 -161
  670. data/ApiDemos/src/com/example/android/apis/graphics/Pictures.java +0 -81
  671. data/ApiDemos/src/com/example/android/apis/graphics/PolyToPoly.java +0 -107
  672. data/ApiDemos/src/com/example/android/apis/graphics/ProxyDrawable.java +0 -102
  673. data/ApiDemos/src/com/example/android/apis/graphics/PurgeableBitmap.java +0 -118
  674. data/ApiDemos/src/com/example/android/apis/graphics/PurgeableBitmapView.java +0 -116
  675. data/ApiDemos/src/com/example/android/apis/graphics/Regions.java +0 -126
  676. data/ApiDemos/src/com/example/android/apis/graphics/RoundRects.java +0 -113
  677. data/ApiDemos/src/com/example/android/apis/graphics/ScaleToFit.java +0 -121
  678. data/ApiDemos/src/com/example/android/apis/graphics/SensorTest.java +0 -213
  679. data/ApiDemos/src/com/example/android/apis/graphics/ShapeDrawable1.java +0 -136
  680. data/ApiDemos/src/com/example/android/apis/graphics/StaticTriangleRenderer.java +0 -274
  681. data/ApiDemos/src/com/example/android/apis/graphics/SurfaceViewOverlay.java +0 -116
  682. data/ApiDemos/src/com/example/android/apis/graphics/Sweep.java +0 -97
  683. data/ApiDemos/src/com/example/android/apis/graphics/TextAlign.java +0 -161
  684. data/ApiDemos/src/com/example/android/apis/graphics/TouchPaint.java +0 -528
  685. data/ApiDemos/src/com/example/android/apis/graphics/TouchRotateActivity.java +0 -184
  686. data/ApiDemos/src/com/example/android/apis/graphics/TranslucentGLSurfaceViewActivity.java +0 -63
  687. data/ApiDemos/src/com/example/android/apis/graphics/TriangleActivity.java +0 -49
  688. data/ApiDemos/src/com/example/android/apis/graphics/TriangleRenderer.java +0 -241
  689. data/ApiDemos/src/com/example/android/apis/graphics/Typefaces.java +0 -55
  690. data/ApiDemos/src/com/example/android/apis/graphics/UnicodeChart.java +0 -119
  691. data/ApiDemos/src/com/example/android/apis/graphics/Vertices.java +0 -103
  692. data/ApiDemos/src/com/example/android/apis/graphics/WindowSurface.java +0 -271
  693. data/ApiDemos/src/com/example/android/apis/graphics/Xfermodes.java +0 -171
  694. data/ApiDemos/src/com/example/android/apis/graphics/kube/Cube.java +0 -57
  695. data/ApiDemos/src/com/example/android/apis/graphics/kube/GLColor.java +0 -51
  696. data/ApiDemos/src/com/example/android/apis/graphics/kube/GLFace.java +0 -94
  697. data/ApiDemos/src/com/example/android/apis/graphics/kube/GLShape.java +0 -102
  698. data/ApiDemos/src/com/example/android/apis/graphics/kube/GLVertex.java +0 -89
  699. data/ApiDemos/src/com/example/android/apis/graphics/kube/GLWorld.java +0 -98
  700. data/ApiDemos/src/com/example/android/apis/graphics/kube/Kube.java +0 -342
  701. data/ApiDemos/src/com/example/android/apis/graphics/kube/KubeRenderer.java +0 -116
  702. data/ApiDemos/src/com/example/android/apis/graphics/kube/Layer.java +0 -101
  703. data/ApiDemos/src/com/example/android/apis/graphics/kube/M4.java +0 -80
  704. data/ApiDemos/src/com/example/android/apis/graphics/spritetext/Grid.java +0 -140
  705. data/ApiDemos/src/com/example/android/apis/graphics/spritetext/LabelMaker.java +0 -411
  706. data/ApiDemos/src/com/example/android/apis/graphics/spritetext/MatrixGrabber.java +0 -63
  707. data/ApiDemos/src/com/example/android/apis/graphics/spritetext/MatrixStack.java +0 -179
  708. data/ApiDemos/src/com/example/android/apis/graphics/spritetext/MatrixTrackingGL.java +0 -1086
  709. data/ApiDemos/src/com/example/android/apis/graphics/spritetext/NumericSprite.java +0 -99
  710. data/ApiDemos/src/com/example/android/apis/graphics/spritetext/Projector.java +0 -84
  711. data/ApiDemos/src/com/example/android/apis/graphics/spritetext/SpriteTextActivity.java +0 -52
  712. data/ApiDemos/src/com/example/android/apis/graphics/spritetext/SpriteTextRenderer.java +0 -354
  713. data/ApiDemos/src/com/example/android/apis/media/AudioFxDemo.java +0 -252
  714. data/ApiDemos/src/com/example/android/apis/media/MediaPlayerDemo.java +0 -102
  715. data/ApiDemos/src/com/example/android/apis/media/MediaPlayerDemo_Audio.java +0 -102
  716. data/ApiDemos/src/com/example/android/apis/media/MediaPlayerDemo_Video.java +0 -219
  717. data/ApiDemos/src/com/example/android/apis/media/VideoViewDemo.java +0 -61
  718. data/ApiDemos/src/com/example/android/apis/nfc/ForegroundDispatch.java +0 -93
  719. data/ApiDemos/src/com/example/android/apis/nfc/ForegroundNdefPush.java +0 -86
  720. data/ApiDemos/src/com/example/android/apis/nfc/TechFilter.java +0 -51
  721. data/ApiDemos/src/com/example/android/apis/os/MorseCode.java +0 -93
  722. data/ApiDemos/src/com/example/android/apis/os/MorseCodeConverter.java +0 -141
  723. data/ApiDemos/src/com/example/android/apis/os/RotationVectorDemo.java +0 -216
  724. data/ApiDemos/src/com/example/android/apis/os/Sensors.java +0 -241
  725. data/ApiDemos/src/com/example/android/apis/os/SmsMessageReceiver.java +0 -78
  726. data/ApiDemos/src/com/example/android/apis/os/SmsMessagingDemo.java +0 -159
  727. data/ApiDemos/src/com/example/android/apis/os/SmsReceivedDialog.java +0 -115
  728. data/ApiDemos/src/com/example/android/apis/preference/AdvancedPreferences.java +0 -94
  729. data/ApiDemos/src/com/example/android/apis/preference/DefaultValues.java +0 -61
  730. data/ApiDemos/src/com/example/android/apis/preference/FragmentPreferences.java +0 -52
  731. data/ApiDemos/src/com/example/android/apis/preference/LaunchingPreferences.java +0 -100
  732. data/ApiDemos/src/com/example/android/apis/preference/MyPreference.java +0 -171
  733. data/ApiDemos/src/com/example/android/apis/preference/PreferenceDependencies.java +0 -33
  734. data/ApiDemos/src/com/example/android/apis/preference/PreferenceWithHeaders.java +0 -108
  735. data/ApiDemos/src/com/example/android/apis/preference/PreferencesFromCode.java +0 -151
  736. data/ApiDemos/src/com/example/android/apis/preference/PreferencesFromXml.java +0 -34
  737. data/ApiDemos/src/com/example/android/apis/preference/SwitchPreference.java +0 -38
  738. data/ApiDemos/src/com/example/android/apis/text/Link.java +0 -84
  739. data/ApiDemos/src/com/example/android/apis/text/LogTextBox.java +0 -64
  740. data/ApiDemos/src/com/example/android/apis/text/LogTextBox1.java +0 -50
  741. data/ApiDemos/src/com/example/android/apis/text/Marquee.java +0 -31
  742. data/ApiDemos/src/com/example/android/apis/view/Animation1.java +0 -45
  743. data/ApiDemos/src/com/example/android/apis/view/Animation2.java +0 -90
  744. data/ApiDemos/src/com/example/android/apis/view/Animation3.java +0 -101
  745. data/ApiDemos/src/com/example/android/apis/view/AutoComplete1.java +0 -82
  746. data/ApiDemos/src/com/example/android/apis/view/AutoComplete2.java +0 -41
  747. data/ApiDemos/src/com/example/android/apis/view/AutoComplete3.java +0 -43
  748. data/ApiDemos/src/com/example/android/apis/view/AutoComplete4.java +0 -103
  749. data/ApiDemos/src/com/example/android/apis/view/AutoComplete5.java +0 -44
  750. data/ApiDemos/src/com/example/android/apis/view/AutoComplete6.java +0 -83
  751. data/ApiDemos/src/com/example/android/apis/view/Baseline1.java +0 -35
  752. data/ApiDemos/src/com/example/android/apis/view/Baseline2.java +0 -35
  753. data/ApiDemos/src/com/example/android/apis/view/Baseline3.java +0 -36
  754. data/ApiDemos/src/com/example/android/apis/view/Baseline4.java +0 -35
  755. data/ApiDemos/src/com/example/android/apis/view/Baseline6.java +0 -35
  756. data/ApiDemos/src/com/example/android/apis/view/Baseline7.java +0 -35
  757. data/ApiDemos/src/com/example/android/apis/view/BaselineNested1.java +0 -36
  758. data/ApiDemos/src/com/example/android/apis/view/BaselineNested2.java +0 -36
  759. data/ApiDemos/src/com/example/android/apis/view/BaselineNested3.java +0 -36
  760. data/ApiDemos/src/com/example/android/apis/view/Buttons1.java +0 -36
  761. data/ApiDemos/src/com/example/android/apis/view/CheckableFrameLayout.java +0 -49
  762. data/ApiDemos/src/com/example/android/apis/view/Cheeses.java +0 -155
  763. data/ApiDemos/src/com/example/android/apis/view/ChronometerDemo.java +0 -90
  764. data/ApiDemos/src/com/example/android/apis/view/Controls1.java +0 -54
  765. data/ApiDemos/src/com/example/android/apis/view/Controls2.java +0 -19
  766. data/ApiDemos/src/com/example/android/apis/view/Controls3.java +0 -19
  767. data/ApiDemos/src/com/example/android/apis/view/Controls4.java +0 -19
  768. data/ApiDemos/src/com/example/android/apis/view/Controls5.java +0 -19
  769. data/ApiDemos/src/com/example/android/apis/view/Controls6.java +0 -19
  770. data/ApiDemos/src/com/example/android/apis/view/CustomView1.java +0 -40
  771. data/ApiDemos/src/com/example/android/apis/view/DateWidgets1.java +0 -156
  772. data/ApiDemos/src/com/example/android/apis/view/DateWidgets2.java +0 -68
  773. data/ApiDemos/src/com/example/android/apis/view/DragAndDropDemo.java +0 -72
  774. data/ApiDemos/src/com/example/android/apis/view/DraggableDot.java +0 -261
  775. data/ApiDemos/src/com/example/android/apis/view/ExpandableList1.java +0 -160
  776. data/ApiDemos/src/com/example/android/apis/view/ExpandableList2.java +0 -138
  777. data/ApiDemos/src/com/example/android/apis/view/ExpandableList3.java +0 -76
  778. data/ApiDemos/src/com/example/android/apis/view/Focus1.java +0 -47
  779. data/ApiDemos/src/com/example/android/apis/view/Focus2.java +0 -32
  780. data/ApiDemos/src/com/example/android/apis/view/Focus3.java +0 -45
  781. data/ApiDemos/src/com/example/android/apis/view/Focus5.java +0 -31
  782. data/ApiDemos/src/com/example/android/apis/view/Gallery1.java +0 -139
  783. data/ApiDemos/src/com/example/android/apis/view/Gallery2.java +0 -61
  784. data/ApiDemos/src/com/example/android/apis/view/GameControllerInput.java +0 -460
  785. data/ApiDemos/src/com/example/android/apis/view/GameView.java +0 -747
  786. data/ApiDemos/src/com/example/android/apis/view/Grid1.java +0 -95
  787. data/ApiDemos/src/com/example/android/apis/view/Grid2.java +0 -166
  788. data/ApiDemos/src/com/example/android/apis/view/Grid3.java +0 -164
  789. data/ApiDemos/src/com/example/android/apis/view/GridLayout0.java +0 -113
  790. data/ApiDemos/src/com/example/android/apis/view/GridLayout1.java +0 -32
  791. data/ApiDemos/src/com/example/android/apis/view/HorizontalScrollView1.java +0 -33
  792. data/ApiDemos/src/com/example/android/apis/view/Hover.java +0 -96
  793. data/ApiDemos/src/com/example/android/apis/view/HoverInterceptorView.java +0 -71
  794. data/ApiDemos/src/com/example/android/apis/view/ImageButton1.java +0 -33
  795. data/ApiDemos/src/com/example/android/apis/view/ImageSwitcher1.java +0 -120
  796. data/ApiDemos/src/com/example/android/apis/view/ImageView1.java +0 -36
  797. data/ApiDemos/src/com/example/android/apis/view/InternalSelectionFocus.java +0 -74
  798. data/ApiDemos/src/com/example/android/apis/view/InternalSelectionScroll.java +0 -64
  799. data/ApiDemos/src/com/example/android/apis/view/InternalSelectionView.java +0 -272
  800. data/ApiDemos/src/com/example/android/apis/view/LabelView.java +0 -194
  801. data/ApiDemos/src/com/example/android/apis/view/LayoutAnimation1.java +0 -81
  802. data/ApiDemos/src/com/example/android/apis/view/LayoutAnimation2.java +0 -64
  803. data/ApiDemos/src/com/example/android/apis/view/LayoutAnimation3.java +0 -44
  804. data/ApiDemos/src/com/example/android/apis/view/LayoutAnimation4.java +0 -81
  805. data/ApiDemos/src/com/example/android/apis/view/LayoutAnimation5.java +0 -81
  806. data/ApiDemos/src/com/example/android/apis/view/LayoutAnimation6.java +0 -81
  807. data/ApiDemos/src/com/example/android/apis/view/LayoutAnimation7.java +0 -31
  808. data/ApiDemos/src/com/example/android/apis/view/LinearLayout1.java +0 -37
  809. data/ApiDemos/src/com/example/android/apis/view/LinearLayout10.java +0 -37
  810. data/ApiDemos/src/com/example/android/apis/view/LinearLayout2.java +0 -37
  811. data/ApiDemos/src/com/example/android/apis/view/LinearLayout3.java +0 -37
  812. data/ApiDemos/src/com/example/android/apis/view/LinearLayout4.java +0 -38
  813. data/ApiDemos/src/com/example/android/apis/view/LinearLayout5.java +0 -38
  814. data/ApiDemos/src/com/example/android/apis/view/LinearLayout6.java +0 -38
  815. data/ApiDemos/src/com/example/android/apis/view/LinearLayout7.java +0 -38
  816. data/ApiDemos/src/com/example/android/apis/view/LinearLayout8.java +0 -106
  817. data/ApiDemos/src/com/example/android/apis/view/LinearLayout9.java +0 -41
  818. data/ApiDemos/src/com/example/android/apis/view/List1.java +0 -42
  819. data/ApiDemos/src/com/example/android/apis/view/List10.java +0 -49
  820. data/ApiDemos/src/com/example/android/apis/view/List11.java +0 -49
  821. data/ApiDemos/src/com/example/android/apis/view/List12.java +0 -83
  822. data/ApiDemos/src/com/example/android/apis/view/List13.java +0 -341
  823. data/ApiDemos/src/com/example/android/apis/view/List14.java +0 -141
  824. data/ApiDemos/src/com/example/android/apis/view/List15.java +0 -104
  825. data/ApiDemos/src/com/example/android/apis/view/List16.java +0 -100
  826. data/ApiDemos/src/com/example/android/apis/view/List17.java +0 -57
  827. data/ApiDemos/src/com/example/android/apis/view/List2.java +0 -57
  828. data/ApiDemos/src/com/example/android/apis/view/List3.java +0 -84
  829. data/ApiDemos/src/com/example/android/apis/view/List4.java +0 -154
  830. data/ApiDemos/src/com/example/android/apis/view/List5.java +0 -118
  831. data/ApiDemos/src/com/example/android/apis/view/List6.java +0 -410
  832. data/ApiDemos/src/com/example/android/apis/view/List7.java +0 -99
  833. data/ApiDemos/src/com/example/android/apis/view/List8.java +0 -133
  834. data/ApiDemos/src/com/example/android/apis/view/List9.java +0 -144
  835. data/ApiDemos/src/com/example/android/apis/view/OverscanActivity.java +0 -184
  836. data/ApiDemos/src/com/example/android/apis/view/PopupMenu1.java +0 -53
  837. data/ApiDemos/src/com/example/android/apis/view/ProgressBar1.java +0 -84
  838. data/ApiDemos/src/com/example/android/apis/view/ProgressBar2.java +0 -44
  839. data/ApiDemos/src/com/example/android/apis/view/ProgressBar3.java +0 -84
  840. data/ApiDemos/src/com/example/android/apis/view/ProgressBar4.java +0 -51
  841. data/ApiDemos/src/com/example/android/apis/view/RadioGroup1.java +0 -74
  842. data/ApiDemos/src/com/example/android/apis/view/RatingBar1.java +0 -74
  843. data/ApiDemos/src/com/example/android/apis/view/RelativeLayout1.java +0 -37
  844. data/ApiDemos/src/com/example/android/apis/view/RelativeLayout2.java +0 -38
  845. data/ApiDemos/src/com/example/android/apis/view/RotatingButton.java +0 -152
  846. data/ApiDemos/src/com/example/android/apis/view/ScrollBar1.java +0 -32
  847. data/ApiDemos/src/com/example/android/apis/view/ScrollBar2.java +0 -32
  848. data/ApiDemos/src/com/example/android/apis/view/ScrollBar3.java +0 -35
  849. data/ApiDemos/src/com/example/android/apis/view/ScrollView1.java +0 -37
  850. data/ApiDemos/src/com/example/android/apis/view/ScrollView2.java +0 -52
  851. data/ApiDemos/src/com/example/android/apis/view/SearchViewActionBar.java +0 -115
  852. data/ApiDemos/src/com/example/android/apis/view/SearchViewAlwaysVisible.java +0 -46
  853. data/ApiDemos/src/com/example/android/apis/view/SearchViewFilterMode.java +0 -78
  854. data/ApiDemos/src/com/example/android/apis/view/SecureView.java +0 -144
  855. data/ApiDemos/src/com/example/android/apis/view/SecureViewOverlay.java +0 -74
  856. data/ApiDemos/src/com/example/android/apis/view/SeekBar1.java +0 -60
  857. data/ApiDemos/src/com/example/android/apis/view/Spinner1.java +0 -78
  858. data/ApiDemos/src/com/example/android/apis/view/SplitTouchView.java +0 -66
  859. data/ApiDemos/src/com/example/android/apis/view/Switches.java +0 -47
  860. data/ApiDemos/src/com/example/android/apis/view/TableLayout1.java +0 -32
  861. data/ApiDemos/src/com/example/android/apis/view/TableLayout10.java +0 -31
  862. data/ApiDemos/src/com/example/android/apis/view/TableLayout11.java +0 -34
  863. data/ApiDemos/src/com/example/android/apis/view/TableLayout12.java +0 -34
  864. data/ApiDemos/src/com/example/android/apis/view/TableLayout2.java +0 -32
  865. data/ApiDemos/src/com/example/android/apis/view/TableLayout3.java +0 -32
  866. data/ApiDemos/src/com/example/android/apis/view/TableLayout4.java +0 -32
  867. data/ApiDemos/src/com/example/android/apis/view/TableLayout5.java +0 -32
  868. data/ApiDemos/src/com/example/android/apis/view/TableLayout6.java +0 -32
  869. data/ApiDemos/src/com/example/android/apis/view/TableLayout7.java +0 -80
  870. data/ApiDemos/src/com/example/android/apis/view/TableLayout8.java +0 -71
  871. data/ApiDemos/src/com/example/android/apis/view/TableLayout9.java +0 -48
  872. data/ApiDemos/src/com/example/android/apis/view/Tabs1.java +0 -50
  873. data/ApiDemos/src/com/example/android/apis/view/Tabs2.java +0 -57
  874. data/ApiDemos/src/com/example/android/apis/view/Tabs3.java +0 -50
  875. data/ApiDemos/src/com/example/android/apis/view/Tabs4.java +0 -23
  876. data/ApiDemos/src/com/example/android/apis/view/Tabs5.java +0 -54
  877. data/ApiDemos/src/com/example/android/apis/view/Tabs6.java +0 -55
  878. data/ApiDemos/src/com/example/android/apis/view/TextSwitcher1.java +0 -79
  879. data/ApiDemos/src/com/example/android/apis/view/Visibility1.java +0 -74
  880. data/ApiDemos/src/com/example/android/apis/view/WebView1.java +0 -71
  881. data/ApiDemos/tests/AndroidManifest.xml +0 -37
  882. data/ApiDemos/tests/ant.properties +0 -18
  883. data/ApiDemos/tests/build.xml +0 -83
  884. data/ApiDemos/tests/local.properties +0 -10
  885. data/ApiDemos/tests/proguard-project.txt +0 -20
  886. data/ApiDemos/tests/project.properties +0 -14
  887. data/ApiDemos/tests/src/com/example/android/apis/AllTests.java +0 -53
  888. data/ApiDemos/tests/src/com/example/android/apis/ApiDemosApplicationTests.java +0 -62
  889. data/ApiDemos/tests/src/com/example/android/apis/ApiDemosTest.java +0 -40
  890. data/ApiDemos/tests/src/com/example/android/apis/app/ForwardingTest.java +0 -129
  891. data/ApiDemos/tests/src/com/example/android/apis/app/LocalServiceTest.java +0 -80
  892. data/ApiDemos/tests/src/com/example/android/apis/os/MorseCodeConverterTest.java +0 -54
  893. data/ApiDemos/tests/src/com/example/android/apis/view/Focus2ActivityTest.java +0 -111
  894. data/ApiDemos/tests/src/com/example/android/apis/view/Focus2AndroidTest.java +0 -113
  895. data/ChangeLog +0 -16
  896. data/Gemfile +0 -12
  897. data/Guardfile +0 -17
  898. data/LICENSE +0 -22
  899. data/README.md +0 -72
  900. data/Rakefile +0 -24
  901. data/cucumber.yml +0 -14
  902. data/features/step_definitions/calabash_steps.rb +0 -1
  903. data/features/support/app_installation_hooks.rb +0 -23
  904. data/features/support/app_life_cycle_hooks.rb +0 -11
  905. data/gametel.gemspec +0 -23
  906. data/irb_android.sh +0 -2
  907. data/lib/gametel/platforms/calabash.rb +0 -155
@@ -1,282 +0,0 @@
1
- /*
2
- * Copyright (C) 2007 The Android Open Source Project
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
-
17
- package com.example.android.apis.graphics;
18
-
19
- import javax.microedition.khronos.egl.EGLConfig;
20
- import javax.microedition.khronos.opengles.GL;
21
- import javax.microedition.khronos.opengles.GL10;
22
- import javax.microedition.khronos.opengles.GL11ExtensionPack;
23
-
24
- import android.app.Activity;
25
- import android.opengl.GLSurfaceView;
26
- import android.opengl.GLU;
27
- import android.os.Bundle;
28
- import android.os.SystemClock;
29
-
30
- /**
31
- * Demonstrate the Frame Buffer Object OpenGL ES extension.
32
- * <p>
33
- * This sample renders a scene into an offscreen frame buffer, and then
34
- * uses the resulting image as a texture to render an onscreen scene.
35
- */
36
- public class FrameBufferObjectActivity extends Activity {
37
- private GLSurfaceView mGLSurfaceView;
38
-
39
- private class Renderer implements GLSurfaceView.Renderer {
40
- private boolean mContextSupportsFrameBufferObject;
41
- private int mTargetTexture;
42
- private int mFramebuffer;
43
- private int mFramebufferWidth = 256;
44
- private int mFramebufferHeight = 256;
45
- private int mSurfaceWidth;
46
- private int mSurfaceHeight;
47
-
48
- private Triangle mTriangle;
49
- private Cube mCube;
50
- private float mAngle;
51
- /**
52
- * Setting this to true will change the behavior of this sample. It
53
- * will suppress the normally onscreen rendering, and it will cause the
54
- * rendering that would normally be done to the offscreen FBO
55
- * be rendered onscreen instead. This can be helpful in debugging the
56
- * rendering algorithm.
57
- */
58
- private static final boolean DEBUG_RENDER_OFFSCREEN_ONSCREEN = false;
59
-
60
- public void onDrawFrame(GL10 gl) {
61
- checkGLError(gl);
62
- if (mContextSupportsFrameBufferObject) {
63
- GL11ExtensionPack gl11ep = (GL11ExtensionPack) gl;
64
- if (DEBUG_RENDER_OFFSCREEN_ONSCREEN) {
65
- drawOffscreenImage(gl, mSurfaceWidth, mSurfaceHeight);
66
- } else {
67
- gl11ep.glBindFramebufferOES(GL11ExtensionPack.GL_FRAMEBUFFER_OES, mFramebuffer);
68
- drawOffscreenImage(gl, mFramebufferWidth, mFramebufferHeight);
69
- gl11ep.glBindFramebufferOES(GL11ExtensionPack.GL_FRAMEBUFFER_OES, 0);
70
- drawOnscreen(gl, mSurfaceWidth, mSurfaceHeight);
71
- }
72
- } else {
73
- // Current context doesn't support frame buffer objects.
74
- // Indicate this by drawing a red background.
75
- gl.glClearColor(1,0,0,0);
76
- gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
77
- }
78
- }
79
-
80
- public void onSurfaceChanged(GL10 gl, int width, int height) {
81
- checkGLError(gl);
82
- mSurfaceWidth = width;
83
- mSurfaceHeight = height;
84
- gl.glViewport(0, 0, width, height);
85
- }
86
-
87
- public void onSurfaceCreated(GL10 gl, EGLConfig config) {
88
- mContextSupportsFrameBufferObject = checkIfContextSupportsFrameBufferObject(gl);
89
- if (mContextSupportsFrameBufferObject) {
90
- mTargetTexture = createTargetTexture(gl, mFramebufferWidth, mFramebufferHeight);
91
- mFramebuffer = createFrameBuffer(gl, mFramebufferWidth, mFramebufferHeight, mTargetTexture);
92
-
93
- mCube = new Cube();
94
- mTriangle = new Triangle();
95
- }
96
- }
97
-
98
- private void drawOnscreen(GL10 gl, int width, int height) {
99
- gl.glViewport(0, 0, width, height);
100
- float ratio = (float) width / height;
101
- gl.glMatrixMode(GL10.GL_PROJECTION);
102
- gl.glLoadIdentity();
103
- gl.glFrustumf(-ratio, ratio, -1, 1, 3, 7);
104
-
105
- gl.glClearColor(0,0,1,0);
106
- gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
107
- gl.glBindTexture(GL10.GL_TEXTURE_2D, mTargetTexture);
108
-
109
- gl.glTexEnvf(GL10.GL_TEXTURE_ENV, GL10.GL_TEXTURE_ENV_MODE,
110
- GL10.GL_REPLACE);
111
-
112
- gl.glMatrixMode(GL10.GL_MODELVIEW);
113
- gl.glLoadIdentity();
114
-
115
- GLU.gluLookAt(gl, 0, 0, -5, 0f, 0f, 0f, 0f, 1.0f, 0.0f);
116
-
117
- gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);
118
- gl.glEnableClientState(GL10.GL_TEXTURE_COORD_ARRAY);
119
-
120
- gl.glActiveTexture(GL10.GL_TEXTURE0);
121
-
122
- long time = SystemClock.uptimeMillis() % 4000L;
123
- float angle = 0.090f * ((int) time);
124
-
125
- gl.glRotatef(angle, 0, 0, 1.0f);
126
-
127
- mTriangle.draw(gl);
128
-
129
- // Restore default state so the other renderer is not affected.
130
-
131
- gl.glBindTexture(GL10.GL_TEXTURE_2D, 0);
132
- gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);
133
- gl.glDisableClientState(GL10.GL_TEXTURE_COORD_ARRAY);
134
- }
135
-
136
- private void drawOffscreenImage(GL10 gl, int width, int height) {
137
- gl.glViewport(0, 0, width, height);
138
- float ratio = (float) width / height;
139
- gl.glMatrixMode(GL10.GL_PROJECTION);
140
- gl.glLoadIdentity();
141
- gl.glFrustumf(-ratio, ratio, -1, 1, 1, 10);
142
-
143
- gl.glEnable(GL10.GL_CULL_FACE);
144
- gl.glEnable(GL10.GL_DEPTH_TEST);
145
-
146
- gl.glClearColor(0,0.5f,1,0);
147
- gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
148
- gl.glMatrixMode(GL10.GL_MODELVIEW);
149
- gl.glLoadIdentity();
150
- gl.glTranslatef(0, 0, -3.0f);
151
- gl.glRotatef(mAngle, 0, 1, 0);
152
- gl.glRotatef(mAngle*0.25f, 1, 0, 0);
153
-
154
- gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);
155
- gl.glEnableClientState(GL10.GL_COLOR_ARRAY);
156
-
157
- mCube.draw(gl);
158
-
159
- gl.glRotatef(mAngle*2.0f, 0, 1, 1);
160
- gl.glTranslatef(0.5f, 0.5f, 0.5f);
161
-
162
- mCube.draw(gl);
163
-
164
- mAngle += 1.2f;
165
-
166
- // Restore default state so the other renderer is not affected.
167
-
168
- gl.glDisable(GL10.GL_CULL_FACE);
169
- gl.glDisable(GL10.GL_DEPTH_TEST);
170
- gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);
171
- gl.glDisableClientState(GL10.GL_COLOR_ARRAY);
172
- }
173
-
174
- private int createTargetTexture(GL10 gl, int width, int height) {
175
- int texture;
176
- int[] textures = new int[1];
177
- gl.glGenTextures(1, textures, 0);
178
- texture = textures[0];
179
- gl.glBindTexture(GL10.GL_TEXTURE_2D, texture);
180
- gl.glTexImage2D(GL10.GL_TEXTURE_2D, 0, GL10.GL_RGBA, width, height, 0,
181
- GL10.GL_RGBA, GL10.GL_UNSIGNED_BYTE, null);
182
- gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER,
183
- GL10.GL_NEAREST);
184
- gl.glTexParameterf(GL10.GL_TEXTURE_2D,
185
- GL10.GL_TEXTURE_MAG_FILTER,
186
- GL10.GL_LINEAR);
187
- gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S,
188
- GL10.GL_REPEAT);
189
- gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T,
190
- GL10.GL_REPEAT);
191
- ; return texture;
192
- }
193
-
194
- private int createFrameBuffer(GL10 gl, int width, int height, int targetTextureId) {
195
- GL11ExtensionPack gl11ep = (GL11ExtensionPack) gl;
196
- int framebuffer;
197
- int[] framebuffers = new int[1];
198
- gl11ep.glGenFramebuffersOES(1, framebuffers, 0);
199
- framebuffer = framebuffers[0];
200
- gl11ep.glBindFramebufferOES(GL11ExtensionPack.GL_FRAMEBUFFER_OES, framebuffer);
201
-
202
- int depthbuffer;
203
- int[] renderbuffers = new int[1];
204
- gl11ep.glGenRenderbuffersOES(1, renderbuffers, 0);
205
- depthbuffer = renderbuffers[0];
206
-
207
- gl11ep.glBindRenderbufferOES(GL11ExtensionPack.GL_RENDERBUFFER_OES, depthbuffer);
208
- gl11ep.glRenderbufferStorageOES(GL11ExtensionPack.GL_RENDERBUFFER_OES,
209
- GL11ExtensionPack.GL_DEPTH_COMPONENT16, width, height);
210
- gl11ep.glFramebufferRenderbufferOES(GL11ExtensionPack.GL_FRAMEBUFFER_OES,
211
- GL11ExtensionPack.GL_DEPTH_ATTACHMENT_OES,
212
- GL11ExtensionPack.GL_RENDERBUFFER_OES, depthbuffer);
213
-
214
- gl11ep.glFramebufferTexture2DOES(GL11ExtensionPack.GL_FRAMEBUFFER_OES,
215
- GL11ExtensionPack.GL_COLOR_ATTACHMENT0_OES, GL10.GL_TEXTURE_2D,
216
- targetTextureId, 0);
217
- int status = gl11ep.glCheckFramebufferStatusOES(GL11ExtensionPack.GL_FRAMEBUFFER_OES);
218
- if (status != GL11ExtensionPack.GL_FRAMEBUFFER_COMPLETE_OES) {
219
- throw new RuntimeException("Framebuffer is not complete: " +
220
- Integer.toHexString(status));
221
- }
222
- gl11ep.glBindFramebufferOES(GL11ExtensionPack.GL_FRAMEBUFFER_OES, 0);
223
- return framebuffer;
224
- }
225
-
226
- private boolean checkIfContextSupportsFrameBufferObject(GL10 gl) {
227
- return checkIfContextSupportsExtension(gl, "GL_OES_framebuffer_object");
228
- }
229
-
230
- /**
231
- * This is not the fastest way to check for an extension, but fine if
232
- * we are only checking for a few extensions each time a context is created.
233
- * @param gl
234
- * @param extension
235
- * @return true if the extension is present in the current context.
236
- */
237
- private boolean checkIfContextSupportsExtension(GL10 gl, String extension) {
238
- String extensions = " " + gl.glGetString(GL10.GL_EXTENSIONS) + " ";
239
- // The extensions string is padded with spaces between extensions, but not
240
- // necessarily at the beginning or end. For simplicity, add spaces at the
241
- // beginning and end of the extensions string and the extension string.
242
- // This means we can avoid special-case checks for the first or last
243
- // extension, as well as avoid special-case checks when an extension name
244
- // is the same as the first part of another extension name.
245
- return extensions.indexOf(" " + extension + " ") >= 0;
246
- }
247
- }
248
-
249
- static void checkGLError(GL gl) {
250
- int error = ((GL10) gl).glGetError();
251
- if (error != GL10.GL_NO_ERROR) {
252
- throw new RuntimeException("GLError 0x" + Integer.toHexString(error));
253
- }
254
- }
255
-
256
- @Override
257
- protected void onCreate(Bundle savedInstanceState) {
258
- super.onCreate(savedInstanceState);
259
-
260
- // Create our surface view and set it as the content of our
261
- // Activity
262
- mGLSurfaceView = new GLSurfaceView(this);
263
- mGLSurfaceView.setRenderer(new Renderer());
264
- setContentView(mGLSurfaceView);
265
- }
266
-
267
- @Override
268
- protected void onResume() {
269
- // Ideally a game should implement onResume() and onPause()
270
- // to take appropriate action when the activity looses focus
271
- super.onResume();
272
- mGLSurfaceView.onResume();
273
- }
274
-
275
- @Override
276
- protected void onPause() {
277
- // Ideally a game should implement onResume() and onPause()
278
- // to take appropriate action when the activity looses focus
279
- super.onPause();
280
- mGLSurfaceView.onPause();
281
- }
282
- }
@@ -1,72 +0,0 @@
1
- /*
2
- * Copyright (C) 2009 The Android Open Source Project
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
-
17
- package com.example.android.apis.graphics;
18
-
19
- import android.app.Activity;
20
- import android.app.ActivityManager;
21
- import android.content.Context;
22
- import android.content.pm.ConfigurationInfo;
23
- import android.opengl.GLSurfaceView;
24
- import android.os.Bundle;
25
-
26
- /**
27
- * This sample shows how to check for OpenGL ES 2.0 support at runtime, and then
28
- * use either OpenGL ES 1.0 or OpenGL ES 2.0, as appropriate.
29
- */
30
- public class GLES20Activity extends Activity {
31
- @Override
32
- protected void onCreate(Bundle savedInstanceState) {
33
- super.onCreate(savedInstanceState);
34
- mGLSurfaceView = new GLSurfaceView(this);
35
- if (detectOpenGLES20()) {
36
- // Tell the surface view we want to create an OpenGL ES 2.0-compatible
37
- // context, and set an OpenGL ES 2.0-compatible renderer.
38
- mGLSurfaceView.setEGLContextClientVersion(2);
39
- mGLSurfaceView.setRenderer(new GLES20TriangleRenderer(this));
40
- } else {
41
- // Set an OpenGL ES 1.x-compatible renderer. In a real application
42
- // this renderer might approximate the same output as the 2.0 renderer.
43
- mGLSurfaceView.setRenderer(new TriangleRenderer(this));
44
- }
45
- setContentView(mGLSurfaceView);
46
- }
47
-
48
- private boolean detectOpenGLES20() {
49
- ActivityManager am =
50
- (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
51
- ConfigurationInfo info = am.getDeviceConfigurationInfo();
52
- return (info.reqGlEsVersion >= 0x20000);
53
- }
54
-
55
- @Override
56
- protected void onResume() {
57
- // Ideally a game should implement onResume() and onPause()
58
- // to take appropriate action when the activity looses focus
59
- super.onResume();
60
- mGLSurfaceView.onResume();
61
- }
62
-
63
- @Override
64
- protected void onPause() {
65
- // Ideally a game should implement onResume() and onPause()
66
- // to take appropriate action when the activity looses focus
67
- super.onPause();
68
- mGLSurfaceView.onPause();
69
- }
70
-
71
- private GLSurfaceView mGLSurfaceView;
72
- }
@@ -1,255 +0,0 @@
1
- /*
2
- * Copyright (C) 2009 The Android Open Source Project
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
-
17
- package com.example.android.apis.graphics;
18
-
19
- import java.io.IOException;
20
- import java.io.InputStream;
21
- import java.nio.ByteBuffer;
22
- import java.nio.ByteOrder;
23
- import java.nio.FloatBuffer;
24
-
25
- import javax.microedition.khronos.egl.EGLConfig;
26
- import javax.microedition.khronos.opengles.GL10;
27
-
28
- import android.content.Context;
29
- import android.graphics.Bitmap;
30
- import android.graphics.BitmapFactory;
31
- import android.opengl.GLES20;
32
- import android.opengl.GLSurfaceView;
33
- import android.opengl.GLUtils;
34
- import android.opengl.Matrix;
35
- import android.os.SystemClock;
36
- import android.util.Log;
37
-
38
- import com.example.android.apis.R;
39
-
40
- class GLES20TriangleRenderer implements GLSurfaceView.Renderer {
41
-
42
- public GLES20TriangleRenderer(Context context) {
43
- mContext = context;
44
- mTriangleVertices = ByteBuffer.allocateDirect(mTriangleVerticesData.length
45
- * FLOAT_SIZE_BYTES).order(ByteOrder.nativeOrder()).asFloatBuffer();
46
- mTriangleVertices.put(mTriangleVerticesData).position(0);
47
- }
48
-
49
- public void onDrawFrame(GL10 glUnused) {
50
- // Ignore the passed-in GL10 interface, and use the GLES20
51
- // class's static methods instead.
52
- GLES20.glClearColor(0.0f, 0.0f, 1.0f, 1.0f);
53
- GLES20.glClear( GLES20.GL_DEPTH_BUFFER_BIT | GLES20.GL_COLOR_BUFFER_BIT);
54
- GLES20.glUseProgram(mProgram);
55
- checkGlError("glUseProgram");
56
-
57
- GLES20.glActiveTexture(GLES20.GL_TEXTURE0);
58
- GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, mTextureID);
59
-
60
- mTriangleVertices.position(TRIANGLE_VERTICES_DATA_POS_OFFSET);
61
- GLES20.glVertexAttribPointer(maPositionHandle, 3, GLES20.GL_FLOAT, false,
62
- TRIANGLE_VERTICES_DATA_STRIDE_BYTES, mTriangleVertices);
63
- checkGlError("glVertexAttribPointer maPosition");
64
- mTriangleVertices.position(TRIANGLE_VERTICES_DATA_UV_OFFSET);
65
- GLES20.glEnableVertexAttribArray(maPositionHandle);
66
- checkGlError("glEnableVertexAttribArray maPositionHandle");
67
- GLES20.glVertexAttribPointer(maTextureHandle, 2, GLES20.GL_FLOAT, false,
68
- TRIANGLE_VERTICES_DATA_STRIDE_BYTES, mTriangleVertices);
69
- checkGlError("glVertexAttribPointer maTextureHandle");
70
- GLES20.glEnableVertexAttribArray(maTextureHandle);
71
- checkGlError("glEnableVertexAttribArray maTextureHandle");
72
-
73
- long time = SystemClock.uptimeMillis() % 4000L;
74
- float angle = 0.090f * ((int) time);
75
- Matrix.setRotateM(mMMatrix, 0, angle, 0, 0, 1.0f);
76
- Matrix.multiplyMM(mMVPMatrix, 0, mVMatrix, 0, mMMatrix, 0);
77
- Matrix.multiplyMM(mMVPMatrix, 0, mProjMatrix, 0, mMVPMatrix, 0);
78
-
79
- GLES20.glUniformMatrix4fv(muMVPMatrixHandle, 1, false, mMVPMatrix, 0);
80
- GLES20.glDrawArrays(GLES20.GL_TRIANGLES, 0, 3);
81
- checkGlError("glDrawArrays");
82
- }
83
-
84
- public void onSurfaceChanged(GL10 glUnused, int width, int height) {
85
- // Ignore the passed-in GL10 interface, and use the GLES20
86
- // class's static methods instead.
87
- GLES20.glViewport(0, 0, width, height);
88
- float ratio = (float) width / height;
89
- Matrix.frustumM(mProjMatrix, 0, -ratio, ratio, -1, 1, 3, 7);
90
- }
91
-
92
- public void onSurfaceCreated(GL10 glUnused, EGLConfig config) {
93
- // Ignore the passed-in GL10 interface, and use the GLES20
94
- // class's static methods instead.
95
- mProgram = createProgram(mVertexShader, mFragmentShader);
96
- if (mProgram == 0) {
97
- return;
98
- }
99
- maPositionHandle = GLES20.glGetAttribLocation(mProgram, "aPosition");
100
- checkGlError("glGetAttribLocation aPosition");
101
- if (maPositionHandle == -1) {
102
- throw new RuntimeException("Could not get attrib location for aPosition");
103
- }
104
- maTextureHandle = GLES20.glGetAttribLocation(mProgram, "aTextureCoord");
105
- checkGlError("glGetAttribLocation aTextureCoord");
106
- if (maTextureHandle == -1) {
107
- throw new RuntimeException("Could not get attrib location for aTextureCoord");
108
- }
109
-
110
- muMVPMatrixHandle = GLES20.glGetUniformLocation(mProgram, "uMVPMatrix");
111
- checkGlError("glGetUniformLocation uMVPMatrix");
112
- if (muMVPMatrixHandle == -1) {
113
- throw new RuntimeException("Could not get attrib location for uMVPMatrix");
114
- }
115
-
116
- /*
117
- * Create our texture. This has to be done each time the
118
- * surface is created.
119
- */
120
-
121
- int[] textures = new int[1];
122
- GLES20.glGenTextures(1, textures, 0);
123
-
124
- mTextureID = textures[0];
125
- GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, mTextureID);
126
-
127
- GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER,
128
- GLES20.GL_NEAREST);
129
- GLES20.glTexParameterf(GLES20.GL_TEXTURE_2D,
130
- GLES20.GL_TEXTURE_MAG_FILTER,
131
- GLES20.GL_LINEAR);
132
-
133
- GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_S,
134
- GLES20.GL_REPEAT);
135
- GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T,
136
- GLES20.GL_REPEAT);
137
-
138
- InputStream is = mContext.getResources()
139
- .openRawResource(R.raw.robot);
140
- Bitmap bitmap;
141
- try {
142
- bitmap = BitmapFactory.decodeStream(is);
143
- } finally {
144
- try {
145
- is.close();
146
- } catch(IOException e) {
147
- // Ignore.
148
- }
149
- }
150
-
151
- GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmap, 0);
152
- bitmap.recycle();
153
-
154
- Matrix.setLookAtM(mVMatrix, 0, 0, 0, -5, 0f, 0f, 0f, 0f, 1.0f, 0.0f);
155
- }
156
-
157
- private int loadShader(int shaderType, String source) {
158
- int shader = GLES20.glCreateShader(shaderType);
159
- if (shader != 0) {
160
- GLES20.glShaderSource(shader, source);
161
- GLES20.glCompileShader(shader);
162
- int[] compiled = new int[1];
163
- GLES20.glGetShaderiv(shader, GLES20.GL_COMPILE_STATUS, compiled, 0);
164
- if (compiled[0] == 0) {
165
- Log.e(TAG, "Could not compile shader " + shaderType + ":");
166
- Log.e(TAG, GLES20.glGetShaderInfoLog(shader));
167
- GLES20.glDeleteShader(shader);
168
- shader = 0;
169
- }
170
- }
171
- return shader;
172
- }
173
-
174
- private int createProgram(String vertexSource, String fragmentSource) {
175
- int vertexShader = loadShader(GLES20.GL_VERTEX_SHADER, vertexSource);
176
- if (vertexShader == 0) {
177
- return 0;
178
- }
179
-
180
- int pixelShader = loadShader(GLES20.GL_FRAGMENT_SHADER, fragmentSource);
181
- if (pixelShader == 0) {
182
- return 0;
183
- }
184
-
185
- int program = GLES20.glCreateProgram();
186
- if (program != 0) {
187
- GLES20.glAttachShader(program, vertexShader);
188
- checkGlError("glAttachShader");
189
- GLES20.glAttachShader(program, pixelShader);
190
- checkGlError("glAttachShader");
191
- GLES20.glLinkProgram(program);
192
- int[] linkStatus = new int[1];
193
- GLES20.glGetProgramiv(program, GLES20.GL_LINK_STATUS, linkStatus, 0);
194
- if (linkStatus[0] != GLES20.GL_TRUE) {
195
- Log.e(TAG, "Could not link program: ");
196
- Log.e(TAG, GLES20.glGetProgramInfoLog(program));
197
- GLES20.glDeleteProgram(program);
198
- program = 0;
199
- }
200
- }
201
- return program;
202
- }
203
-
204
- private void checkGlError(String op) {
205
- int error;
206
- while ((error = GLES20.glGetError()) != GLES20.GL_NO_ERROR) {
207
- Log.e(TAG, op + ": glError " + error);
208
- throw new RuntimeException(op + ": glError " + error);
209
- }
210
- }
211
-
212
- private static final int FLOAT_SIZE_BYTES = 4;
213
- private static final int TRIANGLE_VERTICES_DATA_STRIDE_BYTES = 5 * FLOAT_SIZE_BYTES;
214
- private static final int TRIANGLE_VERTICES_DATA_POS_OFFSET = 0;
215
- private static final int TRIANGLE_VERTICES_DATA_UV_OFFSET = 3;
216
- private final float[] mTriangleVerticesData = {
217
- // X, Y, Z, U, V
218
- -1.0f, -0.5f, 0, -0.5f, 0.0f,
219
- 1.0f, -0.5f, 0, 1.5f, -0.0f,
220
- 0.0f, 1.11803399f, 0, 0.5f, 1.61803399f };
221
-
222
- private FloatBuffer mTriangleVertices;
223
-
224
- private final String mVertexShader =
225
- "uniform mat4 uMVPMatrix;\n" +
226
- "attribute vec4 aPosition;\n" +
227
- "attribute vec2 aTextureCoord;\n" +
228
- "varying vec2 vTextureCoord;\n" +
229
- "void main() {\n" +
230
- " gl_Position = uMVPMatrix * aPosition;\n" +
231
- " vTextureCoord = aTextureCoord;\n" +
232
- "}\n";
233
-
234
- private final String mFragmentShader =
235
- "precision mediump float;\n" +
236
- "varying vec2 vTextureCoord;\n" +
237
- "uniform sampler2D sTexture;\n" +
238
- "void main() {\n" +
239
- " gl_FragColor = texture2D(sTexture, vTextureCoord);\n" +
240
- "}\n";
241
-
242
- private float[] mMVPMatrix = new float[16];
243
- private float[] mProjMatrix = new float[16];
244
- private float[] mMMatrix = new float[16];
245
- private float[] mVMatrix = new float[16];
246
-
247
- private int mProgram;
248
- private int mTextureID;
249
- private int muMVPMatrixHandle;
250
- private int maPositionHandle;
251
- private int maTextureHandle;
252
-
253
- private Context mContext;
254
- private static String TAG = "GLES20TriangleRenderer";
255
- }