Introduction
CrystalClear Interface (CCI) is a powerful system add-on that lets you customize certain aspects of the Mac OS X “Aqua” interface. Version 2.0 adds significantly to the CCI feature set, and is also designed to be easier to control and configure. The latest version, 2.2, introduces a variety of useful features accessible from the CCI global menu, each of which is described below.

CrystalClear Interface lets you customize 5 basic sets of interface components in Mac OS X:
- The transparency of foreground windows compared with those in the background or in other, inactive applications.
- The color of windows and some text fields.
- The "frame" of various window types.
- Miscellaneous items such as scrollbars and the system menubar.
- Buttons, tabs, and other interface widgets.
In addition, the CCI Preferences panel offers the following "Extra" options:
- Animate the opening and closing of windows
- Use "Single Application Mode" (SAM), which reduces window clutter by keeping only one application active at a time. With SAM running, you typically use the built-in application switcher (⌘-Tab) to switch applications.
- Put the icon for the active application in the menubar in place of its name.
- Turn off shadows for inactive windows.
- Use recessed-style popup buttons.
- Suppress the horizontal scrollbar in file browser views.
- Use small scrollbars throughout.
- Move windows by their exposed background areas.
As with the previous versions of CrystalClear Interface, you can access the CCI Preferences panel by clicking on the small, round icon in the menubar of any application in which CCI is loaded. For example, here is where CCI’s menu appears in TextEdit:
This global CCI menu also gives access to the Help document, as well as a link to the CCI systemwide preference pane, through which you can turn CCI on and off entirely or just for individual applications.
What's New in CCI 2.2?
Most of the major changes in CCI 2.2 show up right in the CCI Global Menu (see screenshot). But there’s a lot more that’s changed under the hood, too!

- Rewrite of Text Contrast Code. The new code in version 2.2 is much more compact, requires less processing, and is more robust and accurate to boot!
- Window of Quick Tips for New Users. A lot of what CrystalClear Interface does—as well as how it’s done—is not your average application fare. It’s won’t even be familiar to users who have previously tried theming software on the Mac. So, I put together a small panel that shows up the first time a user launches an application hosting CCI. The new panel briefly points out some of the features and methods a new user needs to know to make the most out of CCI.
- Identifying Incompatible Applications. Starting in vertsion 2.2.0, CCI is maintaining a list of applications known to be incompatible with CrystalClear Interface. Whenever a user launches one of these apps, an alert notice will appear explaining the problem and offering to let them either “minimize” or disable CCI. It would be best if no such applications existed, but given the complexity of what CCI is doing, that’s never going to happen! The following applications are already on this list: Espresso, CSSEdit, Times, and Burn.
If you encounter an application that doesn’t work in CCI’s default mode, please email me a note so I can do some testing and add it to the list.

- Additions to the CCI Global Menu. CCI 2.2 squeezes a lot of functionality into its newly designed global menu. Here’s a brief rundown on the major changes:
- Minimizing and Disabling CCI. Now you can turn CCI off or minimize/maximize it right from the menu! Disabling adds the current app to the list maintained in the CCI System Preferences pane, and you’ll have to go there if you want to enable CCI for that app again. Minimizing and Maximizing can take place right from within the menu. Note that for any of these actions you’ll be asked to restart the current app.
- Specify Your Desktop’s Brightness. Since CCI can’t see through your windows to account for the brightness of your desktop picture, it’s never been able to re-set the contrast text color when your desktop picture changes. If, like me, you have a rotating set of desktop images you like to use, this required either some compromise in appearance or some time to change the CCI theme to work best with the new background. In CCI 2.2, you’ll find a handy setting in the global menu that lets you tell CCI that you have a Dark Desktop at the moment, or a Light Desktop. CCI will then take that information and intelligently apply it to the text in your current windows, including all your other open applications. It’s not perfect, but I’ve really enjoyed having it available!
- Text Tools. I added these 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. 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.) 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. All of these now appear in the new Text Tools submenu:
- Fonts
- Colors
- Table
- Font Options
- Add/Edit Link
- Toggle Ruler (which gives you access to lists, alignment, and styles, among other things.)
- New Window Frames. Based on a frame developed a few years ago for ShapeShifter called "Cathode," the new "Shiny Dark" frame is perfect for those of us who like a rich, dark, sleek look for windows now and then. This frame is now the default for CrystalClear Interface.

New in CCI 2.2.1: In addition to "Shiny Dark," CCI 2.2.1 (released 09.01.09) introduces a new frame called "Glass HUD." Glass HUD is another dark window frame, containing a lot of translucent black by default. Glass HUD is based on the new window frame Apple introduced in Snow Leopard, which is used for the display of Dock items, including the content of Stacks.
- Browser and Icon Views. File browser views, such as those in Save/Open panels, now get a complementary color, as do icon views.
- Custom Application Mods. Added some CCI theming to iMovie, iPhoto, Leap 2.0, and a few others. Also made some changes to handle Safari 4.0. In addition, I’ve just about finished theming the widgets in Apple’s iWork suite (Numbers, Pages, Keynote).
- New Window Animations. Yes, I’m still fiddling with these! This time around, the windows fade in as in version 2.1, but they zoom out more like Quick Look panels.
- Poor Man’s Contextual Menu. I plan to rework this in a future update, but here’s what you get in 2.2. In most of your applications running CCI 2.2, right-click (or Ctrl-click) on the window titlebar, and you’ll gain access to the application’s main menu, including, of course, the CCI global menu. This is a convenience for those of us who are too lazy to drag the mouse all the way to the system menubar. You won’t be able to access the menu in applications with toolbars that extend their own menus into the titlebar (e.g., Safari).
- New "Extras" Option. The "Extras" tab now includes an option to enable or disable the blur effect for window backgrounds. The effect helps readability and overall usability, but on some systems may also cause some distracting flickering of page elements. If you disable the blur, the change will take effect with the next window you open, not with your current one.
- "Frosted Crystals" Desktop Pictures. The CCI 2.2 download includes a set of 8 desktop pictures featuring a "frosted glass" look.
- Redesigned Preferences Panel. The preferences panel for CrystalClear Interface has been redesigned for version 2.2. The new panel has a different tab style and coloring, is somewhat smaller, includes more labeling and explanatory text, and accommodates more window frame styles. The screenshots throughout this document show the new panel tabs.
Adjusting Window Transparency
Once installed, CrystalClear Interface will modify windows in all of your running Cocoa applications with the following defaults:

- The front-most window, as well as all sheets, alerts, and "floating" panels will appear prominently with 99.9% opacity.
- Background windows in your current application will have their opacity reduced to 44%.
- The windows of your current application when it is "inactive" (if they appear at all) will have 33% opacity.
You can use the sliders in the first tab of the CCI Preferences panel to modify these defaults either globally, or on a per-application basis. Whenever you adjust the sliders in an application, those settings will be remembered the next time you use it. If you want to set the settings for all applications, simply click the "Set As Default" button for that setting.
More fine-grained control over window transparency is possible if you use the controls in the "Advanced" settings tab.
Advanced Adjustments.—In many cases, you may find it convenient to change—either permanently or temporarily—the transparency setting of individual windows in an application. CCI 2 gives you two ways of accomplishing this:

- Based on Window Titles. When you open the "Advanced" Alpha tab, the upper section shows all of the titled windows that are currently open. Click on any of these, and you can adjust its transparency using the slider below. The setting for this window will remain at that level 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.
- Based on Window Size. In some cases, you may want to customize the alpha 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.
Customizing Colors
CrystalClear Interface lets you set custom colors (including transparency) for your windows and text backgrounds. By default, the software installs with these settings:
- Normal window backgrounds are a light blue (similar to the color of the Finder sidebar) with an opacity of 65%.
- Sheets have a light yellow-gold background color with an opacity of 80%.
- Alert panels default to an orange-brown color with 70% opacity.
- The background color of "outline view" areas (such as those in iCal, Mail, etc.) are set in a light blue with 80% opacity.
- The background color of regular text views (such as the one in TextEdit) is white with 85% opacity.
To adjust any of these color settings, simply click on the color well and choose a new color.
CCI also automatically enables transparency in your Color Picker, so you can create semi-transparent colors most places where you encounter customizable color settings (e.g., Coda, Smultron, Activity Monitor, etc.)
Modifying Window Frames
CrystalClear Interface includes a variety of custom window frames that you can select for the various kinds of windows in Cocoa applications. There are 8 different frames for regular windows, 5 different windows for non-Utility panels (typically, the "About" window is a panel, but there are many others that you'll encounter... for example, Quicksilver's Preferences window is a panel), and 3 frames each for sheets and alerts.
You can combine these different frames with different window colors to achieve the window appearance you'd like.
By default, regular windows use the "Deep Bevel" frame, panels and sheets use the "Thin" frame, and alert panels use the "Simple" frame. To change window frames, simply open the CCI Preferences panel, select the tab for the kind of window you want to customize, and click on the frame styleyou want to use. The change in window frames occurs immediately.
Note.—Utility windows—such as the Font and Color panels, as well as Inspector panels for applications like Pages and iPhoto—are automatically themed as translucent black "HUD" panels. In a future version, perhaps, CCI will enable customizing these windows, as well as adding the HUD look as a window frame option.
Using Preset Themes

CrystalClear Interface includes four prebuilt themes designed to complement different kinds of desktop pictures (including the four included in the CCI download package):
- Aurora
- In the Dark
- In the Air
- In the Garden
To use one of these themes, simply double-click on the set of images associated with it. These themes are a fast shortcut for switching the frame style, transparency, and color of windows and text areas . . . all at once! I plan to enhance this feature by letting users design and save their own themes in a future release.
This tab provides a variety 8 other options, 6 of which are enabled by default. All of these are simple toggles: Clicking a checkbox turns the option on or off.
- Window Animations. This version of the software enables a fade animation when your windows open, and a zoom animation when they close. Window animations are enabled by default, but you can turn this feature off with this control.
- CrystalClear Interface Graphics. This option, enabled by default, activates the set of Leopard-themed CCI graphics for buttons, tab bars, check boxes, sliders, etc., instead of the default Aqua graphics. Note that turning this option on or off will cause the current application to be relaunched. Other applications will also need to be relaunched to complete the change.
Single Application Mode (SAM)
So... What is SAM? Despite its relative ubiquity as an option in Mac OS X applications that have some application-switching functionality, SAM is still unfamiliar to many Mac users. 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.
SAM's basic function is to hide all other applications and their windows whenever you switch applications. 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 2, as in many other apps that implement SAM, you just hold down the Shift key while switching. However, in my experience, there are very few situations where two applications' windows actually need to be onscreen simultaneously. Once you learn that you can drag and drop files, folders, images, etc., without having the source and target windows visible, you'll see what I mean. (One day soon, I promise to write an article fully explaining SAM on the Musings From Mars website.)
- Application Icon in Menubar. By default, CCI 2 replaces the name of Cocoa applications with the application's icon in the system menubar. This control lets you toggle that display.
- CCI Menu Item. By default, the global CCI menu icon appears in the main menu of all applications in which it's loaded. You can use this checkbox to move the CCI menu to the application's first submenu instead if you like.
- Recessed-Style Popup Buttons. This is the default style for popup buttons in CCI 2, as it was in 1.9. This new checkbox lets you turn the option off and use more standard popup buttons from the CrystalClear graphics library.
- Shadows Off for Inactive Windows. CrystalClear Interface can disable shadows for inactive windows if you choose this option, which is turned off by default.
- Single Application Mode (SAM). This option is enabled by default because it lets you get the most out of using the CrystalClear Interface. However, SAM takes some getting used to and isn't everyone's "cup of tea," so you can toggle this control to disable SAM for your system.
- Horizontal Scroller in Multicolumn Browsers. In CCI 2, this feature was enabled by default but users had no option to disable it. Now you can. I prefer to use my Mighty Mouse scrollball to navigate left to right in this kind of view, but I realize some folks would rather see and use the horizontal scroller. The screenshots below from Path Finder show the (visually subtle) difference, with (first shot) and without the scroller.
- Move Windows by Their Backgrounds. Also a hard-wired default in CCI 2, you can now disable the ability to move windows by their exposed background areas rather than just by their titlebar and (in some cases) status bar. CCI 2.2 is much smarter about disabling the option itself when it encounters a window that you don't want to be dragging--for example, windows like Preview or Image Capture where you want to drag a crop box over an image, or Interface Builder, where you want to rearrange and drag objects within and between windows. However, it's still not foolproof, so you can disable this feature if you need to.
- Use Small Scrollbars. Because I don't use scrollbars interactively much anymore, and because they save space, I prefer using small scrollbars instead of the usual ones. Some applications already give you this choice (for example, Path Finder and Yummy FTP), but CCI lets you choose small scrollbars in all your apps.
- Blur Window Backgrounds. This was a hard-wired default introduced in CCI 2.0, and now is included as an option you can enable or disable as needed. Why disable the blur? It turns out that the graphics function that supports the blur may strain some older systems with less memory. In addition, even the latest Macs can experience some flickering when system memory runs low, with the blur function running. Note that a change to this feature only takes effect once you close and reopen any windows already open.
Other Options & Tricks
More Options

- Minimizing CCI. Sometimes, rather than completely disabling CCI for an application, you may want to select the option to “Minimize CrystalClear for this application.” This option applies the gradient window frame to your application windows and preserves some other aspects of CCI’s theming, such as etched text. However, it disables all of the functions available in the CCI Preferences panel. Selecting this option requires CCI to relaunch your application.
Note that you can now minimize CCI from an option in the CCI Global Menu.
- CCI Global Menu. The CCI menu provides a variety of options you may find useful.
- About CrystalClear Interface identifies the current version of the application.
- Preferences opens the CCI configuration panel.
- System Preferences Pane opens the CCI panel in the System Preferences application.
- New in CCI 2.2: Minimize/Maximize CCI for [the current application] lets you “minimize” CCI 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.
- New in CCI 2.2: Dark Desktop/Light Desktop. These options let you specify whether your current desktop is very dark or very light. Doing so can change the contrast colors for text in your interface, making your current theme compatible with your new desktop’s brightness.
- New in CCI 2.2: Text Tools. This submenu provides handy access to text editing and formatting tools that are sometimes hard to find in a given application, or that aren’t present at all. You can use these features whenever you’re working in an editable text area, since they are built-in features of Mac OS X’s Cocoa text frameworks.
- Re-Crystalize Windows makes CCI go over the window's views again to try to catch changes to background color and other settings that it missed the first time around. (Note that most of the contrast colors are now set outside the CCI process itself, so this won't always fix a contrast problem.)
- Toggle Crystal Menubar turns the Crystal Menubar on or off depending on its current state. The Menubar is launched by default when you log in, as it's needed to support Single Application Mode (SAM). So if you toggle the Menubar off, you'll also disable SAM.
- How To Uninstall shows a panel describing how to uninstall CCI.
- Help displays this document.
- System Preference Pane. You can access the CCI System Preferences either through the CCI menu or by opening the System Preferences application. The pane has controls for turning CCI on and off globally, and
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.
- Restore Defaults. At the bottom of the CCI Preferences "Extras" tab is a button that you can use to restore CCI defaults to their original state. This will restore all global preferences for CCI and will erase any application-specific preferences you may have saved.
More CCI 2 Tricks
In addition to the preceding functions, which let you customize the behavior of CrystalClear Interface, the software does a lot of interface tricks behind the scenes... some that you may like, but some you may not. If you feel strongly about any of these, contact me and I'll consider making them optional in a future release. Since I've developed CCI to please myself, a lot of these items simply theme Mac OS X the way I'd like it to be.
- Boxes. CrystalClear Interface redesigns all visible boxes to use the new (Leopard only) "custom" box format. Boxes are colored in a light shade of your current window color, have rounded corners and a thin border, also colored to match your window's color. CCI also re-colors boxes that act as vertical or horizontal separators, again attempting to match them to the window color and luminescence.
- File Browsers. File bBrowsers, such as this one in Interface Builder, are modified so that columns are always resizable, and that they resize evenly. CCI also makes the browser extend the width of the window when you resize the last visible column.
New in CCI 2.2: CCI now also tackles the background color of file browsers in column view and icon view (list views were already handled by earlier versions). These now take on a light color that complements your window's color.
- Tables. CCI attempts to make table columns resizable as well as draggable.
- Alternating row colors. CCI dynamically modifies the colors used when alternating row colors are selected for tables to complement the color you've chosen for outline views.
- Text fields. Text fields that you type in, such as search fields, are modified to use the "rounded bevel" style.
- Etched text. Controls such as tabs and buttons are graced with the etched text style normally seen only in apps that formerly had the "metal" interface. CCI also etches many kinds of display text.
- Contrast text colors. CCI attempts to calculate the text color best suited to your current window color, taking other window elements (like boxes and tab areas) into consideration. Thus, text in dark windows should appear white, while that in light windows is black. You still may need to fiddle with your window's color and luminosity to achieve a satisfactory text color setting.
New in CCI 2.2: CCI 2.2 adds a function to the global menu that lets you specify your desktop picture's brightness, and this greatly helps to ensure the correct color contrast. In addition, CCI now correctly sets the contrast of form field labels.
- Custom application mods. CCI has made special modifications to some frequently used applications that required more and different care/handling. For example, CCI modified Safari's "Favorites" bar as well as its tab bar, to better handle these unique interface pieces (CCI 2.2 now also themes these elements in Safari 4.0). Another example is the iLife suite of applications--specifically iPhoto and iMovie, which have been customized in CCI 2.2. And then there are cases where an application-specific mod is employed to overcome an incompatibility with CCI. For example, DevonThink Pro's preferences window wouldn't work in its default state, but it works fine when re-themed as HUD window.
HUD windows. With CCI running, all "utility" windows, such as the Font panel or the Inspector panels Apple uses in the iWork suite, are by default themed in the translucent black "HUD" style.
- Colors. CCI lets you define an "alpha" value to colors whenever you use Apple's color picker. In addition, you'll find that CCI sets a custom color for the "focus" border of controls when you're using Safari. The color is designed to complement your current window color.
- Custom application graphics. CrystalClear Interface also includes a variety of custom graphics for certain applications and system components, in order to match their buttons and other widgets to the overall Leopard/CCI style. Among the applications that have such custom graphics are the following:
- Safari. Replaced progress bar graphics (Safari 3.0) and modified tab graphics (Safari 4.0).
- Mail. Replaced button graphics in compose window.
- New in CCI 2.2: iWork (Pages, Keynote, Numbers). Work begun in CCI 2.0 on the Inspector panels for these applications has been completed. All three have consistent buttons and toolbars, and all adopt the Leopard look and feel.
- Login window. Replaced round buttons.
Troubleshooting Tips
Contrast Text Colors
A great deal of work has gone into the effort to make text readable no matter what window color, frame style, or transparency setting a user has chosen. In CrystalClear Interface 2.2, you can specify the brightness of your desktop picture using a function in the CCI Global Menu, and this greatly helps to overcome the limitations of earlier versions. Still, the following suggestions explain how to fine-tune your windows to ensure correct contrast settings in nearly all cases:
- Choice of color, saturation, and brightness affect how well the contrast text color settings work. If you experience inconsistency in CCI's application of contrast colors, try choosing a color that's slightly darker or slightly lighter.
- Different window frames may also have an effect on how well contrast works if you have chosen a window color that's very close to the line between "dark" and "light." For example, the following screenshots show how the contrast color can vary depending on the window frame:
As you can see, the "Simple" frame (lower right) has a consistent white text color, while the "Glass" frame (lower left) has a consistent black color. The two frames at the top (Gradient Bevel, and Chiseled) have a mix. As shown below, a slight change of the color in one direction or the other (in this case, slightly lighter and less saturated) fixes this kind of problem.
Transparency
- If you're annoyed by a window that becomes transparent when you still need to see it, try one of two things:
- Change the "background window" transparency setting to a higher value. This will affect only the current application but will persist across sessions. With this setting, you can force the application to keep all background windows less transparent.
- In the Advanced Alpha tab, find the name of the window you want to remain visible and adjust its slider as needed. Again, this setting will persist across sessions. If the window has no title, you can use the setting in the lower part of this tab to control the window's transparency.
- You can change the default Alpha settings across all of your applications by using the "Set As Default" buttons on the opening screen of CCI Preferences panel. For example, if you want all windows of all background applications to display at 60% opacity rather than the default of 33%, set the slider at 60% and click the "Set As Default" button for that slider.
- If you want to a given application to remain more opaque when it's onscreen with another application, set the third slider on the main Alpha tab to the desired value you want when that application is inactive. Again, this setting is application-specific and persists across settings.
Window Animations
- If you experience incompatibilities with certain applications, or an unusual number of application crashes or hangs, try disabling window animations in the Extras tab. Some types of windows just don't like to be animated in or out by CCI. However, you can't disable animations for specific windows or applications. This is a global preference.
Drag and Drop
- 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.
Application Incompatibilities
- New in CCI 2.2: 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. Most of the applications in the list work well when CCI is "minimized," so I'd suggest you first try that option. Also new in CCI 2.2 is a function in its global menu that lets you minimize or disable the currently running application. The menu functions are alternatives to using the CCI Preferences panel checkbox for minimizing, or the CCI System Preferences pane for disabling. All of these options will relaunch the application for you, and you can see if that makes any difference. If not, go ahead and disable CCI for that application . (If you have an application that you find 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.)
Single Application Mode (SAM)
- If you use SAM, you'll occasionally need to see the windows of two applications at the same time. For example, when I run the screen capture program Constrictor, I need it to stay visible when I switch to the application whose window(s) I want to capture. In this case, I hold down the shift key while selecting the second (or third) application in the Dock.
- You don't need to have two applications visible if you merely want to drag and drop a file, folder, or image from one to the other. To do this, just make your selection and start to drag. Then, switch applications using the Mac OS X Application Switcher (⌘-Tab) and drop the item into your document as you normally would.
- Make the Mac OS X Application Switcher your best friend. Once this mode of switching apps is second nature, SAM will also seem completely natural (if it doesn't at first), and you'll wonder why you suffered so long with all those windows cluttering up your screen!
Known Bugs and Incompatibilities
Here are some of the major known bugs and incompatibilities in CCI 2.2:
- System Performance and Requirements. CCI will work best on a recent-model Mac with at least 2GB of RAM and a 2.0 GHz or better processor. It requires Mac OS X 10.5 ("Leopard") or Mac OS X 10.6 ("Snow Leopard"). When CCI is running, you will likely find that some applications launch more slowly than usual. You may also experience occasional application crashes. To minimize data loss, it's a good idea to get in the habit of saving your work regularly. If an application seems to crash regularly while running CCI, try minimizing or disabling CCI for that application (see previous section for more information). Because of limited testing to date (as of 09.01.09), CCI is less stable on Snow Leopard than on Leopard.
- Incompatibilities. The following applications are known to have some degree of incompatibility with CrystalClear Interface 2.2. Those for which CCI must be disabled are labeled as such, and those which work when CCI is minimized likewise. (The applications that "work minimized" are on the list now maintained by CCI... See the discussion of "Application Incompatibilities" in the previous section.)
- Disabled by default:
- Keychain Access
- DropCopy
- SmartScroll X
- Adobe Acrobat
- Work minimized:
- Times
- Espresso
- Burn
- CSSEdit (works only when launched with gradient-style windows, but can use other window frames after launch)
- Sandvox (minimized by default)
- Specific Snow Leopard Incompatibilities. Testing on Snow Leopard (Mac OS X 10.6) has been minimal to date. As noted in the section "Technical Notes" (below), CCI will not load into applications running with 64-bit memory addressing. However, users can override the 64-bit launch manually if they wish. In addition, CCI disables itself from running the following applications because of current incompatibility:
- Known Bugs.
- The titlebar buttons in 1Password's main window don't work. Trying to use them causes the application to crash.
- Activity Monitor will crash if you try closing its main window by clicking on the close button before otherwise interacting with the application.
- Safari’s window title doesn’t change when using the Gradient frame style.
- Yep reverts to its original background style when resized.
- A few implementations of the Sparkle updater can cause an application crash.
- Gradient Style Issues.
- Using this frame style may consume more memory than the other frame styles. If this is a problem for you, avoid use of the Gradient frame.
- You may experience application instability when switching to and from the Gradient theme. When switching to and from this frame style, it's a good idea to relaunch your application before proceeding.
- Carbon-Based Applications. CCI will not run in Mac OS X applications built with the older “Carbon” frameworks. It runs only in applications developed using the “Cocoa” frameworks. Most of the applications Apple builds today are Cocoa apps, with the notable exceptions of iTunes, DVD Player, and Finder. Nearly all new Mac apps built today use the Cocoa frameworks, but a number of long-running, high-profile apps are still built with Carbon. In this latter category are all apps from Microsoft and Adobe, as well as some older apps from Mac vendors that are now building with Cocoa, such as BBEdit (BareBones) and Snapz Pro X (Ambrosia). Another high-profile example is Firefox and related applications such as Thunderbird, Flock, and Nvu. (However, the Firefox-Gecko-based web browser Camino uses the Cocoa frameworks.) Besides these, other applications I use that are built with Carbon include:
Note, however, that if you are using the CCI Graphics option, the CCI graphics (buttons, etc) will be loaded by all applications that use the Mac OS X system graphics.
- Java-Based Applications. Many excellent Mac OS X applications are built today using Java; some use the Cocoa frameworks, and some do not. Those that use the Cocoa frameworks may load CCI correctly... for example, Moneydance and Google Earth. If you have any problems running a Java application with CCI, you can "minimize" or disable CCI for that app.
- Unusual Window Structures. Some applications have windows that CCI simply cannot theme well, despite its best efforts. Such windows typically have unusual structures or elements that CCI doesn't know how to handle. An example of this from an application I use regularly is the Info panel from Disk Inventory X, which refuses to apply contrast color to its text.
If you experience a particular problem not listed here, please email a report with as much detail as possible: llscotts <at> gmail.com.
Uninstalling CCI
To uninstall CrystalClear Interface, run the separate uninstaller program that comes with the CCI download package.

Do not attempt to uninstall CCI manually. During installation, the CCI installer makes various changes to your system defaults, including swapping out the default system graphics files. These defaults and files are restored by the uninstall program. Removing CCI components manually will therefore not completely restore your system to its original state. You must use the CCI uninstaller program to ensure that all of CCI's customizations are removed and your system restored to its original configuration.
Technical Notes
- Versions 1.9.0 and higher of CrystalClear Interface run only on Leopard (Mac OS X 10.5) and Snow Leopard (Mac OS X 10.6). If you are using Tiger (Mac OS X 10.4), you can use the previous version (1.8.12).
- CrystalClear Interface is a Cocoa InputManager plugin, which is loaded by Cocoa applications as they launch. With the release of Leopard, Apple has deprecated the InputManager API for Mac OS X, and they may disallow its use entirely in the future.
- CCI can be used on Snow Leopard, but will not load into applications running under the standard 64-bit memory system. Most of Apple's own applications run as 64-bit apps by default, and some newer third-party ones do as well. For these applications, you can load CCI by opening the Info window in the Finder and selecting "Open 32-bit" checkbox. In addition, the CCI graphics module is not yet compatible with Snow Leopard, so you'll see the default Snow Leopard buttons and other widgets rather than CCI's. Enhancements for using CCI on Snow Leopard are in the works.
Update 09.01.09: CCI 2.2.1 now has a Snow-Leopard-compatible installer and uninstaller that can be used to add or remove CrystalClear Interface on Snow Leopard.
- The components of CCI are:
- CCILoader.bundle, installed at /Library/InputManagers/CrystalClear. This bundle now loads the CrystalClear bundle for non-disabled applications and has separate code for "garbage-collected" apps.
- CrystalMenubar.app, a small application installed in CCI's application support folder.
- CrystalClear Interface.prefPane, installed at /Library/PreferencePanes.
- The CCI20 folder, which contains CCI's System Extras files, CoreUI SArtFile.bin, and various application replacement graphics. After installation, this folder also contains the system's original Extras.rsrc and SArtFile.bin files, which are restored when CCI is uninstalled. The CCI20 folder is installed at /Library/Application Support.
- A launch agent for CrystalMenubar, installed at /Library/LaunchAgents.
- By default, CCI prevents various system-level utilities and processes from loading it, as well as certain applications known to be incompatible. The following table list all of these exclusions in CCI 2.2. If you know of a similar process or application that should be blocked, either to avoid incompatibilities or to minimize unnecessary memory usage, please contact me.
|
Apple
|
Third-Party
|
AirPort Base Station Agent
Dashboard
Dashboard Client
Feedback Services Server
FileSync Agent
FileSync UI
Folder Actions Dispatcher
iCal Helper
iTunes Helper
Keychain Access
Metadata MDS
NetAuthAgent
PreferenceSync
|
PrinterProxy
QuickLook Daemon
ScreenSaver Engine
Security Agent
Security Fixer
Speech Synthesis Server
Spotlight
System Events
SyncUID
UI Agent
Universal Access
Window Server
|
Adobe Acrobat
BackTrack5BA
Chronosync Backgrounder
CleanApp Daemon
DropCopy
Growl Helper
Hazel Folder Watch
HazelHelper
SmartScrollX
SparkDaemon
TextExpander Daemon
USBCat
YouControlTunes Engine
|
Credits
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.
For More Information
Updated information about this software will be made available on the CrystalClear Interface website. In addition, background information about earlier versions is available from various articles on Musings from Mars. (Note that CrystalClear Interface is a separate product from the Crystal Clear theme for ShapeShifter.)
The following is a partial list of articles (in chronological order) you can read for further information:
Please send bug reports and feature requests to the developer at llscotts <at> gmail.com
License & Version History
License
CrystalClear Interface is Copyright @ 2007-2009, Leland Scott, Musings from Mars. It is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License.
Use of this software is free of charge, but redistribution or modification is prohibited without the author's permission. All rights reserved. The author assumes no responsibility for any damage to your system that may result from the use of this software. Please be sure to read all instructions and information in order to make the most of CrystalClear Interface.
Version History
| Date
|
Version Information
|
| 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.
|