/clicktoflash

WebKit plug-in to prevent automatic loading of Adobe Flash content

Primary LanguageObjective-C

This is the ClickToFlash developer site.

##Version History

  • 1.5.4 download

  • 1.5.3 download

    • [FIX] Crasher where parsed flash variables (such as video_id) were being released prematurely. bug 261 (Jeff Johnson)

    • [FIX] Duplicate whitelist entries (caused by a bug in 1.5b4) are now detected and removed, fixing slow-downs, hangs and crashes. bug 264 (Simone Manganelli).

    • [CHANGE] Disables H.264 YouTube auto-play by default. bug 276 (fppzdd)

    • [FIX] Embedded YouTube videos were showing a question mark when loaded using the VIDEO element. bug 294 (Simone Manganelli)

    • [CHANGE] Rename CTGradient to CTFGradient to reduce namespace collisions. (roddi)

    • [FIX] Avoid leaking the original opacity settings dictionary. (Sven-S. Porst)

  • 1.5.2 download

    • [NEW] Start signing Sparkle updates. (rentzsch)
  • 1.5.1 download

    • [FIX] Was trying to update via Sparkle on every Flash load. (rentzsch).

    • [CHANGE] Change appcast hosting from @rentzsch's personal Amazon S3 to Github. (rentzsch)

  • promoted 1.5fc2 to 1.5 download

  • 1.5fc2 download

    • [FIX] Abandon 1.5fc1's Yet Another Installer Rework -- it causes Installer deadlocks that we can't figure out. bug 214 (rentzsch)
  • 1.5fc1 download

    • [NEW] Use HTML5 <video> element instead of QuickTime plugin to view H.264 YouTube content on Safari 4. <video> plays better with HTML in general, respecting things like CSS's z-index. (Andreas Fuchs)

    • [NEW] Add white border to Flash badge, improving contrast against dark backgrounds. bug 131 (Simone Manganelli, rentzsch)

    • [NEW] Only 60% top-bias badge for flickr.com. (rentzsch)

    • [NEW] Add Realmac Software applications to application whitelist. (Nik Fletcher)

    • [FIX] Yet Another Installer Rework. Move to mpkg so we require a password for installation only when necessary (on 10.4 when a non-admin user attempts to install ClickToFlash after an admin user already installed it). bug 214 (Simone Manganelli, Mo McRoberts)

    • [FIX] Open in QuickTime Player now works on Snowy. bug 216 (Simone Manganelli)

    • [FIX] Unchecking 'automatically check for updates' only stopped the check on startup, not subsequent ones. bug 268 (Simone Manganelli)

  • 1.5b5 download

    • [NEW] Support for HD YouTube videos. (Simone Manganelli)

    • [NEW] YouTube H.264 support now works with embedded videos. (Simone Manganelli)

    • [FIX] Website whitelist works again. (Simone Manganelli's fault for the bug, also for the fix 1, 2)

    • [NEW] Mac app devs can opt out of ClickToFlash on their own by setting 'ClickToFlashOptOut' to YES in their app's Info.plist file. (Simone Manganelli)

    • [CHANGE] Gear contextual menu is now always displayed, unless hidden pref 'drawGearImageOnlyOnMouseOver' is set to YES. (Simone Manganelli)

    • [FIX] Zattoo, iWeb added to the internal application whitelist. (Mo McRoberts, Jonathan Rentzsch)

    • [FIX] Added Front Row to the application whitelist so that understudy works. (Simone Manganelli)

    • [FIX] 'Check Now' button is still enabled even if auto-updating is turned off. bug 200 (Simone Manganelli)

    • [FIX] Sparkle status window goes away if the user chooses to restart the app after install at a later date. bug 191 (Simone Manganelli)

    • [FIX] Modified installer package bundle ID back to 'com.github.rentzsch.clicktoflash.pkg' (Simone Manganelli)

    • [FIX] More clang static analyzer fixes. (Jeff Johnson)

    • [FIX] Changed name to the canonical spelling 'ClickToFlash' plug-in-wide. (Simone Manganelli 1, 2, 3)

    • [FIX] Various fixes for H.264 variant checking. (Chris Suter 1, 2, Simone Manganelli 1, 2)

    • [FIX] Enable building when the project path has spaces. (Nathan de Vries)

    • [CHANGE] Deleted unused 'Remove from Whitelist...' contextual menu item. bug 79 (Jonathan Rentzsch)

    • [FIX] Added :restart task to Rakefile so that Safari is restarted when compiling a new ClickToFlash version. (Ale Muñoz)

    • [FIX] YouTube views now have a 'YouTube' badge if the 'Load H.264' preference is checked. (Simone Manganelli)

    • [CHANGE] Badge shows an ellipsis (...) if it's still checking for H.264 variants. (Simone Manganelli)

    • [FIX] Shortened obscenely long tooltips to 200 characters. bug 234 (Simone Manganelli)

    • [FIX] Vertical top-bias the badge by 60% so that centered loading text doesn't obscure the badge. bug 56 (Simone Manganelli)

    • [FIX] Sites that loaded 'about:blank' into an iframe for ads were having their ads auto-loaded. bug 240 (Simone Manganelli)

    • [FIX] YouTube videos loaded from www.youtube-nocookie.com were not being recognized by ClickToFlash. bug 249 (Simone Manganelli)

    • [FIX] Changed 'Open YouTube.com page for this video' to open in the current window in the host app rather than in a new window in Safari. (Sven-S. Porst)

  • 1.5b4 download

    • [NEW] "Play Fullscreen in QuickTime Player" contextual menu command for viewing YouTube videos in QuickTime Player (which has niceties like supporting the Apple remote). bug 216 (Simone Manganelli)

    • [NEW] Application-wide whitelisting for apps like Hulu Desktop, PandoraJam and Wii Transfer that utilize Flash. bugs 26, 118 and 230 (Simone Manganelli)

    • [NEW] User preferences now are stored in a separate file, allowing them to be shared across application. Parasitic prefs are migrated to the external file and then deleted. bug 73 (Simone Manganelli)

    • [NEW] Uninstall button (with a confirmation sheet) in the settings window. bug 226 (Simone Manganelli)

    • [NEW] Gradient on 10.4 now looks the same as 10.5 and 10.6. (Kevin Hiscott)

  • 1.5b3 download

    • [NEW] Additional executable architechure: x86_64. This addition enables ClickToFlash to work on Safari 4 on Mac OS X 10.6 Snow Leopard. ClickToFlash retains compatiblity with 10.4-and-later on both PowerPC and Intel (the full list: 10.4/ppc, 10.4/i386, 10.5/ppc, 10.5/i386 and 10.6/x86_64). (rentzsch)
  • 1.5b2 download

    • [NEW] Gear icon only appears upon mouse-over (hovering). (Otyr Ugla)

    • [NEW] Add custom gear image (derived from Cocoatron) for 10.4 systems which lack NSActionTemplate. (Michael Baltaks, Math Campbell)

  • 1.5b1

    • [NEW] Restoring 10.4 compatibility. (Michael Baltaks)

    • [NEW] Installer-package-building overhaul. Now creates 10.4-compatible .pkgs. Abandons evil .pmdoc files. (rentzsch)

    • [CHANGE] 10.4 compatiblity: only use -[NSBundle loadAndReturnError:] when it's available. (rentzsch)

    • [FIX] Work-around MATrackingArea 10.4 GC incompatiblity. (rentzsch)

  • 1.4.2 download

    • [CHANGE] Set WebPluginDescription to Shockwave Flash 10.0 r22. We have to bald-face lie in order to tip-toe around various in-the-wild broken Flash version detection scripts. bugs 176, 177, 178, 180, 185, 187, 188, 192 (Jeff Johnson)

    • [DEV] Start restoring 10.4 compatibility. Currently incomplete. (Michael Baltaks)

  • 1.4.1 download

  • 1.4 download

    • [CHANGE] Rename WebPluginDescription from ClickToFlash Flash 9.0 r151 to Shockwave Flash 9.0 r151 (ClickToFlash) to better spoof sites (like CNN video) that check for specific flash versions. (Simone Manganelli)

    • [CHANGE] Version now included in the 'Installed Plug-ins' page; added version number to settings window. (Simone Manganelli)

    • [CHANGE] Removed the installation check for Safari, because it was causing problems for people who had moved it from its standard location, and stupid PackageMaker doesn't have a way to check via bundle identifier. (Simone Manganelli)

    • [CHANGE] ClickToFlash's extension to .webplugin. Activate GC support in both ClickToFlash and Sparkle. (Simone Manganelli)

    • [FIX] Sparkle now correctly relaunches WebKit instead of Safari after installing an update. (Simone Manganelli)

    • [FIX] "Install plugin for user" Xcode target shell script. bug 153 (pom)

    • [CHANGE] Use same version numbering scheme as Flash plugin, because stupid web sites check for this. bug 161 (Jeff Johnson)

    • [FIX] Prevent installation on volumes other than the root volume. (Simone Manganelli)

    • [FIX] Replace use of deprecated methods. (Jacques Vidrine via twitter)

    • [FIX] Confusing installer UI that says it will install for all users and then only installs for the current user. (Simone Manganelli)

    • [FIX] Quote pathnames in installation script. (Cédric Luthi)

  • 1.4fc6 download

    • [NEW] Option to disable ClickToFlash globally. bug 94 (Patrick McCarron)

    • [NEW] Contextual menu item to download H.264 file from YouTube. (Simone Manganelli)

    • [NEW] Contextual menu item that opens the YouTube.com page for embedded YouTube players. (Simone Manganelli)

    • [NEW] .icns file so the Sparkle update dialog doesn't show the generic document file icon (Simone Manganelli)

    • [NEW] Dynamically loads Sparkle from internally bundled framework when host doesn't already use Sparkle. bug 99 (rentzsch

    • [NEW] Allow host apps that use Sparkle 1.5 or later to update ClickToFlash. (Simone Manganelli)

    • [FIX] Work-around an Installer bug. bugs 95, 96, 113, 122, 125, 126, 128, 133, 144 (Simone Manganelli)

    • [FIX] Sparkle crasher in scheduleNextUpdateCheck. (Jeff Johnson)

    • [FIX] Hang when loading Walmart pages. (Jeff Johnson and Simone Manganelli)

    • [FIX] Gear image was drawn in an incorrect position in rare cases. (Peter Hosey and Simone Manganelli)

    • [FIX] If the gear icon isn't drawn, the contextual menu no longer pops up if you click in the upper-left corner of the view. (Simone Manganelli)

    • [FIX] Correct tooltip on "Enable ClickToFlash" checkbox. (rentzsch)

    • [CHANGE] Opacity changes are now added to the original styles (instead of replacing) so positioning and other attributes remain unaffected. (Simone Manganelli)

  • 1.4fc5 download

    • Removes April Fool's special edition feature, fixes most broken sites.
  • 1.4fc4 download

    • April Fool's special edition. [Simone Manganelli]
  • 1.4fc3 download

    • This update is exactly the same as 1.4fc2 and only exists to test/demonstrate Sparkle updating.
  • 1.4fc2 download

    • [NEW] Added buttons in settings panel to allow for manual update checking. (Simone Manganelli)

    • [NEW] Nil hosts get whitelisted by default. This effectively disables ClickToFlash in Dashboard and other places where it might be desirable to do so. (millenomi)

    • [DEV] Add 1.4fc3 to appcast. It's functionally identical to 1.4fc2 and only exists to test Sparkle updating.

  • 1.4fc1 download

    • [NEW] Menu command to load all flash views -- or just invisible ones -- on a page. This should fix a number of sites that don't at first seem to work with ClickToFlash. (Simone Manganelli, et al.)

    • [NEW] "Click To Flash" menu item(s). Installs automatically into Safari and Vienna under their application menus. (Simone Manganelli, Jeff Johnson, et al.)

    • [NEW] Explicit YouTube support. Built-in support for directly loading higher-quality H.264 versions of videos (contextual menu item "Load H.264"). (Joey Hagedorn, et al.)

    • [NEW] Explicit sIFR support: ignore sIFR, always load it or always suppress it. bug 49 (Ian Wessman, et al.)

    • [NEW] Edit whitelist in Settings panel. bug 25 (Ben Gottlieb 1, 2, et al. 1, 2)

    • [NEW] Old custom installer replaced with a standard Installer.app .pkg. bug 27 (Alexander Brausewetter)

    • [NEW] Automatic plugin updating via Sparkle. bug 28 (rentzsch)

    • [NEW] Whitelisting now takes into account an object's src URL, which should allow embedded videos from whitelisted sites to play (e.g. YouTube). bug 57 (Ian Wessman)

    • [CHANGE] Badge now renders better on a variety of backgrounds.

    • [FIX] Fixed bugs identified by clang static analyzer. (Jeff Johnson)

    • [FIX] Fixed leak that caused all CtF views to not be deallocated by using validateMenuItem to update the Add <site> to Whitelist menu item instead of a binding. (1)

    • [DEV] Fix deprecated use of +stringWithContentsOfFile:. (Chris Parker)

    • [DEV] Clean up build settings. No need to build universal in Debug or link to Carbon. (Jeff Johnson)

    • [DEV] Add build warnings. Fix resulting warnings. Treat warnings as errors. (Jeff Johnson 1, 2)

    • [DEV] Populate CFBundleVersion with ${PRODUCT_VERSION} instead of hard-coding with 700. (Dave Dribin)

  • 1.3+tiger download tiger/leo version

    • [NEW] Universal Tiger/Leo PPC/Intel Compatibility! (Well, its been tested on Tiger/PPC and Leo/Intel, but the plugin is now universal and should work everywhere)
    • [NEW] The installer now also works on Tiger
    • [FIX] Darkened gradient on Tiger for better visibility
    • [FIX] Removed Copy address contextual menu as it was flakey
  • 1.3 download

    • [NEW] Flash badge is now drawn in code (vector image), and draws smaller in smaller flash boxes. bug 12

    • [NEW] Flash badge rotates counter-clockwise for narrow flash boxes. bug 12

    • [NEW] "Add to whitelist" contextual menu item now lists the url that's to be whitelisted. bug 20 (Kevin A. Mitchell)

    • [NEW] Extend coverage to <object> and <embed> tags that lack type or classid attributes by adding swf to the plugin's WebPluginExtensions Info.plist key. bug 19 (fds)

    • [NEW] Kill badge flicker for whitelisted sites (bug 17) and load all flash boxes when whitelisting one (bug 10).

    • [FIX] Remove -menuForEvent: as it already returns the NSResponder's -menu by default. (Dave Dribin)

    • [FIX] Remove CTFInstaller.m from the bare plugin target. bug 44 (Chris Parker)

    • [DEV] Make Rakefile honor build products directory. bug 43 (Chris Parker)

  • 1.2+tiger download tiger version

  • 1.2 download

    • [NEW] Handle <object> and <embed> that are missing a type attribute. That fixes a number of the broken sites. bug #19 (Jason Foreman)

    • [NEW] Activate on mouse-up, instead of mouse-down. Draw as "pressed in" during mouse-down, tracking the mouse like normal button. (Peter Hosey)

    • [NEW] Added a seperator to the context menu.

    • [FIX] Release build-time script that includes the project's entire build directory. (Peter Hosey)

  • 1.1 download

    • [NEW] Tasteful "Flash" icon now drawn on top of the gradient to make it more clear that it's blocked Flash content. (Ricky Romero, Justin Williams)

    • [NEW] Contextual menu and simple whitelist editor. (Dave Dribin)

    • [NEW] Show the Flash box's source as a tooltip. (Jason Foreman)

    • [NEW] Installer can update older versions. (rentzsch)

    • [NEW] Rakefile to compile & upgrade the plugin by running 'rake' in the directory. (Ale Muñoz)

    • [NEW] Localization support. (Eric Czarny)

    • [DEV] Clean-up. Nonatomic properties, remove unused methods, unsigned => NSUInteger. (Jim Correia)

    • [DEV] Change CFBundleIdentifier from com.google.code.p.clicktoflash to com.github.rentzsch.clicktoflash. (rentzsch)

    • [FIX] Installer now quits when canceling. (rentzsch)

    • [FIX] Removed the container image from the installer. (Eric Czarny)

  • original Google code project deleted. This fork takes on official-ish mantle.

  • 1.0+rentzsch download

    • Forked from original Google code project (Jonathan 'Wolf' Rentzsch)

    • [NEW] Site whitelisting by holding down option key when clicking a flash box. (Gus Mueller)

    • [FIX] Use -[NSEvent modifierFlags] instead of Carbon's GetCurrentKeyModifiers(). (Chris Parker)

    • [DEV] Store white-listed sites in an array instead of composite keys. (Jean-Francois Roy)

  • 1.0 original Google Code release

##Hidden Defaults

ClickToFlash has a few hidden preferences that can be used to control its functionality. These preferences have been added for development or experimental reasons and are not guaranteed to persist in future versions of ClickToFlash.

To use these hidden preferences, open the Terminal and type the following command: defaults write com.github.rentzsch.clicktoflash defaultName defaultValue, replacing defaultName and defaultValue with the appropriate values, then press return. To restore default functionality, use the following Terminal command: defaults delete com.github.rentzsch.clicktoflash defaultName, replacing defaultName with the appropriate value.

  • defaultName: enableYouTubeAutoPlay; possible defaultValues: "YES", "NO"; autoplays videos on YouTube once you click on the ClickToFlash view, assuming you're either logged out of YouTube or are logged in and have enabled this feature in your YouTube account settings.
  • defaultName: disableVideoElement; possible defaultValues: "YES", "NO"; disables the usage of the HTML 5 VIDEO tag, and uses the old QuickTime plug-in instead. Note, the VIDEO tag usually exhibits much better performance and lower CPU usage because it supports hardware acceleration, whereas the old QuickTime plug-in does not. However, some Macs seem to see an adverse effect on performance with the VIDEO tag.
  • defaultName: drawGearImageOnlyOnMouseOver; possible defaultValues: "YES", "NO"; shows the gear menu only when you're mousing over the ClickToFlash view, reducing visual noise for Flash-heavy pages.
  • defaultName: applicationWhitelist; to use this hidden pref, use the following syntax: defaults write com.github.rentzsch.clicktoflash applicationWhitelist -array-add bundleID . This whitelists Flash for a particular application, and causes ClickToFlash to automatically load all Flash inside the application whose bundle ID is "bundleID". (This hidden pref is guaranteed to persist in future versions.)