{"action":"created","issue":{"url":"https://api.github.com/repos/appsquickly/Typhoon/issues/357","labels_url":"https://api.github.com/repos/appsquickly/Typhoon/issues/357/labels{/name}","comments_url":"https://api.github.com/repos/appsquickly/Typhoon/issues/357/comments","events_url":"https://api.github.com/repos/appsquickly/Typhoon/issues/357/events","html_url":"https://github.com/appsquickly/Typhoon/issues/357","id":81188516,"number":357,"title":"iOS pre-fab definitions","user":{"login":"jasperblues","id":430321,"avatar_url":"https://avatars.githubusercontent.com/u/430321?v=3","gravatar_id":"","url":"https://api.github.com/users/jasperblues","html_url":"https://github.com/jasperblues","followers_url":"https://api.github.com/users/jasperblues/followers","following_url":"https://api.github.com/users/jasperblues/following{/other_user}","gists_url":"https://api.github.com/users/jasperblues/gists{/gist_id}","starred_url":"https://api.github.com/users/jasperblues/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasperblues/subscriptions","organizations_url":"https://api.github.com/users/jasperblues/orgs","repos_url":"https://api.github.com/users/jasperblues/repos","events_url":"https://api.github.com/users/jasperblues/events{/privacy}","received_events_url":"https://api.github.com/users/jasperblues/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/appsquickly/Typhoon/labels/debate","name":"debate","color":"cc317c"},{"url":"https://api.github.com/repos/appsquickly/Typhoon/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":10,"created_at":"2015-05-26T23:46:10Z","updated_at":"2015-09-24T09:52:24Z","closed_at":null,"body":"It can be nice for code cohesion &testability to be able to injection UIWindow, current device, main screen, etc. However it is extra work to create definitions for these: \r\n\r\nTyphoon will let you inject an inline object: \r\n\r\n```objc\r\n[definition injectProperty:@selector(window) with:[[UIWindow alloc] init]];\r\n```\r\n\r\nHowever its not possible to define simple object (no dependencies) and register those for injection: \r\n\r\n```objc\r\n- (void)mainWindow \r\n{\r\n    return [[UIWindow alloc] init];\r\n}\r\n\r\n[definition injectProperty:@selector(window) with:[self mainWindow]];  //Won't work!\r\n```\r\n\r\nSuggestions: \r\n\r\n* Support the 2nd case above. \r\n* Provide pre-fabricated definitions for iOS that can be used as a collaborating assembly. \r\n\r\nWhich of the above is better? @JeffBNimble  ? \r\n"},"comment":{"url":"https://api.github.com/repos/appsquickly/Typhoon/issues/comments/142877502","html_url":"https://github.com/appsquickly/Typhoon/issues/357#issuecomment-142877502","issue_url":"https://api.github.com/repos/appsquickly/Typhoon/issues/357","id":142877502,"user":{"login":"itsthejb","id":557391,"avatar_url":"https://avatars.githubusercontent.com/u/557391?v=3","gravatar_id":"","url":"https://api.github.com/users/itsthejb","html_url":"https://github.com/itsthejb","followers_url":"https://api.github.com/users/itsthejb/followers","following_url":"https://api.github.com/users/itsthejb/following{/other_user}","gists_url":"https://api.github.com/users/itsthejb/gists{/gist_id}","starred_url":"https://api.github.com/users/itsthejb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/itsthejb/subscriptions","organizations_url":"https://api.github.com/users/itsthejb/orgs","repos_url":"https://api.github.com/users/itsthejb/repos","events_url":"https://api.github.com/users/itsthejb/events{/privacy}","received_events_url":"https://api.github.com/users/itsthejb/received_events","type":"User","site_admin":false},"created_at":"2015-09-24T09:52:24Z","updated_at":"2015-09-24T09:52:24Z","body":"Great! I'll check this out right now..."}}