├── .gitignore ├── ABUnknownPersionViewControllerBug ├── ABUnknownPersionViewControllerBug.xcodeproj │ └── project.pbxproj └── ABUnknownPersionViewControllerBug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Assets.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Base.lproj │ └── Main.storyboard │ ├── Info.plist │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── ARCBugCGColor ├── arc_bug_CGColor.xcodeproj │ └── project.pbxproj └── arc_bug_CGColor │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── BuggyView.h │ ├── BuggyView.m │ ├── ViewController.h │ ├── ViewController.m │ ├── arc_bug_CGColor-Info.plist │ ├── arc_bug_CGColor-Prefix.pch │ ├── en.lproj │ └── InfoPlist.strings │ └── main.m ├── ActionsBug ├── ActionsBug.xcodeproj │ └── project.pbxproj └── ActionsBug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ ├── LaunchScreen.xib │ └── Main.storyboard │ ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Info.plist │ ├── TableViewController.h │ ├── TableViewController.m │ └── main.m ├── AutomaticHeightBug ├── AutomaticHeightBug.xcodeproj │ └── project.pbxproj └── AutomaticHeightBug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ ├── LaunchScreen.xib │ └── Main.storyboard │ ├── EventCell.h │ ├── EventCell.m │ ├── EventsViewController.h │ ├── EventsViewController.m │ ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Info.plist │ └── main.m ├── CATiledLayerMemory ├── CATiledLayerMemory.xcodeproj │ └── project.pbxproj └── CATiledLayerMemory │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ └── Main.storyboard │ ├── CATiledLayerMemory-Info.plist │ ├── CATiledLayerMemory-Prefix.pch │ ├── Images.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── LaunchImage.launchimage │ │ └── Contents.json │ ├── TiledContentView.h │ ├── TiledContentView.m │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ └── InfoPlist.strings │ └── main.m ├── CollectionViewMoveBug ├── CollectionViewMoveBug.xcodeproj │ └── project.pbxproj └── CollectionViewMoveBug │ ├── AppDelegate.swift │ ├── Assets.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Base.lproj │ └── Main.storyboard │ ├── Info.plist │ ├── LabelCollectionViewItem.swift │ ├── LabelCollectionViewItem.xib │ └── ViewController.swift ├── CompositionBug ├── CompositionBug.xcodeproj │ └── project.pbxproj ├── CompositionBug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ ├── LaunchScreen.xib │ │ └── Main.storyboard │ ├── Images.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Info.plist │ ├── PhotoScrollView.h │ ├── PhotoScrollView.m │ ├── ViewController.h │ ├── ViewController.m │ ├── main.m │ └── sample.jpg └── CompositionBugTests │ ├── CompositionBugTests.m │ └── Info.plist ├── ContainerViewDemo ├── ModalViewController.h ├── ModalViewController.m ├── containerviewdemo.xcodeproj │ └── project.pbxproj └── containerviewdemo │ ├── DTAppDelegate.h │ ├── DTAppDelegate.m │ ├── Radar.txt │ ├── RootViewController.h │ ├── RootViewController.m │ ├── containerviewdemo-Info.plist │ ├── containerviewdemo-Prefix.pch │ └── main.m ├── CoreTextLineOrigins ├── CoreTextLineOrigins.xcodeproj │ └── project.pbxproj └── CoreTextLineOrigins │ ├── CoreTextLineOrigins-Info.plist │ ├── CoreTextLineOrigins-Prefix.pch │ ├── DTAppDelegate.h │ ├── DTAppDelegate.m │ ├── DTViewController.h │ ├── DTViewController.m │ ├── TextView.h │ ├── TextView.m │ ├── en.lproj │ ├── DTViewController_iPad.xib │ ├── DTViewController_iPhone.xib │ └── InfoPlist.strings │ └── main.m ├── DTCoreTextExceptionExample ├── .gitignore ├── Podfile ├── TestDTCoreTextException.xcodeproj │ └── project.pbxproj └── TestDTCoreTextException │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ └── Main.storyboard │ ├── Images.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── LaunchImage.launchimage │ │ └── Contents.json │ ├── SampleText1.txt │ ├── SampleText2.txt │ ├── TestDTCoreTextException-Info.plist │ ├── TestDTCoreTextException-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ └── InfoPlist.strings │ └── main.m ├── DataDetectorAddressBug ├── DataDetectorAddressBug.xcodeproj │ └── project.pbxproj └── DataDetectorAddressBug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ ├── LaunchScreen.xib │ └── Main.storyboard │ ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Info.plist │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── GeoCoderBug ├── GeoCoderBug.xcodeproj │ └── project.pbxproj └── GeoCoderBug │ ├── AppDelegate.swift │ ├── Base.lproj │ ├── LaunchScreen.xib │ └── Main.storyboard │ ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Info.plist │ └── ViewController.swift ├── ImageLinkCrash ├── ImageLinkCrash.xcodeproj │ └── project.pbxproj └── ImageLinkCrash │ ├── AppDelegate.swift │ ├── Assets.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ ├── Contents.json │ └── ScalpelSi.imageset │ │ ├── Contents.json │ │ └── ScalpelSi.jpg │ ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard │ ├── Info.plist │ └── ViewController.swift ├── InputViewScrollViewBug ├── InputViewScrollViewBug.xcodeproj │ └── project.pbxproj └── InputViewScrollViewBug │ ├── AlternateInputViewController.h │ ├── AlternateInputViewController.m │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── DTTableView.h │ ├── DTTableView.m │ ├── Default-568h@2x.png │ ├── Default.png │ ├── Default@2x.png │ ├── EditableView.h │ ├── EditableView.m │ ├── InputViewScrollViewBug-Info.plist │ ├── InputViewScrollViewBug-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ ├── InfoPlist.strings │ └── ViewController.xib │ └── main.m ├── InterfaceTest ├── InterfaceTest.xcodeproj │ └── project.pbxproj ├── InterfaceTest │ ├── AppDelegate.swift │ ├── Assets.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ ├── Info.plist │ ├── InterfaceTest-Bridging-Header.h │ ├── ObjCViewController.h │ ├── ObjCViewController.m │ └── ViewController.swift └── Module │ ├── AncestorView.swift │ ├── CustomView.swift │ ├── Info.plist │ ├── Module.h │ ├── ObjCViewController.h │ ├── ObjCViewController.m │ └── SwiftViewController.swift ├── KerningTest ├── KerningTest.xcodeproj │ └── project.pbxproj └── KerningTest │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Default-568h@2x.png │ ├── Default.png │ ├── Default@2x.png │ ├── KerningTest-Info.plist │ ├── KerningTest-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ ├── InfoPlist.strings │ └── ViewController.xib │ └── main.m ├── LocalNotification ├── LocalNotification.xcodeproj │ └── project.pbxproj └── LocalNotification │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ └── Main.storyboard │ ├── Images.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── LaunchImage.launchimage │ │ └── Contents.json │ ├── Info.plist │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── LogTest ├── LogTest.xcodeproj │ └── project.pbxproj └── LogTest │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Default-568h@2x.png │ ├── Default.png │ ├── Default@2x.png │ ├── LogTest-Info.plist │ ├── LogTest-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ ├── InfoPlist.strings │ └── MainStoryboard.storyboard │ └── main.m ├── MinMaxLineHeightBug ├── minmaxlineheightbug.xcodeproj │ └── project.pbxproj └── minmaxlineheightbug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Default-568h@2x.png │ ├── Default.png │ ├── Default@2x.png │ ├── NSHTMLWriter.h │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ ├── InfoPlist.strings │ └── ViewController.xib │ ├── main.m │ ├── minmaxlineheightbug-Info.plist │ └── minmaxlineheightbug-Prefix.pch ├── NSDictionaryCGRectParsing ├── NSDictionaryCGRectParsing.xcodeproj │ └── project.pbxproj ├── NSDictionaryCGRectParsing │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Default-568h@2x.png │ ├── Default.png │ ├── Default@2x.png │ ├── NSDictionaryCGRectParsing-Info.plist │ ├── NSDictionaryCGRectParsing-Prefix.pch │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m └── NSDictionaryCGRectParsingTests │ ├── NSDictionaryCGRectParsingTests-Info.plist │ ├── NSDictionaryCGRectParsingTests.h │ ├── NSDictionaryCGRectParsingTests.m │ ├── en.lproj │ └── InfoPlist.strings │ ├── rect.plist │ └── rect_modified_by_xcode45.plist ├── PickerBug ├── PickerBug.xcodeproj │ └── project.pbxproj └── PickerBug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ ├── LaunchScreen.xib │ └── Main.storyboard │ ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Info.plist │ ├── Sample.png │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── PrefetchingSample ├── PrefetchingSample.xcodeproj │ └── project.pbxproj └── PrefetchingSample │ ├── AppDelegate.swift │ ├── Assets.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard │ ├── Info.plist │ ├── MyCollectionViewCell.swift │ └── ViewController.swift ├── ProgressBug ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json ├── ContentView.swift ├── Preview Content │ └── Preview Assets.xcassets │ │ └── Contents.json ├── ProgressBug.xcodeproj │ └── project.pbxproj └── ProgressBugApp.swift ├── QuickLookBug ├── qltest.xcodeproj │ └── project.pbxproj └── qltest │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Default-568h@2x.png │ ├── Default.png │ ├── Default@2x.png │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ ├── InfoPlist.strings │ └── ViewController.xib │ ├── main.m │ ├── qltest-Info.plist │ └── qltest-Prefix.pch ├── README.md ├── RelationBug ├── relationbug.xcodeproj │ └── project.pbxproj └── relationbug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── ErrorSwitchHeaderView.h │ ├── ErrorSwitchHeaderView.m │ ├── Message.h │ ├── Message.m │ ├── MessageViewController.h │ ├── MessageViewController.m │ ├── Model.xcdatamodeld │ ├── .xccurrentversion │ └── Model.xcdatamodel │ │ └── contents │ ├── NSString+DTPaths.h │ ├── NSString+DTPaths.m │ ├── Timeline.h │ ├── Timeline.m │ ├── TimelineViewController.h │ ├── TimelineViewController.m │ ├── en.lproj │ └── InfoPlist.strings │ ├── main.m │ ├── relationbug-Info.plist │ └── relationbug-Prefix.pch ├── RoundedRectArtifact ├── RoundedRectArtifact.xcodeproj │ └── project.pbxproj └── RoundedRectArtifact │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ └── Main.storyboard │ ├── RoundedRectArtifact-Info.plist │ ├── RoundedRectArtifact-Prefix.pch │ ├── UIImage+Test.h │ ├── UIImage+Test.m │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── ScanAreaBug ├── ScanAreaBug.xcodeproj │ └── project.pbxproj └── ScanAreaBug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── DTCodeScannerView.h │ ├── DTCodeScannerView.m │ ├── DTCodeScannerViewController.h │ ├── DTCodeScannerViewController.m │ ├── Images.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── LaunchImage.launchimage │ │ └── Contents.json │ ├── ScanAreaBug-Info.plist │ ├── ScanAreaBug-Prefix.pch │ └── main.m ├── SheetTest ├── SheetTest.xcodeproj │ └── project.pbxproj └── SheetTest │ ├── AppDelegate.swift │ ├── Assets.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Base.lproj │ └── Main.storyboard │ ├── Info.plist │ ├── SheetViewController.swift │ └── ViewController.swift ├── SizeClassBug ├── SizeClassBug.xcodeproj │ └── project.pbxproj └── SizeClassBug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ ├── LaunchScreen.xib │ └── Main.storyboard │ ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Info.plist │ ├── SecondViewController.h │ ├── SecondViewController.m │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── StatusBarBug ├── Classes │ ├── StatusBarBugAppDelegate.h │ ├── StatusBarBugAppDelegate.m │ ├── StatusBarBugViewController.h │ └── StatusBarBugViewController.m ├── MainWindow.xib ├── StatusBarBug-Info.plist ├── StatusBarBug.xcodeproj │ └── project.pbxproj ├── StatusBarBugViewController.xib ├── StatusBarBug_Prefix.pch └── main.m ├── StoreKitSheetTest ├── StoreKitSheetTest.xcodeproj │ └── project.pbxproj └── StoreKitSheetTest │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ ├── LaunchScreen.xib │ └── Main.storyboard │ ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Info.plist │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── StoreKitVCBug ├── StoreKitVCBug.xcodeproj │ └── project.pbxproj └── StoreKitVCBug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ ├── LaunchScreen.xib │ └── Main.storyboard │ ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Info.plist │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── TableViewContentInsetDifferent ├── README.md ├── TableViewSample.xcodeproj │ └── project.pbxproj └── TableViewSample │ ├── AppDelegate.swift │ ├── Assets.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard │ ├── Info.plist │ └── ViewController.swift ├── TextFieldColor ├── TextFieldColor.xcodeproj │ └── project.pbxproj └── TextFieldColor │ ├── AppDelegate.swift │ ├── Assets.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard │ ├── Info.plist │ └── ViewController.swift ├── TextViewScrollBug ├── TextViewScrollBug.xcodeproj │ └── project.pbxproj └── TextViewScrollBug │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ ├── LaunchScreen.xib │ └── Main.storyboard │ ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Info.plist │ ├── ViewController.h │ ├── ViewController.m │ ├── defaultnote.txt │ └── main.m ├── TextfieldInReorderableList ├── TextfieldInReorderableList.xcodeproj │ └── project.pbxproj └── TextfieldInReorderableList │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── Preview Content │ └── Preview Assets.xcassets │ │ └── Contents.json │ └── TextfieldInReorderableListApp.swift ├── TransitionTest ├── .gitignore ├── TransitionTest.xcodeproj │ └── project.pbxproj └── TransitionTest │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ ├── LaunchScreen.xib │ └── Main.storyboard │ ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json │ ├── Info.plist │ ├── ModalTransitionManager.h │ ├── ModalTransitionManager.m │ ├── ModalViewController.h │ ├── ModalViewController.m │ ├── ViewController.h │ ├── ViewController.m │ └── main.m ├── UIColorStrokeCrash ├── UIColorStrokeCrash.xcodeproj │ └── project.pbxproj └── UIColorStrokeCrash │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ └── Main.storyboard │ ├── ContentView.h │ ├── ContentView.m │ ├── Images.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── LaunchImage.launchimage │ │ └── Contents.json │ ├── UIColorStrokeCrash-Info.plist │ ├── UIColorStrokeCrash-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ └── InfoPlist.strings │ └── main.m ├── UIFontDemo ├── UIFontDemo.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ ├── UnitTest w │ │ └── o Host.xcscheme │ │ ├── UnitTest with Host.xcscheme │ │ └── UnitTest without Host.xcscheme ├── UIFontDemo │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Default-568h@2x.png │ ├── Default.png │ ├── Default@2x.png │ ├── UIFontDemo-Info.plist │ ├── UIFontDemo-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ │ ├── InfoPlist.strings │ │ └── MainStoryboard.storyboard │ └── main.m └── UnitTest │ ├── UnitTest-Info.plist │ ├── UnitTest-Prefix.pch │ ├── UnitTest.h │ └── UnitTest.m ├── UnitTestsTest ├── Test │ └── Core │ │ ├── MacUnitTest-Prefix.pch │ │ ├── Source │ │ ├── MacUnitTest.m │ │ └── UnitTest.m │ │ ├── UnitTest-Info.plist │ │ └── UnitTest-Prefix.pch ├── TestApp │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ └── Main.storyboard │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── TestApp-Info.plist │ ├── TestApp-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m └── UnitTestsTest.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ └── xcschemes │ ├── MacUnitTest.xcscheme │ ├── TestApp.xcscheme │ └── UnitTest.xcscheme ├── WidgetTabCellTest ├── WidgetTabCellTest.xcodeproj │ └── project.pbxproj ├── WidgetTabCellTest │ ├── AppDelegate.swift │ ├── Assets.xcassets │ │ └── AppIcon.appiconset │ │ │ └── Contents.json │ ├── Base.lproj │ │ ├── LaunchScreen.storyboard │ │ └── Main.storyboard │ └── Info.plist └── WidgetTabCellToday │ ├── Base.lproj │ └── MainInterface.storyboard │ ├── Info.plist │ └── TodayViewController.swift └── WrongWdithWithConstraints ├── WrongWdithWithConstraints.xcodeproj └── project.pbxproj └── WrongWdithWithConstraints ├── AppDelegate.swift ├── Assets.xcassets └── AppIcon.appiconset │ └── Contents.json ├── Base.lproj ├── LaunchScreen.storyboard └── Main.storyboard ├── BundleDetailCell.xib ├── Info.plist └── ViewController.swift /.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | .DS_Store 3 | build/ 4 | *.pbxuser 5 | !default.pbxuser 6 | *.mode1v3 7 | !default.mode1v3 8 | *.mode2v3 9 | !default.mode2v3 10 | *.perspectivev3 11 | !default.perspectivev3 12 | *.xcworkspace 13 | !default.xcworkspace 14 | xcuserdata 15 | profile 16 | *.moved-aside 17 | DerivedData 18 | .idea/ 19 | -------------------------------------------------------------------------------- /ABUnknownPersionViewControllerBug/ABUnknownPersionViewControllerBug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // ABUnknownPersionViewControllerBug 4 | // 5 | // Created by Oliver Drobnik on 18/06/15. 6 | // Copyright © 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /ABUnknownPersionViewControllerBug/ABUnknownPersionViewControllerBug/AppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.m 3 | // ABUnknownPersionViewControllerBug 4 | // 5 | // Created by Oliver Drobnik on 18/06/15. 6 | // Copyright © 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "AppDelegate.h" 10 | 11 | @implementation AppDelegate 12 | 13 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 14 | { 15 | return YES; 16 | } 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /ABUnknownPersionViewControllerBug/ABUnknownPersionViewControllerBug/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /ABUnknownPersionViewControllerBug/ABUnknownPersionViewControllerBug/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /ABUnknownPersionViewControllerBug/ABUnknownPersionViewControllerBug/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // ABUnknownPersionViewControllerBug 4 | // 5 | // Created by Oliver Drobnik on 18/06/15. 6 | // Copyright © 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /ABUnknownPersionViewControllerBug/ABUnknownPersionViewControllerBug/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // ABUnknownPersionViewControllerBug 4 | // 5 | // Created by Oliver Drobnik on 18/06/15. 6 | // Copyright © 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | @import AddressBookUI; 10 | 11 | #import "ViewController.h" 12 | 13 | // create an ABRecord for testing 14 | ABRecordRef testPerson() 15 | { 16 | ABRecordRef person = ABPersonCreate(); 17 | 18 | ABMutableMultiValueRef phoneNumbers = ABMultiValueCreateMutable(kABMultiStringPropertyType); 19 | 20 | ABMultiValueAddValueAndLabel(phoneNumbers, (__bridge CFStringRef)@"+4369910010110", kABPersonPhoneMainLabel, NULL); 21 | ABRecordSetValue(person, kABPersonPhoneProperty, phoneNumbers, nil); 22 | 23 | ABRecordSetValue(person, kABPersonFirstNameProperty,(__bridge CFTypeRef)@"Oliver", NULL); 24 | ABRecordSetValue(person, kABPersonLastNameProperty, (__bridge CFTypeRef)@"Drobnik", NULL); 25 | ABRecordSetValue(person, kABPersonOrganizationProperty, (__bridge CFTypeRef)@"Cocoanetics.com", NULL); 26 | CFRelease(phoneNumbers); 27 | 28 | return person; 29 | } 30 | 31 | @implementation ViewController 32 | 33 | - (IBAction)showPerson:(id)sender 34 | { 35 | ABRecordRef person = testPerson(); 36 | 37 | ABUnknownPersonViewController *unk = [ABUnknownPersonViewController new]; 38 | unk.allowsAddingToAddressBook = YES; 39 | unk.allowsActions = YES; 40 | unk.navigationItem.title = @"Who is that?"; 41 | unk.displayedPerson = person; 42 | CFRelease(person); 43 | 44 | [self.navigationController pushViewController:unk animated:YES]; 45 | } 46 | 47 | @end 48 | -------------------------------------------------------------------------------- /ABUnknownPersionViewControllerBug/ABUnknownPersionViewControllerBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // ABUnknownPersionViewControllerBug 4 | // 5 | // Created by Oliver Drobnik on 18/06/15. 6 | // Copyright © 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ARCBugCGColor/arc_bug_CGColor/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // arc_bug_CGColor 4 | // 5 | // Created by Oliver Drobnik on 6/21/12. 6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class ViewController; 12 | 13 | @interface AppDelegate : UIResponder 14 | 15 | @property (strong, nonatomic) UIWindow *window; 16 | 17 | @property (strong, nonatomic) ViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /ARCBugCGColor/arc_bug_CGColor/BuggyView.h: -------------------------------------------------------------------------------- 1 | // 2 | // BuggyView.h 3 | // arc_bug_CGColor 4 | // 5 | // Created by Oliver Drobnik on 6/21/12. 6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BuggyView : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ARCBugCGColor/arc_bug_CGColor/BuggyView.m: -------------------------------------------------------------------------------- 1 | // 2 | // BuggyView.m 3 | // arc_bug_CGColor 4 | // 5 | // Created by Oliver Drobnik on 6/21/12. 6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "BuggyView.h" 10 | 11 | @implementation BuggyView 12 | 13 | - (id)initWithFrame:(CGRect)frame 14 | { 15 | self = [super initWithFrame:frame]; 16 | if (self) { 17 | // Initialization code 18 | } 19 | return self; 20 | } 21 | 22 | - (void)drawRect:(CGRect)rect 23 | { 24 | CGContextRef ctx = UIGraphicsGetCurrentContext(); 25 | 26 | CGColorRef topColor = [UIColor colorWithRed:147.0/255.0 green:247.0/255.0 blue:247.0/255.0 alpha:1.0].CGColor; 27 | CGColorRef bottomColor = [UIColor colorWithRed:254.0/255.0 green:204.0/255.0 blue:209.0/255.0 alpha:1.0].CGColor; 28 | 29 | 30 | // Fill the background with a gradient 31 | CGFloat gradientLocations[2] = { 1.0, 0.0 }; 32 | CGColorRef fillColors[2] = {bottomColor, topColor}; 33 | CFArrayRef fillColorsArray = CFArrayCreate(NULL, (void *)fillColors, 2, &kCFTypeArrayCallBacks); 34 | CGGradientRef gradient = CGGradientCreateWithColors(NULL, fillColorsArray, gradientLocations); 35 | CGContextDrawLinearGradient(ctx, gradient, CGPointZero,CGPointMake(0, self.bounds.size.height), 0); 36 | 37 | CGGradientRelease(gradient); 38 | CFRelease(fillColorsArray); 39 | 40 | // draw bottom line 41 | 42 | CGContextMoveToPoint(ctx, 0, rect.size.height); 43 | CGContextAddLineToPoint(ctx, rect.size.width, rect.size.height); 44 | 45 | CGContextSetRGBStrokeColor(ctx, 163.0/255.0, 167.0/255.0, 176.0/255.0, 1.0); 46 | CGContextSetLineWidth(ctx, 1.5); 47 | CGContextStrokePath(ctx); 48 | } 49 | 50 | @end 51 | -------------------------------------------------------------------------------- /ARCBugCGColor/arc_bug_CGColor/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // arc_bug_CGColor 4 | // 5 | // Created by Oliver Drobnik on 6/21/12. 6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ARCBugCGColor/arc_bug_CGColor/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // arc_bug_CGColor 4 | // 5 | // Created by Oliver Drobnik on 6/21/12. 6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | #import "BuggyView.h" 11 | 12 | @interface ViewController () 13 | 14 | @end 15 | 16 | @implementation ViewController 17 | 18 | - (void)loadView 19 | { 20 | self.view = [[BuggyView alloc] init]; 21 | } 22 | 23 | - (void)viewDidLoad 24 | { 25 | [super viewDidLoad]; 26 | // Do any additional setup after loading the view, typically from a nib. 27 | } 28 | 29 | - (void)viewDidUnload 30 | { 31 | [super viewDidUnload]; 32 | // Release any retained subviews of the main view. 33 | } 34 | 35 | - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 36 | { 37 | if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) { 38 | return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown); 39 | } else { 40 | return YES; 41 | } 42 | } 43 | 44 | @end 45 | -------------------------------------------------------------------------------- /ARCBugCGColor/arc_bug_CGColor/arc_bug_CGColor-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'arc_bug_CGColor' target in the 'arc_bug_CGColor' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ARCBugCGColor/arc_bug_CGColor/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ARCBugCGColor/arc_bug_CGColor/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // arc_bug_CGColor 4 | // 5 | // Created by Oliver Drobnik on 6/21/12. 6 | // Copyright (c) 2012 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ActionsBug/ActionsBug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // ActionsBug 4 | // 5 | // Created by Oliver Drobnik on 08/01/15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /ActionsBug/ActionsBug/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /ActionsBug/ActionsBug/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.productlayer.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /ActionsBug/ActionsBug/TableViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // TableViewController.h 3 | // ActionsBug 4 | // 5 | // Created by Oliver Drobnik on 08/01/15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface TableViewController : UITableViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ActionsBug/ActionsBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // ActionsBug 4 | // 5 | // Created by Oliver Drobnik on 08/01/15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /AutomaticHeightBug/AutomaticHeightBug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // AutomaticHeightBug 4 | // 5 | // Created by Oliver Drobnik on 14/08/15. 6 | // Copyright (c) 2015 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /AutomaticHeightBug/AutomaticHeightBug/EventCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // EventCell.h 3 | // EmmiView 4 | // 5 | // Created by Oliver Drobnik on 08/05/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface EventCell : UITableViewCell 12 | @property (weak, nonatomic) IBOutlet UILabel *dateLabel; 13 | @property (weak, nonatomic) IBOutlet UILabel *descriptionLabel; 14 | @property (weak, nonatomic) IBOutlet UILabel *fromTimeLabel; 15 | @property (weak, nonatomic) IBOutlet UILabel *untilTimeLabel; 16 | @property (weak, nonatomic) IBOutlet UILabel *locationLabel; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /AutomaticHeightBug/AutomaticHeightBug/EventCell.m: -------------------------------------------------------------------------------- 1 | // 2 | // EventCell.m 3 | // EmmiView 4 | // 5 | // Created by Oliver Drobnik on 08/05/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "EventCell.h" 10 | 11 | @implementation EventCell 12 | 13 | - (void)awakeFromNib { 14 | // Initialization code 15 | } 16 | 17 | - (void)setSelected:(BOOL)selected animated:(BOOL)animated { 18 | [super setSelected:selected animated:animated]; 19 | 20 | // Configure the view for the selected state 21 | } 22 | 23 | - (void)prepareForReuse 24 | { 25 | self.descriptionLabel.text = nil; 26 | self.locationLabel.text = nil; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /AutomaticHeightBug/AutomaticHeightBug/EventsViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // EventsViewController.h 3 | // EmmiView 4 | // 5 | // Created by Oliver Drobnik on 08/05/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | @import UIKit; 10 | 11 | @interface EventsViewController : UITableViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /AutomaticHeightBug/AutomaticHeightBug/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "ipad", 35 | "size" : "29x29", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "ipad", 40 | "size" : "29x29", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "40x40", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "ipad", 50 | "size" : "40x40", 51 | "scale" : "2x" 52 | }, 53 | { 54 | "idiom" : "ipad", 55 | "size" : "76x76", 56 | "scale" : "1x" 57 | }, 58 | { 59 | "idiom" : "ipad", 60 | "size" : "76x76", 61 | "scale" : "2x" 62 | } 63 | ], 64 | "info" : { 65 | "version" : 1, 66 | "author" : "xcode" 67 | } 68 | } -------------------------------------------------------------------------------- /AutomaticHeightBug/AutomaticHeightBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // AutomaticHeightBug 4 | // 5 | // Created by Oliver Drobnik on 14/08/15. 6 | // Copyright (c) 2015 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /CATiledLayerMemory/CATiledLayerMemory/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // CATiledLayerMemory 4 | // 5 | // Created by Oliver Drobnik on 9/8/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /CATiledLayerMemory/CATiledLayerMemory/CATiledLayerMemory-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.cocoanetics.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /CATiledLayerMemory/CATiledLayerMemory/CATiledLayerMemory-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | #endif 17 | -------------------------------------------------------------------------------- /CATiledLayerMemory/CATiledLayerMemory/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "40x40", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "60x60", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /CATiledLayerMemory/CATiledLayerMemory/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /CATiledLayerMemory/CATiledLayerMemory/TiledContentView.h: -------------------------------------------------------------------------------- 1 | // 2 | // TiledContentView.h 3 | // CATiledLayerMemory 4 | // 5 | // Created by Oliver Drobnik on 9/8/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface TiledContentView : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /CATiledLayerMemory/CATiledLayerMemory/TiledContentView.m: -------------------------------------------------------------------------------- 1 | // 2 | // TiledContentView.m 3 | // CATiledLayerMemory 4 | // 5 | // Created by Oliver Drobnik on 9/8/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import "TiledContentView.h" 10 | 11 | @implementation TiledContentView 12 | 13 | - (void)awakeFromNib 14 | { 15 | // set tile size if applicable 16 | CATiledLayer *layer = (id)self.layer; 17 | 18 | // this way tiles cover entire screen regardless of orientation or scale 19 | CGSize tileSize = CGSizeMake(360, 360); 20 | layer.tileSize = tileSize; 21 | } 22 | 23 | + (Class)layerClass 24 | { 25 | return [CATiledLayer class]; 26 | } 27 | 28 | - (void)drawLayer:(CALayer *)layer inContext:(CGContextRef)ctx 29 | { 30 | CGRect rect = CGContextGetClipBoundingBox(ctx); 31 | 32 | // random color 33 | CGFloat red = (arc4random()%256)/256.0; 34 | CGFloat green = (arc4random()%256)/256.0; 35 | CGFloat blue = (arc4random()%256)/256.0; 36 | 37 | CGContextSetRGBFillColor(ctx, red, green, blue, 1); 38 | CGContextFillRect(ctx, rect); 39 | 40 | CGContextSetGrayStrokeColor(ctx, 0, 1); 41 | CGContextStrokeRect(ctx, rect); 42 | } 43 | 44 | @end 45 | -------------------------------------------------------------------------------- /CATiledLayerMemory/CATiledLayerMemory/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // CATiledLayerMemory 4 | // 5 | // Created by Oliver Drobnik on 9/8/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "TiledContentView.h" 11 | 12 | @interface ViewController : UIViewController 13 | @property (strong, nonatomic) IBOutlet UIScrollView *scrollView; 14 | 15 | @property (weak, nonatomic) IBOutlet TiledContentView *contentView; 16 | @end 17 | -------------------------------------------------------------------------------- /CATiledLayerMemory/CATiledLayerMemory/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // CATiledLayerMemory 4 | // 5 | // Created by Oliver Drobnik on 9/8/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | #import "TiledContentView.h" 11 | 12 | 13 | @interface UIApplication() 14 | 15 | - (void)_performMemoryWarning; 16 | 17 | @end 18 | 19 | 20 | @interface ViewController () 21 | 22 | @end 23 | 24 | @implementation ViewController 25 | 26 | - (void)viewDidLoad 27 | { 28 | [super viewDidLoad]; 29 | // Do any additional setup after loading the view, typically from a nib. 30 | 31 | _scrollView.scrollEnabled = YES; 32 | _scrollView.minimumZoomScale = 1.0; 33 | _scrollView.maximumZoomScale = 1.0; 34 | _scrollView.userInteractionEnabled = YES; 35 | _contentView.userInteractionEnabled = NO; 36 | 37 | CGSize contentSize = CGSizeMake(self.view.bounds.size.width, 100000); 38 | 39 | _contentView.frame = (CGRect){CGPointZero, contentSize}; 40 | _scrollView.contentSize = contentSize; 41 | } 42 | 43 | @end 44 | -------------------------------------------------------------------------------- /CATiledLayerMemory/CATiledLayerMemory/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /CATiledLayerMemory/CATiledLayerMemory/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // CATiledLayerMemory 4 | // 5 | // Created by Oliver Drobnik on 9/8/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char * argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /CollectionViewMoveBug/CollectionViewMoveBug/AppDelegate.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.swift 3 | // CollectionViewMoveBug 4 | // 5 | // Created by Stefan Gugarel on 16/09/2016. 6 | // Copyright © 2016 Stefan Gugarel. All rights reserved. 7 | // 8 | 9 | import Cocoa 10 | 11 | @NSApplicationMain 12 | class AppDelegate: NSObject, NSApplicationDelegate { 13 | 14 | } 15 | 16 | -------------------------------------------------------------------------------- /CollectionViewMoveBug/CollectionViewMoveBug/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "mac", 5 | "size" : "16x16", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "mac", 10 | "size" : "16x16", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "mac", 15 | "size" : "32x32", 16 | "scale" : "1x" 17 | }, 18 | { 19 | "idiom" : "mac", 20 | "size" : "32x32", 21 | "scale" : "2x" 22 | }, 23 | { 24 | "idiom" : "mac", 25 | "size" : "128x128", 26 | "scale" : "1x" 27 | }, 28 | { 29 | "idiom" : "mac", 30 | "size" : "128x128", 31 | "scale" : "2x" 32 | }, 33 | { 34 | "idiom" : "mac", 35 | "size" : "256x256", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "mac", 40 | "size" : "256x256", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "mac", 45 | "size" : "512x512", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "mac", 50 | "size" : "512x512", 51 | "scale" : "2x" 52 | } 53 | ], 54 | "info" : { 55 | "version" : 1, 56 | "author" : "xcode" 57 | } 58 | } -------------------------------------------------------------------------------- /CollectionViewMoveBug/CollectionViewMoveBug/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | $(PRODUCT_NAME) 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleVersion 22 | 1 23 | LSMinimumSystemVersion 24 | $(MACOSX_DEPLOYMENT_TARGET) 25 | NSHumanReadableCopyright 26 | Copyright © 2016 Stefan Gugarel. All rights reserved. 27 | NSMainStoryboardFile 28 | Main 29 | NSPrincipalClass 30 | NSApplication 31 | 32 | 33 | -------------------------------------------------------------------------------- /CollectionViewMoveBug/CollectionViewMoveBug/LabelCollectionViewItem.swift: -------------------------------------------------------------------------------- 1 | // 2 | // LabelCollectionViewItem.swift 3 | // CollectionViewMoveBug 4 | // 5 | // Created by Stefan Gugarel on 16/09/2016. 6 | // Copyright © 2016 Stefan Gugarel. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | import AppKit 11 | 12 | class LabelCollectionViewItem: NSCollectionViewItem { 13 | 14 | // MARK: outlets 15 | 16 | @IBOutlet weak var label: NSTextField! 17 | } 18 | 19 | -------------------------------------------------------------------------------- /CompositionBug/CompositionBug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // CompositionBug 4 | // 5 | // Created by Oliver Drobnik on 14/01/15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /CompositionBug/CompositionBug/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /CompositionBug/CompositionBug/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.productlayer.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /CompositionBug/CompositionBug/PhotoScrollView.h: -------------------------------------------------------------------------------- 1 | // 2 | // PhotoScrollView.h 3 | // ProductLayyer 4 | // 5 | // Created by Oliver Drobnik on 17.07.14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | 12 | /** 13 | A Photo Viewer supporting both pinch-to-zoom and Motion Tilt. 14 | */ 15 | 16 | 17 | @interface PhotoScrollView : UIScrollView 18 | 19 | /** 20 | The image to show in the scroll view 21 | */ 22 | @property (nonatomic, strong) UIImage *image; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /CompositionBug/CompositionBug/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // CompositionBug 4 | // 5 | // Created by Oliver Drobnik on 14/01/15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class PhotoScrollView; 12 | 13 | @interface ViewController : UIViewController 14 | 15 | @property (weak, nonatomic) IBOutlet PhotoScrollView *scrollView; 16 | 17 | @end 18 | 19 | -------------------------------------------------------------------------------- /CompositionBug/CompositionBug/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // CompositionBug 4 | // 5 | // Created by Oliver Drobnik on 14/01/15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | 11 | @interface ViewController () 12 | 13 | @end 14 | 15 | @implementation ViewController 16 | 17 | - (void)viewDidLoad { 18 | [super viewDidLoad]; 19 | // Do any additional setup after loading the view, typically from a nib. 20 | } 21 | 22 | - (void)didReceiveMemoryWarning { 23 | [super didReceiveMemoryWarning]; 24 | // Dispose of any resources that can be recreated. 25 | } 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /CompositionBug/CompositionBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // CompositionBug 4 | // 5 | // Created by Oliver Drobnik on 14/01/15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /CompositionBug/CompositionBug/sample.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/CompositionBug/CompositionBug/sample.jpg -------------------------------------------------------------------------------- /CompositionBug/CompositionBugTests/CompositionBugTests.m: -------------------------------------------------------------------------------- 1 | // 2 | // CompositionBugTests.m 3 | // CompositionBugTests 4 | // 5 | // Created by Oliver Drobnik on 14/01/15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface CompositionBugTests : XCTestCase 13 | 14 | @end 15 | 16 | @implementation CompositionBugTests 17 | 18 | - (void)setUp { 19 | [super setUp]; 20 | // Put setup code here. This method is called before the invocation of each test method in the class. 21 | } 22 | 23 | - (void)tearDown { 24 | // Put teardown code here. This method is called after the invocation of each test method in the class. 25 | [super tearDown]; 26 | } 27 | 28 | - (void)testExample { 29 | // This is an example of a functional test case. 30 | XCTAssert(YES, @"Pass"); 31 | } 32 | 33 | - (void)testPerformanceExample { 34 | // This is an example of a performance test case. 35 | [self measureBlock:^{ 36 | // Put the code you want to measure the time of here. 37 | }]; 38 | } 39 | 40 | @end 41 | -------------------------------------------------------------------------------- /CompositionBug/CompositionBugTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.productlayer.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /ContainerViewDemo/ModalViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ModalViewController.h 3 | // containerviewdemo 4 | // 5 | // Created by Oliver Drobnik on 17.06.12. 6 | // Copyright (c) 2012 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef void (^DismissingBlock)(void); 12 | 13 | @interface ModalViewController : UIViewController 14 | 15 | @property (nonatomic, copy) DismissingBlock dismissingBlock; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /ContainerViewDemo/containerviewdemo/DTAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // DTAppDelegate.h 3 | // containerviewdemo 4 | // 5 | // Created by Oliver Drobnik on 17.06.12. 6 | // Copyright (c) 2012 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class RootViewController; 12 | 13 | @interface DTAppDelegate : UIResponder 14 | 15 | @property (strong, nonatomic) UIWindow *window; 16 | 17 | @property (strong, nonatomic) RootViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /ContainerViewDemo/containerviewdemo/RootViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // RootViewController.h 3 | // containerviewdemo 4 | // 5 | // Created by Oliver Drobnik on 17.06.12. 6 | // Copyright (c) 2012 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface RootViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ContainerViewDemo/containerviewdemo/containerviewdemo-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'containerviewdemo' target in the 'containerviewdemo' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ContainerViewDemo/containerviewdemo/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // containerviewdemo 4 | // 5 | // Created by Oliver Drobnik on 17.06.12. 6 | // Copyright (c) 2012 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "DTAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([DTAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /CoreTextLineOrigins/CoreTextLineOrigins/CoreTextLineOrigins-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'CoreTextLineOrigins' target in the 'CoreTextLineOrigins' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #import 15 | #endif 16 | -------------------------------------------------------------------------------- /CoreTextLineOrigins/CoreTextLineOrigins/DTAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // DTAppDelegate.h 3 | // CoreTextLineOrigins 4 | // 5 | // Created by Oliver Drobnik on 05.02.12. 6 | // Copyright (c) 2012 Drobnik KG. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class DTViewController; 12 | 13 | @interface DTAppDelegate : UIResponder 14 | 15 | @property (strong, nonatomic) UIWindow *window; 16 | 17 | @property (strong, nonatomic) DTViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /CoreTextLineOrigins/CoreTextLineOrigins/DTViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // DTViewController.h 3 | // CoreTextLineOrigins 4 | // 5 | // Created by Oliver Drobnik on 05.02.12. 6 | // Copyright (c) 2012 Drobnik KG. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DTViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /CoreTextLineOrigins/CoreTextLineOrigins/TextView.h: -------------------------------------------------------------------------------- 1 | // 2 | // TextView.h 3 | // CoreTextLineOrigins 4 | // 5 | // Created by Oliver Drobnik on 05.02.12. 6 | // Copyright (c) 2012 Drobnik KG. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface TextView : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /CoreTextLineOrigins/CoreTextLineOrigins/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /CoreTextLineOrigins/CoreTextLineOrigins/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // CoreTextLineOrigins 4 | // 5 | // Created by Oliver Drobnik on 05.02.12. 6 | // Copyright (c) 2012 Drobnik KG. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "DTAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([DTAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /DTCoreTextExceptionExample/.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | .DS_Store 3 | build/ 4 | *.pbxuser 5 | !default.pbxuser 6 | *.mode1v3 7 | !default.mode1v3 8 | *.mode2v3 9 | !default.mode2v3 10 | *.perspectivev3 11 | !default.perspectivev3 12 | *.xcworkspace 13 | !default.xcworkspace 14 | xcuserdata 15 | profile 16 | *.moved-aside 17 | DerivedData 18 | .idea/ 19 | -------------------------------------------------------------------------------- /DTCoreTextExceptionExample/Podfile: -------------------------------------------------------------------------------- 1 | platform :ios, '5.0' 2 | pod 'DTCoreText', :git => 'https://github.com/Cocoanetics/DTCoreText.git', :commit => '171817ea5b75db96e9493a2f1b14564708bf9da4' 3 | pod 'DTFoundation', :git => 'https://github.com/Cocoanetics/DTFoundation.git', :commit => '3b137be7e35d6ec7914300eabb47f2421eac658a' 4 | -------------------------------------------------------------------------------- /DTCoreTextExceptionExample/TestDTCoreTextException/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // TestDTCoreTextException 4 | // 5 | // Created by Jesús on 21/09/13. 6 | // Copyright (c) 2013 Jesús. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /DTCoreTextExceptionExample/TestDTCoreTextException/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "40x40", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "60x60", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /DTCoreTextExceptionExample/TestDTCoreTextException/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /DTCoreTextExceptionExample/TestDTCoreTextException/TestDTCoreTextException-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.brovador.test.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /DTCoreTextExceptionExample/TestDTCoreTextException/TestDTCoreTextException-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | #endif 17 | -------------------------------------------------------------------------------- /DTCoreTextExceptionExample/TestDTCoreTextException/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // TestDTCoreTextException 4 | // 5 | // Created by Jesús on 21/09/13. 6 | // Copyright (c) 2013 Jesús. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | - (IBAction)createContent:(id)sender; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /DTCoreTextExceptionExample/TestDTCoreTextException/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /DTCoreTextExceptionExample/TestDTCoreTextException/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // TestDTCoreTextException 4 | // 5 | // Created by Jesús on 21/09/13. 6 | // Copyright (c) 2013 Jesús. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char * argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /DataDetectorAddressBug/DataDetectorAddressBug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // DataDetectorAddressBug 4 | // 5 | // Created by Oliver Drobnik on 15/04/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /DataDetectorAddressBug/DataDetectorAddressBug/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /DataDetectorAddressBug/DataDetectorAddressBug/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.cocoanetics.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationPortraitUpsideDown 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /DataDetectorAddressBug/DataDetectorAddressBug/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // DataDetectorAddressBug 4 | // 5 | // Created by Oliver Drobnik on 15/04/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @property (weak, nonatomic) IBOutlet UITextView *workingAddressTextView; 14 | @property (weak, nonatomic) IBOutlet UITextView *firstAddressTextView; 15 | @property (weak, nonatomic) IBOutlet UITextView *secondAddressTextView; 16 | 17 | @end 18 | 19 | -------------------------------------------------------------------------------- /DataDetectorAddressBug/DataDetectorAddressBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // DataDetectorAddressBug 4 | // 5 | // Created by Oliver Drobnik on 15/04/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /GeoCoderBug/GeoCoderBug/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /GeoCoderBug/GeoCoderBug/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.cocoanetics.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationPortraitUpsideDown 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /ImageLinkCrash/ImageLinkCrash/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /ImageLinkCrash/ImageLinkCrash/Assets.xcassets/ScalpelSi.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "ScalpelSi.jpg", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /ImageLinkCrash/ImageLinkCrash/Assets.xcassets/ScalpelSi.imageset/ScalpelSi.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/ImageLinkCrash/ImageLinkCrash/Assets.xcassets/ScalpelSi.imageset/ScalpelSi.jpg -------------------------------------------------------------------------------- /ImageLinkCrash/ImageLinkCrash/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | LSRequiresIPhoneOS 22 | 23 | UILaunchStoryboardName 24 | LaunchScreen 25 | UIMainStoryboardFile 26 | Main 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | UISupportedInterfaceOrientations~ipad 38 | 39 | UIInterfaceOrientationPortrait 40 | UIInterfaceOrientationPortraitUpsideDown 41 | UIInterfaceOrientationLandscapeLeft 42 | UIInterfaceOrientationLandscapeRight 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /ImageLinkCrash/ImageLinkCrash/ViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.swift 3 | // ImageLinkCrash 4 | // 5 | // Created by Stefan Gugarel on 28/07/2017. 6 | // Copyright © 2017 Stefan Gugarel. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class ViewController: UIViewController { 12 | 13 | @IBOutlet weak var textView: UITextView! 14 | 15 | override func viewDidLoad() { 16 | 17 | super.viewDidLoad() 18 | 19 | // Do any additional setup after loading the view, typically from a nib. 20 | let image = UIImage(named: "ScalpelSi") 21 | 22 | // Image attachment 23 | let textAttachment = NSTextAttachment() 24 | textAttachment.image = image 25 | 26 | // Create attributed string 27 | let attributedString = NSAttributedString(attachment: textAttachment) 28 | let mutableString = NSMutableAttributedString(attributedString: attributedString) 29 | 30 | // Add Link 31 | mutableString.addAttributes([NSLinkAttributeName : "http://www.cannondale.com/"], range: NSMakeRange(0, mutableString.length)) 32 | 33 | textView.attributedText = mutableString 34 | textView.isSelectable = true 35 | } 36 | } 37 | 38 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/AlternateInputViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // AlternateInputViewController.h 3 | // InputViewScrollViewBug 4 | // 5 | // Created by Oliver Drobnik on 5/9/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AlternateInputViewController : UITableViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // InputViewScrollViewBug 4 | // 5 | // Created by Oliver Drobnik on 5/9/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class ViewController; 12 | 13 | @interface AppDelegate : UIResponder 14 | 15 | @property (strong, nonatomic) UIWindow *window; 16 | 17 | @property (strong, nonatomic) ViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/DTTableView.h: -------------------------------------------------------------------------------- 1 | // 2 | // DTTableView.h 3 | // InputViewScrollViewBug 4 | // 5 | // Created by Oliver Drobnik on 5/9/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DTTableView : UITableView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/DTTableView.m: -------------------------------------------------------------------------------- 1 | // 2 | // DTTableView.m 3 | // InputViewScrollViewBug 4 | // 5 | // Created by Oliver Drobnik on 5/9/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import "DTTableView.h" 10 | 11 | @implementation DTTableView 12 | 13 | 14 | // set a breakpoint here to see the erroneous calling of setContentInset 15 | - (void)setContentInset:(UIEdgeInsets)contentInset 16 | { 17 | NSLog(@"DTTableView setContentInset %@:", NSStringFromUIEdgeInsets(contentInset)); 18 | [super setContentInset:contentInset]; 19 | } 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/InputViewScrollViewBug/InputViewScrollViewBug/Default-568h@2x.png -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/InputViewScrollViewBug/InputViewScrollViewBug/Default.png -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/InputViewScrollViewBug/InputViewScrollViewBug/Default@2x.png -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/EditableView.h: -------------------------------------------------------------------------------- 1 | // 2 | // EditableView.h 3 | // InputViewScrollViewBug 4 | // 5 | // Created by Oliver Drobnik on 5/9/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface EditableView : UITextView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/EditableView.m: -------------------------------------------------------------------------------- 1 | // 2 | // EditableView.m 3 | // InputViewScrollViewBug 4 | // 5 | // Created by Oliver Drobnik on 5/9/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import "EditableView.h" 10 | #import "AlternateInputViewController.h" 11 | 12 | @interface EditableView () 13 | 14 | @property (nonatomic, strong) AlternateInputViewController *alternateInputViewController; 15 | 16 | @end 17 | 18 | @implementation EditableView 19 | 20 | - (UIView *)inputView 21 | { 22 | if (!self.alternateInputViewController) 23 | { 24 | self.alternateInputViewController = [[AlternateInputViewController alloc] initWithStyle:UITableViewStyleGrouped]; 25 | } 26 | 27 | return (UIView *)self.alternateInputViewController.view; 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/InputViewScrollViewBug-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.drobnik.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/InputViewScrollViewBug-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'InputViewScrollViewBug' target in the 'InputViewScrollViewBug' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // InputViewScrollViewBug 4 | // 5 | // Created by Oliver Drobnik on 5/9/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // InputViewScrollViewBug 4 | // 5 | // Created by Oliver Drobnik on 5/9/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | #import "AlternateInputViewController.h" 11 | 12 | @interface ViewController () 13 | 14 | @property (nonatomic, strong) AlternateInputViewController *alternateInputViewController; 15 | 16 | @end 17 | 18 | @implementation ViewController 19 | 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /InputViewScrollViewBug/InputViewScrollViewBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // InputViewScrollViewBug 4 | // 5 | // Created by Oliver Drobnik on 5/9/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /InterfaceTest/InterfaceTest/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | $(DEVELOPMENT_LANGUAGE) 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | LSRequiresIPhoneOS 22 | 23 | UILaunchStoryboardName 24 | LaunchScreen 25 | UIMainStoryboardFile 26 | Main 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | UISupportedInterfaceOrientations~ipad 38 | 39 | UIInterfaceOrientationPortrait 40 | UIInterfaceOrientationPortraitUpsideDown 41 | UIInterfaceOrientationLandscapeLeft 42 | UIInterfaceOrientationLandscapeRight 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /InterfaceTest/InterfaceTest/InterfaceTest-Bridging-Header.h: -------------------------------------------------------------------------------- 1 | // 2 | // Use this file to import your target's public headers that you would like to expose to Swift. 3 | // 4 | 5 | -------------------------------------------------------------------------------- /InterfaceTest/InterfaceTest/ObjCViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ObjCViewController.h 3 | // InterfaceTest 4 | // 5 | // Created by Oliver Drobnik on 03.10.17. 6 | // Copyright © 2017 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ObjCViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /InterfaceTest/InterfaceTest/ObjCViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ObjCViewController.m 3 | // InterfaceTest 4 | // 5 | // Created by Oliver Drobnik on 03.10.17. 6 | // Copyright © 2017 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "ObjCViewController.h" 10 | @import Module; 11 | 12 | @implementation ObjCViewController 13 | 14 | - (void)viewDidLoad 15 | { 16 | [super viewDidLoad]; 17 | 18 | // Here you should see quick help on the class and the property, but don't. 19 | CustomView *cv = [[CustomView alloc] initWithFrame:CGRectZero]; 20 | cv.publicProperty = YES; 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /InterfaceTest/InterfaceTest/ViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.swift 3 | // InterfaceTest 4 | // 5 | // Created by Oliver Drobnik on 03.10.17. 6 | // Copyright © 2017 Cocoanetics. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | import Module 12 | 13 | class ViewController: UIViewController { 14 | 15 | override func viewDidLoad() { 16 | super.viewDidLoad() 17 | // Do any additional setup after loading the view, typically from a nib. 18 | 19 | let customClass = CustomView(frame: .zero) 20 | customClass.publicProperty = true 21 | } 22 | 23 | override func didReceiveMemoryWarning() { 24 | super.didReceiveMemoryWarning() 25 | // Dispose of any resources that can be recreated. 26 | } 27 | 28 | 29 | } 30 | 31 | -------------------------------------------------------------------------------- /InterfaceTest/Module/AncestorView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AncestorView.swift 3 | // Module 4 | // 5 | // Created by Oliver Drobnik on 03.10.17. 6 | // Copyright © 2017 Cocoanetics. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | /// This is a view that is an ancestor 12 | public class AncestorView: UIView 13 | { 14 | 15 | } 16 | -------------------------------------------------------------------------------- /InterfaceTest/Module/CustomView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // CustomView.swift 3 | // Module 4 | // 5 | // Created by Oliver Drobnik on 03.10.17. 6 | // Copyright © 2017 Cocoanetics. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | /// This is the description of the custom view 12 | @objc public class CustomView: AncestorView 13 | { 14 | /// This is an internal property 15 | var internalProperty = true 16 | 17 | /// This is a public property 18 | @objc public var publicProperty = true 19 | } 20 | -------------------------------------------------------------------------------- /InterfaceTest/Module/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | $(DEVELOPMENT_LANGUAGE) 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | $(CURRENT_PROJECT_VERSION) 21 | NSPrincipalClass 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /InterfaceTest/Module/Module.h: -------------------------------------------------------------------------------- 1 | // 2 | // Module.h 3 | // Module 4 | // 5 | // Created by Oliver Drobnik on 03.10.17. 6 | // Copyright © 2017 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for Module. 12 | FOUNDATION_EXPORT double ModuleVersionNumber; 13 | 14 | //! Project version string for Module. 15 | FOUNDATION_EXPORT const unsigned char ModuleVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | -------------------------------------------------------------------------------- /InterfaceTest/Module/ObjCViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ObjCViewController.h 3 | // Module 4 | // 5 | // Created by Oliver Drobnik on 03.10.17. 6 | // Copyright © 2017 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ObjCViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /InterfaceTest/Module/ObjCViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ObjCViewController.m 3 | // Module 4 | // 5 | // Created by Oliver Drobnik on 03.10.17. 6 | // Copyright © 2017 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "ObjCViewController.h" 10 | #import 11 | 12 | @implementation ObjCViewController 13 | 14 | - (void)viewDidLoad 15 | { 16 | [super viewDidLoad]; 17 | 18 | // Here you should see quick help on the class and the property, but don't. 19 | CustomView *cv = [[CustomView alloc] initWithFrame:CGRectZero]; 20 | cv.publicProperty = YES; 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /InterfaceTest/Module/SwiftViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // SwiftViewController.swift 3 | // Module 4 | // 5 | // Created by Oliver Drobnik on 03.10.17. 6 | // Copyright © 2017 Cocoanetics. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class SwiftViewController: UIViewController 12 | { 13 | override func viewDidLoad() 14 | { 15 | super.viewDidLoad() 16 | 17 | // here the quick help shows something on the class and property 18 | let customClass = CustomView(frame: .zero) 19 | customClass.publicProperty = true 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /KerningTest/KerningTest/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // KerningTest 4 | // 5 | // Created by Oliver Drobnik on 6/16/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class ViewController; 12 | 13 | @interface AppDelegate : UIResponder 14 | 15 | @property (strong, nonatomic) UIWindow *window; 16 | 17 | @property (strong, nonatomic) ViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /KerningTest/KerningTest/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/KerningTest/KerningTest/Default-568h@2x.png -------------------------------------------------------------------------------- /KerningTest/KerningTest/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/KerningTest/KerningTest/Default.png -------------------------------------------------------------------------------- /KerningTest/KerningTest/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/KerningTest/KerningTest/Default@2x.png -------------------------------------------------------------------------------- /KerningTest/KerningTest/KerningTest-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.drobnik.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /KerningTest/KerningTest/KerningTest-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'KerningTest' target in the 'KerningTest' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /KerningTest/KerningTest/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // KerningTest 4 | // 5 | // Created by Oliver Drobnik on 6/16/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @property (weak, nonatomic) IBOutlet UITextView *textView; 14 | @end 15 | -------------------------------------------------------------------------------- /KerningTest/KerningTest/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // KerningTest 4 | // 5 | // Created by Oliver Drobnik on 6/16/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | 11 | @interface ViewController () 12 | 13 | @end 14 | 15 | @implementation ViewController 16 | 17 | - (void)viewDidLoad 18 | { 19 | [super viewDidLoad]; 20 | 21 | // explanatory text is smaller 22 | NSDictionary *attributes = @{NSFontAttributeName: [UIFont systemFontOfSize:20]}; 23 | NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"Kerning Examples:\nTw\nAV\nWA\nWa\nTa\n\nThe second character should always be visible under some part of the first." attributes:attributes]; 24 | 25 | 26 | // make sample strings bigger and centered 27 | NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init]; 28 | paragraphStyle.alignment = NSTextAlignmentCenter; 29 | NSDictionary *sampleAttribs = @{NSFontAttributeName:[UIFont systemFontOfSize:50], NSParagraphStyleAttributeName: paragraphStyle}; 30 | [attributedString setAttributes:sampleAttribs range:NSMakeRange(18, 15)]; 31 | 32 | self.textView.attributedText = attributedString; 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /KerningTest/KerningTest/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /KerningTest/KerningTest/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // KerningTest 4 | // 5 | // Created by Oliver Drobnik on 6/16/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /LocalNotification/LocalNotification/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // LocalNotification 4 | // 5 | // Created by Oliver Drobnik on 21.08.14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /LocalNotification/LocalNotification/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "40x40", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "60x60", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /LocalNotification/LocalNotification/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /LocalNotification/LocalNotification/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.cocoanetics.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UIMainStoryboardFile 26 | Main 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /LocalNotification/LocalNotification/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // LocalNotification 4 | // 5 | // Created by Oliver Drobnik on 21.08.14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @property (weak, nonatomic) IBOutlet UILabel *checkLabel; 14 | 15 | - (IBAction)sendNote:(id)sender; 16 | 17 | @end 18 | 19 | -------------------------------------------------------------------------------- /LocalNotification/LocalNotification/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // LocalNotification 4 | // 5 | // Created by Oliver Drobnik on 21.08.14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /LogTest/LogTest/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // LogTest 4 | // 5 | // Created by Oliver Drobnik on 8/7/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /LogTest/LogTest/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/LogTest/LogTest/Default-568h@2x.png -------------------------------------------------------------------------------- /LogTest/LogTest/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/LogTest/LogTest/Default.png -------------------------------------------------------------------------------- /LogTest/LogTest/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/LogTest/LogTest/Default@2x.png -------------------------------------------------------------------------------- /LogTest/LogTest/LogTest-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.cocoanetics.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIMainStoryboardFile 28 | MainStoryboard 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /LogTest/LogTest/LogTest-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'LogTest' target in the 'LogTest' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /LogTest/LogTest/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // LogTest 4 | // 5 | // Created by Oliver Drobnik on 8/7/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /LogTest/LogTest/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // LogTest 4 | // 5 | // Created by Oliver Drobnik on 8/7/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | 11 | @interface ViewController () 12 | 13 | @end 14 | 15 | @implementation ViewController 16 | 17 | - (void)viewDidLoad 18 | { 19 | [super viewDidLoad]; 20 | // Do any additional setup after loading the view, typically from a nib. 21 | } 22 | 23 | - (void)didReceiveMemoryWarning 24 | { 25 | [super didReceiveMemoryWarning]; 26 | // Dispose of any resources that can be recreated. 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /LogTest/LogTest/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /LogTest/LogTest/en.lproj/MainStoryboard.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /LogTest/LogTest/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // LogTest 4 | // 5 | // Created by Oliver Drobnik on 8/7/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /MinMaxLineHeightBug/minmaxlineheightbug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // minmaxlineheightbug 4 | // 5 | // Created by Oliver Drobnik on 16.12.12. 6 | // Copyright (c) 2012 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class ViewController; 12 | 13 | @interface AppDelegate : UIResponder 14 | 15 | @property (strong, nonatomic) UIWindow *window; 16 | 17 | @property (strong, nonatomic) ViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /MinMaxLineHeightBug/minmaxlineheightbug/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/MinMaxLineHeightBug/minmaxlineheightbug/Default-568h@2x.png -------------------------------------------------------------------------------- /MinMaxLineHeightBug/minmaxlineheightbug/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/MinMaxLineHeightBug/minmaxlineheightbug/Default.png -------------------------------------------------------------------------------- /MinMaxLineHeightBug/minmaxlineheightbug/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/MinMaxLineHeightBug/minmaxlineheightbug/Default@2x.png -------------------------------------------------------------------------------- /MinMaxLineHeightBug/minmaxlineheightbug/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // minmaxlineheightbug 4 | // 5 | // Created by Oliver Drobnik on 16.12.12. 6 | // Copyright (c) 2012 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @property (weak, nonatomic) IBOutlet UITextView *textView; 14 | @property (weak, nonatomic) IBOutlet UITextView *htmlView; 15 | @end 16 | -------------------------------------------------------------------------------- /MinMaxLineHeightBug/minmaxlineheightbug/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /MinMaxLineHeightBug/minmaxlineheightbug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // minmaxlineheightbug 4 | // 5 | // Created by Oliver Drobnik on 16.12.12. 6 | // Copyright (c) 2012 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /MinMaxLineHeightBug/minmaxlineheightbug/minmaxlineheightbug-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.drobnik.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /MinMaxLineHeightBug/minmaxlineheightbug/minmaxlineheightbug-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'minmaxlineheightbug' target in the 'minmaxlineheightbug' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsing/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // NSDictionaryCGRectParsing 4 | // 5 | // Created by Stefan Gugarel on 9/24/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsing/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/NSDictionaryCGRectParsing/NSDictionaryCGRectParsing/Default-568h@2x.png -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsing/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/NSDictionaryCGRectParsing/NSDictionaryCGRectParsing/Default.png -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsing/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/NSDictionaryCGRectParsing/NSDictionaryCGRectParsing/Default@2x.png -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsing/NSDictionaryCGRectParsing-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.drobnik.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsing/NSDictionaryCGRectParsing-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'NSDictionaryCGRectParsing' target in the 'NSDictionaryCGRectParsing' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iOS SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsing/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsing/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // NSDictionaryCGRectParsing 4 | // 5 | // Created by Stefan Gugarel on 9/24/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsingTests/NSDictionaryCGRectParsingTests-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.drobnik.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsingTests/NSDictionaryCGRectParsingTests.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSDictionaryCGRectParsingTests.h 3 | // NSDictionaryCGRectParsingTests 4 | // 5 | // Created by Stefan Gugarel on 9/24/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSDictionaryCGRectParsingTests : SenTestCase 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsingTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsingTests/rect.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Frame 6 | 7 | Height 8 | 123.21127319335938 9 | Width 10 | 219.16098022460938 11 | X 12 | 21.307317733764648 13 | Y 14 | 224.36619567871094 15 | 16 | 17 | -------------------------------------------------------------------------------- /NSDictionaryCGRectParsing/NSDictionaryCGRectParsingTests/rect_modified_by_xcode45.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Frame 6 | 7 | Height 8 | 123.2112731933594 9 | Width 10 | 219.1609802246094 11 | X 12 | 21.30731773376465 13 | Y 14 | 224.3661956787109 15 | 16 | 17 | -------------------------------------------------------------------------------- /PickerBug/PickerBug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // PickerBug 4 | // 5 | // Created by Oliver Drobnik on 28/11/14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /PickerBug/PickerBug/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "ipad", 35 | "size" : "29x29", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "ipad", 40 | "size" : "29x29", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "40x40", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "ipad", 50 | "size" : "40x40", 51 | "scale" : "2x" 52 | }, 53 | { 54 | "idiom" : "ipad", 55 | "size" : "76x76", 56 | "scale" : "1x" 57 | }, 58 | { 59 | "idiom" : "ipad", 60 | "size" : "76x76", 61 | "scale" : "2x" 62 | } 63 | ], 64 | "info" : { 65 | "version" : 1, 66 | "author" : "xcode" 67 | } 68 | } -------------------------------------------------------------------------------- /PickerBug/PickerBug/Sample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/PickerBug/PickerBug/Sample.png -------------------------------------------------------------------------------- /PickerBug/PickerBug/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // PickerBug 4 | // 5 | // Created by Oliver Drobnik on 28/11/14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | - (IBAction)saveSampleToPhotos:(id)sender; 14 | @property (weak, nonatomic) IBOutlet UIImageView *sampleImageView; 15 | @property (weak, nonatomic) IBOutlet UIImageView *resultImageView; 16 | 17 | - (IBAction)pickImage:(id)sender; 18 | @end 19 | 20 | -------------------------------------------------------------------------------- /PickerBug/PickerBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // PickerBug 4 | // 5 | // Created by Oliver Drobnik on 28/11/14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /PrefetchingSample/PrefetchingSample/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "ipad", 35 | "size" : "29x29", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "ipad", 40 | "size" : "29x29", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "40x40", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "ipad", 50 | "size" : "40x40", 51 | "scale" : "2x" 52 | }, 53 | { 54 | "idiom" : "ipad", 55 | "size" : "76x76", 56 | "scale" : "1x" 57 | }, 58 | { 59 | "idiom" : "ipad", 60 | "size" : "76x76", 61 | "scale" : "2x" 62 | } 63 | ], 64 | "info" : { 65 | "version" : 1, 66 | "author" : "xcode" 67 | } 68 | } -------------------------------------------------------------------------------- /PrefetchingSample/PrefetchingSample/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | LSRequiresIPhoneOS 22 | 23 | UILaunchStoryboardName 24 | LaunchScreen 25 | UIMainStoryboardFile 26 | Main 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | UISupportedInterfaceOrientations~ipad 38 | 39 | UIInterfaceOrientationPortrait 40 | UIInterfaceOrientationPortraitUpsideDown 41 | UIInterfaceOrientationLandscapeLeft 42 | UIInterfaceOrientationLandscapeRight 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /PrefetchingSample/PrefetchingSample/MyCollectionViewCell.swift: -------------------------------------------------------------------------------- 1 | // 2 | // MyCollectionViewCell.swift 3 | // PrefetchingSample 4 | // 5 | // Created by Stefan Gugarel on 30/09/2016. 6 | // Copyright © 2016 Stefan Gugarel. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class MyCollectionViewCell: UICollectionViewCell { 12 | 13 | @IBOutlet weak var textLabel: UILabel! 14 | } 15 | -------------------------------------------------------------------------------- /ProgressBug/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "colors" : [ 3 | { 4 | "idiom" : "universal" 5 | } 6 | ], 7 | "info" : { 8 | "author" : "xcode", 9 | "version" : 1 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /ProgressBug/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /ProgressBug/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /ProgressBug/ProgressBugApp.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ProgressBugApp.swift 3 | // ProgressBug 4 | // 5 | // Created by Oliver Drobnik on 10.12.21. 6 | // 7 | 8 | import SwiftUI 9 | 10 | @main 11 | struct ProgressBugApp: App { 12 | var body: some Scene { 13 | WindowGroup { 14 | ContentView() 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /QuickLookBug/qltest/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // qltest 4 | // 5 | // Created by Oliver Drobnik on 6/11/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class ViewController; 12 | 13 | @interface AppDelegate : UIResponder 14 | 15 | @property (strong, nonatomic) UIWindow *window; 16 | 17 | @property (strong, nonatomic) ViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /QuickLookBug/qltest/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/QuickLookBug/qltest/Default-568h@2x.png -------------------------------------------------------------------------------- /QuickLookBug/qltest/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/QuickLookBug/qltest/Default.png -------------------------------------------------------------------------------- /QuickLookBug/qltest/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/QuickLookBug/qltest/Default@2x.png -------------------------------------------------------------------------------- /QuickLookBug/qltest/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // qltest 4 | // 5 | // Created by Oliver Drobnik on 6/11/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /QuickLookBug/qltest/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // qltest 4 | // 5 | // Created by Oliver Drobnik on 6/11/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "ViewController.h" 11 | 12 | @interface MyPreviewItem : NSObject 13 | 14 | @end 15 | 16 | @implementation MyPreviewItem 17 | 18 | - (NSURL *)previewItemURL 19 | { 20 | return nil; 21 | } 22 | 23 | @end 24 | 25 | @interface ViewController () 26 | 27 | @end 28 | 29 | @implementation ViewController 30 | 31 | - (void)viewDidLoad 32 | { 33 | [super viewDidLoad]; 34 | // Do any additional setup after loading the view, typically from a nib. 35 | } 36 | 37 | - (void)didReceiveMemoryWarning 38 | { 39 | [super didReceiveMemoryWarning]; 40 | // Dispose of any resources that can be recreated. 41 | } 42 | - (IBAction)buttonTouched:(id)sender { 43 | QLPreviewController *controller = [[QLPreviewController alloc] init]; 44 | controller.dataSource = self; 45 | 46 | [self presentViewController:controller animated:YES completion:^{ 47 | 48 | }]; 49 | 50 | 51 | } 52 | 53 | - (NSInteger)numberOfPreviewItemsInPreviewController:(QLPreviewController *)controller 54 | { 55 | return 1; 56 | } 57 | 58 | - (id )previewController:(QLPreviewController *)controller previewItemAtIndex:(NSInteger)index 59 | { 60 | return [[MyPreviewItem alloc] init]; 61 | } 62 | 63 | @end 64 | -------------------------------------------------------------------------------- /QuickLookBug/qltest/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /QuickLookBug/qltest/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // qltest 4 | // 5 | // Created by Oliver Drobnik on 6/11/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /QuickLookBug/qltest/qltest-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.drobnik.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /QuickLookBug/qltest/qltest-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'qltest' target in the 'qltest' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /RelationBug/relationbug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // relationbug 4 | // 5 | // Created by Oliver Drobnik on 6/25/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /RelationBug/relationbug/ErrorSwitchHeaderView.h: -------------------------------------------------------------------------------- 1 | // 2 | // ErrorSwitchHeaderView.h 3 | // relationbug 4 | // 5 | // Created by Oliver Drobnik on 6/25/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ErrorSwitchHeaderView : UIView 12 | 13 | @property (nonatomic, strong) UISwitch *errorSwitch; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /RelationBug/relationbug/Message.h: -------------------------------------------------------------------------------- 1 | // 2 | // Message.h 3 | // relationbug 4 | // 5 | // Created by Oliver Drobnik on 6/25/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @class Timeline; 13 | 14 | @interface Message : NSManagedObject 15 | 16 | @property (nonatomic, retain) NSString * text; 17 | @property (nonatomic, retain) NSSet *timelines; 18 | @property (nonatomic, retain) NSDate * creationDate; 19 | @end 20 | 21 | @interface Message (CoreDataGeneratedAccessors) 22 | 23 | - (void)addTimelinesObject:(Timeline *)value; 24 | - (void)removeTimelinesObject:(Timeline *)value; 25 | - (void)addTimelines:(NSSet *)values; 26 | - (void)removeTimelines:(NSSet *)values; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /RelationBug/relationbug/Message.m: -------------------------------------------------------------------------------- 1 | // 2 | // Message.m 3 | // relationbug 4 | // 5 | // Created by Oliver Drobnik on 6/25/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "Message.h" 10 | #import "Timeline.h" 11 | 12 | 13 | @implementation Message 14 | 15 | @dynamic text; 16 | @dynamic timelines; 17 | @dynamic creationDate; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /RelationBug/relationbug/MessageViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MessageViewController.h 3 | // relationbug 4 | // 5 | // Created by Oliver Drobnik on 6/25/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class Timeline; 12 | 13 | @interface MessageViewController : UITableViewController 14 | 15 | - (id)initWithTimeline:(Timeline *)timeline; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /RelationBug/relationbug/Model.xcdatamodeld/.xccurrentversion: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | _XCCurrentVersionName 6 | Model.xcdatamodel 7 | 8 | 9 | -------------------------------------------------------------------------------- /RelationBug/relationbug/Model.xcdatamodeld/Model.xcdatamodel/contents: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /RelationBug/relationbug/Timeline.h: -------------------------------------------------------------------------------- 1 | // 2 | // Timeline.h 3 | // relationbug 4 | // 5 | // Created by Oliver Drobnik on 6/25/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @class Message; 13 | 14 | @interface Timeline : NSManagedObject 15 | 16 | @property (nonatomic, retain) NSString * name; 17 | @property (nonatomic, retain) NSDate * creationDate; 18 | @property (nonatomic, retain) NSSet *messages; 19 | @end 20 | 21 | @interface Timeline (CoreDataGeneratedAccessors) 22 | 23 | - (void)addMessagesObject:(Message *)value; 24 | - (void)removeMessagesObject:(Message *)value; 25 | - (void)addMessages:(NSSet *)values; 26 | - (void)removeMessages:(NSSet *)values; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /RelationBug/relationbug/Timeline.m: -------------------------------------------------------------------------------- 1 | // 2 | // Timeline.m 3 | // relationbug 4 | // 5 | // Created by Oliver Drobnik on 6/25/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "Timeline.h" 10 | #import "Message.h" 11 | 12 | 13 | @implementation Timeline 14 | 15 | @dynamic name; 16 | @dynamic creationDate; 17 | @dynamic messages; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /RelationBug/relationbug/TimelineViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // TimelineViewController.h 3 | // relationbug 4 | // 5 | // Created by Oliver Drobnik on 6/25/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface TimelineViewController : UITableViewController 12 | 13 | - (id)initWithMOC:(NSManagedObjectContext *)moc; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /RelationBug/relationbug/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /RelationBug/relationbug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // relationbug 4 | // 5 | // Created by Oliver Drobnik on 6/25/12. 6 | // Copyright (c) 2012 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /RelationBug/relationbug/relationbug-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.drobnik.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | UISupportedInterfaceOrientations~ipad 38 | 39 | UIInterfaceOrientationPortrait 40 | UIInterfaceOrientationPortraitUpsideDown 41 | UIInterfaceOrientationLandscapeLeft 42 | UIInterfaceOrientationLandscapeRight 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /RelationBug/relationbug/relationbug-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'relationbug' target in the 'relationbug' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #import 15 | #import "NSString+DTPaths.h" 16 | #endif 17 | -------------------------------------------------------------------------------- /RoundedRectArtifact/RoundedRectArtifact/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // RoundedRectArtifact 4 | // 5 | // Created by Oliver Drobnik on 10.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /RoundedRectArtifact/RoundedRectArtifact/RoundedRectArtifact-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | cocoanetics.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /RoundedRectArtifact/RoundedRectArtifact/RoundedRectArtifact-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | #endif 17 | -------------------------------------------------------------------------------- /RoundedRectArtifact/RoundedRectArtifact/UIImage+Test.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+Test.h 3 | // RoundedRectArtifact 4 | // 5 | // Created by Oliver Drobnik on 10.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImage (Test) 12 | 13 | + (UIImage *)imageMaskedAndTintedWithColorAndBorder:(UIColor *)color size:(CGSize)size cornerRadius:(CGFloat)cornerRadius; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /RoundedRectArtifact/RoundedRectArtifact/UIImage+Test.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+Test.m 3 | // RoundedRectArtifact 4 | // 5 | // Created by Oliver Drobnik on 10.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "UIImage+Test.h" 10 | 11 | @implementation UIImage (Test) 12 | 13 | + (UIImage *)imageMaskedAndTintedWithColorAndBorder:(UIColor *)color size:(CGSize)size cornerRadius:(CGFloat)cornerRadius 14 | { 15 | UIGraphicsBeginImageContextWithOptions(size, NO, 1); 16 | 17 | CGRect bounds = (CGRect){CGPointZero, size}; 18 | 19 | // create path for drawing inner border 20 | CGRect innerBorder = CGRectInset(bounds, 0.5f, 0.5f); 21 | //CGRect innerBorder = CGRectInset(bounds, 1.0f, 1.0f); 22 | UIBezierPath *borderWithCornerRadius = [UIBezierPath bezierPathWithRoundedRect:innerBorder cornerRadius:cornerRadius]; 23 | 24 | // draw inner border 25 | [color setStroke]; 26 | [borderWithCornerRadius stroke]; 27 | 28 | // get back new image 29 | UIImage *retImage = UIGraphicsGetImageFromCurrentImageContext(); 30 | UIGraphicsEndImageContext(); 31 | 32 | return retImage; 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /RoundedRectArtifact/RoundedRectArtifact/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // RoundedRectArtifact 4 | // 5 | // Created by Oliver Drobnik on 10.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | @class RoundedRectView; 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @property (weak, nonatomic) IBOutlet UIImageView *imageView1; 14 | @property (weak, nonatomic) IBOutlet UIImageView *imageView2; 15 | @property (weak, nonatomic) IBOutlet UIImageView *imageView3; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /RoundedRectArtifact/RoundedRectArtifact/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // RoundedRectArtifact 4 | // 5 | // Created by Oliver Drobnik on 10.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | #import "UIImage+Test.h" 11 | 12 | 13 | @implementation ViewController 14 | 15 | - (void)viewWillAppear:(BOOL)animated 16 | { 17 | [super viewWillAppear:animated]; 18 | 19 | self.imageView1.image = [UIImage imageMaskedAndTintedWithColorAndBorder:[UIColor redColor] size:_imageView1.frame.size cornerRadius:2]; 20 | self.imageView2.image = [UIImage imageMaskedAndTintedWithColorAndBorder:[UIColor redColor] size:_imageView1.frame.size cornerRadius:3]; 21 | 22 | self.imageView3.image = [UIImage imageMaskedAndTintedWithColorAndBorder:[UIColor redColor] size:_imageView1.frame.size cornerRadius:4]; 23 | } 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /RoundedRectArtifact/RoundedRectArtifact/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // RoundedRectArtifact 4 | // 5 | // Created by Oliver Drobnik on 10.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char * argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ScanAreaBug/ScanAreaBug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // ScanAreaBug 4 | // 5 | // Created by Oliver Drobnik on 7/26/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ScanAreaBug/ScanAreaBug/DTCodeScannerView.h: -------------------------------------------------------------------------------- 1 | // 2 | // DTCoreScannerView.h 3 | // TagScan 4 | // 5 | // Created by Oliver Drobnik on 7/12/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DTCodeScannerView : UIView 12 | 13 | @property (nonatomic, assign) CGRect scanRegion; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ScanAreaBug/ScanAreaBug/DTCodeScannerView.m: -------------------------------------------------------------------------------- 1 | // 2 | // DTCoreScannerView.m 3 | // TagScan 4 | // 5 | // Created by Oliver Drobnik on 7/12/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import "DTCodeScannerView.h" 10 | 11 | @implementation DTCodeScannerView 12 | 13 | - (id)initWithFrame:(CGRect)frame 14 | { 15 | self = [super initWithFrame:frame]; 16 | if (self) 17 | { 18 | self.backgroundColor = [UIColor clearColor]; 19 | } 20 | return self; 21 | } 22 | 23 | 24 | // Only override drawRect: if you perform custom drawing. 25 | // An empty implementation adversely affects performance during animation. 26 | - (void)drawRect:(CGRect)rect 27 | { 28 | UIColor *darkenColor = [UIColor colorWithWhite:0 alpha:0.1]; 29 | [darkenColor setFill]; 30 | 31 | CGContextRef context = UIGraphicsGetCurrentContext(); 32 | CGContextFillRect(context, self.bounds); 33 | 34 | if (!CGRectEqualToRect(_scanRegion, CGRectZero)) 35 | { 36 | CGContextClearRect(context, _scanRegion); 37 | } 38 | 39 | // draw center line 40 | 41 | [[UIColor redColor] setStroke]; 42 | CGContextMoveToPoint(context, CGRectGetMinX(rect), rect.size.height/2.0); 43 | CGContextAddLineToPoint(context, CGRectGetMaxX(rect), rect.size.height/2.0); 44 | 45 | CGContextStrokePath(context); 46 | 47 | CGContextMoveToPoint(context, rect.size.width/2.0, CGRectGetMinY(rect)); 48 | CGContextAddLineToPoint(context, rect.size.width/2.0, CGRectGetMaxY(rect)); 49 | 50 | CGContextStrokePath(context); 51 | 52 | 53 | } 54 | 55 | - (void)setScanRegion:(CGRect)scanRegion 56 | { 57 | _scanRegion = scanRegion; 58 | [self setNeedsDisplay]; 59 | } 60 | 61 | @end 62 | -------------------------------------------------------------------------------- /ScanAreaBug/ScanAreaBug/DTCodeScannerViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // DTCodeScannerViewController.h 3 | // TagScan 4 | // 5 | // Created by Oliver Drobnik on 7/12/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class DTCodeScannerViewController; 12 | 13 | 14 | @protocol DTCodeScannerViewControllerDelegate 15 | 16 | - (void)codeScanner:(DTCodeScannerViewController *)codeScanner didScanCode:(NSString *)code; 17 | 18 | @end 19 | 20 | 21 | @interface DTCodeScannerViewController : UIViewController 22 | 23 | @property (nonatomic, weak) IBOutlet id scanDelegate; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /ScanAreaBug/ScanAreaBug/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "60x60", 11 | "scale" : "2x" 12 | } 13 | ], 14 | "info" : { 15 | "version" : 1, 16 | "author" : "xcode" 17 | } 18 | } -------------------------------------------------------------------------------- /ScanAreaBug/ScanAreaBug/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /ScanAreaBug/ScanAreaBug/ScanAreaBug-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.cocoanetics.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /ScanAreaBug/ScanAreaBug/ScanAreaBug-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | #endif 17 | -------------------------------------------------------------------------------- /ScanAreaBug/ScanAreaBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // ScanAreaBug 4 | // 5 | // Created by Oliver Drobnik on 7/26/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char * argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /SheetTest/SheetTest/AppDelegate.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.swift 3 | // SheetTest 4 | // 5 | // Created by Stefan Gugarel on 18/01/2017. 6 | // Copyright © 2017 Stefan Gugarel. All rights reserved. 7 | // 8 | 9 | import Cocoa 10 | 11 | @NSApplicationMain 12 | class AppDelegate: NSObject, NSApplicationDelegate { 13 | 14 | 15 | 16 | func applicationDidFinishLaunching(_ aNotification: Notification) { 17 | // Insert code here to initialize your application 18 | } 19 | 20 | func applicationWillTerminate(_ aNotification: Notification) { 21 | // Insert code here to tear down your application 22 | } 23 | 24 | 25 | } 26 | 27 | -------------------------------------------------------------------------------- /SheetTest/SheetTest/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "mac", 5 | "size" : "16x16", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "mac", 10 | "size" : "16x16", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "mac", 15 | "size" : "32x32", 16 | "scale" : "1x" 17 | }, 18 | { 19 | "idiom" : "mac", 20 | "size" : "32x32", 21 | "scale" : "2x" 22 | }, 23 | { 24 | "idiom" : "mac", 25 | "size" : "128x128", 26 | "scale" : "1x" 27 | }, 28 | { 29 | "idiom" : "mac", 30 | "size" : "128x128", 31 | "scale" : "2x" 32 | }, 33 | { 34 | "idiom" : "mac", 35 | "size" : "256x256", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "mac", 40 | "size" : "256x256", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "mac", 45 | "size" : "512x512", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "mac", 50 | "size" : "512x512", 51 | "scale" : "2x" 52 | } 53 | ], 54 | "info" : { 55 | "version" : 1, 56 | "author" : "xcode" 57 | } 58 | } -------------------------------------------------------------------------------- /SheetTest/SheetTest/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | $(PRODUCT_NAME) 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleVersion 22 | 1 23 | LSMinimumSystemVersion 24 | $(MACOSX_DEPLOYMENT_TARGET) 25 | NSHumanReadableCopyright 26 | Copyright © 2017 Stefan Gugarel. All rights reserved. 27 | NSMainStoryboardFile 28 | Main 29 | NSPrincipalClass 30 | NSApplication 31 | 32 | 33 | -------------------------------------------------------------------------------- /SheetTest/SheetTest/SheetViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // SheetViewController.swift 3 | // SheetTest 4 | // 5 | // Created by Stefan Gugarel on 18/01/2017. 6 | // Copyright © 2017 Stefan Gugarel. All rights reserved. 7 | // 8 | 9 | import Cocoa 10 | 11 | class SheetViewController: NSViewController { 12 | 13 | override func viewDidLoad() { 14 | super.viewDidLoad() 15 | // Do view setup here. 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /SheetTest/SheetTest/ViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.swift 3 | // SheetTest 4 | // 5 | // Created by Stefan Gugarel on 18/01/2017. 6 | // Copyright © 2017 Stefan Gugarel. All rights reserved. 7 | // 8 | 9 | import Cocoa 10 | 11 | class ViewController: NSViewController { 12 | 13 | override func viewDidLoad() { 14 | super.viewDidLoad() 15 | 16 | // Do any additional setup after loading the view. 17 | } 18 | 19 | override var representedObject: Any? { 20 | didSet { 21 | // Update the view, if already loaded. 22 | } 23 | } 24 | 25 | @IBAction func sheetButtonPressed(_ sender: Any) { 26 | 27 | let storyboard = NSStoryboard.init(name: "Main", bundle: nil) 28 | let sheet = storyboard.instantiateController(withIdentifier: "SheetViewController") as! SheetViewController 29 | 30 | self.presentViewControllerAsSheet(sheet) 31 | 32 | DispatchQueue.main.asyncAfter(deadline: .now() + 5) { 33 | 34 | self.dismissViewController(sheet) 35 | } 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /SizeClassBug/SizeClassBug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // SizeClassBug 4 | // 5 | // Created by Oliver Drobnik on 06/11/14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /SizeClassBug/SizeClassBug/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "ipad", 35 | "size" : "29x29", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "ipad", 40 | "size" : "29x29", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "40x40", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "ipad", 50 | "size" : "40x40", 51 | "scale" : "2x" 52 | }, 53 | { 54 | "idiom" : "ipad", 55 | "size" : "76x76", 56 | "scale" : "1x" 57 | }, 58 | { 59 | "idiom" : "ipad", 60 | "size" : "76x76", 61 | "scale" : "2x" 62 | } 63 | ], 64 | "info" : { 65 | "version" : 1, 66 | "author" : "xcode" 67 | } 68 | } -------------------------------------------------------------------------------- /SizeClassBug/SizeClassBug/SecondViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // SecondViewController.h 3 | // SizeClassBug 4 | // 5 | // Created by Oliver Drobnik on 06/11/14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SecondViewController : UIViewController 12 | 13 | @property (weak, nonatomic) IBOutlet UILabel *horizontalLabel; 14 | @property (weak, nonatomic) IBOutlet UILabel *verticalLabel; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /SizeClassBug/SizeClassBug/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // SizeClassBug 4 | // 5 | // Created by Oliver Drobnik on 06/11/14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /SizeClassBug/SizeClassBug/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // SizeClassBug 4 | // 5 | // Created by Oliver Drobnik on 06/11/14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | 11 | @interface ViewController () 12 | 13 | @end 14 | 15 | @implementation ViewController 16 | 17 | - (void)viewDidLoad { 18 | [super viewDidLoad]; 19 | // Do any additional setup after loading the view, typically from a nib. 20 | } 21 | 22 | - (void)didReceiveMemoryWarning { 23 | [super didReceiveMemoryWarning]; 24 | // Dispose of any resources that can be recreated. 25 | } 26 | 27 | - (IBAction)unwind:(UIStoryboardSegue *)segue 28 | { 29 | 30 | } 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /SizeClassBug/SizeClassBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // SizeClassBug 4 | // 5 | // Created by Oliver Drobnik on 06/11/14. 6 | // Copyright (c) 2014 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /StatusBarBug/Classes/StatusBarBugAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // StatusBarBugAppDelegate.h 3 | // StatusBarBug 4 | // 5 | // Created by Oliver Drobnik on 8/12/10. 6 | // Copyright 2010 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class StatusBarBugViewController; 12 | 13 | @interface StatusBarBugAppDelegate : NSObject { 14 | UIWindow *window; 15 | StatusBarBugViewController *viewController; 16 | UINavigationController *navController; 17 | } 18 | 19 | @property (nonatomic, retain) IBOutlet UIWindow *window; 20 | @property (nonatomic, retain) IBOutlet StatusBarBugViewController *viewController; 21 | @property (nonatomic, retain) IBOutlet UINavigationController *navController; 22 | @end 23 | 24 | -------------------------------------------------------------------------------- /StatusBarBug/Classes/StatusBarBugViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // StatusBarBugViewController.h 3 | // StatusBarBug 4 | // 5 | // Created by Oliver Drobnik on 8/12/10. 6 | // Copyright 2010 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface StatusBarBugViewController : UIViewController { 12 | 13 | } 14 | 15 | @end 16 | 17 | -------------------------------------------------------------------------------- /StatusBarBug/StatusBarBug-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIconFile 12 | 13 | CFBundleIdentifier 14 | com.yourcompany.${PRODUCT_NAME:rfc1034identifier} 15 | CFBundleInfoDictionaryVersion 16 | 6.0 17 | CFBundleName 18 | ${PRODUCT_NAME} 19 | CFBundlePackageType 20 | APPL 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | NSMainNibFile 28 | MainWindow 29 | UISupportedInterfaceOrientations 30 | 31 | UIInterfaceOrientationPortrait 32 | UIInterfaceOrientationPortraitUpsideDown 33 | UIInterfaceOrientationLandscapeLeft 34 | UIInterfaceOrientationLandscapeRight 35 | 36 | UIStatusBarHidden 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /StatusBarBug/StatusBarBug_Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'StatusBarBug' target in the 'StatusBarBug' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #import 8 | #endif 9 | -------------------------------------------------------------------------------- /StatusBarBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // StatusBarBug 4 | // 5 | // Created by Oliver Drobnik on 8/12/10. 6 | // Copyright 2010 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) { 12 | 13 | NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; 14 | int retVal = UIApplicationMain(argc, argv, nil, nil); 15 | [pool release]; 16 | return retVal; 17 | } 18 | -------------------------------------------------------------------------------- /StoreKitSheetTest/StoreKitSheetTest/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // StoreKitSheetTest 4 | // 5 | // Created by Oliver Drobnik on 13.03.15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /StoreKitSheetTest/StoreKitSheetTest/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /StoreKitSheetTest/StoreKitSheetTest/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.productlayer.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /StoreKitSheetTest/StoreKitSheetTest/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // StoreKitSheetTest 4 | // 5 | // Created by Oliver Drobnik on 13.03.15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /StoreKitSheetTest/StoreKitSheetTest/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // StoreKitSheetTest 4 | // 5 | // Created by Oliver Drobnik on 13.03.15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | #import 11 | 12 | 13 | @implementation ViewController 14 | 15 | 16 | - (IBAction)tapStore:(id)sender 17 | { 18 | NSNumber *iTunesID = @(951069441); 19 | 20 | SKStoreProductViewController *storeProductViewController = [[SKStoreProductViewController alloc] init]; 21 | 22 | // Configure View Controller 23 | [storeProductViewController loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier : iTunesID} 24 | completionBlock:^(BOOL result, NSError *error) { 25 | if (error) 26 | { 27 | NSLog(@"%@", error); 28 | } 29 | }]; 30 | 31 | // present right away to avoid pause 32 | [self presentViewController:storeProductViewController animated:YES completion:nil]; 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /StoreKitSheetTest/StoreKitSheetTest/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // StoreKitSheetTest 4 | // 5 | // Created by Oliver Drobnik on 13.03.15. 6 | // Copyright (c) 2015 ProductLayer. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /StoreKitVCBug/StoreKitVCBug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // StoreKitVCBug 4 | // 5 | // Created by Oliver Drobnik on 20/03/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /StoreKitVCBug/StoreKitVCBug/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /StoreKitVCBug/StoreKitVCBug/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.cocoanetics.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /StoreKitVCBug/StoreKitVCBug/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // StoreKitVCBug 4 | // 5 | // Created by Oliver Drobnik on 20/03/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @property (weak, nonatomic) IBOutlet UILabel *errorTextLabel; 14 | 15 | - (IBAction)showStoreButton:(id)sender; 16 | 17 | @end 18 | 19 | -------------------------------------------------------------------------------- /StoreKitVCBug/StoreKitVCBug/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // StoreKitVCBug 4 | // 5 | // Created by Oliver Drobnik on 20/03/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | @import StoreKit; 11 | 12 | @interface ViewController () 13 | 14 | @end 15 | 16 | @implementation ViewController 17 | 18 | 19 | - (IBAction)showStoreButton:(id)sender 20 | { 21 | NSNumber *iTunesID = @(951069440); 22 | 23 | if (iTunesID) 24 | { 25 | SKStoreProductViewController *storeProductViewController = [[SKStoreProductViewController alloc] 26 | init]; 27 | 28 | // Configure View Controller 29 | [storeProductViewController setDelegate:self]; 30 | [storeProductViewController loadProductWithParameters: 31 | @{SKStoreProductParameterITunesItemIdentifier : iTunesID} 32 | completionBlock:^(BOOL result, NSError *error) { 33 | // log error 34 | dispatch_async(dispatch_get_main_queue(), ^{ 35 | NSString *text = [NSString stringWithFormat:@"NSError received: %@", [error localizedDescription]]; 36 | self.errorTextLabel.text = text; 37 | }); 38 | } 39 | ]; 40 | 41 | // present right away to avoid pause 42 | [self presentViewController:storeProductViewController animated:YES completion:nil]; 43 | } 44 | } 45 | 46 | - (void)productViewControllerDidFinish:(SKStoreProductViewController *)viewController 47 | { 48 | [viewController dismissViewControllerAnimated:YES completion:NULL]; 49 | } 50 | 51 | @end 52 | -------------------------------------------------------------------------------- /StoreKitVCBug/StoreKitVCBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // StoreKitVCBug 4 | // 5 | // Created by Oliver Drobnik on 20/03/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /TableViewContentInsetDifferent/README.md: -------------------------------------------------------------------------------- 1 | # iOS-11-TableView-Playground -------------------------------------------------------------------------------- /TextFieldColor/TextFieldColor/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | $(DEVELOPMENT_LANGUAGE) 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | LSRequiresIPhoneOS 22 | 23 | UILaunchStoryboardName 24 | LaunchScreen 25 | UIMainStoryboardFile 26 | Main 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | UISupportedInterfaceOrientations~ipad 38 | 39 | UIInterfaceOrientationPortrait 40 | UIInterfaceOrientationPortraitUpsideDown 41 | UIInterfaceOrientationLandscapeLeft 42 | UIInterfaceOrientationLandscapeRight 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /TextFieldColor/TextFieldColor/ViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.swift 3 | // TextFieldColor 4 | // 5 | // Created by Stefan Gugarel on 03/07/2017. 6 | // Copyright © 2017 Stefan Gugarel. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class ViewController: UIViewController { 12 | 13 | var dark = true 14 | 15 | @IBOutlet weak var textField: UITextField! 16 | 17 | override func viewDidLoad() { 18 | 19 | super.viewDidLoad() 20 | // Do any additional setup after loading the view, typically from a nib. 21 | 22 | let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(tapped(gestureRecognizer:))) 23 | self.view.addGestureRecognizer(tapGestureRecognizer) 24 | 25 | updateColors() 26 | } 27 | 28 | @objc func tapped(gestureRecognizer: UIGestureRecognizer) { 29 | 30 | textField.resignFirstResponder() 31 | } 32 | 33 | override func didReceiveMemoryWarning() { 34 | super.didReceiveMemoryWarning() 35 | // Dispose of any resources that can be recreated. 36 | } 37 | 38 | @IBAction func changeColorPressed(_ sender: Any) { 39 | 40 | dark = !dark 41 | 42 | updateColors() 43 | } 44 | 45 | func updateColors() { 46 | 47 | 48 | if dark { 49 | view.backgroundColor = .black 50 | textField.backgroundColor = .black 51 | textField.textColor = .white 52 | } else { 53 | view.backgroundColor = .white 54 | textField.backgroundColor = .white 55 | textField.textColor = .black 56 | } 57 | 58 | } 59 | } 60 | 61 | -------------------------------------------------------------------------------- /TextViewScrollBug/TextViewScrollBug/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // textviewscrollbug 4 | // 5 | // Created by Oliver Drobnik on 29/04/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /TextViewScrollBug/TextViewScrollBug/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /TextViewScrollBug/TextViewScrollBug/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.cocoanetics.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /TextViewScrollBug/TextViewScrollBug/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // textviewscrollbug 4 | // 5 | // Created by Oliver Drobnik on 29/04/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @property (weak, nonatomic) IBOutlet UITextView *textView; 14 | 15 | @end 16 | 17 | -------------------------------------------------------------------------------- /TextViewScrollBug/TextViewScrollBug/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // textviewscrollbug 4 | // 5 | // Created by Oliver Drobnik on 29/04/15. 6 | // Copyright (c) 2015 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /TextfieldInReorderableList/TextfieldInReorderableList/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "colors" : [ 3 | { 4 | "idiom" : "universal" 5 | } 6 | ], 7 | "info" : { 8 | "author" : "xcode", 9 | "version" : 1 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /TextfieldInReorderableList/TextfieldInReorderableList/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /TextfieldInReorderableList/TextfieldInReorderableList/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "author" : "xcode", 4 | "version" : 1 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /TextfieldInReorderableList/TextfieldInReorderableList/TextfieldInReorderableListApp.swift: -------------------------------------------------------------------------------- 1 | // 2 | // TextfieldInReorderableListApp.swift 3 | // TextfieldInReorderableList 4 | // 5 | // Created by Oliver Drobnik on 20.10.21. 6 | // 7 | 8 | import SwiftUI 9 | 10 | @main 11 | struct TextfieldInReorderableListApp: App { 12 | var body: some Scene { 13 | WindowGroup { 14 | NavigationView { 15 | ContentView() 16 | .environment(\.editMode, .constant(EditMode.active)) 17 | } 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /TransitionTest/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | build 3 | *.mode1v3 4 | *.pbxuser 5 | project.xcworkspace 6 | xcuserdata 7 | .svn 8 | -------------------------------------------------------------------------------- /TransitionTest/TransitionTest/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // TransitionTest 4 | // 5 | // Created by Oliver Drobnik on 26/01/15. 6 | // Copyright (c) 2015 Product Layer. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /TransitionTest/TransitionTest/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /TransitionTest/TransitionTest/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | com.productlayer.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /TransitionTest/TransitionTest/ModalTransitionManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // ModalTransitionManager.h 3 | // TransitionTest 4 | // 5 | // Created by Oliver Drobnik on 26/01/15. 6 | // Copyright (c) 2015 Product Layer. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ModalTransitionManager : NSObject // implements vending of the animator and interaction controllers 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /TransitionTest/TransitionTest/ModalViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ModalViewController.h 3 | // TransitionTest 4 | // 5 | // Created by Oliver Drobnik on 26/01/15. 6 | // Copyright (c) 2015 Product Layer. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ModalViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /TransitionTest/TransitionTest/ModalViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ModalViewController.m 3 | // TransitionTest 4 | // 5 | // Created by Oliver Drobnik on 26/01/15. 6 | // Copyright (c) 2015 Product Layer. All rights reserved. 7 | // 8 | 9 | #import "ModalViewController.h" 10 | 11 | #import "ModalTransitionManager.h" 12 | 13 | @implementation ModalViewController 14 | { 15 | ModalTransitionManager *_transitionManager; 16 | } 17 | 18 | - (UIStatusBarStyle)preferredStatusBarStyle 19 | { 20 | return UIStatusBarStyleLightContent; 21 | } 22 | 23 | - (BOOL)prefersStatusBarHidden 24 | { 25 | return NO; 26 | } 27 | 28 | - (void)viewDidLoad 29 | { 30 | [super viewDidLoad]; 31 | 32 | // need IVAR because transitioning delegate does not retain 33 | _transitionManager = [ModalTransitionManager new]; 34 | self.transitioningDelegate = _transitionManager; 35 | } 36 | 37 | - (IBAction)close:(id)sender 38 | { 39 | [self dismissViewControllerAnimated:YES completion:NULL]; 40 | } 41 | 42 | @end 43 | -------------------------------------------------------------------------------- /TransitionTest/TransitionTest/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // TransitionTest 4 | // 5 | // Created by Oliver Drobnik on 26/01/15. 6 | // Copyright (c) 2015 Product Layer. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /TransitionTest/TransitionTest/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // TransitionTest 4 | // 5 | // Created by Oliver Drobnik on 26/01/15. 6 | // Copyright (c) 2015 Product Layer. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | 11 | @implementation ViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /TransitionTest/TransitionTest/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // TransitionTest 4 | // 5 | // Created by Oliver Drobnik on 26/01/15. 6 | // Copyright (c) 2015 Product Layer. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /UIColorStrokeCrash/UIColorStrokeCrash/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // UIColorStrokeCrash 4 | // 5 | // Created by Oliver Drobnik on 10.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /UIColorStrokeCrash/UIColorStrokeCrash/ContentView.h: -------------------------------------------------------------------------------- 1 | // 2 | // ContentView.h 3 | // ForegroundColorBug 4 | // 5 | // Created by Oliver Drobnik on 8/15/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ContentView : UIView 12 | 13 | - (void)enableCrash; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /UIColorStrokeCrash/UIColorStrokeCrash/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "40x40", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "60x60", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /UIColorStrokeCrash/UIColorStrokeCrash/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /UIColorStrokeCrash/UIColorStrokeCrash/UIColorStrokeCrash-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | cocoanetics.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /UIColorStrokeCrash/UIColorStrokeCrash/UIColorStrokeCrash-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | #import 17 | #endif 18 | -------------------------------------------------------------------------------- /UIColorStrokeCrash/UIColorStrokeCrash/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // UIColorStrokeCrash 4 | // 5 | // Created by Oliver Drobnik on 10.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | - (IBAction)crashButton:(id)sender; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /UIColorStrokeCrash/UIColorStrokeCrash/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // UIColorStrokeCrash 4 | // 5 | // Created by Oliver Drobnik on 10.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | #import "ContentView.h" 11 | 12 | @interface ViewController () 13 | 14 | @end 15 | 16 | @implementation ViewController 17 | 18 | - (void)viewDidLoad 19 | { 20 | [super viewDidLoad]; 21 | // Do any additional setup after loading the view, typically from a nib. 22 | } 23 | 24 | - (void)didReceiveMemoryWarning 25 | { 26 | [super didReceiveMemoryWarning]; 27 | // Dispose of any resources that can be recreated. 28 | } 29 | 30 | - (IBAction)crashButton:(id)sender 31 | { 32 | [(ContentView *)self.view enableCrash]; 33 | } 34 | 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /UIColorStrokeCrash/UIColorStrokeCrash/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /UIColorStrokeCrash/UIColorStrokeCrash/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // UIColorStrokeCrash 4 | // 5 | // Created by Oliver Drobnik on 10.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char * argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /UIFontDemo/UIFontDemo/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // UIFontDemo 4 | // 5 | // Created by Oliver Drobnik on 10/5/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /UIFontDemo/UIFontDemo/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/UIFontDemo/UIFontDemo/Default-568h@2x.png -------------------------------------------------------------------------------- /UIFontDemo/UIFontDemo/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/UIFontDemo/UIFontDemo/Default.png -------------------------------------------------------------------------------- /UIFontDemo/UIFontDemo/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Cocoanetics/RadarSamples/ec18e3260ed4548a748f5b2db124c39ff23f1755/UIFontDemo/UIFontDemo/Default@2x.png -------------------------------------------------------------------------------- /UIFontDemo/UIFontDemo/UIFontDemo-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.cocoanetics.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIMainStoryboardFile 28 | MainStoryboard 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /UIFontDemo/UIFontDemo/UIFontDemo-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'UIFontDemo' target in the 'UIFontDemo' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /UIFontDemo/UIFontDemo/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // UIFontDemo 4 | // 5 | // Created by Oliver Drobnik on 10/5/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /UIFontDemo/UIFontDemo/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // UIFontDemo 4 | // 5 | // Created by Oliver Drobnik on 10/5/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | 11 | @interface ViewController () 12 | 13 | @end 14 | 15 | @implementation ViewController 16 | 17 | - (void)viewDidLoad 18 | { 19 | [super viewDidLoad]; 20 | // Do any additional setup after loading the view, typically from a nib. 21 | } 22 | 23 | - (void)didReceiveMemoryWarning 24 | { 25 | [super didReceiveMemoryWarning]; 26 | // Dispose of any resources that can be recreated. 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /UIFontDemo/UIFontDemo/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /UIFontDemo/UIFontDemo/en.lproj/MainStoryboard.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /UIFontDemo/UIFontDemo/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // UIFontDemo 4 | // 5 | // Created by Oliver Drobnik on 10/5/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /UIFontDemo/UnitTest/UnitTest-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.cocoanetics.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /UIFontDemo/UnitTest/UnitTest-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'UnitTest with Host' target in the 'UnitTest with Host' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #import 8 | #endif 9 | -------------------------------------------------------------------------------- /UIFontDemo/UnitTest/UnitTest.h: -------------------------------------------------------------------------------- 1 | // 2 | // UnitTest.h 3 | // UnitTest 4 | // 5 | // Created by Oliver Drobnik on 10/5/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UnitTest : SenTestCase 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /UIFontDemo/UnitTest/UnitTest.m: -------------------------------------------------------------------------------- 1 | // 2 | // UnitTest.m 3 | // UnitTest 4 | // 5 | // Created by Oliver Drobnik on 10/5/13. 6 | // Copyright (c) 2013 Oliver Drobnik. All rights reserved. 7 | // 8 | 9 | #import "UnitTest.h" 10 | 11 | @implementation UnitTest 12 | 13 | - (void)testExample 14 | { 15 | UIFont *font = [UIFont fontWithName:@"Helvetica" size:20]; 16 | STAssertNotNil(font, @"font should not be nil"); 17 | } 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /UnitTestsTest/Test/Core/MacUnitTest-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #ifdef __OBJC__ 8 | 9 | #import 10 | 11 | #endif 12 | -------------------------------------------------------------------------------- /UnitTestsTest/Test/Core/Source/MacUnitTest.m: -------------------------------------------------------------------------------- 1 | // 2 | // MacUnitTest.m 3 | // MacUnitTest 4 | // 5 | // Created by Oliver Drobnik on 26.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MacUnitTest : XCTestCase 12 | 13 | @end 14 | 15 | @implementation MacUnitTest 16 | 17 | - (void)setUp 18 | { 19 | [super setUp]; 20 | // Put setup code here. This method is called before the invocation of each test method in the class. 21 | } 22 | 23 | - (void)tearDown 24 | { 25 | // Put teardown code here. This method is called after the invocation of each test method in the class. 26 | [super tearDown]; 27 | } 28 | 29 | - (void)testExample 30 | { 31 | XCTFail(@"No implementation for \"%s\"", __PRETTY_FUNCTION__); 32 | } 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /UnitTestsTest/Test/Core/Source/UnitTest.m: -------------------------------------------------------------------------------- 1 | // 2 | // UnitTest.m 3 | // UnitTest 4 | // 5 | // Created by Oliver Drobnik on 26.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UnitTest : XCTestCase 12 | 13 | @end 14 | 15 | @implementation UnitTest 16 | 17 | - (void)setUp 18 | { 19 | [super setUp]; 20 | // Put setup code here. This method is called before the invocation of each test method in the class. 21 | } 22 | 23 | - (void)tearDown 24 | { 25 | // Put teardown code here. This method is called after the invocation of each test method in the class. 26 | [super tearDown]; 27 | } 28 | 29 | - (void)testExample 30 | { 31 | XCTFail(@"No implementation for \"%s\"", __PRETTY_FUNCTION__); 32 | } 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /UnitTestsTest/Test/Core/UnitTest-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | cocoanetics.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /UnitTestsTest/Test/Core/UnitTest-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #ifdef __OBJC__ 8 | 9 | #import 10 | #import 11 | 12 | #endif 13 | -------------------------------------------------------------------------------- /UnitTestsTest/TestApp/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // TestApp 4 | // 5 | // Created by Oliver Drobnik on 26.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /UnitTestsTest/TestApp/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "40x40", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "60x60", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /UnitTestsTest/TestApp/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /UnitTestsTest/TestApp/TestApp-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | cocoanetics.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /UnitTestsTest/TestApp/TestApp-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | #endif 17 | -------------------------------------------------------------------------------- /UnitTestsTest/TestApp/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // TestApp 4 | // 5 | // Created by Oliver Drobnik on 26.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /UnitTestsTest/TestApp/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // TestApp 4 | // 5 | // Created by Oliver Drobnik on 26.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | 11 | @interface ViewController () 12 | 13 | @end 14 | 15 | @implementation ViewController 16 | 17 | - (void)viewDidLoad 18 | { 19 | [super viewDidLoad]; 20 | // Do any additional setup after loading the view, typically from a nib. 21 | } 22 | 23 | - (void)didReceiveMemoryWarning 24 | { 25 | [super didReceiveMemoryWarning]; 26 | // Dispose of any resources that can be recreated. 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /UnitTestsTest/TestApp/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /UnitTestsTest/TestApp/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // TestApp 4 | // 5 | // Created by Oliver Drobnik on 26.09.13. 6 | // Copyright (c) 2013 Cocoanetics. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char * argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /WidgetTabCellTest/WidgetTabCellTest/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "ipad", 35 | "size" : "29x29", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "ipad", 40 | "size" : "29x29", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "40x40", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "ipad", 50 | "size" : "40x40", 51 | "scale" : "2x" 52 | }, 53 | { 54 | "idiom" : "ipad", 55 | "size" : "76x76", 56 | "scale" : "1x" 57 | }, 58 | { 59 | "idiom" : "ipad", 60 | "size" : "76x76", 61 | "scale" : "2x" 62 | } 63 | ], 64 | "info" : { 65 | "version" : 1, 66 | "author" : "xcode" 67 | } 68 | } -------------------------------------------------------------------------------- /WidgetTabCellTest/WidgetTabCellToday/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | WidgetTabCellToday 9 | CFBundleExecutable 10 | $(EXECUTABLE_NAME) 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | $(PRODUCT_NAME) 17 | CFBundlePackageType 18 | XPC! 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | NSExtension 26 | 27 | NSExtensionMainStoryboard 28 | MainInterface 29 | NSExtensionPointIdentifier 30 | com.apple.widget-extension 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /WrongWdithWithConstraints/WrongWdithWithConstraints/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "idiom" : "ipad", 35 | "size" : "29x29", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "ipad", 40 | "size" : "29x29", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "40x40", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "ipad", 50 | "size" : "40x40", 51 | "scale" : "2x" 52 | }, 53 | { 54 | "idiom" : "ipad", 55 | "size" : "76x76", 56 | "scale" : "1x" 57 | }, 58 | { 59 | "idiom" : "ipad", 60 | "size" : "76x76", 61 | "scale" : "2x" 62 | } 63 | ], 64 | "info" : { 65 | "version" : 1, 66 | "author" : "xcode" 67 | } 68 | } -------------------------------------------------------------------------------- /WrongWdithWithConstraints/WrongWdithWithConstraints/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | LSRequiresIPhoneOS 22 | 23 | UILaunchStoryboardName 24 | LaunchScreen 25 | UIMainStoryboardFile 26 | Main 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | UISupportedInterfaceOrientations~ipad 38 | 39 | UIInterfaceOrientationPortrait 40 | UIInterfaceOrientationPortraitUpsideDown 41 | UIInterfaceOrientationLandscapeLeft 42 | UIInterfaceOrientationLandscapeRight 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /WrongWdithWithConstraints/WrongWdithWithConstraints/ViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.swift 3 | // WrongWdithWithConstraints 4 | // 5 | // Created by Stefan Gugarel on 07/08/2017. 6 | // Copyright © 2017 Stefan Gugarel. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | class ViewController: UIViewController { 12 | 13 | override func viewDidLoad() { 14 | super.viewDidLoad() 15 | // Do any additional setup after loading the view, typically from a nib. 16 | } 17 | 18 | override func didReceiveMemoryWarning() { 19 | super.didReceiveMemoryWarning() 20 | // Dispose of any resources that can be recreated. 21 | } 22 | 23 | 24 | } 25 | 26 | --------------------------------------------------------------------------------