diff options
-rwxr-xr-x | extra/checkgmail/Pkgfile | 2 | ||||
-rw-r--r-- | extra/checkgmail/checkgmail.desktop | 550 | ||||
-rw-r--r-- | extra/checkgmail/checkgmail.png | bin | 449 -> 0 bytes | |||
-rw-r--r-- | extra/checkgmail/svn-33.patch | 327 |
4 files changed, 1 insertions, 878 deletions
diff --git a/extra/checkgmail/Pkgfile b/extra/checkgmail/Pkgfile index e12b3e0a9..1beafed87 100755 --- a/extra/checkgmail/Pkgfile +++ b/extra/checkgmail/Pkgfile @@ -8,7 +8,7 @@ name=checkgmail version=20091127 release=1 #source=(http://downloads.sourceforge.net/$name/$name-$version.tar.bz2 \ -source=(checkgmail.desktop checkgmail.png svn-33.patch) +source=(http://nutyx.meticul.eu/files/patchs/$name/{checkgmail.desktop,checkgmail.png,svn-33.patch}) build() { svn co https://checkgmail.svn.sourceforge.net/svnroot/checkgmail checkgmail diff --git a/extra/checkgmail/checkgmail.desktop b/extra/checkgmail/checkgmail.desktop deleted file mode 100644 index a05fe7d4b..000000000 --- a/extra/checkgmail/checkgmail.desktop +++ /dev/null @@ -1,550 +0,0 @@ - - - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" -"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1-strict.dtd "> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> -<head> -<title>Arch Linux Repositories [community] Log of /community/network/checkgmail/checkgmail.desktop</title> -<meta http-equiv="content-type" content="text/html; charset=utf-8" /> -<link rel="stylesheet" href="http://archlinux.org/media/arch.css" /> -<link rel="stylesheet" href="/static/styles.css" type="text/css" /> - -<link rel="icon" href="http://archlinux.org/media/favicon.ico" type="image/x-icon" /> -<link rel="shortcut icon" href="http://archlinux.org/media/favicon.ico" type="image/x-icon" /> -<style type="text/css"> -div.searchbar { -font-size: 13px; -font-weight: bold; -position: absolute; -right: 0.2em; -top: 152px; -} -</style> -</head> -<body> -<div id="head_container"> -<div id="title"> -<div id="logo"><h1 id="archtitle"><a href="/" title="Arch Linux (Home)">Arch Linux</a></h1></div> -</div> -<div id="main_nav"> -<ul> -<li><a href="http://archlinux.org/download/">Get Arch</a></li> -<li><a href="http://aur.archlinux.org">AUR</a></li> -<li><a href="http://bugs.archlinux.org">Bugs</a></li> -<li><a href="http://wiki.archlinux.org">Wiki</a></li> -<li><a href="http://bbs.archlinux.org">Forums</a></li> -<li><a href="http://archlinux.org">Home</a></li> -</ul> -</div> -<div id="ads"> -<script type="text/javascript"><!-- -google_ad_client = "pub-3170555743375154"; -google_ad_width = 468; -google_ad_height = 60; -google_ad_format = "468x60_as"; -google_color_border = "ffffff"; -google_color_bg = "ffffff"; -google_color_link = "0771A6"; -google_color_url = "99AACC"; -google_color_text = "000000"; -//--></script> -<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script> -</div> -</div> -<div id="content"> -<div class="vc_navheader"> - -<form method="get" action="/viewvc.cgi/"> - -<div> -<strong> - -<a href="/viewvc.cgi/?root=community&pathrev=CURRENT"> - -[community]</a> -/ - -<a href="/viewvc.cgi/community/?root=community&pathrev=CURRENT"> - -community</a> -/ - -<a href="/viewvc.cgi/community/network/?root=community&pathrev=CURRENT"> - -network</a> -/ - -<a href="/viewvc.cgi/community/network/checkgmail/?root=community&pathrev=CURRENT"> - -checkgmail</a> -/ - - - -checkgmail.desktop - - -</strong> - -</div> -<div class="searchbar"> - - -<strong>Repository:</strong> -<select name="root" onchange="submit()"> - - -<option value="*viewroots*">Repository Listing</option> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -<optgroup label="CVS Repositories"><option selected="selected">community</option><option>core</option><option>extra</option><option>unstable</option></optgroup> - - -<optgroup label="Subversion Repositories"><option>packages</option></optgroup> - -</select> -<input type="submit" value="Go" /> - -</div> - -</form> - -</div> -<h1>Log of /community/network/checkgmail/checkgmail.desktop</h1> - -<p style="margin:0;"> - -<a href="/viewvc.cgi/community/network/checkgmail/?root=community&pathrev=CURRENT"><img src="/static/images/back_small.png" width="16" height="16" alt="Parent Directory" /> Parent Directory</a> - - - - -</p> - -<hr /> -<table class="auto"> - - - -<tr> -<td>Links to HEAD:</td> -<td> -(<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=markup&root=community">view</a>) -(<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=co&root=community">download</a>) - -(<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=annotate&root=community">annotate</a>) -</td> -</tr> - - -<tr> -<td>Links to CURRENT:</td> -<td> -(<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=markup&root=community&pathrev=CURRENT">view</a>) -(<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=co&root=community&pathrev=CURRENT">download</a>) - -(<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=annotate&root=community&pathrev=CURRENT">annotate</a>) -</td> -</tr> - - -<tr> -<td>Sticky Tag:</td> -<td><form method="get" action="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop" style="display: inline"> -<div style="display: inline"> -<input type="hidden" name="view" value="log" /><input type="hidden" name="root" value="community" /> - - -<select name="pathrev" onchange="submit()"> -<option value=""></option> - -<optgroup label="Branches"> - - -<option>MAIN</option> - - -</optgroup> - -<optgroup label="Non-branch tags"> - - -<option>HEAD</option> - - - -<option>CURRENT-64</option> - - - -<option selected>CURRENT</option> - - - -</optgroup> - -</select> - -<input type="submit" value="Set" /> -</div> -</form> - -<form method="get" action="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop" style="display: inline"> -<div style="display: inline"> -<input type="hidden" name="view" value="log" /><input type="hidden" name="root" value="community" /> - -<input type="submit" value="Clear" /> - -</div> -</form> - -</td> -</tr> -</table> - - - - - - -<hr /> -<table cellspacing="1" cellpadding="2"> -<thead> -<tr> -<th class="vc_header">Revision</th> -<th class="vc_header">Tasks</th> - -<th class="vc_header">Diffs</th> - - -<th class="vc_header">Branches/<br />Tags</th> - -<th class="vc_header_sort">Age</th> -<th class="vc_header">Author</th> -</tr> -</thead> - - - - - -<tbody> -<tr style="vertical-align: top;" class="vc_row_even"> - -<td rowspan="2"> -<strong>1.2</strong> -<a name="rev1.2"></a> -</td> - -<td> - -<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=markup&revision=1.2&root=community&pathrev=CURRENT"><strong>View</strong></a><br /> - -<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?revision=1.2&root=community&pathrev=CURRENT"><strong>Download</strong></a><br /> - -<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?annotate=1.2&root=community&pathrev=CURRENT"><strong>Annotate</strong></a><br /> -</td> - -<td> - - - - -<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=log&root=community&r1=1.2&pathrev=CURRENT"><strong>[select for diffs]</strong></a><br /> - - - -<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?root=community&r1=1.1&r2=1.2&pathrev=CURRENT"><strong>Diff to previous 1.1</strong></a> - -<br /> - - -</td> - - -<td> - - - - -<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=log&root=community&pathrev=MAIN"><strong>MAIN</strong></a><br /> - - - - - - - -<form method=get action="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop" > -<input type="hidden" name="view" value="log" /><input type="hidden" name="root" value="community" /> -<select name="pathrev" onChange="submit()"> -<option value="" >Show all tags</option> - -<option selected>CURRENT</option> - -<option >CURRENT-64</option> - -<option >HEAD</option> - -</select> -</form> - -</td> - - -<td> - -13 months, 3 weeks ago<br /><em>Thu Mar 20 14:45:07 2008 UTC</em> - - - -<br />Changes since <strong>1.1: +2 -2 lines</strong> - - - -</td> - -<td> -BaSh -</td> -</tr> -<tr class="vc_row_even"> -<td colspan=5> - -<strong>Log: </strong><pre class="vc_log">*** empty log message *** -</pre> -</td> -</tr> -</tbody> - - - -<tbody> -<tr style="vertical-align: top;" class="vc_row_odd"> - -<td rowspan="2"> -<strong>1.1</strong> -<a name="rev1.1"></a> -</td> - -<td> - -<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=markup&revision=1.1&root=community&pathrev=CURRENT"><strong>View</strong></a><br /> - -<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?revision=1.1&root=community&pathrev=CURRENT"><strong>Download</strong></a><br /> - -<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?annotate=1.1&root=community&pathrev=CURRENT"><strong>Annotate</strong></a><br /> -</td> - -<td> - - - - -<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=log&root=community&r1=1.1&pathrev=CURRENT"><strong>[select for diffs]</strong></a><br /> - - - - -</td> - - -<td> - - - - -<a href="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop?view=log&root=community&pathrev=MAIN"><strong>MAIN</strong></a><br /> - - - - - - - - -</td> - - -<td> - -2 years, 1 month ago<br /><em>Thu Mar 22 21:23:36 2007 UTC</em> - - - -</td> - -<td> -dtw -</td> -</tr> -<tr class="vc_row_odd"> -<td colspan=5> - -<strong>Log: </strong><pre class="vc_log">whoops -</pre> -</td> -</tr> -</tbody> - -</table> - - - - - - - <div class="box"> -<p><a name="diff"></a> -This form allows you to request diffs between any two revisions of this file. -For each of the two "sides" of the diff, - -select a symbolic revision name using the selection box, or choose -'Use Text Field' and enter a numeric revision. - -</p> -<form method="get" action="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop" id="diff_select"> -<table cellpadding="2" cellspacing="0" class="auto"> -<tr> -<td> </td> -<td> -<input type="hidden" name="pathrev" value="CURRENT" /><input type="hidden" name="root" value="community" /><input type="hidden" name="view" value="diff" /> -Diffs between - -<select name="r1"> -<option value="text" selected="selected">Use Text Field</option> - -<option value="1.2:MAIN">MAIN</option> - -<option value="1.2:HEAD">HEAD</option> - -<option value="1.2:CURRENT-64">CURRENT-64</option> - -<option value="1.2:CURRENT">CURRENT</option> - -</select> -<input type="text" size="12" name="tr1" -value="1.2" -onchange="document.getElementById('diff_select').r1.selectedIndex=0" /> - -and - -<select name="r2"> -<option value="text" selected="selected">Use Text Field</option> - -<option value="1.2:MAIN">MAIN</option> - -<option value="1.2:HEAD">HEAD</option> - -<option value="1.2:CURRENT-64">CURRENT-64</option> - -<option value="1.2:CURRENT">CURRENT</option> - -</select> -<input type="text" size="12" name="tr2" -value="1.1" -onchange="document.getElementById('diff_select').r2.selectedIndex=0" /> - -</td> -</tr> -<tr> -<td> </td> -<td> -Type of Diff should be a -<select name="diff_format" onchange="submit()"> -<option value="h" selected="selected">Colored Diff</option> -<option value="l" >Long Colored Diff</option> -<option value="u" >Unidiff</option> -<option value="c" >Context Diff</option> -<option value="s" >Side by Side</option> -</select> -<input type="submit" value=" Get Diffs " /> -</td> -</tr> -</table> -</form> -</div> - - -<form method="get" action="/viewvc.cgi/community/network/checkgmail/checkgmail.desktop"> -<div> -<a name="logsort"></a> -<input type="hidden" name="view" value="log" /><input type="hidden" name="root" value="community" /><input type="hidden" name="pathrev" value="CURRENT" /> -Sort log by: -<select name="logsort" onchange="submit()"> -<option value="cvs" >Not sorted</option> -<option value="date" selected="selected">Commit date</option> -<option value="rev" >Revision</option> -</select> -<input type="submit" value=" Sort " /> -</div> -</form> - - -<hr /> -<div class="foot"> -Copyright © 2002-2008 -<a href="mailto:jvinet@zeroflux.org" title="contact Judd Vinet">Judd Vinet</a> and -<a href="mailto:aaron@archlinux.org" title="contact Aaron Griffin">Aaron Griffin</a>. -<br /> -The Arch Linux name and logo are recognized trademarks. Some rights reserved. -</div> -<script type="text/javascript"> -var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); -document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); -</script> -<script type="text/javascript"> -var pageTracker = _gat._getTracker("UA-3589020-1"); -pageTracker._setDomainName("archlinux.org"); -pageTracker._initData(); -pageTracker._trackPageview(); -</script> -</body> -</html> - - diff --git a/extra/checkgmail/checkgmail.png b/extra/checkgmail/checkgmail.png Binary files differdeleted file mode 100644 index fbd1c5d1d..000000000 --- a/extra/checkgmail/checkgmail.png +++ /dev/null diff --git a/extra/checkgmail/svn-33.patch b/extra/checkgmail/svn-33.patch deleted file mode 100644 index 5b1257355..000000000 --- a/extra/checkgmail/svn-33.patch +++ /dev/null @@ -1,327 +0,0 @@ ---- checkgmail-1.13/checkgmail 2008-01-17 07:30:23.000000000 +0100 -+++ checkgmail/checkgmail 2008-07-22 21:57:51.000000000 +0200 -@@ -5,7 +5,7 @@ - # system tray; optionally saves password in encrypted form using - # machine-unique passphrase - --# version 1.12.1svn (25/6/2007) -+# version 1.13svn (14/2/2008) - # Copyright © 2005-7 Owen Marshall - - # This program is free software; you can redistribute it and/or modify -@@ -31,9 +31,12 @@ - # Command-line processing - # - --my ($version, $silent, $nocrypt, $update, $notsexy, $profile, $disable_monitors_check, $private, $cookies, $popup_size, $hosted_tmp, $show_popup_delay, $popup_persistence, $usekwallet, $libsexy); -+# global variables (can't be set global in the BEGIN block) -+my ($version, $silent, $nocrypt, $update, $notsexy, $profile, $disable_monitors_check, -+ $private, $cookies, $popup_size, $hosted_tmp, $show_popup_delay, -+ $popup_persistence, $usekwallet, $libsexy, $nologin, $mailno, $debug); - BEGIN { -- $version = "1.12.1svn"; -+ $version = "1.13svn"; - $silent = 1; - $profile = ""; - $cookies = 1; -@@ -64,6 +67,10 @@ - $notsexy = 1; - last }; - -+ /no-login/ && do { -+ $nologin = 1; -+ last }; -+ - /cookie_login/ && do { - $cookies = 1; - last }; -@@ -105,6 +112,18 @@ - $update = 1; - last }; - -+ -+ /numbers/ && do { -+ $mailno = 1; -+ last }; -+ -+ /debug/ && do { -+ $debug = 1; -+ $silent = 0; -+ last }; -+ -+ -+ - print "CheckGmail v$version\nCopyright © 2005-7 Owen Marshall\n\n"; - print "usage: checkgmail [-profile=profile_name] [-popup_delay=millisecs] [-hosted=hosted_domain] [-no_cookies] [-popup_persistence=millisecs] [-private] [-v | -verbose] [-nocrypt] [-no-libsexy] [-disable-monitors-check] [-update] [-h]\n\n"; - exit 1; -@@ -158,6 +177,7 @@ - my $failed_packages; - - my $eval_sub = sub { -+ print "$_\n" if $debug; - eval $_; - if ($@) { - return unless m/(use|require)\s*([\w:-]+).*?\;/; -@@ -176,6 +196,7 @@ - use Thread::Queue; - use Thread::Semaphore; - use threads::shared; -+ use Encode; - use XML::Simple; - use FileHandle; - use LWP::UserAgent; -@@ -355,14 +376,17 @@ - my $fat_lady = new Thread::Semaphore(0); - my $child_exit : shared = 0; # to signal exit to child - -+print "About to start new thread ...\n" if $debug; - # Start http checking thread ... - my $http_check = new threads(\&http_check); -+print "Parent: Process now continues ...\n" if $debug; - - - ####################### - # Prefs and Variables - # - -+print "Parent: Setting up global variables ...\n" if $debug; - # Prefs hash - my %pref_variables = ( - user => \$user, -@@ -430,6 +454,7 @@ - my $status_label; - # my $message_flag; - -+print "Parent: Checking the existence of ~/.checkgmail ...\n" if $debug; - # Create the default .checkgmail directory and migrate prefs from users of older versions - unless (-d $prefs_dir) { - if (-e "$prefs_dir") { -@@ -452,6 +477,7 @@ - # Icons - # - -+print "Parent: Loading icon data ...\n" if $debug; - # we load the pixmaps as uuencoded data - my ($error_data, $no_mail_data, $mail_data, $compose_mail_data); - load_icon_data(); -@@ -462,10 +488,12 @@ - - my $image = Gtk2::Image->new_from_pixbuf($no_mail_pixbuf); - -+ - ############## - # Setup tray - # - -+print "Parent: Setting up system tray ...\n" if $debug; - my $tray = Gtk2::TrayIcon->new("gmail"); - my $eventbox = Gtk2::EventBox->new; - my $tray_hbox = Gtk2::HBox->new(0,0); -@@ -488,14 +516,25 @@ - $eventbox->add($tray_hbox); - $tray_hbox->pack_start($image,0,0,0); - -+# number of new mail messages (use -numbers) -+my $number_label; -+if ($mailno) { -+ $number_label = Gtk2::Label->new; -+ $number_label->set_markup("0"); -+ $tray_hbox->pack_start($number_label,0,0,0); -+ $number_label->hide; -+} -+ - - ######################## - # Read prefs and login - # - -+print "Parent: Reading translations ...\n" if $debug; - # Read translations if they exist ... - read_translations(); - -+print "Parent: Reading prefs ...\n" if $debug; - # First time configuration ... - unless (read_prefs()) { - show_prefs(); -@@ -532,7 +571,7 @@ - - $tray->add($eventbox); - $tray->show_all; -- -+print "Parent: System tray now complete ...\n" if $debug; - - ############################ - # enter/leave notification -@@ -603,6 +642,7 @@ - # All set? Let's login ... - # - -+print "Parent: Sending semaphore to child process ...\n" if $debug; - # She's singing ... - $fat_lady->up; - -@@ -675,6 +715,7 @@ - - sub http_check { - # Threaded process for sending HTTP requests ... -+ print "Child: Checking thread now starting ... waiting for semaphore to continue\n" if $debug; - - # Variable initialisation isn't over until the fat lady sings ... - $fat_lady->down; -@@ -716,14 +757,21 @@ - unless ($hosted) { - # Normal Gmail login action ... - $error = http_get("https://www.google.com/accounts/ServiceLoginAuth?ltmpl=yj_wsad<mplcache=2&continue=https%3A%2F%2Fmail.google.com%2Fmail%3F&service=mail&rm=false<mpl=yj_wsad&Email=$URI_user&Passwd=$URI_passwd&rmShown=1&null=Sign+in", "LOGIN"); -- # $cookie_jar->scan(\&scan_at); -+ -+ $cookie_jar->scan(\&scan_at); -+ unless ($error || !$gmail_sid || !$gmail_gausr) { -+ $error = http_get("https://mail.google.com/mail/?auth=$gmail_sid&gausr=$gmail_gausr", 'GET'); -+ } -+ - # $error = http_get("https://mail.google.com/mail?nsr=0&auth=$gmail_sid&gausr=$gmail_gausr", "LOGIN"); - - } else { - # hosted domains work differently ... - # First we POST a login -- $error = http_get("https://www.google.com/a/$hosted/LoginAction|at=null&continue=http%3A%2F%2Fmail.google.com%2Fa%2F$hosted&service=mail&userName=$URI_user&password=$URI_passwd", "POST"); -- -+ # $error = http_get("https://www.google.com/a/$hosted/LoginAction|at=null&continue=http%3A%2F%2Fmail.google.com%2Fa%2F$hosted&service=mail&userName=$URI_user&password=$URI_passwd", "POST"); -+ # thanks to Olinto Neto for this fix for hosted domains: -+ $error = http_get("https://www.google.com/a/$hosted/LoginAction2|at=null&continue=http%3A%2F%2Fmail.google.com%2Fa%2F$hosted&service=mail&Email=$URI_user&Passwd=$URI_passwd", "POST"); -+ - # Then we grab the HID ("Hosted ID"?) cookie - $cookie_jar->scan(\&scan_at); - -@@ -1045,9 +1093,9 @@ - my $author = $author_name || $author_mail; - - # clean text for Pango compatible display ... -- $title = clean_text($title); -- $author = clean_text($author); -- $summary = clean_text($summary); -+ $title = clean_text_and_decode($title); -+ $author = clean_text_and_decode($author); -+ $summary = clean_text_and_decode($summary); - - my ($year, $month, $day, $hour, $min, $sec) = ($issued =~ m/(\d+)-(\d+)-(\d+)T(\d+):(\d+):(\d+)Z/); - my $time_abs = $sec+$min*60+$hour*3600+$day*86400+$month*2678400+$year*32140800; -@@ -1089,7 +1137,7 @@ - # Create popup text - if ($popup_authors) { - $popup_authors =~ s/, ([\w\s-]+)$/ $trans{notify_and} $1/; # replace final comma with "and" -- $popup_authors = clean_text($popup_authors); -+ $popup_authors = clean_text_and_decode($popup_authors); - $popup_text = "<span foreground=\"#000000\"><small>$trans{notify_new_mail}$popup_authors ...</small></span>"; - } - -@@ -1111,6 +1159,32 @@ - return 1; - } - -+# Note -- for some reason (?? why ??) the title does not need decoding; all other data apparently does. Very strange ... -+sub clean_text_and_decode { -+ ($_) = @_; -+ # some basic replacements so that the text is readable ... -+ # (these aren't used by pango markup, unlike other HTML escapes) -+ s/…/\.\.\./g; -+ s/&\s/\& /g; -+ s/\\u003c/</g; -+ # s/\\n//g; -+ s/<br\s*\/*\\*>/\n/g; -+ s/</\</g; -+ s/>/\>/g; -+ s/&(?>([\w\d\,\.]+))(?!;)/\&$1/g; #not a great fix, but at least it's simple (heavy irony ... :) -+ s/ / /g; -+ # s/\\n/\n/g; -+ # Encode::from_to($body, 'utf-8', 'iso-8859-15'); -+ # eval { decode("utf8", $_, Encode::FB_CROAK); }; -+ # my $body_decode = $@ ? $_ : decode("utf8", $_); -+ #my $body_decode= decode("utf-8", $_); -+ -+ # I have no idea why this works ... -+ my $body_encode = encode("utf8", $_); -+ my $body_decode = decode("utf8", $body_encode); -+ -+ return $body_decode; -+} - - sub clean_text { - ($_) = @_; -@@ -1129,6 +1203,7 @@ - return $_; - } - -+ - sub clean_text_body { - ($_) = @_; - # some basic replacements so that the text is readable ... -@@ -1164,9 +1239,13 @@ - # s/&(?>([\w\d\,\.]+))(?!;)/\&$1/g; #not a great fix, but at least it's simple (heavy irony ... :) - s/ / /g; - # s/\\n/\n/g; -- use Encode; - # Encode::from_to($body, 'utf-8', 'iso-8859-15'); -- my $body_decode= decode("utf-8", $_); -+ # eval { decode("utf8", $_, Encode::FB_CROAK); }; -+ # my $body_decode = $@ ? $_ : decode("utf8", $_); -+ # my $body_encode = encode("utf8", $_); -+ -+ # I have no idea why this works either ... -+ my $body_decode = decode("utf8", $_); - - return $body_decode; - } -@@ -1335,6 +1414,14 @@ - my ($status, $text) = @_; - my $new_mail = @messages; - -+ # display number of messages -+ if ($mailno) { -+ print "setting \"$new_mail\"\n"; -+ $number_label->set_markup("$new_mail"); -+ $new_mail ? $number_label->show : $number_label->hide; -+ # $new_mail ? $number_label->set_markup("$new_mail") : $number_label->set_markup(" ") -+ } -+ - my @sorted_messages = sort {$b->{time} <=> $a->{time}} @messages; - @messages = @sorted_messages; - -@@ -1497,8 +1584,7 @@ - $title_l_ebox->signal_handler_disconnect($s2); - unless ($mb) { - # yep, here's the magic code. This accesses the datapack, which we read with a little hack in the check routine ... -- $request->enqueue("GET:".gen_prefix_url()."/?ui=1&view=cv&search=all&th=$id&ww=1173&qt=&prf=1&pft=undefined&rq=xm&at=$gmail_at"); -- # $request->enqueue("GET:".gen_prefix_url()."/?ui=2&ik=b8bb7ca6af&view=cv&search=all&th=$id&rt=j&prf=1"); -+ $request->enqueue("GET:".gen_prefix_url()."/?ui=1&view=cv&search=all&th=$id&qt=&prf=1&pft=undefined&rq=xm&at=$gmail_at"); - } else { - # this allows the message text to be toggled ... - # oh yes, we're all about usability here, folks! :) -@@ -1684,6 +1770,7 @@ - show_notify($win_notify_temp); - } else { - $win_notify->destroy if $win_notify; -+ $win_notify=""; - $win_notify = $win_notify_temp; - } - } -@@ -1742,6 +1829,11 @@ - sub get_login_href { - # Login directly to gmail ... - $_ = shift; -+ -+ # The following is for people who like to stay permanently logged in ... -+ # (enable with -no-login on the command-line for now ...) -+ return $_ if $nologin; -+ - my ($options) = m/.*?\?(.*)/; - my $options_uri = $options ? "?&$options" : ""; - -@@ -1908,6 +2000,7 @@ - - if ($win_notify_temp) { - $win_notify->destroy; -+ $win_notify=""; - $win_notify=$new_win; - } - |