Skip to content

Instantly share code, notes, and snippets.


Daniel Farrelly jellybeansoup

View GitHub Profile
export DEVELOPER_DIR="/Applications/"
for f in "$@"
SRCNAME=$(echo $(basename "${f}"))
SRCPATH=$(echo $(dirname "${f}"))
jellybeansoup / AppDelegate.swift
Created Jan 23, 2018
Preloading App Data for Screenshots
View AppDelegate.swift
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Handle the actual launch of your application
private func prepareForTestingUI() {
guard let contentsURL = Bundle.main.url(forResource: "UITests", withExtension: "xcappdata")?.appendingPathComponent("AppData") else {
View TextViewDidChangeSelection.swift
// Exists inside of a scrollview subclass containing an "expanding" textview that lives underneath other content.
private var previousSelection: CGRect?
func textViewDidChangeSelection(_ textView: UITextView) {
guard textView.isFirstResponder else {
var selection = textView.layoutManager.boundingRect(forGlyphRange: textView.selectedRange, in: textView.textContainer).offsetBy(dx: insets.left, dy:

Keybase proof

I hereby claim:

  • I am jellybeansoup on github.
  • I am jellybeansoup ( on keybase.
  • I have a public key whose fingerprint is EEC8 CE91 DF6B 324F C28D ACAA E53E 0BCA FCDB 7881

To claim this, I am signing this object:

jellybeansoup / example.json
Last active Sep 6, 2015
Example JSON for Mobile Couch e65
View example.json
"key": "jellyandbean",
"title": "Jelly and Bean",
"tagline": "A weekly podcast about TV, movies, games and technology.",
"description": "Do you like tech? Games? TV? Movies? Well DANG. We have so much in common already! Jelly and Bean are two super pals who like to talk about all of the aforementioned topics (and more, probably), resulting in a nice little peek into the world of geeks, all in the form of a delicious weekly podcast that can be shoved into your ears thanks to the magic of sound waves!",
"archived": true,
"explicit": false,
"keywords": [
"jelly n bean",
jellybeansoup /
Last active Jun 23, 2021
Script for Incrementing Version Numbers
# Link: <>
# A command-line script for incrementing build numbers for all known targets in an Xcode project.
# This script has two main goals: firstly, to ensure that all the targets in a project have the
# same CFBundleVersion and CFBundleShortVersionString values. This is because mismatched values
# can cause a warning when submitting to the App Store. Secondly, to ensure that the build number
# is incremented appropriately when git has changes.
View StaticTablesDataSourceTests.m
#import <UIKit/UIKit.h>
#import <XCTest/XCTest.h>
#import "StaticTables.h"
@interface StaticTablesDataSourceTests : XCTestCase
@implementation StaticTablesDataSourceTests
View gist:3b5be4045628089afd0d
#pragma mark - View life cycle
- (void)viewDidLoad {
[super viewDidLoad];
[_collectionView registerClass:[JSMRefreshViewCell class] forSupplementaryViewOfKind:UICollectionElementKindSectionFooter withReuseIdentifier:@"SearchViewRefresh"];
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout referenceSizeForFooterInSection:(NSInteger)section {
// If we have more results to fetch
jellybeansoup / new.m
Last active Aug 29, 2015
Grid cell size calculator.
View new.m
// Get the view's actual pixel width
CGFloat pixelWidth = self.collectionView.frame.size.width * UIScreen.mainScreen.scale;
// Maximum cells per row
CGFloat maxCells = ( UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad ) ? 10.0 : 5.0;
// Determine a cell width
CGFloat cellWidth = 0.0;
CGFloat cellSpacing = 2.0;
for( CGFloat i = cellSpacing; i <= 4; i++ ) {
jellybeansoup / gist:9051a033e7b7929d2a70
Created Jul 5, 2014
My "fix" for the stuck grey buttons thing.
View gist:9051a033e7b7929d2a70
#pragma mark - Action sheet delegate
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet {
for( UIView *subview in actionSheet.subviews ) {
if( [subview isKindOfClass:[UIButton class]] ) {
UIButton *button = (UIButton *)subview;
[button setTitleColor:[UIColor mainTintColor] forState:UIControlStateNormal];
[button setTitleColor:[UIColor mainTintColor] forState:UIControlStateHighlighted];
[button setTitleColor:[UIColor mainTintColor] forState:UIControlStateSelected];