summaryrefslogtreecommitdiff
path: root/ios
diff options
context:
space:
mode:
authorNorbert Thiebaud <nthiebaud@gmail.com>2014-01-30 18:54:36 -0600
committerNorbert Thiebaud <nthiebaud@gmail.com>2014-01-30 18:54:36 -0600
commitbab7eebba127d603a9f8011fed290627e2a64423 (patch)
tree78559d307f528c9cde8f5fe6adaf5c3f3314b77d /ios
parent3d869cda8db03820dea8c4ba463eb155d05e933b (diff)
moved impress remote clients to a separate repository
Change-Id: I654e3af31a6915f08ff808b351d304da773ad267 see: git://gerrit.libreoffice.org/impress_remote
Diffstat (limited to 'ios')
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Contents.json104
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40.pngbin4905 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40@2x-1.pngbin8070 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40@2x.pngbin8070 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-60@2x.pngbin11595 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-76.pngbin7854 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-76@2x.pngbin12573 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-1.pngbin4162 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-50.pngbin5705 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-50@2x.pngbin9983 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small.pngbin4162 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small@2x-1.pngbin6303 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small@2x.pngbin6303 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_ipad_icon.pngbin6105 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_ipad_icon@2x.pngbin6857 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_iphone_icon.pngbin5552 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_iphone_icon@2x.pngbin8878 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Contents.json94
-rw-r--r--ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default-568h@2x.pngbin18594 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default.pngbin6540 -> 0 bytes
-rw-r--r--ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default@2x.pngbin16107 -> 0 bytes
-rwxr-xr-xios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsViewController.h84
-rwxr-xr-xios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsViewController.m798
-rwxr-xr-xios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsWebViewController.h30
-rwxr-xr-xios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsWebViewController.m144
-rwxr-xr-xios/iosremote/InAppSettingsKit/Controllers/IASKSpecifierValuesViewController.h36
-rwxr-xr-xios/iosremote/InAppSettingsKit/Controllers/IASKSpecifierValuesViewController.m204
-rwxr-xr-xios/iosremote/InAppSettingsKit/Controllers/IASKViewController.h26
-rwxr-xr-xios/iosremote/InAppSettingsKit/Models/IASKSettingsReader.h144
-rwxr-xr-xios/iosremote/InAppSettingsKit/Models/IASKSettingsReader.m266
-rwxr-xr-xios/iosremote/InAppSettingsKit/Models/IASKSettingsStore.h39
-rwxr-xr-xios/iosremote/InAppSettingsKit/Models/IASKSettingsStore.m68
-rwxr-xr-xios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreFile.h28
-rwxr-xr-xios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreFile.m53
-rwxr-xr-xios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreUserDefaults.h25
-rwxr-xr-xios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreUserDefaults.m67
-rwxr-xr-xios/iosremote/InAppSettingsKit/Models/IASKSpecifier.h59
-rwxr-xr-xios/iosremote/InAppSettingsKit/Models/IASKSpecifier.m239
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKPSSliderSpecifierViewCell.h31
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKPSSliderSpecifierViewCell.m71
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKPSTextFieldSpecifierViewCell.h29
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKPSTextFieldSpecifierViewCell.m49
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.h22
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.m57
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKPSToggleSwitchSpecifierViewCell.h29
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKPSToggleSwitchSpecifierViewCell.m59
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKSlider.h26
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKSlider.m29
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKSwitch.h26
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKSwitch.m30
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKTextField.h26
-rwxr-xr-xios/iosremote/InAppSettingsKit/Views/IASKTextField.m29
-rwxr-xr-xios/iosremote/InAppSettingsKit/Xibs/IASKAppSettingsView.xib199
-rwxr-xr-xios/iosremote/InAppSettingsKit/Xibs/IASKAppSettingsWebView.xib378
-rwxr-xr-xios/iosremote/InAppSettingsKit/Xibs/IASKPSSliderSpecifierViewCell.xib251
-rwxr-xr-xios/iosremote/InAppSettingsKit/Xibs/IASKPSTextFieldSpecifierViewCell.xib254
-rwxr-xr-xios/iosremote/InAppSettingsKit/Xibs/IASKPSToggleSwitchSpecifierViewCell.xib237
-rwxr-xr-xios/iosremote/InAppSettingsKit/Xibs/IASKSpecifierValuesView.xib227
-rwxr-xr-xios/iosremote/PopoverView/PopoverView.h208
-rwxr-xr-xios/iosremote/PopoverView/PopoverView.m1069
-rwxr-xr-xios/iosremote/PopoverView/PopoverViewCompatibility.h29
-rwxr-xr-xios/iosremote/PopoverView/PopoverView_Configuration.h128
-rwxr-xr-xios/iosremote/SWRevealViewController/SWRevealViewController.h180
-rwxr-xr-xios/iosremote/SWRevealViewController/SWRevealViewController.m1257
-rw-r--r--ios/iosremote/ServerListViewController~ipad.h15
-rw-r--r--ios/iosremote/ServerListViewController~ipad.m46
-rw-r--r--ios/iosremote/Settings.bundle/Root.plist115
-rw-r--r--ios/iosremote/Settings.bundle/ar.lproj/Root.stringsbin1136 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/ca.lproj/Root.stringsbin1170 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/cs.lproj/Root.stringsbin1168 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/da.lproj/Root.stringsbin1154 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/de.lproj/Root.stringsbin1174 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/el.lproj/Root.stringsbin1230 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/en.lproj/Root.stringsbin1128 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/es.lproj/Root.stringsbin1164 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/fi.lproj/Root.stringsbin1124 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/fr.lproj/Root.stringsbin1150 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/hu.lproj/Root.stringsbin1170 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/it.lproj/Root.stringsbin1196 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/nb.lproj/Root.stringsbin1168 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/nl.lproj/Root.stringsbin1148 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/pl.lproj/Root.stringsbin1172 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/pt-BR.lproj/Root.stringsbin1136 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/pt.lproj/Root.stringsbin1136 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/ru.lproj/Root.stringsbin1126 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/sl.lproj/Root.stringsbin1160 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/sv.lproj/Root.stringsbin1150 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/tr.lproj/Root.stringsbin1156 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/uk.lproj/Root.stringsbin1146 -> 0 bytes
-rw-r--r--ios/iosremote/Settings.bundle/zh-Hant.lproj/Root.stringsbin968 -> 0 bytes
-rw-r--r--ios/iosremote/TestFlightSDK1.2.6/README.md223
-rw-r--r--ios/iosremote/TestFlightSDK1.2.6/TestFlight.h114
-rw-r--r--ios/iosremote/TestFlightSDK1.2.6/libTestFlight.abin4011440 -> 0 bytes
-rw-r--r--ios/iosremote/TestFlightSDK1.2.6/release_notes.md249
-rw-r--r--ios/iosremote/UserDefaults.plist10
-rw-r--r--ios/iosremote/ar.lproj/Localizable.stringsbin9804 -> 0 bytes
-rw-r--r--ios/iosremote/ar.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/ca.lproj/Localizable.stringsbin10592 -> 0 bytes
-rw-r--r--ios/iosremote/ca.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/cs.lproj/Localizable.stringsbin10102 -> 0 bytes
-rw-r--r--ios/iosremote/cs.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/da.lproj/Localizable.stringsbin10230 -> 0 bytes
-rw-r--r--ios/iosremote/da.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/de.lproj/Localizable.stringsbin11042 -> 0 bytes
-rw-r--r--ios/iosremote/de.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/el.lproj/Localizable.stringsbin10880 -> 0 bytes
-rw-r--r--ios/iosremote/el.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/en.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/en.lproj/iPad_autosize.stringsbin4242 -> 0 bytes
-rw-r--r--ios/iosremote/en.lproj/iPad_autosize_old.storyboard648
-rw-r--r--ios/iosremote/es.lproj/Localizable.stringsbin10432 -> 0 bytes
-rw-r--r--ios/iosremote/es.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/fi.lproj/Localizable.stringsbin10342 -> 0 bytes
-rw-r--r--ios/iosremote/fi.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/fr.lproj/Localizable.stringsbin10620 -> 0 bytes
-rw-r--r--ios/iosremote/fr.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/fr.lproj/iPad_autosize.stringsbin4314 -> 0 bytes
-rw-r--r--ios/iosremote/fr.lproj/iPad_autosize_old.storyboard648
-rw-r--r--ios/iosremote/hu.lproj/Localizable.stringsbin10548 -> 0 bytes
-rw-r--r--ios/iosremote/hu.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/iosremote.xcodeproj/project.pbxproj1386
-rw-r--r--ios/iosremote/iosremote.xcodeproj/project.xcworkspace/contents.xcworkspacedata7
-rw-r--r--ios/iosremote/iosremote.xcodeproj/project.xcworkspace/xcuserdata/me.xcuserdatad/WorkspaceSettings.xcsettings10
-rw-r--r--ios/iosremote/iosremote.xcodeproj/project.xcworkspace/xcuserdata/siqi.xcuserdatad/WorkspaceSettings.xcsettings22
-rw-r--r--ios/iosremote/iosremote.xcodeproj/xcuserdata/me.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist20
-rw-r--r--ios/iosremote/iosremote.xcodeproj/xcuserdata/me.xcuserdatad/xcschemes/iosremote.xcscheme86
-rw-r--r--ios/iosremote/iosremote.xcodeproj/xcuserdata/me.xcuserdatad/xcschemes/xcschememanagement.plist22
-rw-r--r--ios/iosremote/iosremote.xcodeproj/xcuserdata/siqi.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist46
-rw-r--r--ios/iosremote/iosremote.xcodeproj/xcuserdata/siqi.xcuserdatad/xcschemes/iosremote.xcscheme86
-rw-r--r--ios/iosremote/iosremote.xcodeproj/xcuserdata/siqi.xcuserdatad/xcschemes/xcschememanagement.plist22
-rw-r--r--ios/iosremote/iosremote/Categories/AutoDismissKeyboardNavigationViewController.h14
-rw-r--r--ios/iosremote/iosremote/Categories/AutoDismissKeyboardNavigationViewController.m43
-rw-r--r--ios/iosremote/iosremote/Categories/NSString+Base64.h16
-rw-r--r--ios/iosremote/iosremote/Categories/NSString+Base64.m23
-rw-r--r--ios/iosremote/iosremote/Categories/UIBarButtonItem+Theme.h15
-rw-r--r--ios/iosremote/iosremote/Categories/UIBarButtonItem+Theme.m47
-rw-r--r--ios/iosremote/iosremote/Categories/UIImage+Resize.m186
-rw-r--r--ios/iosremote/iosremote/Categories/UIImage+imageWithColor.h17
-rw-r--r--ios/iosremote/iosremote/Categories/UIImage+imageWithColor.m29
-rw-r--r--ios/iosremote/iosremote/Categories/UIImageView+setImageAnimated.h16
-rw-r--r--ios/iosremote/iosremote/Categories/UIImageView+setImageAnimated.m30
-rw-r--r--ios/iosremote/iosremote/Categories/UINavigationController+Theme.h13
-rw-r--r--ios/iosremote/iosremote/Categories/UINavigationController+Theme.m22
-rw-r--r--ios/iosremote/iosremote/Categories/UIView+FadeInFadeOut.h13
-rw-r--r--ios/iosremote/iosremote/Categories/UIView+FadeInFadeOut.m33
-rw-r--r--ios/iosremote/iosremote/Categories/UIView+Shadowing.h16
-rw-r--r--ios/iosremote/iosremote/Categories/UIView+Shadowing.m34
-rw-r--r--ios/iosremote/iosremote/Categories/UIViewController+LibOStyling.h28
-rw-r--r--ios/iosremote/iosremote/Categories/UIViewController+LibOStyling.m72
-rw-r--r--ios/iosremote/iosremote/Classes/AboutViewController.h15
-rw-r--r--ios/iosremote/iosremote/Classes/AboutViewController.m48
-rw-r--r--ios/iosremote/iosremote/Classes/AppDelegate.h21
-rw-r--r--ios/iosremote/iosremote/Classes/AppDelegate.m107
-rw-r--r--ios/iosremote/iosremote/Classes/AppDelegate~ipad.h16
-rw-r--r--ios/iosremote/iosremote/Classes/AppDelegate~ipad.m16
-rw-r--r--ios/iosremote/iosremote/Classes/BasePresentationViewController.h58
-rw-r--r--ios/iosremote/iosremote/Classes/BasePresentationViewController.m586
-rw-r--r--ios/iosremote/iosremote/Classes/ControlVariables.h57
-rw-r--r--ios/iosremote/iosremote/Classes/EditableTableViewCell.h14
-rw-r--r--ios/iosremote/iosremote/Classes/EditableTableViewCell.m55
-rw-r--r--ios/iosremote/iosremote/Classes/HorizontalSlideCell.h17
-rw-r--r--ios/iosremote/iosremote/Classes/HorizontalSlideCell.m64
-rw-r--r--ios/iosremote/iosremote/Classes/LibONavigationController.h13
-rw-r--r--ios/iosremote/iosremote/Classes/LibONavigationController.m44
-rw-r--r--ios/iosremote/iosremote/Classes/MainSplitViewController.h17
-rw-r--r--ios/iosremote/iosremote/Classes/MainSplitViewController.m79
-rw-r--r--ios/iosremote/iosremote/Classes/NewServerViewController.h39
-rw-r--r--ios/iosremote/iosremote/Classes/NewServerViewController.m253
-rw-r--r--ios/iosremote/iosremote/Classes/PinValidationViewController.h16
-rw-r--r--ios/iosremote/iosremote/Classes/PinValidationViewController.m79
-rw-r--r--ios/iosremote/iosremote/Classes/SWReavealMainController.h13
-rw-r--r--ios/iosremote/iosremote/Classes/SWReavealMainController.m38
-rw-r--r--ios/iosremote/iosremote/Classes/ServerListViewController.h20
-rw-r--r--ios/iosremote/iosremote/Classes/ServerListViewController.m536
-rw-r--r--ios/iosremote/iosremote/Classes/ServerListViewController~ipad.h15
-rw-r--r--ios/iosremote/iosremote/Classes/ServerListViewController~ipad.m46
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowPreviewViewController.h27
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowPreviewViewController.m107
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowPreviewViewController~ipad.h21
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowPreviewViewController~ipad.m86
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowPreviewViewController~iphone.h14
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowPreviewViewController~iphone.m58
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowSwipeInList~ipad.h13
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowSwipeInList~ipad.m154
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowSwipeInList~iphone.h18
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowSwipeInList~iphone.m307
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowViewController.h22
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowViewController.m82
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowViewController~iphone.h30
-rw-r--r--ios/iosremote/iosremote/Classes/SlideShowViewController~iphone.m311
-rw-r--r--ios/iosremote/iosremote/Classes/StopWatch.h47
-rw-r--r--ios/iosremote/iosremote/Classes/StopWatch.m175
-rw-r--r--ios/iosremote/iosremote/Classes/Timer.h47
-rw-r--r--ios/iosremote/iosremote/Classes/Timer.m230
-rw-r--r--ios/iosremote/iosremote/Classes/WalkThroughContainerViewController.h15
-rw-r--r--ios/iosremote/iosremote/Classes/WalkThroughContainerViewController.m120
-rw-r--r--ios/iosremote/iosremote/Classes/WalkThroughPageViewController.h22
-rw-r--r--ios/iosremote/iosremote/Classes/WalkThroughPageViewController.m87
-rw-r--r--ios/iosremote/iosremote/Classes/slideShow_vc.m148
-rw-r--r--ios/iosremote/iosremote/Communication/Client.h38
-rw-r--r--ios/iosremote/iosremote/Communication/Client.m252
-rw-r--r--ios/iosremote/iosremote/Communication/CommandInterpreter.h21
-rw-r--r--ios/iosremote/iosremote/Communication/CommandInterpreter.m131
-rw-r--r--ios/iosremote/iosremote/Communication/CommandTransmitter.h37
-rw-r--r--ios/iosremote/iosremote/Communication/CommandTransmitter.m107
-rw-r--r--ios/iosremote/iosremote/Communication/CommunicationManager.h101
-rw-r--r--ios/iosremote/iosremote/Communication/CommunicationManager.m203
-rw-r--r--ios/iosremote/iosremote/Communication/Server.h30
-rw-r--r--ios/iosremote/iosremote/Communication/Server.m79
-rw-r--r--ios/iosremote/iosremote/Communication/SlideShow.h43
-rw-r--r--ios/iosremote/iosremote/Communication/SlideShow.m189
-rw-r--r--ios/iosremote/iosremote/Default-568h@2x.pngbin18594 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Default.pngbin6540 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Default@2x.pngbin16107 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/ .pngbin4701 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/WTConnectionHotspot.pngbin33674 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/WTPairing.pngbin71206 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/WTPairingScreenshot.pngbin81702 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/WTconnecting.pngbin41955 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/WTconnection.pngbin24521 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/WTcontrol~ipad.pngbin146037 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/WTcontrol~iphone.pngbin253574 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/add.pngbin2990 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/add@2x.pngbin2912 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/backButton.pngbin3118 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/backButton@2x.pngbin3574 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/buttonBackground.pngbin2975 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/buttonBackground@2x.pngbin3199 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/forwardButton.pngbin3091 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/forwardButton@2x.pngbin3439 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/gear_transparent_bg.pngbin3381 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/gear_transparent_bg@2x.pngbin4005 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/libreoffice_logo.pngbin14495 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/more_icon.pngbin2847 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/more_icon@2x.pngbin2921 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/more_ipad.pngbin3634 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/more_ipad@2x.pngbin4701 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/navBarBackground.pngbin2933 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/navBarBackground@2x.pngbin3488 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/navBarButtonNormal@2x.pngbin2843 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/nextButton_normal.pngbin3600 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/nextButton_normal@2x.pngbin4704 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/nextButton_pressed.pngbin3487 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/nextButton_pressed@2x.pngbin4454 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/pointer.pngbin4866 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/pointer_pushed.pngbin4859 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/previousButton_normal.pngbin3592 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/previousButton_normal@2x.pngbin4655 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/previousButton_pressed.pngbin3482 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/previousButton_pressed@2x.pngbin4454 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/pushed_next_button.pngbin6574 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/pushed_previous_button.pngbin6687 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/released_next_button.pngbin6592 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/released_previous_button.pngbin6705 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/slide_finished.pngbin11049 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_clear_btn.pngbin3521 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_clear_btn@2x.pngbin4442 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_clear_btn_dark.pngbin3502 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_pause_btn.pngbin2884 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_pause_btn@2x.pngbin3002 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_pause_btn_dark.pngbin2894 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_pause_btn_dark@2x.pngbin3018 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_settime_btn.pngbin3897 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_settime_btn@2x.pngbin5148 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_settime_btn_dark.pngbin4066 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_settime_btn_dark@2x.pngbin5310 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_start_btn.pngbin3139 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_start_btn@2x.pngbin3728 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_start_btn_dark.pngbin3191 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Ressources/timer_start_btn_dark@2x.pngbin3750 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/Views/WalkThroughPageViewController.xib464
-rw-r--r--ios/iosremote/iosremote/Views/WalkThroughPageViewControllerWithHint.xib464
-rw-r--r--ios/iosremote/iosremote/Views/WalkThroughPageViewMainImageController.xib66
-rw-r--r--ios/iosremote/iosremote/ar.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/ar.lproj/iPad_autosize.stringsbin4260 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/ar.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/ar.lproj/iPhone_autosize.stringsbin3418 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/ca.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/ca.lproj/iPad_autosize.stringsbin4346 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/ca.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/ca.lproj/iPhone_autosize.stringsbin3510 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/cs.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/cs.lproj/iPad_autosize.stringsbin4296 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/cs.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/cs.lproj/iPhone_autosize.stringsbin3482 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/da.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/da.lproj/iPad_autosize.stringsbin4254 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/da.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/da.lproj/iPhone_autosize.stringsbin3432 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/de.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/de.lproj/iPad_autosize.stringsbin4408 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/de.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/de.lproj/iPhone_autosize.stringsbin3532 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/el.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/el.lproj/iPad_autosize.stringsbin4340 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/el.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/el.lproj/iPhone_autosize.stringsbin3508 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/en.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/en.lproj/Localizable.stringsbin10094 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/en.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/en.lproj/iPhone_autoSize.stringsbin3414 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/en.lproj/iPhone_autoSize_old.storyboard631
-rw-r--r--ios/iosremote/iosremote/es.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/es.lproj/iPad_autosize.stringsbin4354 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/es.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/es.lproj/iPhone_autosize.stringsbin3502 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/fi.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/fi.lproj/iPad_autosize.stringsbin4256 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/fi.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/fi.lproj/iPhone_autosize.stringsbin3432 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/fr.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/fr.lproj/iPad_autosize.stringsbin4394 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/fr.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/fr.lproj/iPhone_autoSize.stringsbin3646 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/fr.lproj/iPhone_autoSize_old.storyboard631
-rw-r--r--ios/iosremote/iosremote/hu.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/hu.lproj/iPad_autosize.stringsbin4312 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/hu.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/hu.lproj/iPhone_autosize.stringsbin3444 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/iosremote-Info.plist68
-rw-r--r--ios/iosremote/iosremote/iosremote-Prefix.pch16
-rw-r--r--ios/iosremote/iosremote/it.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/it.lproj/iPad_autosize.stringsbin4316 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/it.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/it.lproj/iPhone_autosize.stringsbin3496 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/main.m18
-rw-r--r--ios/iosremote/iosremote/nb.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/nb.lproj/iPad_autosize.stringsbin4302 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/nb.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/nb.lproj/iPhone_autosize.stringsbin3442 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/nl.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/nl.lproj/iPad_autosize.stringsbin4264 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/nl.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/nl.lproj/iPhone_autosize.stringsbin3442 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/pl.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/pl.lproj/iPad_autosize.stringsbin4280 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/pl.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/pl.lproj/iPhone_autosize.stringsbin3432 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/pt-BR.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/pt-BR.lproj/iPad_autosize.stringsbin4352 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/pt-BR.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/pt-BR.lproj/iPhone_autosize.stringsbin3500 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/pt.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/pt.lproj/iPad_autosize.stringsbin4288 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/pt.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/pt.lproj/iPhone_autosize.stringsbin3426 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/ru.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/ru.lproj/iPad_autosize.stringsbin4250 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/ru.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/ru.lproj/iPhone_autosize.stringsbin3420 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/sl.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/sl.lproj/iPad_autosize.stringsbin4268 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/sl.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/sl.lproj/iPhone_autosize.stringsbin3434 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/sv.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/sv.lproj/iPad_autosize.stringsbin4298 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/sv.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/sv.lproj/iPhone_autosize.stringsbin3464 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/tr.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/tr.lproj/iPad_autosize.stringsbin4266 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/tr.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/tr.lproj/iPhone_autosize.stringsbin3446 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/uk.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/uk.lproj/iPad_autosize.stringsbin4258 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/uk.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/uk.lproj/iPhone_autosize.stringsbin3420 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/zh-Hans.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/zh-Hans.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/zh-Hans.lproj/iPhone_autoSize.stringsbin2826 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/zh-Hans.lproj/iPhone_autoSize_old.storyboard631
-rw-r--r--ios/iosremote/iosremote/zh-Hant.lproj/InfoPlist.strings2
-rw-r--r--ios/iosremote/iosremote/zh-Hant.lproj/iPad_autosize.stringsbin4034 -> 0 bytes
-rw-r--r--ios/iosremote/iosremote/zh-Hant.lproj/iPhone_autoSize.storyboard631
-rw-r--r--ios/iosremote/iosremote/zh-Hant.lproj/iPhone_autosize.stringsbin3238 -> 0 bytes
-rw-r--r--ios/iosremote/it.lproj/Localizable.stringsbin10616 -> 0 bytes
-rw-r--r--ios/iosremote/it.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/licenses.html51
-rw-r--r--ios/iosremote/localize.py105
-rw-r--r--ios/iosremote/nb.lproj/Localizable.stringsbin10046 -> 0 bytes
-rw-r--r--ios/iosremote/nb.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/nl.lproj/Localizable.stringsbin10312 -> 0 bytes
-rw-r--r--ios/iosremote/nl.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/pl.lproj/Localizable.stringsbin10470 -> 0 bytes
-rw-r--r--ios/iosremote/pl.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/pt-BR.lproj/Localizable.stringsbin10400 -> 0 bytes
-rw-r--r--ios/iosremote/pt-BR.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/pt.lproj/Localizable.stringsbin10246 -> 0 bytes
-rw-r--r--ios/iosremote/pt.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/ru.lproj/Localizable.stringsbin10104 -> 0 bytes
-rw-r--r--ios/iosremote/ru.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/sl.lproj/Localizable.stringsbin10412 -> 0 bytes
-rw-r--r--ios/iosremote/sl.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/sv.lproj/Localizable.stringsbin10198 -> 0 bytes
-rw-r--r--ios/iosremote/sv.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/tr.lproj/Localizable.stringsbin10232 -> 0 bytes
-rw-r--r--ios/iosremote/tr.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/uk.lproj/Localizable.stringsbin10504 -> 0 bytes
-rw-r--r--ios/iosremote/uk.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/zh-Hans.lproj/Localizable.stringsbin5624 -> 0 bytes
-rw-r--r--ios/iosremote/zh-Hans.lproj/iPad_autosize.storyboard648
-rw-r--r--ios/iosremote/zh-Hans.lproj/iPad_autosize.stringsbin4090 -> 0 bytes
-rw-r--r--ios/iosremote/zh-Hans.lproj/iPad_autosize_old.storyboard648
-rw-r--r--ios/iosremote/zh-Hant.lproj/Localizable.stringsbin8246 -> 0 bytes
-rw-r--r--ios/iosremote/zh-Hant.lproj/iPad_autosize.storyboard648
404 files changed, 0 insertions, 52071 deletions
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Contents.json b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Contents.json
deleted file mode 100644
index bcaf376213a5..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Contents.json
+++ /dev/null
@@ -1,104 +0,0 @@
-{
- "images" : [
- {
- "size" : "29x29",
- "idiom" : "iphone",
- "filename" : "Icon-Small.png",
- "scale" : "1x"
- },
- {
- "size" : "29x29",
- "idiom" : "iphone",
- "filename" : "Icon-Small@2x.png",
- "scale" : "2x"
- },
- {
- "size" : "40x40",
- "idiom" : "iphone",
- "filename" : "Icon-40@2x-1.png",
- "scale" : "2x"
- },
- {
- "size" : "57x57",
- "idiom" : "iphone",
- "filename" : "iosremote_iphone_icon.png",
- "scale" : "1x"
- },
- {
- "size" : "57x57",
- "idiom" : "iphone",
- "filename" : "iosremote_iphone_icon@2x.png",
- "scale" : "2x"
- },
- {
- "size" : "60x60",
- "idiom" : "iphone",
- "filename" : "Icon-60@2x.png",
- "scale" : "2x"
- },
- {
- "size" : "29x29",
- "idiom" : "ipad",
- "filename" : "Icon-Small-1.png",
- "scale" : "1x"
- },
- {
- "size" : "29x29",
- "idiom" : "ipad",
- "filename" : "Icon-Small@2x-1.png",
- "scale" : "2x"
- },
- {
- "size" : "40x40",
- "idiom" : "ipad",
- "filename" : "Icon-40.png",
- "scale" : "1x"
- },
- {
- "size" : "40x40",
- "idiom" : "ipad",
- "filename" : "Icon-40@2x.png",
- "scale" : "2x"
- },
- {
- "size" : "50x50",
- "idiom" : "ipad",
- "filename" : "Icon-Small-50.png",
- "scale" : "1x"
- },
- {
- "size" : "50x50",
- "idiom" : "ipad",
- "filename" : "Icon-Small-50@2x.png",
- "scale" : "2x"
- },
- {
- "size" : "72x72",
- "idiom" : "ipad",
- "filename" : "iosremote_ipad_icon.png",
- "scale" : "1x"
- },
- {
- "size" : "72x72",
- "idiom" : "ipad",
- "filename" : "iosremote_ipad_icon@2x.png",
- "scale" : "2x"
- },
- {
- "size" : "76x76",
- "idiom" : "ipad",
- "filename" : "Icon-76.png",
- "scale" : "1x"
- },
- {
- "size" : "76x76",
- "idiom" : "ipad",
- "filename" : "Icon-76@2x.png",
- "scale" : "2x"
- }
- ],
- "info" : {
- "version" : 1,
- "author" : "xcode"
- }
-} \ No newline at end of file
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40.png
deleted file mode 100644
index f95b3320a50d..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40@2x-1.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40@2x-1.png
deleted file mode 100644
index 58e65eb4d58d..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40@2x-1.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40@2x.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40@2x.png
deleted file mode 100644
index 58e65eb4d58d..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-40@2x.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-60@2x.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-60@2x.png
deleted file mode 100644
index 96468d3dafe1..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-60@2x.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-76.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-76.png
deleted file mode 100644
index 0c024b099877..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-76.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-76@2x.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-76@2x.png
deleted file mode 100644
index e0c55e6ed5d9..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-76@2x.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-1.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-1.png
deleted file mode 100644
index f4a08a5049bf..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-1.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-50.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-50.png
deleted file mode 100644
index 436d82dc21d7..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-50.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-50@2x.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-50@2x.png
deleted file mode 100644
index 0f62e74d1d80..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small-50@2x.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small.png
deleted file mode 100644
index f4a08a5049bf..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small@2x-1.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small@2x-1.png
deleted file mode 100644
index b314b23c9c91..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small@2x-1.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small@2x.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small@2x.png
deleted file mode 100644
index b314b23c9c91..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/Icon-Small@2x.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_ipad_icon.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_ipad_icon.png
deleted file mode 100644
index 33dda09636b9..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_ipad_icon.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_ipad_icon@2x.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_ipad_icon@2x.png
deleted file mode 100644
index 1fce03ca7f18..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_ipad_icon@2x.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_iphone_icon.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_iphone_icon.png
deleted file mode 100644
index 84e23cd5809b..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_iphone_icon.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_iphone_icon@2x.png b/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_iphone_icon@2x.png
deleted file mode 100644
index c3a41c22bed6..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/AppIcon.appiconset/iosremote_iphone_icon@2x.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Contents.json b/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Contents.json
deleted file mode 100644
index a2a7d966d0de..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Contents.json
+++ /dev/null
@@ -1,94 +0,0 @@
-{
- "images" : [
- {
- "orientation" : "portrait",
- "idiom" : "iphone",
- "filename" : "Default.png",
- "scale" : "1x"
- },
- {
- "orientation" : "portrait",
- "idiom" : "iphone",
- "filename" : "Default@2x.png",
- "scale" : "2x"
- },
- {
- "orientation" : "portrait",
- "idiom" : "iphone",
- "filename" : "Default-568h@2x.png",
- "subtype" : "retina4",
- "scale" : "2x"
- },
- {
- "orientation" : "portrait",
- "idiom" : "iphone",
- "filename" : "Default@2x.png",
- "minimum-system-version" : "7.0",
- "scale" : "2x"
- },
- {
- "orientation" : "portrait",
- "idiom" : "iphone",
- "filename" : "Default-568h@2x.png",
- "minimum-system-version" : "7.0",
- "subtype" : "retina4",
- "scale" : "2x"
- },
- {
- "orientation" : "portrait",
- "idiom" : "ipad",
- "extent" : "to-status-bar",
- "scale" : "1x"
- },
- {
- "orientation" : "portrait",
- "idiom" : "ipad",
- "extent" : "to-status-bar",
- "scale" : "2x"
- },
- {
- "orientation" : "landscape",
- "idiom" : "ipad",
- "extent" : "to-status-bar",
- "scale" : "1x"
- },
- {
- "orientation" : "landscape",
- "idiom" : "ipad",
- "extent" : "to-status-bar",
- "scale" : "2x"
- },
- {
- "orientation" : "portrait",
- "idiom" : "ipad",
- "minimum-system-version" : "7.0",
- "extent" : "full-screen",
- "scale" : "1x"
- },
- {
- "orientation" : "portrait",
- "idiom" : "ipad",
- "minimum-system-version" : "7.0",
- "extent" : "full-screen",
- "scale" : "2x"
- },
- {
- "orientation" : "landscape",
- "idiom" : "ipad",
- "minimum-system-version" : "7.0",
- "extent" : "full-screen",
- "scale" : "1x"
- },
- {
- "orientation" : "landscape",
- "idiom" : "ipad",
- "minimum-system-version" : "7.0",
- "extent" : "full-screen",
- "scale" : "2x"
- }
- ],
- "info" : {
- "version" : 1,
- "author" : "xcode"
- }
-} \ No newline at end of file
diff --git a/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default-568h@2x.png b/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default-568h@2x.png
deleted file mode 100644
index 0891b7aabfcf..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default-568h@2x.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default.png b/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default.png
deleted file mode 100644
index 4c8ca6f693f9..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default@2x.png b/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default@2x.png
deleted file mode 100644
index 35b84cffeb4d..000000000000
--- a/ios/iosremote/Impress/Images.xcassets/LaunchImage.launchimage/Default@2x.png
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsViewController.h b/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsViewController.h
deleted file mode 100755
index e2d5b99201d0..000000000000
--- a/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsViewController.h
+++ /dev/null
@@ -1,84 +0,0 @@
-//
-// IASKAppSettingsViewController.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <UIKit/UIKit.h>
-#import <MessageUI/MessageUI.h>
-
-#import "IASKSettingsStore.h"
-#import "IASKViewController.h"
-
-@class IASKSettingsReader;
-@class IASKAppSettingsViewController;
-@class IASKSpecifier;
-
-@protocol IASKSettingsDelegate
-- (void)settingsViewControllerDidEnd:(IASKAppSettingsViewController*)sender;
-
-@optional
-#pragma mark - UITableView header customization
-- (CGFloat) settingsViewController:(id<IASKViewController>)settingsViewController
- tableView:(UITableView *)tableView
- heightForHeaderForSection:(NSInteger)section;
-- (UIView *) settingsViewController:(id<IASKViewController>)settingsViewController
- tableView:(UITableView *)tableView
- viewForHeaderForSection:(NSInteger)section;
-
-#pragma mark - UITableView cell customization
-- (CGFloat)tableView:(UITableView*)tableView heightForSpecifier:(IASKSpecifier*)specifier;
-- (UITableViewCell*)tableView:(UITableView*)tableView cellForSpecifier:(IASKSpecifier*)specifier;
-
-#pragma mark - mail composing customization
-- (NSString*) settingsViewController:(id<IASKViewController>)settingsViewController
- mailComposeBodyForSpecifier:(IASKSpecifier*) specifier;
-
-- (UIViewController<MFMailComposeViewControllerDelegate>*) settingsViewController:(id<IASKViewController>)settingsViewController
- viewControllerForMailComposeViewForSpecifier:(IASKSpecifier*) specifier;
-
-- (void) settingsViewController:(id<IASKViewController>) settingsViewController
- mailComposeController:(MFMailComposeViewController*)controller
- didFinishWithResult:(MFMailComposeResult)result
- error:(NSError*)error;
-
-#pragma mark - respond to button taps
-- (void)settingsViewController:(IASKAppSettingsViewController*)sender buttonTappedForKey:(NSString*)key;
-- (void)settingsViewController:(IASKAppSettingsViewController*)sender tableView:(UITableView *)tableView didSelectCustomViewSpecifier:(IASKSpecifier*)specifier;
-@end
-
-
-@interface IASKAppSettingsViewController : UITableViewController <IASKViewController, UITextFieldDelegate, UINavigationControllerDelegate, MFMailComposeViewControllerDelegate> {
- id<IASKSettingsDelegate> __unsafe_unretained _delegate;
-
- NSMutableArray *_viewList;
-
- IASKSettingsReader *_settingsReader;
- id<IASKSettingsStore> _settingsStore;
- NSString *_file;
-
- id _currentFirstResponder;
-
- BOOL _showCreditsFooter;
- BOOL _showDoneButton;
-}
-
-@property (nonatomic, unsafe_unretained) IBOutlet id delegate;
-@property (nonatomic, copy) NSString *file;
-@property (nonatomic, assign) BOOL showCreditsFooter;
-@property (nonatomic, assign) BOOL showDoneButton;
-
-- (void)synchronizeSettings;
-- (IBAction)dismiss:(id)sender;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsViewController.m b/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsViewController.m
deleted file mode 100755
index 52afa8891a22..000000000000
--- a/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsViewController.m
+++ /dev/null
@@ -1,798 +0,0 @@
-//
-// IASKAppSettingsViewController.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009-2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-
-#import "IASKAppSettingsViewController.h"
-#import "IASKSettingsReader.h"
-#import "IASKSettingsStoreUserDefaults.h"
-#import "IASKPSToggleSwitchSpecifierViewCell.h"
-#import "IASKPSSliderSpecifierViewCell.h"
-#import "IASKPSTextFieldSpecifierViewCell.h"
-#import "IASKPSTitleValueSpecifierViewCell.h"
-#import "IASKSwitch.h"
-#import "IASKSlider.h"
-#import "IASKSpecifier.h"
-#import "IASKSpecifierValuesViewController.h"
-#import "IASKTextField.h"
-
-static const CGFloat KEYBOARD_ANIMATION_DURATION = 0.3;
-static const CGFloat MINIMUM_SCROLL_FRACTION = 0.2;
-static const CGFloat MAXIMUM_SCROLL_FRACTION = 0.8;
-
-static NSString *kIASKCredits = @"Powered by InAppSettingsKit"; // Leave this as-is!!!
-
-#define kIASKSpecifierValuesViewControllerIndex 0
-#define kIASKSpecifierChildViewControllerIndex 1
-
-#define kIASKCreditsViewWidth 285
-
-CGRect IASKCGRectSwap(CGRect rect);
-
-@interface IASKAppSettingsViewController ()
-@property (nonatomic, strong) NSMutableArray *viewList;
-@property (nonatomic, strong) id currentFirstResponder;
-
-- (void) setup;
-
-- (void)_textChanged:(id)sender;
-- (void)synchronizeSettings;
-- (void)userDefaultsDidChange;
-- (void)reload;
-@end
-
-@implementation IASKAppSettingsViewController
-
-@synthesize delegate = _delegate;
-@synthesize viewList = _viewList;
-@synthesize settingsReader = _settingsReader;
-@synthesize file = _file;
-@synthesize currentFirstResponder = _currentFirstResponder;
-@synthesize showCreditsFooter = _showCreditsFooter;
-@synthesize showDoneButton = _showDoneButton;
-@synthesize settingsStore = _settingsStore;
-
-#pragma mark accessors
-- (IASKSettingsReader*)settingsReader {
- if (!_settingsReader) {
- _settingsReader = [[IASKSettingsReader alloc] initWithFile:self.file];
- }
- return _settingsReader;
-}
-
-- (id<IASKSettingsStore>)settingsStore {
- if (!_settingsStore) {
- _settingsStore = [[IASKSettingsStoreUserDefaults alloc] init];
- }
- return _settingsStore;
-}
-
-- (NSString*)file {
- if (!_file) {
- return @"Root";
- }
- return _file;
-}
-
-- (void)setFile:(NSString *)file {
- if (file != _file) {
-
- _file = [file copy];
- }
-
- self.tableView.contentOffset = CGPointMake(0, 0);
- self.settingsReader = nil; // automatically initializes itself
- [self.tableView reloadData];
-}
-
-- (BOOL)isPad {
- BOOL isPad = NO;
-#if (__IPHONE_OS_VERSION_MAX_ALLOWED >= 30200)
- isPad = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad;
-#endif
- return isPad;
-}
-
-#pragma mark standard view controller methods
-- (id)init {
- return [self initWithNibName:@"IASKAppSettingsView" bundle:nil];
-}
-
-- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
- if ((self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil])) {
- // If set to YES, will add a DONE button at the right of the navigation bar
- _showDoneButton = YES;
-
- [self setup];
- }
- return self;
-}
-
-- (void)awakeFromNib {
- // If set to YES, will add a DONE button at the right of the navigation bar
- // if loaded via NIB, it's likely we sit in a TabBar- or NavigationController
- // and thus don't need the Done button
- _showDoneButton = NO;
-
- [self setup];
-}
-
-//common (NIB & code based) initialization
-- (void) setup {
- // If set to YES, will display credits for InAppSettingsKit creators
- _showCreditsFooter = YES;
-}
-
-- (NSMutableArray *)viewList {
- if (!_viewList) {
- _viewList = [[NSMutableArray alloc] init];
- [_viewList addObject:[NSDictionary dictionaryWithObjectsAndKeys:@"IASKSpecifierValuesView", @"ViewName",nil]];
- [_viewList addObject:[NSDictionary dictionaryWithObjectsAndKeys:@"IASKAppSettingsView", @"ViewName",nil]];
- }
- return _viewList;
-}
-
-- (void) viewDidLoad {
- [super viewDidLoad];
- if ([self isPad]) {
- self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLineEtched;
- }
-
- UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"Done", nil) style:UIBarButtonItemStyleBordered target:self action:@selector(handleBack)];
- [backButton setBackgroundImage:[UIImage imageNamed:@"backButton"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
- self.navigationItem.leftBarButtonItem = backButton;
-
- self.tableView.backgroundView.backgroundColor = [UIColor colorWithRed:.968627451 green:.968627451 blue:.968627451 alpha:1.0];
-}
-
-- (void)viewDidUnload {
- [super viewDidUnload];
-
- // Release any retained subviews of the main view.
- // e.g. self.myOutlet = nil;
- self.view = nil;
- self.viewList = nil;
-}
-
-- (void)viewWillAppear:(BOOL)animated {
- // if there's something selected, the value might have changed
- // so reload that row
- NSIndexPath *selectedIndexPath = [self.tableView indexPathForSelectedRow];
- if(selectedIndexPath) {
- [self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:selectedIndexPath]
- withRowAnimation:UITableViewRowAnimationNone];
- // and reselect it, so we get the nice default deselect animation from UITableViewController
- [self.tableView selectRowAtIndexPath:selectedIndexPath animated:NO scrollPosition:UITableViewScrollPositionNone];
- }
-
- self.navigationItem.rightBarButtonItem = nil;
- self.navigationController.delegate = self;
- if (_showDoneButton) {
- UIBarButtonItem *buttonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone
- target:self
- action:@selector(dismiss:)];
- self.navigationItem.rightBarButtonItem = buttonItem;
- }
- if (!self.title) {
- self.title = NSLocalizedString(@"Settings", @"");
- }
-
- if ([self.settingsStore isKindOfClass:[IASKSettingsStoreUserDefaults class]]) {
- [[NSNotificationCenter defaultCenter] addObserver:self
- selector:@selector(userDefaultsDidChange)
- name:NSUserDefaultsDidChangeNotification
- object:[NSUserDefaults standardUserDefaults]];
- [self userDefaultsDidChange]; // force update in case of changes while we were hidden
- }
- [super viewWillAppear:animated];
-}
-
-- (CGSize)contentSizeForViewInPopover {
- return [[self view] sizeThatFits:CGSizeMake(320, 2000)];
-}
-
-- (void)viewDidAppear:(BOOL)animated {
- [super viewDidAppear:animated];
-
- NSNotificationCenter *dc = [NSNotificationCenter defaultCenter];
- IASK_IF_IOS4_OR_GREATER([dc addObserver:self selector:@selector(synchronizeSettings) name:UIApplicationDidEnterBackgroundNotification object:[UIApplication sharedApplication]];);
- IASK_IF_IOS4_OR_GREATER([dc addObserver:self selector:@selector(reload) name:UIApplicationWillEnterForegroundNotification object:[UIApplication sharedApplication]];);
- [dc addObserver:self selector:@selector(synchronizeSettings) name:UIApplicationWillTerminateNotification object:[UIApplication sharedApplication]];
-}
-
-- (void)viewWillDisappear:(BOOL)animated {
- [NSObject cancelPreviousPerformRequestsWithTarget:self];
- [super viewWillDisappear:animated];
-}
-
-- (void)viewDidDisappear:(BOOL)animated {
- [[NSNotificationCenter defaultCenter] removeObserver:self];
-
- if (!self.navigationController.delegate) {
- // hide the keyboard when we're popping from the navigation controller
- [self.currentFirstResponder resignFirstResponder];
- }
-
- [super viewDidDisappear:animated];
-}
-
-- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
- return YES;
-}
-
-- (void)didReceiveMemoryWarning {
- // Releases the view if it doesn't have a superview.
- [super didReceiveMemoryWarning];
-
- // Release any cached data, images, etc that aren't in use.
-}
-
-- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
- if (![viewController isKindOfClass:[IASKAppSettingsViewController class]] && ![viewController isKindOfClass:[IASKSpecifierValuesViewController class]]) {
- [self dismiss:nil];
- }
-}
-
-- (void)dealloc {
- [[NSNotificationCenter defaultCenter] removeObserver:self];
-
- _viewList = nil;
- _file = nil;
- _currentFirstResponder = nil;
- _settingsReader = nil;
- _settingsStore = nil;
-
- _delegate = nil;
-
-}
-
-
-#pragma mark -
-#pragma mark Actions
-
-- (IBAction)dismiss:(id)sender {
- [self.settingsStore synchronize];
- self.navigationController.delegate = nil;
-
- if (self.delegate && [self.delegate conformsToProtocol:@protocol(IASKSettingsDelegate)]) {
- [self.delegate settingsViewControllerDidEnd:self];
- }
-}
-
-- (void)toggledValue:(id)sender {
- IASKSwitch *toggle = (IASKSwitch*)sender;
- IASKSpecifier *spec = [_settingsReader specifierForKey:[toggle key]];
-
- if ([toggle isOn]) {
- if ([spec trueValue] != nil) {
- [self.settingsStore setObject:[spec trueValue] forKey:[toggle key]];
- }
- else {
- [self.settingsStore setBool:YES forKey:[toggle key]];
- }
- }
- else {
- if ([spec falseValue] != nil) {
- [self.settingsStore setObject:[spec falseValue] forKey:[toggle key]];
- }
- else {
- [self.settingsStore setBool:NO forKey:[toggle key]];
- }
- }
- [[NSNotificationCenter defaultCenter] postNotificationName:kIASKAppSettingChanged
- object:[toggle key]
- userInfo:[NSDictionary dictionaryWithObject:[self.settingsStore objectForKey:[toggle key]]
- forKey:[toggle key]]];
-}
-
-- (void)sliderChangedValue:(id)sender {
- IASKSlider *slider = (IASKSlider*)sender;
- [self.settingsStore setFloat:[slider value] forKey:[slider key]];
- [[NSNotificationCenter defaultCenter] postNotificationName:kIASKAppSettingChanged
- object:[slider key]
- userInfo:[NSDictionary dictionaryWithObject:[NSNumber numberWithFloat:[slider value]]
- forKey:[slider key]]];
-}
-
-
-#pragma mark -
-#pragma mark UITableView Functions
-
-- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
- return [self.settingsReader numberOfSections];
-}
-
-- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
- return [self.settingsReader numberOfRowsForSection:section];
-}
-
-- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
- IASKSpecifier *specifier = [self.settingsReader specifierForIndexPath:indexPath];
- if ([[specifier type] isEqualToString:kIASKCustomViewSpecifier]) {
- if ([self.delegate respondsToSelector:@selector(tableView:heightForSpecifier:)]) {
- return [self.delegate tableView:tableView heightForSpecifier:specifier];
- } else {
- return 0;
- }
- }
- return tableView.rowHeight;
-}
-
-- (NSString *)tableView:(UITableView*)tableView titleForHeaderInSection:(NSInteger)section {
- NSString *header = [self.settingsReader titleForSection:section];
- if (0 == header.length) {
- return nil;
- }
- return header;
-}
-
-- (UIView *)tableView:(UITableView*)tableView viewForHeaderInSection:(NSInteger)section {
- if ([self.delegate respondsToSelector:@selector(settingsViewController:tableView:viewForHeaderForSection:)]) {
- return [self.delegate settingsViewController:self tableView:tableView viewForHeaderForSection:section];
- } else {
- return nil;
- }
-}
-
-- (CGFloat)tableView:(UITableView*)tableView heightForHeaderInSection:(NSInteger)section {
- if ([self tableView:tableView viewForHeaderInSection:section] && [self.delegate respondsToSelector:@selector(settingsViewController:tableView:heightForHeaderForSection:)]) {
- CGFloat result;
- if ((result = [self.delegate settingsViewController:self tableView:tableView heightForHeaderForSection:section])) {
- return result;
- }
-
- }
- NSString *title;
- if ((title = [self tableView:tableView titleForHeaderInSection:section])) {
- CGSize size = [title sizeWithFont:[UIFont boldSystemFontOfSize:[UIFont labelFontSize]]
- constrainedToSize:CGSizeMake(tableView.frame.size.width - 2*kIASKHorizontalPaddingGroupTitles, INFINITY)
- lineBreakMode:NSLineBreakByWordWrapping];
- return size.height+kIASKVerticalPaddingGroupTitles;
- }
- return 0;
-}
-
-- (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section
-{
- NSString *footerText = [self.settingsReader footerTextForSection:section];
- if (_showCreditsFooter && (section == [self.settingsReader numberOfSections]-1)) {
- // show credits since this is the last section
- if ((footerText == nil) || ([footerText length] == 0)) {
- // show the credits on their own
- return kIASKCredits;
- } else {
- // show the credits below the app's FooterText
- return [NSString stringWithFormat:@"%@\n\n%@", footerText, kIASKCredits];
- }
- } else {
- if ([footerText length] == 0) {
- return nil;
- }
- return [self.settingsReader footerTextForSection:section];
- }
-}
-
-- (UITableViewCell*)dequeueReusableCellWithIdentifier:(NSString*)identifier {
- UITableViewCell *cell = nil;
- if ([identifier isEqualToString:kIASKPSToggleSwitchSpecifier]) {
- cell = [[[NSBundle mainBundle] loadNibNamed:@"IASKPSToggleSwitchSpecifierViewCell"
- owner:self
- options:nil] objectAtIndex:0];
- }
- else if ([identifier isEqualToString:kIASKPSMultiValueSpecifier] || [identifier isEqualToString:kIASKPSTitleValueSpecifier]) {
- cell = [[IASKPSTitleValueSpecifierViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:identifier];
- cell.accessoryType = [identifier isEqualToString:kIASKPSMultiValueSpecifier] ? UITableViewCellAccessoryDisclosureIndicator : UITableViewCellAccessoryNone;
- }
- else if ([identifier isEqualToString:kIASKPSTextFieldSpecifier]) {
- cell = (IASKPSTextFieldSpecifierViewCell*) [[[NSBundle mainBundle] loadNibNamed:@"IASKPSTextFieldSpecifierViewCell"
- owner:self
- options:nil] objectAtIndex:0];
- }
- else if ([identifier isEqualToString:kIASKPSSliderSpecifier]) {
- cell = (IASKPSSliderSpecifierViewCell*) [[[NSBundle mainBundle] loadNibNamed:@"IASKPSSliderSpecifierViewCell"
- owner:self
- options:nil] objectAtIndex:0];
- } else if ([identifier isEqualToString:kIASKPSChildPaneSpecifier]) {
- cell = [[IASKPSTitleValueSpecifierViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:identifier];
- cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
- } else if ([identifier isEqualToString:kIASKButtonSpecifier]) {
- cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
- } else if ([identifier isEqualToString:kIASKMailComposeSpecifier]) {
- cell = [[IASKPSTitleValueSpecifierViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:identifier];
- [cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator];
- } else {
- cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
- }
- return cell;
-}
-
-- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
- IASKSpecifier *specifier = [self.settingsReader specifierForIndexPath:indexPath];
- if ([specifier.type isEqualToString:kIASKCustomViewSpecifier] && [self.delegate respondsToSelector:@selector(tableView:cellForSpecifier:)]) {
- UITableViewCell* cell = [self.delegate tableView:tableView cellForSpecifier:specifier];
- assert(nil != cell && "delegate must return a UITableViewCell for custom cell types");
- return cell;
- }
-
- UITableViewCell *cell = [self dequeueReusableCellWithIdentifier:specifier.type];
-
- if ([specifier.type isEqualToString:kIASKPSToggleSwitchSpecifier]) {
- ((IASKPSToggleSwitchSpecifierViewCell*)cell).label.text = specifier.title;
-
- id currentValue = [self.settingsStore objectForKey:specifier.key];
- BOOL toggleState;
- if (currentValue) {
- if ([currentValue isEqual:specifier.trueValue]) {
- toggleState = YES;
- } else if ([currentValue isEqual:specifier.falseValue]) {
- toggleState = NO;
- } else {
- toggleState = [currentValue boolValue];
- }
- } else {
- toggleState = specifier.defaultBoolValue;
- }
- ((IASKPSToggleSwitchSpecifierViewCell*)cell).toggle.on = toggleState;
-
- [((IASKPSToggleSwitchSpecifierViewCell*)cell).toggle addTarget:self action:@selector(toggledValue:) forControlEvents:UIControlEventValueChanged];
- ((IASKPSToggleSwitchSpecifierViewCell*)cell).toggle.key = specifier.key;
- }
- else if ([specifier.type isEqualToString:kIASKPSMultiValueSpecifier]) {
- cell.textLabel.text = specifier.title;
- cell.detailTextLabel.text = [[specifier titleForCurrentValue:[self.settingsStore objectForKey:specifier.key] != nil ?
- [self.settingsStore objectForKey:specifier.key] : specifier.defaultValue] description];
- }
- else if ([specifier.type isEqualToString:kIASKPSTitleValueSpecifier]) {
- cell.textLabel.text = specifier.title;
- id value = [self.settingsStore objectForKey:specifier.key] ? : specifier.defaultValue;
-
- NSString *stringValue;
- if (specifier.multipleValues || specifier.multipleTitles) {
- stringValue = [specifier titleForCurrentValue:value];
- } else {
- stringValue = [value description];
- }
-
- cell.detailTextLabel.text = stringValue;
- cell.userInteractionEnabled = NO;
- }
- else if ([specifier.type isEqualToString:kIASKPSTextFieldSpecifier]) {
- ((IASKPSTextFieldSpecifierViewCell*)cell).label.text = specifier.title;
-
- NSString *textValue = [self.settingsStore objectForKey:specifier.key] != nil ? [self.settingsStore objectForKey:specifier.key] : specifier.defaultStringValue;
- if (textValue && ![textValue isMemberOfClass:[NSString class]]) {
- textValue = [NSString stringWithFormat:@"%@", textValue];
- }
- IASKTextField *textField = ((IASKPSTextFieldSpecifierViewCell*)cell).textField;
- textField.text = textValue;
- textField.key = specifier.key;
- textField.delegate = self;
- textField.secureTextEntry = [specifier isSecure];
- textField.keyboardType = specifier.keyboardType;
- textField.autocapitalizationType = specifier.autocapitalizationType;
- [textField addTarget:self action:@selector(_textChanged:) forControlEvents:UIControlEventEditingChanged];
- if([specifier isSecure]){
- textField.autocorrectionType = UITextAutocorrectionTypeNo;
- } else {
- textField.autocorrectionType = specifier.autoCorrectionType;
- }
- [cell setNeedsLayout];
- }
- else if ([specifier.type isEqualToString:kIASKPSSliderSpecifier]) {
- if (specifier.minimumValueImage.length > 0) {
- ((IASKPSSliderSpecifierViewCell*)cell).minImage.image = [UIImage imageWithContentsOfFile:[_settingsReader pathForImageNamed:specifier.minimumValueImage]];
- }
-
- if (specifier.maximumValueImage.length > 0) {
- ((IASKPSSliderSpecifierViewCell*)cell).maxImage.image = [UIImage imageWithContentsOfFile:[_settingsReader pathForImageNamed:specifier.maximumValueImage]];
- }
-
- IASKSlider *slider = ((IASKPSSliderSpecifierViewCell*)cell).slider;
- slider.minimumValue = specifier.minimumValue;
- slider.maximumValue = specifier.maximumValue;
- slider.value = [self.settingsStore objectForKey:specifier.key] != nil ? [[self.settingsStore objectForKey:specifier.key] floatValue] : [specifier.defaultValue floatValue];
- [slider addTarget:self action:@selector(sliderChangedValue:) forControlEvents:UIControlEventValueChanged];
- slider.key = specifier.key;
- [cell setNeedsLayout];
- }
- else if ([specifier.type isEqualToString:kIASKPSChildPaneSpecifier]) {
- cell.textLabel.text = specifier.title;
- } else if ([specifier.type isEqualToString:kIASKOpenURLSpecifier] || [specifier.type isEqualToString:kIASKMailComposeSpecifier]) {
- cell.textLabel.text = specifier.title;
- cell.detailTextLabel.text = [specifier.defaultValue description];
- } else if ([specifier.type isEqualToString:kIASKButtonSpecifier]) {
- NSString *value = [self.settingsStore objectForKey:specifier.key];
- cell.textLabel.text = [value isKindOfClass:[NSString class]] ? [self.settingsReader titleForStringId:value] : specifier.title;
- cell.textLabel.textAlignment = UITextAlignmentCenter;
- } else {
- cell.textLabel.text = specifier.title;
- }
- return cell;
-}
-
-- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath {
- //create a set of specifier types that can't be selected
- static NSSet* noSelectionTypes = nil;
- if(nil == noSelectionTypes) {
- noSelectionTypes = [NSSet setWithObjects:kIASKPSToggleSwitchSpecifier, kIASKPSSliderSpecifier, nil];
- }
-
- IASKSpecifier *specifier = [self.settingsReader specifierForIndexPath:indexPath];
- if([noSelectionTypes containsObject:specifier.type]) {
- return nil;
- } else {
- return indexPath;
- }
-}
-
-- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
- IASKSpecifier *specifier = [self.settingsReader specifierForIndexPath:indexPath];
-
- //switches and sliders can't be selected (should be captured by tableView:willSelectRowAtIndexPath: delegate method)
- assert(![[specifier type] isEqualToString:kIASKPSToggleSwitchSpecifier]);
- assert(![[specifier type] isEqualToString:kIASKPSSliderSpecifier]);
-
- if ([[specifier type] isEqualToString:kIASKPSMultiValueSpecifier]) {
- IASKSpecifierValuesViewController *targetViewController = [[self.viewList objectAtIndex:kIASKSpecifierValuesViewControllerIndex] objectForKey:@"viewController"];
-
- if (targetViewController == nil) {
- // the view controller has not been created yet, create it and set it to our viewList array
- // create a new dictionary with the new view controller
- NSMutableDictionary *newItemDict = [NSMutableDictionary dictionaryWithCapacity:3];
- [newItemDict addEntriesFromDictionary: [self.viewList objectAtIndex:kIASKSpecifierValuesViewControllerIndex]]; // copy the title and explain strings
-
- targetViewController = [[IASKSpecifierValuesViewController alloc] initWithNibName:@"IASKSpecifierValuesView" bundle:nil];
- // add the new view controller to the dictionary and then to the 'viewList' array
- [newItemDict setObject:targetViewController forKey:@"viewController"];
- [self.viewList replaceObjectAtIndex:kIASKSpecifierValuesViewControllerIndex withObject:newItemDict];
-
- // load the view controll back in to push it
- targetViewController = [[self.viewList objectAtIndex:kIASKSpecifierValuesViewControllerIndex] objectForKey:@"viewController"];
- }
- [targetViewController setCurrentSpecifier:specifier];
- targetViewController.settingsReader = self.settingsReader;
- targetViewController.settingsStore = self.settingsStore;
- [[self navigationController] pushViewController:targetViewController animated:YES];
- }
- else if ([[specifier type] isEqualToString:kIASKPSTextFieldSpecifier]) {
- IASKPSTextFieldSpecifierViewCell *textFieldCell = (id)[tableView cellForRowAtIndexPath:indexPath];
- [textFieldCell.textField becomeFirstResponder];
- }
- else if ([[specifier type] isEqualToString:kIASKPSChildPaneSpecifier]) {
-
-
- Class vcClass = [specifier viewControllerClass];
- if (vcClass) {
- SEL initSelector = [specifier viewControllerSelector];
- if (!initSelector) {
- initSelector = @selector(init);
- }
- UIViewController * vc = [vcClass alloc];
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
- [vc performSelector:initSelector withObject:[specifier file] withObject:[specifier key]];
-#pragma clang diagnostic pop
- if ([vc respondsToSelector:@selector(setDelegate:)]) {
- [vc performSelector:@selector(setDelegate:) withObject:self.delegate];
- }
- if ([vc respondsToSelector:@selector(setSettingsStore:)]) {
- [vc performSelector:@selector(setSettingsStore:) withObject:self.settingsStore];
- }
- self.navigationController.delegate = nil;
- [self.navigationController pushViewController:vc animated:YES];
-
- return;
- }
-
- if (nil == [specifier file]) {
- [tableView deselectRowAtIndexPath:indexPath animated:YES];
- return;
- }
-
- IASKAppSettingsViewController *targetViewController = [[self.viewList objectAtIndex:kIASKSpecifierChildViewControllerIndex] objectForKey:@"viewController"];
-
- if (targetViewController == nil) {
- // the view controller has not been created yet, create it and set it to our viewList array
- // create a new dictionary with the new view controller
- NSMutableDictionary *newItemDict = [NSMutableDictionary dictionaryWithCapacity:3];
- [newItemDict addEntriesFromDictionary: [self.viewList objectAtIndex:kIASKSpecifierChildViewControllerIndex]]; // copy the title and explain strings
-
- targetViewController = [[[self class] alloc] initWithNibName:@"IASKAppSettingsView" bundle:nil];
- targetViewController.showDoneButton = NO;
- targetViewController.settingsStore = self.settingsStore;
- targetViewController.delegate = self.delegate;
-
- // add the new view controller to the dictionary and then to the 'viewList' array
- [newItemDict setObject:targetViewController forKey:@"viewController"];
- [self.viewList replaceObjectAtIndex:kIASKSpecifierChildViewControllerIndex withObject:newItemDict];
-
- // load the view controll back in to push it
- targetViewController = [[self.viewList objectAtIndex:kIASKSpecifierChildViewControllerIndex] objectForKey:@"viewController"];
- }
- targetViewController.file = specifier.file;
- targetViewController.title = specifier.title;
- targetViewController.showCreditsFooter = NO;
- [[self navigationController] pushViewController:targetViewController animated:YES];
- } else if ([[specifier type] isEqualToString:kIASKOpenURLSpecifier]) {
- [tableView deselectRowAtIndexPath:indexPath animated:YES];
- [[UIApplication sharedApplication] openURL:[NSURL URLWithString:specifier.file]];
- } else if ([[specifier type] isEqualToString:kIASKButtonSpecifier]) {
- [tableView deselectRowAtIndexPath:indexPath animated:YES];
- if ([self.delegate respondsToSelector:@selector(settingsViewController:buttonTappedForKey:)]) {
- [self.delegate settingsViewController:self buttonTappedForKey:[specifier key]];
- } else {
- // legacy code, provided for backward compatibility
- // the delegate mechanism above is much cleaner and doesn't leak
- Class buttonClass = [specifier buttonClass];
- SEL buttonAction = [specifier buttonAction];
- if ([buttonClass respondsToSelector:buttonAction]) {
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
- [buttonClass performSelector:buttonAction withObject:self withObject:[specifier key]];
-#pragma clang diagnostic pop
- NSLog(@"InAppSettingsKit Warning: Using IASKButtonSpecifier without implementing the delegate method is deprecated");
- }
- }
- } else if ([[specifier type] isEqualToString:kIASKMailComposeSpecifier]) {
- [tableView deselectRowAtIndexPath:indexPath animated:YES];
- if ([MFMailComposeViewController canSendMail]) {
- MFMailComposeViewController *mailViewController = [[MFMailComposeViewController alloc] init];
- mailViewController.navigationBar.barStyle = self.navigationController.navigationBar.barStyle;
- mailViewController.navigationBar.tintColor = self.navigationController.navigationBar.tintColor;
-
- if ([specifier localizedObjectForKey:kIASKMailComposeSubject]) {
- [mailViewController setSubject:[specifier localizedObjectForKey:kIASKMailComposeSubject]];
- }
- if ([[specifier specifierDict] objectForKey:kIASKMailComposeToRecipents]) {
- [mailViewController setToRecipients:[[specifier specifierDict] objectForKey:kIASKMailComposeToRecipents]];
- }
- if ([[specifier specifierDict] objectForKey:kIASKMailComposeCcRecipents]) {
- [mailViewController setCcRecipients:[[specifier specifierDict] objectForKey:kIASKMailComposeCcRecipents]];
- }
- if ([[specifier specifierDict] objectForKey:kIASKMailComposeBccRecipents]) {
- [mailViewController setBccRecipients:[[specifier specifierDict] objectForKey:kIASKMailComposeBccRecipents]];
- }
- if ([specifier localizedObjectForKey:kIASKMailComposeBody]) {
- BOOL isHTML = NO;
- if ([[specifier specifierDict] objectForKey:kIASKMailComposeBodyIsHTML]) {
- isHTML = [[[specifier specifierDict] objectForKey:kIASKMailComposeBodyIsHTML] boolValue];
- }
-
- if ([self.delegate respondsToSelector:@selector(settingsViewController:mailComposeBodyForSpecifier:)]) {
- [mailViewController setMessageBody:[self.delegate settingsViewController:self
- mailComposeBodyForSpecifier:specifier] isHTML:isHTML];
- }
- else {
- [mailViewController setMessageBody:[specifier localizedObjectForKey:kIASKMailComposeBody] isHTML:isHTML];
- }
- }
-
- UIViewController<MFMailComposeViewControllerDelegate> *vc = nil;
-
- if ([self.delegate respondsToSelector:@selector(settingsViewController:viewControllerForMailComposeViewForSpecifier:)]) {
- vc = [self.delegate settingsViewController:self viewControllerForMailComposeViewForSpecifier:specifier];
- }
-
- if (vc == nil) {
- vc = self;
- }
-
- mailViewController.mailComposeDelegate = vc;
- [vc presentModalViewController:mailViewController animated:YES];
- } else {
- UIAlertView *alert = [[UIAlertView alloc]
- initWithTitle:NSLocalizedString(@"Mail not configured", @"InAppSettingsKit")
- message:NSLocalizedString(@"This device is not configured for sending Email. Please configure the Mail settings in the Settings app.", @"InAppSettingsKit")
- delegate: nil
- cancelButtonTitle:NSLocalizedString(@"OK", @"InAppSettingsKit")
- otherButtonTitles:nil];
- [alert show];
- }
-
- } else if ([[specifier type] isEqualToString:kIASKCustomViewSpecifier] && [self.delegate respondsToSelector:@selector(settingsViewController:tableView:didSelectCustomViewSpecifier:)]) {
- [self.delegate settingsViewController:self tableView:tableView didSelectCustomViewSpecifier:specifier];
- } else {
- [tableView deselectRowAtIndexPath:indexPath animated:NO];
- }
-}
-
-
-#pragma mark -
-#pragma mark MFMailComposeViewControllerDelegate Function
-
--(void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error {
-
- // Forward the mail compose delegate
- if ([self.delegate respondsToSelector:@selector(settingsViewController:mailComposeController:didFinishWithResult:error:)]) {
- [self.delegate settingsViewController:self
- mailComposeController:controller
- didFinishWithResult:result
- error:error];
- }
-
- // NOTE: No error handling is done here
- [self dismissModalViewControllerAnimated:YES];
-}
-
-#pragma mark -
-#pragma mark UITextFieldDelegate Functions
-
-- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
- self.currentFirstResponder = textField;
- return YES;
-}
-
-- (void)_textChanged:(id)sender {
- IASKTextField *text = (IASKTextField*)sender;
- [_settingsStore setObject:[text text] forKey:[text key]];
- [[NSNotificationCenter defaultCenter] postNotificationName:kIASKAppSettingChanged
- object:[text key]
- userInfo:[NSDictionary dictionaryWithObject:[text text]
- forKey:[text key]]];
-}
-
-- (BOOL)textFieldShouldReturn:(UITextField *)textField{
- [textField resignFirstResponder];
- self.currentFirstResponder = nil;
- return YES;
-}
-
-
-#pragma mark Notifications
-
-- (void)synchronizeSettings {
- [_settingsStore synchronize];
-}
-
-static NSDictionary *oldUserDefaults = nil;
-- (void)userDefaultsDidChange {
- NSDictionary *currentDict = [NSUserDefaults standardUserDefaults].dictionaryRepresentation;
- NSMutableArray *indexPathsToUpdate = [NSMutableArray array];
- for (NSString *key in currentDict.allKeys) {
- if (![[oldUserDefaults valueForKey:key] isEqual:[currentDict valueForKey:key]]) {
- NSIndexPath *path = [self.settingsReader indexPathForKey:key];
- if (path && ![[self.settingsReader specifierForKey:key].type isEqualToString:kIASKCustomViewSpecifier]) {
- [indexPathsToUpdate addObject:path];
- }
- }
- }
- oldUserDefaults = currentDict;
-
-
- for (UITableViewCell *cell in self.tableView.visibleCells) {
- if ([cell isKindOfClass:[IASKPSTextFieldSpecifierViewCell class]] && [((IASKPSTextFieldSpecifierViewCell*)cell).textField isFirstResponder]) {
- [indexPathsToUpdate removeObject:[self.tableView indexPathForCell:cell]];
- }
- }
- if (indexPathsToUpdate.count) {
- [self.tableView reloadRowsAtIndexPaths:indexPathsToUpdate withRowAnimation:UITableViewRowAnimationNone];
- }
-}
-
-- (void)reload {
- // wait 0.5 sec until UI is available after applicationWillEnterForeground
- [self.tableView performSelector:@selector(reloadData) withObject:nil afterDelay:0.5];
-}
-
-#pragma mark CGRect Utility function
-CGRect IASKCGRectSwap(CGRect rect) {
- CGRect newRect;
- newRect.origin.x = rect.origin.y;
- newRect.origin.y = rect.origin.x;
- newRect.size.width = rect.size.height;
- newRect.size.height = rect.size.width;
- return newRect;
-}
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsWebViewController.h b/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsWebViewController.h
deleted file mode 100755
index c13c30edccbc..000000000000
--- a/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsWebViewController.h
+++ /dev/null
@@ -1,30 +0,0 @@
-//
-// IASKAppSettingsWebViewController.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <UIKit/UIKit.h>
-#import <MessageUI/MessageUI.h>
-
-@interface IASKAppSettingsWebViewController : UIViewController <UIWebViewDelegate, MFMailComposeViewControllerDelegate> {
- UIWebView *webView;
- NSURL *url;
-}
-
-- (id)initWithFile:(NSString*)htmlFileName key:(NSString*)key;
-
-@property (nonatomic, strong) IBOutlet UIWebView *webView;
-@property (nonatomic, strong) NSURL *url;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsWebViewController.m b/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsWebViewController.m
deleted file mode 100755
index 99ecd449430e..000000000000
--- a/ios/iosremote/InAppSettingsKit/Controllers/IASKAppSettingsWebViewController.m
+++ /dev/null
@@ -1,144 +0,0 @@
-//
-// IASKAppSettingsWebViewController.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKAppSettingsWebViewController.h"
-
-@implementation IASKAppSettingsWebViewController
-
-@synthesize url;
-@synthesize webView;
-
-- (id)initWithFile:(NSString*)urlString key:(NSString*)key {
- if (!(self = [super initWithNibName:nil bundle:nil])) {
- return nil;
- }
-
- self.url = [NSURL URLWithString:urlString];
- if (!self.url || ![self.url scheme]) {
- NSString *path = [[NSBundle mainBundle] pathForResource:[urlString stringByDeletingPathExtension] ofType:[urlString pathExtension]];
- if(path)
- self.url = [NSURL fileURLWithPath:path];
- else
- self.url = nil;
- }
- return self;
-}
-
-
-- (void)dealloc {
- webView = nil;
- url = nil;
-
-}
-
-- (void)viewWillAppear:(BOOL)animated {
- [webView loadRequest:[NSURLRequest requestWithURL:self.url]];
-}
-
-- (void)viewDidUnload {
- [super viewDidUnload];
- self.webView = nil;
-}
-
-- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
- return YES;
-}
-
-- (void)webViewDidFinishLoad:(UIWebView *)webView {
- self.navigationItem.title = [self.webView stringByEvaluatingJavaScriptFromString:@"document.title"];
-}
-
-- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
- NSURL *newURL = [request URL];
-
- // intercept mailto URL and send it to an in-app Mail compose view instead
- if ([[newURL scheme] isEqualToString:@"mailto"]) {
-
- NSArray *rawURLparts = [[newURL resourceSpecifier] componentsSeparatedByString:@"?"];
- if (rawURLparts.count > 2) {
- return NO; // invalid URL
- }
-
- MFMailComposeViewController *mailViewController = [[MFMailComposeViewController alloc] init];
- mailViewController.mailComposeDelegate = self;
-
- NSMutableArray *toRecipients = [NSMutableArray array];
- NSString *defaultRecipient = [rawURLparts objectAtIndex:0];
- if (defaultRecipient.length) {
- [toRecipients addObject:defaultRecipient];
- }
-
- if (rawURLparts.count == 2) {
- NSString *queryString = [rawURLparts objectAtIndex:1];
-
- NSArray *params = [queryString componentsSeparatedByString:@"&"];
- for (NSString *param in params) {
- NSArray *keyValue = [param componentsSeparatedByString:@"="];
- if (keyValue.count != 2) {
- continue;
- }
- NSString *key = [[keyValue objectAtIndex:0] lowercaseString];
- NSString *value = [keyValue objectAtIndex:1];
-
- value = (__bridge_transfer NSString *)CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault,
- (__bridge CFStringRef)value,
- CFSTR(""),
- kCFStringEncodingUTF8);
- if ([key isEqualToString:@"subject"]) {
- [mailViewController setSubject:value];
- }
-
- if ([key isEqualToString:@"body"]) {
- [mailViewController setMessageBody:value isHTML:NO];
- }
-
- if ([key isEqualToString:@"to"]) {
- [toRecipients addObjectsFromArray:[value componentsSeparatedByString:@","]];
- }
-
- if ([key isEqualToString:@"cc"]) {
- NSArray *recipients = [value componentsSeparatedByString:@","];
- [mailViewController setCcRecipients:recipients];
- }
-
- if ([key isEqualToString:@"bcc"]) {
- NSArray *recipients = [value componentsSeparatedByString:@","];
- [mailViewController setBccRecipients:recipients];
- }
- }
- }
-
- [mailViewController setToRecipients:toRecipients];
-
- [self presentModalViewController:mailViewController animated:YES];
- return NO;
- }
-
- // open inline if host is the same, otherwise, pass to the system
- if (![newURL host] || [[newURL host] isEqualToString:[self.url host]]) {
- return YES;
- }
- [[UIApplication sharedApplication] openURL:newURL];
- return NO;
-}
-
-- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error {
- [self dismissModalViewControllerAnimated:YES];
-}
-
-
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Controllers/IASKSpecifierValuesViewController.h b/ios/iosremote/InAppSettingsKit/Controllers/IASKSpecifierValuesViewController.h
deleted file mode 100755
index d733d4d3fd3d..000000000000
--- a/ios/iosremote/InAppSettingsKit/Controllers/IASKSpecifierValuesViewController.h
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// IASKSpecifierValuesViewController.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <UIKit/UIKit.h>
-#import "IASKSettingsStore.h"
-#import "IASKViewController.h"
-@class IASKSpecifier;
-@class IASKSettingsReader;
-
-@interface IASKSpecifierValuesViewController : UIViewController<IASKViewController> {
- UITableView *_tableView;
-
- IASKSpecifier *_currentSpecifier;
- NSIndexPath *_checkedItem;
- IASKSettingsReader *_settingsReader;
- id<IASKSettingsStore> _settingsStore;
-}
-
-@property (nonatomic, strong) IBOutlet UITableView *tableView;
-@property (nonatomic, strong) NSIndexPath *checkedItem;
-@property (nonatomic, strong) IASKSpecifier *currentSpecifier;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Controllers/IASKSpecifierValuesViewController.m b/ios/iosremote/InAppSettingsKit/Controllers/IASKSpecifierValuesViewController.m
deleted file mode 100755
index f1617887e06c..000000000000
--- a/ios/iosremote/InAppSettingsKit/Controllers/IASKSpecifierValuesViewController.m
+++ /dev/null
@@ -1,204 +0,0 @@
-//
-// IASKSpecifierValuesViewController.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKSpecifierValuesViewController.h"
-#import "IASKSpecifier.h"
-#import "IASKSettingsReader.h"
-#import "IASKSettingsStoreUserDefaults.h"
-
-#define kCellValue @"kCellValue"
-
-@interface IASKSpecifierValuesViewController()
-- (void)userDefaultsDidChange;
-@end
-
-@implementation IASKSpecifierValuesViewController
-
-@synthesize tableView=_tableView;
-@synthesize currentSpecifier=_currentSpecifier;
-@synthesize checkedItem=_checkedItem;
-@synthesize settingsReader = _settingsReader;
-@synthesize settingsStore = _settingsStore;
-
-- (void) updateCheckedItem {
- NSInteger index;
-
- // Find the currently checked item
- if([self.settingsStore objectForKey:[_currentSpecifier key]]) {
- index = [[_currentSpecifier multipleValues] indexOfObject:[self.settingsStore objectForKey:[_currentSpecifier key]]];
- } else {
- index = [[_currentSpecifier multipleValues] indexOfObject:[_currentSpecifier defaultValue]];
- }
- [self setCheckedItem:[NSIndexPath indexPathForRow:index inSection:0]];
-}
-
-- (id<IASKSettingsStore>)settingsStore {
- if(_settingsStore == nil) {
- _settingsStore = [[IASKSettingsStoreUserDefaults alloc] init];
- }
- return _settingsStore;
-}
-
-- (void)viewDidLoad
-{
- [super viewDidLoad];
- UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"Done", nil) style:UIBarButtonItemStyleBordered target:self action:@selector(handleBack)];
- [backButton setBackgroundImage:[UIImage imageNamed:@"backButton"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
- self.navigationItem.leftBarButtonItem = backButton;
-
- self.view.backgroundColor = [UIColor colorWithRed:.968627451 green:.968627451 blue:.968627451 alpha:1.0];
-}
-
-- (void)viewWillAppear:(BOOL)animated {
- if (_currentSpecifier) {
- [self setTitle:[_currentSpecifier title]];
- [self updateCheckedItem];
- }
-
- if (_tableView) {
- [_tableView reloadData];
-
- // Make sure the currently checked item is visible
- [_tableView scrollToRowAtIndexPath:[self checkedItem] atScrollPosition:UITableViewScrollPositionMiddle animated:NO];
- }
- [super viewWillAppear:animated];
-}
-
-- (void)viewDidAppear:(BOOL)animated {
- [_tableView flashScrollIndicators];
- [super viewDidAppear:animated];
- [[NSNotificationCenter defaultCenter] addObserver:self
- selector:@selector(userDefaultsDidChange)
- name:NSUserDefaultsDidChangeNotification
- object:[NSUserDefaults standardUserDefaults]];
-}
-
-- (void)viewDidDisappear:(BOOL)animated {
- [[NSNotificationCenter defaultCenter] removeObserver:self name:NSUserDefaultsDidChangeNotification object:nil];
- [super viewDidDisappear:animated];
-}
-
-
-- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
- return YES;
-}
-
-- (void)didReceiveMemoryWarning {
- // Releases the view if it doesn't have a superview.
- [super didReceiveMemoryWarning];
-
- // Release any cached data, images, etc that aren't in use.
-}
-
-- (void)viewDidUnload {
- // Release any retained subviews of the main view.
- // e.g. self.myOutlet = nil;
- self.tableView = nil;
-}
-
-
-- (void)dealloc {
- _currentSpecifier = nil;
- _checkedItem = nil;
- _settingsReader = nil;
- _settingsStore = nil;
- _tableView = nil;
-}
-
-
-#pragma mark -
-#pragma mark UITableView delegates
-
-- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
- return 1;
-}
-
-- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
- return [_currentSpecifier multipleValuesCount];
-}
-
-- (void)selectCell:(UITableViewCell *)cell {
- [cell setAccessoryType:UITableViewCellAccessoryCheckmark];
- [[cell textLabel] setTextColor:kIASKgrayBlueColor];
-}
-
-- (void)deselectCell:(UITableViewCell *)cell {
- [cell setAccessoryType:UITableViewCellAccessoryNone];
- [[cell textLabel] setTextColor:[UIColor darkTextColor]];
-}
-
-- (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section {
- return [_currentSpecifier footerText];
-}
-
-- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
- UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:kCellValue];
- NSArray *titles = [_currentSpecifier multipleTitles];
-
- if (!cell) {
- cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:kCellValue];
- }
-
- if ([indexPath isEqual:[self checkedItem]]) {
- [self selectCell:cell];
- } else {
- [self deselectCell:cell];
- }
-
- @try {
- [[cell textLabel] setText:[self.settingsReader titleForStringId:[titles objectAtIndex:indexPath.row]]];
- }
- @catch (NSException * e) {}
- return cell;
-}
-
-- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
-
- if (indexPath == [self checkedItem]) {
- [tableView deselectRowAtIndexPath:indexPath animated:YES];
- return;
- }
-
- NSArray *values = [_currentSpecifier multipleValues];
-
- [tableView deselectRowAtIndexPath:indexPath animated:YES];
- [self deselectCell:[tableView cellForRowAtIndexPath:[self checkedItem]]];
- [self selectCell:[tableView cellForRowAtIndexPath:indexPath]];
- [self setCheckedItem:indexPath];
-
- [self.settingsStore setObject:[values objectAtIndex:indexPath.row] forKey:[_currentSpecifier key]];
- [self.settingsStore synchronize];
- [[NSNotificationCenter defaultCenter] postNotificationName:kIASKAppSettingChanged
- object:[_currentSpecifier key]
- userInfo:[NSDictionary dictionaryWithObject:[values objectAtIndex:indexPath.row]
- forKey:[_currentSpecifier key]]];
-}
-
-#pragma mark Notifications
-
-- (void)userDefaultsDidChange {
- NSIndexPath *oldCheckedItem = self.checkedItem;
- if(_currentSpecifier) {
- [self updateCheckedItem];
- }
-
- // only reload the table if it had changed; prevents animation cancellation
- if (![self.checkedItem isEqual:oldCheckedItem]) {
- [_tableView reloadData];
- }
-}
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Controllers/IASKViewController.h b/ios/iosremote/InAppSettingsKit/Controllers/IASKViewController.h
deleted file mode 100755
index 2ab89a6ff943..000000000000
--- a/ios/iosremote/InAppSettingsKit/Controllers/IASKViewController.h
+++ /dev/null
@@ -1,26 +0,0 @@
-//
-// IASKAppSettingsViewController.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-@class IASKSettingsReader;
-@protocol IASKSettingsStore;
-
-// protocol all IASK view controllers implement
-@protocol IASKViewController <NSObject>
-
-@property (nonatomic, retain) IASKSettingsReader* settingsReader;
-@property (nonatomic, retain) id<IASKSettingsStore> settingsStore;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsReader.h b/ios/iosremote/InAppSettingsKit/Models/IASKSettingsReader.h
deleted file mode 100755
index 2af1fc9e8ad7..000000000000
--- a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsReader.h
+++ /dev/null
@@ -1,144 +0,0 @@
-//
-// IASKSettingsReader.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <Foundation/Foundation.h>
-
-#define kIASKPreferenceSpecifiers @"PreferenceSpecifiers"
-#define kIASKType @"Type"
-#define kIASKTitle @"Title"
-#define kIASKFooterText @"FooterText"
-#define kIASKKey @"Key"
-#define kIASKFile @"File"
-#define kIASKDefaultValue @"DefaultValue"
-#define kIASKMinimumValue @"MinimumValue"
-#define kIASKMaximumValue @"MaximumValue"
-#define kIASKTrueValue @"TrueValue"
-#define kIASKFalseValue @"FalseValue"
-#define kIASKIsSecure @"IsSecure"
-#define KIASKKeyboardType @"KeyboardType"
-#define kIASKAutocapitalizationType @"AutocapitalizationType"
-#define kIASKAutoCorrectionType @"AutocorrectionType"
-#define kIASKValues @"Values"
-#define kIASKTitles @"Titles"
-#define kIASKViewControllerClass @"IASKViewControllerClass"
-#define kIASKViewControllerSelector @"IASKViewControllerSelector"
-#define kIASKButtonClass @"IASKButtonClass"
-#define kIASKButtonAction @"IASKButtonAction"
-#define kIASKMailComposeToRecipents @"IASKMailComposeToRecipents"
-#define kIASKMailComposeCcRecipents @"IASKMailComposeCcRecipents"
-#define kIASKMailComposeBccRecipents @"IASKMailComposeBccRecipents"
-#define kIASKMailComposeSubject @"IASKMailComposeSubject"
-#define kIASKMailComposeBody @"IASKMailComposeBody"
-#define kIASKMailComposeBodyIsHTML @"IASKMailComposeBodyIsHTML"
-#define kIASKKeyboardAlphabet @"Alphabet"
-#define kIASKKeyboardNumbersAndPunctuation @"NumbersAndPunctuation"
-#define kIASKKeyboardNumberPad @"NumberPad"
-#define kIASKKeyboardDecimalPad @"DecimalPad"
-
-#define KIASKKeyboardURL @"URL"
-#define kIASKKeyboardEmailAddress @"EmailAddress"
-#define kIASKAutoCapNone @"None"
-#define kIASKAutoCapSentences @"Sentences"
-#define kIASKAutoCapWords @"Words"
-#define kIASKAutoCapAllCharacters @"AllCharacters"
-#define kIASKAutoCorrDefault @"Default"
-#define kIASKAutoCorrNo @"No"
-#define kIASKAutoCorrYes @"Yes"
-#define kIASKMinimumValueImage @"MinimumValueImage"
-#define kIASKMaximumValueImage @"MaximumValueImage"
-
-#define kIASKPSGroupSpecifier @"PSGroupSpecifier"
-#define kIASKPSToggleSwitchSpecifier @"PSToggleSwitchSpecifier"
-#define kIASKPSMultiValueSpecifier @"PSMultiValueSpecifier"
-#define kIASKPSSliderSpecifier @"PSSliderSpecifier"
-#define kIASKPSTitleValueSpecifier @"PSTitleValueSpecifier"
-#define kIASKPSTextFieldSpecifier @"PSTextFieldSpecifier"
-#define kIASKPSChildPaneSpecifier @"PSChildPaneSpecifier"
-#define kIASKOpenURLSpecifier @"IASKOpenURLSpecifier"
-#define kIASKButtonSpecifier @"IASKButtonSpecifier"
-#define kIASKMailComposeSpecifier @"IASKMailComposeSpecifier"
-#define kIASKCustomViewSpecifier @"IASKCustomViewSpecifier"
-
-#define kIASKBundleFolder @"Settings.bundle"
-#define kIASKBundleFolderAlt @"InAppSettings.bundle"
-#define kIASKBundleFilename @"Root.plist"
-#define KIASKBundleLocaleFolderExtension @".lproj"
-
-#define kIASKAppSettingChanged @"kAppSettingChanged"
-
-#define kIASKSectionHeaderIndex 0
-
-#define kIASKSliderNoImagesPadding 11
-#define kIASKSliderImagesPadding 43
-
-
-#define kIASKTableWidth 320
-#define kIASKSpacing 5
-#define kIASKMinLabelWidth 97
-#define kIASKMinValueWidth 35
-#define kIASKPaddingLeft 9
-#define kIASKPaddingRight 10
-#define kIASKHorizontalPaddingGroupTitles 19
-#define kIASKVerticalPaddingGroupTitles 15
-
-#define kIASKLabelFontSize 17
-#define kIASKgrayBlueColor [UIColor colorWithRed:0.318 green:0.4 blue:0.569 alpha:1.0]
-
-#ifndef kCFCoreFoundationVersionNumber_iPhoneOS_4_0
-#define kCFCoreFoundationVersionNumber_iPhoneOS_4_0 550.32
-#endif
-
-#ifndef kCFCoreFoundationVersionNumber_iPhoneOS_4_1
-#define kCFCoreFoundationVersionNumber_iPhoneOS_4_1 550.38
-#endif
-
-
-#define IASK_IF_IOS4_OR_GREATER(...) \
-if (kCFCoreFoundationVersionNumber >= kCFCoreFoundationVersionNumber_iPhoneOS_4_0) \
-{ \
-__VA_ARGS__ \
-}
-
-@class IASKSpecifier;
-
-@interface IASKSettingsReader : NSObject {
- NSString *_path;
- NSString *_localizationTable;
- NSString *_bundlePath;
- NSDictionary *_settingsBundle;
- NSArray *_dataSource;
- NSBundle *_bundle;
-}
-
-- (id)initWithFile:(NSString*)file;
-- (NSInteger)numberOfSections;
-- (NSInteger)numberOfRowsForSection:(NSInteger)section;
-- (IASKSpecifier*)specifierForIndexPath:(NSIndexPath*)indexPath;
-- (NSIndexPath*)indexPathForKey:(NSString*)key;
-- (IASKSpecifier*)specifierForKey:(NSString*)key;
-- (NSString*)titleForSection:(NSInteger)section;
-- (NSString*)keyForSection:(NSInteger)section;
-- (NSString*)footerTextForSection:(NSInteger)section;
-- (NSString*)titleForStringId:(NSString*)stringId;
-- (NSString*)pathForImageNamed:(NSString*)image;
-
-@property (nonatomic, strong) NSString *path;
-@property (nonatomic, strong) NSString *localizationTable;
-@property (nonatomic, strong) NSString *bundlePath;
-@property (nonatomic, strong) NSDictionary *settingsBundle;
-@property (nonatomic, strong) NSArray *dataSource;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsReader.m b/ios/iosremote/InAppSettingsKit/Models/IASKSettingsReader.m
deleted file mode 100755
index 3f730919a702..000000000000
--- a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsReader.m
+++ /dev/null
@@ -1,266 +0,0 @@
-//
-// IASKSettingsReader.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKSettingsReader.h"
-#import "IASKSpecifier.h"
-
-@interface IASKSettingsReader (private)
-- (void)_reinterpretBundle:(NSDictionary*)settingsBundle;
-- (BOOL)_sectionHasHeading:(NSInteger)section;
-- (NSString *)platformSuffix;
-- (NSString *)locateSettingsFile:(NSString *)file;
-
-@end
-
-@implementation IASKSettingsReader
-
-@synthesize path=_path,
-localizationTable=_localizationTable,
-bundlePath=_bundlePath,
-settingsBundle=_settingsBundle,
-dataSource=_dataSource;
-
-- (id)init {
- return [self initWithFile:@"Root"];
-}
-
-- (id)initWithFile:(NSString*)file {
- if ((self=[super init])) {
-
-
- self.path = [self locateSettingsFile: file];
- [self setSettingsBundle:[NSDictionary dictionaryWithContentsOfFile:self.path]];
- self.bundlePath = [self.path stringByDeletingLastPathComponent];
- _bundle = [NSBundle bundleWithPath:[self bundlePath]];
-
- // Look for localization file
- self.localizationTable = [self.settingsBundle objectForKey:@"StringsTable"];
- if (!self.localizationTable)
- {
- // Look for localization file using filename
- self.localizationTable = [[[[self.path stringByDeletingPathExtension] // removes '.plist'
- stringByDeletingPathExtension] // removes potential '.inApp'
- lastPathComponent] // strip absolute path
- stringByReplacingOccurrencesOfString:[self platformSuffix] withString:@""]; // removes potential '~device' (~ipad, ~iphone)
- if([_bundle pathForResource:self.localizationTable ofType:@"strings"] == nil){
- // Could not find the specified localization: use default
- self.localizationTable = @"Root";
- }
- }
-
- if (_settingsBundle) {
- [self _reinterpretBundle:_settingsBundle];
- }
- }
- return self;
-}
-
-- (void)dealloc {
- _path = nil;
- _localizationTable = nil;
- _bundlePath = nil;
- _settingsBundle = nil;
- _dataSource = nil;
- _bundle = nil;
-
-}
-
-- (void)_reinterpretBundle:(NSDictionary*)settingsBundle {
- NSArray *preferenceSpecifiers = [settingsBundle objectForKey:kIASKPreferenceSpecifiers];
- NSInteger sectionCount = -1;
- NSMutableArray *dataSource = [[NSMutableArray alloc] init];
-
- for (NSDictionary *specifier in preferenceSpecifiers) {
- if ([(NSString*)[specifier objectForKey:kIASKType] isEqualToString:kIASKPSGroupSpecifier]) {
- NSMutableArray *newArray = [[NSMutableArray alloc] init];
-
- [newArray addObject:specifier];
- [dataSource addObject:newArray];
- sectionCount++;
- }
- else {
- if (sectionCount == -1) {
- NSMutableArray *newArray = [[NSMutableArray alloc] init];
- [dataSource addObject:newArray];
- sectionCount++;
- }
-
- IASKSpecifier *newSpecifier = [[IASKSpecifier alloc] initWithSpecifier:specifier];
- [(NSMutableArray*)[dataSource objectAtIndex:sectionCount] addObject:newSpecifier];
- }
- }
- [self setDataSource:dataSource];
-}
-
-- (BOOL)_sectionHasHeading:(NSInteger)section {
- return [[[[self dataSource] objectAtIndex:section] objectAtIndex:0] isKindOfClass:[NSDictionary class]];
-}
-
-- (NSInteger)numberOfSections {
- return [[self dataSource] count];
-}
-
-- (NSInteger)numberOfRowsForSection:(NSInteger)section {
- int headingCorrection = [self _sectionHasHeading:section] ? 1 : 0;
- return [(NSArray*)[[self dataSource] objectAtIndex:section] count] - headingCorrection;
-}
-
-- (IASKSpecifier*)specifierForIndexPath:(NSIndexPath*)indexPath {
- int headingCorrection = [self _sectionHasHeading:indexPath.section] ? 1 : 0;
-
- IASKSpecifier *specifier = [[[self dataSource] objectAtIndex:indexPath.section] objectAtIndex:(indexPath.row+headingCorrection)];
- specifier.settingsReader = self;
- return specifier;
-}
-
-- (NSIndexPath*)indexPathForKey:(NSString *)key {
- for (NSUInteger sectionIndex = 0; sectionIndex < self.dataSource.count; sectionIndex++) {
- NSArray *section = [self.dataSource objectAtIndex:sectionIndex];
- for (NSUInteger rowIndex = 0; rowIndex < section.count; rowIndex++) {
- IASKSpecifier *specifier = (IASKSpecifier*)[section objectAtIndex:rowIndex];
- if ([specifier isKindOfClass:[IASKSpecifier class]] && [specifier.key isEqualToString:key]) {
- NSUInteger correctedRowIndex = rowIndex - [self _sectionHasHeading:sectionIndex];
- return [NSIndexPath indexPathForRow:correctedRowIndex inSection:sectionIndex];
- }
- }
- }
- return nil;
-}
-
-- (IASKSpecifier*)specifierForKey:(NSString*)key {
- for (NSArray *specifiers in _dataSource) {
- for (id sp in specifiers) {
- if ([sp isKindOfClass:[IASKSpecifier class]]) {
- if ([[sp key] isEqualToString:key]) {
- return sp;
- }
- }
- }
- }
- return nil;
-}
-
-- (NSString*)titleForSection:(NSInteger)section {
- if ([self _sectionHasHeading:section]) {
- NSDictionary *dict = [[[self dataSource] objectAtIndex:section] objectAtIndex:kIASKSectionHeaderIndex];
- return [self titleForStringId:[dict objectForKey:kIASKTitle]];
- }
- return nil;
-}
-
-- (NSString*)keyForSection:(NSInteger)section {
- if ([self _sectionHasHeading:section]) {
- return [[[[self dataSource] objectAtIndex:section] objectAtIndex:kIASKSectionHeaderIndex] objectForKey:kIASKKey];
- }
- return nil;
-}
-
-- (NSString*)footerTextForSection:(NSInteger)section {
- if ([self _sectionHasHeading:section]) {
- NSDictionary *dict = [[[self dataSource] objectAtIndex:section] objectAtIndex:kIASKSectionHeaderIndex];
- return [self titleForStringId:[dict objectForKey:kIASKFooterText]];
- }
- return nil;
-}
-
-- (NSString*)titleForStringId:(NSString*)stringId {
- return [_bundle localizedStringForKey:stringId value:stringId table:self.localizationTable];
-}
-
-- (NSString*)pathForImageNamed:(NSString*)image {
- return [[self bundlePath] stringByAppendingPathComponent:image];
-}
-
-- (NSString *)platformSuffix {
- BOOL isPad = NO;
-#if (__IPHONE_OS_VERSION_MAX_ALLOWED >= 30200)
- isPad = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad;
-#endif
- return isPad ? @"~ipad" : @"~iphone";
-}
-
-- (NSString *)file:(NSString *)file
- withBundle:(NSString *)bundle
- suffix:(NSString *)suffix
- extension:(NSString *)extension {
-
- NSString *appBundle = [[NSBundle mainBundle] bundlePath];
- bundle = [appBundle stringByAppendingPathComponent:bundle];
- file = [file stringByAppendingFormat:@"%@%@", suffix, extension];
- return [bundle stringByAppendingPathComponent:file];
-
-}
-
-- (NSString *)locateSettingsFile: (NSString *)file {
-
- // The file is searched in the following order:
- //
- // InAppSettings.bundle/FILE~DEVICE.inApp.plist
- // InAppSettings.bundle/FILE.inApp.plist
- // InAppSettings.bundle/FILE~DEVICE.plist
- // InAppSettings.bundle/FILE.plist
- // Settings.bundle/FILE~DEVICE.inApp.plist
- // Settings.bundle/FILE.inApp.plist
- // Settings.bundle/FILE~DEVICE.plist
- // Settings.bundle/FILE.plist
- //
- // where DEVICE is either "iphone" or "ipad" depending on the current
- // interface idiom.
- //
- // Settings.app uses the ~DEVICE suffixes since iOS 4.0. There are some
- // differences from this implementation:
- // - For an iPhone-only app running on iPad, Settings.app will not use the
- // ~iphone suffix. There is no point in using these suffixes outside
- // of universal apps anyway.
- // - This implementation uses the device suffixes on iOS 3.x as well.
- // - also check current locale (short only)
-
- NSArray *bundles =
- [NSArray arrayWithObjects:kIASKBundleFolderAlt, kIASKBundleFolder, nil];
-
- NSArray *extensions =
- [NSArray arrayWithObjects:@".inApp.plist", @".plist", nil];
-
- NSArray *suffixes =
- [NSArray arrayWithObjects:[self platformSuffix], @"", nil];
-
- NSArray *languages =
- [NSArray arrayWithObjects:[[[NSLocale preferredLanguages] objectAtIndex:0] stringByAppendingString:KIASKBundleLocaleFolderExtension], @"", nil];
-
- NSString *path = nil;
- NSFileManager *fileManager = [NSFileManager defaultManager];
-
- for (NSString *bundle in bundles) {
- for (NSString *extension in extensions) {
- for (NSString *suffix in suffixes) {
- for (NSString *language in languages) {
- path = [self file:file
- withBundle:[bundle stringByAppendingPathComponent:language]
- suffix:suffix
- extension:extension];
- if ([fileManager fileExistsAtPath:path]) {
- goto exitFromNestedLoop;
- }
- }
- }
- }
- }
-
-exitFromNestedLoop:
- return path;
-}
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStore.h b/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStore.h
deleted file mode 100755
index 79639acbe252..000000000000
--- a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStore.h
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// IASKSettingsStore.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// Marc-Etienne M.Léveillé, Edovia Inc., http://www.edovia.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <Foundation/Foundation.h>
-
-@protocol IASKSettingsStore <NSObject>
-@required
-- (void)setBool:(BOOL)value forKey:(NSString*)key;
-- (void)setFloat:(float)value forKey:(NSString*)key;
-- (void)setDouble:(double)value forKey:(NSString*)key;
-- (void)setInteger:(int)value forKey:(NSString*)key;
-- (void)setObject:(id)value forKey:(NSString*)key;
-- (BOOL)boolForKey:(NSString*)key;
-- (float)floatForKey:(NSString*)key;
-- (double)doubleForKey:(NSString*)key;
-- (int)integerForKey:(NSString*)key;
-- (id)objectForKey:(NSString*)key;
-- (BOOL)synchronize; // Write settings to a permanant storage. Returns YES on success, NO otherwise
-@end
-
-
-@interface IASKAbstractSettingsStore : NSObject <IASKSettingsStore> {
-}
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStore.m b/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStore.m
deleted file mode 100755
index 89484591f8cf..000000000000
--- a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStore.m
+++ /dev/null
@@ -1,68 +0,0 @@
-//
-// IASKSettingsStore.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// Marc-Etienne M.Léveillé, Edovia Inc., http://www.edovia.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKSettingsStore.h"
-
-@implementation IASKAbstractSettingsStore
-
-- (void)setObject:(id)value forKey:(NSString*)key {
- [NSException raise:@"Unimplemented"
- format:@"setObject:forKey: must be implemented in subclasses of IASKAbstractSettingsStore"];
-}
-
-- (id)objectForKey:(NSString*)key {
- [NSException raise:@"Unimplemented"
- format:@"objectForKey: must be implemented in subclasses of IASKAbstractSettingsStore"];
- return nil;
-}
-
-- (void)setBool:(BOOL)value forKey:(NSString*)key {
- [self setObject:[NSNumber numberWithBool:value] forKey:key];
-}
-
-- (void)setFloat:(float)value forKey:(NSString*)key {
- [self setObject:[NSNumber numberWithFloat:value] forKey:key];
-}
-
-- (void)setInteger:(int)value forKey:(NSString*)key {
- [self setObject:[NSNumber numberWithInt:value] forKey:key];
-}
-
-- (void)setDouble:(double)value forKey:(NSString*)key {
- [self setObject:[NSNumber numberWithDouble:value] forKey:key];
-}
-
-- (BOOL)boolForKey:(NSString*)key {
- return [[self objectForKey:key] boolValue];
-}
-
-- (float)floatForKey:(NSString*)key {
- return [[self objectForKey:key] floatValue];
-}
-- (int)integerForKey:(NSString*)key {
- return [[self objectForKey:key] intValue];
-}
-
-- (double)doubleForKey:(NSString*)key {
- return [[self objectForKey:key] doubleValue];
-}
-
-- (BOOL)synchronize {
- return NO;
-}
-
-@end \ No newline at end of file
diff --git a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreFile.h b/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreFile.h
deleted file mode 100755
index 54331ed979ca..000000000000
--- a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreFile.h
+++ /dev/null
@@ -1,28 +0,0 @@
-//
-// IASKSettingsStoreFile.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// Marc-Etienne M.Léveillé, Edovia Inc., http://www.edovia.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <Foundation/Foundation.h>
-#import "IASKSettingsStore.h"
-
-@interface IASKSettingsStoreFile : IASKAbstractSettingsStore {
- NSString * _filePath;
- NSMutableDictionary * _dict;
-}
-
-- (id)initWithPath:(NSString*)path;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreFile.m b/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreFile.m
deleted file mode 100755
index 3192650f3aae..000000000000
--- a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreFile.m
+++ /dev/null
@@ -1,53 +0,0 @@
-//
-// IASKSettingsStoreFile.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// Marc-Etienne M.Léveillé, Edovia Inc., http://www.edovia.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKSettingsStoreFile.h"
-
-
-@implementation IASKSettingsStoreFile
-
-- (id)initWithPath:(NSString*)path {
- if((self = [super init])) {
- _filePath = path;
- _dict = [[NSMutableDictionary alloc] initWithContentsOfFile:path];
- if(_dict == nil) {
- _dict = [[NSMutableDictionary alloc] init];
- }
- }
- return self;
-}
-
-- (void)dealloc {
- _dict = nil;
- _filePath = nil;
-
-}
-
-
-- (void)setObject:(id)value forKey:(NSString *)key {
- [_dict setObject:value forKey:key];
-}
-
-- (id)objectForKey:(NSString *)key {
- return [_dict objectForKey:key];
-}
-
-- (BOOL)synchronize {
- return [_dict writeToFile:_filePath atomically:YES];
-}
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreUserDefaults.h b/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreUserDefaults.h
deleted file mode 100755
index c1d2fce3cf1c..000000000000
--- a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreUserDefaults.h
+++ /dev/null
@@ -1,25 +0,0 @@
-//
-// IASKSettingsStoreUserDefaults.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// Marc-Etienne M.Léveillé, Edovia Inc., http://www.edovia.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <Foundation/Foundation.h>
-#import "IASKSettingsStore.h"
-
-@interface IASKSettingsStoreUserDefaults : IASKAbstractSettingsStore {
-
-}
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreUserDefaults.m b/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreUserDefaults.m
deleted file mode 100755
index c5979f80b356..000000000000
--- a/ios/iosremote/InAppSettingsKit/Models/IASKSettingsStoreUserDefaults.m
+++ /dev/null
@@ -1,67 +0,0 @@
-//
-// IASKSettingsStoreUserDefaults.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// Marc-Etienne M.Léveillé, Edovia Inc., http://www.edovia.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKSettingsStoreUserDefaults.h"
-
-
-@implementation IASKSettingsStoreUserDefaults
-
-- (void)setBool:(BOOL)value forKey:(NSString*)key {
- [[NSUserDefaults standardUserDefaults] setBool:value forKey:key];
-}
-
-- (void)setFloat:(float)value forKey:(NSString*)key {
- [[NSUserDefaults standardUserDefaults] setFloat:value forKey:key];
-}
-
-- (void)setDouble:(double)value forKey:(NSString*)key {
- [[NSUserDefaults standardUserDefaults] setDouble:value forKey:key];
-}
-
-- (void)setInteger:(int)value forKey:(NSString*)key {
- [[NSUserDefaults standardUserDefaults] setInteger:value forKey:key];
-}
-
-- (void)setObject:(id)value forKey:(NSString*)key {
- [[NSUserDefaults standardUserDefaults] setObject:value forKey:key];
-}
-
-- (BOOL)boolForKey:(NSString*)key {
- return [[NSUserDefaults standardUserDefaults] boolForKey:key];
-}
-
-- (float)floatForKey:(NSString*)key {
- return [[NSUserDefaults standardUserDefaults] floatForKey:key];
-}
-
-- (double)doubleForKey:(NSString*)key {
- return [[NSUserDefaults standardUserDefaults] doubleForKey:key];
-}
-
-- (int)integerForKey:(NSString*)key {
- return [[NSUserDefaults standardUserDefaults] integerForKey:key];
-}
-
-- (id)objectForKey:(NSString*)key {
- return [[NSUserDefaults standardUserDefaults] objectForKey:key];
-}
-
-- (BOOL)synchronize {
- return [[NSUserDefaults standardUserDefaults] synchronize];
-}
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Models/IASKSpecifier.h b/ios/iosremote/InAppSettingsKit/Models/IASKSpecifier.h
deleted file mode 100755
index 5053c4052d0c..000000000000
--- a/ios/iosremote/InAppSettingsKit/Models/IASKSpecifier.h
+++ /dev/null
@@ -1,59 +0,0 @@
-//
-// IASKSpecifier.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <Foundation/Foundation.h>
-#import <UIKit/UIKit.h>
-
-@class IASKSettingsReader;
-
-@interface IASKSpecifier : NSObject {
- NSDictionary *_specifierDict;
- NSDictionary *_multipleValuesDict;
- IASKSettingsReader *__unsafe_unretained _settingsReader;
-}
-@property (nonatomic, strong) NSDictionary *specifierDict;
-@property (nonatomic, unsafe_unretained) IASKSettingsReader *settingsReader;
-
-- (id)initWithSpecifier:(NSDictionary*)specifier;
-- (NSString*)localizedObjectForKey:(NSString*)key;
-- (NSString*)title;
-- (NSString*)key;
-- (NSString*)type;
-- (NSString*)titleForCurrentValue:(id)currentValue;
-- (NSInteger)multipleValuesCount;
-- (NSArray*)multipleValues;
-- (NSArray*)multipleTitles;
-- (NSString*)file;
-- (id)defaultValue;
-- (id)defaultStringValue;
-- (BOOL)defaultBoolValue;
-- (id)trueValue;
-- (id)falseValue;
-- (float)minimumValue;
-- (float)maximumValue;
-- (NSString*)minimumValueImage;
-- (NSString*)maximumValueImage;
-- (BOOL)isSecure;
-- (UIKeyboardType)keyboardType;
-- (UITextAutocapitalizationType)autocapitalizationType;
-- (UITextAutocorrectionType)autoCorrectionType;
-- (NSString*)footerText;
-- (Class)viewControllerClass;
-- (SEL)viewControllerSelector;
--(Class)buttonClass;
--(SEL)buttonAction;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Models/IASKSpecifier.m b/ios/iosremote/InAppSettingsKit/Models/IASKSpecifier.m
deleted file mode 100755
index 2ca65b2816e3..000000000000
--- a/ios/iosremote/InAppSettingsKit/Models/IASKSpecifier.m
+++ /dev/null
@@ -1,239 +0,0 @@
-//
-// IASKSpecifier.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKSpecifier.h"
-#import "IASKSettingsReader.h"
-
-@interface IASKSpecifier ()
-@property (nonatomic, strong) NSDictionary *multipleValuesDict;
-- (void)_reinterpretValues:(NSDictionary*)specifierDict;
-@end
-
-@implementation IASKSpecifier
-
-@synthesize specifierDict=_specifierDict;
-@synthesize multipleValuesDict=_multipleValuesDict;
-@synthesize settingsReader = _settingsReader;
-
-- (id)initWithSpecifier:(NSDictionary*)specifier {
- if ((self = [super init])) {
- [self setSpecifierDict:specifier];
-
- if ([[self type] isEqualToString:kIASKPSMultiValueSpecifier] ||
- [[self type] isEqualToString:kIASKPSTitleValueSpecifier]) {
- [self _reinterpretValues:[self specifierDict]];
- }
- }
- return self;
-}
-
-- (void)dealloc {
- _specifierDict = nil;
- _multipleValuesDict = nil;
-
- _settingsReader = nil;
-
-}
-
-- (void)_reinterpretValues:(NSDictionary*)specifierDict {
- NSArray *values = [_specifierDict objectForKey:kIASKValues];
- NSArray *titles = [_specifierDict objectForKey:kIASKTitles];
-
- NSMutableDictionary *multipleValuesDict = [[NSMutableDictionary alloc] init];
-
- if (values) {
- [multipleValuesDict setObject:values forKey:kIASKValues];
- }
-
- if (titles) {
- [multipleValuesDict setObject:titles forKey:kIASKTitles];
- }
-
- [self setMultipleValuesDict:multipleValuesDict];
-}
-- (NSString*)localizedObjectForKey:(NSString*)key {
- return [self.settingsReader titleForStringId:[_specifierDict objectForKey:key]];
-}
-
-- (NSString*)title {
- return [self localizedObjectForKey:kIASKTitle];
-}
-
-- (NSString*)footerText {
- return [self localizedObjectForKey:kIASKFooterText];
-}
-
--(Class) viewControllerClass {
- return NSClassFromString([_specifierDict objectForKey:kIASKViewControllerClass]);
-}
-
--(SEL) viewControllerSelector {
- return NSSelectorFromString([_specifierDict objectForKey:kIASKViewControllerSelector]);
-}
-
--(Class)buttonClass {
- return NSClassFromString([_specifierDict objectForKey:kIASKButtonClass]);
-}
-
--(SEL)buttonAction {
- return NSSelectorFromString([_specifierDict objectForKey:kIASKButtonAction]);
-}
-
-- (NSString*)key {
- return [_specifierDict objectForKey:kIASKKey];
-}
-
-- (NSString*)type {
- return [_specifierDict objectForKey:kIASKType];
-}
-
-- (NSString*)titleForCurrentValue:(id)currentValue {
- NSArray *values = [self multipleValues];
- NSArray *titles = [self multipleTitles];
- if (values.count != titles.count) {
- return nil;
- }
- NSInteger keyIndex = [values indexOfObject:currentValue];
- if (keyIndex == NSNotFound) {
- return nil;
- }
- @try {
- return [self.settingsReader titleForStringId:[titles objectAtIndex:keyIndex]];
- }
- @catch (NSException * e) {}
- return nil;
-}
-
-- (NSInteger)multipleValuesCount {
- return [[_multipleValuesDict objectForKey:kIASKValues] count];
-}
-
-- (NSArray*)multipleValues {
- return [_multipleValuesDict objectForKey:kIASKValues];
-}
-
-- (NSArray*)multipleTitles {
- return [_multipleValuesDict objectForKey:kIASKTitles];
-}
-
-- (NSString*)file {
- return [_specifierDict objectForKey:kIASKFile];
-}
-
-- (id)defaultValue {
- return [_specifierDict objectForKey:kIASKDefaultValue];
-}
-
-- (id)defaultStringValue {
- return [[_specifierDict objectForKey:kIASKDefaultValue] description];
-}
-
-- (BOOL)defaultBoolValue {
- id defaultValue = [self defaultValue];
- if ([defaultValue isEqual:[self trueValue]]) {
- return YES;
- }
- if ([defaultValue isEqual:[self falseValue]]) {
- return NO;
- }
- return [defaultValue boolValue];
-}
-
-- (id)trueValue {
- return [_specifierDict objectForKey:kIASKTrueValue];
-}
-
-- (id)falseValue {
- return [_specifierDict objectForKey:kIASKFalseValue];
-}
-
-- (float)minimumValue {
- return [[_specifierDict objectForKey:kIASKMinimumValue] floatValue];
-}
-
-- (float)maximumValue {
- return [[_specifierDict objectForKey:kIASKMaximumValue] floatValue];
-}
-
-- (NSString*)minimumValueImage {
- return [_specifierDict objectForKey:kIASKMinimumValueImage];
-}
-
-- (NSString*)maximumValueImage {
- return [_specifierDict objectForKey:kIASKMaximumValueImage];
-}
-
-- (BOOL)isSecure {
- return [[_specifierDict objectForKey:kIASKIsSecure] boolValue];
-}
-
-- (UIKeyboardType)keyboardType {
- if ([[_specifierDict objectForKey:KIASKKeyboardType] isEqualToString:kIASKKeyboardAlphabet]) {
- return UIKeyboardTypeDefault;
- }
- else if ([[_specifierDict objectForKey:KIASKKeyboardType] isEqualToString:kIASKKeyboardNumbersAndPunctuation]) {
- return UIKeyboardTypeNumbersAndPunctuation;
- }
- else if ([[_specifierDict objectForKey:KIASKKeyboardType] isEqualToString:kIASKKeyboardNumberPad]) {
- return UIKeyboardTypeNumberPad;
- }
- else if ([[_specifierDict objectForKey:KIASKKeyboardType] isEqualToString:kIASKKeyboardDecimalPad]) {
- if (kCFCoreFoundationVersionNumber >= kCFCoreFoundationVersionNumber_iPhoneOS_4_1) {
- return UIKeyboardTypeDecimalPad;
- }
- else {
- return UIKeyboardTypeNumbersAndPunctuation;
- }
- }
- else if ([[_specifierDict objectForKey:KIASKKeyboardType] isEqualToString:KIASKKeyboardURL]) {
- return UIKeyboardTypeURL;
- }
- else if ([[_specifierDict objectForKey:KIASKKeyboardType] isEqualToString:kIASKKeyboardEmailAddress]) {
- return UIKeyboardTypeEmailAddress;
- }
- return UIKeyboardTypeDefault;
-}
-
-- (UITextAutocapitalizationType)autocapitalizationType {
- if ([[_specifierDict objectForKey:kIASKAutocapitalizationType] isEqualToString:kIASKAutoCapNone]) {
- return UITextAutocapitalizationTypeNone;
- }
- else if ([[_specifierDict objectForKey:kIASKAutocapitalizationType] isEqualToString:kIASKAutoCapSentences]) {
- return UITextAutocapitalizationTypeSentences;
- }
- else if ([[_specifierDict objectForKey:kIASKAutocapitalizationType] isEqualToString:kIASKAutoCapWords]) {
- return UITextAutocapitalizationTypeWords;
- }
- else if ([[_specifierDict objectForKey:kIASKAutocapitalizationType] isEqualToString:kIASKAutoCapAllCharacters]) {
- return UITextAutocapitalizationTypeAllCharacters;
- }
- return UITextAutocapitalizationTypeNone;
-}
-
-- (UITextAutocorrectionType)autoCorrectionType {
- if ([[_specifierDict objectForKey:kIASKAutoCorrectionType] isEqualToString:kIASKAutoCorrDefault]) {
- return UITextAutocorrectionTypeDefault;
- }
- else if ([[_specifierDict objectForKey:kIASKAutoCorrectionType] isEqualToString:kIASKAutoCorrNo]) {
- return UITextAutocorrectionTypeNo;
- }
- else if ([[_specifierDict objectForKey:kIASKAutoCorrectionType] isEqualToString:kIASKAutoCorrYes]) {
- return UITextAutocorrectionTypeYes;
- }
- return UITextAutocorrectionTypeDefault;
-}
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKPSSliderSpecifierViewCell.h b/ios/iosremote/InAppSettingsKit/Views/IASKPSSliderSpecifierViewCell.h
deleted file mode 100755
index 9a1f0f2318bf..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKPSSliderSpecifierViewCell.h
+++ /dev/null
@@ -1,31 +0,0 @@
-//
-// IASKPSSliderSpecifierViewCell.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <UIKit/UIKit.h>
-
-@class IASKSlider;
-
-@interface IASKPSSliderSpecifierViewCell : UITableViewCell {
- IASKSlider *__unsafe_unretained _slider;
- UIImageView *__unsafe_unretained _minImage;
- UIImageView *__unsafe_unretained _maxImage;
-}
-
-@property (nonatomic, unsafe_unretained) IBOutlet IASKSlider *slider;
-@property (nonatomic, unsafe_unretained) IBOutlet UIImageView *minImage;
-@property (nonatomic, unsafe_unretained) IBOutlet UIImageView *maxImage;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKPSSliderSpecifierViewCell.m b/ios/iosremote/InAppSettingsKit/Views/IASKPSSliderSpecifierViewCell.m
deleted file mode 100755
index 69187e96a233..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKPSSliderSpecifierViewCell.m
+++ /dev/null
@@ -1,71 +0,0 @@
-//
-// IASKPSSliderSpecifierViewCell.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009-2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKPSSliderSpecifierViewCell.h"
-#import "IASKSlider.h"
-#import "IASKSettingsReader.h"
-
-@implementation IASKPSSliderSpecifierViewCell
-
-@synthesize slider=_slider,
- minImage=_minImage,
- maxImage=_maxImage;
-
-- (void)layoutSubviews {
- [super layoutSubviews];
- CGRect sliderBounds = _slider.bounds;
- CGPoint sliderCenter = _slider.center;
- const double superViewWidth = _slider.superview.frame.size.width;
-
- sliderCenter.x = superViewWidth / 2;
- sliderBounds.size.width = superViewWidth - kIASKSliderNoImagesPadding * 2;
- _minImage.hidden = YES;
- _maxImage.hidden = YES;
-
- // Check if there are min and max images. If so, change the layout accordingly.
- if (_minImage.image && _maxImage.image) {
- // Both images
- _minImage.hidden = NO;
- _maxImage.hidden = NO;
- sliderBounds.size.width = superViewWidth - kIASKSliderImagesPadding * 2;
- }
- else if (_minImage.image) {
- // Min image
- _minImage.hidden = NO;
- sliderCenter.x += (kIASKSliderImagesPadding - kIASKSliderNoImagesPadding) / 2;
- sliderBounds.size.width = superViewWidth - kIASKSliderNoImagesPadding - kIASKSliderImagesPadding;
- }
- else if (_maxImage.image) {
- // Max image
- _maxImage.hidden = NO;
- sliderCenter.x -= (kIASKSliderImagesPadding - kIASKSliderNoImagesPadding) / 2;
- sliderBounds.size.width = superViewWidth - kIASKSliderNoImagesPadding - kIASKSliderImagesPadding;
- }
-
- _slider.bounds = sliderBounds;
- _slider.center = sliderCenter;
-}
-
-- (void)dealloc {
- _minImage.image = nil;
- _maxImage.image = nil;
-}
-
-- (void)prepareForReuse {
- _minImage.image = nil;
- _maxImage.image = nil;
-}
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKPSTextFieldSpecifierViewCell.h b/ios/iosremote/InAppSettingsKit/Views/IASKPSTextFieldSpecifierViewCell.h
deleted file mode 100755
index 2d6be581309e..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKPSTextFieldSpecifierViewCell.h
+++ /dev/null
@@ -1,29 +0,0 @@
-//
-// IASKPSTextFieldSpecifierViewCell.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <UIKit/UIKit.h>
-
-@class IASKTextField;
-
-@interface IASKPSTextFieldSpecifierViewCell : UITableViewCell {
- UILabel *__unsafe_unretained _label;
- IASKTextField *__unsafe_unretained _textField;
-}
-
-@property (nonatomic, unsafe_unretained) IBOutlet UILabel *label;
-@property (nonatomic, unsafe_unretained) IBOutlet IASKTextField *textField;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKPSTextFieldSpecifierViewCell.m b/ios/iosremote/InAppSettingsKit/Views/IASKPSTextFieldSpecifierViewCell.m
deleted file mode 100755
index 39648c2f6d48..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKPSTextFieldSpecifierViewCell.m
+++ /dev/null
@@ -1,49 +0,0 @@
-//
-// IASKPSTextFieldSpecifierViewCell.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009-2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKPSTextFieldSpecifierViewCell.h"
-#import "IASKTextField.h"
-#import "IASKSettingsReader.h"
-
-@implementation IASKPSTextFieldSpecifierViewCell
-
-@synthesize label=_label,
- textField=_textField;
-
-- (void)layoutSubviews {
- [super layoutSubviews];
- CGSize labelSize = [_label sizeThatFits:CGSizeZero];
- labelSize.width = MIN(labelSize.width, _label.bounds.size.width);
-
- CGRect textFieldFrame = _textField.frame;
- textFieldFrame.origin.x = _label.frame.origin.x + MAX(kIASKMinLabelWidth, labelSize.width) + kIASKSpacing;
- if (!_label.text.length)
- textFieldFrame.origin.x = _label.frame.origin.x;
- textFieldFrame.size.width = _textField.superview.frame.size.width - textFieldFrame.origin.x - _label.frame.origin.x;
- _textField.frame = textFieldFrame;
-}
-
-- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
-
- [super setSelected:selected animated:animated];
-
- // Configure the view for the selected state
-}
-
-
-
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.h b/ios/iosremote/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.h
deleted file mode 100755
index 63d57f8d72a8..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.h
+++ /dev/null
@@ -1,22 +0,0 @@
-//
-// IASKPSTitleValueSpecifierViewCell.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <UIKit/UIKit.h>
-
-
-@interface IASKPSTitleValueSpecifierViewCell : UITableViewCell
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.m b/ios/iosremote/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.m
deleted file mode 100755
index b14175de701d..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKPSTitleValueSpecifierViewCell.m
+++ /dev/null
@@ -1,57 +0,0 @@
-//
-// IASKPSTitleValueSpecifierViewCell.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2010:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKPSTitleValueSpecifierViewCell.h"
-#import "IASKSettingsReader.h"
-
-
-@implementation IASKPSTitleValueSpecifierViewCell
-
-- (void)layoutSubviews {
- // left align the value if the title is empty
- if (!self.textLabel.text.length) {
- self.textLabel.text = self.detailTextLabel.text;
- self.detailTextLabel.text = nil;
- if ([self.reuseIdentifier isEqualToString:kIASKPSMultiValueSpecifier]) {
- self.textLabel.font = [UIFont systemFontOfSize:[UIFont labelFontSize]];
- self.textLabel.textColor = self.detailTextLabel.textColor;
- }
- }
- [super layoutSubviews];
-
- CGSize viewSize = [self.textLabel superview].frame.size;
-
- //if there's an image, make room for it
- CGFloat imageOffset = self.imageView.image ? self.imageView.bounds.size.width + self.imageView.frame.origin.x : 0;
-
- // set the left title label frame
- CGFloat labelWidth = [self.textLabel sizeThatFits:CGSizeZero].width;
- CGFloat minValueWidth = (self.detailTextLabel.text.length) ? kIASKMinValueWidth + kIASKSpacing : 0;
- labelWidth = MIN(labelWidth, viewSize.width - minValueWidth - kIASKPaddingLeft -kIASKPaddingRight - imageOffset);
- CGRect labelFrame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, labelWidth, viewSize.height -2);
- self.textLabel.frame = labelFrame;
-
- // set the right value label frame
- if (self.detailTextLabel.text.length) {
- CGRect valueFrame = CGRectMake(kIASKPaddingLeft + labelWidth + kIASKSpacing + imageOffset,
- 0,
- viewSize.width - (kIASKPaddingLeft + labelWidth + kIASKSpacing + imageOffset) - kIASKPaddingRight,
- viewSize.height -2);
- self.detailTextLabel.frame = valueFrame;
- }
-}
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKPSToggleSwitchSpecifierViewCell.h b/ios/iosremote/InAppSettingsKit/Views/IASKPSToggleSwitchSpecifierViewCell.h
deleted file mode 100755
index 0617293cef75..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKPSToggleSwitchSpecifierViewCell.h
+++ /dev/null
@@ -1,29 +0,0 @@
-//
-// IASKPSToggleSwitchSpecifierViewCell.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <UIKit/UIKit.h>
-
-@class IASKSwitch;
-
-@interface IASKPSToggleSwitchSpecifierViewCell : UITableViewCell {
- UILabel *__unsafe_unretained _label;
- IASKSwitch *__unsafe_unretained _toggle;
-}
-
-@property (nonatomic, unsafe_unretained) IBOutlet UILabel *label;
-@property (nonatomic, unsafe_unretained) IBOutlet IASKSwitch *toggle;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKPSToggleSwitchSpecifierViewCell.m b/ios/iosremote/InAppSettingsKit/Views/IASKPSToggleSwitchSpecifierViewCell.m
deleted file mode 100755
index 6a997ccee844..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKPSToggleSwitchSpecifierViewCell.m
+++ /dev/null
@@ -1,59 +0,0 @@
-//
-// IASKPSToggleSwitchSpecifierViewCell.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKPSToggleSwitchSpecifierViewCell.h"
-#import "IASKSwitch.h"
-#import "IASKSettingsReader.h"
-
-@implementation IASKPSToggleSwitchSpecifierViewCell
-
-@synthesize label=_label,
- toggle=_toggle;
-
-- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
- if ((self = [super initWithStyle:style reuseIdentifier:reuseIdentifier])) {
- // Initialization code
- }
- return self;
-}
-
-
-- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
-
- [super setSelected:selected animated:animated];
-
- // Configure the view for the selected state
-}
-
-
-
-- (void)layoutSubviews {
- [super layoutSubviews];
- if(self.imageView.image) {
- //resize the label to make room for the image
- self.label.frame = CGRectMake(CGRectGetWidth(self.imageView.bounds) + self.imageView.frame.origin.x + kIASKSpacing,
- self.label.frame.origin.y,
- self.toggle.frame.origin.x - CGRectGetWidth(self.imageView.bounds) - 2.f * kIASKSpacing,
- self.label.frame.size.height);
- } else {
- self.label.frame = CGRectMake(kIASKPaddingLeft,
- self.label.frame.origin.y,
- self.toggle.frame.origin.x - kIASKSpacing - kIASKPaddingLeft,
- self.label.frame.size.height);
- }
-}
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKSlider.h b/ios/iosremote/InAppSettingsKit/Views/IASKSlider.h
deleted file mode 100755
index 57ecd234b8e9..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKSlider.h
+++ /dev/null
@@ -1,26 +0,0 @@
-//
-// IASKSlider.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <UIKit/UIKit.h>
-
-
-@interface IASKSlider : UISlider {
- NSString *_key;
-}
-
-@property (nonatomic, strong) NSString *key;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKSlider.m b/ios/iosremote/InAppSettingsKit/Views/IASKSlider.m
deleted file mode 100755
index e6addff98951..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKSlider.m
+++ /dev/null
@@ -1,29 +0,0 @@
-//
-// IASKSlider.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKSlider.h"
-
-
-@implementation IASKSlider
-
-@synthesize key=_key;
-
-- (void)dealloc {
- _key = nil;
-
-}
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKSwitch.h b/ios/iosremote/InAppSettingsKit/Views/IASKSwitch.h
deleted file mode 100755
index e183f297ed2e..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKSwitch.h
+++ /dev/null
@@ -1,26 +0,0 @@
-//
-// IASKSwitch.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <UIKit/UIKit.h>
-
-
-@interface IASKSwitch : UISwitch {
- NSString *_key;
-}
-
-@property (nonatomic, strong) NSString *key;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKSwitch.m b/ios/iosremote/InAppSettingsKit/Views/IASKSwitch.m
deleted file mode 100755
index 9d24ad8326c0..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKSwitch.m
+++ /dev/null
@@ -1,30 +0,0 @@
-//
-// IASKSwitch.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKSwitch.h"
-
-
-@implementation IASKSwitch
-
-@synthesize key=_key;
-
-- (void)dealloc {
- _key = nil;
-
-}
-
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKTextField.h b/ios/iosremote/InAppSettingsKit/Views/IASKTextField.h
deleted file mode 100755
index 73f5c5b393f8..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKTextField.h
+++ /dev/null
@@ -1,26 +0,0 @@
-//
-// IASKTextField.h
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import <UIKit/UIKit.h>
-
-
-@interface IASKTextField : UITextField {
- NSString *_key;
-}
-
-@property (nonatomic, strong) NSString *key;
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Views/IASKTextField.m b/ios/iosremote/InAppSettingsKit/Views/IASKTextField.m
deleted file mode 100755
index 2b3cc7f6fb62..000000000000
--- a/ios/iosremote/InAppSettingsKit/Views/IASKTextField.m
+++ /dev/null
@@ -1,29 +0,0 @@
-//
-// IASKTextField.m
-// http://www.inappsettingskit.com
-//
-// Copyright (c) 2009:
-// Luc Vandal, Edovia Inc., http://www.edovia.com
-// Ortwin Gentz, FutureTap GmbH, http://www.futuretap.com
-// All rights reserved.
-//
-// It is appreciated but not required that you give credit to Luc Vandal and Ortwin Gentz,
-// as the original authors of this code. You can give credit in a blog post, a tweet or on
-// a info page of your app. Also, the original authors appreciate letting them know if you use this code.
-//
-// This code is licensed under the BSD license that is available at: http://www.opensource.org/licenses/bsd-license.php
-//
-
-#import "IASKTextField.h"
-
-
-@implementation IASKTextField
-
-@synthesize key=_key;
-
-- (void)dealloc {
- _key = nil;
-
-}
-
-@end
diff --git a/ios/iosremote/InAppSettingsKit/Xibs/IASKAppSettingsView.xib b/ios/iosremote/InAppSettingsKit/Xibs/IASKAppSettingsView.xib
deleted file mode 100755
index 7ba3bea1043d..000000000000
--- a/ios/iosremote/InAppSettingsKit/Xibs/IASKAppSettingsView.xib
+++ /dev/null
@@ -1,199 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
- <data>
- <int key="IBDocument.SystemTarget">1552</int>
- <string key="IBDocument.SystemVersion">12E55</string>
- <string key="IBDocument.InterfaceBuilderVersion">3084</string>
- <string key="IBDocument.AppKitVersion">1187.39</string>
- <string key="IBDocument.HIToolboxVersion">626.00</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
- <string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string key="NS.object.0">2083</string>
- </object>
- <object class="NSArray" key="IBDocument.IntegratedClassDependencies">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>IBProxyObject</string>
- <string>IBUITableView</string>
- </object>
- <object class="NSArray" key="IBDocument.PluginDependencies">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.Metadata">
- <string key="NS.key.0">PluginDependencyRecalculationVersion</string>
- <integer value="1" key="NS.object.0"/>
- </object>
- <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBProxyObject" id="372490531">
- <string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBProxyObject" id="975951072">
- <string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBUITableView" id="1838945">
- <reference key="NSNextResponder"/>
- <int key="NSvFlags">274</int>
- <string key="NSFrameSize">{320, 460}</string>
- <reference key="NSSuperview"/>
- <reference key="NSWindow"/>
- <object class="NSColor" key="IBUIBackgroundColor">
- <int key="NSColorSpace">1</int>
- <bytes key="NSRGB">MC45Mjk0MTE3NjQ3IDAuOTI5NDExNzY0NyAwLjkyOTQxMTc2NDcAA</bytes>
- </object>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClipsSubviews">YES</bool>
- <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <bool key="IBUIBouncesZoom">NO</bool>
- <int key="IBUIStyle">1</int>
- <int key="IBUISeparatorStyle">1</int>
- <int key="IBUISectionIndexMinimumDisplayRowCount">0</int>
- <bool key="IBUIShowsSelectionImmediatelyOnTouchBegin">YES</bool>
- <float key="IBUIRowHeight">44</float>
- <float key="IBUISectionHeaderHeight">10</float>
- <float key="IBUISectionFooterHeight">10</float>
- </object>
- </object>
- <object class="IBObjectContainer" key="IBDocument.Objects">
- <object class="NSMutableArray" key="connectionRecords">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">view</string>
- <reference key="source" ref="372490531"/>
- <reference key="destination" ref="1838945"/>
- </object>
- <int key="connectionID">10</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">dataSource</string>
- <reference key="source" ref="1838945"/>
- <reference key="destination" ref="372490531"/>
- </object>
- <int key="connectionID">6</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">delegate</string>
- <reference key="source" ref="1838945"/>
- <reference key="destination" ref="372490531"/>
- </object>
- <int key="connectionID">7</int>
- </object>
- </object>
- <object class="IBMutableOrderedSet" key="objectRecords">
- <object class="NSArray" key="orderedObjects">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBObjectRecord">
- <int key="objectID">0</int>
- <object class="NSArray" key="object" id="0">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
- <reference key="children" ref="1000"/>
- <nil key="parent"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-1</int>
- <reference key="object" ref="372490531"/>
- <reference key="parent" ref="0"/>
- <string key="objectName">File's Owner</string>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-2</int>
- <reference key="object" ref="975951072"/>
- <reference key="parent" ref="0"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">4</int>
- <reference key="object" ref="1838945"/>
- <reference key="parent" ref="0"/>
- </object>
- </object>
- </object>
- <object class="NSMutableDictionary" key="flattenedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSArray" key="dict.sortedKeys">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>-1.CustomClassName</string>
- <string>-1.IBPluginDependency</string>
- <string>-2.CustomClassName</string>
- <string>-2.IBPluginDependency</string>
- <string>4.IBPluginDependency</string>
- </object>
- <object class="NSArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>IASKAppSettingsViewController</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>UIResponder</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- </object>
- <object class="NSMutableDictionary" key="unlocalizedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <reference key="dict.values" ref="0"/>
- </object>
- <nil key="activeLocalization"/>
- <object class="NSMutableDictionary" key="localizations">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <reference key="dict.values" ref="0"/>
- </object>
- <nil key="sourceID"/>
- <int key="maxID">10</int>
- </object>
- <object class="IBClassDescriber" key="IBDocument.Classes">
- <object class="NSMutableArray" key="referencedPartialClassDescriptions">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBPartialClassDescription">
- <string key="className">IASKAppSettingsViewController</string>
- <string key="superclassName">UITableViewController</string>
- <object class="NSMutableDictionary" key="actions">
- <string key="NS.key.0">dismiss:</string>
- <string key="NS.object.0">id</string>
- </object>
- <object class="NSMutableDictionary" key="actionInfosByName">
- <string key="NS.key.0">dismiss:</string>
- <object class="IBActionInfo" key="NS.object.0">
- <string key="name">dismiss:</string>
- <string key="candidateClassName">id</string>
- </object>
- </object>
- <object class="NSMutableDictionary" key="outlets">
- <string key="NS.key.0">delegate</string>
- <string key="NS.object.0">id</string>
- </object>
- <object class="NSMutableDictionary" key="toOneOutletInfosByName">
- <string key="NS.key.0">delegate</string>
- <object class="IBToOneOutletInfo" key="NS.object.0">
- <string key="name">delegate</string>
- <string key="candidateClassName">id</string>
- </object>
- </object>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/IASKAppSettingsViewController.h</string>
- </object>
- </object>
- </object>
- </object>
- <int key="IBDocument.localizationMode">0</int>
- <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
- <real value="1552" key="NS.object.0"/>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
- <integer value="3000" key="NS.object.0"/>
- </object>
- <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
- <int key="IBDocument.defaultPropertyAccessControl">3</int>
- <string key="IBCocoaTouchPluginVersion">2083</string>
- </data>
-</archive>
diff --git a/ios/iosremote/InAppSettingsKit/Xibs/IASKAppSettingsWebView.xib b/ios/iosremote/InAppSettingsKit/Xibs/IASKAppSettingsWebView.xib
deleted file mode 100755
index b814f05fcbe4..000000000000
--- a/ios/iosremote/InAppSettingsKit/Xibs/IASKAppSettingsWebView.xib
+++ /dev/null
@@ -1,378 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
- <data>
- <int key="IBDocument.SystemTarget">1024</int>
- <string key="IBDocument.SystemVersion">10F569</string>
- <string key="IBDocument.InterfaceBuilderVersion">804</string>
- <string key="IBDocument.AppKitVersion">1038.29</string>
- <string key="IBDocument.HIToolboxVersion">461.00</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
- <string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string key="NS.object.0">123</string>
- </object>
- <object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <integer value="1"/>
- </object>
- <object class="NSArray" key="IBDocument.PluginDependencies">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.Metadata">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSArray" key="dict.sortedKeys" id="0">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
- <object class="NSMutableArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
- </object>
- <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBProxyObject" id="372490531">
- <string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBProxyObject" id="975951072">
- <string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBUIView" id="191373211">
- <reference key="NSNextResponder"/>
- <int key="NSvFlags">274</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBUIWebView" id="197045155">
- <reference key="NSNextResponder" ref="191373211"/>
- <int key="NSvFlags">274</int>
- <string key="NSFrameSize">{320, 460}</string>
- <reference key="NSSuperview" ref="191373211"/>
- <object class="NSColor" key="IBUIBackgroundColor" id="697334121">
- <int key="NSColorSpace">3</int>
- <bytes key="NSWhite">MQA</bytes>
- </object>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- </object>
- <string key="NSFrameSize">{320, 460}</string>
- <reference key="NSSuperview"/>
- <reference key="IBUIBackgroundColor" ref="697334121"/>
- <object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics"/>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- </object>
- <object class="IBObjectContainer" key="IBDocument.Objects">
- <object class="NSMutableArray" key="connectionRecords">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">view</string>
- <reference key="source" ref="372490531"/>
- <reference key="destination" ref="191373211"/>
- </object>
- <int key="connectionID">3</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">webView</string>
- <reference key="source" ref="372490531"/>
- <reference key="destination" ref="197045155"/>
- </object>
- <int key="connectionID">5</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">delegate</string>
- <reference key="source" ref="197045155"/>
- <reference key="destination" ref="372490531"/>
- </object>
- <int key="connectionID">6</int>
- </object>
- </object>
- <object class="IBMutableOrderedSet" key="objectRecords">
- <object class="NSArray" key="orderedObjects">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBObjectRecord">
- <int key="objectID">0</int>
- <reference key="object" ref="0"/>
- <reference key="children" ref="1000"/>
- <nil key="parent"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">1</int>
- <reference key="object" ref="191373211"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="197045155"/>
- </object>
- <reference key="parent" ref="0"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-1</int>
- <reference key="object" ref="372490531"/>
- <reference key="parent" ref="0"/>
- <string key="objectName">File's Owner</string>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-2</int>
- <reference key="object" ref="975951072"/>
- <reference key="parent" ref="0"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">4</int>
- <reference key="object" ref="197045155"/>
- <reference key="parent" ref="191373211"/>
- </object>
- </object>
- </object>
- <object class="NSMutableDictionary" key="flattenedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSArray" key="dict.sortedKeys">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>-1.CustomClassName</string>
- <string>-2.CustomClassName</string>
- <string>1.IBEditorWindowLastContentRect</string>
- <string>1.IBPluginDependency</string>
- <string>4.IBPluginDependency</string>
- </object>
- <object class="NSMutableArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>IASKAppSettingsWebViewController</string>
- <string>UIResponder</string>
- <string>{{354, 412}, {320, 480}}</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- </object>
- <object class="NSMutableDictionary" key="unlocalizedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <object class="NSMutableArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
- </object>
- <nil key="activeLocalization"/>
- <object class="NSMutableDictionary" key="localizations">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <object class="NSMutableArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
- </object>
- <nil key="sourceID"/>
- <int key="maxID">6</int>
- </object>
- <object class="IBClassDescriber" key="IBDocument.Classes">
- <object class="NSMutableArray" key="referencedPartialClassDescriptions">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBPartialClassDescription">
- <string key="className">IASKAppSettingsWebViewController</string>
- <string key="superclassName">UIViewController</string>
- <object class="NSMutableDictionary" key="outlets">
- <string key="NS.key.0">webView</string>
- <string key="NS.object.0">UIWebView</string>
- </object>
- <object class="NSMutableDictionary" key="toOneOutletInfosByName">
- <string key="NS.key.0">webView</string>
- <object class="IBToOneOutletInfo" key="NS.object.0">
- <string key="name">webView</string>
- <string key="candidateClassName">UIWebView</string>
- </object>
- </object>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBProjectSource</string>
- <string key="minorKey">../InAppSettingsKit/Controllers/IASKAppSettingsWebViewController.h</string>
- </object>
- </object>
- </object>
- <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSError.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSObject.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSThread.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSURL.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIAccessibility.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UINibLoading.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier" id="842439622">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIResponder.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIResponder</string>
- <string key="superclassName">NSObject</string>
- <reference key="sourceIdentifier" ref="842439622"/>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UISearchBar</string>
- <string key="superclassName">UIView</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UISearchBar.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UISearchDisplayController</string>
- <string key="superclassName">NSObject</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UISearchDisplayController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIView</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UITextField.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIView</string>
- <string key="superclassName">UIResponder</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIView.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIViewController</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UINavigationController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIViewController</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIPopoverController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIViewController</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UISplitViewController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIViewController</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UITabBarController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIViewController</string>
- <string key="superclassName">UIResponder</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIViewController.h</string>
- </object>
- </object>
- <object class="IBPartialClassDescription">
- <string key="className">UIWebView</string>
- <string key="superclassName">UIView</string>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBFrameworkSource</string>
- <string key="minorKey">UIKit.framework/Headers/UIWebView.h</string>
- </object>
- </object>
- </object>
- </object>
- <int key="IBDocument.localizationMode">0</int>
- <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
- <integer value="1024" key="NS.object.0"/>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
- <integer value="3100" key="NS.object.0"/>
- </object>
- <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
- <string key="IBDocument.LastKnownRelativeProjectPath">../InAppSettingsKitSampleApp.xcodeproj</string>
- <int key="IBDocument.defaultPropertyAccessControl">3</int>
- <string key="IBCocoaTouchPluginVersion">123</string>
- </data>
-</archive>
diff --git a/ios/iosremote/InAppSettingsKit/Xibs/IASKPSSliderSpecifierViewCell.xib b/ios/iosremote/InAppSettingsKit/Xibs/IASKPSSliderSpecifierViewCell.xib
deleted file mode 100755
index 67750384e20e..000000000000
--- a/ios/iosremote/InAppSettingsKit/Xibs/IASKPSSliderSpecifierViewCell.xib
+++ /dev/null
@@ -1,251 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
- <data>
- <int key="IBDocument.SystemTarget">1296</int>
- <string key="IBDocument.SystemVersion">11D50</string>
- <string key="IBDocument.InterfaceBuilderVersion">2182</string>
- <string key="IBDocument.AppKitVersion">1138.32</string>
- <string key="IBDocument.HIToolboxVersion">568.00</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
- <string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string key="NS.object.0">1179</string>
- </object>
- <object class="NSArray" key="IBDocument.IntegratedClassDependencies">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>IBUISlider</string>
- <string>IBUITableViewCell</string>
- <string>IBUIImageView</string>
- <string>IBProxyObject</string>
- </object>
- <object class="NSArray" key="IBDocument.PluginDependencies">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.Metadata">
- <string key="NS.key.0">PluginDependencyRecalculationVersion</string>
- <integer value="1" key="NS.object.0"/>
- </object>
- <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBProxyObject" id="841351856">
- <string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBProxyObject" id="371349661">
- <string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBUITableViewCell" id="699910302">
- <reference key="NSNextResponder"/>
- <int key="NSvFlags">290</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBUIView" id="833157797">
- <reference key="NSNextResponder" ref="699910302"/>
- <int key="NSvFlags">256</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBUISlider" id="213296969">
- <reference key="NSNextResponder" ref="833157797"/>
- <int key="NSvFlags">290</int>
- <string key="NSFrame">{{52, 12}, {216, 23}}</string>
- <reference key="NSSuperview" ref="833157797"/>
- <reference key="NSNextKeyView" ref="343121076"/>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClipsSubviews">YES</bool>
- <bool key="IBUIMultipleTouchEnabled">YES</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <int key="IBUIContentHorizontalAlignment">0</int>
- <int key="IBUIContentVerticalAlignment">0</int>
- <float key="IBUIValue">0.5</float>
- <bool key="IBUIContinuous">NO</bool>
- </object>
- <object class="IBUIImageView" id="343121076">
- <reference key="NSNextResponder" ref="833157797"/>
- <int key="NSvFlags">289</int>
- <string key="NSFrame">{{289, 13}, {21, 21}}</string>
- <reference key="NSSuperview" ref="833157797"/>
- <reference key="NSNextKeyView"/>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
- <int key="IBUIContentMode">8</int>
- <bool key="IBUIUserInteractionEnabled">NO</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBUIImageView" id="408162837">
- <reference key="NSNextResponder" ref="833157797"/>
- <int key="NSvFlags">292</int>
- <string key="NSFrame">{{10, 13}, {21, 21}}</string>
- <reference key="NSSuperview" ref="833157797"/>
- <reference key="NSNextKeyView" ref="213296969"/>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
- <int key="IBUIContentMode">7</int>
- <bool key="IBUIUserInteractionEnabled">NO</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- </object>
- <string key="NSFrameSize">{320, 43}</string>
- <reference key="NSSuperview" ref="699910302"/>
- <reference key="NSNextKeyView" ref="408162837"/>
- <object class="NSColor" key="IBUIBackgroundColor">
- <int key="NSColorSpace">3</int>
- <bytes key="NSWhite">MCAwAA</bytes>
- </object>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClipsSubviews">YES</bool>
- <int key="IBUIContentMode">4</int>
- <bool key="IBUIMultipleTouchEnabled">YES</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- </object>
- <string key="NSFrameSize">{320, 44}</string>
- <reference key="NSSuperview"/>
- <reference key="NSNextKeyView" ref="833157797"/>
- <object class="NSColor" key="IBUIBackgroundColor">
- <int key="NSColorSpace">1</int>
- <bytes key="NSRGB">MC45Njg2Mjc0NTEgMC45Njg2Mjc0NTEgMC45Njg2Mjc0NTEAA</bytes>
- </object>
- <bool key="IBUIClipsSubviews">YES</bool>
- <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <int key="IBUISelectionStyle">0</int>
- <reference key="IBUIContentView" ref="833157797"/>
- <string key="IBUIReuseIdentifier">PSSliderSpecifier</string>
- </object>
- </object>
- <object class="IBObjectContainer" key="IBDocument.Objects">
- <object class="NSMutableArray" key="connectionRecords">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">slider</string>
- <reference key="source" ref="699910302"/>
- <reference key="destination" ref="213296969"/>
- </object>
- <int key="connectionID">12</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">maxImage</string>
- <reference key="source" ref="699910302"/>
- <reference key="destination" ref="343121076"/>
- </object>
- <int key="connectionID">13</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">minImage</string>
- <reference key="source" ref="699910302"/>
- <reference key="destination" ref="408162837"/>
- </object>
- <int key="connectionID">14</int>
- </object>
- </object>
- <object class="IBMutableOrderedSet" key="objectRecords">
- <object class="NSArray" key="orderedObjects">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBObjectRecord">
- <int key="objectID">0</int>
- <object class="NSArray" key="object" id="0">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
- <reference key="children" ref="1000"/>
- <nil key="parent"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-1</int>
- <reference key="object" ref="841351856"/>
- <reference key="parent" ref="0"/>
- <string key="objectName">File's Owner</string>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-2</int>
- <reference key="object" ref="371349661"/>
- <reference key="parent" ref="0"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">2</int>
- <reference key="object" ref="699910302"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="408162837"/>
- <reference ref="343121076"/>
- <reference ref="213296969"/>
- </object>
- <reference key="parent" ref="0"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">3</int>
- <reference key="object" ref="213296969"/>
- <reference key="parent" ref="699910302"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6</int>
- <reference key="object" ref="343121076"/>
- <reference key="parent" ref="699910302"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">9</int>
- <reference key="object" ref="408162837"/>
- <reference key="parent" ref="699910302"/>
- </object>
- </object>
- </object>
- <object class="NSMutableDictionary" key="flattenedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSArray" key="dict.sortedKeys">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>-1.IBPluginDependency</string>
- <string>-2.CustomClassName</string>
- <string>-2.IBPluginDependency</string>
- <string>2.CustomClassName</string>
- <string>2.IBPluginDependency</string>
- <string>3.CustomClassName</string>
- <string>3.IBPluginDependency</string>
- <string>6.IBPluginDependency</string>
- <string>9.IBPluginDependency</string>
- </object>
- <object class="NSArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>UIResponder</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>IASKPSSliderSpecifierViewCell</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>IASKSlider</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- </object>
- <object class="NSMutableDictionary" key="unlocalizedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <reference key="dict.values" ref="0"/>
- </object>
- <nil key="activeLocalization"/>
- <object class="NSMutableDictionary" key="localizations">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <reference key="dict.values" ref="0"/>
- </object>
- <nil key="sourceID"/>
- <int key="maxID">14</int>
- </object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
- <int key="IBDocument.localizationMode">0</int>
- <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
- <real value="1296" key="NS.object.0"/>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
- <integer value="3100" key="NS.object.0"/>
- </object>
- <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
- <int key="IBDocument.defaultPropertyAccessControl">3</int>
- <string key="IBCocoaTouchPluginVersion">1179</string>
- </data>
-</archive>
diff --git a/ios/iosremote/InAppSettingsKit/Xibs/IASKPSTextFieldSpecifierViewCell.xib b/ios/iosremote/InAppSettingsKit/Xibs/IASKPSTextFieldSpecifierViewCell.xib
deleted file mode 100755
index 43a553b9c963..000000000000
--- a/ios/iosremote/InAppSettingsKit/Xibs/IASKPSTextFieldSpecifierViewCell.xib
+++ /dev/null
@@ -1,254 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
- <data>
- <int key="IBDocument.SystemTarget">1296</int>
- <string key="IBDocument.SystemVersion">11D50</string>
- <string key="IBDocument.InterfaceBuilderVersion">2182</string>
- <string key="IBDocument.AppKitVersion">1138.32</string>
- <string key="IBDocument.HIToolboxVersion">568.00</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
- <string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string key="NS.object.0">1179</string>
- </object>
- <object class="NSArray" key="IBDocument.IntegratedClassDependencies">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>IBUITableViewCell</string>
- <string>IBUILabel</string>
- <string>IBUITextField</string>
- <string>IBProxyObject</string>
- </object>
- <object class="NSArray" key="IBDocument.PluginDependencies">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.Metadata">
- <string key="NS.key.0">PluginDependencyRecalculationVersion</string>
- <integer value="1" key="NS.object.0"/>
- </object>
- <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBProxyObject" id="841351856">
- <string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBProxyObject" id="371349661">
- <string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBUITableViewCell" id="639928991">
- <reference key="NSNextResponder"/>
- <int key="NSvFlags">290</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBUIView" id="642554623">
- <reference key="NSNextResponder" ref="639928991"/>
- <int key="NSvFlags">256</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBUILabel" id="68117349">
- <reference key="NSNextResponder" ref="642554623"/>
- <int key="NSvFlags">294</int>
- <string key="NSFrame">{{9, 11}, {240, 21}}</string>
- <reference key="NSSuperview" ref="642554623"/>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClipsSubviews">YES</bool>
- <bool key="IBUIUserInteractionEnabled">NO</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <string key="IBUIText">Label</string>
- <object class="NSColor" key="IBUITextColor">
- <int key="NSColorSpace">1</int>
- <bytes key="NSRGB">MCAwIDAAA</bytes>
- </object>
- <nil key="IBUIHighlightedColor"/>
- <int key="IBUIBaselineAdjustment">1</int>
- <float key="IBUIMinimumFontSize">10</float>
- <object class="IBUIFontDescription" key="IBUIFontDescription">
- <string key="name">Helvetica-Bold</string>
- <string key="family">Helvetica</string>
- <int key="traits">2</int>
- <double key="pointSize">17</double>
- </object>
- <object class="NSFont" key="IBUIFont">
- <string key="NSName">Helvetica-Bold</string>
- <double key="NSSize">17</double>
- <int key="NSfFlags">16</int>
- </object>
- </object>
- <object class="IBUITextField" id="239084550">
- <reference key="NSNextResponder" ref="642554623"/>
- <int key="NSvFlags">291</int>
- <string key="NSFrame">{{100, 11}, {201, 21}}</string>
- <reference key="NSSuperview" ref="642554623"/>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <string key="IBUIText">hello</string>
- <object class="NSColor" key="IBUITextColor">
- <int key="NSColorSpace">1</int>
- <bytes key="NSRGB">MC4yNzQ1MDk4MiAwLjM3NjQ3MDYgMC41MjE1Njg2NgA</bytes>
- </object>
- <bool key="IBUIAdjustsFontSizeToFit">YES</bool>
- <float key="IBUIMinimumFontSize">10</float>
- <object class="IBUITextInputTraits" key="IBUITextInputTraits">
- <int key="IBUIReturnKeyType">9</int>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBUIFontDescription" key="IBUIFontDescription">
- <string key="name">Helvetica</string>
- <string key="family">Helvetica</string>
- <int key="traits">0</int>
- <double key="pointSize">17</double>
- </object>
- <object class="NSFont" key="IBUIFont">
- <string key="NSName">Helvetica</string>
- <double key="NSSize">17</double>
- <int key="NSfFlags">16</int>
- </object>
- </object>
- </object>
- <string key="NSFrameSize">{320, 43}</string>
- <reference key="NSSuperview" ref="639928991"/>
- <object class="NSColor" key="IBUIBackgroundColor">
- <int key="NSColorSpace">3</int>
- <bytes key="NSWhite">MCAwAA</bytes>
- </object>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClipsSubviews">YES</bool>
- <int key="IBUIContentMode">4</int>
- <bool key="IBUIMultipleTouchEnabled">YES</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- </object>
- <string key="NSFrameSize">{320, 44}</string>
- <reference key="NSSuperview"/>
- <object class="NSColor" key="IBUIBackgroundColor">
- <int key="NSColorSpace">1</int>
- <bytes key="NSRGB">MC45Njg2Mjc0NTEgMC45Njg2Mjc0NTEgMC45Njg2Mjc0NTEAA</bytes>
- </object>
- <bool key="IBUIClipsSubviews">YES</bool>
- <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <int key="IBUISelectionStyle">0</int>
- <reference key="IBUIContentView" ref="642554623"/>
- <string key="IBUIReuseIdentifier">PSTextFieldSpecifier</string>
- </object>
- </object>
- <object class="IBObjectContainer" key="IBDocument.Objects">
- <object class="NSMutableArray" key="connectionRecords">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">label</string>
- <reference key="source" ref="639928991"/>
- <reference key="destination" ref="68117349"/>
- </object>
- <int key="connectionID">8</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">textField</string>
- <reference key="source" ref="639928991"/>
- <reference key="destination" ref="239084550"/>
- </object>
- <int key="connectionID">9</int>
- </object>
- </object>
- <object class="IBMutableOrderedSet" key="objectRecords">
- <object class="NSArray" key="orderedObjects">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBObjectRecord">
- <int key="objectID">0</int>
- <object class="NSArray" key="object" id="0">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
- <reference key="children" ref="1000"/>
- <nil key="parent"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-1</int>
- <reference key="object" ref="841351856"/>
- <reference key="parent" ref="0"/>
- <string key="objectName">File's Owner</string>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-2</int>
- <reference key="object" ref="371349661"/>
- <reference key="parent" ref="0"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">2</int>
- <reference key="object" ref="639928991"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="239084550"/>
- <reference ref="68117349"/>
- </object>
- <reference key="parent" ref="0"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">3</int>
- <reference key="object" ref="68117349"/>
- <reference key="parent" ref="639928991"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">4</int>
- <reference key="object" ref="239084550"/>
- <reference key="parent" ref="639928991"/>
- </object>
- </object>
- </object>
- <object class="NSMutableDictionary" key="flattenedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSArray" key="dict.sortedKeys">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>-1.IBPluginDependency</string>
- <string>-2.CustomClassName</string>
- <string>-2.IBPluginDependency</string>
- <string>2.CustomClassName</string>
- <string>2.IBPluginDependency</string>
- <string>3.IBPluginDependency</string>
- <string>4.CustomClassName</string>
- <string>4.IBPluginDependency</string>
- </object>
- <object class="NSArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>UIResponder</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>IASKPSTextFieldSpecifierViewCell</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>IASKTextField</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- </object>
- <object class="NSMutableDictionary" key="unlocalizedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <reference key="dict.values" ref="0"/>
- </object>
- <nil key="activeLocalization"/>
- <object class="NSMutableDictionary" key="localizations">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <reference key="dict.values" ref="0"/>
- </object>
- <nil key="sourceID"/>
- <int key="maxID">9</int>
- </object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
- <int key="IBDocument.localizationMode">0</int>
- <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
- <real value="1296" key="NS.object.0"/>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
- <integer value="3100" key="NS.object.0"/>
- </object>
- <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
- <int key="IBDocument.defaultPropertyAccessControl">3</int>
- <string key="IBCocoaTouchPluginVersion">1179</string>
- </data>
-</archive>
diff --git a/ios/iosremote/InAppSettingsKit/Xibs/IASKPSToggleSwitchSpecifierViewCell.xib b/ios/iosremote/InAppSettingsKit/Xibs/IASKPSToggleSwitchSpecifierViewCell.xib
deleted file mode 100755
index 2e5803f2e35f..000000000000
--- a/ios/iosremote/InAppSettingsKit/Xibs/IASKPSToggleSwitchSpecifierViewCell.xib
+++ /dev/null
@@ -1,237 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
- <data>
- <int key="IBDocument.SystemTarget">1296</int>
- <string key="IBDocument.SystemVersion">11D50</string>
- <string key="IBDocument.InterfaceBuilderVersion">2182</string>
- <string key="IBDocument.AppKitVersion">1138.32</string>
- <string key="IBDocument.HIToolboxVersion">568.00</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
- <string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string key="NS.object.0">1179</string>
- </object>
- <object class="NSArray" key="IBDocument.IntegratedClassDependencies">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>IBUITableViewCell</string>
- <string>IBUISwitch</string>
- <string>IBUILabel</string>
- <string>IBProxyObject</string>
- </object>
- <object class="NSArray" key="IBDocument.PluginDependencies">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.Metadata">
- <string key="NS.key.0">PluginDependencyRecalculationVersion</string>
- <integer value="1" key="NS.object.0"/>
- </object>
- <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBProxyObject" id="841351856">
- <string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBProxyObject" id="371349661">
- <string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBUITableViewCell" id="507262743">
- <reference key="NSNextResponder"/>
- <int key="NSvFlags">290</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBUIView" id="659685403">
- <reference key="NSNextResponder" ref="507262743"/>
- <int key="NSvFlags">256</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBUILabel" id="697203718">
- <reference key="NSNextResponder" ref="659685403"/>
- <int key="NSvFlags">294</int>
- <string key="NSFrame">{{9, 10}, {200, 21}}</string>
- <reference key="NSSuperview" ref="659685403"/>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClipsSubviews">YES</bool>
- <bool key="IBUIUserInteractionEnabled">NO</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <string key="IBUIText">Label</string>
- <object class="NSColor" key="IBUITextColor">
- <int key="NSColorSpace">1</int>
- <bytes key="NSRGB">MCAwIDAAA</bytes>
- </object>
- <nil key="IBUIHighlightedColor"/>
- <int key="IBUIBaselineAdjustment">1</int>
- <float key="IBUIMinimumFontSize">10</float>
- <object class="IBUIFontDescription" key="IBUIFontDescription">
- <string key="name">Helvetica-Bold</string>
- <string key="family">Helvetica</string>
- <int key="traits">2</int>
- <double key="pointSize">17</double>
- </object>
- <object class="NSFont" key="IBUIFont">
- <string key="NSName">Helvetica-Bold</string>
- <double key="NSSize">17</double>
- <int key="NSfFlags">16</int>
- </object>
- </object>
- <object class="IBUISwitch" id="297989004">
- <reference key="NSNextResponder" ref="659685403"/>
- <int key="NSvFlags">289</int>
- <string key="NSFrame">{{218, 8}, {94, 27}}</string>
- <reference key="NSSuperview" ref="659685403"/>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClipsSubviews">YES</bool>
- <bool key="IBUIMultipleTouchEnabled">YES</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <int key="IBUIContentHorizontalAlignment">0</int>
- <int key="IBUIContentVerticalAlignment">0</int>
- <bool key="IBUIOn">YES</bool>
- </object>
- </object>
- <string key="NSFrameSize">{320, 43}</string>
- <reference key="NSSuperview" ref="507262743"/>
- <object class="NSColor" key="IBUIBackgroundColor">
- <int key="NSColorSpace">3</int>
- <bytes key="NSWhite">MCAwAA</bytes>
- </object>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClipsSubviews">YES</bool>
- <int key="IBUIContentMode">4</int>
- <bool key="IBUIMultipleTouchEnabled">YES</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- </object>
- <string key="NSFrameSize">{320, 44}</string>
- <reference key="NSSuperview"/>
- <object class="NSColor" key="IBUIBackgroundColor">
- <int key="NSColorSpace">1</int>
- <bytes key="NSRGB">MC45Njg2Mjc0NTEgMC45Njg2Mjc0NTEgMC45Njg2Mjc0NTEAA</bytes>
- </object>
- <bool key="IBUIClipsSubviews">YES</bool>
- <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <int key="IBUISelectionStyle">0</int>
- <reference key="IBUIContentView" ref="659685403"/>
- <string key="IBUIReuseIdentifier">PSToggleSwitchSpecifier</string>
- </object>
- </object>
- <object class="IBObjectContainer" key="IBDocument.Objects">
- <object class="NSMutableArray" key="connectionRecords">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">toggle</string>
- <reference key="source" ref="507262743"/>
- <reference key="destination" ref="297989004"/>
- </object>
- <int key="connectionID">8</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">label</string>
- <reference key="source" ref="507262743"/>
- <reference key="destination" ref="697203718"/>
- </object>
- <int key="connectionID">9</int>
- </object>
- </object>
- <object class="IBMutableOrderedSet" key="objectRecords">
- <object class="NSArray" key="orderedObjects">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBObjectRecord">
- <int key="objectID">0</int>
- <object class="NSArray" key="object" id="0">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
- <reference key="children" ref="1000"/>
- <nil key="parent"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-1</int>
- <reference key="object" ref="841351856"/>
- <reference key="parent" ref="0"/>
- <string key="objectName">File's Owner</string>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-2</int>
- <reference key="object" ref="371349661"/>
- <reference key="parent" ref="0"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">2</int>
- <reference key="object" ref="507262743"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="697203718"/>
- <reference ref="297989004"/>
- </object>
- <reference key="parent" ref="0"/>
- <string key="objectName">Toggle Switch Specifier View Cell - PSToggleSwitchSpecifier</string>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">3</int>
- <reference key="object" ref="697203718"/>
- <reference key="parent" ref="507262743"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">4</int>
- <reference key="object" ref="297989004"/>
- <reference key="parent" ref="507262743"/>
- </object>
- </object>
- </object>
- <object class="NSMutableDictionary" key="flattenedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSArray" key="dict.sortedKeys">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>-1.IBPluginDependency</string>
- <string>-2.CustomClassName</string>
- <string>-2.IBPluginDependency</string>
- <string>2.CustomClassName</string>
- <string>2.IBPluginDependency</string>
- <string>3.IBPluginDependency</string>
- <string>4.CustomClassName</string>
- <string>4.IBPluginDependency</string>
- </object>
- <object class="NSArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>UIResponder</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>IASKPSToggleSwitchSpecifierViewCell</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>IASKSwitch</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- </object>
- <object class="NSMutableDictionary" key="unlocalizedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <reference key="dict.values" ref="0"/>
- </object>
- <nil key="activeLocalization"/>
- <object class="NSMutableDictionary" key="localizations">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <reference key="dict.values" ref="0"/>
- </object>
- <nil key="sourceID"/>
- <int key="maxID">9</int>
- </object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
- <int key="IBDocument.localizationMode">0</int>
- <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
- <real value="1296" key="NS.object.0"/>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
- <integer value="3100" key="NS.object.0"/>
- </object>
- <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
- <int key="IBDocument.defaultPropertyAccessControl">3</int>
- <string key="IBCocoaTouchPluginVersion">1179</string>
- </data>
-</archive>
diff --git a/ios/iosremote/InAppSettingsKit/Xibs/IASKSpecifierValuesView.xib b/ios/iosremote/InAppSettingsKit/Xibs/IASKSpecifierValuesView.xib
deleted file mode 100755
index 6d1f85687462..000000000000
--- a/ios/iosremote/InAppSettingsKit/Xibs/IASKSpecifierValuesView.xib
+++ /dev/null
@@ -1,227 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
- <data>
- <int key="IBDocument.SystemTarget">1552</int>
- <string key="IBDocument.SystemVersion">12E55</string>
- <string key="IBDocument.InterfaceBuilderVersion">3084</string>
- <string key="IBDocument.AppKitVersion">1187.39</string>
- <string key="IBDocument.HIToolboxVersion">626.00</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
- <string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string key="NS.object.0">2083</string>
- </object>
- <object class="NSArray" key="IBDocument.IntegratedClassDependencies">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>IBProxyObject</string>
- <string>IBUITableView</string>
- <string>IBUIView</string>
- </object>
- <object class="NSArray" key="IBDocument.PluginDependencies">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.Metadata">
- <string key="NS.key.0">PluginDependencyRecalculationVersion</string>
- <integer value="1" key="NS.object.0"/>
- </object>
- <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBProxyObject" id="372490531">
- <string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBProxyObject" id="975951072">
- <string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- <object class="IBUIView" id="191373211">
- <reference key="NSNextResponder"/>
- <int key="NSvFlags">292</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBUITableView" id="575792171">
- <reference key="NSNextResponder" ref="191373211"/>
- <int key="NSvFlags">274</int>
- <string key="NSFrameSize">{320, 460}</string>
- <reference key="NSSuperview" ref="191373211"/>
- <reference key="NSWindow"/>
- <object class="NSColor" key="IBUIBackgroundColor">
- <int key="NSColorSpace">1</int>
- <bytes key="NSRGB">MC45Mjk0MTE3NjQ3IDAuOTI5NDExNzY0NyAwLjkyOTQxMTc2NDcAA</bytes>
- </object>
- <bool key="IBUIOpaque">NO</bool>
- <bool key="IBUIClipsSubviews">YES</bool>
- <bool key="IBUIClearsContextBeforeDrawing">NO</bool>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <bool key="IBUIBouncesZoom">NO</bool>
- <int key="IBUIStyle">1</int>
- <int key="IBUISeparatorStyle">1</int>
- <int key="IBUISectionIndexMinimumDisplayRowCount">0</int>
- <bool key="IBUIShowsSelectionImmediatelyOnTouchBegin">YES</bool>
- <float key="IBUIRowHeight">44</float>
- <float key="IBUISectionHeaderHeight">10</float>
- <float key="IBUISectionFooterHeight">10</float>
- </object>
- </object>
- <string key="NSFrameSize">{320, 460}</string>
- <reference key="NSSuperview"/>
- <reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="575792171"/>
- <object class="NSColor" key="IBUIBackgroundColor">
- <int key="NSColorSpace">3</int>
- <bytes key="NSWhite">MQA</bytes>
- <object class="NSColorSpace" key="NSCustomColorSpace">
- <int key="NSID">2</int>
- </object>
- </object>
- <string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
- </object>
- </object>
- <object class="IBObjectContainer" key="IBDocument.Objects">
- <object class="NSMutableArray" key="connectionRecords">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">view</string>
- <reference key="source" ref="372490531"/>
- <reference key="destination" ref="191373211"/>
- </object>
- <int key="connectionID">3</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">_tableView</string>
- <reference key="source" ref="372490531"/>
- <reference key="destination" ref="575792171"/>
- </object>
- <int key="connectionID">7</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">dataSource</string>
- <reference key="source" ref="575792171"/>
- <reference key="destination" ref="372490531"/>
- </object>
- <int key="connectionID">5</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBCocoaTouchOutletConnection" key="connection">
- <string key="label">delegate</string>
- <reference key="source" ref="575792171"/>
- <reference key="destination" ref="372490531"/>
- </object>
- <int key="connectionID">6</int>
- </object>
- </object>
- <object class="IBMutableOrderedSet" key="objectRecords">
- <object class="NSArray" key="orderedObjects">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBObjectRecord">
- <int key="objectID">0</int>
- <object class="NSArray" key="object" id="0">
- <bool key="EncodedWithXMLCoder">YES</bool>
- </object>
- <reference key="children" ref="1000"/>
- <nil key="parent"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">1</int>
- <reference key="object" ref="191373211"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="575792171"/>
- </object>
- <reference key="parent" ref="0"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-1</int>
- <reference key="object" ref="372490531"/>
- <reference key="parent" ref="0"/>
- <string key="objectName">File's Owner</string>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">-2</int>
- <reference key="object" ref="975951072"/>
- <reference key="parent" ref="0"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">4</int>
- <reference key="object" ref="575792171"/>
- <reference key="parent" ref="191373211"/>
- </object>
- </object>
- </object>
- <object class="NSMutableDictionary" key="flattenedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSArray" key="dict.sortedKeys">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>-1.CustomClassName</string>
- <string>-1.IBPluginDependency</string>
- <string>-2.CustomClassName</string>
- <string>-2.IBPluginDependency</string>
- <string>1.IBPluginDependency</string>
- <string>4.IBPluginDependency</string>
- </object>
- <object class="NSArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>IASKSpecifierValuesViewController</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>UIResponder</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- <string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
- </object>
- </object>
- <object class="NSMutableDictionary" key="unlocalizedProperties">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <reference key="dict.values" ref="0"/>
- </object>
- <nil key="activeLocalization"/>
- <object class="NSMutableDictionary" key="localizations">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference key="dict.sortedKeys" ref="0"/>
- <reference key="dict.values" ref="0"/>
- </object>
- <nil key="sourceID"/>
- <int key="maxID">7</int>
- </object>
- <object class="IBClassDescriber" key="IBDocument.Classes">
- <object class="NSMutableArray" key="referencedPartialClassDescriptions">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBPartialClassDescription">
- <string key="className">IASKSpecifierValuesViewController</string>
- <string key="superclassName">UIViewController</string>
- <object class="NSMutableDictionary" key="outlets">
- <string key="NS.key.0">tableView</string>
- <string key="NS.object.0">UITableView</string>
- </object>
- <object class="NSMutableDictionary" key="toOneOutletInfosByName">
- <string key="NS.key.0">tableView</string>
- <object class="IBToOneOutletInfo" key="NS.object.0">
- <string key="name">tableView</string>
- <string key="candidateClassName">UITableView</string>
- </object>
- </object>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/IASKSpecifierValuesViewController.h</string>
- </object>
- </object>
- </object>
- </object>
- <int key="IBDocument.localizationMode">0</int>
- <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
- <real value="1552" key="NS.object.0"/>
- </object>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
- <integer value="3000" key="NS.object.0"/>
- </object>
- <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
- <int key="IBDocument.defaultPropertyAccessControl">3</int>
- <string key="IBCocoaTouchPluginVersion">2083</string>
- </data>
-</archive>
diff --git a/ios/iosremote/PopoverView/PopoverView.h b/ios/iosremote/PopoverView/PopoverView.h
deleted file mode 100755
index 6766ab1fbccd..000000000000
--- a/ios/iosremote/PopoverView/PopoverView.h
+++ /dev/null
@@ -1,208 +0,0 @@
-//
-// PopoverView
-// https://github.com/runway20/PopoverView
-//
-//(MIT Licensed)
-//
-//Copyright (c) 2012 Runway 20 Inc.
-//
-//Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-//
-//The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-//
-//THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-#import <UIKit/UIKit.h>
-#import "PopoverViewCompatibility.h"
-
-
-/**************** Support both ARC and non-ARC ********************/
-
-#ifndef SUPPORT_ARC
-#define SUPPORT_ARC
-
-#if __has_feature(objc_arc_weak) //objc_arc_weak
-#define WEAK weak
-#define __WEAK __weak
-#define STRONG strong
-
-#define AUTORELEASE self
-#define RELEASE self
-#define RETAIN self
-#define CFTYPECAST(exp) (__bridge exp)
-#define TYPECAST(exp) (__bridge_transfer exp)
-#define CFRELEASE(exp) CFRelease(exp)
-#define DEALLOC self
-
-#elif __has_feature(objc_arc) //objc_arc
-#define WEAK unsafe_unretained
-#define __WEAK __unsafe_unretained
-#define STRONG strong
-
-#define AUTORELEASE self
-#define RELEASE self
-#define RETAIN self
-#define CFTYPECAST(exp) (__bridge exp)
-#define TYPECAST(exp) (__bridge_transfer exp)
-#define CFRELEASE(exp) CFRelease(exp)
-#define DEALLOC self
-
-#else //none
-#define WEAK assign
-#define __WEAK
-#define STRONG retain
-
-#define AUTORELEASE autorelease
-#define RELEASE release
-#define RETAIN retain
-#define CFTYPECAST(exp) (exp)
-#define TYPECAST(exp) (exp)
-#define CFRELEASE(exp) CFRelease(exp)
-#define DEALLOC dealloc
-
-#endif
-#endif
-
-/******************************************************************/
-
-
-@class PopoverView;
-
-@protocol PopoverViewDelegate <NSObject>
-
-@optional
-
-//Delegate receives this call as soon as the item has been selected
-- (void)popoverView:(PopoverView *)popoverView didSelectItemAtIndex:(NSInteger)index;
-
-//Delegate receives this call once the popover has begun the dismissal animation
-- (void)popoverViewDidDismiss:(PopoverView *)popoverView;
-
-@end
-
-@interface PopoverView : UIView {
- CGRect boxFrame;
- CGSize contentSize;
- CGPoint arrowPoint;
-
- BOOL above;
-
- __WEAK id<PopoverViewDelegate> delegate;
-
- UIView *parentView;
-
- UIView *topView;
-
- NSArray *subviewsArray;
-
- NSArray *dividerRects;
-
- UIView *contentView;
-
- UIView *titleView;
-
- UIActivityIndicatorView *activityIndicator;
-
- //Instance variable that can change at runtime
- BOOL showDividerRects;
-}
-
-@property (nonatomic, STRONG) UIView *titleView;
-
-@property (nonatomic, STRONG) UIView *contentView;
-
-@property (nonatomic, STRONG) NSArray *subviewsArray;
-
-@property (nonatomic, WEAK) id<PopoverViewDelegate> delegate;
-
-#pragma mark - Class Static Showing Methods
-
-//These are the main static methods you can use to display the popover.
-//Simply call [PopoverView show...] with your arguments, and the popover will be generated, added to the view stack, and notify you when it's done.
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withText:(NSString *)text delegate:(id<PopoverViewDelegate>)delegate;
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withText:(NSString *)text delegate:(id<PopoverViewDelegate>)delegate;
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withViewArray:(NSArray *)viewArray delegate:(id<PopoverViewDelegate>)delegate;
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withViewArray:(NSArray *)viewArray delegate:(id<PopoverViewDelegate>)delegate;
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withStringArray:(NSArray *)stringArray delegate:(id<PopoverViewDelegate>)delegate;
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withStringArray:(NSArray *)stringArray delegate:(id<PopoverViewDelegate>)delegate;
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withStringArray:(NSArray *)stringArray withImageArray:(NSArray *)imageArray delegate:(id<PopoverViewDelegate>)delegate;
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withStringArray:(NSArray *)stringArray withImageArray:(NSArray *)imageArray delegate:(id<PopoverViewDelegate>)delegate;
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withContentView:(UIView *)cView delegate:(id<PopoverViewDelegate>)delegate;
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withContentView:(UIView *)cView delegate:(id<PopoverViewDelegate>)delegate;
-
-#pragma mark - Instance Showing Methods
-
-//Adds/animates in the popover to the top of the view stack with the arrow pointing at the "point"
-//within the specified view. The contentView will be added to the popover, and should have either
-//a clear color backgroundColor, or perhaps a rounded corner bg rect (radius 4.f if you're going to
-//round).
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withContentView:(UIView *)contentView;
-
-//Calls above method with a UILabel containing the text you deliver to this method.
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withText:(NSString *)text;
-
-//Calls top method with an array of UIView objects. This method will stack these views vertically
-//with kBoxPadding padding between each view in the y-direction.
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withViewArray:(NSArray *)viewArray;
-
-//Does same as above, but adds a title label at top of the popover.
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withViewArray:(NSArray *)viewArray;
-
-//Calls the viewArray method with an array of UILabels created with the strings
-//in stringArray. All contents of stringArray must be NSStrings.
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withStringArray:(NSArray *)stringArray;
-
-//This method does same as above, but with a title label at the top of the popover.
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withStringArray:(NSArray *)stringArray;
-
-//Draws a vertical list of the NSString elements of stringArray with UIImages
-//from imageArray placed centered above them.
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withStringArray:(NSArray *)stringArray withImageArray:(NSArray *)imageArray;
-
-//Does the same as above, but with a title
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withStringArray:(NSArray *)stringArray withImageArray:(NSArray *)imageArray;
-
-//Lays out the PopoverView at a point once all of the views have already been setup elsewhere
-- (void)layoutAtPoint:(CGPoint)point inView:(UIView *)view;
-
-#pragma mark - Other Interaction
-//This method animates the rotation of the PopoverView to a new point
-- (void)animateRotationToNewPoint:(CGPoint)point inView:(UIView *)view withDuration:(NSTimeInterval)duration;
-
-#pragma mark - Dismissal
-//Dismisses the view, and removes it from the view stack.
-- (void)dismiss;
-- (void)dismiss:(BOOL)animated;
-
-#pragma mark - Activity Indicator Methods
-
-//Shows the activity indicator, and changes the title (if the title is available, and is a UILabel).
-- (void)showActivityIndicatorWithMessage:(NSString *)msg;
-
-//Hides the activity indicator, and changes the title (if the title is available) to the msg
-- (void)hideActivityIndicatorWithMessage:(NSString *)msg;
-
-#pragma mark - Custom Image Showing
-
-//Animate in, and display the image provided here.
-- (void)showImage:(UIImage *)image withMessage:(NSString *)msg;
-
-#pragma mark - Error/Success Methods
-
-//Shows (and animates in) an error X in the contentView
-- (void)showError;
-
-//Shows (and animates in) a success checkmark in the contentView
-- (void)showSuccess;
-
-@end
diff --git a/ios/iosremote/PopoverView/PopoverView.m b/ios/iosremote/PopoverView/PopoverView.m
deleted file mode 100755
index 678033afcfb8..000000000000
--- a/ios/iosremote/PopoverView/PopoverView.m
+++ /dev/null
@@ -1,1069 +0,0 @@
-//
-// PopoverView
-// https://github.com/runway20/PopoverView
-//
-//(MIT Licensed)
-//
-//Copyright (c) 2012 Runway 20 Inc.
-//
-//Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-//
-//The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-//
-//THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-#import "PopoverView.h"
-#import "PopoverView_Configuration.h"
-#import "UIImage+imageWithColor.h"
-#import <QuartzCore/QuartzCore.h>
-
-#pragma mark - Implementation
-
-@implementation PopoverView
-
-@synthesize subviewsArray;
-@synthesize contentView;
-@synthesize titleView;
-@synthesize delegate;
-
-#pragma mark - Static Methods
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withText:(NSString *)text delegate:(id<PopoverViewDelegate>)delegate {
- PopoverView *popoverView = [[PopoverView alloc] initWithFrame:CGRectZero];
- [popoverView showAtPoint:point inView:view withText:text];
- popoverView.delegate = delegate;
- [popoverView RELEASE];
- return popoverView;
-}
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withText:(NSString *)text delegate:(id<PopoverViewDelegate>)delegate {
- PopoverView *popoverView = [[PopoverView alloc] initWithFrame:CGRectZero];
- [popoverView showAtPoint:point inView:view withTitle:title withText:text];
- popoverView.delegate = delegate;
- [popoverView RELEASE];
- return popoverView;
-}
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withViewArray:(NSArray *)viewArray delegate:(id<PopoverViewDelegate>)delegate {
- PopoverView *popoverView = [[PopoverView alloc] initWithFrame:CGRectZero];
- [popoverView showAtPoint:point inView:view withViewArray:viewArray];
- popoverView.delegate = delegate;
- [popoverView RELEASE];
- return popoverView;
-}
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withViewArray:(NSArray *)viewArray delegate:(id<PopoverViewDelegate>)delegate {
- PopoverView *popoverView = [[PopoverView alloc] initWithFrame:CGRectZero];
- [popoverView showAtPoint:point inView:view withTitle:title withViewArray:viewArray];
- popoverView.delegate = delegate;
- [popoverView RELEASE];
- return popoverView;
-}
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withStringArray:(NSArray *)stringArray delegate:(id<PopoverViewDelegate>)delegate {
- PopoverView *popoverView = [[PopoverView alloc] initWithFrame:CGRectZero];
- [popoverView showAtPoint:point inView:view withStringArray:stringArray];
- popoverView.delegate = delegate;
- [popoverView RELEASE];
- return popoverView;
-}
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withStringArray:(NSArray *)stringArray delegate:(id<PopoverViewDelegate>)delegate {
- PopoverView *popoverView = [[PopoverView alloc] initWithFrame:CGRectZero];
- [popoverView showAtPoint:point inView:view withTitle:title withStringArray:stringArray];
- popoverView.delegate = delegate;
- [popoverView RELEASE];
- return popoverView;
-}
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withStringArray:(NSArray *)stringArray withImageArray:(NSArray *)imageArray delegate:(id<PopoverViewDelegate>)delegate {
- PopoverView *popoverView = [[PopoverView alloc] initWithFrame:CGRectZero];
- [popoverView showAtPoint:point inView:view withStringArray:stringArray withImageArray:imageArray];
- popoverView.delegate = delegate;
- [popoverView RELEASE];
- return popoverView;
-}
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withStringArray:(NSArray *)stringArray withImageArray:(NSArray *)imageArray delegate:(id<PopoverViewDelegate>)delegate {
- PopoverView *popoverView = [[PopoverView alloc] initWithFrame:CGRectZero];
- [popoverView showAtPoint:point inView:view withTitle:title withStringArray:stringArray withImageArray:imageArray];
- popoverView.delegate = delegate;
- [popoverView RELEASE];
- return popoverView;
-}
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withContentView:(UIView *)cView delegate:(id<PopoverViewDelegate>)delegate {
- PopoverView *popoverView = [[PopoverView alloc] initWithFrame:CGRectZero];
- [popoverView showAtPoint:point inView:view withTitle:title withContentView:cView];
- popoverView.delegate = delegate;
- [popoverView RELEASE];
- return popoverView;
-}
-
-+ (PopoverView *)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withContentView:(UIView *)cView delegate:(id<PopoverViewDelegate>)delegate {
- PopoverView *popoverView = [[PopoverView alloc] initWithFrame:CGRectZero];
- [popoverView showAtPoint:point inView:view withContentView:cView];
- popoverView.delegate = delegate;
- [popoverView RELEASE];
- return popoverView;
-}
-
-#pragma mark - View Lifecycle
-
-- (id)initWithFrame:(CGRect)frame
-{
- self = [super initWithFrame:frame];
- if (self) {
- // Initialization code
-
- self.backgroundColor = [UIColor clearColor];
-
- self.titleView = nil;
- self.contentView = nil;
-
- showDividerRects = kShowDividersBetweenViews;
- }
- return self;
-}
-
-- (void)dealloc
-{
- self.subviewsArray = nil;
-
- if (dividerRects) {
- [dividerRects RELEASE];
- dividerRects = nil;
- }
-
- self.contentView = nil;
- self.titleView = nil;
-
- [super DEALLOC];
-}
-
-
-
-#pragma mark - Display methods
-
-// get the screen size, adjusted for orientation and status bar display
-// see http://stackoverflow.com/questions/7905432/how-to-get-orientation-dependent-height-and-width-of-the-screen/7905540#7905540
-- (CGSize) screenSize
-{
- UIInterfaceOrientation orientation = [UIApplication sharedApplication].statusBarOrientation;
- CGSize size = [UIScreen mainScreen].bounds.size;
- UIApplication *application = [UIApplication sharedApplication];
- if (UIInterfaceOrientationIsLandscape(orientation))
- {
- size = CGSizeMake(size.height, size.width);
- }
- if (application.statusBarHidden == NO)
- {
- size.height -= MIN(application.statusBarFrame.size.width, application.statusBarFrame.size.height);
- }
- return size;
-}
-
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withText:(NSString *)text
-{
- UIFont *font = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad ? kSmallTextFontPad : kTextFontPhone;
-
- CGSize screenSize = [self screenSize];
- CGSize textSize = [text sizeWithFont:font constrainedToSize:CGSizeMake(screenSize.width - kHorizontalMargin*4.f, 1000.f) lineBreakMode:UILineBreakModeWordWrap];
-
- UILabel *textView = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, textSize.width, textSize.height)];
- textView.backgroundColor = [UIColor clearColor];
- textView.userInteractionEnabled = NO;
- [textView setNumberOfLines:0]; //This is so the label word wraps instead of cutting off the text
- textView.font = font;
- textView.textAlignment = kTextAlignmentLeft;
- textView.textColor = kTextColor;
- textView.text = text;
-
- [self showAtPoint:point inView:view withViewArray:[NSArray arrayWithObject:[textView AUTORELEASE]]];
-}
-
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withText:(NSString *)text
-{
- UIFont *font = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad ? kTextFontPad : kTextFontPhone;
-
- CGSize screenSize = [self screenSize];
- CGSize textSize = [text sizeWithFont:font constrainedToSize:CGSizeMake(screenSize.width - kHorizontalMargin*4.f, 1000.f) lineBreakMode:UILineBreakModeWordWrap];
-
- UILabel *textView = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, textSize.width, textSize.height)];
- textView.backgroundColor = [UIColor clearColor];
- textView.userInteractionEnabled = NO;
- [textView setNumberOfLines:0]; //This is so the label word wraps instead of cutting off the text
- textView.font = font;
- textView.textAlignment = kTextAlignment;
- textView.textColor = kTextColor;
- textView.text = text;
-
- [self showAtPoint:point inView:view withTitle:title withViewArray:[NSArray arrayWithObject:[textView AUTORELEASE]]];
-}
-
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withViewArray:(NSArray *)viewArray
-{
- UIView *container = [[UIView alloc] initWithFrame:CGRectZero];
-
- float totalHeight = 0.f;
- float totalWidth = 0.f;
-
- int i = 0;
-
- //Position each view the first time, and identify which view has the largest width that controls
- //the sizing of the popover.
- for (UIView *view in viewArray) {
-
- view.frame = CGRectMake(0, totalHeight, view.frame.size.width, view.frame.size.height);
- //Only add padding below the view if it's not the last item
- float padding = (i == viewArray.count-1) ? 0 : kBoxPadding;
-
- totalHeight += view.frame.size.height + padding;
-
- if (view.frame.size.width > totalWidth) {
- totalWidth = view.frame.size.width;
- }
-
- [container addSubview:view];
-
- i++;
- }
-
- //If dividers are enabled, then we allocate the divider rect array. This will hold NSValues
- if (kShowDividersBetweenViews) {
- dividerRects = [[NSMutableArray alloc] initWithCapacity:viewArray.count-1];
- }
-
- container.frame = CGRectMake(0, 0, totalWidth, totalHeight);
-
- i = 0;
-
- totalHeight = 0;
-
- //Now we actually change the frame element for each subview, and center the views horizontally.
- for (UIView *view in viewArray) {
- if ([view autoresizingMask] == UIViewAutoresizingFlexibleWidth) {
- //Now make sure all flexible views are the full width
- view.frame = CGRectMake(view.frame.origin.x, view.frame.origin.y, totalWidth, view.frame.size.height);
- } else {
- //If the view is not flexible width, then we position it centered in the view
- //without stretching it.
- view.frame = CGRectMake(floorf(CGRectGetMinX(boxFrame) + totalWidth*0.5f - view.frame.size.width*0.5f), view.frame.origin.y, view.frame.size.width, view.frame.size.height);
- }
-
- //and if dividers are enabled, we record their position for the drawing methods
- if (kShowDividersBetweenViews && i != viewArray.count-1) {
- CGRect dividerRect = CGRectMake(view.frame.origin.x, floorf(view.frame.origin.y + view.frame.size.height + kBoxPadding*0.5f), view.frame.size.width, 0.5f);
-
- [((NSMutableArray *)dividerRects) addObject:[NSValue valueWithCGRect:dividerRect]];
- }
-
- //Only add padding below the view if it's not the last item
- float padding = (i == viewArray.count-1) ? 0.f : kBoxPadding;
-
- totalHeight += view.frame.size.height + padding;
-
- i++;
- }
-
- self.subviewsArray = viewArray;
-
- [self showAtPoint:point inView:view withContentView:[container AUTORELEASE]];
-}
-
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withViewArray:(NSArray *)viewArray
-{
- UIView *container = [[UIView alloc] initWithFrame:CGRectZero];
-
- //Create a label for the title text.
- CGSize titleSize = [title sizeWithFont: UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad ? kTitleFontPad : kTitleFontPhone];
- UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(0.f, 0.f, titleSize.width, titleSize.height)];
- titleLabel.backgroundColor = [UIColor clearColor];
- titleLabel.font = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad ? kTitleFontPad : kTitleFontPhone;
- titleLabel.textAlignment = UITextAlignmentCenter;
- titleLabel.textColor = kTitleColor;
- titleLabel.text = title;
-
- //Make sure that the title's label will have non-zero height. If it has zero height, then we don't allocate any space
- //for it in the positioning of the views.
- float titleHeightOffset = (titleSize.height > 0.f ? kBoxPadding : 0.f);
-
- float totalHeight = titleSize.height + titleHeightOffset + kBoxPadding;
- float totalWidth = titleSize.width;
-
- int i = 0;
-
- //Position each view the first time, and identify which view has the largest width that controls
- //the sizing of the popover.
- for (UIView *view in viewArray) {
-
- view.frame = CGRectMake(0, totalHeight, view.frame.size.width, view.frame.size.height);
-
- //Only add padding below the view if it's not the last item.
- float padding = (i == viewArray.count-1) ? 0.f : kBoxPadding;
-
- totalHeight += view.frame.size.height + padding;
-
- if (view.frame.size.width > totalWidth) {
- totalWidth = view.frame.size.width;
- }
-
- [container addSubview:view];
-
- i++;
- }
-
- //If dividers are enabled, then we allocate the divider rect array. This will hold NSValues
- if (kShowDividersBetweenViews) {
- dividerRects = [[NSMutableArray alloc] initWithCapacity:viewArray.count-1];
- }
-
- i = 0;
-
- for (UIView *view in viewArray) {
- if ([view autoresizingMask] == UIViewAutoresizingFlexibleWidth) {
- //Now make sure all flexible views are the full width
- view.frame = CGRectMake(view.frame.origin.x, view.frame.origin.y, totalWidth, view.frame.size.height);
- } else {
- //If the view is not flexible width, then we position it centered in the view
- //without stretching it.
- view.frame = CGRectMake(floorf(CGRectGetMinX(boxFrame) + totalWidth*0.5f - view.frame.size.width*0.5f), view.frame.origin.y, view.frame.size.width, view.frame.size.height);
- }
-
- //and if dividers are enabled, we record their position for the drawing methods
- if (kShowDividersBetweenViews && i != viewArray.count-1) {
- CGRect dividerRect = CGRectMake(view.frame.origin.x, floorf(view.frame.origin.y + view.frame.size.height + kBoxPadding*0.5f), view.frame.size.width, 0.5f);
-
- [((NSMutableArray *)dividerRects) addObject:[NSValue valueWithCGRect:dividerRect]];
- }
-
- i++;
- }
-
- titleLabel.frame = CGRectMake(floorf(totalWidth*0.5f - titleSize.width*0.5f), 0, titleSize.width, titleSize.height);
-
- //Store the titleView as an instance variable if it is larger than 0 height (not an empty string)
- if (titleSize.height > 0) {
- self.titleView = titleLabel;
- }
-
- [container addSubview:[titleLabel AUTORELEASE]];
-
- container.frame = CGRectMake(0, 0, totalWidth, totalHeight);
-
- self.subviewsArray = viewArray;
-
- [self showAtPoint:point inView:view withContentView:[container AUTORELEASE]];
-}
-
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withStringArray:(NSArray *)stringArray
-{
- NSMutableArray *labelArray = [[NSMutableArray alloc] initWithCapacity:stringArray.count];
-
- UIFont *font = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad ? kTextFontPad : kTextFontPhone;
-
- float padding = kBoxPadding;
- float maxItemWidth = 0.0;
-
- for (NSString *string in stringArray) {
- CGSize textSize = [string sizeWithFont:font];
- if (textSize.width > maxItemWidth) {
- maxItemWidth = textSize.width;
- }
- }
-
- for (NSString *string in stringArray) {
- CGSize textSize = [string sizeWithFont:font];
- UIButton *textButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, maxItemWidth + 2 * padding, textSize.height + padding)];
- textButton.titleLabel.font = font;
- textButton.titleLabel.textAlignment = kTextAlignment;
- textButton.titleLabel.textColor = kTextColor;
- [textButton setTitle:string forState:UIControlStateNormal];
- textButton.layer.cornerRadius = 4.f;
- [textButton setTitleColor:kTextColor forState:UIControlStateNormal];
- [textButton setTitleColor:kTextHighlightColor forState:UIControlStateHighlighted];
- [textButton addTarget:self action:@selector(didTapButton:) forControlEvents:UIControlEventTouchUpInside];
-
- [textButton setBackgroundImage:[UIImage imageWithColor:kPopoverItemHighlightBGColor
- size:CGSizeMake(1.f, 1.f)]
- forState:UIControlStateHighlighted];
-
- [labelArray addObject:[textButton AUTORELEASE]];
- }
-
- [self showAtPoint:point inView:view withViewArray:[labelArray AUTORELEASE]];
-}
-
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withStringArray:(NSArray *)stringArray
- {
- NSMutableArray *labelArray = [[NSMutableArray alloc] initWithCapacity:stringArray.count];
-
- UIFont *font = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad ? kTextFontPad : kTextFontPhone;
-
- for (NSString *string in stringArray) {
- CGSize textSize = [string sizeWithFont:font];
- UIButton *textButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, textSize.width, textSize.height)];
- textButton.backgroundColor = [UIColor clearColor];
- textButton.titleLabel.font = font;
- textButton.titleLabel.textAlignment = kTextAlignment;
- textButton.titleLabel.textColor = kTextColor;
- [textButton setTitle:string forState:UIControlStateNormal];
- textButton.layer.cornerRadius = 4.f;
- [textButton setTitleColor:kTextColor forState:UIControlStateNormal];
- [textButton setTitleColor:kTextHighlightColor forState:UIControlStateHighlighted];
- [textButton addTarget:self action:@selector(didTapButton:) forControlEvents:UIControlEventTouchUpInside];
-
- [labelArray addObject:[textButton AUTORELEASE]];
- }
-
- [self showAtPoint:point inView:view withTitle:title withViewArray:[labelArray AUTORELEASE]];
-}
-
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withStringArray:(NSArray *)stringArray withImageArray:(NSArray *)imageArray
-{
- //Here we do something pretty similar to the stringArray method above.
- //We create an array of subviews that contains the strings and images centered above a label.
-
- NSAssert((stringArray.count == imageArray.count), @"stringArray.count should equal imageArray.count");
- NSMutableArray* tempViewArray = [self makeTempViewsWithStrings:stringArray andImages:imageArray];
-
- [self showAtPoint:point inView:view withViewArray:tempViewArray];
-}
-
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withStringArray:(NSArray *)stringArray withImageArray:(NSArray *)imageArray
-{
- NSAssert((stringArray.count == imageArray.count), @"stringArray.count should equal imageArray.count");
- NSMutableArray* tempViewArray = [self makeTempViewsWithStrings:stringArray andImages:imageArray];
-
- [self showAtPoint:point inView:view withTitle:title withViewArray:tempViewArray];
-}
-
-- (NSMutableArray*) makeTempViewsWithStrings:(NSArray *)stringArray andImages:(NSArray *)imageArray
-{
- NSMutableArray *tempViewArray = [[NSMutableArray alloc] initWithCapacity:stringArray.count];
-
- UIFont *font = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad ? kTextFontPad : kTextFontPhone;
-
- for (int i = 0; i < stringArray.count; i++) {
- NSString *string = [stringArray objectAtIndex:i];
-
- //First we build a label for the text to set in.
- CGSize textSize = [string sizeWithFont:font];
- UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, textSize.width, textSize.height)];
- label.backgroundColor = [UIColor clearColor];
- label.font = font;
- label.textAlignment = kTextAlignment;
- label.textColor = kTextColor;
- label.text = string;
- label.layer.cornerRadius = 4.f;
-
- //Now we grab the image at the same index in the imageArray, and create
- //a UIImageView for it.
- UIImage *image = [imageArray objectAtIndex:i];
- UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
-
- //Take the larger of the two widths as the width for the container
- float containerWidth = MAX(imageView.frame.size.width, label.frame.size.width);
- float containerHeight = label.frame.size.height + kImageTopPadding + kImageBottomPadding + imageView.frame.size.height;
-
- //This container will hold both the image and the label
- UIView *containerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, containerWidth, containerHeight)];
-
- //Now we do the frame manipulations to put the imageView on top of the label, both centered
- imageView.frame = CGRectMake(floorf(containerWidth*0.5f - imageView.frame.size.width*0.5f), kImageTopPadding, imageView.frame.size.width, imageView.frame.size.height);
- label.frame = CGRectMake(floorf(containerWidth*0.5f - label.frame.size.width*0.5f), imageView.frame.size.height + kImageBottomPadding + kImageTopPadding, label.frame.size.width, label.frame.size.height);
-
- [containerView addSubview:imageView];
- [containerView addSubview:label];
-
- [label RELEASE];
- [imageView RELEASE];
-
- [tempViewArray addObject:containerView];
- [containerView RELEASE];
- }
-
- return [tempViewArray AUTORELEASE];
-}
-
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withTitle:(NSString *)title withContentView:(UIView *)cView
-{
- [self showAtPoint:point inView:view withTitle:title withViewArray:[NSArray arrayWithObject:cView]];
-}
-
-- (void)showAtPoint:(CGPoint)point inView:(UIView *)view withContentView:(UIView *)cView {
-
- //NSLog(@"point:%f,%f", point.x, point.y);
-
- self.contentView = cView;
- parentView = view;
-
- // get the top view
- // http://stackoverflow.com/questions/3843411/getting-reference-to-the-top-most-view-window-in-ios-application/8045804#8045804
- topView = [[[[UIApplication sharedApplication] keyWindow] subviews] lastObject];
-
- [self setupLayout:point inView:view];
-
- // Make the view small and transparent before animation
- self.alpha = 0.f;
- self.transform = CGAffineTransformMakeScale(0.1f, 0.1f);
-
- // animate into full size
- // First stage animates to 1.05x normal size, then second stage animates back down to 1x size.
- // This two-stage animation creates a little "pop" on open.
- [UIView animateWithDuration:0.2f delay:0.f options:UIViewAnimationOptionCurveEaseInOut animations:^{
- self.alpha = 1.f;
- self.transform = CGAffineTransformMakeScale(1.05f, 1.05f);
- } completion:^(BOOL finished) {
- [UIView animateWithDuration:0.08f delay:0.f options:UIViewAnimationOptionCurveEaseInOut animations:^{
- self.transform = CGAffineTransformIdentity;
- } completion:nil];
- }];
-}
-
-- (void)layoutAtPoint:(CGPoint)point inView:(UIView *)view
-{
- // make transparent
- self.alpha = 0.f;
-
- [self setupLayout:point inView:view];
-
- // animate back to full opacity
- [UIView animateWithDuration:0.2f delay:0.f options:UIViewAnimationOptionCurveEaseInOut animations:^{
- self.alpha = 1.f;
- } completion:nil];
-}
-
--(void)setupLayout:(CGPoint)point inView:(UIView*)view
-{
- CGPoint topPoint = [topView convertPoint:point fromView:view];
-
- arrowPoint = topPoint;
-
- //NSLog(@"arrowPoint:%f,%f", arrowPoint.x, arrowPoint.y);
-
- CGRect topViewBounds = topView.bounds;
- //NSLog(@"topViewBounds %@", NSStringFromCGRect(topViewBounds));
-
- float contentHeight = contentView.frame.size.height;
- float contentWidth = contentView.frame.size.width;
-
- float padding = kBoxPadding;
-
- float boxHeight = contentHeight + 2.f*padding;
- float boxWidth = contentWidth + 2.f*padding;
-
- float xOrigin = 0.f;
-
- //Make sure the arrow point is within the drawable bounds for the popover.
- if (arrowPoint.x + kArrowHeight > topViewBounds.size.width - kHorizontalMargin - kBoxRadius - kArrowHorizontalPadding) {//Too far to the right
- arrowPoint.x = topViewBounds.size.width - kHorizontalMargin - kBoxRadius - kArrowHorizontalPadding - kArrowHeight;
- //NSLog(@"Correcting Arrow Point because it's too far to the right");
- } else if (arrowPoint.x - kArrowHeight < kHorizontalMargin + kBoxRadius + kArrowHorizontalPadding) {//Too far to the left
- arrowPoint.x = kHorizontalMargin + kArrowHeight + kBoxRadius + kArrowHorizontalPadding;
- //NSLog(@"Correcting Arrow Point because it's too far to the left");
- }
-
- //NSLog(@"arrowPoint:%f,%f", arrowPoint.x, arrowPoint.y);
-
- xOrigin = floorf(arrowPoint.x - boxWidth*0.5f);
-
- //Check to see if the centered xOrigin value puts the box outside of the normal range.
- if (xOrigin < CGRectGetMinX(topViewBounds) + kHorizontalMargin) {
- xOrigin = CGRectGetMinX(topViewBounds) + kHorizontalMargin;
- } else if (xOrigin + boxWidth > CGRectGetMaxX(topViewBounds) - kHorizontalMargin) {
- //Check to see if the positioning puts the box out of the window towards the left
- xOrigin = CGRectGetMaxX(topViewBounds) - kHorizontalMargin - boxWidth;
- }
-
- float arrowHeight = kArrowHeight;
-
- float topPadding = kTopMargin;
-
- above = YES;
-
- if (topPoint.y - contentHeight - arrowHeight - topPadding < CGRectGetMinY(topViewBounds)) {
- //Position below because it won't fit above.
- above = NO;
-
- boxFrame = CGRectMake(xOrigin, arrowPoint.y + arrowHeight, boxWidth, boxHeight);
- } else {
- //Position above.
- above = YES;
-
- boxFrame = CGRectMake(xOrigin, arrowPoint.y - arrowHeight - boxHeight, boxWidth, boxHeight);
- }
-
- //NSLog(@"boxFrame:(%f,%f,%f,%f)", boxFrame.origin.x, boxFrame.origin.y, boxFrame.size.width, boxFrame.size.height);
-
- CGRect contentFrame = CGRectMake(boxFrame.origin.x + padding, boxFrame.origin.y + padding, contentWidth, contentHeight);
- contentView.frame = contentFrame;
-
- //We set the anchorPoint here so the popover will "grow" out of the arrowPoint specified by the user.
- //You have to set the anchorPoint before setting the frame, because the anchorPoint property will
- //implicitly set the frame for the view, which we do not want.
- self.layer.anchorPoint = CGPointMake(arrowPoint.x / topViewBounds.size.width, arrowPoint.y / topViewBounds.size.height);
- self.frame = topViewBounds;
- [self setNeedsDisplay];
-
- [self addSubview:contentView];
- [topView addSubview:self];
-
- //Add a tap gesture recognizer to the large invisible view (self), which will detect taps anywhere on the screen.
- UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapped:)];
- tap.cancelsTouchesInView = NO; // Allow touches through to a UITableView or other touchable view, as suggested by Dimajp.
- [self addGestureRecognizer:tap];
- [tap RELEASE];
-
- self.userInteractionEnabled = YES;
-}
-
-
-#pragma mark - Activity Indicator
-
-//Animates in a progress indicator, and removes
-- (void)showActivityIndicatorWithMessage:(NSString *)msg
-{
- if ([titleView isKindOfClass:[UILabel class]]) {
- ((UILabel *)titleView).text = msg;
- }
-
- if (subviewsArray && (subviewsArray.count > 0)) {
- [UIView animateWithDuration:0.2f animations:^{
- for (UIView *view in subviewsArray) {
- view.alpha = 0.f;
- }
- }];
-
- if (showDividerRects) {
- showDividerRects = NO;
- [self setNeedsDisplay];
- }
- }
-
- if (activityIndicator) {
- [activityIndicator RELEASE];
- [activityIndicator removeFromSuperview];
- activityIndicator = nil;
- }
-
- activityIndicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
- activityIndicator.frame = CGRectMake(CGRectGetMidX(contentView.bounds) - 10.f, CGRectGetMidY(contentView.bounds) - 10.f + 20.f, 20.f, 20.f);
- [contentView addSubview:activityIndicator];
-
- [activityIndicator startAnimating];
-}
-
-- (void)hideActivityIndicatorWithMessage:(NSString *)msg
-{
- if ([titleView isKindOfClass:[UILabel class]]) {
- ((UILabel *)titleView).text = msg;
- }
-
- [activityIndicator stopAnimating];
- [UIView animateWithDuration:0.1f animations:^{
- activityIndicator.alpha = 0.f;
- } completion:^(BOOL finished) {
- [activityIndicator RELEASE];
- [activityIndicator removeFromSuperview];
- activityIndicator = nil;
- }];
-}
-
-- (void)showImage:(UIImage *)image withMessage:(NSString *)msg
-{
- UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
- imageView.alpha = 0.f;
- imageView.frame = CGRectMake(floorf(CGRectGetMidX(contentView.bounds) - image.size.width*0.5f), floorf(CGRectGetMidY(contentView.bounds) - image.size.height*0.5f + ((self.titleView) ? 20 : 0.f)), image.size.width, image.size.height);
- imageView.transform = CGAffineTransformMakeScale(0.1f, 0.1f);
-
- [contentView addSubview:[imageView AUTORELEASE]];
-
- if (subviewsArray && (subviewsArray.count > 0)) {
- [UIView animateWithDuration:0.2f animations:^{
- for (UIView *view in subviewsArray) {
- view.alpha = 0.f;
- }
- }];
-
- if (showDividerRects) {
- showDividerRects = NO;
- [self setNeedsDisplay];
- }
- }
-
- if (msg) {
- if ([titleView isKindOfClass:[UILabel class]]) {
- ((UILabel *)titleView).text = msg;
- }
- }
-
- [UIView animateWithDuration:0.2f delay:0.2f options:UIViewAnimationOptionCurveEaseOut animations:^{
- imageView.alpha = 1.f;
- imageView.transform = CGAffineTransformIdentity;
- } completion:^(BOOL finished) {
- //[imageView removeFromSuperview];
- }];
-}
-
-- (void)showError
-{
- UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"error"]];
- imageView.alpha = 0.f;
- imageView.frame = CGRectMake(CGRectGetMidX(contentView.bounds) - 20.f, CGRectGetMidY(contentView.bounds) - 20.f + ((self.titleView) ? 20 : 0.f), 40.f, 40.f);
- imageView.transform = CGAffineTransformMakeScale(0.1f, 0.1f);
-
- [contentView addSubview:[imageView AUTORELEASE]];
-
- if (subviewsArray && (subviewsArray.count > 0)) {
- [UIView animateWithDuration:0.1f animations:^{
- for (UIView *view in subviewsArray) {
- view.alpha = 0.f;
- }
- }];
-
- if (showDividerRects) {
- showDividerRects = NO;
- [self setNeedsDisplay];
- }
- }
-
- [UIView animateWithDuration:0.1f delay:0.1f options:UIViewAnimationOptionCurveEaseOut animations:^{
- imageView.alpha = 1.f;
- imageView.transform = CGAffineTransformIdentity;
- } completion:^(BOOL finished) {
- //[imageView removeFromSuperview];
- }];
-
-}
-
-- (void)showSuccess
-{
- UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"success"]];
- imageView.alpha = 0.f;
- imageView.frame = CGRectMake(CGRectGetMidX(contentView.bounds) - 20.f, CGRectGetMidY(contentView.bounds) - 20.f + ((self.titleView) ? 20 : 0.f), 40.f, 40.f);
- imageView.transform = CGAffineTransformMakeScale(0.1f, 0.1f);
-
- [contentView addSubview:[imageView AUTORELEASE]];
-
- if (subviewsArray && (subviewsArray.count > 0)) {
- [UIView animateWithDuration:0.1f animations:^{
- for (UIView *view in subviewsArray) {
- view.alpha = 0.f;
- }
- }];
-
- if (showDividerRects) {
- showDividerRects = NO;
- [self setNeedsDisplay];
- }
- }
-
- [UIView animateWithDuration:0.1f delay:0.1f options:UIViewAnimationOptionCurveEaseOut animations:^{
- imageView.alpha = 1.f;
- imageView.transform = CGAffineTransformIdentity;
- } completion:^(BOOL finished) {
- //[imageView removeFromSuperview];
- }];
-
-}
-
-#pragma mark - User Interaction
-
-- (void)tapped:(UITapGestureRecognizer *)tap
-{
- CGPoint point = [tap locationInView:contentView];
-
- //NSLog(@"point:(%f,%f)", point.x, point.y);
-
- BOOL found = NO;
-
- //NSLog(@"subviewsArray:%@", subviewsArray);
-
- for (int i = 0; i < subviewsArray.count && !found; i++) {
- UIView *view = [subviewsArray objectAtIndex:i];
-
- //NSLog(@"Rect:(%f,%f,%f,%f)", view.frame.origin.x, view.frame.origin.y, view.frame.size.width, view.frame.size.height);
-
- if (CGRectContainsPoint(view.frame, point)) {
- //The tap was within this view, so we notify the delegate, and break the loop.
-
- found = YES;
-
- //NSLog(@"Tapped subview:%d", i);
-
- if ([view isKindOfClass:[UIButton class]]) {
- return;
- }
-
- if (delegate && [delegate respondsToSelector:@selector(popoverView:didSelectItemAtIndex:)]) {
- [delegate popoverView:self didSelectItemAtIndex:i];
- }
-
- break;
- }
- }
-
- if (!found && CGRectContainsPoint(contentView.bounds, point)) {
- found = YES;
- //NSLog(@"popover box contains point, ignoring user input");
- }
-
- if (!found) {
- [self dismiss:YES];
- }
-
-}
-
-- (void)didTapButton:(UIButton *)sender
-{
- int index = [subviewsArray indexOfObject:sender];
-
- if (index == NSNotFound) {
- return;
- }
-
- if (delegate && [delegate respondsToSelector:@selector(popoverView:didSelectItemAtIndex:)]) {
- [delegate popoverView:self didSelectItemAtIndex:index];
- }
-}
-
-- (void)dismiss
-{
- [self dismiss:YES];
-}
-
-- (void)dismiss:(BOOL)animated
-{
- if (!animated)
- {
- [self dismissComplete];
- }
- else
- {
- [UIView animateWithDuration:0.3f animations:^{
- self.alpha = 0.1f;
- self.transform = CGAffineTransformMakeScale(0.1f, 0.1f);
- } completion:^(BOOL finished) {
- [self dismissComplete];
- }];
- }
-}
-
-- (void)dismissComplete
-{
- [self removeFromSuperview];
-
- if (self.delegate && [self.delegate respondsToSelector:@selector(popoverViewDidDismiss:)]) {
- [delegate popoverViewDidDismiss:self];
- }
-}
-
-- (void)animateRotationToNewPoint:(CGPoint)point inView:(UIView *)view withDuration:(NSTimeInterval)duration
-{
- [self layoutAtPoint:point inView:view];
-}
-
-#pragma mark - Drawing Routines
-
-// Only override drawRect: if you perform custom drawing.
-// An empty implementation adversely affects performance during animation.
-- (void)drawRect:(CGRect)rect
-{
- // Drawing code
-
- // Build the popover path
- CGRect frame = boxFrame;
-
- float xMin = CGRectGetMinX(frame);
- float yMin = CGRectGetMinY(frame);
-
- float xMax = CGRectGetMaxX(frame);
- float yMax = CGRectGetMaxY(frame);
-
- float radius = kBoxRadius; //Radius of the curvature.
-
- float cpOffset = kCPOffset; //Control Point Offset. Modifies how "curved" the corners are.
-
-
- /*
- LT2 RT1
- LT1⌜⎺⎺⎺⎺⎺⎺⎺⎺⎺⎺⎺⎺⎺⎺⎺⌝RT2
- | |
- | popover |
- | |
- LB2⌞_______________⌟RB1
- LB1 RB2
-
- Traverse rectangle in clockwise order, starting at LT1
- L = Left
- R = Right
- T = Top
- B = Bottom
- 1,2 = order of traversal for any given corner
-
- */
-
- UIBezierPath *popoverPath = [UIBezierPath bezierPath];
- [popoverPath moveToPoint:CGPointMake(CGRectGetMinX(frame), CGRectGetMinY(frame) + radius)];//LT1
- [popoverPath addCurveToPoint:CGPointMake(xMin + radius, yMin) controlPoint1:CGPointMake(xMin, yMin + radius - cpOffset) controlPoint2:CGPointMake(xMin + radius - cpOffset, yMin)];//LT2
-
- //If the popover is positioned below (!above) the arrowPoint, then we know that the arrow must be on the top of the popover.
- //In this case, the arrow is located between LT2 and RT1
- if (!above) {
- [popoverPath addLineToPoint:CGPointMake(arrowPoint.x - kArrowHeight, yMin)];//left side
- [popoverPath addCurveToPoint:arrowPoint controlPoint1:CGPointMake(arrowPoint.x - kArrowHeight + kArrowCurvature, yMin) controlPoint2:arrowPoint];//actual arrow point
- [popoverPath addCurveToPoint:CGPointMake(arrowPoint.x + kArrowHeight, yMin) controlPoint1:arrowPoint controlPoint2:CGPointMake(arrowPoint.x + kArrowHeight - kArrowCurvature, yMin)];//right side
- }
-
- [popoverPath addLineToPoint:CGPointMake(xMax - radius, yMin)];//RT1
- [popoverPath addCurveToPoint:CGPointMake(xMax, yMin + radius) controlPoint1:CGPointMake(xMax - radius + cpOffset, yMin) controlPoint2:CGPointMake(xMax, yMin + radius - cpOffset)];//RT2
- [popoverPath addLineToPoint:CGPointMake(xMax, yMax - radius)];//RB1
- [popoverPath addCurveToPoint:CGPointMake(xMax - radius, yMax) controlPoint1:CGPointMake(xMax, yMax - radius + cpOffset) controlPoint2:CGPointMake(xMax - radius + cpOffset, yMax)];//RB2
-
- //If the popover is positioned above the arrowPoint, then we know that the arrow must be on the bottom of the popover.
- //In this case, the arrow is located somewhere between LB1 and RB2
- if (above) {
- [popoverPath addLineToPoint:CGPointMake(arrowPoint.x + kArrowHeight, yMax)];//right side
- [popoverPath addCurveToPoint:arrowPoint controlPoint1:CGPointMake(arrowPoint.x + kArrowHeight - kArrowCurvature, yMax) controlPoint2:arrowPoint];//arrow point
- [popoverPath addCurveToPoint:CGPointMake(arrowPoint.x - kArrowHeight, yMax) controlPoint1:arrowPoint controlPoint2:CGPointMake(arrowPoint.x - kArrowHeight + kArrowCurvature, yMax)];
- }
-
- [popoverPath addLineToPoint:CGPointMake(xMin + radius, yMax)];//LB1
- [popoverPath addCurveToPoint:CGPointMake(xMin, yMax - radius) controlPoint1:CGPointMake(xMin + radius - cpOffset, yMax) controlPoint2:CGPointMake(xMin, yMax - radius + cpOffset)];//LB2
- [popoverPath closePath];
-
- //// General Declarations
- CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
- CGContextRef context = UIGraphicsGetCurrentContext();
-
- //// Shadow Declarations
- UIColor* shadow = [UIColor colorWithWhite:0.0f alpha:kShadowAlpha];
- CGSize shadowOffset = CGSizeMake(0, 1);
- CGFloat shadowBlurRadius = kShadowBlur;
-
- //// Gradient Declarations
- NSArray* gradientColors = [NSArray arrayWithObjects:
- (id)kGradientTopColor.CGColor,
- (id)kGradientBottomColor.CGColor, nil];
- CGFloat gradientLocations[] = {0, 1};
- CGGradientRef gradient = CGGradientCreateWithColors(colorSpace, (CFTYPECAST(CFArrayRef)gradientColors), gradientLocations);
-
-
- //These floats are the top and bottom offsets for the gradient drawing so the drawing includes the arrows.
- float bottomOffset = (above ? kArrowHeight : 0.f);
- float topOffset = (!above ? kArrowHeight : 0.f);
-
- //Draw the actual gradient and shadow.
- CGContextSaveGState(context);
- CGContextSetShadowWithColor(context, shadowOffset, shadowBlurRadius, shadow.CGColor);
- CGContextBeginTransparencyLayer(context, NULL);
- [popoverPath addClip];
- CGContextDrawLinearGradient(context, gradient, CGPointMake(CGRectGetMidX(frame), CGRectGetMinY(frame) - topOffset), CGPointMake(CGRectGetMidX(frame), CGRectGetMaxY(frame) + bottomOffset), 0);
- CGContextEndTransparencyLayer(context);
- CGContextRestoreGState(context);
-
- //// Cleanup
- CGGradientRelease(gradient);
- CGColorSpaceRelease(colorSpace);
-
-
- //Draw the title background
- if (kDrawTitleGradient) {
- //Calculate the height of the title bg
- float titleBGHeight = -1;
-
- //NSLog(@"titleView:%@", titleView);
-
- if (titleView != nil) {
- titleBGHeight = kBoxPadding*2.f + titleView.frame.size.height;
- }
-
-
- //Draw the title bg height, but only if we need to.
- if (titleBGHeight > 0.f) {
- CGPoint startingPoint = CGPointMake(xMin, yMin + titleBGHeight);
- CGPoint endingPoint = CGPointMake(xMax, yMin + titleBGHeight);
-
- UIBezierPath *titleBGPath = [UIBezierPath bezierPath];
- [titleBGPath moveToPoint:startingPoint];
- [titleBGPath addLineToPoint:CGPointMake(CGRectGetMinX(frame), CGRectGetMinY(frame) + radius)];//LT1
- [titleBGPath addCurveToPoint:CGPointMake(xMin + radius, yMin) controlPoint1:CGPointMake(xMin, yMin + radius - cpOffset) controlPoint2:CGPointMake(xMin + radius - cpOffset, yMin)];//LT2
-
- //If the popover is positioned below (!above) the arrowPoint, then we know that the arrow must be on the top of the popover.
- //In this case, the arrow is located between LT2 and RT1
- if (!above) {
- [titleBGPath addLineToPoint:CGPointMake(arrowPoint.x - kArrowHeight, yMin)];//left side
- [titleBGPath addCurveToPoint:arrowPoint controlPoint1:CGPointMake(arrowPoint.x - kArrowHeight + kArrowCurvature, yMin) controlPoint2:arrowPoint];//actual arrow point
- [titleBGPath addCurveToPoint:CGPointMake(arrowPoint.x + kArrowHeight, yMin) controlPoint1:arrowPoint controlPoint2:CGPointMake(arrowPoint.x + kArrowHeight - kArrowCurvature, yMin)];//right side
- }
-
- [titleBGPath addLineToPoint:CGPointMake(xMax - radius, yMin)];//RT1
- [titleBGPath addCurveToPoint:CGPointMake(xMax, yMin + radius) controlPoint1:CGPointMake(xMax - radius + cpOffset, yMin) controlPoint2:CGPointMake(xMax, yMin + radius - cpOffset)];//RT2
- [titleBGPath addLineToPoint:endingPoint];
- [titleBGPath addLineToPoint:startingPoint];
- [titleBGPath closePath];
-
- //// General Declarations
- CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
- CGContextRef context = UIGraphicsGetCurrentContext();
-
- //// Gradient Declarations
- NSArray* gradientColors = [NSArray arrayWithObjects:
- (id)kGradientTitleTopColor.CGColor,
- (id)kGradientTitleBottomColor.CGColor, nil];
- CGFloat gradientLocations[] = {0, 1};
- CGGradientRef gradient = CGGradientCreateWithColors(colorSpace, (CFTYPECAST(CFArrayRef)gradientColors), gradientLocations);
-
-
- //These floats are the top and bottom offsets for the gradient drawing so the drawing includes the arrows.
- float topOffset = (!above ? kArrowHeight : 0.f);
-
- //Draw the actual gradient and shadow.
- CGContextSaveGState(context);
- CGContextBeginTransparencyLayer(context, NULL);
- [titleBGPath addClip];
- CGContextDrawLinearGradient(context, gradient, CGPointMake(CGRectGetMidX(frame), CGRectGetMinY(frame) - topOffset), CGPointMake(CGRectGetMidX(frame), CGRectGetMinY(frame) + titleBGHeight), 0);
- CGContextEndTransparencyLayer(context);
- CGContextRestoreGState(context);
-
- UIBezierPath *dividerLine = [UIBezierPath bezierPathWithRect:CGRectMake(startingPoint.x, startingPoint.y, (endingPoint.x - startingPoint.x), 0.5f)];
- [[UIColor colorWithRed:0.741 green:0.741 blue:0.741 alpha:0.5f] setFill];
- [dividerLine fill];
-
- //// Cleanup
- CGGradientRelease(gradient);
- CGColorSpaceRelease(colorSpace);
- }
- }
-
-
-
- //Draw the divider rects if we need to
- {
- if (kShowDividersBetweenViews && showDividerRects) {
- if (dividerRects && dividerRects.count > 0) {
- for (NSValue *value in dividerRects) {
- CGRect rect = value.CGRectValue;
- rect.origin.x += contentView.frame.origin.x;
- rect.origin.y += contentView.frame.origin.y;
-
- UIBezierPath *dividerPath = [UIBezierPath bezierPathWithRect:rect];
- [kDividerColor setFill];
- [dividerPath fill];
- }
- }
- }
- }
-
- //Draw border if we need to
- //The border is done last because it needs to be drawn on top of everything else
- if (kDrawBorder) {
- [kBorderColor setStroke];
- popoverPath.lineWidth = kBorderWidth;
- [popoverPath stroke];
- }
-
-}
-
-@end
diff --git a/ios/iosremote/PopoverView/PopoverViewCompatibility.h b/ios/iosremote/PopoverView/PopoverViewCompatibility.h
deleted file mode 100755
index b53d9f94f481..000000000000
--- a/ios/iosremote/PopoverView/PopoverViewCompatibility.h
+++ /dev/null
@@ -1,29 +0,0 @@
-//
-// PopoverView
-// https://github.com/runway20/PopoverView
-//
-//(MIT Licensed)
-//
-//Copyright (c) 2012 Runway 20 Inc.
-//
-//Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-//
-//The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-//
-//THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-#ifndef popover_PopoverViewCompatibility_h
-#define popover_PopoverViewCompatibility_h
-
-#ifdef __IPHONE_6_0
-
-#define UITextAlignmentCenter NSTextAlignmentCenter
-#define UITextAlignmentLeft NSTextAlignmentLeft
-#define UITextAlignmentRight NSTextAlignmentRight
-#define UILineBreakModeTailTruncation NSLineBreakByTruncatingTail
-#define UILineBreakModeMiddleTruncation NSLineBreakByTruncatingMiddle
-#define UILineBreakModeWordWrap NSLineBreakByWordWrapping
-
-#endif
-
-#endif
diff --git a/ios/iosremote/PopoverView/PopoverView_Configuration.h b/ios/iosremote/PopoverView/PopoverView_Configuration.h
deleted file mode 100755
index 7337ffb8432d..000000000000
--- a/ios/iosremote/PopoverView/PopoverView_Configuration.h
+++ /dev/null
@@ -1,128 +0,0 @@
-//
-// PopoverView
-// https://github.com/runway20/PopoverView
-//
-//(MIT Licensed)
-//
-//Copyright (c) 2012 Runway 20 Inc.
-//
-//Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-//
-//The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-//
-//THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-#pragma mark Constants - Configure look/feel
-
-// BOX GEOMETRY
-
-//Height/width of the actual arrow
-#define kArrowHeight 12.f
-
-//padding within the box for the contentView
-#define kBoxPadding 6.f
-
-//control point offset for rounding corners of the main popover box
-#define kCPOffset 1.8f
-
-//radius for the rounded corners of the main popover box
-#define kBoxRadius 4.f
-
-//Curvature value for the arrow. Set to 0.f to make it linear.
-#define kArrowCurvature 6.f
-
-//Minimum distance from the side of the arrow to the beginning of curvature for the box
-#define kArrowHorizontalPadding 5.f
-
-//Alpha value for the shadow behind the PopoverView
-#define kShadowAlpha 0.4f
-
-//Blur for the shadow behind the PopoverView
-#define kShadowBlur 3.f;
-
-//Box gradient bg alpha
-#define kBoxAlpha 0.95f
-
-//Padding along top of screen to allow for any nav/status bars
-#define kTopMargin 50.f
-
-//margin along the left and right of the box
-#define kHorizontalMargin 10.f
-
-//padding along top of icons/images
-#define kImageTopPadding 3.f
-
-//padding along bottom of icons/images
-#define kImageBottomPadding 3.f
-
-
-// DIVIDERS BETWEEN VIEWS
-
-//Bool that turns off/on the dividers
-#define kShowDividersBetweenViews YES
-
-//color for the divider fill
-#define kDividerColor [UIColor colorWithRed:0.329 green:0.341 blue:0.353 alpha:0.15f]
-
-
-// BACKGROUND GRADIENT
-
-//bottom color white in gradient bg
-#define kGradientBottomColor [UIColor colorWithRed:0.98f green:0.98f blue:0.98f alpha:kBoxAlpha]
-
-//top color white value in gradient bg
-#define kGradientTopColor [UIColor colorWithRed:1.f green:1.f blue:1.f alpha:kBoxAlpha]
-
-
-// TITLE GRADIENT
-
-//bool that turns off/on title gradient
-#define kDrawTitleGradient YES
-
-//bottom color white value in title gradient bg
-#define kGradientTitleBottomColor [UIColor colorWithRed:0.93f green:0.93f blue:0.93f alpha:kBoxAlpha]
-
-//top color white value in title gradient bg
-#define kGradientTitleTopColor [UIColor colorWithRed:1.f green:1.f blue:1.f alpha:kBoxAlpha]
-
-
-// FONTS
-
-//normal text font
-#define kTextFontPhone [UIFont fontWithName:@"HelveticaNeue" size:16.f]
-
-//normal text font
-#define kTextFontPad [UIFont fontWithName:@"HelveticaNeue" size:20.f]
-
-#define kSmallTextFontPad [UIFont fontWithName:@"HelveticaNeue" size:16.f]
-
-//normal text color
-#define kTextColor [UIColor colorWithRed:0.329 green:0.341 blue:0.353 alpha:1]
-// highlighted text color
-#define kTextHighlightColor [UIColor colorWithRed:0.098 green:0.102 blue:0.106 alpha:1.000]
-
-//normal text alignment
-#define kTextAlignment UITextAlignmentCenter
-
-//normal text alignment
-#define kTextAlignmentLeft UITextAlignmentLeft
-
-//title font
-#define kTitleFontPhone [UIFont fontWithName:@"HelveticaNeue-Bold" size:16.f]
-
-#define kTitleFontPad [UIFont fontWithName:@"HelveticaNeue-Bold" size:22.f]
-
-//title text color
-#define kTitleColor [UIColor colorWithRed:0.329 green:0.341 blue:0.353 alpha:1]
-
-
-// BORDER
-
-//bool that turns off/on the border
-#define kDrawBorder NO
-
-//border color
-#define kBorderColor [UIColor blackColor]
-
-//border width
-#define kBorderWidth 1.f \ No newline at end of file
diff --git a/ios/iosremote/SWRevealViewController/SWRevealViewController.h b/ios/iosremote/SWRevealViewController/SWRevealViewController.h
deleted file mode 100755
index 1610fef5d497..000000000000
--- a/ios/iosremote/SWRevealViewController/SWRevealViewController.h
+++ /dev/null
@@ -1,180 +0,0 @@
-/*
-
- Copyright (c) 2013 Joan Lluch <joan.lluch@sweetwilliamsl.com>
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is furnished
- to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-
- Early code inspired on a similar class by Philip Kluz (Philip.Kluz@zuui.org)
-
-*/
-
-
-#import <UIKit/UIKit.h>
-#import "stopWatch.h"
-#import "Timer.h"
-
-@class SWRevealViewController;
-@protocol SWRevealViewControllerDelegate;
-
-#pragma mark - SWRevealViewController Class
-
-// Enum values for setFrontViewPosition:animated:
-typedef enum
-{
- FrontViewPositionLeftSideMostRemoved,
- FrontViewPositionLeftSideMost,
- FrontViewPositionLeftSide,
-
- // Left position, rear view is hidden behind front controller
- FrontViewPositionLeft,
-
- // Right possition, front view is presented right-offseted by rearViewRevealWidth
- FrontViewPositionRight,
-
- // Right most possition, front view is presented right-offseted by rearViewRevealWidth+rearViewRevealOverdraw
- FrontViewPositionRightMost,
-
- // Front controller is removed from view. Animated transitioning from this state will cause the same
- // effect than animating from FrontViewPositionRightMost. Use this instead of FrontViewPositionRightMost when
- // you intent to remove the front controller view to be removed from the view hierarchy.
- FrontViewPositionRightMostRemoved,
-
-} FrontViewPosition;
-
-
-@interface SWRevealViewController : UIViewController <StopWatchDelegate, TimerDelegate>
-
-- (void)startTimePickerwithTimer:(Timer *) timer;
-
-// Object instance init and rear view setting
-- (id)initWithRearViewController:(UIViewController *)rearViewController frontViewController:(UIViewController *)frontViewController;
-
-// Rear view controller, can be nil if not used
-@property (strong, nonatomic) UIViewController *rearViewController;
-
-// Optional right view controller, can be nil if not used
-@property (strong, nonatomic) UIViewController *rightViewController;
-
-// Front view controller, can be nil on initialization but must be supplied by the time its view is loaded
-@property (strong, nonatomic) UIViewController *frontViewController;
-
-// Sets the frontViewController using a default set of chained animations consisting on moving the
-// presented frontViewController to the top most right, replacing it, and moving it back to the left position
-- (void)setFrontViewController:(UIViewController *)frontViewController animated:(BOOL)animated;
-
-// Front view position, use this to set a particular position state on the controller
-// On initialization it is set to FrontViewPositionLeft
-@property (assign, nonatomic) FrontViewPosition frontViewPosition;
-
-// Chained animation of the frontViewController position. You can call it several times in a row to achieve
-// any set of animations you wish. Animations will be chained and performed one after the other.
-- (void)setFrontViewPosition:(FrontViewPosition)frontViewPosition animated:(BOOL)animated;
-
-// Toogles the current state of the front controller between Left or Right and fully visible
-// Use setFrontViewPosition to set a particular position
-- (void)revealToggleAnimated:(BOOL)animated;
-- (void)rightRevealToggleAnimated:(BOOL)animated;
-
-// The following methods are meant to be directly connected to the action method of a button
-// to perform user triggered postion change of the controller views. This is ussually added to a
-// button on top left or right of the frontViewController
-- (void)revealToggle:(id)sender;
-- (void)rightRevealToggle:(id)sender;
-
-// The following method will provide a panGestureRecognizer suitable to be added to any view on the frontController
-// in order to perform usual drag and swipe gestures on the frontViewController to reveal the rear views. This
-// is usually added on the top bar of a front controller.
-- (UIPanGestureRecognizer*)panGestureRecognizer;
-
-// The following properties are provided for further customization, they are set to default values on initialization,
-// you should not generally have to set them
-
-// Defines how much of the rear view is shown, default is 260.
-@property (assign, nonatomic) CGFloat rearViewRevealWidth;
-@property (assign, nonatomic) CGFloat rightViewRevealWidth;
-
-// Defines how much of an overdraw can occur when dragging further than 'rearViewRevealWidth', default is 60.
-@property (assign, nonatomic) CGFloat rearViewRevealOverdraw;
-@property (assign, nonatomic) CGFloat rightViewRevealOverdraw;
-
-// If YES (the default) the controller will bounce to the Left position when dragging further than 'rearViewRevealWidth'
-@property (assign, nonatomic) BOOL bounceBackOnOverdraw;
-@property (assign, nonatomic) BOOL bounceBackOnLeftOverdraw;
-
-// If YES (default is NO) the controller will allow permanent dragging up to the rightMostPosition
-@property (assign, nonatomic) BOOL stableDragOnOverdraw;
-@property (assign, nonatomic) BOOL stableDragOnLeftOverdraw;
-
-// Velocity required for the controller to toggle its state based on a swipe movement, default is 300
-@property (assign, nonatomic) CGFloat quickFlickVelocity;
-
-// Default duration for the revealToggle animation, default is 0.25
-@property (assign, nonatomic) NSTimeInterval toggleAnimationDuration;
-
-// Defines the radius of the front view's shadow, default is 2.5f
-@property (assign, nonatomic) CGFloat frontViewShadowRadius;
-
-// Defines the radius of the front view's shadow offset default is {0.0f,2.5f}
-@property (assign, nonatomic) CGSize frontViewShadowOffset;
-
-// The class properly handles all the relevant calls to appearance methods on the contained controllers.
-// Moreover you can assign a delegate to let the class inform you on positions and animation activity.
-
-// Delegate
-@property (weak, nonatomic) id<SWRevealViewControllerDelegate> delegate;
-
-@end
-
-#pragma mark - SWRevealViewControllerDelegate Protocol
-
-@protocol SWRevealViewControllerDelegate<NSObject>
-
-@optional
-
-- (void)revealController:(SWRevealViewController *)revealController willMoveToPosition:(FrontViewPosition)position;
-- (void)revealController:(SWRevealViewController *)revealController didMoveToPosition:(FrontViewPosition)position;
-
-- (void)revealController:(SWRevealViewController *)revealController animateToPosition:(FrontViewPosition)position;
-
-- (void)revealControllerPanGestureBegan:(SWRevealViewController *)revealController;
-- (void)revealControllerPanGestureEnded:(SWRevealViewController *)revealController;
-
-@end
-
-
-#pragma mark - UIViewController(SWRevealViewController) Category
-
-// We add a category of UIViewController to let childViewControllers easily access their parent SWRevealViewController
-@interface UIViewController(SWRevealViewController)
-
-- (SWRevealViewController*)revealViewController;
-
-@end
-
-
-// This will allow the class to be defined on a storyboard
-#pragma mark - SWRevealViewControllerSegue
-
-@interface SWRevealViewControllerSegue : UIStoryboardSegue
-
-@property (strong) void(^performBlock)( SWRevealViewControllerSegue* segue, UIViewController* svc, UIViewController* dvc );
-
-@end
-
-
diff --git a/ios/iosremote/SWRevealViewController/SWRevealViewController.m b/ios/iosremote/SWRevealViewController/SWRevealViewController.m
deleted file mode 100755
index 30efc45e5ed8..000000000000
--- a/ios/iosremote/SWRevealViewController/SWRevealViewController.m
+++ /dev/null
@@ -1,1257 +0,0 @@
-/*
-
- Copyright (c) 2013 Joan Lluch <joan.lluch@sweetwilliamsl.com>
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is furnished
- to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in all
- copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- THE SOFTWARE.
-
- Early code inspired on a similar class by Philip Kluz (Philip.Kluz@zuui.org)
-
-*/
-
-#import <QuartzCore/QuartzCore.h>
-#import <UIKit/UIGestureRecognizerSubclass.h>
-
-#import "SWRevealViewController.h"
-#import "SlideShowSwipeInList~iphone.h"
-#import "UIViewController+LibOStyling.h"
-
-#pragma mark - SWDirectionPanGestureRecognizer
-
-typedef enum
-{
- SWDirectionPanGestureRecognizerVertical,
- SWDirectionPanGestureRecognizerHorizontal
-
-} SWDirectionPanGestureRecognizerDirection;
-
-@interface SWDirectionPanGestureRecognizer : UIPanGestureRecognizer
-
-@property (nonatomic, assign) SWDirectionPanGestureRecognizerDirection direction;
-
-@end
-
-
-@implementation SWDirectionPanGestureRecognizer
-{
- BOOL _dragging;
- BOOL _disabled;
- CGPoint _init;
-}
-
-- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
-{
- [super touchesBegan:touches withEvent:event];
-
- UITouch *touch = [touches anyObject];
- if ([touch locationInView:self.view].x > 60.0) {
- _disabled = YES;
- return;
- }
- _disabled = NO;
- _init = [touch locationInView:self.view];
- _dragging = NO;
-}
-
-
-- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
-{
- if (_disabled) {
- return;
- }
- [super touchesMoved:touches withEvent:event];
-
- if (self.state == UIGestureRecognizerStateFailed)
- return;
-
- if ( _dragging )
- return;
-
- const int kDirectionPanThreshold = 5;
-
- UITouch *touch = [touches anyObject];
- CGPoint nowPoint = [touch locationInView:self.view];
-
- CGFloat moveX = nowPoint.x - _init.x;
- CGFloat moveY = nowPoint.y - _init.y;
-
- if (abs(moveX) > kDirectionPanThreshold)
- {
- if (_direction == SWDirectionPanGestureRecognizerHorizontal)
- _dragging = YES;
- else
- self.state = UIGestureRecognizerStateFailed;
- }
- else if (abs(moveY) > kDirectionPanThreshold)
- {
- if (_direction == SWDirectionPanGestureRecognizerVertical)
- _dragging = YES ;
- else
- self.state = UIGestureRecognizerStateFailed;
- }
-}
-
-@end
-
-
-#pragma mark - SWRevealView Class
-
-@interface SWRevealView: UIView
-{
- __weak SWRevealViewController *_c;
-}
-
-@property (nonatomic, readonly) UIView *rearView;
-@property (nonatomic, readonly) UIView *rightView;
-@property (nonatomic, readonly) UIView *frontView;
-@property (nonatomic, assign) BOOL disableLayout;
-
-@end
-
-
-@interface SWRevealViewController()
-- (void)_getRevealWidth:(CGFloat*)pRevealWidth revealOverDraw:(CGFloat*)pRevealOverdraw forSymetry:(int)symetry;
-- (void)_getBounceBack:(BOOL*)pBounceBack pStableDrag:(BOOL*)pStableDrag forSymetry:(int)symetry;
-- (void)_getAdjustedFrontViewPosition:(FrontViewPosition*)frontViewPosition forSymetry:(int)symetry;
-@end
-
-
-@implementation SWRevealView
-
-- (id)initWithFrame:(CGRect)frame controller:(SWRevealViewController*)controller
-{
- self = [super initWithFrame:frame];
- if ( self )
- {
- _c = controller;
- CGRect bounds = self.bounds;
-
- _frontView = [[UIView alloc] initWithFrame:bounds];
- _frontView.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
-
- [self addSubview:_frontView];
-
- CALayer *frontViewLayer = _frontView.layer;
- frontViewLayer.masksToBounds = NO;
- frontViewLayer.shadowColor = [UIColor blackColor].CGColor;
- frontViewLayer.shadowOpacity = 1.0f;
- frontViewLayer.shadowOffset = _c.frontViewShadowOffset;
- frontViewLayer.shadowRadius = _c.frontViewShadowRadius;
- }
-
- return self;
-}
-
-
-- (void)layoutSubviews
-{
- if ( _disableLayout ) return;
-
- [self _layoutRearViews];
-
- CGRect bounds = self.bounds;
-
- CGFloat xPosition = [self frontLocationForPosition:_c.frontViewPosition];
- _frontView.frame = CGRectMake(xPosition, 0.0f, bounds.size.width, bounds.size.height);
-
- UIBezierPath *shadowPath = [UIBezierPath bezierPathWithRect:_frontView.bounds];
- _frontView.layer.shadowPath = shadowPath.CGPath;
-}
-
-
-- (void)prepareRearViewForPosition:(FrontViewPosition)newPosition
-{
- if ( _rearView == nil )
- {
- _rearView = [[UIView alloc] initWithFrame:self.bounds];
- _rearView.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
- [self insertSubview:_rearView belowSubview:_frontView];
- }
- [self _layoutRearViews];
- [self _prepareForNewPosition:newPosition];
-}
-
-
-- (CGFloat)frontLocationForPosition:(FrontViewPosition)frontViewPosition
-{
- CGFloat revealWidth;
- CGFloat revealOverdraw;
-
- CGFloat location = 0.0f;
-
- int symetry = frontViewPosition<FrontViewPositionLeft? -1 : 1;
- [_c _getRevealWidth:&revealWidth revealOverDraw:&revealOverdraw forSymetry:symetry];
- [_c _getAdjustedFrontViewPosition:&frontViewPosition forSymetry:symetry];
-
- if ( frontViewPosition == FrontViewPositionRight )
- location = revealWidth;
-
- else if ( frontViewPosition > FrontViewPositionRight )
- location = revealWidth + revealOverdraw;
-
- return location*symetry;
-}
-
-
-- (void)dragFrontViewToXPosition:(CGFloat)xPosition
-{
- CGRect bounds = self.bounds;
- xPosition = [self _adjustedDragLocationForLocation:xPosition];
- _frontView.frame = CGRectMake(xPosition, 0.0f, bounds.size.width, bounds.size.height);
-}
-
-
-- (void)prepareRightViewForPosition:(FrontViewPosition)newPosition
-{
- if ( _rightView == nil )
- {
- _rightView = [[UIView alloc] initWithFrame:self.bounds];
- _rightView.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
- [self insertSubview:_rightView belowSubview:_frontView];
- }
- [self _layoutRearViews];
- [self _prepareForNewPosition:newPosition];
-}
-
-
-# pragma mark private
-
-- (void)_layoutRearViews
-{
- CGRect bounds = self.bounds;
-
- CGFloat rearWidth = _c.rearViewRevealWidth + _c.rearViewRevealOverdraw;
- _rearView.frame = CGRectMake(0.0, 0.0, rearWidth, bounds.size.height);
-
- CGFloat rightWidth = _c.rightViewRevealWidth + _c.rightViewRevealOverdraw;
- _rightView.frame = CGRectMake(bounds.size.width-rightWidth, 0.0f, rightWidth, bounds.size.height);
-}
-
-
-- (void)_prepareForNewPosition:(FrontViewPosition)newPosition;
-{
- if ( _rearView == nil || _rightView == nil )
- return;
-
- int symetry = newPosition<FrontViewPositionLeft? -1 : 1;
-
- NSArray *subViews = self.subviews;
- NSInteger rearIndex = [subViews indexOfObjectIdenticalTo:_rearView];
- NSInteger rightIndex = [subViews indexOfObjectIdenticalTo:_rightView];
-
- if ( (symetry < 0 && rightIndex < rearIndex) || (symetry > 0 && rearIndex < rightIndex) )
- [self exchangeSubviewAtIndex:rightIndex withSubviewAtIndex:rearIndex];
-}
-
-
-- (CGFloat)_adjustedDragLocationForLocation:(CGFloat)x
-{
- CGFloat result;
-
- CGFloat revealWidth;
- CGFloat revealOverdraw;
- BOOL bounceBack;
- BOOL stableDrag;
- FrontViewPosition position = _c.frontViewPosition;
-
- int symetry = x<0 ? -1 : 1;
-
- [_c _getRevealWidth:&revealWidth revealOverDraw:&revealOverdraw forSymetry:symetry];
- [_c _getBounceBack:&bounceBack pStableDrag:&stableDrag forSymetry:symetry];
-
- BOOL stableTrack = !bounceBack || stableDrag || position==FrontViewPositionRightMost || position==FrontViewPositionLeftSideMost;
- if ( stableTrack )
- {
- revealWidth += revealOverdraw;
- revealOverdraw = 0.0f;
- }
-
- x = x * symetry;
-
- if (x <= revealWidth)
- result = x; // Translate linearly.
-
- else if (x <= revealWidth+2*revealOverdraw)
- result = revealWidth + (x-revealWidth)/2; // slow down translation by halph the movement.
-
- else
- result = revealWidth+revealOverdraw; // keep at the rightMost location.
-
- return result * symetry;
-}
-
-@end
-
-
-#pragma mark - SWRevealViewController Class
-
-@interface SWRevealViewController()<UIGestureRecognizerDelegate>
-{
- SWRevealView *_contentView;
- UIPanGestureRecognizer *_panGestureRecognizer;
- FrontViewPosition _frontViewPosition;
- FrontViewPosition _rearViewPosition;
- FrontViewPosition _rightViewPosition;
-}
-@end
-
-
-@implementation SWRevealViewController
-{
- FrontViewPosition _panInitialFrontPosition;
- NSMutableArray *_animationQueue;
- BOOL _userInteractionStore;
-}
-
-const int FrontViewPositionNone = 0xff;
-
-
-#pragma mark - Init
-
-- (id)initWithCoder:(NSCoder *)aDecoder
-{
- self = [super initWithCoder:aDecoder];
- if ( self )
- {
- [self _initDefaultProperties];
- }
- return self;
-}
-
-
-- (id)init
-{
- return [self initWithRearViewController:nil frontViewController:nil];
-}
-
-
-- (id)initWithRearViewController:(UIViewController *)rearViewController frontViewController:(UIViewController *)frontViewController;
-{
- self = [super init];
- if ( self )
- {
- [self _initDefaultProperties];
- [self _setRearViewController:rearViewController];
- [self _setFrontViewController:frontViewController];
- }
- return self;
-}
-
-
-- (void)_initDefaultProperties
-{
- _frontViewPosition = FrontViewPositionLeft;
- _rearViewPosition = FrontViewPositionLeft;
- _rightViewPosition = FrontViewPositionLeft;
- _rearViewRevealWidth = 220.0f;
- _rearViewRevealOverdraw = 60.0f;
- _rightViewRevealWidth = 260.0f;
- _rightViewRevealOverdraw = 60.0f;
- _bounceBackOnOverdraw = YES;
- _bounceBackOnLeftOverdraw = YES;
- _stableDragOnOverdraw = NO;
- _stableDragOnLeftOverdraw = NO;
- _quickFlickVelocity = 250.0f;
- _toggleAnimationDuration = 0.25;
- _frontViewShadowRadius = 2.5f;
- _frontViewShadowOffset = CGSizeMake(0.0f, 2.5f);
- _userInteractionStore = YES;
- _animationQueue = [NSMutableArray array];
-}
-
-#pragma mark popup timer
-- (void)changeDate:(UIDatePicker *)sender {
- NSLog(@"Time left: %f", sender.countDownDuration);
- [[(SlideShowSwipeInList_iphone *) self.rearViewController timer] setSecondsLeft: sender.countDownDuration];
-}
-
-- (void)removeViews:(id)object {
- [[self.view viewWithTag:89] removeFromSuperview];
- [[self.view viewWithTag:90] removeFromSuperview];
- [[self.view viewWithTag:91] removeFromSuperview];
-}
-
-- (void)dismissDatePicker:(id)sender {
- CGRect toolbarTargetFrame = CGRectMake(0, self.view.bounds.size.height, 320, 44);
- CGRect datePickerTargetFrame = CGRectMake(0, self.view.bounds.size.height+44, 320, 216);
- [UIView beginAnimations:@"MoveOut" context:nil];
- [self.view viewWithTag:89].alpha = 0;
- [self.view viewWithTag:90].frame = datePickerTargetFrame;
- [self.view viewWithTag:91].frame = toolbarTargetFrame;
- [UIView setAnimationDelegate:self];
- [UIView setAnimationDidStopSelector:@selector(removeViews:)];
- [UIView commitAnimations];
-}
-
-- (IBAction)callDP:(id)sender {
- if ([self.view viewWithTag:89]) {
- return;
- }
- CGRect toolbarTargetFrame = CGRectMake(0, self.view.bounds.size.height-216-44, 320, 44);
- CGRect datePickerTargetFrame = CGRectMake(0, self.view.bounds.size.height-216, 320, 216);
-
- UIView *darkView = [[UIView alloc] initWithFrame:self.view.bounds];
- darkView.alpha = 0;
- darkView.backgroundColor = [UIColor blackColor];
- darkView.tag = 89;
- UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(dismissDatePicker:)];
- [darkView addGestureRecognizer:tapGesture];
- [self.view addSubview:darkView];
- darkView.alpha = 0.5;
-
- UIDatePicker *datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, self.view.bounds.size.height+44, 320, 216)];
- datePicker.tag = 90;
- datePicker.backgroundColor = [UIColor whiteColor];
- [datePicker setDatePickerMode:UIDatePickerModeCountDownTimer];
- [datePicker addTarget:self action:@selector(changeDate:) forControlEvents:UIControlEventValueChanged];
- [self.view addSubview:datePicker];
-
- UIToolbar *toolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, self.view.bounds.size.height, 320, 44)];
- toolBar.tag = 91;
- toolBar.barStyle = UIBarStyleBlackTranslucent;
- UIBarButtonItem *spacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
- UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(dismissDatePicker:)];
- [toolBar setItems:[NSArray arrayWithObjects:spacer, doneButton, nil]];
- [self.view addSubview:toolBar];
-
- [UIView beginAnimations:@"MoveIn" context:nil];
- toolBar.frame = toolbarTargetFrame;
- datePicker.frame = datePickerTargetFrame;
-
- [UIView commitAnimations];
-}
-
-- (void)startTimePickerwithTimer:(Timer *) timer
-{
- [self callDP:self];
-}
-
-
-#pragma mark storyboard support
-
-static NSString * const SWSegueRearIdentifier = @"sw_rear";
-static NSString * const SWSegueFrontIdentifier = @"sw_front";
-static NSString * const SWSegueRightIdentifier = @"sw_right";
-
-- (void)prepareForSegue:(SWRevealViewControllerSegue *)segue sender:(id)sender
-{
- // $ using a custom segue we can get access to the storyboard-loaded rear/front view controllers
- // the trick is to define segues of type SWRevealViewControllerSegue on the storyboard
- // connecting the SWRevealViewController to the desired front/rear controllers,
- // and setting the identifiers to "sw_rear" and "sw_front"
-
- // $ these segues are invoked manually in the loadView method if a storyboard
- // was used to instantiate the SWRevealViewController
-
- // $ none of this would be necessary if Apple exposed "relationship" segues for container view controllers.
-
- NSString *identifier = segue.identifier;
- if ( [segue isKindOfClass:[SWRevealViewControllerSegue class]] && sender == nil )
- {
- if ( [identifier isEqualToString:SWSegueRearIdentifier] )
- {
- segue.performBlock = ^(SWRevealViewControllerSegue* rvc_segue, UIViewController* svc, UIViewController* dvc)
- {
- [self _setRearViewController:dvc];
- };
- }
- else if ( [identifier isEqualToString:SWSegueFrontIdentifier] )
- {
- segue.performBlock = ^(SWRevealViewControllerSegue* rvc_segue, UIViewController* svc, UIViewController* dvc)
- {
- [self _setFrontViewController:dvc];
- };
- }
- else if ( [identifier isEqualToString:SWSegueRightIdentifier] )
- {
- segue.performBlock = ^(SWRevealViewControllerSegue* rvc_segue, UIViewController* svc, UIViewController* dvc)
- {
- [self _setRightViewController:dvc];
- };
- }
- }
-}
-
-
-#pragma mark - View lifecycle
-
-- (void)loadView
-{
- // Do not call super, to prevent the apis from unfruitful looking for inexistent xibs!
-
- // This is what Apple tells us to set as the initial frame, which is of course totally irrelevant
- // with the modern view controller containment patterns, let's leave it for the sake of it!
- CGRect frame = [[UIScreen mainScreen] applicationFrame];
-
- // create a custom content view for the controller
- _contentView = [[SWRevealView alloc] initWithFrame:frame controller:self];
-
- // set the content view to resize along with its superview
- [_contentView setAutoresizingMask:UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight];
-
- // set our contentView to the controllers view
- self.view = _contentView;
-
- // load any defined front/rear controllers from the storyboard
- if ( self.storyboard && _rearViewController == nil )
- {
- @try
- {
- [self performSegueWithIdentifier:SWSegueRearIdentifier sender:nil];
- [self performSegueWithIdentifier:SWSegueFrontIdentifier sender:nil];
- [self performSegueWithIdentifier:SWSegueRightIdentifier sender:nil];
- }
- @catch(NSException *exception)
- {
- //NSLog(@"Caught %@: %@", [exception name], [exception reason]);
- }
- }
-
- // Apple also tells us to do this:
- _contentView.backgroundColor = [UIColor blackColor];
-
- // we set the current frontViewPosition to none before seting the
- // desired initial position, this will force proper controller reload
- FrontViewPosition initialPosition = _frontViewPosition;
- _frontViewPosition = FrontViewPositionNone;
- _rearViewPosition = FrontViewPositionNone;
- _rightViewPosition = FrontViewPositionNone;
-
- // now set the desired initial position
- [self _setFrontViewPosition:initialPosition withDuration:0.0];
-}
-
-
-- (void)viewDidAppear:(BOOL)animated
-{
- [super viewDidAppear:animated];
-
- // Uncomment the following code if you want the child controllers
- // to be loaded at this point.
- //
- // We leave this commented out because we think loading children here is conceptually wrong.
- // Instead, we refrain view loads until necesary, for example we may never load
- // the rear controller view -or the front controller view- if it is never displayed.
- //
- // If you need to manipulate views of any of your child controllers in an override
- // of this method, you can load yourself the views explicitly on your overridden method.
- // However we discourage it as an app following the MVC principles should never need to do so
-
-// [_frontViewController view];
-// [_rearViewController view];
-
- // we store at this point the view's user interaction state as we may temporarily disable it
- // and resume it back to the previous state, it is possible to override this behaviour by
- // intercepting it on the panGestureBegan and panGestureEnded delegates
- _userInteractionStore = _contentView.userInteractionEnabled;
-}
-
-
-- (NSUInteger)supportedInterfaceOrientations
-{
- return UIInterfaceOrientationMaskAll;
-}
-
-// Support for earlier than iOS 6.0
-- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
-{
- return YES;
-}
-
-
-
-#pragma mark - Public methods and property accessors
-
-- (void)setFrontViewController:(UIViewController *)frontViewController
-{
- [self setFrontViewController:frontViewController animated:NO];
-}
-
-
-- (void)setFrontViewController:(UIViewController *)frontViewController animated:(BOOL)animated
-{
- if ( ![self isViewLoaded])
- {
- [self _setFrontViewController:frontViewController];
- return;
- }
-
- [self _dispatchSetFrontViewController:frontViewController animated:animated];
-}
-
-
-- (void)setRearViewController:(UIViewController *)rightViewController
-{
- if ( ![self isViewLoaded])
- {
- [self _setRearViewController:rightViewController];
- return;
- }
-
- [self _dispatchSetRearViewController:rightViewController];
-}
-
-
-- (void)setRightViewController:(UIViewController *)rightViewController
-{
- if ( ![self isViewLoaded])
- {
- [self _setRightViewController:rightViewController];
- return;
- }
-
- [self _dispatchSetRightViewController:rightViewController];
-}
-
-
-- (void)revealToggleAnimated:(BOOL)animated
-{
- FrontViewPosition toogledFrontViewPosition = FrontViewPositionLeft;
- if (_frontViewPosition <= FrontViewPositionLeft)
- toogledFrontViewPosition = FrontViewPositionRight;
-
- [self setFrontViewPosition:toogledFrontViewPosition animated:animated];
-}
-
-- (void)rightRevealToggleAnimated:(BOOL)animated
-{
- FrontViewPosition toogledFrontViewPosition = FrontViewPositionLeft;
- if (_frontViewPosition >= FrontViewPositionLeft)
- toogledFrontViewPosition = FrontViewPositionLeftSide;
-
- [self setFrontViewPosition:toogledFrontViewPosition animated:animated];
-}
-
-
-- (void)setFrontViewPosition:(FrontViewPosition)frontViewPosition
-{
- [self setFrontViewPosition:frontViewPosition animated:NO];
-}
-
-
-- (void)setFrontViewPosition:(FrontViewPosition)frontViewPosition animated:(BOOL)animated
-{
- if ( ![self isViewLoaded] )
- {
- _frontViewPosition = frontViewPosition;
- _rearViewPosition = frontViewPosition;
- _rightViewPosition = frontViewPosition;
- return;
- }
-
- [self _dispatchSetFrontViewPosition:frontViewPosition animated:animated];
-}
-
-
-- (UIPanGestureRecognizer*)panGestureRecognizer
-{
- if ( _panGestureRecognizer == nil )
- {
- SWDirectionPanGestureRecognizer *customRecognizer =
- [[SWDirectionPanGestureRecognizer alloc] initWithTarget:self action:@selector(_handleRevealGesture:)];
-
- customRecognizer.direction = SWDirectionPanGestureRecognizerHorizontal;
- customRecognizer.delegate = self;
- _panGestureRecognizer = customRecognizer ;
- }
- return _panGestureRecognizer;
-}
-
-
-#pragma mark - Provided acction methods
-
-- (void)revealToggle:(id)sender
-{
- [self revealToggleAnimated:YES];
-}
-
-- (void)rightRevealToggle:(id)sender
-{
- [self rightRevealToggleAnimated:YES];
-}
-
-
-#pragma mark - UserInteractionEnabling
-
-// disable userInteraction on the entire control
-- (void)_disableUserInteraction
-{
- //_userInteractionStore = _contentView.userInteractionEnabled;
- [_contentView setUserInteractionEnabled:NO];
- [_contentView setDisableLayout:YES];
-
- if ( [_delegate respondsToSelector:@selector(revealControllerPanGestureBegan:)] )
- [_delegate revealControllerPanGestureBegan:self];
-}
-
-// restore userInteraction on the control
-- (void)_restoreUserInteraction
-{
- // we use the stored userInteraction state just in case a developer decided
- // to have our view interaction disabled beforehand
- [_contentView setUserInteractionEnabled:_userInteractionStore];
- [_contentView setDisableLayout:NO];
-
- if ( [_delegate respondsToSelector:@selector(revealControllerPanGestureEnded:) ] )
- [_delegate revealControllerPanGestureEnded:self];
-}
-
-
-#pragma mark - Symetry
-
-- (void)_getRevealWidth:(CGFloat*)pRevealWidth revealOverDraw:(CGFloat*)pRevealOverdraw forSymetry:(int)symetry
-{
- if ( symetry < 0 ) *pRevealWidth = _rightViewRevealWidth, *pRevealOverdraw = _rightViewRevealOverdraw;
- else *pRevealWidth = _rearViewRevealWidth, *pRevealOverdraw = _rearViewRevealOverdraw;
-}
-
-- (void)_getBounceBack:(BOOL*)pBounceBack pStableDrag:(BOOL*)pStableDrag forSymetry:(int)symetry
-{
- if ( symetry < 0 ) *pBounceBack = _bounceBackOnLeftOverdraw, *pStableDrag = _stableDragOnLeftOverdraw;
- else *pBounceBack = _bounceBackOnOverdraw, *pStableDrag = _stableDragOnOverdraw;
-}
-
-- (void)_getAdjustedFrontViewPosition:(FrontViewPosition*)frontViewPosition forSymetry:(int)symetry
-{
- if ( symetry < 0 ) *frontViewPosition = FrontViewPositionLeft + symetry*(*frontViewPosition-FrontViewPositionLeft);
-}
-
-
-#pragma mark - Deferred block execution queue
-
-// Define a convenience macro to enqueue single statements
-#define _enqueue(code) [self _enqueueBlock:^{code;}];
-
-// Defers the execution of the passed in block until a paired _dequeue call is received,
-// or executes the block right away if no pending requests are present.
-- (void)_enqueueBlock:(void (^)(void))block
-{
- [_animationQueue insertObject:block atIndex:0];
- if ( _animationQueue.count == 1)
- {
- block();
- }
-}
-
-// Removes the top most block in the queue and executes the following one if any.
-// Calls to this method must be paired with calls to _enqueueBlock, particularly it may be called
-// from within a block passed to _enqueueBlock to remove itself when done with animations.
-- (void)_dequeue
-{
- [_animationQueue removeLastObject];
-
- if ( _animationQueue.count > 0 )
- {
- void (^block)(void) = [_animationQueue lastObject];
- block();
- }
-}
-
-
-#pragma mark - Gesture Delegate
-
-- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer
-{
- // only allow gesture if no previous request is in process
- return ( gestureRecognizer == _panGestureRecognizer && _animationQueue.count == 0) ;
-}
-
-
-#pragma mark - Gesture Based Reveal
-
-- (void)_handleRevealGesture:(UIPanGestureRecognizer *)recognizer
-{
- switch ( recognizer.state )
- {
- case UIGestureRecognizerStateBegan:
- [self _handleRevealGestureStateBeganWithRecognizer:recognizer];
- break;
-
- case UIGestureRecognizerStateChanged:
- [self _handleRevealGestureStateChangedWithRecognizer:recognizer];
- break;
-
- case UIGestureRecognizerStateEnded:
- [self _handleRevealGestureStateEndedWithRecognizer:recognizer];
- break;
-
- case UIGestureRecognizerStateCancelled:
- //case UIGestureRecognizerStateFailed:
- [self _handleRevealGestureStateCancelledWithRecognizer:recognizer];
- break;
-
- default:
- break;
- }
-}
-
-
-- (void)_handleRevealGestureStateBeganWithRecognizer:(UIPanGestureRecognizer *)recognizer
-{
- // we know that we will not get here unless the animationQueue is empty because the recognizer
- // delegate prevents it, however we do not want any forthcoming programatic actions to disturb
- // the gesture, so we just enqueue a dummy block to ensure any programatic acctions will be
- // scheduled after the gesture is completed
- [self _enqueueBlock:^{}]; // <-- dummy block
-
- // we store the initial position and initialize a target position
- _panInitialFrontPosition = _frontViewPosition;
-
- // we disable user interactions on the views, however programatic accions will still be
- // enqueued to be performed after the gesture completes
- [self _disableUserInteraction];
-}
-
-
-- (void)_handleRevealGestureStateChangedWithRecognizer:(UIPanGestureRecognizer *)recognizer
-{
- CGFloat translation = [recognizer translationInView:_contentView].x;
-
- CGFloat baseLocation = [_contentView frontLocationForPosition:_panInitialFrontPosition];
- CGFloat xPosition = baseLocation + translation;
-
- if ( xPosition < 0 )
- {
- if ( _rightViewController == nil ) xPosition = 0;
- [self _rightViewDeploymentForNewFrontViewPosition:FrontViewPositionLeftSide]();
- [self _rearViewDeploymentForNewFrontViewPosition:FrontViewPositionLeftSide]();
- }
-
- if ( xPosition > 0 )
- {
- if ( _rearViewController == nil ) xPosition = 0;
- [self _rightViewDeploymentForNewFrontViewPosition:FrontViewPositionRight]();
- [self _rearViewDeploymentForNewFrontViewPosition:FrontViewPositionRight]();
- }
-
- [_contentView dragFrontViewToXPosition:xPosition];
-}
-
-
-- (void)_handleRevealGestureStateEndedWithRecognizer:(UIPanGestureRecognizer *)recognizer
-{
- UIView *frontView = _contentView.frontView;
-
- CGFloat xPosition = frontView.frame.origin.x;
- CGFloat velocity = [recognizer velocityInView:_contentView].x;
- //NSLog( @"Velocity:%1.4f", velocity);
-
- // depending on position we compute a simetric replacement of widths and positions
- int symetry = xPosition<0 ? -1 : 1;
-
- // simetring computing of widths
- CGFloat revealWidth ;
- CGFloat revealOverdraw ;
- BOOL bounceBack;
- BOOL stableDrag;
-
- [self _getRevealWidth:&revealWidth revealOverDraw:&revealOverdraw forSymetry:symetry];
- [self _getBounceBack:&bounceBack pStableDrag:&stableDrag forSymetry:symetry];
-
- // simetric replacement of position
- xPosition = xPosition * symetry;
-
- // initially we assume drag to left and default duration
- FrontViewPosition frontViewPosition = FrontViewPositionLeft;
- NSTimeInterval duration = _toggleAnimationDuration;
-
- // Velocity driven change:
- if (fabsf(velocity) > _quickFlickVelocity)
- {
- // we may need to set the drag position and to adjust the animation duration
- CGFloat journey = xPosition;
- if (velocity*symetry > 0.0f)
- {
- frontViewPosition = FrontViewPositionRight;
- journey = revealWidth - xPosition;
- if (xPosition > revealWidth)
- {
- if (!bounceBack && stableDrag /*&& xPosition > _rearViewRevealWidth+_rearViewRevealOverdraw*0.5f*/)
- {
- frontViewPosition = FrontViewPositionRightMost;
- journey = revealWidth+revealOverdraw - xPosition;
- }
- }
- }
-
- duration = fabsf(journey/velocity);
- }
-
- // Position driven change:
- else
- {
- // we may need to set the drag position
- if (xPosition > revealWidth*0.5f)
- {
- frontViewPosition = FrontViewPositionRight;
- if (xPosition > revealWidth)
- {
- if (bounceBack)
- frontViewPosition = FrontViewPositionLeft;
-
- else if (stableDrag && xPosition > revealWidth+revealOverdraw*0.5f)
- frontViewPosition = FrontViewPositionRightMost;
- }
- }
- }
-
- // symetric replacement of frontViewPosition
- [self _getAdjustedFrontViewPosition:&frontViewPosition forSymetry:symetry];
-
- // restore user interaction and animate to the final position
- [self _restoreUserInteraction];
- [self _setFrontViewPosition:frontViewPosition withDuration:duration];
-}
-
-
-- (void)_handleRevealGestureStateCancelledWithRecognizer:(UIPanGestureRecognizer *)recognizer
-{
- [self _restoreUserInteraction];
- [self _dequeue];
-}
-
-
-#pragma mark Enqueued position and controller setup
-
-- (void)_dispatchSetFrontViewPosition:(FrontViewPosition)frontViewPosition animated:(BOOL)animated
-{
- NSTimeInterval duration = animated?_toggleAnimationDuration:0.0;
- __weak SWRevealViewController *theSelf = self;
- _enqueue( [theSelf _setFrontViewPosition:frontViewPosition withDuration:duration] );
-}
-
-
-- (void)_dispatchSetFrontViewController:(UIViewController *)newFrontViewController animated:(BOOL)animated
-{
- int initialPosDif = FrontViewPositionRightMost - _frontViewPosition;
-
- NSTimeInterval firstDuration ;
- if ( initialPosDif <= 0 ) firstDuration = 0.0;
- else if ( initialPosDif == 1 ) firstDuration = _toggleAnimationDuration*0.5;
- else firstDuration = _toggleAnimationDuration;
-
- NSTimeInterval duration = animated?_toggleAnimationDuration:0.0;
-
- __weak SWRevealViewController *theSelf = self;
- if ( animated )
- {
- _enqueue( [theSelf _setFrontViewPosition:FrontViewPositionRightMost withDuration:firstDuration] );
- _enqueue( [theSelf _setFrontViewController:newFrontViewController] );
- _enqueue( [theSelf _setFrontViewPosition:FrontViewPositionLeft withDuration:duration] );
- }
- else
- {
- _enqueue( [theSelf _setFrontViewController:newFrontViewController] );
- }
-}
-
-
-- (void)_dispatchSetRearViewController:(UIViewController *)newRearViewController
-{
- __weak SWRevealViewController *theSelf = self;
- _enqueue( [theSelf _setRearViewController:newRearViewController] );
-}
-
-
-- (void)_dispatchSetRightViewController:(UIViewController *)newRightViewController
-{
- __weak SWRevealViewController *theSelf = self;
- _enqueue( [theSelf _setRightViewController:newRightViewController] );
-}
-
-
-#pragma mark animated view controller deployment and layout
-
-// Primitive method for view controller deployment and animated layout to the given position.
-- (void)_setFrontViewPosition:(FrontViewPosition)newPosition withDuration:(NSTimeInterval)duration
-{
- void (^rearDeploymentCompletion)() = [self _rearViewDeploymentForNewFrontViewPosition:newPosition];
- void (^rightDeploymentCompletion)() = [self _rightViewDeploymentForNewFrontViewPosition:newPosition];
- void (^frontDeploymentCompletion)() = [self _frontViewDeploymentForNewFrontViewPosition:newPosition];
-
- void (^animations)() = ^()
- {
- // We call the layoutSubviews method on the contentView view and send a delegate, which will
- // occur inside of an animation block if any animated transition is being performed
- [_contentView layoutSubviews];
-
- if ([_delegate respondsToSelector:@selector(revealController:animateToPosition:)])
- [_delegate revealController:self animateToPosition:_frontViewPosition];
- };
-
- void (^completion)(BOOL) = ^(BOOL finished)
- {
- rearDeploymentCompletion();
- rightDeploymentCompletion();
- frontDeploymentCompletion();
- [self _dequeue];
- };
-
- if ( duration > 0.0f )
- {
- [UIView animateWithDuration:duration delay:0.0
- options:UIViewAnimationOptionCurveEaseOut
- animations:animations completion:completion];
- }
- else
- {
- animations();
- completion(YES);
- }
-}
-
-// primitive method for front controller transition
-- (void)_setFrontViewController:(UIViewController*)newFrontViewController
-{
- UIViewController *old = _frontViewController;
- _frontViewController = newFrontViewController;
- [self _transitionFromViewController:old toViewController:newFrontViewController inView:_contentView.frontView]();
- [self _dequeue];
-}
-
-
-// Primitive method for rear controller transition
-- (void)_setRearViewController:(UIViewController*)newRearViewController
-{
- UIViewController *old = _rearViewController;
- _rearViewController = newRearViewController;
- [self _transitionFromViewController:old toViewController:newRearViewController inView:_contentView.frontView]();
- [self _dequeue];
-}
-
-// Primitive method for right controller transition
-- (void)_setRightViewController:(UIViewController*)newRightViewController
-{
- UIViewController *old = _rightViewController;
- _rightViewController = newRightViewController;
- [self _transitionFromViewController:old toViewController:newRightViewController inView:_contentView.rightView]();
- [self _dequeue];
-
-// UIViewController *old = _rightViewController;
-// void (^completion)() = [self _transitionRearController:old toController:newRightViewController inView:_contentView.rightView];
-// [newRightViewController.view setAlpha:0.0];
-// [UIView animateWithDuration:_toggleAnimationDuration
-// animations:^
-// {
-// [old.view setAlpha:0.0f];
-// [newRightViewController.view setAlpha:1.0];
-// }
-// completion:^(BOOL finished)
-// {
-// completion();
-// [self _dequeue];
-// }];
-}
-
-
-#pragma mark Position based view controller deployment
-
-// Deploy/Undeploy of the front view controller following the containment principles. Returns a block
-// that must be invoked on animation completion in order to finish deployment
-- (void (^)(void))_frontViewDeploymentForNewFrontViewPosition:(FrontViewPosition)newPosition
-{
- if ( (_rightViewController == nil && newPosition < FrontViewPositionLeft) ||
- (_rearViewController == nil && newPosition > FrontViewPositionLeft) )
- newPosition = FrontViewPositionLeft;
-
- BOOL positionIsChanging = (_frontViewPosition != newPosition);
-
- BOOL appear =
- (_frontViewPosition >= FrontViewPositionRightMostRemoved || _frontViewPosition <= FrontViewPositionLeftSideMostRemoved) &&
- (newPosition < FrontViewPositionRightMostRemoved && newPosition > FrontViewPositionLeftSideMostRemoved);
-
- BOOL disappear =
- (newPosition >= FrontViewPositionRightMostRemoved || newPosition <= FrontViewPositionLeftSideMostRemoved ) &&
- (_frontViewPosition < FrontViewPositionRightMostRemoved && _frontViewPosition > FrontViewPositionLeftSideMostRemoved);
-
- if ( positionIsChanging )
- {
- if ( [_delegate respondsToSelector:@selector(revealController:willMoveToPosition:)] )
- [_delegate revealController:self willMoveToPosition:newPosition];
- }
-
- _frontViewPosition = newPosition;
-
- void (^deploymentCompletion)() =
- [self _deploymentForViewController:_frontViewController inView:_contentView.frontView appear:appear disappear:disappear];
-
- void (^completion)() = ^()
- {
- deploymentCompletion();
- if ( positionIsChanging )
- {
- if ( [_delegate respondsToSelector:@selector(revealController:didMoveToPosition:)] )
- [_delegate revealController:self didMoveToPosition:newPosition];
- }
- };
-
- return completion;
-}
-
-// Deploy/Undeploy of the left view controller following the containment principles. Returns a block
-// that must be invoked on animation completion in order to finish deployment
-- (void (^)(void))_rearViewDeploymentForNewFrontViewPosition:(FrontViewPosition)newPosition
-{
- if ( _rearViewController == nil && newPosition > FrontViewPositionLeft )
- newPosition = FrontViewPositionLeft;
-
- BOOL appear = (_rearViewPosition <= FrontViewPositionLeft || _rearViewPosition == FrontViewPositionNone) && newPosition > FrontViewPositionLeft;
- BOOL disappear = (newPosition <= FrontViewPositionLeft || newPosition == FrontViewPositionNone) && _rearViewPosition > FrontViewPositionLeft;
-
- if ( appear )
- [_contentView prepareRearViewForPosition:newPosition];
-
- _rearViewPosition = newPosition;
-
- return [self _deploymentForViewController:_rearViewController inView:_contentView.rearView appear:appear disappear:disappear];
-}
-
-// Deploy/Undeploy of the right view controller following the containment principles. Returns a block
-// that must be invoked on animation completion in order to finish deployment
-- (void (^)(void))_rightViewDeploymentForNewFrontViewPosition:(FrontViewPosition)newPosition
-{
- if ( _rightViewController == nil && newPosition < FrontViewPositionLeft )
- newPosition = FrontViewPositionLeft;
-
- BOOL appear = _rightViewPosition >= FrontViewPositionLeft && newPosition < FrontViewPositionLeft ;
- BOOL disappear = newPosition >= FrontViewPositionLeft && _rightViewPosition < FrontViewPositionLeft;
-
- if ( appear )
- [_contentView prepareRightViewForPosition:newPosition];
-
- _rightViewPosition = newPosition;
-
- return [self _deploymentForViewController:_rightViewController inView:_contentView.rightView appear:appear disappear:disappear];
-}
-
-
-- (void (^)(void)) _deploymentForViewController:(UIViewController*)controller inView:(UIView*)view appear:(BOOL)appear disappear:(BOOL)disappear
-{
- if ( appear ) return [self _deployForViewController:controller inView:view];
- if ( disappear ) return [self _undeployForViewController:controller];
- return ^{};
-}
-
-
-#pragma mark Containment view controller deployment and transition
-
-// Containment Deploy method. Returns a block to be invoked at the
-// animation completion, or right after return in case of non-animated deployment.
-- (void (^)(void))_deployForViewController:(UIViewController*)controller inView:(UIView*)view
-{
- if ( !controller || !view )
- return ^(void){};
-
- CGRect tmpFrame = view.frame;
- view.frame = _contentView.bounds;
-
- UIView *controllerView = controller.view;
- controllerView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
- controllerView.frame = view.bounds;
-
- [view addSubview:controllerView];
- view.frame = tmpFrame;
-
- void (^completionBlock)(void) = ^(void)
- {
- // nothing to do on completion at this stage
- };
-
- return completionBlock;
-}
-
-// Containment Undeploy method. Returns a block to be invoked at the
-// animation completion, or right after return in case of non-animated deployment.
-- (void (^)(void))_undeployForViewController:(UIViewController*)controller
-{
- if (!controller)
- return ^(void){};
-
- // nothing to do before completion at this stage
-
- void (^completionBlock)(void) = ^(void)
- {
- [controller.view removeFromSuperview];
- };
-
- return completionBlock;
-}
-
-// Containment Transition method. Returns a block to be invoked at the
-// animation completion, or right after return in case of non-animated transition.
-- (void(^)(void))_transitionFromViewController:(UIViewController*)fromController toViewController:(UIViewController*)toController inView:(UIView*)view
-{
- if ( fromController == toController )
- return ^(void){};
-
- if ( toController ) [self addChildViewController:toController];
-
- void (^deployCompletion)() = [self _deployForViewController:toController inView:view];
-
- [fromController willMoveToParentViewController:nil];
-
- void (^undeployCompletion)() = [self _undeployForViewController:fromController];
-
- void (^completionBlock)(void) = ^(void)
- {
- undeployCompletion() ;
- [fromController removeFromParentViewController];
-
- deployCompletion() ;
- [toController didMoveToParentViewController:self];
- };
- return completionBlock;
-}
-
-
-@end
-
-
-#pragma mark - UIViewController(SWRevealViewController) Category
-
-@implementation UIViewController(SWRevealViewController)
-
-- (SWRevealViewController*)revealViewController
-{
- UIViewController *parent = self;
- Class revealClass = [SWRevealViewController class];
-
- while ( nil != (parent = [parent parentViewController]) && ![parent isKindOfClass:revealClass] )
- {
- }
-
- return (id)parent;
-}
-
-@end
-
-
-#pragma mark - SWRevealViewControllerSegue Class
-
-@implementation SWRevealViewControllerSegue
-
-- (void)perform
-{
- if ( _performBlock != nil )
- {
- _performBlock( self, self.sourceViewController, self.destinationViewController );
- }
-}
-
-@end
-
diff --git a/ios/iosremote/ServerListViewController~ipad.h b/ios/iosremote/ServerListViewController~ipad.h
deleted file mode 100644
index 06dbbe3359da..000000000000
--- a/ios/iosremote/ServerListViewController~ipad.h
+++ /dev/null
@@ -1,15 +0,0 @@
-// -*- Mode: ObjC; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-//
-// This file is part of the LibreOffice project.
-//
-// This Source Code Form is subject to the terms of the Mozilla Public
-// License, v. 2.0. If a copy of the MPL was not distributed with this
-// file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-#import "ServerListViewController.h"
-
-@interface ServerListViewController_ipad : ServerListViewController
-
-- (IBAction)cancelModalView:(id)sender;
-
-@end
diff --git a/ios/iosremote/ServerListViewController~ipad.m b/ios/iosremote/ServerListViewController~ipad.m
deleted file mode 100644
index e1ee94b0fd91..000000000000
--- a/ios/iosremote/ServerListViewController~ipad.m
+++ /dev/null
@@ -1,46 +0,0 @@
-// -*- Mode: ObjC; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-//
-// This file is part of the LibreOffice project.
-//
-// This Source Code Form is subject to the terms of the Mozilla Public
-// License, v. 2.0. If a copy of the MPL was not distributed with this
-// file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-#import "ServerListViewController~ipad.h"
-
-@interface ServerListViewController_ipad ()
-
-@end
-
-@implementation ServerListViewController_ipad
-
-- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
-{
- self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
- if (self) {
- // Custom initialization
- }
- return self;
-}
-
-- (void)viewDidLoad
-{
- [super viewDidLoad];
- // Do any additional setup after loading the view.
-}
-
-- (void)didReceiveMemoryWarning
-{
- [super didReceiveMemoryWarning];
- // Dispose of any resources that can be recreated.
-}
-
-- (void)viewDidUnload {
- [super viewDidUnload];
-}
-
-#pragma mark - Actions
-- (IBAction)cancelModalView:(id)sender {
- [self.presentingViewController dismissModalViewControllerAnimated:YES];
-}
-@end
diff --git a/ios/iosremote/Settings.bundle/Root.plist b/ios/iosremote/Settings.bundle/Root.plist
deleted file mode 100644
index 368da380ab82..000000000000
--- a/ios/iosremote/Settings.bundle/Root.plist
+++ /dev/null
@@ -1,115 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
- <key>PreferenceSpecifiers</key>
- <array>
- <dict>
- <key>Title</key>
- <string>General</string>
- <key>Type</key>
- <string>PSGroupSpecifier</string>
- </dict>
- <dict>
- <key>Values</key>
- <array>
- <integer>0</integer>
- <integer>1</integer>
- </array>
- <key>Type</key>
- <string>PSMultiValueSpecifier</string>
- <key>Title</key>
- <string>Default Timing Widget</string>
- <key>Key</key>
- <string>DEFAULT_TIMING_WIDGET</string>
- <key>DefaultValue</key>
- <integer>0</integer>
- <key>Titles</key>
- <array>
- <string>Stopwatch</string>
- <string>Countdown Timer</string>
- </array>
- </dict>
- <dict>
- <key>Type</key>
- <string>PSGroupSpecifier</string>
- <key>Title</key>
- <string>Stopwatch</string>
- </dict>
- <dict>
- <key>Type</key>
- <string>PSToggleSwitchSpecifier</string>
- <key>Title</key>
- <string>Auto-Start</string>
- <key>Key</key>
- <string>STOPWATCH_AUTO_START</string>
- <key>DefaultValue</key>
- <false/>
- </dict>
- <dict>
- <key>Type</key>
- <string>PSGroupSpecifier</string>
- <key>Title</key>
- <string>Countdown Timer</string>
- </dict>
- <dict>
- <key>Values</key>
- <array>
- <integer>3</integer>
- <integer>5</integer>
- <integer>10</integer>
- <integer>15</integer>
- <integer>20</integer>
- <integer>30</integer>
- <integer>40</integer>
- <integer>45</integer>
- <integer>50</integer>
- <integer>60</integer>
- </array>
- <key>Titles</key>
- <array>
- <string>3</string>
- <string>5</string>
- <string>10</string>
- <string>15</string>
- <string>20</string>
- <string>30</string>
- <string>40</string>
- <string>45</string>
- <string>50</string>
- <string>60</string>
- </array>
- <key>Type</key>
- <string>PSMultiValueSpecifier</string>
- <key>Title</key>
- <string>Default Duration (mins)</string>
- <key>Key</key>
- <string>TIMER_DEFAULT_DURATION</string>
- <key>DefaultValue</key>
- <integer>10</integer>
- </dict>
- <dict>
- <key>Type</key>
- <string>PSToggleSwitchSpecifier</string>
- <key>Title</key>
- <string>Auto-Start</string>
- <key>Key</key>
- <string>TIMER_AUTO_START</string>
- <key>DefaultValue</key>
- <false/>
- </dict>
- <dict>
- <key>Type</key>
- <string>PSToggleSwitchSpecifier</string>
- <key>Title</key>
- <string>Vibration</string>
- <key>Key</key>
- <string>TIMER_VIBRATION</string>
- <key>DefaultValue</key>
- <false/>
- </dict>
- </array>
- <key>StringsTable</key>
- <string>Root</string>
-</dict>
-</plist>
diff --git a/ios/iosremote/Settings.bundle/ar.lproj/Root.strings b/ios/iosremote/Settings.bundle/ar.lproj/Root.strings
deleted file mode 100644
index b13cdda14c36..000000000000
--- a/ios/iosremote/Settings.bundle/ar.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/ca.lproj/Root.strings b/ios/iosremote/Settings.bundle/ca.lproj/Root.strings
deleted file mode 100644
index 39ad44dea768..000000000000
--- a/ios/iosremote/Settings.bundle/ca.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/cs.lproj/Root.strings b/ios/iosremote/Settings.bundle/cs.lproj/Root.strings
deleted file mode 100644
index 5f76d265fd47..000000000000
--- a/ios/iosremote/Settings.bundle/cs.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/da.lproj/Root.strings b/ios/iosremote/Settings.bundle/da.lproj/Root.strings
deleted file mode 100644
index d6231ad49247..000000000000
--- a/ios/iosremote/Settings.bundle/da.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/de.lproj/Root.strings b/ios/iosremote/Settings.bundle/de.lproj/Root.strings
deleted file mode 100644
index 2338d1f6e19e..000000000000
--- a/ios/iosremote/Settings.bundle/de.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/el.lproj/Root.strings b/ios/iosremote/Settings.bundle/el.lproj/Root.strings
deleted file mode 100644
index e33cbaafe4b3..000000000000
--- a/ios/iosremote/Settings.bundle/el.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/en.lproj/Root.strings b/ios/iosremote/Settings.bundle/en.lproj/Root.strings
deleted file mode 100644
index e55eb4af5e31..000000000000
--- a/ios/iosremote/Settings.bundle/en.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/es.lproj/Root.strings b/ios/iosremote/Settings.bundle/es.lproj/Root.strings
deleted file mode 100644
index 3764aa537dd1..000000000000
--- a/ios/iosremote/Settings.bundle/es.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/fi.lproj/Root.strings b/ios/iosremote/Settings.bundle/fi.lproj/Root.strings
deleted file mode 100644
index 8adaf04830f2..000000000000
--- a/ios/iosremote/Settings.bundle/fi.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/fr.lproj/Root.strings b/ios/iosremote/Settings.bundle/fr.lproj/Root.strings
deleted file mode 100644
index 993206f6ff5f..000000000000
--- a/ios/iosremote/Settings.bundle/fr.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/hu.lproj/Root.strings b/ios/iosremote/Settings.bundle/hu.lproj/Root.strings
deleted file mode 100644
index 2dfd71a5b913..000000000000
--- a/ios/iosremote/Settings.bundle/hu.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/it.lproj/Root.strings b/ios/iosremote/Settings.bundle/it.lproj/Root.strings
deleted file mode 100644
index 5dd9d8774467..000000000000
--- a/ios/iosremote/Settings.bundle/it.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/nb.lproj/Root.strings b/ios/iosremote/Settings.bundle/nb.lproj/Root.strings
deleted file mode 100644
index cc38f43f8e56..000000000000
--- a/ios/iosremote/Settings.bundle/nb.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/nl.lproj/Root.strings b/ios/iosremote/Settings.bundle/nl.lproj/Root.strings
deleted file mode 100644
index 4c806dac5310..000000000000
--- a/ios/iosremote/Settings.bundle/nl.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/pl.lproj/Root.strings b/ios/iosremote/Settings.bundle/pl.lproj/Root.strings
deleted file mode 100644
index 4fdd7d3c4714..000000000000
--- a/ios/iosremote/Settings.bundle/pl.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/pt-BR.lproj/Root.strings b/ios/iosremote/Settings.bundle/pt-BR.lproj/Root.strings
deleted file mode 100644
index d4b15e905eca..000000000000
--- a/ios/iosremote/Settings.bundle/pt-BR.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/pt.lproj/Root.strings b/ios/iosremote/Settings.bundle/pt.lproj/Root.strings
deleted file mode 100644
index 13dfa4a6114d..000000000000
--- a/ios/iosremote/Settings.bundle/pt.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/ru.lproj/Root.strings b/ios/iosremote/Settings.bundle/ru.lproj/Root.strings
deleted file mode 100644
index af1a4901ca2d..000000000000
--- a/ios/iosremote/Settings.bundle/ru.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/sl.lproj/Root.strings b/ios/iosremote/Settings.bundle/sl.lproj/Root.strings
deleted file mode 100644
index 1e2020e4fa2d..000000000000
--- a/ios/iosremote/Settings.bundle/sl.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/sv.lproj/Root.strings b/ios/iosremote/Settings.bundle/sv.lproj/Root.strings
deleted file mode 100644
index 5aa40b1948ef..000000000000
--- a/ios/iosremote/Settings.bundle/sv.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/tr.lproj/Root.strings b/ios/iosremote/Settings.bundle/tr.lproj/Root.strings
deleted file mode 100644
index 1a52481d6878..000000000000
--- a/ios/iosremote/Settings.bundle/tr.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/uk.lproj/Root.strings b/ios/iosremote/Settings.bundle/uk.lproj/Root.strings
deleted file mode 100644
index 503ca02b6cd7..000000000000
--- a/ios/iosremote/Settings.bundle/uk.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/Settings.bundle/zh-Hant.lproj/Root.strings b/ios/iosremote/Settings.bundle/zh-Hant.lproj/Root.strings
deleted file mode 100644
index bf6e47931544..000000000000
--- a/ios/iosremote/Settings.bundle/zh-Hant.lproj/Root.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/TestFlightSDK1.2.6/README.md b/ios/iosremote/TestFlightSDK1.2.6/README.md
deleted file mode 100644
index e8e0215995b1..000000000000
--- a/ios/iosremote/TestFlightSDK1.2.6/README.md
+++ /dev/null
@@ -1,223 +0,0 @@
-##Introduction
-
-The TestFlight SDK allows you to track how beta testers are testing your application. Out of the box we track simple usage information, such as which tester is using your application, their device model/OS, how long they used the application, logs of their test session, and automatic recording of any crashes they encounter.
-
-To get the most out of the SDK we have provided the Checkpoint API.
-
-The Checkpoint API is used to help you track exactly how your testers are using your application. Curious about which users passed level 5 in your game, or posted their high score to Twitter, or found that obscure feature? With a single line of code you can finally gather all this information. Wondering how many times your app has crashed? Wondering who your power testers are? We've got you covered. See more information on the Checkpoint API in section 4.
-
-Alongside the Checkpoint API is the Questions interface. The Questions interface is managed on a per build basis on the TestFlight website. Find out more about the Questions Interface in section 6.
-
-For more detailed debugging we have a remote logging solution. Find out more about our logging system with TFLog in the Remote Logging section.
-
-
-##Considerations
-
-Information gathered by the SDK is sent to the website in real time. When an application is put into the background (iOS 4.x) or terminated (iOS 3.x) we try to send the finalizing information for the session during the time allowed for finalizing the application. Should all of the data not get sent the remaining data will be sent the next time the application is launched. As such, to get the most out of the SDK we recommend your application support iOS 4.0 and higher.
-
-This SDK can be run from both the iPhone Simulator and Device and has been tested using Xcode 4.0.
-
-The AdSupport.framework is required for iOS 6.0+ in order to estimate the number of unique users your app has. You may weak link the framework in you app. If your app does not link with the AdSupport.framework, the TestFlight SDK will automatically load it for apps running on iOS 6.0+.
-
-
-##Integration
-
-1. Add the files to your project: File -&gt; Add Files to " "
- 1. Find and select the folder that contains the SDK
- 2. Make sure that "Copy items into destination folder (if needed)" is checked
- 3. Set Folders to "Create groups for any added folders"
- 4. Select all targets that you want to add the SDK to
-2. Verify that libTestFlight.a has been added to the Link Binary With Libraries Build Phase for the targets you want to use the SDK with
- 1. Select your Project in the Project Navigator
- 2. Select the target you want to enable the SDK for
- 3. Select the Build Phases tab
- 4. Open the Link Binary With Libraries Phase
- 5. If libTestFlight.a is not listed, drag and drop the library from your Project Navigator to the Link Binary With Libraries area
- 6. Repeat Steps 2 - 5 until all targets you want to use the SDK with have the SDK linked
-3. Add libz to your Link Binary With Libraries Build Phase
- 1. Select your Project in the Project Navigator
- 2. Select the target you want to enable the SDK for
- 3. Select the Build Phases tab
- 4. Open the Link Binary With Libraries Phase
- 5. Click the + to add a new library
- 6. Find libz.dylib in the list and add it
- 7. Repeat Steps 2 - 6 until all targets you want to use the SDK with have libz.dylib
-
-4. In your Application Delegate:
- 1. Import TestFlight: `#import "TestFlight.h"`
-
- ***NOTE:*** Rather than importing `TestFlight.h` in every file you may add the above line into you pre-compiled header (`<projectname>_Prefix.pch`) file inside of the
-
-
- #ifdef __OBJC__
-
-
- section. This will give you access to the SDK across all files.
-
- 2. Get your Application Token which you can find at [http://testflightapp.com/dashboard/applications/](http://testflightapp.com/dashboard/applications/) select the application you are using from the list choose the SDK option and the application token for this application will be there. To ensure that your testers do not show up as anonymous place the call to setDeviceIdentifer before calling takeOff. Remove #define TESTING 1 before building your release build for the App Store.
-
- 3. Launch TestFlight with your Application Token
-
- -(BOOL)application:(UIApplication *)application
- didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
- // start of your application:didFinishLaunchingWithOptions
-
- // !!!: Use the next line only during beta
- // [TestFlight setDeviceIdentifier:[[UIDevice currentDevice] uniqueIdentifier]];
-
- [TestFlight takeOff:@"Insert your Application Token here"];
- // The rest of your application:didFinishLaunchingWithOptions method
- // ...
- }
-
- 4. To report crashes to you we install our own uncaught exception handler. If you are not currently using an exception handler of your own then all you need to do is go to the next step. If you currently use an Exception Handler, or you use another framework that does please go to the section on advanced exception handling.
-
-
-##Beta Testing and Release Differentiation
-
-In order to provide more information about your testers while beta testing you will need to provide the device's unique identifier. This identifier is not something that the SDK will collect from the device and we do not recommend using this in production. To send the device identifier to us put the following code **before your call to takeOff**.
-
- [TestFlight setDeviceIdentifier:[[UIDevice currentDevice] uniqueIdentifier]];
- [TestFlight takeOff:@"Insert your Application Token here"];
-
-This will allow you to have the best possible information during testing. **When it is time to submit to the App Store comment this line out**. Apple may reject your app if you leave this line in. If you decide to not include the device's unique identifier during your testing phase TestFlight will still collect all of the information that you send but it may be anonymized.
-
-
-##Checkpoint API
-
-When a tester does something you care about in your app you can pass a checkpoint. For example completing a level, adding a todo item, etc. The checkpoint progress is used to provide insight into how your testers are testing your apps. The passed checkpoints are also attached to crashes, which can help when creating steps to replicate.
-
-`[TestFlight passCheckpoint:@"CHECKPOINT_NAME"];` Use `passCheckpoint:` to track when a user performs certain tasks in your application. This can be useful for making sure testers are hitting all parts of your application, as well as tracking which testers are being thorough.
-
-##Feedback API
-
-To launch unguided feedback call the openFeedbackView method. We recommend that you call this from a GUI element.
-
- -(IBAction)launchFeedback {
- [TestFlight openFeedbackView];
- }
-
-If you want to create your own feedback form you can use the submitCustomFeedback method to submit the feedback that the user has entered.
-
- -(IBAction)submitFeedbackPressed:(id)sender {
- NSString *feedback = [self getUserFeedback];
- [TestFlight submitFeedback:feedback];
- }
-
-The above sample assumes that [self getUserFeedback] is implemented such that it obtains the users feedback from the GUI element you have created and that submitFeedbackPressed is the action for your submit button.
-
-Once users have submitted feedback from inside of the application you can view it in the feedback area of your build page.
-
-
-##Upload your build
-
-After you have integrated the SDK into your application you need to upload your build to TestFlight. You can upload from your dashboard or or using the Upload API, full documentation at [https://testflightapp.com/api/doc/](https://testflightapp.com/api/doc/)
-
-##Questions Interface
-
-In order to ask a question, you'll need to associate it with a checkpoint. Make sure your checkpoints are initialized by running your app and hitting them all yourself before you start adding questions.
-
-There are three question types available: Yes/No, Multiple Choice, and Long Answer.
-
-To create questions, visit your builds Questions page and click on 'Add Question'. If you choose Multiple Choice, you'll need to enter a list of possible answers for your testers to choose from — otherwise, you'll only need to enter your question's, well, question. If your build has no questions, you can also choose to migrate questions from another build (because seriously — who wants to do all that typing again)?
-
-After restarting your application on an approved device, when you pass the checkpoint associated with your questions a TestFlight modal question form will appear on the screen asking the beta tester to answer your question.
-
-After you upload a new build to TestFlight you will need to associate questions once again. However if your checkpoints and questions have remained the same you can choose "copy questions from an older build" and choose which build to copy the questions from.
-
-##View the results
-
-As testers install your build and start to test it you will see their session data on the web on the build report page for the build you've uploaded.
-
-##Advanced Exception Handling
-
-An uncaught exception means that your application is in an unknown state and there is not much that you can do but try and exit gracefully. Our SDK does its best to get the data we collect in this situation to you while it is crashing, but it is designed in such a way that the important act of saving the data occurs in as safe way a way as possible before trying to send anything. If you do use uncaught exception or signal handlers install your handlers before calling `takeOff`. Our SDK will then call your handler while ours is running. For example:
-
- /*
- My Apps Custom uncaught exception catcher, we do special stuff here, and TestFlight takes care of the rest
- */
- void HandleExceptions(NSException *exception) {
- NSLog(@"This is where we save the application data during a exception");
- // Save application data on crash
- }
- /*
- My Apps Custom signal catcher, we do special stuff here, and TestFlight takes care of the rest
- */
- void SignalHandler(int sig) {
- NSLog(@"This is where we save the application data during a signal");
- // Save application data on crash
- }
-
- -(BOOL)application:(UIApplication *)application
- didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
- // installs HandleExceptions as the Uncaught Exception Handler
- NSSetUncaughtExceptionHandler(&HandleExceptions);
- // create the signal action structure
- struct sigaction newSignalAction;
- // initialize the signal action structure
- memset(&newSignalAction, 0, sizeof(newSignalAction));
- // set SignalHandler as the handler in the signal action structure
- newSignalAction.sa_handler = &SignalHandler;
- // set SignalHandler as the handlers for SIGABRT, SIGILL and SIGBUS
- sigaction(SIGABRT, &newSignalAction, NULL);
- sigaction(SIGILL, &newSignalAction, NULL);
- sigaction(SIGBUS, &newSignalAction, NULL);
- // Call takeOff after install your own unhandled exception and signal handlers
- [TestFlight takeOff:@"Insert your Application Token here"];
- // continue with your application initialization
- }
-
-You do not need to add the above code if your application does not use exception handling already.
-
-##Remote Logging
-
-To perform remote logging you can use the TFLog method which logs in a few different methods described below. In order to make the transition from NSLog to TFLog easy we have used the same method signature for TFLog as NSLog. You can easily switch over to TFLog by adding the following macro to your header
-
- #define NSLog TFLog
-
-That will do a switch from NSLog to TFLog, if you want more information, such as file name and line number you can use a macro like
-
- #define NSLog(__FORMAT__, ...) TFLog((@"%s [Line %d] " __FORMAT__), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
-
-Which will produce output that looks like
-
- -[HTFCheckpointsController showYesNoQuestion:] [Line 45] Pressed YES/NO
-
-We have implemented three different loggers.
-
- 1. TestFlight logger
- 2. Apple System Log logger
- 3. STDERR logger
-
-Each of the loggers log asynchronously and all TFLog calls are non blocking. The TestFlight logger writes its data to a file which is then sent to our servers on Session End events. The Apple System Logger sends its messages to the Apple System Log and are viewable using the Organizer in Xcode when the device is attached to your computer. The ASL logger can be disabled by turning it off in your TestFlight options
-
- [TestFlight setOptions:{ TFOptionLogToConsole : @NO }];
-
-The default option is YES.
-
-The STDERR logger sends log messages to STDERR so that you can see your log statements while debugging. The STDERR logger is only active when a debugger is attached to your application. If you do not wish to use the STDERR logger you can disable it by turning it off in your TestFlight options
-
- [TestFlight setOptions:{ TFOptionLogToSTDERR : @NO }];
-
-The default option is YES.
-
-## Advanced Remote Logging
-
-For most users we expect using TFLog to provide all of the logging functionality that they need. For the occasion where you need to provide a wrapper around TFLog we provide
-
- void TFLogv(NSString *format, va_list arg_list);
-
-Using TFLogv you can have your method that accepts a variable number of arguments that then passes that format and argument list to TFLog.
-
-
-##iOS3
-
-We now require that anyone who is writing an application that supports iOS3 add the System.framework as an optional link. In order to provide a better shutdown experience we send any large log files to our servers in the background. To add System.framework as an optional link:
-
-1. Select your Project in the Project Navigator
-2. Select the target you want to enable the SDK for
-3. Select the Build Phases tab
-4. Open the Link Binary With Libraries Phase
-5. Click the + to add a new library
-6. Find libSystem.dylib in the list and add it
-7. To the right of libSystem.dylib in the Link Binary With Libraries pane change "Required" to "Optional"
diff --git a/ios/iosremote/TestFlightSDK1.2.6/TestFlight.h b/ios/iosremote/TestFlightSDK1.2.6/TestFlight.h
deleted file mode 100644
index 0d1b27a2f253..000000000000
--- a/ios/iosremote/TestFlightSDK1.2.6/TestFlight.h
+++ /dev/null
@@ -1,114 +0,0 @@
-//
-// TestFlight.h
-// libTestFlight
-//
-// Created by Jonathan Janzen on 06/11/11.
-// Copyright 2011 TestFlight. All rights reserved.
-
-#import <Foundation/Foundation.h>
-#define TESTFLIGHT_SDK_VERSION @"1.2.6"
-#undef TFLog
-
-#if __cplusplus
-extern "C" {
-#endif
- void TFLog(NSString *format, ...);
- void TFLogv(NSString *format, va_list arg_list);
-#if __cplusplus
-}
-#endif
-
-/**
- * TestFlight object
- * All methods are class level
- */
-@interface TestFlight : NSObject {
-
-}
-
-/**
- * Add custom environment information
- * If you want to track custom information such as a user name from your application you can add it here
- *
- * @param information A string containing the environment you are storing
- * @param key The key to store the information with
- */
-+ (void)addCustomEnvironmentInformation:(NSString *)information forKey:(NSString*)key;
-
-
-/**
- * Starts a TestFlight session using the Application Token for this Application
- *
- * @param applicationToken Will be the application token for the current application.
- * The token for this application can be retrieved by going to https://testflightapp.com/dashboard/applications/
- * selecting this application from the list then selecting SDK.
- */
-
-+ (void)takeOff:(NSString *)applicationToken;
-
-/**
- * Sets custom options
- *
- * @param options NSDictionary containing the options you want to set. Available options are described below at "TestFlight Option Keys"
- *
- */
-+ (void)setOptions:(NSDictionary*)options;
-
-/**
- * Track when a user has passed a checkpoint after the flight has taken off. Eg. passed level 1, posted high score
- *
- * @param checkpointName The name of the checkpoint, this should be a static string
- */
-+ (void)passCheckpoint:(NSString *)checkpointName;
-
-/**
- * Opens a feedback window that is not attached to a checkpoint
- */
-+ (void)openFeedbackView;
-
-/**
- * Submits custom feedback to the site. Sends the data in feedback to the site. This is to be used as the method to submit
- * feedback from custom feedback forms.
- *
- * @param feedback Your users feedback, method does nothing if feedback is nil
- */
-+ (void)submitFeedback:(NSString*)feedback;
-
-/**
- * Sets the Device Identifier.
- *
- * !! DO NOT CALL IN SUBMITTED APP STORE APP.
- *
- * !! MUST BE CALLED BEFORE +takeOff:
- *
- * This method should only be used during testing so that you can identify a testers test data with them.
- * If you do not provide the identifier you will still see all session data, with checkpoints
- * and logs, but the data will be anonymized.
- *
- * It is recommended that you only use this method during testing.
- * Apple may reject your app if left in a submitted app.
- *
- * Use:
- * Only use this with the Apple device UDID. DO NOT use Open ID or your own identifier.
- * [TestFlight setDeviceIdentifier:[[UIDevice currentDevice] uniqueIdentifier]];
- *
- * @param deviceIdentifer The current devices device identifier
- */
-+ (void)setDeviceIdentifier:(NSString*)deviceIdentifer;
-
-@end
-
-
-/**
- * TestFlight Option Keys
- *
- * Pass these as keys to the dictionary you pass to +`[TestFlight setOptions:]`.
- * The values should be NSNumber BOOLs (`[NSNumber numberWithBool:YES]` or `@YES`)
- */
-extern NSString *const TFOptionAttachBacktraceToFeedback; // Defaults to @NO. Setting to @YES attaches the current backtrace, with symbols, to the feedback.
-extern NSString *const TFOptionDisableInAppUpdates; // Defaults to @NO. Setting to @YES, disables the in app update screen shown in BETA apps when there is a new version available on TestFlight.
-extern NSString *const TFOptionLogToConsole; // Defaults to @YES. Prints remote logs to Apple System Log.
-extern NSString *const TFOptionLogToSTDERR; // Defaults to @YES. Sends remote logs to STDERR when debugger is attached.
-extern NSString *const TFOptionReinstallCrashHandlers; // If set to @YES: Reinstalls crash handlers, to be used if a third party library installs crash handlers overtop of the TestFlight Crash Handlers.
-extern NSString *const TFOptionSendLogOnlyOnCrash; // Defaults to @NO. Setting to @YES stops remote logs from being sent when sessions end. They would only be sent in the event of a crash.
-
diff --git a/ios/iosremote/TestFlightSDK1.2.6/libTestFlight.a b/ios/iosremote/TestFlightSDK1.2.6/libTestFlight.a
deleted file mode 100644
index bc045a9fc8f4..000000000000
--- a/ios/iosremote/TestFlightSDK1.2.6/libTestFlight.a
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/TestFlightSDK1.2.6/release_notes.md b/ios/iosremote/TestFlightSDK1.2.6/release_notes.md
deleted file mode 100644
index c5ce0fb106bc..000000000000
--- a/ios/iosremote/TestFlightSDK1.2.6/release_notes.md
+++ /dev/null
@@ -1,249 +0,0 @@
-## 1.2.6 - June 11, 2013
-
-- Fixed a bug with crash reporting on iOS 7
-
-## 1.2.5 - May 1, 2013
-
-- Removed any access to mac address
-- Added AdSupport.framework requirement
- - AdSupport.framework is automatically loaded on iOS 6.0+ if not weak linked with app
-
-## 1.2.4 - February 19, 2013
-
-- Fixed bug that caused crash reports to sometimes not send immediately (they would be resent later)
-
-## 1.2.3 - January 8, 2013
-
-- Fixed typos in readme
-- Fixed bug where logs not sent on crash
-- Fixed bug where empty crash files were created (but not sent)
-- Cache cache path
-- Use consts for `setOptions:`
-- Updated `setDeviceIdentifier:` comments to make them clearer
-- Remove potentially conflicting function name `UIColorFromRGB`
-- Fixed crash on bad in app update data
-
-## 1.2.2 - December 26, 2012
-
-- Fix typo in app token error message
-
-## 1.2.1 - December 26, 2012
-
-- The max number of concurrent network connections has been reduced from 4 to 2.
-
-##1.2 - November 12, 2012
-
-* Removed Team Token support. As of version 1.2 takeOff must be called with the Application Token, https://testflightapp.com/dashboard/applications/, choose your application, select SDK, get the Token for this Application.
-
-##1.2 BETA 3 - October 11, 2012
-
-* Added application token support. Application Tokens are currently optional if you do not have one you do not need one
-
-##1.2 BETA 2 - October 9, 2012
-
-* Resolved an instance of close_file being called on a bad file descriptor
-
-##1.2 BETA 1 - October 1, 2012
-
-* Removed support for armv6
-* Exception handler now returns instead of raising a SIGTRAP
-
-##1.1 - September 13, 2012
-
-* armv7s and iOS 6 support
-* Updated for general release
-
-##1.1 BETA 3 - September 12, 2012
-
-* armv7s slice added to library
-* fixed typo for in application updates, inAppUdates changed to inAppUpdates
-
-##1.1 BETA 2 - September 6, 2012
-
-* Re-enabled armv6 support
-* Added option to disable in application updates
-
-##1.1 BETA 1 - July 13, 2012
-
-* Added TFLogv to allow for log customizations. Check the README or online docs for more information.
-* Added option attachBacktraceToFeedback, which attaches a backtrace to feedback sent from the SDK. For users who use feedback in more than one location in the application.
-* Resolved issue where other exception handlers would not be called during an exception.
-* SDK now sends the device language for a session.
-* Documentation fixes.
-* Stability fixes.
-
-###1.0 - March 29, 2012
-
-* Resolved occurrences of exceptions with the message "No background task exists with identifier 0"
-
-###1.0 BETA 1 - March 23, 2012
-
-* Privacy Updates
-* UDID is no longer collected by the SDK. During testing please use `[TestFlight setDeviceIdentifier:[[UIDevice currentDevice] uniqueIdentifier]];` to send the UDID so you can identify your testers. For release do not set `+setDeviceIdentifier`. See Beta Testing and Release Differentiation in the README or online at [https://testflightapp.com/sdk/doc/1.0beta1/](http://testflightapp.com/sdk/doc/1.0beta1/)
-
-###0.8.3 - February 14, 2012
-
-* Rolled previous beta code into release builds
-* No longer allow in application updates to occur in applications that were obtained from the app store.
-
-**Tested compiled library with:**
-
-* Xcode 4.3
-* Xcode 4.2
-* Xcode 4.1
-* Xcode 3.2.6
-
-###0.8.3 BETA 5 - February 10, 2012
-
-* Changed logging from asynchronous to synchronous.
-* Resolved crash when looking for a log path failed.
-* Added submitFeedback to the TestFlight class to allow for custom feedback forms.
-
-###0.8.3 BETA 4 - January 20, 2012
-
-* Resolved an issue that occured when an application was upgraded from 0.8.3 BETA 1 to 0.8.3 BETA 3+ with unsent data from 0.8.3 BETA 1
-
-###0.8.3 BETA 3 - January 19, 2012
-
-* On crash log files over 64k will not be sent until next launch.
-
-**Known Issues:**
-
-* Logging massive amounts of data at the end of a session may prevent the application from launching in time on next launch
-
-###0.8.3 BETA 2 - January 13, 2012
-
-* libz.dylib is now required to be added to your "Link Binary with Libraries" build phase
-* Log file compression, The compression is done on an as needed basis rather than before sending
-* Changed all outgoing data from JSON to MessagePack
-* Added option `logToSTDERR` to disable the `STDERR` logger
-
-###0.8.3 BETA 1 - December 29, 2011
-
-* In rare occurrences old session data that had not been sent to our server may have been discarded or attached to the wrong build. It is now no longer discarded
-* Made sending of Session End events more robust
-* Network queuing system does better bursting of unsent data
-* Log files that are larger than 64K are now sent sometime after the next launch
-* Log files that are larger than 16MB are no longer supported and will be replaced with a message indicating the log file was too large
-* Fixed crashes while resuming from background
-
-###0.8.2 - December 20, 2011
-
-* Promoted 0.8.2 BETA 4 to stable
-
-**Known Issues:**
-
-* Under some circumstances Session End events may not be sent until the next launch.
-* With large log files Session End events may take a long time to show up.
-
-**Tested compiled library with:**
-
-* Xcode 4.3
-* Xcode 4.2
-* Xcode 4.1
-* Xcode 3.2.6
-
-###0.8.2 BETA 4 - December 12, 2011
-
-* Prevented "The string argument is NULL" from occuring during finishedHandshake in rare cases
-* Resolved issue where data recorded while offline may not be sent
-
-###0.8.2 BETA 3 - December 8, 2011
-
-* Added auto-release pools to background setup and tear down
-
-###0.8.2 BETA 2 - December 5, 2011
-
-* Fixed the "pointer being freed was not allocated" bug
-
-###0.8.1 - November 18, 2011
-
-* Implemented TFLog logging system, see README for more information
-* Fixed an issue where Session End events may not be sent until next launch
-* Fixed an issue where duplicate events could be sent
-* Fixed an issue with Session End events not being sent from some iPod touch models
-
-**Tested compiled library with:**
-
-* Xcode 4.2
-* Xcode 4.1
-* Xcode 3.2.6
-
-###0.8 - November 8, 2011
-
-* Added `SIGTRAP` as a signal type that we catch
-* Removed all Objective-c from crash reporting
-* Removed the use of non signal safe functions from signal handling
-* Created a signal safe way to get symbols from a stack trace
-* Changed the keyboardType for Long Answer Questions and Feedback to allow for international character input
-* Changed `TESTFLIGHT_SDK_VERSION` string to be an `NSString`
-* Changed cache folder from Library/Caches/TestFlight to Library/Caches/com.testflight.testflightsdk
-* Fixed issue with saving data when device is offline
-* Fixed compability issues with iOS 3
-* Added calling into the rootViewController shouldAutorotateToInterfaceOrientation if a rootViewController is set
-* Made the comments in TestFlight.h compatible with Appledoc
-
-Tested compiled library with:
-
-* Xcode 4.2
-* Xcode 4.1
-* Xcode 3.2
-
-###0.7.2 - September 29, 2011
-
-* Changed `TESTFLIGHT_SDK_VERSION` string to be an `NSString`
-* Fixed an issue where exiting an application while the SDK is active caused modal views to be dismissed
-
-###0.7.1 - September 22, 2011
-
-* Internal release
-* Refactoring
-
-###0.7 - September 21, 2011
-
-* Moved TestFlight images and data to the Library/Caches folder
-* Resolved an issue where sometimes the rootViewController could not be found and feedback, questions and upgrade views would not be displayed
-* In application upgrade changed to allow skipping until the next version is installed and allows upgrades to be forced
-* Fixed a memory leak when launching questions
-
-###0.6 - September 2, 2011
-
-* Renamed SlideShowPreviewViewController~ipad.h_encode to testflight_SlideShowPreviewViewController~ipad.h_encode to remove a conflict with other third party libraries
-* Added ability to reinstall crash handlers when they are overwritten using the setOptions API
-* Fixed an issue where crash reports might not get sent under certain circumstances
-* Fixed a deadlock when the application is put in the background and then resumed before all information can be sent
-* Fixed an issue when attempting to un-install all signal handlers during a signal
-* Added support for landscape mode on the iPad to the Questions and Feedback views
-* Crash reporting now works in versions of Xcode earlier than 4.2
-* Fixed a memory leak during handshake
-
-###0.5 - August 19, 2011
-
-* Feedback that is not attached to a checkpoint [TestFlight openFeedbackView]
-* Usability changes to question views
-* Removed pause and resume sessions, replaced with sessions being stopped and started
-* Added text auto correction to the Long Answer question type
-* Crash reports now send on crash instead of next launch
-
-###0.4 - August 15, 2011
-
-* In Application Feedback with Questions
-* In application updates
-* Custom Environment Information added
-* Networking stack reimplementation
-* Exception handling fixes
-
-###0.3 - June 15, 2011
-
-* Removed all mention of JSONKit from the README
-* Added support for using both the Bundle Version and the Bundle Short Version string
-
-###0.2 - June 14, 2011
-
-* Removed all categories this allows users to use the SDK without having to set -ObjC and -load_all
-* Prefixed JSONKit for use in TestFlight to remove reported issues where some users were already using JSONKit
-* Added support for armv6 again
-
-###0.1 - June 11, 2011
-
-* Initial Version
diff --git a/ios/iosremote/UserDefaults.plist b/ios/iosremote/UserDefaults.plist
deleted file mode 100644
index a187a413415f..000000000000
--- a/ios/iosremote/UserDefaults.plist
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
- <key>TIMER_DEFAULT_DURATION</key>
- <integer>10</integer>
- <key>HOWTO_GUIDE_SEEN</key>
- <false/>
-</dict>
-</plist>
diff --git a/ios/iosremote/ar.lproj/Localizable.strings b/ios/iosremote/ar.lproj/Localizable.strings
deleted file mode 100644
index 593f36f5809f..000000000000
--- a/ios/iosremote/ar.lproj/Localizable.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/ar.lproj/iPad_autosize.storyboard b/ios/iosremote/ar.lproj/iPad_autosize.storyboard
deleted file mode 100644
index 56124271b606..000000000000
--- a/ios/iosremote/ar.lproj/iPad_autosize.storyboard
+++ /dev/null
@@ -1,648 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="4514" systemVersion="13B42" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" initialViewController="XiK-Ye-iB8">
- <dependencies>
- <deployment defaultVersion="1280" identifier="iOS"/>
- <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3747"/>
- </dependencies>
- <scenes>
- <!--About View Controller-->
- <scene sceneID="QsO-mW-ttp">
- <objects>
- <viewController id="FKS-tU-MC6" customClass="AboutViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="FOc-OL-5wQ">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <webView contentMode="scaleToFill" id="07n-0U-kuj">
- <rect key="frame" x="0.0" y="0.0" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </webView>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <navigationItem key="navigationItem" id="diX-6k-klE"/>
- <connections>
- <outlet property="aboutWebView" destination="07n-0U-kuj" id="nNC-oi-dgh"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="SyX-dh-Yof" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="254" y="-2200"/>
- </scene>
- <!--Server List View Controller ipad - Connect-->
- <scene sceneID="ydU-fu-qHI">
- <objects>
- <viewController id="5QV-E7-KNT" customClass="ServerListViewController_ipad" sceneMemberID="viewController">
- <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="grouped" showsSelectionImmediatelyOnTouchBegin="NO" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="0vt-Sx-o55">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
- <prototypes>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="server_item_cell" editingAccessoryType="disclosureIndicator" textLabel="h0a-Zq-2vY" detailTextLabel="Fsp-wI-AAW" style="IBUITableViewCellStyleValue1" id="HZp-VJ-Pgz">
- <rect key="frame" x="0.0" y="55" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="HZp-VJ-Pgz" id="5rS-B1-6zF">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="h0a-Zq-2vY">
- <rect key="frame" x="15" y="12" width="32" height="20"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <color key="highlightedColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </label>
- <label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Fsp-wI-AAW">
- <rect key="frame" x="481" y="12" width="44" height="20"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <color key="textColor" red="0.0" green="0.47843137250000001" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- <color key="highlightedColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </label>
- </subviews>
- </tableViewCellContentView>
- </tableViewCell>
- </prototypes>
- <connections>
- <outlet property="dataSource" destination="5QV-E7-KNT" id="Vhs-k2-fLj"/>
- <outlet property="delegate" destination="5QV-E7-KNT" id="L4W-DD-RiQ"/>
- </connections>
- </tableView>
- <navigationItem key="navigationItem" title="Connect" id="wYh-MF-Ao6">
- <barButtonItem key="leftBarButtonItem" image="add.png" id="pU6-XF-laS">
- <connections>
- <segue destination="65c-5D-pB7" kind="push" identifier="create_new_server" id="ORn-0W-dHd"/>
- </connections>
- </barButtonItem>
- <barButtonItem key="rightBarButtonItem" image="more_icon.png" id="AN0-81-gat">
- <connections>
- <action selector="onClickMenuButton:" destination="5QV-E7-KNT" id="MvY-cd-0md"/>
- </connections>
- </barButtonItem>
- </navigationItem>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- <connections>
- <outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/>
- <segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/>
- <segue destination="Grm-Od-s6s" kind="push" identifier="howtoSegue" id="hRz-3h-McA"/>
- <segue destination="M9Q-tM-7CQ" kind="push" identifier="SlideShowPreview" id="jsD-4W-bFm"/>
- <segue destination="FKS-tU-MC6" kind="push" identifier="aboutSegue" id="4eY-jZ-bpg"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="KBf-aZ-Hhk" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="254" y="-1374"/>
- </scene>
- <!--Pin Validation View Controller-->
- <scene sceneID="wDk-2x-G9p">
- <objects>
- <viewController id="m26-i1-eiL" customClass="PinValidationViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="hAq-tq-hru">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="3128" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Bp1-Dv-nt4">
- <rect key="frame" x="164" y="66" width="223" height="118"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" name="HelveticaNeue-UltraLight" family="Helvetica Neue" pointSize="100"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <nil key="highlightedColor"/>
- </label>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Please enter the pin code above in Impress - Slide Show - Impress Remote" textAlignment="center" lineBreakMode="wordWrap" numberOfLines="4" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="9zr-53-YfP">
- <rect key="frame" x="115" y="442" width="320" height="94"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" heightSizable="YES"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="15"/>
- <color key="textColor" name="alternateSelectedControlColor" catalog="System" colorSpace="catalog"/>
- <nil key="highlightedColor"/>
- </label>
- <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" image="WTPairingScreenshot.png" id="iaB-Jl-mwG">
- <rect key="frame" x="80" y="192" width="381" height="242"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES" flexibleMaxY="YES"/>
- </imageView>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <navigationItem key="navigationItem" id="V5z-WP-qrM"/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- <connections>
- <outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/>
- <segue destination="M9Q-tM-7CQ" kind="push" identifier="pinValidated" id="nkI-m0-Ps8"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="gh4-1U-6Dm" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="1004" y="-510"/>
- </scene>
- <!--New Server View Controller - New Server-->
- <scene sceneID="RcY-Im-ohw">
- <objects>
- <tableViewController id="65c-5D-pB7" customClass="NewServerViewController" sceneMemberID="viewController">
- <tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="qow-Yc-8dL">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
- <sections>
- <tableViewSection footerTitle="" id="CVG-Eq-rLd">
- <cells>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="b8A-jh-k26" customClass="EditableTableViewCell">
- <rect key="frame" x="0.0" y="35" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="b8A-jh-k26" id="1PC-Os-0pl">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- </tableViewCellContentView>
- </tableViewCell>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="jrI-wU-4NT" customClass="EditableTableViewCell">
- <rect key="frame" x="0.0" y="79" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="jrI-wU-4NT" id="Ty8-vX-PiF">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- </tableViewCellContentView>
- </tableViewCell>
- </cells>
- </tableViewSection>
- </sections>
- <connections>
- <outlet property="dataSource" destination="65c-5D-pB7" id="Omw-kB-sR2"/>
- <outlet property="delegate" destination="65c-5D-pB7" id="eNx-uc-YkW"/>
- </connections>
- </tableView>
- <navigationItem key="navigationItem" title="New Server" id="oAP-jt-6Z9">
- <barButtonItem key="rightBarButtonItem" systemItem="save" id="PoE-MY-hSB">
- <connections>
- <action selector="save:" destination="65c-5D-pB7" id="Ww6-Jy-5eG"/>
- </connections>
- </barButtonItem>
- </navigationItem>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- </tableViewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="1024" y="-1831"/>
- </scene>
- <!--Slide Show Preview View Controller ipad-->
- <scene sceneID="5gD-BL-PRq">
- <objects>
- <viewController storyboardIdentifier="slideShowPreview" id="M9Q-tM-7CQ" customClass="SlideShowPreviewViewController_ipad" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="8vR-9Z-5Vk">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <view contentMode="scaleToFill" id="iAg-GA-qtj">
- <rect key="frame" x="0.0" y="20" width="540" height="234"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Presentation Title" textAlignment="center" lineBreakMode="wordWrap" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="sXT-OZ-7y3">
- <rect key="frame" x="20" y="20" width="500" height="194"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" type="system" pointSize="24"/>
- <color key="textColor" red="0.39589986310000003" green="0.87052349449999999" blue="0.78039215689999997" alpha="1" colorSpace="calibratedRGB"/>
- <nil key="highlightedColor"/>
- </label>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="0k4-5k-dza">
- <rect key="frame" x="182" y="363" width="177" height="44"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <state key="normal" title="Start Presentation" backgroundImage="buttonBackground.png">
- <color key="titleColor" red="1" green="0.50196078430000002" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="startPresentationAction:" destination="M9Q-tM-7CQ" eventType="touchUpInside" id="ZcD-xo-Cvg"/>
- </connections>
- </button>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="02F-Tj-9xO" userLabel="slideShowPreview">
- <rect key="frame" x="201" y="437" width="138" height="45"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" name="Helvetica" family="Helvetica" pointSize="17"/>
- <state key="normal" title="Settings" backgroundImage="buttonBackground.png">
- <color key="titleColor" red="1" green="0.50196078430000002" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="startPrefSettings:" destination="M9Q-tM-7CQ" eventType="touchUpInside" id="oUK-cn-Bx7"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- <navigationItem key="navigationItem" id="CJJ-Ti-ahy"/>
- <connections>
- <outlet property="prefButton" destination="02F-Tj-9xO" id="vc4-VF-px0"/>
- <outlet property="startButton" destination="0k4-5k-dza" id="sMZ-jn-IzZ"/>
- <outlet property="titleLabel" destination="sXT-OZ-7y3" id="U2U-p1-it2"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="gp3-Xs-lfE" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="1754" y="-1374"/>
- </scene>
- <!--Base Presentation View Controller-->
- <scene sceneID="5zi-ge-3SF">
- <objects>
- <viewController storyboardIdentifier="basePresentation" id="TYh-Hw-m1Q" customClass="BasePresentationViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="qHB-hR-vFc">
- <rect key="frame" x="0.0" y="0.0" width="768" height="1024"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <subviews>
- <view contentMode="scaleToFill" id="KCA-UU-Lu1" userLabel="Preview">
- <rect key="frame" x="0.0" y="0.0" width="768" height="459"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
- <subviews>
- <imageView userInteractionEnabled="NO" tag="19" contentMode="scaleToFill" verticalCompressionResistancePriority="1000" image="Default.png" id="x7C-rs-s4K">
- <rect key="frame" x="7" y="0.0" width="755" height="459"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </imageView>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" alpha="0.80000001192092896" contentMode="left" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="wWm-KR-C5L">
- <rect key="frame" x="685" y="427" width="77" height="32"/>
- <autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES" heightSizable="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <rect key="contentStretch" x="1.3877787807814457e-17" y="0.0" width="1" height="1"/>
- <fontDescription key="fontDescription" type="system" pointSize="25"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- <view hidden="YES" contentMode="scaleToFill" id="2SJ-3f-E3k" userLabel="pointer">
- <rect key="frame" x="191" y="277" width="8" height="7"/>
- <color key="backgroundColor" red="1" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- <button opaque="NO" alpha="0.69999999999999996" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="I1u-1Z-GsZ">
- <rect key="frame" x="7" y="0.0" width="84" height="459"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" heightSizable="YES"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <state key="normal" backgroundImage="previousButton_normal.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted" backgroundImage="previousButton_pressed.png">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="previousSlideAction:" destination="TYh-Hw-m1Q" eventType="touchUpInside" id="qvs-3Y-Ifz"/>
- </connections>
- </button>
- <button opaque="NO" alpha="0.69999999999999996" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="bfp-PJ-NrP">
- <rect key="frame" x="678" y="0.0" width="84" height="459"/>
- <autoresizingMask key="autoresizingMask" flexibleMinX="YES" heightSizable="YES"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <state key="normal" backgroundImage="nextButton_normal.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted" backgroundImage="nextButton_pressed.png">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="nextSlideAction:" destination="TYh-Hw-m1Q" eventType="touchUpInside" id="7OP-xX-gva"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- <view clipsSubviews="YES" contentMode="scaleToFill" verticalCompressionResistancePriority="547" restorationIdentifier="" id="Pk1-fD-KAi" userLabel="NotesView">
- <rect key="frame" x="-13" y="595" width="794" height="323"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text=" Lecturer's Notes" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="5Yn-0z-Cjz">
- <rect key="frame" x="20" y="0.0" width="754" height="31"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" red="1" green="0.66274509800000003" blue="0.074509803920000006" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Bold" family="Helvetica" pointSize="17"/>
- <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="calibratedRGB"/>
- <nil key="highlightedColor"/>
- </label>
- <webView tag="4" contentMode="scaleToFill" verticalCompressionResistancePriority="1" id="pAh-4g-JCn" userLabel="Notes">
- <rect key="frame" x="20" y="29" width="754" height="294"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <rect key="contentStretch" x="0.0" y="1" width="1" height="1"/>
- </webView>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- <tableView contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="Iok-mu-c0T" customClass="HorizontalTableView">
- <rect key="frame" x="-26" y="236" width="0.0" height="0.0"/>
- <autoresizingMask key="autoresizingMask"/>
- <color key="backgroundColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
- <connections>
- <outlet property="dataSource" destination="TYh-Hw-m1Q" id="42R-0X-OyE"/>
- <outlet property="delegate" destination="TYh-Hw-m1Q" id="mMV-1F-8OM"/>
- </connections>
- </tableView>
- <view contentMode="scaleToFill" restorationIdentifier="" id="xYX-bt-wuI" userLabel="Bottom">
- <rect key="frame" x="0.0" y="926" width="768" height="98"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
- <subviews>
- <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" directionalLockEnabled="YES" bounces="NO" alwaysBounceHorizontal="YES" pagingEnabled="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" id="DUv-gH-oAo">
- <rect key="frame" x="0.0" y="-1" width="698" height="102"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" heightSizable="YES"/>
- <subviews>
- <view contentMode="scaleToFill" id="JaD-yW-hWg" userLabel="View - StopWatch">
- <rect key="frame" x="20" y="20" width="595" height="62"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Stopwatch" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="7U8-rE-xf7">
- <rect key="frame" x="0.0" y="4" width="131" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" type="system" pointSize="17"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <nil key="highlightedColor"/>
- </label>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="1" contentMode="left" text="00:00:00" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="dtc-vP-agf">
- <rect key="frame" x="130" y="4" width="234" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.078431372550000003" green="0.75686274509999996" blue="0.56078431370000004" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="41"/>
- <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- <button opaque="NO" tag="2" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="8iO-H3-CJ7">
- <rect key="frame" x="361" y="4" width="116" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Start" image="timer_start_btn_dark.png">
- <color key="titleColor" red="0.23529411764705882" green="0.25098039215686274" blue="0.27058823529411763" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchStart:" destination="VQa-vM-8pF" eventType="touchUpInside" id="om8-GY-NhP"/>
- </connections>
- </button>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="MKb-4h-13P">
- <rect key="frame" x="478" y="4" width="117" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Reset" image="timer_clear_btn_dark.png">
- <color key="titleColor" red="0.23529411759999999" green="0.25098039220000001" blue="0.27058823529999998" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchClear:" destination="VQa-vM-8pF" eventType="touchUpInside" id="aD5-Wp-WRC"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- <view clipsSubviews="YES" contentMode="scaleToFill" id="Oe1-Vs-cwU" userLabel="View - Timer">
- <rect key="frame" x="632" y="24" width="580" height="58"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Timer" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="O25-Ru-tve">
- <rect key="frame" x="0.0" y="0.0" width="94" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" type="system" pointSize="17"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <nil key="highlightedColor"/>
- </label>
- <button opaque="NO" tag="2" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="0U5-wJ-dhV">
- <rect key="frame" x="351" y="0.0" width="116" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Start" image="timer_start_btn_dark.png">
- <color key="titleColor" red="0.23529411759999999" green="0.25098039220000001" blue="0.27058823529999998" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchStart:" destination="VQa-vM-8pF" eventType="touchUpInside" id="1Ul-4y-uIK"/>
- </connections>
- </button>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="Tjm-Rm-xDV">
- <rect key="frame" x="468" y="0.0" width="117" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Reset" image="timer_clear_btn_dark.png">
- <color key="titleColor" red="0.23529411759999999" green="0.25098039220000001" blue="0.27058823529999998" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchClear:" destination="VQa-vM-8pF" eventType="touchUpInside" id="jVu-4b-5oo"/>
- </connections>
- </button>
- <view contentMode="scaleToFill" id="gZg-Ne-hhO">
- <rect key="frame" x="92" y="0.0" width="259" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="1" contentMode="left" text="00:00:00" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Mkj-qa-1Pr">
- <rect key="frame" x="20" y="0.0" width="169" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="41"/>
- <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="cb9-ME-sEN">
- <rect key="frame" x="205" y="5" width="42" height="44"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" red="0.39589986313868614" green="0.87052349452554745" blue="0.78039215689999997" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <state key="normal" image="timer_settime_btn.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- </button>
- </subviews>
- <color key="backgroundColor" red="0.21176470589999999" green="0.81568627449999997" blue="0.78039215689999997" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- </subviews>
- </scrollView>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="cOI-Hc-1QU">
- <rect key="frame" x="722" y="23" width="64" height="53"/>
- <autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="14" maxY="0.0"/>
- <state key="normal" image="more_ipad.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="popOverUp:" destination="TYh-Hw-m1Q" eventType="touchUpInside" id="Urz-2a-EqX"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" red="0.66274509800000003" green="0.71764705880000002" blue="0.74509803919999995" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- </subviews>
- <color key="backgroundColor" red="0.90196079019999997" green="0.90196079019999997" blue="0.90196079019999997" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- <toolbarItems/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- <connections>
- <outlet property="NoteWebView" destination="pAh-4g-JCn" id="h2a-iy-ahp"/>
- <outlet property="NotesView" destination="Pk1-fD-KAi" id="2ZD-si-fls"/>
- <outlet property="clearButton" destination="MKb-4h-13P" id="7Xz-n6-sre"/>
- <outlet property="currentSlideImageView" destination="x7C-rs-s4K" id="Qtf-99-j0C"/>
- <outlet property="gearButton" destination="cOI-Hc-1QU" id="rH8-CG-Jdb"/>
- <outlet property="horizontalTableView" destination="Iok-mu-c0T" id="SJT-pa-4Hb"/>
- <outlet property="movingPointer" destination="2SJ-3f-E3k" id="mxV-zz-hjx"/>
- <outlet property="nextButton" destination="bfp-PJ-NrP" id="1Uf-1g-iQl"/>
- <outlet property="previousButton" destination="I1u-1Z-GsZ" id="Vjj-em-GQj"/>
- <outlet property="slideNumber" destination="wWm-KR-C5L" id="Vb0-Wv-6gb"/>
- <outlet property="startButton" destination="8iO-H3-CJ7" id="ym1-Hg-BPE"/>
- <outlet property="stopWatchTimerScrollView" destination="DUv-gH-oAo" id="wSU-Wu-HS7"/>
- <outlet property="stopWatchView" destination="JaD-yW-hWg" id="5oh-6i-Le2"/>
- <outlet property="timeLabel" destination="dtc-vP-agf" id="WsH-Gm-dBN"/>
- <outlet property="timerClearButton" destination="Tjm-Rm-xDV" id="wm1-L9-PGC"/>
- <outlet property="timerSetTimeButton" destination="cb9-ME-sEN" id="woY-pX-ksm"/>
- <outlet property="timerStartButton" destination="0U5-wJ-dhV" id="JOn-en-IIX"/>
- <outlet property="timerTimeLabel" destination="Mkj-qa-1Pr" id="wsM-yM-aad"/>
- <outlet property="timerView" destination="Oe1-Vs-cwU" id="BEK-5M-xtd"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="e0y-Q9-Urg" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-611" y="487"/>
- </scene>
- <!--Main Split View Controller-->
- <scene sceneID="myh-dM-403">
- <objects>
- <splitViewController id="XiK-Ye-iB8" customClass="MainSplitViewController" sceneMemberID="viewController">
- <toolbarItems/>
- <connections>
- <segue destination="TYh-Hw-m1Q" kind="relationship" relationship="detailViewController" id="qi1-27-bFk"/>
- <segue destination="KDH-tS-eoR" kind="modal" identifier="connectionModalUp" modalPresentationStyle="formSheet" modalTransitionStyle="flipHorizontal" id="pYZ-nF-jdE"/>
- <segue destination="VQa-vM-8pF" kind="relationship" relationship="masterViewController" id="uc4-BV-mye"/>
- </connections>
- </splitViewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="TtW-hD-5Ub" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-1587" y="-25"/>
- </scene>
- <!--Slide Show Swipe In List ipad-->
- <scene sceneID="Abu-7b-l1S">
- <objects>
- <tableViewController clearsSelectionOnViewWillAppear="NO" id="VQa-vM-8pF" customClass="SlideShowSwipeInList_ipad" sceneMemberID="viewController">
- <tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="170" sectionHeaderHeight="22" sectionFooterHeight="22" id="U9c-sP-NVQ">
- <rect key="frame" x="0.0" y="0.0" width="320" height="852"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" cocoaTouchSystemColor="scrollViewTexturedBackgroundColor"/>
- <prototypes>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="slide" rowHeight="178" id="c4j-oH-LnN">
- <rect key="frame" x="0.0" y="22" width="320" height="178"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="c4j-oH-LnN" id="tSG-SJ-J7C">
- <rect key="frame" x="0.0" y="0.0" width="320" height="177"/>
- <autoresizingMask key="autoresizingMask"/>
- <subviews>
- <imageView userInteractionEnabled="NO" tag="1" contentMode="scaleToFill" image="Default.png" id="dn1-99-Dde">
- <rect key="frame" x="44" y="7" width="233" height="163"/>
- </imageView>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="2" contentMode="left" text="1" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="b5V-aR-n9S">
- <rect key="frame" x="245" y="149" width="32" height="21"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" white="0.80146555659999996" alpha="1" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" type="system" pointSize="17"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- </subviews>
- </tableViewCellContentView>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </tableViewCell>
- </prototypes>
- <connections>
- <outlet property="dataSource" destination="VQa-vM-8pF" id="Txq-JQ-qey"/>
- <outlet property="delegate" destination="VQa-vM-8pF" id="ae6-wj-kAw"/>
- </connections>
- </tableView>
- <navigationItem key="navigationItem" id="tG3-aQ-qyu"/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- </tableViewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="EJg-kN-O5N" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-589" y="-500"/>
- </scene>
- <!--Auto Dismiss Keyboard Navigation View Controller-->
- <scene sceneID="tvQ-2n-hpX">
- <objects>
- <navigationController storyboardIdentifier="serverList" id="KDH-tS-eoR" customClass="autoDismissKeyboardNavigationViewController" sceneMemberID="viewController">
- <toolbarItems/>
- <simulatedNavigationBarMetrics key="simulatedTopBarMetrics" translucent="NO" prompted="NO"/>
- <navigationBar key="navigationBar" contentMode="scaleToFill" translucent="NO" id="9T5-Qi-Tr9">
- <rect key="frame" x="0.0" y="0.0" width="768" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- </navigationBar>
- <nil name="viewControllers"/>
- <connections>
- <segue destination="5QV-E7-KNT" kind="relationship" relationship="rootViewController" id="euZ-Wr-AwZ"/>
- </connections>
- </navigationController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="MVE-66-SWg" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-636" y="-1374"/>
- </scene>
- <!--Walk Through Container View Controller-->
- <scene sceneID="wTs-Zb-aUa">
- <objects>
- <viewController id="Grm-Od-s6s" customClass="WalkThroughContainerViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="LWc-xb-hIj">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </view>
- <navigationItem key="navigationItem" id="2hX-NQ-pfJ"/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="EWl-Cj-qdi" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="246" y="-235"/>
- </scene>
- </scenes>
- <resources>
- <image name="Default.png" width="320" height="480"/>
- <image name="WTPairingScreenshot.png" width="474" height="312"/>
- <image name="add.png" width="30" height="30"/>
- <image name="buttonBackground.png" width="45" height="45"/>
- <image name="more_icon.png" width="30" height="30"/>
- <image name="more_ipad.png" width="60" height="60"/>
- <image name="nextButton_normal.png" width="42" height="230"/>
- <image name="nextButton_pressed.png" width="42" height="230"/>
- <image name="previousButton_normal.png" width="42" height="230"/>
- <image name="previousButton_pressed.png" width="42" height="230"/>
- <image name="timer_clear_btn_dark.png" width="60" height="60"/>
- <image name="timer_settime_btn.png" width="60" height="60"/>
- <image name="timer_start_btn_dark.png" width="60" height="60"/>
- </resources>
- <color key="tintColor" red="1" green="0.50196078430000002" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- <simulatedMetricsContainer key="defaultSimulatedMetrics">
- <simulatedStatusBarMetrics key="statusBar"/>
- <simulatedOrientationMetrics key="orientation"/>
- <simulatedScreenMetrics key="destination"/>
- </simulatedMetricsContainer>
- <inferredMetricsTieBreakers>
- <segue reference="jsD-4W-bFm"/>
- </inferredMetricsTieBreakers>
-</document> \ No newline at end of file
diff --git a/ios/iosremote/ca.lproj/Localizable.strings b/ios/iosremote/ca.lproj/Localizable.strings
deleted file mode 100644
index 6814a811ac44..000000000000
--- a/ios/iosremote/ca.lproj/Localizable.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/ca.lproj/iPad_autosize.storyboard b/ios/iosremote/ca.lproj/iPad_autosize.storyboard
deleted file mode 100644
index 56124271b606..000000000000
--- a/ios/iosremote/ca.lproj/iPad_autosize.storyboard
+++ /dev/null
@@ -1,648 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="4514" systemVersion="13B42" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" initialViewController="XiK-Ye-iB8">
- <dependencies>
- <deployment defaultVersion="1280" identifier="iOS"/>
- <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3747"/>
- </dependencies>
- <scenes>
- <!--About View Controller-->
- <scene sceneID="QsO-mW-ttp">
- <objects>
- <viewController id="FKS-tU-MC6" customClass="AboutViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="FOc-OL-5wQ">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <webView contentMode="scaleToFill" id="07n-0U-kuj">
- <rect key="frame" x="0.0" y="0.0" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </webView>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <navigationItem key="navigationItem" id="diX-6k-klE"/>
- <connections>
- <outlet property="aboutWebView" destination="07n-0U-kuj" id="nNC-oi-dgh"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="SyX-dh-Yof" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="254" y="-2200"/>
- </scene>
- <!--Server List View Controller ipad - Connect-->
- <scene sceneID="ydU-fu-qHI">
- <objects>
- <viewController id="5QV-E7-KNT" customClass="ServerListViewController_ipad" sceneMemberID="viewController">
- <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="grouped" showsSelectionImmediatelyOnTouchBegin="NO" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="0vt-Sx-o55">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
- <prototypes>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="server_item_cell" editingAccessoryType="disclosureIndicator" textLabel="h0a-Zq-2vY" detailTextLabel="Fsp-wI-AAW" style="IBUITableViewCellStyleValue1" id="HZp-VJ-Pgz">
- <rect key="frame" x="0.0" y="55" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="HZp-VJ-Pgz" id="5rS-B1-6zF">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="h0a-Zq-2vY">
- <rect key="frame" x="15" y="12" width="32" height="20"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <color key="highlightedColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </label>
- <label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Fsp-wI-AAW">
- <rect key="frame" x="481" y="12" width="44" height="20"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <color key="textColor" red="0.0" green="0.47843137250000001" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- <color key="highlightedColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </label>
- </subviews>
- </tableViewCellContentView>
- </tableViewCell>
- </prototypes>
- <connections>
- <outlet property="dataSource" destination="5QV-E7-KNT" id="Vhs-k2-fLj"/>
- <outlet property="delegate" destination="5QV-E7-KNT" id="L4W-DD-RiQ"/>
- </connections>
- </tableView>
- <navigationItem key="navigationItem" title="Connect" id="wYh-MF-Ao6">
- <barButtonItem key="leftBarButtonItem" image="add.png" id="pU6-XF-laS">
- <connections>
- <segue destination="65c-5D-pB7" kind="push" identifier="create_new_server" id="ORn-0W-dHd"/>
- </connections>
- </barButtonItem>
- <barButtonItem key="rightBarButtonItem" image="more_icon.png" id="AN0-81-gat">
- <connections>
- <action selector="onClickMenuButton:" destination="5QV-E7-KNT" id="MvY-cd-0md"/>
- </connections>
- </barButtonItem>
- </navigationItem>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- <connections>
- <outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/>
- <segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/>
- <segue destination="Grm-Od-s6s" kind="push" identifier="howtoSegue" id="hRz-3h-McA"/>
- <segue destination="M9Q-tM-7CQ" kind="push" identifier="SlideShowPreview" id="jsD-4W-bFm"/>
- <segue destination="FKS-tU-MC6" kind="push" identifier="aboutSegue" id="4eY-jZ-bpg"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="KBf-aZ-Hhk" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="254" y="-1374"/>
- </scene>
- <!--Pin Validation View Controller-->
- <scene sceneID="wDk-2x-G9p">
- <objects>
- <viewController id="m26-i1-eiL" customClass="PinValidationViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="hAq-tq-hru">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="3128" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Bp1-Dv-nt4">
- <rect key="frame" x="164" y="66" width="223" height="118"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" name="HelveticaNeue-UltraLight" family="Helvetica Neue" pointSize="100"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <nil key="highlightedColor"/>
- </label>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Please enter the pin code above in Impress - Slide Show - Impress Remote" textAlignment="center" lineBreakMode="wordWrap" numberOfLines="4" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="9zr-53-YfP">
- <rect key="frame" x="115" y="442" width="320" height="94"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" heightSizable="YES"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="15"/>
- <color key="textColor" name="alternateSelectedControlColor" catalog="System" colorSpace="catalog"/>
- <nil key="highlightedColor"/>
- </label>
- <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" image="WTPairingScreenshot.png" id="iaB-Jl-mwG">
- <rect key="frame" x="80" y="192" width="381" height="242"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES" flexibleMaxY="YES"/>
- </imageView>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <navigationItem key="navigationItem" id="V5z-WP-qrM"/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- <connections>
- <outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/>
- <segue destination="M9Q-tM-7CQ" kind="push" identifier="pinValidated" id="nkI-m0-Ps8"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="gh4-1U-6Dm" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="1004" y="-510"/>
- </scene>
- <!--New Server View Controller - New Server-->
- <scene sceneID="RcY-Im-ohw">
- <objects>
- <tableViewController id="65c-5D-pB7" customClass="NewServerViewController" sceneMemberID="viewController">
- <tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="qow-Yc-8dL">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
- <sections>
- <tableViewSection footerTitle="" id="CVG-Eq-rLd">
- <cells>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="b8A-jh-k26" customClass="EditableTableViewCell">
- <rect key="frame" x="0.0" y="35" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="b8A-jh-k26" id="1PC-Os-0pl">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- </tableViewCellContentView>
- </tableViewCell>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="jrI-wU-4NT" customClass="EditableTableViewCell">
- <rect key="frame" x="0.0" y="79" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="jrI-wU-4NT" id="Ty8-vX-PiF">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- </tableViewCellContentView>
- </tableViewCell>
- </cells>
- </tableViewSection>
- </sections>
- <connections>
- <outlet property="dataSource" destination="65c-5D-pB7" id="Omw-kB-sR2"/>
- <outlet property="delegate" destination="65c-5D-pB7" id="eNx-uc-YkW"/>
- </connections>
- </tableView>
- <navigationItem key="navigationItem" title="New Server" id="oAP-jt-6Z9">
- <barButtonItem key="rightBarButtonItem" systemItem="save" id="PoE-MY-hSB">
- <connections>
- <action selector="save:" destination="65c-5D-pB7" id="Ww6-Jy-5eG"/>
- </connections>
- </barButtonItem>
- </navigationItem>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- </tableViewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="1024" y="-1831"/>
- </scene>
- <!--Slide Show Preview View Controller ipad-->
- <scene sceneID="5gD-BL-PRq">
- <objects>
- <viewController storyboardIdentifier="slideShowPreview" id="M9Q-tM-7CQ" customClass="SlideShowPreviewViewController_ipad" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="8vR-9Z-5Vk">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <view contentMode="scaleToFill" id="iAg-GA-qtj">
- <rect key="frame" x="0.0" y="20" width="540" height="234"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Presentation Title" textAlignment="center" lineBreakMode="wordWrap" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="sXT-OZ-7y3">
- <rect key="frame" x="20" y="20" width="500" height="194"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" type="system" pointSize="24"/>
- <color key="textColor" red="0.39589986310000003" green="0.87052349449999999" blue="0.78039215689999997" alpha="1" colorSpace="calibratedRGB"/>
- <nil key="highlightedColor"/>
- </label>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="0k4-5k-dza">
- <rect key="frame" x="182" y="363" width="177" height="44"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <state key="normal" title="Start Presentation" backgroundImage="buttonBackground.png">
- <color key="titleColor" red="1" green="0.50196078430000002" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="startPresentationAction:" destination="M9Q-tM-7CQ" eventType="touchUpInside" id="ZcD-xo-Cvg"/>
- </connections>
- </button>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="02F-Tj-9xO" userLabel="slideShowPreview">
- <rect key="frame" x="201" y="437" width="138" height="45"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" name="Helvetica" family="Helvetica" pointSize="17"/>
- <state key="normal" title="Settings" backgroundImage="buttonBackground.png">
- <color key="titleColor" red="1" green="0.50196078430000002" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="startPrefSettings:" destination="M9Q-tM-7CQ" eventType="touchUpInside" id="oUK-cn-Bx7"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- <navigationItem key="navigationItem" id="CJJ-Ti-ahy"/>
- <connections>
- <outlet property="prefButton" destination="02F-Tj-9xO" id="vc4-VF-px0"/>
- <outlet property="startButton" destination="0k4-5k-dza" id="sMZ-jn-IzZ"/>
- <outlet property="titleLabel" destination="sXT-OZ-7y3" id="U2U-p1-it2"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="gp3-Xs-lfE" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="1754" y="-1374"/>
- </scene>
- <!--Base Presentation View Controller-->
- <scene sceneID="5zi-ge-3SF">
- <objects>
- <viewController storyboardIdentifier="basePresentation" id="TYh-Hw-m1Q" customClass="BasePresentationViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="qHB-hR-vFc">
- <rect key="frame" x="0.0" y="0.0" width="768" height="1024"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <subviews>
- <view contentMode="scaleToFill" id="KCA-UU-Lu1" userLabel="Preview">
- <rect key="frame" x="0.0" y="0.0" width="768" height="459"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
- <subviews>
- <imageView userInteractionEnabled="NO" tag="19" contentMode="scaleToFill" verticalCompressionResistancePriority="1000" image="Default.png" id="x7C-rs-s4K">
- <rect key="frame" x="7" y="0.0" width="755" height="459"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </imageView>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" alpha="0.80000001192092896" contentMode="left" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="wWm-KR-C5L">
- <rect key="frame" x="685" y="427" width="77" height="32"/>
- <autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES" heightSizable="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <rect key="contentStretch" x="1.3877787807814457e-17" y="0.0" width="1" height="1"/>
- <fontDescription key="fontDescription" type="system" pointSize="25"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- <view hidden="YES" contentMode="scaleToFill" id="2SJ-3f-E3k" userLabel="pointer">
- <rect key="frame" x="191" y="277" width="8" height="7"/>
- <color key="backgroundColor" red="1" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- <button opaque="NO" alpha="0.69999999999999996" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="I1u-1Z-GsZ">
- <rect key="frame" x="7" y="0.0" width="84" height="459"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" heightSizable="YES"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <state key="normal" backgroundImage="previousButton_normal.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted" backgroundImage="previousButton_pressed.png">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="previousSlideAction:" destination="TYh-Hw-m1Q" eventType="touchUpInside" id="qvs-3Y-Ifz"/>
- </connections>
- </button>
- <button opaque="NO" alpha="0.69999999999999996" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="bfp-PJ-NrP">
- <rect key="frame" x="678" y="0.0" width="84" height="459"/>
- <autoresizingMask key="autoresizingMask" flexibleMinX="YES" heightSizable="YES"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <state key="normal" backgroundImage="nextButton_normal.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted" backgroundImage="nextButton_pressed.png">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="nextSlideAction:" destination="TYh-Hw-m1Q" eventType="touchUpInside" id="7OP-xX-gva"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- <view clipsSubviews="YES" contentMode="scaleToFill" verticalCompressionResistancePriority="547" restorationIdentifier="" id="Pk1-fD-KAi" userLabel="NotesView">
- <rect key="frame" x="-13" y="595" width="794" height="323"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text=" Lecturer's Notes" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="5Yn-0z-Cjz">
- <rect key="frame" x="20" y="0.0" width="754" height="31"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" red="1" green="0.66274509800000003" blue="0.074509803920000006" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Bold" family="Helvetica" pointSize="17"/>
- <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="calibratedRGB"/>
- <nil key="highlightedColor"/>
- </label>
- <webView tag="4" contentMode="scaleToFill" verticalCompressionResistancePriority="1" id="pAh-4g-JCn" userLabel="Notes">
- <rect key="frame" x="20" y="29" width="754" height="294"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <rect key="contentStretch" x="0.0" y="1" width="1" height="1"/>
- </webView>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- <tableView contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="Iok-mu-c0T" customClass="HorizontalTableView">
- <rect key="frame" x="-26" y="236" width="0.0" height="0.0"/>
- <autoresizingMask key="autoresizingMask"/>
- <color key="backgroundColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
- <connections>
- <outlet property="dataSource" destination="TYh-Hw-m1Q" id="42R-0X-OyE"/>
- <outlet property="delegate" destination="TYh-Hw-m1Q" id="mMV-1F-8OM"/>
- </connections>
- </tableView>
- <view contentMode="scaleToFill" restorationIdentifier="" id="xYX-bt-wuI" userLabel="Bottom">
- <rect key="frame" x="0.0" y="926" width="768" height="98"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
- <subviews>
- <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" directionalLockEnabled="YES" bounces="NO" alwaysBounceHorizontal="YES" pagingEnabled="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" id="DUv-gH-oAo">
- <rect key="frame" x="0.0" y="-1" width="698" height="102"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" heightSizable="YES"/>
- <subviews>
- <view contentMode="scaleToFill" id="JaD-yW-hWg" userLabel="View - StopWatch">
- <rect key="frame" x="20" y="20" width="595" height="62"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Stopwatch" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="7U8-rE-xf7">
- <rect key="frame" x="0.0" y="4" width="131" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" type="system" pointSize="17"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <nil key="highlightedColor"/>
- </label>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="1" contentMode="left" text="00:00:00" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="dtc-vP-agf">
- <rect key="frame" x="130" y="4" width="234" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.078431372550000003" green="0.75686274509999996" blue="0.56078431370000004" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="41"/>
- <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- <button opaque="NO" tag="2" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="8iO-H3-CJ7">
- <rect key="frame" x="361" y="4" width="116" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Start" image="timer_start_btn_dark.png">
- <color key="titleColor" red="0.23529411764705882" green="0.25098039215686274" blue="0.27058823529411763" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchStart:" destination="VQa-vM-8pF" eventType="touchUpInside" id="om8-GY-NhP"/>
- </connections>
- </button>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="MKb-4h-13P">
- <rect key="frame" x="478" y="4" width="117" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Reset" image="timer_clear_btn_dark.png">
- <color key="titleColor" red="0.23529411759999999" green="0.25098039220000001" blue="0.27058823529999998" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchClear:" destination="VQa-vM-8pF" eventType="touchUpInside" id="aD5-Wp-WRC"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- <view clipsSubviews="YES" contentMode="scaleToFill" id="Oe1-Vs-cwU" userLabel="View - Timer">
- <rect key="frame" x="632" y="24" width="580" height="58"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Timer" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="O25-Ru-tve">
- <rect key="frame" x="0.0" y="0.0" width="94" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" type="system" pointSize="17"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <nil key="highlightedColor"/>
- </label>
- <button opaque="NO" tag="2" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="0U5-wJ-dhV">
- <rect key="frame" x="351" y="0.0" width="116" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Start" image="timer_start_btn_dark.png">
- <color key="titleColor" red="0.23529411759999999" green="0.25098039220000001" blue="0.27058823529999998" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchStart:" destination="VQa-vM-8pF" eventType="touchUpInside" id="1Ul-4y-uIK"/>
- </connections>
- </button>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="Tjm-Rm-xDV">
- <rect key="frame" x="468" y="0.0" width="117" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Reset" image="timer_clear_btn_dark.png">
- <color key="titleColor" red="0.23529411759999999" green="0.25098039220000001" blue="0.27058823529999998" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchClear:" destination="VQa-vM-8pF" eventType="touchUpInside" id="jVu-4b-5oo"/>
- </connections>
- </button>
- <view contentMode="scaleToFill" id="gZg-Ne-hhO">
- <rect key="frame" x="92" y="0.0" width="259" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="1" contentMode="left" text="00:00:00" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Mkj-qa-1Pr">
- <rect key="frame" x="20" y="0.0" width="169" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="41"/>
- <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="cb9-ME-sEN">
- <rect key="frame" x="205" y="5" width="42" height="44"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" red="0.39589986313868614" green="0.87052349452554745" blue="0.78039215689999997" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <state key="normal" image="timer_settime_btn.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- </button>
- </subviews>
- <color key="backgroundColor" red="0.21176470589999999" green="0.81568627449999997" blue="0.78039215689999997" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- </subviews>
- </scrollView>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="cOI-Hc-1QU">
- <rect key="frame" x="722" y="23" width="64" height="53"/>
- <autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="14" maxY="0.0"/>
- <state key="normal" image="more_ipad.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="popOverUp:" destination="TYh-Hw-m1Q" eventType="touchUpInside" id="Urz-2a-EqX"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" red="0.66274509800000003" green="0.71764705880000002" blue="0.74509803919999995" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- </subviews>
- <color key="backgroundColor" red="0.90196079019999997" green="0.90196079019999997" blue="0.90196079019999997" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- <toolbarItems/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- <connections>
- <outlet property="NoteWebView" destination="pAh-4g-JCn" id="h2a-iy-ahp"/>
- <outlet property="NotesView" destination="Pk1-fD-KAi" id="2ZD-si-fls"/>
- <outlet property="clearButton" destination="MKb-4h-13P" id="7Xz-n6-sre"/>
- <outlet property="currentSlideImageView" destination="x7C-rs-s4K" id="Qtf-99-j0C"/>
- <outlet property="gearButton" destination="cOI-Hc-1QU" id="rH8-CG-Jdb"/>
- <outlet property="horizontalTableView" destination="Iok-mu-c0T" id="SJT-pa-4Hb"/>
- <outlet property="movingPointer" destination="2SJ-3f-E3k" id="mxV-zz-hjx"/>
- <outlet property="nextButton" destination="bfp-PJ-NrP" id="1Uf-1g-iQl"/>
- <outlet property="previousButton" destination="I1u-1Z-GsZ" id="Vjj-em-GQj"/>
- <outlet property="slideNumber" destination="wWm-KR-C5L" id="Vb0-Wv-6gb"/>
- <outlet property="startButton" destination="8iO-H3-CJ7" id="ym1-Hg-BPE"/>
- <outlet property="stopWatchTimerScrollView" destination="DUv-gH-oAo" id="wSU-Wu-HS7"/>
- <outlet property="stopWatchView" destination="JaD-yW-hWg" id="5oh-6i-Le2"/>
- <outlet property="timeLabel" destination="dtc-vP-agf" id="WsH-Gm-dBN"/>
- <outlet property="timerClearButton" destination="Tjm-Rm-xDV" id="wm1-L9-PGC"/>
- <outlet property="timerSetTimeButton" destination="cb9-ME-sEN" id="woY-pX-ksm"/>
- <outlet property="timerStartButton" destination="0U5-wJ-dhV" id="JOn-en-IIX"/>
- <outlet property="timerTimeLabel" destination="Mkj-qa-1Pr" id="wsM-yM-aad"/>
- <outlet property="timerView" destination="Oe1-Vs-cwU" id="BEK-5M-xtd"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="e0y-Q9-Urg" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-611" y="487"/>
- </scene>
- <!--Main Split View Controller-->
- <scene sceneID="myh-dM-403">
- <objects>
- <splitViewController id="XiK-Ye-iB8" customClass="MainSplitViewController" sceneMemberID="viewController">
- <toolbarItems/>
- <connections>
- <segue destination="TYh-Hw-m1Q" kind="relationship" relationship="detailViewController" id="qi1-27-bFk"/>
- <segue destination="KDH-tS-eoR" kind="modal" identifier="connectionModalUp" modalPresentationStyle="formSheet" modalTransitionStyle="flipHorizontal" id="pYZ-nF-jdE"/>
- <segue destination="VQa-vM-8pF" kind="relationship" relationship="masterViewController" id="uc4-BV-mye"/>
- </connections>
- </splitViewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="TtW-hD-5Ub" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-1587" y="-25"/>
- </scene>
- <!--Slide Show Swipe In List ipad-->
- <scene sceneID="Abu-7b-l1S">
- <objects>
- <tableViewController clearsSelectionOnViewWillAppear="NO" id="VQa-vM-8pF" customClass="SlideShowSwipeInList_ipad" sceneMemberID="viewController">
- <tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="170" sectionHeaderHeight="22" sectionFooterHeight="22" id="U9c-sP-NVQ">
- <rect key="frame" x="0.0" y="0.0" width="320" height="852"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" cocoaTouchSystemColor="scrollViewTexturedBackgroundColor"/>
- <prototypes>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="slide" rowHeight="178" id="c4j-oH-LnN">
- <rect key="frame" x="0.0" y="22" width="320" height="178"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="c4j-oH-LnN" id="tSG-SJ-J7C">
- <rect key="frame" x="0.0" y="0.0" width="320" height="177"/>
- <autoresizingMask key="autoresizingMask"/>
- <subviews>
- <imageView userInteractionEnabled="NO" tag="1" contentMode="scaleToFill" image="Default.png" id="dn1-99-Dde">
- <rect key="frame" x="44" y="7" width="233" height="163"/>
- </imageView>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="2" contentMode="left" text="1" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="b5V-aR-n9S">
- <rect key="frame" x="245" y="149" width="32" height="21"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" white="0.80146555659999996" alpha="1" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" type="system" pointSize="17"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- </subviews>
- </tableViewCellContentView>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </tableViewCell>
- </prototypes>
- <connections>
- <outlet property="dataSource" destination="VQa-vM-8pF" id="Txq-JQ-qey"/>
- <outlet property="delegate" destination="VQa-vM-8pF" id="ae6-wj-kAw"/>
- </connections>
- </tableView>
- <navigationItem key="navigationItem" id="tG3-aQ-qyu"/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- </tableViewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="EJg-kN-O5N" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-589" y="-500"/>
- </scene>
- <!--Auto Dismiss Keyboard Navigation View Controller-->
- <scene sceneID="tvQ-2n-hpX">
- <objects>
- <navigationController storyboardIdentifier="serverList" id="KDH-tS-eoR" customClass="autoDismissKeyboardNavigationViewController" sceneMemberID="viewController">
- <toolbarItems/>
- <simulatedNavigationBarMetrics key="simulatedTopBarMetrics" translucent="NO" prompted="NO"/>
- <navigationBar key="navigationBar" contentMode="scaleToFill" translucent="NO" id="9T5-Qi-Tr9">
- <rect key="frame" x="0.0" y="0.0" width="768" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- </navigationBar>
- <nil name="viewControllers"/>
- <connections>
- <segue destination="5QV-E7-KNT" kind="relationship" relationship="rootViewController" id="euZ-Wr-AwZ"/>
- </connections>
- </navigationController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="MVE-66-SWg" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-636" y="-1374"/>
- </scene>
- <!--Walk Through Container View Controller-->
- <scene sceneID="wTs-Zb-aUa">
- <objects>
- <viewController id="Grm-Od-s6s" customClass="WalkThroughContainerViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="LWc-xb-hIj">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </view>
- <navigationItem key="navigationItem" id="2hX-NQ-pfJ"/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="EWl-Cj-qdi" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="246" y="-235"/>
- </scene>
- </scenes>
- <resources>
- <image name="Default.png" width="320" height="480"/>
- <image name="WTPairingScreenshot.png" width="474" height="312"/>
- <image name="add.png" width="30" height="30"/>
- <image name="buttonBackground.png" width="45" height="45"/>
- <image name="more_icon.png" width="30" height="30"/>
- <image name="more_ipad.png" width="60" height="60"/>
- <image name="nextButton_normal.png" width="42" height="230"/>
- <image name="nextButton_pressed.png" width="42" height="230"/>
- <image name="previousButton_normal.png" width="42" height="230"/>
- <image name="previousButton_pressed.png" width="42" height="230"/>
- <image name="timer_clear_btn_dark.png" width="60" height="60"/>
- <image name="timer_settime_btn.png" width="60" height="60"/>
- <image name="timer_start_btn_dark.png" width="60" height="60"/>
- </resources>
- <color key="tintColor" red="1" green="0.50196078430000002" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- <simulatedMetricsContainer key="defaultSimulatedMetrics">
- <simulatedStatusBarMetrics key="statusBar"/>
- <simulatedOrientationMetrics key="orientation"/>
- <simulatedScreenMetrics key="destination"/>
- </simulatedMetricsContainer>
- <inferredMetricsTieBreakers>
- <segue reference="jsD-4W-bFm"/>
- </inferredMetricsTieBreakers>
-</document> \ No newline at end of file
diff --git a/ios/iosremote/cs.lproj/Localizable.strings b/ios/iosremote/cs.lproj/Localizable.strings
deleted file mode 100644
index 3e2b7a6a36c1..000000000000
--- a/ios/iosremote/cs.lproj/Localizable.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/cs.lproj/iPad_autosize.storyboard b/ios/iosremote/cs.lproj/iPad_autosize.storyboard
deleted file mode 100644
index 56124271b606..000000000000
--- a/ios/iosremote/cs.lproj/iPad_autosize.storyboard
+++ /dev/null
@@ -1,648 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="4514" systemVersion="13B42" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" initialViewController="XiK-Ye-iB8">
- <dependencies>
- <deployment defaultVersion="1280" identifier="iOS"/>
- <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3747"/>
- </dependencies>
- <scenes>
- <!--About View Controller-->
- <scene sceneID="QsO-mW-ttp">
- <objects>
- <viewController id="FKS-tU-MC6" customClass="AboutViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="FOc-OL-5wQ">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <webView contentMode="scaleToFill" id="07n-0U-kuj">
- <rect key="frame" x="0.0" y="0.0" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </webView>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <navigationItem key="navigationItem" id="diX-6k-klE"/>
- <connections>
- <outlet property="aboutWebView" destination="07n-0U-kuj" id="nNC-oi-dgh"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="SyX-dh-Yof" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="254" y="-2200"/>
- </scene>
- <!--Server List View Controller ipad - Connect-->
- <scene sceneID="ydU-fu-qHI">
- <objects>
- <viewController id="5QV-E7-KNT" customClass="ServerListViewController_ipad" sceneMemberID="viewController">
- <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="grouped" showsSelectionImmediatelyOnTouchBegin="NO" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="0vt-Sx-o55">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
- <prototypes>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="server_item_cell" editingAccessoryType="disclosureIndicator" textLabel="h0a-Zq-2vY" detailTextLabel="Fsp-wI-AAW" style="IBUITableViewCellStyleValue1" id="HZp-VJ-Pgz">
- <rect key="frame" x="0.0" y="55" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="HZp-VJ-Pgz" id="5rS-B1-6zF">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="h0a-Zq-2vY">
- <rect key="frame" x="15" y="12" width="32" height="20"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <color key="highlightedColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </label>
- <label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Fsp-wI-AAW">
- <rect key="frame" x="481" y="12" width="44" height="20"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <color key="textColor" red="0.0" green="0.47843137250000001" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- <color key="highlightedColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </label>
- </subviews>
- </tableViewCellContentView>
- </tableViewCell>
- </prototypes>
- <connections>
- <outlet property="dataSource" destination="5QV-E7-KNT" id="Vhs-k2-fLj"/>
- <outlet property="delegate" destination="5QV-E7-KNT" id="L4W-DD-RiQ"/>
- </connections>
- </tableView>
- <navigationItem key="navigationItem" title="Connect" id="wYh-MF-Ao6">
- <barButtonItem key="leftBarButtonItem" image="add.png" id="pU6-XF-laS">
- <connections>
- <segue destination="65c-5D-pB7" kind="push" identifier="create_new_server" id="ORn-0W-dHd"/>
- </connections>
- </barButtonItem>
- <barButtonItem key="rightBarButtonItem" image="more_icon.png" id="AN0-81-gat">
- <connections>
- <action selector="onClickMenuButton:" destination="5QV-E7-KNT" id="MvY-cd-0md"/>
- </connections>
- </barButtonItem>
- </navigationItem>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- <connections>
- <outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/>
- <segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/>
- <segue destination="Grm-Od-s6s" kind="push" identifier="howtoSegue" id="hRz-3h-McA"/>
- <segue destination="M9Q-tM-7CQ" kind="push" identifier="SlideShowPreview" id="jsD-4W-bFm"/>
- <segue destination="FKS-tU-MC6" kind="push" identifier="aboutSegue" id="4eY-jZ-bpg"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="KBf-aZ-Hhk" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="254" y="-1374"/>
- </scene>
- <!--Pin Validation View Controller-->
- <scene sceneID="wDk-2x-G9p">
- <objects>
- <viewController id="m26-i1-eiL" customClass="PinValidationViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="hAq-tq-hru">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="3128" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Bp1-Dv-nt4">
- <rect key="frame" x="164" y="66" width="223" height="118"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" name="HelveticaNeue-UltraLight" family="Helvetica Neue" pointSize="100"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <nil key="highlightedColor"/>
- </label>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Please enter the pin code above in Impress - Slide Show - Impress Remote" textAlignment="center" lineBreakMode="wordWrap" numberOfLines="4" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="9zr-53-YfP">
- <rect key="frame" x="115" y="442" width="320" height="94"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" heightSizable="YES"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="15"/>
- <color key="textColor" name="alternateSelectedControlColor" catalog="System" colorSpace="catalog"/>
- <nil key="highlightedColor"/>
- </label>
- <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" image="WTPairingScreenshot.png" id="iaB-Jl-mwG">
- <rect key="frame" x="80" y="192" width="381" height="242"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES" flexibleMaxY="YES"/>
- </imageView>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <navigationItem key="navigationItem" id="V5z-WP-qrM"/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- <connections>
- <outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/>
- <segue destination="M9Q-tM-7CQ" kind="push" identifier="pinValidated" id="nkI-m0-Ps8"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="gh4-1U-6Dm" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="1004" y="-510"/>
- </scene>
- <!--New Server View Controller - New Server-->
- <scene sceneID="RcY-Im-ohw">
- <objects>
- <tableViewController id="65c-5D-pB7" customClass="NewServerViewController" sceneMemberID="viewController">
- <tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="qow-Yc-8dL">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
- <sections>
- <tableViewSection footerTitle="" id="CVG-Eq-rLd">
- <cells>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="b8A-jh-k26" customClass="EditableTableViewCell">
- <rect key="frame" x="0.0" y="35" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="b8A-jh-k26" id="1PC-Os-0pl">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- </tableViewCellContentView>
- </tableViewCell>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="jrI-wU-4NT" customClass="EditableTableViewCell">
- <rect key="frame" x="0.0" y="79" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="jrI-wU-4NT" id="Ty8-vX-PiF">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- </tableViewCellContentView>
- </tableViewCell>
- </cells>
- </tableViewSection>
- </sections>
- <connections>
- <outlet property="dataSource" destination="65c-5D-pB7" id="Omw-kB-sR2"/>
- <outlet property="delegate" destination="65c-5D-pB7" id="eNx-uc-YkW"/>
- </connections>
- </tableView>
- <navigationItem key="navigationItem" title="New Server" id="oAP-jt-6Z9">
- <barButtonItem key="rightBarButtonItem" systemItem="save" id="PoE-MY-hSB">
- <connections>
- <action selector="save:" destination="65c-5D-pB7" id="Ww6-Jy-5eG"/>
- </connections>
- </barButtonItem>
- </navigationItem>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- </tableViewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="1024" y="-1831"/>
- </scene>
- <!--Slide Show Preview View Controller ipad-->
- <scene sceneID="5gD-BL-PRq">
- <objects>
- <viewController storyboardIdentifier="slideShowPreview" id="M9Q-tM-7CQ" customClass="SlideShowPreviewViewController_ipad" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="8vR-9Z-5Vk">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <view contentMode="scaleToFill" id="iAg-GA-qtj">
- <rect key="frame" x="0.0" y="20" width="540" height="234"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Presentation Title" textAlignment="center" lineBreakMode="wordWrap" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="sXT-OZ-7y3">
- <rect key="frame" x="20" y="20" width="500" height="194"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" type="system" pointSize="24"/>
- <color key="textColor" red="0.39589986310000003" green="0.87052349449999999" blue="0.78039215689999997" alpha="1" colorSpace="calibratedRGB"/>
- <nil key="highlightedColor"/>
- </label>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="0k4-5k-dza">
- <rect key="frame" x="182" y="363" width="177" height="44"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <state key="normal" title="Start Presentation" backgroundImage="buttonBackground.png">
- <color key="titleColor" red="1" green="0.50196078430000002" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="startPresentationAction:" destination="M9Q-tM-7CQ" eventType="touchUpInside" id="ZcD-xo-Cvg"/>
- </connections>
- </button>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="02F-Tj-9xO" userLabel="slideShowPreview">
- <rect key="frame" x="201" y="437" width="138" height="45"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" name="Helvetica" family="Helvetica" pointSize="17"/>
- <state key="normal" title="Settings" backgroundImage="buttonBackground.png">
- <color key="titleColor" red="1" green="0.50196078430000002" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="startPrefSettings:" destination="M9Q-tM-7CQ" eventType="touchUpInside" id="oUK-cn-Bx7"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- <navigationItem key="navigationItem" id="CJJ-Ti-ahy"/>
- <connections>
- <outlet property="prefButton" destination="02F-Tj-9xO" id="vc4-VF-px0"/>
- <outlet property="startButton" destination="0k4-5k-dza" id="sMZ-jn-IzZ"/>
- <outlet property="titleLabel" destination="sXT-OZ-7y3" id="U2U-p1-it2"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="gp3-Xs-lfE" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="1754" y="-1374"/>
- </scene>
- <!--Base Presentation View Controller-->
- <scene sceneID="5zi-ge-3SF">
- <objects>
- <viewController storyboardIdentifier="basePresentation" id="TYh-Hw-m1Q" customClass="BasePresentationViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="qHB-hR-vFc">
- <rect key="frame" x="0.0" y="0.0" width="768" height="1024"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <subviews>
- <view contentMode="scaleToFill" id="KCA-UU-Lu1" userLabel="Preview">
- <rect key="frame" x="0.0" y="0.0" width="768" height="459"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
- <subviews>
- <imageView userInteractionEnabled="NO" tag="19" contentMode="scaleToFill" verticalCompressionResistancePriority="1000" image="Default.png" id="x7C-rs-s4K">
- <rect key="frame" x="7" y="0.0" width="755" height="459"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </imageView>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" alpha="0.80000001192092896" contentMode="left" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="wWm-KR-C5L">
- <rect key="frame" x="685" y="427" width="77" height="32"/>
- <autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES" heightSizable="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <rect key="contentStretch" x="1.3877787807814457e-17" y="0.0" width="1" height="1"/>
- <fontDescription key="fontDescription" type="system" pointSize="25"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- <view hidden="YES" contentMode="scaleToFill" id="2SJ-3f-E3k" userLabel="pointer">
- <rect key="frame" x="191" y="277" width="8" height="7"/>
- <color key="backgroundColor" red="1" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- <button opaque="NO" alpha="0.69999999999999996" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="I1u-1Z-GsZ">
- <rect key="frame" x="7" y="0.0" width="84" height="459"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" heightSizable="YES"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <state key="normal" backgroundImage="previousButton_normal.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted" backgroundImage="previousButton_pressed.png">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="previousSlideAction:" destination="TYh-Hw-m1Q" eventType="touchUpInside" id="qvs-3Y-Ifz"/>
- </connections>
- </button>
- <button opaque="NO" alpha="0.69999999999999996" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="bfp-PJ-NrP">
- <rect key="frame" x="678" y="0.0" width="84" height="459"/>
- <autoresizingMask key="autoresizingMask" flexibleMinX="YES" heightSizable="YES"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <state key="normal" backgroundImage="nextButton_normal.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted" backgroundImage="nextButton_pressed.png">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="nextSlideAction:" destination="TYh-Hw-m1Q" eventType="touchUpInside" id="7OP-xX-gva"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- <view clipsSubviews="YES" contentMode="scaleToFill" verticalCompressionResistancePriority="547" restorationIdentifier="" id="Pk1-fD-KAi" userLabel="NotesView">
- <rect key="frame" x="-13" y="595" width="794" height="323"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text=" Lecturer's Notes" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="5Yn-0z-Cjz">
- <rect key="frame" x="20" y="0.0" width="754" height="31"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" red="1" green="0.66274509800000003" blue="0.074509803920000006" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Bold" family="Helvetica" pointSize="17"/>
- <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="calibratedRGB"/>
- <nil key="highlightedColor"/>
- </label>
- <webView tag="4" contentMode="scaleToFill" verticalCompressionResistancePriority="1" id="pAh-4g-JCn" userLabel="Notes">
- <rect key="frame" x="20" y="29" width="754" height="294"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <rect key="contentStretch" x="0.0" y="1" width="1" height="1"/>
- </webView>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- <tableView contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="Iok-mu-c0T" customClass="HorizontalTableView">
- <rect key="frame" x="-26" y="236" width="0.0" height="0.0"/>
- <autoresizingMask key="autoresizingMask"/>
- <color key="backgroundColor" white="0.33333333333333331" alpha="1" colorSpace="calibratedWhite"/>
- <connections>
- <outlet property="dataSource" destination="TYh-Hw-m1Q" id="42R-0X-OyE"/>
- <outlet property="delegate" destination="TYh-Hw-m1Q" id="mMV-1F-8OM"/>
- </connections>
- </tableView>
- <view contentMode="scaleToFill" restorationIdentifier="" id="xYX-bt-wuI" userLabel="Bottom">
- <rect key="frame" x="0.0" y="926" width="768" height="98"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
- <subviews>
- <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" directionalLockEnabled="YES" bounces="NO" alwaysBounceHorizontal="YES" pagingEnabled="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" id="DUv-gH-oAo">
- <rect key="frame" x="0.0" y="-1" width="698" height="102"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" heightSizable="YES"/>
- <subviews>
- <view contentMode="scaleToFill" id="JaD-yW-hWg" userLabel="View - StopWatch">
- <rect key="frame" x="20" y="20" width="595" height="62"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Stopwatch" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="7U8-rE-xf7">
- <rect key="frame" x="0.0" y="4" width="131" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" type="system" pointSize="17"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <nil key="highlightedColor"/>
- </label>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="1" contentMode="left" text="00:00:00" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="dtc-vP-agf">
- <rect key="frame" x="130" y="4" width="234" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.078431372550000003" green="0.75686274509999996" blue="0.56078431370000004" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="41"/>
- <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- <button opaque="NO" tag="2" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="8iO-H3-CJ7">
- <rect key="frame" x="361" y="4" width="116" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Start" image="timer_start_btn_dark.png">
- <color key="titleColor" red="0.23529411764705882" green="0.25098039215686274" blue="0.27058823529411763" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchStart:" destination="VQa-vM-8pF" eventType="touchUpInside" id="om8-GY-NhP"/>
- </connections>
- </button>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="MKb-4h-13P">
- <rect key="frame" x="478" y="4" width="117" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Reset" image="timer_clear_btn_dark.png">
- <color key="titleColor" red="0.23529411759999999" green="0.25098039220000001" blue="0.27058823529999998" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchClear:" destination="VQa-vM-8pF" eventType="touchUpInside" id="aD5-Wp-WRC"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- <view clipsSubviews="YES" contentMode="scaleToFill" id="Oe1-Vs-cwU" userLabel="View - Timer">
- <rect key="frame" x="632" y="24" width="580" height="58"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Timer" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="O25-Ru-tve">
- <rect key="frame" x="0.0" y="0.0" width="94" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" type="system" pointSize="17"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <nil key="highlightedColor"/>
- </label>
- <button opaque="NO" tag="2" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="0U5-wJ-dhV">
- <rect key="frame" x="351" y="0.0" width="116" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Start" image="timer_start_btn_dark.png">
- <color key="titleColor" red="0.23529411759999999" green="0.25098039220000001" blue="0.27058823529999998" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchStart:" destination="VQa-vM-8pF" eventType="touchUpInside" id="1Ul-4y-uIK"/>
- </connections>
- </button>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="Tjm-Rm-xDV">
- <rect key="frame" x="468" y="0.0" width="117" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="16"/>
- <state key="normal" title="Reset" image="timer_clear_btn_dark.png">
- <color key="titleColor" red="0.23529411759999999" green="0.25098039220000001" blue="0.27058823529999998" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="stopWatchClear:" destination="VQa-vM-8pF" eventType="touchUpInside" id="jVu-4b-5oo"/>
- </connections>
- </button>
- <view contentMode="scaleToFill" id="gZg-Ne-hhO">
- <rect key="frame" x="92" y="0.0" width="259" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="1" contentMode="left" text="00:00:00" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Mkj-qa-1Pr">
- <rect key="frame" x="20" y="0.0" width="169" height="54"/>
- <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="41"/>
- <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="cb9-ME-sEN">
- <rect key="frame" x="205" y="5" width="42" height="44"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" red="0.39589986313868614" green="0.87052349452554745" blue="0.78039215689999997" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <state key="normal" image="timer_settime_btn.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- </button>
- </subviews>
- <color key="backgroundColor" red="0.21176470589999999" green="0.81568627449999997" blue="0.78039215689999997" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- </subviews>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </view>
- </subviews>
- </scrollView>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="cOI-Hc-1QU">
- <rect key="frame" x="722" y="23" width="64" height="53"/>
- <autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES"/>
- <color key="backgroundColor" red="0.92941176469999998" green="0.92941176469999998" blue="0.92941176469999998" alpha="1" colorSpace="calibratedRGB"/>
- <fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
- <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="14" maxY="0.0"/>
- <state key="normal" image="more_ipad.png">
- <color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
- <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <state key="highlighted">
- <color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </state>
- <connections>
- <action selector="popOverUp:" destination="TYh-Hw-m1Q" eventType="touchUpInside" id="Urz-2a-EqX"/>
- </connections>
- </button>
- </subviews>
- <color key="backgroundColor" red="0.66274509800000003" green="0.71764705880000002" blue="0.74509803919999995" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- </subviews>
- <color key="backgroundColor" red="0.90196079019999997" green="0.90196079019999997" blue="0.90196079019999997" alpha="1" colorSpace="calibratedRGB"/>
- </view>
- <toolbarItems/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- <connections>
- <outlet property="NoteWebView" destination="pAh-4g-JCn" id="h2a-iy-ahp"/>
- <outlet property="NotesView" destination="Pk1-fD-KAi" id="2ZD-si-fls"/>
- <outlet property="clearButton" destination="MKb-4h-13P" id="7Xz-n6-sre"/>
- <outlet property="currentSlideImageView" destination="x7C-rs-s4K" id="Qtf-99-j0C"/>
- <outlet property="gearButton" destination="cOI-Hc-1QU" id="rH8-CG-Jdb"/>
- <outlet property="horizontalTableView" destination="Iok-mu-c0T" id="SJT-pa-4Hb"/>
- <outlet property="movingPointer" destination="2SJ-3f-E3k" id="mxV-zz-hjx"/>
- <outlet property="nextButton" destination="bfp-PJ-NrP" id="1Uf-1g-iQl"/>
- <outlet property="previousButton" destination="I1u-1Z-GsZ" id="Vjj-em-GQj"/>
- <outlet property="slideNumber" destination="wWm-KR-C5L" id="Vb0-Wv-6gb"/>
- <outlet property="startButton" destination="8iO-H3-CJ7" id="ym1-Hg-BPE"/>
- <outlet property="stopWatchTimerScrollView" destination="DUv-gH-oAo" id="wSU-Wu-HS7"/>
- <outlet property="stopWatchView" destination="JaD-yW-hWg" id="5oh-6i-Le2"/>
- <outlet property="timeLabel" destination="dtc-vP-agf" id="WsH-Gm-dBN"/>
- <outlet property="timerClearButton" destination="Tjm-Rm-xDV" id="wm1-L9-PGC"/>
- <outlet property="timerSetTimeButton" destination="cb9-ME-sEN" id="woY-pX-ksm"/>
- <outlet property="timerStartButton" destination="0U5-wJ-dhV" id="JOn-en-IIX"/>
- <outlet property="timerTimeLabel" destination="Mkj-qa-1Pr" id="wsM-yM-aad"/>
- <outlet property="timerView" destination="Oe1-Vs-cwU" id="BEK-5M-xtd"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="e0y-Q9-Urg" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-611" y="487"/>
- </scene>
- <!--Main Split View Controller-->
- <scene sceneID="myh-dM-403">
- <objects>
- <splitViewController id="XiK-Ye-iB8" customClass="MainSplitViewController" sceneMemberID="viewController">
- <toolbarItems/>
- <connections>
- <segue destination="TYh-Hw-m1Q" kind="relationship" relationship="detailViewController" id="qi1-27-bFk"/>
- <segue destination="KDH-tS-eoR" kind="modal" identifier="connectionModalUp" modalPresentationStyle="formSheet" modalTransitionStyle="flipHorizontal" id="pYZ-nF-jdE"/>
- <segue destination="VQa-vM-8pF" kind="relationship" relationship="masterViewController" id="uc4-BV-mye"/>
- </connections>
- </splitViewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="TtW-hD-5Ub" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-1587" y="-25"/>
- </scene>
- <!--Slide Show Swipe In List ipad-->
- <scene sceneID="Abu-7b-l1S">
- <objects>
- <tableViewController clearsSelectionOnViewWillAppear="NO" id="VQa-vM-8pF" customClass="SlideShowSwipeInList_ipad" sceneMemberID="viewController">
- <tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="170" sectionHeaderHeight="22" sectionFooterHeight="22" id="U9c-sP-NVQ">
- <rect key="frame" x="0.0" y="0.0" width="320" height="852"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" cocoaTouchSystemColor="scrollViewTexturedBackgroundColor"/>
- <prototypes>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="slide" rowHeight="178" id="c4j-oH-LnN">
- <rect key="frame" x="0.0" y="22" width="320" height="178"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="c4j-oH-LnN" id="tSG-SJ-J7C">
- <rect key="frame" x="0.0" y="0.0" width="320" height="177"/>
- <autoresizingMask key="autoresizingMask"/>
- <subviews>
- <imageView userInteractionEnabled="NO" tag="1" contentMode="scaleToFill" image="Default.png" id="dn1-99-Dde">
- <rect key="frame" x="44" y="7" width="233" height="163"/>
- </imageView>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="2" contentMode="left" text="1" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="b5V-aR-n9S">
- <rect key="frame" x="245" y="149" width="32" height="21"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" white="0.80146555659999996" alpha="1" colorSpace="calibratedWhite"/>
- <fontDescription key="fontDescription" type="system" pointSize="17"/>
- <color key="highlightedColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </label>
- </subviews>
- </tableViewCellContentView>
- <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
- </tableViewCell>
- </prototypes>
- <connections>
- <outlet property="dataSource" destination="VQa-vM-8pF" id="Txq-JQ-qey"/>
- <outlet property="delegate" destination="VQa-vM-8pF" id="ae6-wj-kAw"/>
- </connections>
- </tableView>
- <navigationItem key="navigationItem" id="tG3-aQ-qyu"/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- </tableViewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="EJg-kN-O5N" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-589" y="-500"/>
- </scene>
- <!--Auto Dismiss Keyboard Navigation View Controller-->
- <scene sceneID="tvQ-2n-hpX">
- <objects>
- <navigationController storyboardIdentifier="serverList" id="KDH-tS-eoR" customClass="autoDismissKeyboardNavigationViewController" sceneMemberID="viewController">
- <toolbarItems/>
- <simulatedNavigationBarMetrics key="simulatedTopBarMetrics" translucent="NO" prompted="NO"/>
- <navigationBar key="navigationBar" contentMode="scaleToFill" translucent="NO" id="9T5-Qi-Tr9">
- <rect key="frame" x="0.0" y="0.0" width="768" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- </navigationBar>
- <nil name="viewControllers"/>
- <connections>
- <segue destination="5QV-E7-KNT" kind="relationship" relationship="rootViewController" id="euZ-Wr-AwZ"/>
- </connections>
- </navigationController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="MVE-66-SWg" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="-636" y="-1374"/>
- </scene>
- <!--Walk Through Container View Controller-->
- <scene sceneID="wTs-Zb-aUa">
- <objects>
- <viewController id="Grm-Od-s6s" customClass="WalkThroughContainerViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="LWc-xb-hIj">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
- </view>
- <navigationItem key="navigationItem" id="2hX-NQ-pfJ"/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="EWl-Cj-qdi" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="246" y="-235"/>
- </scene>
- </scenes>
- <resources>
- <image name="Default.png" width="320" height="480"/>
- <image name="WTPairingScreenshot.png" width="474" height="312"/>
- <image name="add.png" width="30" height="30"/>
- <image name="buttonBackground.png" width="45" height="45"/>
- <image name="more_icon.png" width="30" height="30"/>
- <image name="more_ipad.png" width="60" height="60"/>
- <image name="nextButton_normal.png" width="42" height="230"/>
- <image name="nextButton_pressed.png" width="42" height="230"/>
- <image name="previousButton_normal.png" width="42" height="230"/>
- <image name="previousButton_pressed.png" width="42" height="230"/>
- <image name="timer_clear_btn_dark.png" width="60" height="60"/>
- <image name="timer_settime_btn.png" width="60" height="60"/>
- <image name="timer_start_btn_dark.png" width="60" height="60"/>
- </resources>
- <color key="tintColor" red="1" green="0.50196078430000002" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
- <simulatedMetricsContainer key="defaultSimulatedMetrics">
- <simulatedStatusBarMetrics key="statusBar"/>
- <simulatedOrientationMetrics key="orientation"/>
- <simulatedScreenMetrics key="destination"/>
- </simulatedMetricsContainer>
- <inferredMetricsTieBreakers>
- <segue reference="jsD-4W-bFm"/>
- </inferredMetricsTieBreakers>
-</document> \ No newline at end of file
diff --git a/ios/iosremote/da.lproj/Localizable.strings b/ios/iosremote/da.lproj/Localizable.strings
deleted file mode 100644
index 8d3588c74626..000000000000
--- a/ios/iosremote/da.lproj/Localizable.strings
+++ /dev/null
Binary files differ
diff --git a/ios/iosremote/da.lproj/iPad_autosize.storyboard b/ios/iosremote/da.lproj/iPad_autosize.storyboard
deleted file mode 100644
index 56124271b606..000000000000
--- a/ios/iosremote/da.lproj/iPad_autosize.storyboard
+++ /dev/null
@@ -1,648 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="4514" systemVersion="13B42" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" initialViewController="XiK-Ye-iB8">
- <dependencies>
- <deployment defaultVersion="1280" identifier="iOS"/>
- <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3747"/>
- </dependencies>
- <scenes>
- <!--About View Controller-->
- <scene sceneID="QsO-mW-ttp">
- <objects>
- <viewController id="FKS-tU-MC6" customClass="AboutViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="FOc-OL-5wQ">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <webView contentMode="scaleToFill" id="07n-0U-kuj">
- <rect key="frame" x="0.0" y="0.0" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </webView>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <navigationItem key="navigationItem" id="diX-6k-klE"/>
- <connections>
- <outlet property="aboutWebView" destination="07n-0U-kuj" id="nNC-oi-dgh"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="SyX-dh-Yof" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="254" y="-2200"/>
- </scene>
- <!--Server List View Controller ipad - Connect-->
- <scene sceneID="ydU-fu-qHI">
- <objects>
- <viewController id="5QV-E7-KNT" customClass="ServerListViewController_ipad" sceneMemberID="viewController">
- <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="grouped" showsSelectionImmediatelyOnTouchBegin="NO" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="0vt-Sx-o55">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
- <prototypes>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="server_item_cell" editingAccessoryType="disclosureIndicator" textLabel="h0a-Zq-2vY" detailTextLabel="Fsp-wI-AAW" style="IBUITableViewCellStyleValue1" id="HZp-VJ-Pgz">
- <rect key="frame" x="0.0" y="55" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="HZp-VJ-Pgz" id="5rS-B1-6zF">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="h0a-Zq-2vY">
- <rect key="frame" x="15" y="12" width="32" height="20"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <color key="highlightedColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </label>
- <label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Fsp-wI-AAW">
- <rect key="frame" x="481" y="12" width="44" height="20"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <color key="textColor" red="0.0" green="0.47843137250000001" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- <color key="highlightedColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/>
- </label>
- </subviews>
- </tableViewCellContentView>
- </tableViewCell>
- </prototypes>
- <connections>
- <outlet property="dataSource" destination="5QV-E7-KNT" id="Vhs-k2-fLj"/>
- <outlet property="delegate" destination="5QV-E7-KNT" id="L4W-DD-RiQ"/>
- </connections>
- </tableView>
- <navigationItem key="navigationItem" title="Connect" id="wYh-MF-Ao6">
- <barButtonItem key="leftBarButtonItem" image="add.png" id="pU6-XF-laS">
- <connections>
- <segue destination="65c-5D-pB7" kind="push" identifier="create_new_server" id="ORn-0W-dHd"/>
- </connections>
- </barButtonItem>
- <barButtonItem key="rightBarButtonItem" image="more_icon.png" id="AN0-81-gat">
- <connections>
- <action selector="onClickMenuButton:" destination="5QV-E7-KNT" id="MvY-cd-0md"/>
- </connections>
- </barButtonItem>
- </navigationItem>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- <connections>
- <outlet property="serverTable" destination="0vt-Sx-o55" id="Szp-pH-0rk"/>
- <segue destination="m26-i1-eiL" kind="push" identifier="pinValidation" id="yUv-cB-P15"/>
- <segue destination="Grm-Od-s6s" kind="push" identifier="howtoSegue" id="hRz-3h-McA"/>
- <segue destination="M9Q-tM-7CQ" kind="push" identifier="SlideShowPreview" id="jsD-4W-bFm"/>
- <segue destination="FKS-tU-MC6" kind="push" identifier="aboutSegue" id="4eY-jZ-bpg"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="KBf-aZ-Hhk" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="254" y="-1374"/>
- </scene>
- <!--Pin Validation View Controller-->
- <scene sceneID="wDk-2x-G9p">
- <objects>
- <viewController id="m26-i1-eiL" customClass="PinValidationViewController" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="hAq-tq-hru">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="3128" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Bp1-Dv-nt4">
- <rect key="frame" x="164" y="66" width="223" height="118"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" name="HelveticaNeue-UltraLight" family="Helvetica Neue" pointSize="100"/>
- <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
- <nil key="highlightedColor"/>
- </label>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Please enter the pin code above in Impress - Slide Show - Impress Remote" textAlignment="center" lineBreakMode="wordWrap" numberOfLines="4" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="9zr-53-YfP">
- <rect key="frame" x="115" y="442" width="320" height="94"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" heightSizable="YES"/>
- <fontDescription key="fontDescription" name="Helvetica-Light" family="Helvetica" pointSize="15"/>
- <color key="textColor" name="alternateSelectedControlColor" catalog="System" colorSpace="catalog"/>
- <nil key="highlightedColor"/>
- </label>
- <imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" image="WTPairingScreenshot.png" id="iaB-Jl-mwG">
- <rect key="frame" x="80" y="192" width="381" height="242"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES" flexibleMaxY="YES"/>
- </imageView>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <navigationItem key="navigationItem" id="V5z-WP-qrM"/>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- <connections>
- <outlet property="pinLabel" destination="Bp1-Dv-nt4" id="6xd-P5-J5U"/>
- <segue destination="M9Q-tM-7CQ" kind="push" identifier="pinValidated" id="nkI-m0-Ps8"/>
- </connections>
- </viewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="gh4-1U-6Dm" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="1004" y="-510"/>
- </scene>
- <!--New Server View Controller - New Server-->
- <scene sceneID="RcY-Im-ohw">
- <objects>
- <tableViewController id="65c-5D-pB7" customClass="NewServerViewController" sceneMemberID="viewController">
- <tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="qow-Yc-8dL">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
- <sections>
- <tableViewSection footerTitle="" id="CVG-Eq-rLd">
- <cells>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="b8A-jh-k26" customClass="EditableTableViewCell">
- <rect key="frame" x="0.0" y="35" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="b8A-jh-k26" id="1PC-Os-0pl">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- </tableViewCellContentView>
- </tableViewCell>
- <tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="jrI-wU-4NT" customClass="EditableTableViewCell">
- <rect key="frame" x="0.0" y="79" width="540" height="44"/>
- <autoresizingMask key="autoresizingMask"/>
- <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="jrI-wU-4NT" id="Ty8-vX-PiF">
- <rect key="frame" x="0.0" y="0.0" width="540" height="43"/>
- <autoresizingMask key="autoresizingMask"/>
- </tableViewCellContentView>
- </tableViewCell>
- </cells>
- </tableViewSection>
- </sections>
- <connections>
- <outlet property="dataSource" destination="65c-5D-pB7" id="Omw-kB-sR2"/>
- <outlet property="delegate" destination="65c-5D-pB7" id="eNx-uc-YkW"/>
- </connections>
- </tableView>
- <navigationItem key="navigationItem" title="New Server" id="oAP-jt-6Z9">
- <barButtonItem key="rightBarButtonItem" systemItem="save" id="PoE-MY-hSB">
- <connections>
- <action selector="save:" destination="65c-5D-pB7" id="Ww6-Jy-5eG"/>
- </connections>
- </barButtonItem>
- </navigationItem>
- <simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="lightContent"/>
- </tableViewController>
- <placeholder placeholderIdentifier="IBFirstResponder" id="JK3-FB-UoN" userLabel="First Responder" sceneMemberID="firstResponder"/>
- </objects>
- <point key="canvasLocation" x="1024" y="-1831"/>
- </scene>
- <!--Slide Show Preview View Controller ipad-->
- <scene sceneID="5gD-BL-PRq">
- <objects>
- <viewController storyboardIdentifier="slideShowPreview" id="M9Q-tM-7CQ" customClass="SlideShowPreviewViewController_ipad" sceneMemberID="viewController">
- <view key="view" contentMode="scaleToFill" id="8vR-9Z-5Vk">
- <rect key="frame" x="0.0" y="64" width="540" height="556"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <subviews>
- <view contentMode="scaleToFill" id="iAg-GA-qtj">
- <rect key="frame" x="0.0" y="20" width="540" height="234"/>
- <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
- <subviews>
- <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Presentation Title" textAlignment="center" lineBreakMode="wordWrap" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="sXT-OZ-7y3">
- <rect key="frame" x="20" y="20" width="500" height="194"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" type="system" pointSize="24"/>
- <color key="textColor" red="0.39589986310000003" green="0.87052349449999999" blue="0.78039215689999997" alpha="1" colorSpace="calibratedRGB"/>
- <nil key="highlightedColor"/>
- </label>
- </subviews>
- <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
- </view>
- <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="0k4-5k-dza">
- <rect key="frame" x="182" y="363" width="177" height="44"/>
- <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
- <fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
- <state key="normal" title="Start Presentation" backgroundImage="buttonBackground.png"&g