CrystalClear Interface (CCI) is a powerful system add-on that lets you customize certain aspects of the Mac OS X "Aqua" interface. The changes made possible by CCI fall within six distinct group:
All of these features are accessed using the CCI Preferences Panel, which you can summon using the keyboard shortcut ⌘-' (command-apostrophe) or by accessing the CCI Global Menu. The global menu appears as a small, round icon in the menubar of any application in which CCI is loaded. The accompanying screenshot shows where CCI's menu appears in TextEdit.

One of the most significant changes in CCI 2.5 is that it's now fully compatible with Mac OS X 10.6 (Snow Leopard). CCI 2.5 is also the first version of CrystalClear Interface that requires a license to use after the initial trial period. The other major changes include:
Toggle your "menu extra" icons between black and white. Brand new in CCI 2.5.6, this function lets you switch to using white custom menu icons instead of the black defaults, as the need arises. (You can also easily switch back, of course!) Included in CCI 2.5.6 are 14 icons for the major Apple "menu extras," as well as icons for 14 third-party applications. There are a few differences between the way CCI works on Snow Leopard than it does on Leopard. Here are the most significant differences:
Thanks for asking! I've actually been able to remove several apps from the "Incompatible Apps" list that CCI started maintaining in version 2.2. From testing so far, the following apps work just fine on Snow Leopard, though they still don't on Leopard:
The following are still a problem, however, for one reason or another:
Once installed, CrystalClear Interface is set with factory defaults that you can customize to suit your taste, as explained below. By default, CCI sets the alpha value (transparency) of front-most windows to 99.9%, that of background windows in your current application to 44%, and that of windows of your current application when it is "inactive" (if they appear at all) to 33%.
In this view, the sliders on the left control the level of transparency for different types of windows.
The setting you choose in each slider will be remembered and applied as a new default for your current application.
Clicking a "Set As Default" button saves the slider's setting as a new default for all your applications.
The first slider settings control the transparency of your frontmost window (the one you're currently working in). This setting also controls the transparency of auxiliary panels, such as Inspectors and Font or Color panels, since they are programmed to match the main window's setting.
The first slider settings control the transparency of your frontmost window (the one you're currently working in). This setting also controls the transparency of auxiliary panels, such as Inspectors and Font or Color panels, since they are programmed to match the main window's setting.
The first slider settings control the transparency of your frontmost window (the one you're currently working in). This setting also controls the transparency of auxiliary panels, such as Inspectors and Font or Color panels, since they are programmed to match the main window's setting.
In many cases, you may find it convenient to change—either permanently or temporarily—the transparency setting of individual windows in an application. CCI gives you two ways of accomplishing this
The upper section of the Advanced Alpha tab shows all of the titled windows in your current application. Click on any of these, and you can adjust its transparency using the slider below. The setting for this window becomes its unique default until you remove it, by moving the slider all the way to the left.
Using this function, you can, for example, tell Safari to never to dim the Downloads window or the JavaScript Console window. Likewise, in iChat you may always want the buddy list window to remain (nearly) fully opaque. If a window always has the same title, this is a handy way to customize your CrystalClear Interface.
In some cases, you may want to customize the transparency of a window that has no title at all. You can use the settings in the bottom part of this tab for that. Simply select the checkbox, specify the size in x (width) and y (height) values, and set the slider. From then on, all windows with no titles that fit those dimensions will take on the transparency setting you've selected.
CrystalClear Interface lets you set custom colors (including transparency) for your windows and text backgrounds. The software sets some defaults when first installed, but you can change them to whatever values you like. (The quickest way to try some combinations out is to apply one of the preset themes.)
The Colors tab has six options. The top two are for text areas, and the bottom four are for windows.
The color selection here applies to areas of text that aren't editable but that have scrollbars.
This color is applied to outline views, which typically have an expandable/collapsable tree structure.
Changing this color affects regular windows—those that aren't preference panels, utility panels (such as Fonts, Colors, and Inspectors), sheets, or alerts.
A new option in CCI 2.5, you can now set a different color for panels than for regular windows.
This color is applied to sheet windows.
This color is applied to windows that pop up with alert-style messages. In addition, it's used on panels you use to open and save files.
CCI makes some automatic adjustments to colors that are designed to enhance the beauty and consistency of the CrystalClear Interface experience. Some examples include:
CrystalClear Interface includes a variety of custom window frames that you can select for the various kinds of windows in Cocoa applications. There are 9 different frame styles for regular windows, 7 for non-Utility panels (most Preferences windows are included here, as well as windows such as About panels), and 3 each for sheets and alerts.
You can change the frame styles at any time to suit your taste, also combining the styles with different window colors to achieve the window appearance you'd like. Selecting one of the preset themes also modifies frame styles for the different window types. To modify a frame style for a particular kind of window, first select the Frames tab from the CCI Preferences window. This tab has three sub-tabs, described below. In each tab, the currently active frame style is highlighted in blue.
To choose one of the 9 frame styles in this tab, simply click on the frame image.
To change frame styles for panel windows, switch to the Panels tab and click on the frame image of your choice.
You can find the style choices for these types of windows in the "Other" tab.

CrystalClear Interface includes eight prebuilt themes with fanciful names, designed to complement the set of Frosted Crystal desktop pictures that are included in the CCI download package). New in CCI 2.5.5 is an updated "Dark" theme ("Dark Light") that takes advantage of the improvements in this version's handling of dark backgrounds in tables and outline views.
To use one of these themes, simply click on the theme's thumbnail image. Doing so will instantly apply the settings from that theme to all of your open windows. The curently active theme in this tab view is the one highlighted with the shiny rectangular "lozenge."
CCI's preset themes are simply a fast shortcut for switching the frame style, transparency, and color of windows and text areas . . . all at once! Note that in CCI 2.5.5, you can switch among these themes right from the CCI global menu. In a future release, I plan to enhance this feature by letting users design and save their own themes.
New in CrystalClear Interface 2.5 is an installer (and uninstaller) for the Crystal Document icon set I recently released. These icons are designed to complement my set of Crystal Albook icons, released some years ago and based on the Albook icons designed by Laurent Baumann.
The initial set of 74 icons covers most of the document types used by Apple's applications, as well as a limited set of document types for third-party applications. The icon set for third-party apps will be augmented substantially as time permits.
Check this box to install icons for Automator, Font Book, iDVD, iMovie, iPhoto, iTunes, iWeb, Preview, QuickTime Player, Safari, System Preferences, TextEdit, AppleScript Editor, Console, Archive Utility, DiskImage Mounter, and Installer. (The specific document types are listed in the Technical Notes section.)
If you have Apple's Developer Tools installed, check this box to install icons for Xcode, Interface Builder, and PackageMaker. (The specific document types are listed in the Technical Notes section.)
If you use the iWork applications, check this box to install icons for Pages, Numbers, and Keynote.
Checking this box will let you installs icons for these apps the next time you launch them: Amadeus Pro, BannerZest Pro, Coda, DevonThink Pro, Edgies, Espresso, Photoshop, Smultron, and ThemePark. (The specific document types are listed in the Technical Notes section.)
By default, CCI will let you decide whether to install icons for a third-party app when you launch it. If you'd prefer not to be bothered with this alert, check this box.
If you have selected any of the first three checkboxes, clicking this button will proceed to install your selections. If you already have the selected set(s) installed, clicking the button will let you know this.
If you have already installed one of the first three icon sets and you deselect its checkbox, CCI will offer to uninstall that set immediately. You can decline the offer if you wish.
This tab provides a variety of additional options for customizing your Mac's interface and functionality. In CCI 2.5, these Extra options have been divided into four separate tabs, each covering a particular set of options: Paradigms, Graphics, Fluff, and "Other."
This tab gathers CCI options that require you to Think Different about ways to use the Mac interface.
Single Application Mode (SAM)
So... What is SAM? It frequently appears as an option in applications that have some application-switching functionality, but many users don't really know what it is or how to use it. Here are some of the apps I know of that offer SAM as an option:
SAM reduces window clutter better than any other method I've found, and, together with CCI's control over window transparency, provides a superior way to keep focus on your frontmost, active window.
Think of it as an automated way of clicking on "Hide Others" (⌥⌘H) each time you switch apps. But what if you need to see the windows of two apps at the same time? No problem! In CCI, as in many other apps that implement SAM, you just hold down the Shift key while switching. Once you learn that you can drag and drop files, folders, images, etc., without having the source and target windows visible, you'll become a SAM expert in no time!
For the full scoop on Single Application Mode, check out my Mars article from March 2010: "The Ultimate Solution To Window Clutter: You Can Call Me SAM."
Over time, the CCI global menu has incorporated a lot of functionality that isn't available in the Preferences window. This section describes the most significant of these functions.
The top items in the menu provide access to the CCI Preferences window, which is key for customizing your experience with the software. In addition, the item titled "System Preference Pane" opens Apple's System Preferences application and loads the Pane for CrystalClear Interface.
for adding applications to a "disabled applications" list. You can browse to add applications or drag them from the Finder. If you find that CCI isn't compatible with a certain application (e.g., it fails to launch with CCI loaded), try dragging it to this list and relaunching it. The pane also has a control for checking on CCI updates, and a Help button that launches this document.The functions in this section of the menu have been reorganized and streamlined in CCI 2.5. In addition, a heading has been added to clarify their role.

This item lets you “minimize” CCI for your current application. Instead of completely disabling CCI for the application, minimizing preserves some aspects of CCI’s theming, such as etched text, transformation of utility panels into HUD style, some coloring, and a gradient window style. It also preserves access to the CCI global menu and all of its functionality. However, it disables all of the functions available in the CCI Preferences panel. If you select the "Minimize CCI for..." option, CCI will need to relaunch your current application. When it restarts, the menu option will change to "Maximize CCI for...", which will reverse the process.Selecting this option requires CCI to relaunch your application.instead of setting the checkbox in the CCI Preferences panel. For an application that’s been minimized, the menu option will then change to let you “maximize” it.
So, why would you want to minimize CCI for a given application? Typically, you would take this step if an application has become unstable while running with CCI inside. Quite often, minimizing CCI will reduce or eliminate any instability and is a useful step to take before deciding to disable CCI for the app.
Selecting this function will relaunch your current application, after which it will run without loading CrystalClear Interface. You will no longer have access to the CCI global menu in this application, but you can use the CCI System Preferences pane to re-enable it if you wish. Using the global menu item to disable an application has the same effect as dragging it into the list of disabled applications in the pane's list, as described previously.
|
Apple |
Third-Party |
|
AirPort Battery Bluetooth Displays Eject iChat Ink Spaces Spotlight Sync TimeMachine UniversalAccess User Volume |
Autopilot Bowtie Chronosync CoverSutra DropCopy Evernote FastScripts GeekTool Growl Hazel iKey MagicPrefs OpenMenuX Squeeze |
I added these tools to CCI out of frustration that many of the fine apps I use for formatting text leave out one or more of the various text format panels that are part of Apple’s Cocoa frameworks. Sometimes you can’t find a Color panel, sometimes the Font panel is hidden, and outside of RTF editors like TextEdit, Bean, and DevonThink Pro, you hardly ever have easy access to the Table panel. And if you want to make a list or use your defined text styles, you can toggle the formatting Ruler on and off as well.
Besides those, there’s one incredibly useful text panel that I’ve never seen implemented in any Mac OS X application: The Font Options Panel. Once you get your hands on this, you’ll want it at the ready, as I do. (Apple has built many of its features into the Font panel you can find in iMovie.)
In CCI 2.5, the Text Tools section has been significantly expanded.
The Help section of the CCI global menu has also been expanded and reorganized. Besides finding a link to this documentation in the menu, you'll now find the following items of particular interest:
Rather than having to find and launch a separate program to uninstall CrystalClear Interface, you can now do so simply by selecting this menu item. Of course, the Uninstall panel does give you an out if you change your mind. :-)
This item provides a quick and easy way to send me feedback about CrystalClear Interface.
When choosing a window frame, notice that some of them look better with a more transparent color (e.g., Smooth, Glass), while others (e.g., Deep Bevel) look best with less transparency.
If you change your window themes, or your window colors, and find that your tables, outline views, boxes, and other interface elements are no longer coordinated with your window colors, try selecting CCI Tools > Other Tools > Re-Crystalize Windows from the CCI global menu.
If you find that text on window elements no longer sets its color to the correct contrast (either black, or white), check your setting for "Desktop Brightness." You may have earlier selected "Dark Desktop" or "Light Desktop" from the CCI global menu, but now need to change that setting.
When the option that makes windows draggable is enabled, you may encounter a window that drags when you don't want it to. These are windows that have images or other items that you'll need to drag about, and you don't want such dragging to affect the whole window rather than the objects in question. CCI prevents most such conflicts, but you may still encounter problem windows. If you do, try holding the Control key while dragging. This usually lets you work around the problem. If that doesn't work, consider turning off the "draggable windows" option in CCI's Extras preferences tab.
If CCI isn't loading into one of your applications, there are three possible reasons (that I know of):
There are a number of known bugs in this version of CrystalClear Interface. Some affect only Snow Leopard, some only Leopard, and some both. A full set of known bugs is now available on this website. Here are the more noticeable bugs, and possible workarounds. All these will hopefully be resolved in a future update:
CCI now maintains a list of applications known to be incompatible when it is running normally. The first time you open such an application, you'll see a warning that gives you the option to either "minimize" CCI or to disable it entirely. The notice will also explain the difficulty and provide a suggestion about whether to disable CCI or to minimize it. You can also disable or minimize CCI from its global menu. (If you know of an application that is incompatible with CrystalClear Interface, please drop me an email letting me know, so I can either try to fix the problem or add the app to the list.)
Incompatibilities on Snow Leopard:
Those interested in more technical information about CrystalClear Interface—including details about its components and changes made during installation—refer to the "Technical Notes" document that's included in the CCI download package.
The development of CrystalClear Interface has benefited from the work of many fine Cocoa software developers who have been generous enough to make their work available as open source for others to use and learn by. The following is a list all of the developers CCI is most deeply indebted to (many of whom would probably prefer not to have their work associated with it!). :-) In some cases, these developers' code were mainly inspirational, while in other cases I shamelessly lifted their work and plopped it into CCI. The list is not in any particular order.
| Developer (Application) | Class or Project |
| Andy Matuschak (Sparkle) | NSFileManager+Authentication (class) |
| James Hoover (Bean) | Strikethrough, logout code |
| Uli Kusterer | UKCustomWindowFrame (class) |
| Matt Gemmell | PolishedWindow (class) |
| Dave Batton | DBBackgroundCheck (project/demo) |
| Wade Tregaskis | Rotated Windows (project/demo) |
| Jeff Ganyard | Styled Windows (project/demo) |
| Frank Vercruesse | DeVercruesseProcess (and related classes) |
| HAS (objc-appscript) | connect (class) |
| Makoto Kinoshita (Shiira) | HMBlkScroller (class) |
| Alcor/Blacktree (Quicksilver) | NSWorkspace_BLTRExtensions (class) |
| Allan Odgaard (TextMate) | Relaunch code |
| Michael Parrot | SetAlphaValue (software) |
| Peter Borg (Smultron) | General inspiration and excellent code |
| Omni Group (OmniFoundation) | NSObject-OFExtensions |
| Graham Cox (DrawKit) | NSColor+GCAdditions |
| David Sinclair (Dejal Systems) | DSWindowCategories |
| Darkshadow (Night Productions) | DSGeneralOutlineView |
| Geoff Reedy (StepMenus) |
StepMenusPreferencePane (class) StepMenusDisabledApplications (class) StepMenusCommonUtils (class) |
| Steve Gehrman (CocoaTech) | NTPrefsBox (class part of the PathFinder SDK) |
| Date | Version Information |
| 08.01.10 | 2.5.6.3. This release fixes a few bugs that can have a noticeable impact on window and view display. Bug fixes:
|
| 07.29.10 | 2.5.6.2. This release addresses several bugs, and adds some minor enhancements. Enhancements:
|
| 07.21.10 | 2.5.6.1. This release addresses several bugs, and some minor enhancements. Enhancements:
|
| 07.12.10 | 2.5.6. This major release, a free upgrade for all users, includes the following new features, enhancements, and bug fixes. The new features only apply when running CCI 2.5.6 on Snow Leopard. New features:
|
| 06.09.10 | 2.5.5.1. This update fixes a bug that prevented users from changing the transparency of windows from the CCI Preferences window. The bug affected transparency values for front, back, and back application windows, as well as special values for titled and untitled windows. |
| 06.07.10 | 2.5.5. This update contains the following changes: New features:
|
| 05.05.10 | 2.5.4. This update contains the following changes:
|
| 04.30.10 | 2.5.3. This update contains a number of bug fixes and improvements to existing functions, including
|
| 04.25.10 | 2.5.2. This update fixes numerous bugs and makes other improvements, including:
|
| 04.18.10 | 2.5.1. This update strengthens the filter that keeps CCI from loading into Carbon applications like Adobe Photoshop. It fixes several bugs that could cause apps to crash: Because of a problem updating the application menu, in some cases where a user has no license file, and in some cases when terminating applications. It also changes the method for determining alpha value of alternating row colors, and modifies the ResetFinder script. |
| 04.14.10 | 2.5.0.2. This update fixes a bug that affected setting menubar icons on for Snow Leopard (64-bit apps only). It also correctly sets the application version number for update checking, and modifies the ResetFinder script. |
| 04.13.10 | 2.5.0.1. This update fixes a problem removing disabled applications from the CrystalClear Interface System Preference pane, when the application to be removed no longer exists on the user's system. It also adds a warning for Leopard users when they turn on the option for showing the application icon in the menubar, explaining that this option will disable the Services menu that appears in the application menu. For Snow Leopard users, this update adds a warning that turning on window "background blur" will cause display problems for windows appearing in Expose and Spaces. Finally, it fixes the installer to account for users who don't already have a ScriptingAdditions folder, so that SIMBL will be correctly installed. |
| 04.09.10 | 2.5.0. This version adds numerous enhancements and bug fixes. Enhancements of particular note:
|
| 09.08.09 | 2.2.1.1. This release is a universal binary that will work on both Intel and PowerPC systems. It fixes a bug that caused certain kinds of windows (e.g., Adium's Contacts list) to gradually expand vertically each time they were reopened. It also updates the version number shown on CCI's windows to 2.2.1. |
| 09.01.09 | 2.2.1. Adds support for installing CCI 2.2 on Snow Leopard, and adds a new window frame, "Glass HUD," to CCI Preferences. Also fixes a bug that caused text color contrast to be unreliable in Find panels. This release should also fix a problem users have reported about running CCI on PowerPC G5 systems. |
| 08.27.09 | Version 2.2.0.2. Fixes the installer to prevent installation on Snow Leopard systems. Fixed the uninstaller to handle the latest versions of 2.2. |
| 08.25.09 | Version 2.2.0.1. Fixes a bug that could cause table views to disappear temporarily. Also adds a new option to let users disable the window blur effect. |
| 08.20.09 | Version 2.2.0. Major upgrade adds several new features to the global menu item, improves the contrast color functionality, expands theming to new interface elements and more applications, provides better handling of incompatible applications, and includes an introductory window for new users that highlights usage tips. Also implements numerous bug fixes expands compatibility to more applications. |
| 06.17.09 | Version 2.1.4. Fixed a bug that disabled users' ability to tab between buttons, text fields, and other interface controls in applications running CCI |
| 06.14.09 | Version 2.1.3. Fixed a bug that prevented users from adding applications to the disabled applications list in the CCI System Preferences. This would occur when the list was empty, but did not affect users who already had at least one application in the list. |
| 06.13.09 | Version 2.1.2. Fixed a bug that could cause some applications—those few that don't immediately set up their menubar—to crash on launch. An example is myWebLog from MOApp Software. |
| 06.10.09 | Version 2.1.1. A few bug fixes to keep some types of windows from going "zombie" when closed, and to fix and modify the routine for animating windows out. |
| 06.05.09 | Version 2.1.0. Adds blur to window backgrounds, supports garbage-collected applications, includes new preset "themes," adds updated graphics as well as numerous interface enhancements. Fixes a slew of bugs and improves compatibility with more applications. |
| 02.05.09 | Version 2.0.0. Incorporates numerous improvements and new features, including an expanded global menu, a System Preferences pane, a set of custom window frames, more custom color elements, a fully functional Single Application Mode, much more reliable text contrast colors, standard Leopard button design, expanded use of the etched text style, and more. |
| 03.23.08 | Version 1.9.1. Incorporates a program as part of the uninstall process that makes sure the Leopard graphics are fully restored to their original state. This program, GraphicsToggle, is also included separately in the download package for users of CCI 1.9.0 who want to use it after uninstalling. |
| 03.12.08 | Version 1.9.0. Significant improvement in stability, and numerous extensions in capability. CrystalClear Interface 1.9 begins tackling theming chores previously handled by ShapeShifter, and also makes its presence felt visually on “disabled” apps. The installer optionally installs a system graphics file that replaces some images with those from the ShapeShifter version of Crystal Clear. Note: Starting with this release, CCI will only run on Mac OS X 10.5 (”Leopard”). |
| 01.02.08 | Version 1.8.12. Additional round of performance optimizations and bug fixes. Targets include iPhoto, iChat, Photo Booth, iWeb, and, on Leopard, Quick Look. |
| 12.19.07 | Version 1.8.1. This version adds an option to disable the "window shine", as well as makes a number of improvements to stability and performance. |
| 12.01.07 | Version 1.8.0. This was the first public release of CrystalClear Interface. |

