Coder Social home page Coder Social logo

gifs's Introduction

2012's word of the year: GIF.

See https://github.com/manmal/GIFs for an updated build

Screenshot

Download

You can grab the app from Mac App Store (it's free! ๐ŸŽ‰) or download the latest version directly here.

Compiling

git clone https://github.com/orta/GIFs.git
cd GIFs/objc
make bootstrap

gifs's People

Contributors

adamtootle avatar alexito4 avatar bryanluby avatar fabiopelosin avatar kastiglione avatar neonichu avatar orta avatar rodionovd avatar samsonjs avatar tabuchid avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gifs's Issues

Crash when saving a gif

When trying to save a gif from any of the categories, it crashes with the following:

GIFs[38822]: service com.apple.appkit.xpc.openAndSavePanelService failed to init an instance of NSSavePanelService on behalf of <NSRemoteView: 0x7feeba5214e0> due to {
    callStackSymbols = (
    0   CoreFoundation                      0x00007fff8b70966c __exceptionPreprocess + 172
    1   libobjc.A.dylib                     0x00007fff906db76e objc_exception_throw + 43
    2   CoreFoundation                      0x00007fff8b70951d +[NSException raise:format:] + 205
    3   com.apple.appkit.xpc.openAndSavePanelService 0x0000000101561d9f com.apple.appkit.xpc.openAndSavePanelService + 7583
    4   AppKit                              0x00007fff8c0a2417 -[NSViewController _loadViewIfRequired] + 75
    5   AppKit                              0x00007fff8bd729b1 -[NSViewController view] + 30
    6   ViewBridge                          0x00007fff926374ed -[NSViewServiceMarshal _bootstrap:replyData:] + 9685
    7   ViewBridge                          0x00007fff9263857b -[NSViewServiceMarshal bootstrap:withReply:] + 168
    8   CoreFoundation                      0x00007fff8b5e23cc __invoking___ + 140
    9   CoreFoundation                      0x00007fff8b5e2222 -[NSInvocation invoke] + 290
    10  CoreFoundation                      0x00007fff8b680e76 -[NSInvocation invokeWithTarget:] + 54
    11  ViewBridge                          0x00007fff92668f4c -[NSVB_ViewServiceImplicitAnimationDecodingProxy forwardInvocation:] + 264
    12  CoreFoundation                      0x00007fff8b6538a6 ___forwarding___ + 518
    13  CoreFoundation                      0x00007fff8b653618 _CF_forwarding_prep_0 + 120
    14  CoreFoundation                      0x00007fff8b5e23cc __invoking___ + 140
    15  CoreFoundation                      0x00007fff8b5e2222 -[NSInvocation invoke] + 290
    16  CoreFoundation                      0x00007fff8b680e76 -[NSInvocation invokeWithTarget:] + 54
    17  ViewBridge                          0x00007fff926402b3 -[NSVB_QueueingProxy forwardInvocation:] + 319
    18  CoreFoundation                      0x00007fff8b6538a6 ___forwarding___ + 518
    19  CoreFoundation                      0x00007fff8b653618 _CF_forwarding_prep_0 + 120
    20  CoreFoundation                      0x00007fff8b5e23cc __invoking___ + 140
    21  CoreFoundation                      0x00007fff8b5e2222 -[NSInvocation invoke] + 290
    22  CoreFoundation                      0x00007fff8b680e76 -[NSInvocation invokeWithTarget:] + 54
    23  CoreFoundation                      0x00007fff8b6538a6 ___forwarding___ + 518
    24  CoreFoundation                      0x00007fff8b653618 _CF_forwarding_prep_0 + 120
    25  CoreFoundation                      0x00007fff8b5e23cc __invoking___ + 140
    26  CoreFoundation                      0x00007fff8b5e2222 -[NSInvocation invoke] + 290
    27  ViewBridge                          0x00007fff9266cb53 __deferNSXPCInvocationOntoMainThread_block_invoke + 85
    28  ViewBridge                          0x00007fff9266c78e __deferBlockOntoMainThread_block_invoke_2 + 390
    29  CoreFoundation                      0x00007fff8b62756c __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 12
    30  CoreFoundation                      0x00007fff8b619675 __CFRunLoopDoBlocks + 341
    31  CoreFoundation                      0x00007fff8b6191b6 __CFRunLoopRun + 1814
    32  CoreFoundation                      0x00007fff8b618858 CFRunLoopRunSpecific + 296
    33  HIToolbox                           0x00007fff957c7aef RunCurrentEventLoopInMode + 235
    34  HIToolbox                           0x00007fff957c786a ReceiveNextEventCommon + 431
    35  HIToolbox                           0x00007fff957c76ab _BlockUntilNextEventMatchingListInModeWithFilter + 71
    36  AppKit                              0x00007fff8bcb3f81 _DPSNextEvent + 964
    37  AppKit                              0x00007fff8bcb3730 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 194
    38  ViewBridge                          0x00007fff926228be -[NSViewServiceApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 70
    39  AppKit                              0x00007fff8bca7593 -[NSApplication run] + 594
    40  AppKit                              0x00007fff8bc92a14 NSApplicationMain + 1832
    41  libxpc.dylib                        0x00007fff8a267ef2 _xpc_objc_main + 793
    42  libxpc.dylib                        0x00007fff8a269a9d _parse_sysctl_once + 0
    43  ViewBridge                          0x00007fff92670fd5 xpc_connection_handler + 0
    44  ViewBridge                          0x00007fff92625b36 NSViewServiceApplicationMain + 2035
    45  com.apple.appkit.xpc.openAndSavePanelService 0x0000000101566035 main + 208
    46  libdyld.dylib                       0x00007fff913ff5c9 start + 1
    47  ???                                 0x0000000000000001 0x0 + 1
);
    name = NSInternalInconsistencyException;
    reason = "+[NSOpenAndSavePanelService loadViewToService:isOpenPanel:appCentric:] : failed entitlements check";
    userInfo = "<null>";
}

Crash log for XPC:

Process:               com.apple.appkit.xpc.openAndSavePanelService [43428]
Path:                  /System/Library/Frameworks/AppKit.framework/Versions/C/XPCServices/com.apple.appkit.xpc.openAndSavePanelService.xpc/Contents/MacOS/com.apple.appkit.xpc.openAndSavePanelService
Identifier:            com.apple.appkit.xpc.openAndSavePanelService
Version:               1.0 (1)
Build Info:            AppKit-1344072000000000~1
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           GIFs [38822]
User ID:               501

Date/Time:             2015-04-05 09:36:11.984 -0700
OS Version:            Mac OS X 10.10.2 (14C1514)
Report Version:        11
Anonymous UUID:        3697A3C3-6D90-BBFB-1E35-AF06C3DDACEF

Sleep/Wake UUID:       78123323-3041-4766-8527-899726814AC3

Time Awake Since Boot: 50000 seconds
Time Since Wake:       7700 seconds

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_INSTRUCTION (SIGILL)
Exception Codes:       0x0000000000000001, 0x0000000000000000

Application Specific Information:
Crashing on exception: +[NSOpenAndSavePanelService loadViewToService:isOpenPanel:appCentric:] : failed entitlements check

Application Specific Backtrace 1:
0   CoreFoundation                      0x00007fff8b70966c __exceptionPreprocess + 172
1   libobjc.A.dylib                     0x00007fff906db76e objc_exception_throw + 43
2   CoreFoundation                      0x00007fff8b70951d +[NSException raise:format:] + 205
3   com.apple.appkit.xpc.openAndSavePanelService 0x0000000101561d9f com.apple.appkit.xpc.openAndSavePanelService + 7583
4   AppKit                              0x00007fff8c0a2417 -[NSViewController _loadViewIfRequired] + 75
5   AppKit                              0x00007fff8bd729b1 -[NSViewController view] + 30
6   ViewBridge                          0x00007fff926374ed -[NSViewServiceMarshal _bootstrap:replyData:] + 9685
7   ViewBridge                          0x00007fff9263857b -[NSViewServiceMarshal bootstrap:withReply:] + 168
8   CoreFoundation                      0x00007fff8b5e23cc __invoking___ + 140
9   CoreFoundation                      0x00007fff8b5e2222 -[NSInvocation invoke] + 290
10  CoreFoundation                      0x00007fff8b680e76 -[NSInvocation invokeWithTarget:] + 54
11  ViewBridge                          0x00007fff92668f4c -[NSVB_ViewServiceImplicitAnimationDecodingProxy forwardInvocation:] + 264
12  CoreFoundation                      0x00007fff8b6538a6 ___forwarding___ + 518
13  CoreFoundation                      0x00007fff8b653618 _CF_forwarding_prep_0 + 120
14  CoreFoundation                      0x00007fff8b5e23cc __invoking___ + 140
15  CoreFoundation                      0x00007fff8b5e2222 -[NSInvocation invoke] + 290
16  CoreFoundation                      0x00007fff8b680e76 -[NSInvocation invokeWithTarget:] + 54
17  ViewBridge                          0x00007fff926402b3 -[NSVB_QueueingProxy forwardInvocation:] + 319
18  CoreFoundation                      0x00007fff8b6538a6 ___forwarding___ + 518
19  CoreFoundation                      0x00007fff8b653618 _CF_forwarding_prep_0 + 120
20  CoreFoundation                      0x00007fff8b5e23cc __invoking___ + 140
21  CoreFoundation                      0x00007fff8b5e2222 -[NSInvocation invoke] + 290
22  CoreFoundation                      0x00007fff8b680e76 -[NSInvocation invokeWithTarget:] + 54
23  CoreFoundation                      0x00007fff8b6538a6 ___forwarding___ + 518
24  CoreFoundation                      0x00007fff8b653618 _CF_forwarding_prep_0 + 120
25  CoreFoundation                      0x00007fff8b5e23cc __invoking___ + 140
26  CoreFoundation                      0x00007fff8b5e2222 -[NSInvocation invoke] + 290
27  ViewBridge                          0x00007fff9266cb53 __deferNSXPCInvocationOntoMainThread_block_invoke + 85
28  ViewBridge                          0x00007fff9266c78e __deferBlockOntoMainThread_block_invoke_2 + 390
29  CoreFoundation                      0x00007fff8b62756c __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 12
30  CoreFoundation                      0x00007fff8b619675 __CFRunLoopDoBlocks + 341
31  CoreFoundation                      0x00007fff8b6191b6 __CFRunLoopRun + 1814
32  CoreFoundation                      0x00007fff8b618858 CFRunLoopRunSpecific + 296
33  HIToolbox                           0x00007fff957c7aef RunCurrentEventLoopInMode + 235
34  HIToolbox                           0x00007fff957c786a ReceiveNextEventCommon + 431
35  HIToolbox                           0x00007fff957c76ab _BlockUntilNextEventMatchingListInModeWithFilter + 71
36  AppKit                              0x00007fff8bcb3f81 _DPSNextEvent + 964
37  AppKit                              0x00007fff8bcb3730 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 194
38  ViewBridge                          0x00007fff926228be -[NSViewServiceApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 70
39  AppKit                              0x00007fff8bca7593 -[NSApplication run] + 594
40  AppKit                              0x00007fff8bc92a14 NSApplicationMain + 1832
41  libxpc.dylib                        0x00007fff8a267ef2 _xpc_objc_main + 793
42  libxpc.dylib                        0x00007fff8a269a9d _parse_sysctl_once + 0
43  ViewBridge                          0x00007fff92670fd5 xpc_connection_handler + 0
44  ViewBridge                          0x00007fff92625b36 NSViewServiceApplicationMain + 2035
45  com.apple.appkit.xpc.openAndSavePanelService 0x0000000101566035 main + 208
46  libdyld.dylib                       0x00007fff913ff5c9 start + 1
47  ???                                 0x0000000000000001 0x0 + 1

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.AppKit                0x00007fff8bff6060 -[NSApplication _crashOnException:] + 109
1   com.apple.AppKit                0x00007fff8bff64eb -[NSApplication reportException:] + 140
2   com.apple.AppKit                0x00007fff8bca76bc -[NSApplication run] + 891
3   com.apple.AppKit                0x00007fff8bc92a14 NSApplicationMain + 1832
4   libxpc.dylib                    0x00007fff8a267ef2 _xpc_objc_main + 793
5   libxpc.dylib                    0x00007fff8a269a9d xpc_main + 490
6   com.apple.ViewBridge            0x00007fff92670fd5 -[NSXPCSharedListener resume] + 16
7   com.apple.ViewBridge            0x00007fff92625b36 NSViewServiceApplicationMain + 2035
8   com.apple.appkit.xpc.openAndSavePanelService    0x0000000101566035 main + 208
9   libdyld.dylib                   0x00007fff913ff5c9 start + 1

Thread 1:: Dispatch queue: com.apple.libdispatch-manager
0   libsystem_kernel.dylib          0x00007fff95f59232 kevent64 + 10
1   libdispatch.dylib               0x00007fff98259a6a _dispatch_mgr_thread + 52

Thread 2:
0   libsystem_kernel.dylib          0x00007fff95f534de mach_msg_trap + 10
1   libsystem_kernel.dylib          0x00007fff95f5264f mach_msg + 55
2   com.apple.CoreFoundation        0x00007fff8b619b34 __CFRunLoopServiceMachPort + 212
3   com.apple.CoreFoundation        0x00007fff8b618ffb __CFRunLoopRun + 1371
4   com.apple.CoreFoundation        0x00007fff8b618858 CFRunLoopRunSpecific + 296
5   com.apple.AppKit                0x00007fff8be1733b _NSEventThread + 137
6   libsystem_pthread.dylib         0x00007fff8e257268 _pthread_body + 131
7   libsystem_pthread.dylib         0x00007fff8e2571e5 _pthread_start + 176
8   libsystem_pthread.dylib         0x00007fff8e25541d thread_start + 13

Thread 3:
0   libsystem_kernel.dylib          0x00007fff95f5894a __workq_kernreturn + 10
1   libsystem_pthread.dylib         0x00007fff8e25540d start_wqthread + 13

Thread 4:
0   libsystem_kernel.dylib          0x00007fff95f5894a __workq_kernreturn + 10
1   libsystem_pthread.dylib         0x00007fff8e25540d start_wqthread + 13

Thread 5:
0   libsystem_kernel.dylib          0x00007fff95f5894a __workq_kernreturn + 10
1   libsystem_pthread.dylib         0x00007fff8e25540d start_wqthread + 13

Thread 0 crashed with X86 Thread State (64-bit):
  rax: 0x00007f8f4e016c00  rbx: 0x000061000005d310  rcx: 0x0000000000000001  rdx: 0x0000000000000000
  rdi: 0x00007fff5e69f2a0  rsi: 0x0000000000001167  rbp: 0x00007fff5e69f740  rsp: 0x00007fff5e69f730
   r8: 0x0000600000060200   r9: 0x0000000000000000  r10: 0x00007f8f4e003a70  r11: 0x00000000000019ff
  r12: 0x00007fff906ce0c0  r13: 0x000060000005db50  r14: 0x00007fff906ce0c0  r15: 0x00007fff79216340
  rip: 0x00007fff8bff6060  rfl: 0x0000000000010202  cr2: 0x00006000002c2000

Logical CPU:     0
Error Code:      0x00000000
Trap Number:     6

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 1
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 35389
    thread_create: 0
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=177.3M resident=186.1M(105%) swapped_out_or_unallocated=16777216.0T(9922226946048%)
Writable regions: Total=115.7M written=3048K(3%) resident=6936K(6%) swapped_out=0K(0%) unallocated=108.9M(94%)

REGION TYPE                      VIRTUAL
===========                      =======
Activity Tracing                   2048K
CG shared images                    144K
CoreServices                         32K
Kernel Alloc Once                     8K
MALLOC                             86.4M
MALLOC (admin)                       32K
Memory Tag 242                       12K
STACK GUARD                        56.0M
Stack                              10.1M
VM_ALLOCATE                        17.1M
__DATA                             15.1M
__IMAGE                             528K
__LINKEDIT                         70.3M
__TEXT                            107.0M
__UNICODE                           544K
mapped file                        42.5M
shared memory                         4K
===========                      =======
TOTAL                             407.8M

This can be reproduced by pressing โŒ˜S or right clicking and saving an image with the MAS version of GIFs.

NSFW option.

Is it possible to exclude images from search that are NSFW?

Clean up Search

This has a custom UI - should mostly work like a real search interface though.

desktop hd-2

Windows version?

An app like this would be awesome to have on Windows too. Hope we can see a Windows version someday!

App crashes on startup

Tried the pre-built download and building from HEAD (bf0a0d82af).

Crash happens in ARAnalytics's +initialize with a EXEC_BAD_ACCESS error.

System info: rMBP, 10.8.5, Xcode 5.1.

Review setup & install instructions

It appears I"m missing a step in the compile instructions. Following the steps in the README doesn't appear to produce a binary. What comes next after funning make bootstrap?

$ make bootstrap
bundle install
Using ZenTest 4.11.0
Using RubyInline 3.12.3
Using i18n 0.6.11
Using multi_json 1.10.1
Using activesupport 3.2.19
Using claide 0.7.0
Using fuzzy_match 2.0.4
Using json_pure 1.8.1
Using nap 0.8.0
Using cocoapods-core 0.34.4
Using cocoapods-downloader 0.7.2
Using cocoapods-plugins 0.3.1
Using netrc 0.7.8
Using cocoapods-trunk 0.3.1
Using cocoapods-try 0.4.1
Using colored 1.2
Using escape 0.0.4
Using open4 1.3.4
Using xcodeproj 0.19.4
Using cocoapods 0.34.4
Using osx_keychain 1.0.0
Using cocoapods-keys 0.6.2
Using bundler 1.7.7
Your bundle is complete!
Use `bundle show [gemname]` to see where a bundled gem is installed.

Setting up API Keys, leave blank if you don't know.

What is your Giphy API Key ( use the one on https://github.com/Giphy/GiphyAPI if you do not have one )? 
bundle exec pod keys set GiphyAPIKey "$GIPHY_API_KEY" GIFs
Saved GiphyAPIKey to mine.
pod install
Analyzing dependencies

CocoaPods 0.37.2 is available.
To update use: `sudo gem install cocoapods`

For more information see http://blog.cocoapods.org
and the CHANGELOG for this version http://git.io/BaH8pQ.

Downloading dependencies
Using AFNetworking (2.5.4)
Using GIFKit (0.1.0)
Using StandardPaths (1.5.6)
Generating Pods project
Integrating client project
Adding keys
head: head: illegal byte count -- 0illegal byte count -- 0

Allow for fullscreen mode

Hi,

Maybe it's a voluntary thing but why is the fullscreen mode disabled? Since an option+click allows any user not to go fullscreen shouldn't the app support fullscreen mode? :-)

Event not fullscreen it's an awesome app anyway ๐Ÿ˜„

Thanks!

Clean up source list

  • When source list changes focus it turns ugly
  • Use grey images
  • embolden the titles
  • add subtle text shadows

desktop hd-2

Sometimes copy link to clipboard fails

I only notice it after using it a few times and searching that I right click on the image and copy to clipboard. Nothing really happens, right now the work around is to open in the browser and then copy the browser URL

Incorporate context into UI

I don't know what the current state of development is (I'm on 10.9), but it'd be awesome to have the title of the reddit post included somewhere in the UI. A common use case for me is to right-click and open the context just to see the title.

Crashes on startup, Yosemite

Hello, app constantly crashes on first run with this trace:

Date/Time:             2014-12-27 01:23:24.178 +0600
OS Version:            Mac OS X 10.10.1 (14B25)
Report Version:        11
Anonymous UUID:        21F91327-571A-C347-EADE-398CB2FCEB3C

Sleep/Wake UUID:       E9BFFD63-ED70-4EFC-9E85-B30680920CF0

Time Awake Since Boot: 54000 seconds
Time Since Wake:       3300 seconds

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000

Application Specific Information:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSPlaceholderArray initWithObjects:count:]: attempt to insert nil object from objects[2]'
terminating with uncaught exception of type NSException
abort() called

Application Specific Backtrace 1:
0   CoreFoundation                      0x00007fff9305164c __exceptionPreprocess + 172
1   libobjc.A.dylib                     0x00007fff884f46de objc_exception_throw + 43
2   CoreFoundation                      0x00007fff92ef5068 -[__NSPlaceholderArray initWithObjects:count:] + 360
3   CoreFoundation                      0x00007fff92f5b6b4 +[NSArray arrayWithObjects:count:] + 52
4   All The GIFs                        0x0000000107916849 -[ORSharingController awakeFromNib] + 1097
5   CoreFoundation                      0x00007fff92f5f83f -[NSSet makeObjectsPerformSelector:] + 223
6   AppKit                              0x00007fff8ff80ffd -[NSIBObjectData nibInstantiateWithOwner:options:topLevelObjects:] + 1216
7   AppKit                              0x00007fff8fa92f05 loadNib + 384
8   AppKit                              0x00007fff90000f80 +[NSBundle(NSNibLoading) _loadNibFile:nameTable:options:withZone:ownerBundle:] + 313
9   AppKit                              0x00007fff8fa925d5 -[NSBundle(NSNibLoading) loadNibNamed:owner:topLevelObjects:] + 201
10  AppKit                              0x00007fff8fa923a1 +[NSBundle(NSNibLoading) loadNibNamed:owner:] + 344
11  AppKit                              0x00007fff8fa8de09 NSApplicationMain + 605

Ability to download GIF

What do you think about adding the ability to download a GIF?
Adding a PR for this now if you think its valuable.

Square thumbnails distort previews

Square thumbnails distort non 1:1 GIFs. Solutions can be a mosaic of thumbnails of varied aspect ratios or keeping square previews but with aspect-fill.

App uses excessive CPU/energy while inactive

On my 12" MacBook, this regularly takes up > 30% of my CPU usage, and gets a spot in the vilified "apps using significant energy" list, even when it's not actively visible on-screen and merely open.

I assume there's only so much that can be done about performance when actively being used โ€“ makes sense when rendering a few dozen large-ish gifs at once โ€“ย but this shouldn't need to do anything while not visible on-screen.

I'm not familiar enough with OS X dev to know what the proper solution is (is it just a matter of responding to the right app delegate lifecycle methods and pausing active gif animation while not active? Is App Nap a thing third-party devs can implement?) but happy to help out with some dev time if it'd be helpful.

Copy GIFs directly to clipboard.

I figured out a somewhat hackish way to do this:

NSPasteboard *pasteboard = [NSPasteboard generalPasteboard];

[pasteboard clearContents];
[pasteboard setString:[NSString stringWithFormat:@"<img src='%@'></img>", GIF_URL] forType:NSPasteboardTypeHTML];

It works for all most apps that support pasting animated GIFs.

Share via Slack

I would love to have integration with Slack. There are so many GIFs I need to annoy my co-workers with!

We've used Giphy integrations before but their /giphy command really seems to suck. So either a slash command or even just "Share via Slack" type integration from the app.

Thanks

Add custom list and tagging

Currently, I just have a bookmark folder in Chrome with a ton of Gifs I use. It would be awesome if I could make a custom list and just add the imgur links to that custom list, not use a tumblr or reddit.

It would also be nice to add custom tagging to easily find gifs a bit better. The search didn't always seem that reliable.

Keep up the work, love the app! :D

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.