#!/usr/bin/perl
use Gtk2 -init;
use Gtk2::TrayManager;
use Data::Dumper;
use strict;
my $screen = Gtk2::Gdk::Screen->get_default;
if (Gtk2::TrayManager->check_running($screen)) {
print STDERR "A tray manager is already running, sorry!\n";
exit 256;
}
my $window = Gtk2::Window->new;
$window->add(Gtk2::VBox->new);
$window->set_resizable(0);
my $tray = Gtk2::TrayManager->new;
$tray->manage_screen($screen);
$tray->set_orientation('vertical');
$tray->signal_connect('tray_icon_added', sub {
$window->child->add($_[1]);
$_[1]->show_all;
});
$tray->signal_connect('tray_icon_removed', sub {
$window->child->remove($_[1]);
});
$tray->signal_connect('message_sent', sub { print "message_sent\n" . Dumper(\@_) });
$tray->signal_connect('message_cancelled', sub { print "message_cancelled\n" . Dumper(\@_) });
$tray->signal_connect('lost_selection', sub { print "lost_selection\n" . Dumper(\@_) });
$window->show_all;
Gtk2->main;