Skip to content

Instantly share code, notes, and snippets.

@steipete
steipete / UIKit.m
Created November 26, 2014 11:09
- [UIPopoverPresentationController dimmingViewWasTapped:] decompiled with Hopper 3.6.4
void -[UIPopoverPresentationController dimmingViewWasTapped:](void * self, void * _cmd, void * arg2) {
esi = self;
edi = @selector(delegate);
if ([esi delegate] != 0x0) {
eax = [esi delegate];
var_10 = @selector(popoverPresentationControllerShouldDismissPopover:);
eax = [eax respondsToSelector:@selector(popoverPresentationControllerShouldDismissPopover:)];
if (LOBYTE(eax) != 0x0) {
eax = [esi presented];
if (LOBYTE(eax) != 0x0) {
@steipete
steipete / UIKit.c
Created November 26, 2014 11:10
- [UIPopoverPresentationController dimmingViewWasTapped:] decompiled with Decompiled with IDA Pro 6.6.1 and the x86 Decompiler
// UIPopoverPresentationController - (void)dimmingViewWasTapped:(id)
void __cdecl -[UIPopoverPresentationController dimmingViewWasTapped:](struct UIPopoverPresentationController *self, SEL a2, id a3)
{
void *v3; // eax@2
void *v4; // eax@5
void *v5; // eax@6
void *v6; // eax@7
void *v7; // eax@8
if ( !objc_msgSend(self, selRef_delegate)
@matt-curtis
matt-curtis / gist:6b9235f3a3e94ce9145d
Last active September 11, 2017 08:35
Disable animation in UINavigationBar
@implementation MyNavBar
- (NSArray*) subviews {
NSArray *subviews = [super subviews];
if(_animationDisabled) [self removeAllAnimationsInViews:subviews];
return subviews;
}
@KyLeggiero
KyLeggiero / Swift 4 - NSApp Relaunch.swift
Last active April 3, 2021 13:50
Allows you to re-launch a Cocoa app
import Cocoa
public extension NSApplication {
public func relaunch(afterDelay seconds: TimeInterval = 0.5) -> Never {
let task = Process()
task.launchPath = "/bin/sh"
task.arguments = ["-c", "sleep \(seconds); open \"\(Bundle.main.bundlePath)\""]
@codelynx
codelynx / ZMapTable.swift
Last active August 10, 2021 08:11
Swifty NSMapTable that can deal with weak referenced objects - protocol extension edition
// ZMapTable.swift
//
// Copyright (c) 2016 Kaz Yoshikawa. Released under MIT License.
protocol ZMapTableProtocol: CustomStringConvertible {
associatedtype K: AnyObject
associatedtype V: AnyObject
var mapTable: NSMapTable { get }
@mikeash
mikeash / runtime-class.m
Created November 22, 2013 16:46
Creating a usable class purely at runtime using the Objective-C runtime APIs.
// clang -fobjc-arc -framework Foundation runtime-class.m
#import <Foundation/Foundation.h>
#import <objc/runtime.h>
@interface Person : NSObject
- (id)initWithFirstName: (NSString *)firstName lastName: (NSString *)lastName age: (NSUInteger)age;
@ppamorim
ppamorim / ImageInsets.swift
Created November 5, 2015 16:30
Add padding/margin at a image!
import UIKit
extension UIImage {
func imageWithInsets(insetDimen: CGFloat) -> UIImage {
return imageWithInset(UIEdgeInsets(top: insetDimen, left: insetDimen, bottom: insetDimen, right: insetDimen))
}
func imageWithInset(insets: UIEdgeInsets) -> UIImage {
UIGraphicsBeginImageContextWithOptions(
CGSizeMake(self.size.width + insets.left + insets.right,
@alloy
alloy / 1 - Find issue view
Last active June 2, 2023 10:01
Finding the Xcode issues navigator
~/C/A/eigen [master] » lldb -p (pgrep '^Xcode$')
(lldb) process attach --pid 34726
Process 34726 stopped
Executable module set to "/Applications/Xcode-Beta.app/Contents/MacOS/Xcode".
Architecture set to: x86_64-apple-macosx.
(lldb) po [[NSApplication sharedApplication] windows]
<__NSArrayM 0x7fe18be755d0>(
<IDEWorkspaceWindow: 0x7fe18045ba40>,
<_NSFullScreenUnbufferedWindow: 0x7fe1841b18d0>,
<_NSFullScreenTransitionOverlayWindow: 0x7fe1841b3770>,
@kylefox
kylefox / gist:4512777
Created January 11, 2013 18:15
If you want to use Xcode's FileMerge as your git mergetool, this is how you set it up.
# Tell system when Xcode utilities live:
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
# Set "opendiff" as the default mergetool globally:
git config --global merge.tool opendiff
@zacwest
zacwest / ios-font-sizes.swift
Last active March 27, 2024 07:16
iOS default font sizes - also available on https://www.iosfontsizes.com
let styles: [UIFont.TextStyle] = [
// iOS 17
.extraLargeTitle, .extraLargeTitle2,
// iOS 11
.largeTitle,
// iOS 9
.title1, .title2, .title3, .callout,
// iOS 7
.headline, .subheadline, .body, .footnote, .caption1, .caption2,
]