Sticker 3.1.0 final
Sticker is supported on Windows 2000/XP/Vista, Mac OS X (PowerPC
and Intel), Linux (Gtk) and Solaris (Gtk). Sticker is
known not to run on Windows 95 and has not been tested on any
of the Window 9x releases (including Windows 98 and Windows ME).
Sticker comes either as a self-installing package or as a ZIP
file. To install the ZIP, extract it and start Sticker by running
either "sticker.bat" on Windows, "sticker.sh" on
Unix or the Sticker.app application bundle on Mac OS X. See the
"README.txt" file that comes with Sticker for more information on
Changes in 3.1.0 final
This release fixes an incompatibility with the Avis router that
caused an error when trying to change presence groups. It also updates
to SWT release 3.4, which fixes a number of small user interface
annoyances on Mac OS X and Linux/GTK.
Changes in 3.1.0 RC 2
Release Candidate 2 adds support for Intel Macintoshes and fixes a
number of scrolling and performance issues under Mac OS X. It also
updates Windows and Gtk interfaces by updating the packaged SWT
framework to to the latest 3.2.2 release. It also updates the Java 1.4
JRE packaged for Windows to a more modern Java 5 JRE.
Changes in 3.1.0 RC 1
Sticker 3.1 RC1 is a stabilisation release and aims to address all
known bugs reported against beta 2. Various minor features have been
added where they have been judged as unlikey to introduce new bugs. It
is not intended to add any further features before the 3.1 final
A key change is that 3.1 RC1 significantly improves support for Mac
OS X, fixing all known showstopper bugs and adding OS X specific
improvements such as a fully-functional application menu and autohide
- Reduced CPU usage on Mac OS X from unusable levels to below
10%. Further reductions await improvements to SWT's animation timer
- Updated to SWT 3.1. SWT 3.1 significantly improves support for
Linux, Solaris and OS X and this update fixes various bugs on both
platforms, including truncated text in combo boxes on OS X.
- Added full application menu support for OS X, including support
for accelerator keys for the Preferences command and other common
- The docking default location has been changed to the top of the
screen on OS X so it appears under the main menu. This works better
than at the bottom, which is often used by the dock.
- The currently active presence status is now shown as checked on
the status menu.
- Reduced the sensitivity of Sticker's "idle detection" logic to
reduce liklihood of mouse jitter affecting accuracy.
- Now tries to use a shortened version of the local domain in the
default user name if available e.g. "user@dsto" rather than
"user@sticker". If a domain is available, it is also suggested as a
presence group default.
- Fixed a bug that was hiding subscribed "personal" groups in the
- The Windows installer no longer installs Sticker as a startup
item for all users, just the local user.
- The Escape key no longer exits Sticker.
- Message actions "Beep" and "Mark read" can now be negated
(i.e. can specify "Do not beep" and "Mark unread").
- Added "Copy Message" command to ticker context menu.
- Disabled auto hide for Gnome. Will be re-enabled when it's
- Improved the order and naming of message actions.
- Fixed error when using a scope combined with "*" for Elvin
- Fixed problems with launching the system default browser for
opening attachments. No longer requires workaround for Firefox users
on Windows and users of any browser on OS X and Linux.
- The "Online People" window is now titled "People Online" for
- The Messages Window and message composition dialogs now appear
as top-level windows on Windows and Gnome (they are now visible in
- Autopopup now works correctly on OS X.
- Fixed problems with presence status sometimes showing Sticker as
offline when in fact it is connected. This often occured after a
- Now executes a full reconnection cycle if disconnected for more
than 30 seconds. This works around various reported but intermittent
errors that seem to be due to the auto-reconnection logic in the
Java Elvin SDK.
Changes in 3.1.0 beta 2
Sticker 3.1 beta 2 is a bugfix release. In particular, it fixes a
serious bug triggered by changing user nickname from the Preferences
window. It also fixes an error in the implementation of secure
messaging, which will affect any users that have made public keys
available. All users of 3.1 beta 1 are strongly encouraged to
NOTE: The security fixes in this release re-enable secure
messaging between Sticker and other clients such as xtickertape, but
mean 3.1 beta 2 will not accept secure messages from the previous beta
- Fixed serious bug that would cause Sticker to silently fail to
start after changing the user's nickname. This was caused by a
corruption of the preferences file: Sticker 3.1b2 will
automatically fix this error and will no longer fail silently if
a similar situation occurs in future.
- Fixed error in group subscription logic that would cause it to
miss pure ticker v3.0 messages (ie messages without
backwards-compatible v1.0 fields).
- Fixed bug in message handling where messages with no explicit
version tag were assumed to be v3.1 (now assumes 3.0).
- Upgraded to latest Elvin client library with fix to HTTP
tunnelling support: previous release ignored port number.
- Added X-NNTP-Host: "fake" and "Timeout" fields to newsgroup
- Changed icon for secure messages to a small padlock.
- When running a second instance with the same home directory, the
second instance will no longer attempt to save preferences,
avoiding potential preferences file corruption.
- Fixed broken "raw" key IO feature to support importing keys from
clients such as xtickertape.
- Fixed secure messaging error introduced by person-to-person
secure messaging feature. Sticker 3.1b1 allowed holders of a
public key to post securely to a group secured with the
corresponding private key.
- Fixed various errors in source code API documentation.
Changes in Sticker 3.1.0 beta 1
Sticker 3.1 is primarily a consolidation release and has a large
number of improvements and bug fixes, but relatively few new major
features. Release 3.1 maintains full forwards and backwards
compatibility with Sticker 3.0 and other modern ticker clients and is
a recommended upgrade for Sticker 3.0 users.
- Lots of usability improvements: reorganised order of items in
preferences, improved checking of settings in dialogs, clearer
hint text, improved error/warning messages.
- Added new "Never Scroll" ticker scrolling mode plus fast expiry
- Improved virtual presence: better buddy support, tabbed Online
Users dialog, ticker notifications when users on/offline.
- The message dialog is now much smarter and displays immediate
warning and hint messages just above the Send/Cancel buttons,
eg when sending to an offline user, unsubscribed group,
- Improved messages window: paperclip icon on messages with
attachments, red star on unread messages, hide read messages
option, optional "flat" chronological view.
- Improved secure messaging: secure group setup can now be done
entirely from the Security area on the group properties window,
secure person-to-person messaging by exchanging public keys is
- New administration options: can now specify template config
files that provide local settings. Various user interface
control options are provided: eg to lock-down ID changes and
- Finally fixed that issue that was causing rare but critical
message database corruption errors. This was caused by a subtle
race condition in the database library.
- The "Online Users" window now shows tabs, one for each presence
group plus "All" and "Buddies" tabs. Changing tabs filters the
view to show only the users in that presence group (initial
implementation contributed by Mofeed Shahin).
- The properties window for online users has been re-organised to
show separate "Presence Groups" and "Buddies" tabs. Custom
properties are now shown in the "Identity" tab and can now be
copied to the clipboard. You can now add/remove other people's
presence groups and buddies from this window by right clicking
- Now uses Java 1.4's support for system-level file locking to
detect when a second instance of Sticker tries to access the
message file rather than the problematic ".lock" file approach
used previously. This stops the scary warning dialog when either
the computer or Sticker were not shut down cleanly.
- Added option to add a buddy from the Online Users window (right
click, select "Is Buddy"). Also added option to generate ticker
notification when selected users go on/off line (in Online Usets
window, right click and select "Notify When Online").
- You can now explicity request a refresh of a selected user's
presence info by right-clicking and selecting "Refresh".
- Pressing Enter in the middle of the next in the New Message
window no longer inserts a bogus newline before sending the
message (due to a SWT bug this is not fixed on Linux).
- Sending a message when enter pressed in message text area is now
- Added ability to easily invite others to a ticker group (will
not work with users of pre-3.1 releases though).
- Added option to disable automatically subscribing to any message
sent by someone with your nickname.
- Improved stability of power suspend/resume and hibernate support
on Windows. Now disconnects and reconnects to Elvin and
correctly restores all presence info. Fixed bug in restoring
presence status on power resume.
- Child windows such as the Messages Window, Online Users, etc no
longer pop to the front when Sticker pops up on receiving a new
- Increased robustness of ticker message handling against bogus
messages and attachments.
- Automatic popup up of the ticker on a new message no longer pops
up any other open but obscured windows.
- Optimized Elvin traffic when adding/removing buddies or changing
- Buddies are now included in presence info.
- On Windows, the Sticker icon in the taskbar is now restored if
- Clicking the middle button on an empty part of the ticker or the
Sticker taskbar icon is now a shortcut to show the Messages
- Can now import/export keys from a the Group Properties
- Can now send messages securely person-to-person by exchanging
personal public keys.
- Added support for ticker protocol version 3.1.
- Messages Window now uses relative time format (eg "34 seconds
ago") for recent messages.
- Added "Hide Read" option to Messages Window.
- Added option to view messages in unthreaded "flat" mode in
- Message icons in messages window now have a paperclip when
attachments are included. A red icon decoration is now used for
unread messages rather than a "*" in the text.
- Message composition window now displays warning/info messages,
for example when sending to an offline user.
- Added "Ocean" scroller colour theme.
- Improved admin config support: disable group unsubscribe,
disable nickname change. Added ability to specify default values
for the "Distribution" field when "World" or "Local" messages
- Now shows a welcome message with link to help file on first
- Fixed "sticky" tray menu problem.
- Moved "Compact" button from Messages Window to preferences
- Fixed bug where subscribing to a ticker group sometimes wouldn't
show it in the list while "Hide Others" flitering was on.
- Improved display of key attachments in attachments editor.
- Added copy/paste commands for fliters in message rules and
- Fixed subscribers display in Messages Window when a new user
comes online. Offline users are no longer displayed.
- Added "never scroll" tickertape option plus fast expiry.
- Now handles ticker font size changes better.
- "World" and "Secure" controls in the New Message Window are now
- The "Ticker Groups" section of the preferences window is now
split into three tabs "Chat", "News" and "Advanced".
- Improved handling of messages with no ID: an internal ID is now
created from contents of message which improves swatting of
- Tweaked advanced groups and message rules so they are not in
effect until their parameters are filled in.
- Multi-line chat messages are now shown on the ticker up to a
maximum length (400 characters) rather than until the first
newline. This length can be changed by setting the
sticker.scroller.maxMessageLength system property: see
README.txt for more information.
- On Windows, preferences are now stored in the system-specified
roaming application data area rather than in a ".sticker3.1"
- Added a "Mute Ticker" option to the main menu. Custom statuses
with ticker muting are now noted as such in the menu.
- Improved docking behaviour on Windows systems with multiple
- Fixed bug where Elvin URL was being ignored on Linux.
- Repackaged for OS X: ditched installer, now uses ZIP'd
application bundle. Egon Kuster provided a high-res icon.
- Added (slightly bogus) application menu on Mac OS X.
- Improved layout and usability of source distribution.
Known Problems In This Release
Launching crash on Windows 2000: problems with the Sticker
EXE causing a GPF have been seen on some Windows 2000 systems. Please
author if you encounter this issue and would like to trial an
OS X CPU usage: Up to and including 3.1b2 CPU usage has been
a killer issue on OS X. In releases post 3.1b2 CPU usage has been
reduced from ridiculous to merely annoying: on a 1.3GHz PowerBook
Sticker's CPU usage while with ticker messages visible ranges between
5% and 10% (usage is still recorded even when not scrolling due to the
fading effects on the "new message" stars. This is still much higher
than it should be and will be further addressed in the next
Auto hide not supported on Linux/Solaris GTK : Due to window
manager behaviour under Gnome, the auto-hide feature cannot be
implemented on this platform and is disabled.
Unix window placement: Windows can appear underneath the
Linux GTK crashes: Sticker occasionally crashes inside the
GTK library. GTK 2.2 or later is recommended.
Changes between Sticker 3 and Sticker 2
Native GUI: Sticker 3 is based on the Eclipse SWT
toolkit rather than Swing as used in Sticker 2. SWT is based on
the operating system�s native toolset, meaning Sticker 3 looks and
acts like a native application and supports Windows XP and GTK themes
plus display enhancements such as ClearType.
Reduced memory requirements: The switch to SWT plus
streamlining and simplifications of the backend result in Sticker 3.0
requiring approximately half the memory of Sticker 2.3.
Windows native release: For Windows users, Sticker 3.0 is
available as standalone EXE that does not require a Java runtime and
has significantly lower memory requirements. The existing
cross-platform distributions are still fully supported.
No scrolling messages: Well actually it does scroll, but
much less so than before. Scrolling can be irritating, and Sticker 3
tries not to generate distracting movement unless something is
actually changing. When a new message arrives on a blank ticker it
now "drops" it in from the right and comes to a stop on the
left where it sits until expired or deleted. Subsequent messages, up
to the point where the ticker is full, do the same, forming a
stationary stack of messages. When the ticker is full, it starts
scrolling as usual, with the ticker tape display wrapping so that all
the space available on the ticker is used for message display. The
dropping action still gives a brief movement cue for each new message,
but the display settles down immediately afterwards.
New scroller features: messages that are unread (i.e.
haven't been replied to, or deleted, or otherwise "touched")
are highlighted with a shadow. The message text no longer fades as it
ages since this can make the text hard to read; instead the red
"new message" star over the icon fades. Messages that are
not visible are not subject to expiry, meaning short-expiry messages
arriving on a long tape won't be deleted before display.
Auto hide: In the spirit of being less intrusive, Sticker 3
has an "auto hide" option that causes the scroller to slide
out of the way when not in use. When a message arrives, or Sticker
becomes the active application (eg is Alt-Tabbed to), it slides back
into view. On Windows there is now a taskbar menu for when the Sticker
is not visible.
Improved message archiving: Sticker 3 uses a micro object
database for storing messages, which allows for large archives to
which messages can be added, retrieved and removed from very
quickly. As well as improving performance, messages can be indexed by
their read/unread status and received time, allowing flagging of
unread messages and global expiry of old messages. All messages are
now stored in a single file rather than one file per group.
No popup toolbar: While the popup toolbar seemed like a good
idea at the time, it's true to say that many people find it annoying,
including the author. In its place, Sticker 3 uses a context menu on
the scroller plus a control menu with application options.
Better self-customisation: Sticker 3 remembers much more of
the way you�ve set up things, such as window sizes, column widths,
Improved scroller and message display customisation: Sticker
3 has a number of pre-set scroller colour themes, each of which has
its own optimised message colour schemes for normal, highlighted and
"lowlighted" messages. This allows message actions that
change message appearance to do so intelligently regardless of which
scroller the message ends up on.
Compatibility With Sticker 2
Sticker 3 is fully compatible with Sticker 2's tickertape messaging
and virtual presence protocols, however Sticker 3 will not read
Sticker 2 preferences and saved messages. Sticker 3 has significant
internal differences that would make it a complex process to convert
settings from Sticker 2. However, if enough people complain, a
conversion tool may be forthcoming.
Advanced groups based on Elvin subscription expressions can be
moved to Sticker 3 by first copying the Elvin subscription expression
and using Preferences -> Ticker Groups -> Wizard Group
(Propeller Hat Icon) -> Add Filter -> Match Elvin Subscription
and then clicking "Elvin subscription" and pasting the
copied subscription expression in.
Sticker 2 security keys can be copied into Sticker 3 by exporting
them in the "Elvin" key format and then importing them into
Sticker 3 using the Preferences -> Security Keys -> Import Key
Sticker 2 message rules that you wish to keep will need to be
manually re-coded into Sticker 3, however the built-in rules such as
" Fast expire messages from me" and " Keep personal
messages while I'm away" are already in Sticker 3 as
Many thanks to Konstantin Knizhnik for the use of the Perst object
database and to The Wilson Partnership for the use of their MinML2 XML
parser. Thanks to Mofeed Shahin for developing the initial tabbed
presence UI. Thanks to Egon Kuster for creating the high-resolution OS
X Sticker icon.
For technical information on Sticker, please see README.txt that
accompanies this file. Please also visit the website at http://www.tickertape.org/projects/sticker
or contact Matthew Phillips at email@example.com.
© Copyright 2005 Matthew Phillips