Free Software by Sam Clippinger -- Kontrashulator widget

Author: Sam Clippinger <samc (at) lookandfeel (dot) com>
Copyright: ©2004 lookandfeel new media
License: GNU GPL
Current version: 1.1.0 Archived versions: All versions Documentation: Change Log
Dependencies: None.

Source language: Javascript 1.2
Target platform: Konfabulator 1.7 or better on Mac OS X.
Description: Kontrashulator is a Konfabulator widget that provides a trashcan on the OS X desktop to duplicate the trashcan in the Dock. Since many power users don't use the Dock, having a visible trashcan is very handy.

Kontrashulator also provides a few features that the Dock's trashcan does not. First, it displays the number of items in the trash and their total size. Second, it forces the desktop and the Trash folder to update themselves after an item is deleted, which often makes the item disappear from the screen much sooner than it would if it were dragged to the Dock's trashcan.

Just like the Dock's trashcan, Kontrashulator will eject volumes that are dropped on it and will prompt for authentication if necessary to delete the items.

Kontrashulator will also (optionally) automatically remove items from the trash when some configurable conditions are met. The two available options are size and age.

If Kontrashulator is given a size limit, it will remove the oldest items from the trash until the total size of the trash is lower than the limit. The limit is set in the widget preferences as a number of gigabytes (fractional values are allowed: 0.005 will set a limit of 5 MB, for example). Setting the limit to 0 disables the feature entirely. The default is 0.

If Kontrashulator is given an age limit, it will delete items from the trash when they have been in the trash for longer than the age limit allows. This feature is disabled by default. NOTE: Mac OS has no way to record when an item was deleted. Therefore, Kontrashulator has to keep track of the items in the trash on its own. Because of this, to describing this feature as "removing items that have been in the trash for an amount of time" is a little misleading. It is more accurate to say that this feature will remove items that _Kontrashulator_ has watched sit in the trash for an amount of time. The practical impact of this difference becomes significant when Kontrashulator is first run: all the items in the trash are considered to be newly deleted, even if they were deleted years ago. Once Kontrashulator has been running for a while, this distinction has no impact.

If Kontrashulator is given both an age limit and a size limit, items are only removed when both limits are reached. For example, if an age limit of 3 days and a size limit of 10 GB are set, a 20 GB file will not be removed until it is 3 days old. To continue the example, if the total size of the trash is 1 GB, no files will be deleted, even after 3 days. When the size grows over 10 GB, only items over 3 days old will be removed.

When Kontrashulator removes items, it uses the same procedure that the Finder's "Empty Trash" feature does. Kontrashulator does not duplicate the Finder's "Secure Empty Trash" feature.

Future plans include:

  • Adding preferences to allow the user to set the size of the images.
  • Adding preferences to allow the user to hide the images or the summary text.

Known issues:

  • Because of the use of AppleScript to do the deletions, detecting a deletion/ejection error is very difficult.

Kontrashulator is distributed free of charge under the GNU General Public License.

Kontrashulator's code is Copyright 2004 lookandfeel new media:
Kontrashulator's images are Copyright 2002 RAD.E8, Sascha Hohne:

This project is mirrored from