This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
NSWorkspace *workspace = [NSWorkspace sharedWorkspace]; | |
NSDictionary *activeAppDict = [workspace activeApplication]; | |
ProcessSerialNumber psn; | |
psn.highLongOfPSN = [[activeAppDict objectForKey:@"NSApplicationProcessSerialNumberHigh"] intValue]; | |
psn.lowLongOfPSN = [[activeAppDict objectForKey:@"NSApplicationProcessSerialNumberLow"] intValue]; | |
SetFrontProcess( &psn ); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
void TSCreateImageFromIOSurfaceReleaseCallback(void * __nullable info, const void *data, size_t size); | |
void TSCreateImageFromIOSurfaceReleaseCallback(void * __nullable info, const void *data, size_t size) { | |
CFRelease(info); | |
} | |
CGImageRef TSCreateImageFromIOSurface(IOSurfaceRef surface, CGColorSpaceRef cs) { | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var url = NSURL.fileURLWithPath_('/Library/Desktop Pictures/Yosemite.jpg'); | |
var img = CIImage.imageWithContentsOfURL_(url) | |
var f = CIFilter.filterWithName_('CIColorInvert'); | |
f.setValue_forKey_(img, kCIInputImageKey); | |
var r = f.outputImage(); | |
var tiff = r.TIFFRepresentation(); | |
tiff.writeToFile_atomically_('/tmp/foo.tiff', true); | |
NSWorkspace.sharedWorkspace().openFile_('/tmp/foo.tif'); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
How to install this plugin: | |
1) Choose Acorn's Help ▸ Open Acorn's App Support Folder menu item. | |
2) Place this script in the Plug-Ins folder (and make sure it ends with .jstalk) | |
3) Restart Acorn. The plugin will now show up in the Filter menu. | |
*/ | |
function main(image, doc, layer) { | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- (FJSValue*)evaluateModuleAtURL:(NSURL*)scriptURL { | |
if (scriptURL) { | |
NSError *error; | |
NSString *script = [NSString stringWithContentsOfURL:scriptURL encoding:NSUTF8StringEncoding error:&error]; | |
if (script) { | |
#define NODE_STYLE_WRAPPER 1 | |
#ifdef NODE_STYLE_WRAPPER |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
This sample shows how CGImageSourceCreateThumbnailAtIndex leaks something akin | |
to the memory behind a CGImageRef when asked to create a thumbnail for a 16bpc | |
TIFF image if one isn't present. | |
Full sample project here: | |
http://shapeof.com/archives/2019/media/SixteenBitPerComponentThumbnailLeak.zip | |
*/ | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from AppKit import * | |
from Foundation import * | |
html = NSString.stringWithString_("<b style='font-size: 20px; font-family: HelveticaNeue'>Hi</b>") | |
d = html.dataUsingEncoding_(NSUTF8StringEncoding); | |
ats = NSAttributedString.alloc().initWithHTML_options_documentAttributes_(d, None, None)[0]; | |
ps = ats.attribute_atIndex_effectiveRange_(NSParagraphStyleAttributeName, 0, None)[0] | |
print(ps.minimumLineHeight()) | |
print(ps.maximumLineHeight()) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#import <Foundation/Foundation.h> | |
#import <dlfcn.h> | |
// clang main.m -framework Foundation | |
int main(int argc, const char * argv[]) { | |
@autoreleasepool { | |
dlopen("/System/Library/Frameworks/CoreGraphics.framework/Resources/BridgeSupport/CoreGraphics.dylib", RTLD_LAZY); | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[db makeFunctionNamed:@"UTTypeConformsTo" maximumArguments:2 withBlock:^(sqlite3_context *context, int argc, sqlite3_value **argv) { | |
if (sqlite3_value_type(argv[0]) == SQLITE_TEXT) { | |
const unsigned char *a = sqlite3_value_text(argv[0]); | |
const unsigned char *b = sqlite3_value_text(argv[1]); | |
CFStringRef as = CFStringCreateWithCString(nil, (const char*)a, kCFStringEncodingUTF8); | |
CFStringRef bs = CFStringCreateWithCString(nil, (const char*)b, kCFStringEncodingUTF8); | |
sqlite3_result_int(context, UTTypeConformsTo(as, bs)); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
SInt32 TSSystemVersion(void) { | |
static dispatch_once_t once; | |
static int TSSystemVersionVal = 0x00; | |
dispatch_once(&once, ^{ | |
NSDictionary *d = [NSDictionary dictionaryWithContentsOfFile:@"/System/Library/CoreServices/SystemVersion.plist"]; | |
NSString *prodVersion = [d objectForKey:@"ProductVersion"]; | |