Mercurial > pidgin.yaz
changeset 30211:7763697a85c8
propagate from branch 'im.pidgin.pidgin' (head 92e101e3698042e7600729bc09dec9e28f81de8f)
to branch 'im.pidgin.cpw.malu.ft_thumbnails' (head 29c3ce3e818c0e5b715ace3c2b2566976c4ea861)
author | Marcus Lundblad <ml@update.uu.se> |
---|---|
date | Mon, 24 Aug 2009 19:21:21 +0000 (2009-08-24) |
parents | c138390bada8 (current diff) 30497d814cb9 (diff) |
children | 1da2ea10c2d0 |
files | libpurple/ft.c libpurple/protocols/jabber/data.c libpurple/protocols/jabber/data.h libpurple/protocols/jabber/message.c libpurple/protocols/jabber/si.c pidgin/pixmaps/toolbar/22/scalable/voice-call.svg pidgin/pixmaps/toolbar/22/voice-call.png pidgin/pixmaps/toolbar/32/scalable/voice-call.svg pidgin/pixmaps/toolbar/32/voice-call.png pidgin/pixmaps/toolbar/48/scalable/voice-call.svg pidgin/pixmaps/toolbar/48/voice-call.png |
diffstat | 171 files changed, 6785 insertions(+), 6761 deletions(-) [+] |
line wrap: on
line diff
--- a/COPYRIGHT Thu Aug 13 17:40:00 2009 +0000 +++ b/COPYRIGHT Mon Aug 24 19:21:21 2009 +0000 @@ -88,6 +88,7 @@ Mat�j Cepl Cerulean Studios, LLC Jonathan Champ +Matthew Chapman Christophe Chapuis Patrick Cheung Ka-Hing Cheung
--- a/ChangeLog Thu Aug 13 17:40:00 2009 +0000 +++ b/ChangeLog Mon Aug 24 19:21:21 2009 +0000 @@ -1,6 +1,28 @@ Pidgin and Finch: The Pimpin' Penguin IM Clients That're Good for the Soul -version 2.6.0 (??/??/2009): +version 2.6.2 (??/??/2009): + libpurple: + * Fix --disable-avahi to actually disable it in configure, as opposed + to just making the warning non-fatal. + * Sending custom smileys in MSN chats is now supported. + * Fix using GNOME proxy settings properly. + + XMPP: + * Prompt the user before cancelling a presence subscription. + * Escape status messages that have HTML entities in the Get Info dialog. + * Fix connecting to XMPP domains with no SRV records from Pidgin on + Windows. + * Fix typing notifications with Pidgin 2.5.9 or earlier. + + Finch: + * Properly detect libpanel on OpenBSD. (Brad Smith) + +version 2.6.1 (08/18/2009): + * Fix a crash when some users send you a link in a Yahoo IM + * Fix compilation with GTK+ < 2.6.0 + * Fix compilation on Windows + +version 2.6.0 (08/18/2009): libpurple: * Theme support in libpurple thanks to Justin Rodriguez's summer of code project, with some minor additions and cleanups from Paul Aurich. @@ -13,10 +35,32 @@ * Various memory cleanups when unloading libpurple. (Nick Hebner and Stefan Becker) * Report idle time 'From last message sent' should work properly. + * Better handling of corrupt certificates in the TLS Peers cache. + * More efficient buddy list and conversation search functions. + (Jan Kaluza and Aman Gupta) + * Install scalable versions of the main Pidgin icon, the protocol icons, + the dialog icons, and the Buddy List emblems. + * Build properly on Hurd. (Marc Dequ竪nes) + * Various memory leaks fixed as reported by Josh Mueller. + * Properly handle an IRC buddy appearing in multiple groups. + * Escape HTML entities in usernames when written with the HTML logger. + * Do not display MySpace status changes as incoming IMs. (Mark Doliner and + Justin Williams) + + DNS: * DNS servers are re-read when DNS queries fail in case the system has moved to a new network and the old servers are not accessible. * DNS SRV records with equal priority are sorted with respect to their weight as specified in RFC 2782. (Vijay Raghunathan) + * Don't do IPv6 address lookups if the computer does not have an IPv6 + address configured. + * Fix a leak when the UI provides its own DNS resolving UI op. + (Aman Gupta) + * Don't fork a DNS resolver process to resolve IP addresses. (Aman Gupta) + * Internationalized Domain Names are supported when libpurple is compiled + against the GNU IDN library. + + Environment Variables: * GnuTLS logging (disabled by default) can be controlled through the PURPLE_GNUTLS_DEBUG environment variable, which is an integer between 0 and 9 (higher is more verbose). Higher values may reveal sensitive @@ -31,24 +75,6 @@ useful when running libpurple inside of Valgrind or similar programs. Currently, it keeps plugins in memory, allowing Valgrind to perform symbol resolution of leak traces at shutdown. - * Don't do IPv6 address lookups if the computer does not have an IPv6 - address configured. - * Fix a leak when the UI provides its own DNS resolving UI op. - (Aman Gupta) - * Don't fork a DNS resolver process to resolve IP addresses. (Aman Gupta) - * Better handling of corrupt certificates in the TLS Peers cache. - * More efficient buddy list and conversation search functions. - (Jan Kaluza and Aman Gupta) - * Internationalized Domain Names are supported when libpurple is compiled - against the GNU IDN library. - * Install scalable versions of the main Pidgin icon, the protocol icons, - the dialog icons, and the Buddy List emblems. - * Build properly on Hurd. (Marc Dequ竪nes) - * Various memory leaks fixed as reported by Josh Mueller. - * Properly handle an IRC buddy appearing in multiple groups. - * Escape HTML entities in usernames when written with the HTML logger. - * Do not display MySpace status changes as incoming IMs. (Mark Doliner and - Justin Williams) AIM and ICQ: * Preliminary support for a new authentication scheme called @@ -67,6 +93,17 @@ * Support connection progress steps in Gadu-Gadu. (Krzysztof "kkszysiu" Klinikowski) + MSN: + * Add support for receiving handwritten (ink) messages on MSN. (Chris + Stafford, Gal Topper, and Elliott Sales de Andrade) + * Add support for receiving audio clips on MSN. (Chris Stafford, Gal + Topper, and Elliott Sales de Andrade) + * Show the invite message for buddies that requested authorization + from you on MSN. + * Support sending an invite message to buddies when requesting authorization + from them on MSN. + * Timeout switchboard connections aggressively (60 seconds). + XMPP: * Voice & Video support with Jingle (XEP-0166, 0167, 0176, & 0177), voice support with GTalk and voice and video support with the GMail web @@ -136,15 +173,6 @@ * Ability to set personal details for an account and for buddies in the buddylist. - MSN: - * Add support for receiving handwritten (ink) messages on MSN. - * Add support for receiving audio clips on MSN. - * Show the invite message for buddies that requested authorization - from you on MSN. - * Support sending an invite message to buddies when requesting authorization - from them on MSN. - * Timeout switchboard connections aggressively - Pidgin: * Added -f command line option to tell Pidgin to ignore NetworkManager and assume it has a valid network connection. @@ -192,6 +220,8 @@ * The hardware cursor is updated correctly. This will be useful especially for users of braille terminals, screen readers etc. * Added a TinyURL plugin, which aids copying longer URLs. + * Fixed UTF-8 compatibility problems which could cause exits or other + unrequested behaviour. Pidgin GTK+ Theme Control Plugin: * Removed mouse cursor color preferences. @@ -200,6 +230,13 @@ * Preferences have been reorganized into three tabs for Colors, Fonts, and Miscellaneous categories. +version 2.5.9 (08/18/2009): + * Fix a crash via a specially crafted MSN message (CVE-2009-2694, + thanks to Core Security Technologies for discovering this and + notifying us privately before announcing it). + * Fix a crash in Bonjour, MSN, and XMPP when trying to transfer files with + NULL names. + version 2.5.8 (06/27/2009): ICQ: * Fix misparsing a web message as an SMS message. (Yuriy Kaminskiy)
--- a/ChangeLog.API Thu Aug 13 17:40:00 2009 +0000 +++ b/ChangeLog.API Mon Aug 24 19:21:21 2009 +0000 @@ -1,6 +1,9 @@ Pidgin and Finch: The Pimpin' Penguin IM Clients That're Good for the Soul -version 2.6.0 (??/??/2009): +version 2.6.1 (08/18/2009): + No changes + +version 2.6.0 (08/18/2009): libpurple: Added: * PurpleMedia and PurpleMediaManager API @@ -154,6 +157,9 @@ * GntProgressBar and functions (Saleem Abdulrasool) perl: + Added: + * Purple::XMLNode::get_name() + Changed: * Made a bunch of functions act more perl-like. Call the new() functions as Class->new(...) instead of Class::new(...): @@ -167,6 +173,14 @@ * Purple::Request::Field::list_new * Purple::Request::Field::string_new * Purple::Request::Field::group_new + * Make the XMLNode API more perl-like. Don't pass len + parameters and call them like: + * $xmlnode->copy() + * $xmlnode->to_str() + * $xmlnode->to_formatted_str() + * Purple::XMLNode::from_str(...) +version 2.5.9 (08/18/2009): + No changes version 2.5.8 (06/27/2009): No changes
--- a/ChangeLog.win32 Thu Aug 13 17:40:00 2009 +0000 +++ b/ChangeLog.win32 Mon Aug 24 19:21:21 2009 +0000 @@ -1,6 +1,12 @@ -version 2.6.0 (??/??/2009): +version 2.6.1 (08/18/2009): + * No changes + +version 2.6.0 (08/18/2009): * Added XMPP URI support. +version 2.5.9 (08/18/2009): + * No changes and no win32 packages built. + version 2.5.8 (06/27/2009): * No changes
--- a/INSTALL Thu Aug 13 17:40:00 2009 +0000 +++ b/INSTALL Mon Aug 24 19:21:21 2009 +0000 @@ -158,7 +158,7 @@ `--with-dynamic-prpls' takes a list of comma separated protocols also. If used only those listed will be built. If no protocols are listed with either `--with-static-prpls' or with `--with-dynamic-prpls' then Pidgin and Finch will be effectively useless. - If configure does not find python, it will build without DBUS support. Thiswill disable scripts such as purple-remote and purple-uri-handler, effectively disabling integration with the browser. You can tell configure where your python binary is located with `--with-python=PATH' + If configure does not find python, it will build without DBUS support. This will disable scripts such as purple-remote and purple-uri-handler, effectively disabling integration with the browser. You can tell configure where your python binary is located with `--with-python=PATH' Specifying the System Type ==========================
--- a/NEWS Thu Aug 13 17:40:00 2009 +0000 +++ b/NEWS Mon Aug 24 19:21:21 2009 +0000 @@ -2,6 +2,56 @@ Our development blog is available at: http://planet.pidgin.im +2.6.1 (08/18/2009): + Mark: There were a lot of changes in 2.6.0, and so a few major bugs + crept in. This is a very minor release to fix those bugs. Sorry for + the inconvenience! + +2.6.0 (08/18/2009): + John: Wow, four straight releases that I'm the first to NEWS on. This + is getting kinda scary! I'm beginning to wonder who else actually does + anything around here! (Just kidding, of course.) LOTS of new features + and a crapton of bugfixes this release. There should pretty much be + something for everybody. A great example of this is the ton of Yahoo + changes that have happened thanks to our SoC student from 2008, Sulabh + Mahajan. Among his massive improvements are the ability to add MSN + buddies by adding them as "msn/user@domain.tld" and peer-to-peer file + transfers. Of course, history shows we can't please everyine, so I'm + sure I'll see a complaint or five thousand in trac. Enjoy, though! + + Marcus: This is my first news! It's been quite a few microreleases this + time, but now we're finally at 2.6.0. I suppose the most anticipated + new feature in this release is the voice and video support, thanks to + Mike's heroic work. I've managed to slip in a few features too, like + in-band bytestream file transfers as a fallback on XMPP and idle time + reporting on XMPP. Enjoy! + + Paul: This is my first news, too! This release has definitely been a + long time coming; hopefully it won't disappoint since we've closed over + 200 tickets. Among other things, Tobias Markmann's GSoC project from + last year was merged, which means we now support BOSH (XMPP connections + over HTTP), and Andrei Mozzhuhin contributed an XMPP Service Discovery + Browser. Also, thanks to Bernmeister for poking (at least) several + hundred old tickets! + + Mike: Ditto. This is my first news as well. I have a feeling this is + getting repetitive at this point, but voice and video support is + finally here! Thanks to the rest of the Pidgin team, Farsight 2, and + GStreamer developers for making this possible! (I finally finished my + Summer of Code project :D) + + Elliott: Hey, this is my firs... Wait, no it isn't. Now I feel left + out. So have you heard about this voice and video thing? + Unfortunately, not quite ready for all protocols, but it's getting + there. MSN gained support for receiving voice clips at least, and + finally we have Ink receiving capabilities too. Thanks to the guys + who wrote the original patch. And finally, MSN no longer has over a + 100 tickets open! + +2.5.9 (08/18/2009): + John: This release is just a crash fix release to address a security + issue reported to us by CORE and a couple crashes Elliott found. + 2.5.8 (06/27/2009): John: This release is another somewhat rushed bugfix release to fix a number of bugs that have come up since we released Pidgin 2.5.7. @@ -51,10 +101,10 @@ a few patches, and we've dealt with what feels like a TON of tickets about two very common issues. Feels like time for a release to me. - Etan: My first NEWS in quite a while and I don't have much to say. I + Etan: My first NEWS in quite a while and I don't have much to say. I haven't been too active lately and I'm hoping that won't be the case - going forward. I managed to get in a few perl fixes and some UI - language tweaks this release. My plan is to work on some of the + going forward. I managed to get in a few perl fixes and some UI + language tweaks this release. My plan is to work on some of the issues pointed out by mpt (during his expert review of pidgin a little while back) in the near future. @@ -92,14 +142,14 @@ messaging pleasure. Sadrul: Despite our best efforts, this release got delayed by a - couple of weeks. But here it is! It is mostly a bug fix release, with + couple of weeks. But here it is! It is mostly a bug fix release, with a couple of important fixes, e.g. fix for the Yahoo! disconnect - problem. Also, welcome our newest Crazy Patch Writer, Marcus Lundblad, + problem. Also, welcome our newest Crazy Patch Writer, Marcus Lundblad, who, among various other fixes, has implemented custom smileys for the - XMPP protocol, included in this release. Enjoy! + XMPP protocol, included in this release. Enjoy! Stu: I guess this is the time of year for server migrations, and - I've just about had enough of them. Fortunately Pidgin is still fun, + I've just about had enough of them. Fortunately Pidgin is still fun, and this release should be superb. John: Although our services were down for quite some time, we didn't @@ -109,8 +159,8 @@ happy! Elliott: This release took a while, but that was due to an unfortunate - server snafu. I didn't have much to do with it, but hopefully the new - servers will help us out a bit. Anyway, mostly bug-fixes this time. + server snafu. I didn't have much to do with it, but hopefully the new + servers will help us out a bit. Anyway, mostly bug-fixes this time. Nothing spectacular, unless you happen to suffer from one of those bugs. Oh, and don't forget, the "Has you" tooltip is back! @@ -123,9 +173,9 @@ coming months. Elliott: I'm just commenting so Kevin wouldn't be the only one in NEWS - and no-one else seems to want to. Anyway, there's a couple MSN login - fixes, so try it out. The contact list problems might still be around, - but you can probably find a workaround in trac. And there's a tooltip + and no-one else seems to want to. Anyway, there's a couple MSN login + fixes, so try it out. The contact list problems might still be around, + but you can probably find a workaround in trac. And there's a tooltip fix for our AIM friends, not that I had anything to do with it (except closing many many duplicate tickets). @@ -135,16 +185,16 @@ it to the world! There are myriad bugfixes, including some important ones so you should be sure to update. - Hylke: Finally MSNP15 support. To celebrate this I refreshed a lot of + Hylke: Finally MSNP15 support. To celebrate this I refreshed a lot of the smilies used in the protocol and added the long awaited indispensable - bunny icon. I think this is one of those releases that will make a lot + bunny icon. I think this is one of those releases that will make a lot of users happy, especially MSN users. - Elliott: Oh look, my first NEWS! Well anyway, with that new MSNP15 + Elliott: Oh look, my first NEWS! Well anyway, with that new MSNP15 support, this release is set up to be a huge success and a total flop - all at the same time. Here's hoping it's the "huge success" one for you. + all at the same time. Here's hoping it's the "huge success" one for you. Those icon changes that Hylke made, while minor, really make things look - a little cleaner, I think. Oh yea, did I mention that MSNP15 stuff? + a little cleaner, I think. Oh yea, did I mention that MSNP15 stuff? Mark: Speaking of MSNP15, we'd like to welcome Elliott Sales de Andrade as a full fledged developer! He took the last few strides mushing the @@ -152,7 +202,7 @@ doing other great stuff. Ka-Hing: "Reject"ing a certificate after your account is signed off is - not recommended. Deleting the file after you start sending it is also + not recommended. Deleting the file after you start sending it is also discouraged. 2.4.3 (07/01/2008): @@ -162,12 +212,12 @@ 2.4.2 (5/17/2008): Sadrul: We added some usability changes in this release, including the typing notification, buddyicon and input area size in the conversation - windows, escape to close conversation windows etc. These changes should + windows, escape to close conversation windows etc. These changes should make pidgin more usable and more fun for Everyone! *wink* Stu: I fixed some memory leaks, but nothing like as many as Daniel did. MSN buddy list synchronization should be significantly less painful now, - and opening MSN inboxes might work better too. SILC passphrase changes + and opening MSN inboxes might work better too. SILC passphrase changes and support for passphrase-less keys has been improved also. 2.4.1 (3/31/2008): @@ -184,27 +234,27 @@ John: While this release took what seems like forever to get out the door, I think it's well worth the wait, especially for Yahoo! users. This release serves up some fixes for long standing bugs and adds - file transfer for transfers with newer Yahoo! clients (finally!). As + file transfer for transfers with newer Yahoo! clients (finally!). As is standard with code I committed, where it works great thank the - patch writer, and where it's broken, feel free to yell at me. Enjoy! - - Sadrul: Finch is more colourful and blinky in this release! There's + patch writer, and where it's broken, feel free to yell at me. Enjoy! + + Sadrul: Finch is more colourful and blinky in this release! There's now a log viewer, which is very useful, and also the ability to - block/unblock buddies. It's now also possible to find chat rooms on - many services, e.g. XMPP, IRC, Yahoo! etc. Happy Leap Day! + block/unblock buddies. It's now also possible to find chat rooms on + many services, e.g. XMPP, IRC, Yahoo! etc. Happy Leap Day! Ka-Hing: I think all I've done for this release is committing some patches written by other people. - Stu: Finally, 2.4.0 lands. I didn't do all that much except complain - about things I didn't like or just revert Sean's changes. I'm quite + Stu: Finally, 2.4.0 lands. I didn't do all that much except complain + about things I didn't like or just revert Sean's changes. I'm quite pleased with how well it's turned out in the end. Happy Birthday Fred, you must be nearly 10 now ;-) 2.3.1 (12/7/2007): Stu: I'm sorry for the MSN problems and the plugin crashes in 2.3.0. - Hopefully this will redeem us. This fixes a number of bugs. I'm a - bit late but I'd like to welcome John to the team. Enjoy! + Hopefully this will redeem us. This fixes a number of bugs. I'm a + bit late but I'd like to welcome John to the team. Enjoy! Luke: I've done absolutely nothing in the last 2 weeks, except watch others commit bug and, more, leak fixes. People should be noticing @@ -246,23 +296,23 @@ last release looking at the tickets that have been submitted and many of them have been closed. - Stu: I haven't NEWS'd in a while. I haven't actually done much for - too long also, maybe I'll find some time soon. This release is + Stu: I haven't NEWS'd in a while. I haven't actually done much for + too long also, maybe I'll find some time soon. This release is basically what 2.2.0 should have been - it actually compiles this time. 2.2.0 (9/13/2007): Sean: 2.2.0 contains the results of several major Google Summer - of Code branches bringing some new, extraordinary features. We + of Code branches bringing some new, extraordinary features. We have a new protocol, MySpaceIM, a bunch of new features for an existing protocol, XMPP, and nifty new certificate management to make sure your IM server is who it says it is. Ka-Hing: A number of you noticed crashes when dragging windows - around when certain options are enabled. Well, that was my fault, - and Sadrul fixed it. So Props to him and poos to me. I haven't + around when certain options are enabled. Well, that was my fault, + and Sadrul fixed it. So Props to him and poos to me. I haven't done much for this release, but the next one should contain - something that I helped work on. Hint: students are cheap slave + something that I helped work on. Hint: students are cheap slave coders! Kevin: I haven't really been coding much in Pidgin, and this @@ -272,9 +322,9 @@ 2.1.1 (8/20/2007): Sean: Continuing our schedule of frequent releases, Pidgin 2.1.1 - is out. In it, we've addressed a lot of UI issues from our + is out. In it, we've addressed a lot of UI issues from our experimental new changes introduced in 2.1.0, and gave a lot of - attention to Yahoo! and Bonjour. Thanks to everyone who + attention to Yahoo! and Bonjour. Thanks to everyone who contributed. Luke: We have reworked some parts of the conversation windows in @@ -285,14 +335,14 @@ various issues, testing fixes, and getting patches in. Tim: Sean finally got me to fix some of the buddy list bugs with - Yahoo! when in version 15 mode. So now we have some Yahoo! to - MSN support, which is kind of nice. Looks like some others have + Yahoo! when in version 15 mode. So now we have some Yahoo! to + MSN support, which is kind of nice. Looks like some others have been contributing to Yahoo! while I've been AWOL, so many thanks to them. 2.1.0 (7/28/2007): Sean: This release took a bit longer than 3 weeks, but boy is it - worth it! We're beginning to experiment with new UI concepts and + worth it! We're beginning to experiment with new UI concepts and this release features a largely re-designed conversation window. We've closed 150 tickets for this release; much thanks go to all the developers, translators, and testers who made this possible. @@ -300,28 +350,28 @@ Ka-Hing: Sean said no one else NEWS'ed, so I figure I should. 2.0.2 (6/14/2007): - Sean: Another big maintenance release. Again, about 100 tickets were - resolved in this release, and they keep coming in. Lots of bug fixes, + Sean: Another big maintenance release. Again, about 100 tickets were + resolved in this release, and they keep coming in. Lots of bug fixes, some minor icon adjustements, hopefully we addressed some ICQ internationalization issues, and support for Bonjour on Windows! Our next release will be 2.1.0, and will come with some great new features. Stu: I think we're gradually getting the hang of this 3 week thing - again. This release includes yet more bug fixes. I'd also like to + again. This release includes yet more bug fixes. I'd also like to specifically thank Pekka Riikonen for the patch to enable using SILC Toolkit 1.1 with Pidgin/libpurple that is included in this release. 2.0.1 (5/24/2007): - Sean: 2.0.1! Three weeks later, as scheduled! It is so nice to have - regular, frequent, releases again! This is a bugfix release; We have + Sean: 2.0.1! Three weeks later, as scheduled! It is so nice to have + regular, frequent, releases again! This is a bugfix release; We have fixed over 100 issues reported to us at http://developer.pidgin.im. Thanks to everyone for their great work, and look for the next release in another three weeks! - Stu: Lots'o'fixes in this. I don't know how you users find so many - things for us to fix. 24 hours in a day (sadly). 24 is divisible by the - sum of its digits and by their product. It is the smallest composite + Stu: Lots'o'fixes in this. I don't know how you users find so many + things for us to fix. 24 hours in a day (sadly). 24 is divisible by the + sum of its digits and by their product. It is the smallest composite number, the product of whose divisors is a cube. Luke: I requested that we have a bug fix release, and so we have! @@ -343,18 +393,18 @@ definition of 'cool' to get it. Etan: Perl plugins now have access to almost all of the savedstatus - API functions. I also removed a couple of the preferences from the + API functions. I also removed a couple of the preferences from the Pidgin GTK+ Theme Control plugin which should help many of the people - for whom the configuration dialog size was a problem. The removed + for whom the configuration dialog size was a problem. The removed preferences no longer had the effects they were added to have anyway. 2.0.0 (5/3/2007): Sean: 2.0.0! It's real exciting to finally release Pidgin 2.0.0! I'm - really proud of all the work we've all done. I'm pumped. And, while + really proud of all the work we've all done. I'm pumped. And, while I could go on about all the amazing thing that have been added since 1.5.0, what I'm really excited about is getting back to a regular, rapid, release cycle of active, open development, unhindered by legal - quandries. Huge thanks to everyone involved. + quandries. Huge thanks to everyone involved. Luke: We have finally managed to get 2.0.0 out the door, after nearly but not quite 2 years of effort and fustration. No one regrets more @@ -371,24 +421,24 @@ attempt to avoid knee-jerk reactions. Evan: One small step for bird, one giant leap for birdkind... except - this is hardly one small step. A lot more has changed from Gaim 1.5.0 + this is hardly one small step. A lot more has changed from Gaim 1.5.0 than just the name. Pidgin has a *very* attractive new look, a whole new member of the family (Finch, formerly gaim-console) has been born, and libpurple has come into its own as a solid, full-featured library - powering the greatest IM clients around. Bugs were fixed and + powering the greatest IM clients around. Bugs were fixed and features were added by the hundreds (thousands?) since the last major release, all while improving performance and resisting feature - creep. As Luke said, a ton of thought and effort has gone into + creep. As Luke said, a ton of thought and effort has gone into Pidgin 2.0.0; I'm proud to have played a part. - Stu: We did it! finally, we have 2.0.0. It's been a long time coming, - but there's a great deal of goodness here. When I say a long time, I'm + Stu: We did it! finally, we have 2.0.0. It's been a long time coming, + but there's a great deal of goodness here. When I say a long time, I'm not kidding - it's been 972 days since we branched off "oldstatus" - (aka 1.x). The early Greeks were uncertain as to whether 2 was a + (aka 1.x). The early Greeks were uncertain as to whether 2 was a number at all (or if we'd ever make this release) - it has a beginning and an end but no middle (much like our unfortunately quiet development - period). 2 is the first prime number and the only even prime. 2 is also - the first deficient number (oh well). There are only 10 types of people + period). 2 is the first prime number and the only even prime. 2 is also + the first deficient number (oh well). There are only 10 types of people in the world - those who like our new names and those who do not. Enjoy! @@ -398,7 +448,7 @@ where they are today. Congratulations everyone! Sadrul: My first NEWS, and on what an occasion! Pidgin 2.0.0 is finally - released!! And it's *really* very good!!! Give your soul a break ... + released!! And it's *really* very good!!! Give your soul a break ... Use Pidgin! Daniel: There has been a fair amount of weeping and gnashing of teeth
--- a/PLUGIN_HOWTO Thu Aug 13 17:40:00 2009 +0000 +++ b/PLUGIN_HOWTO Mon Aug 24 19:21:21 2009 +0000 @@ -1,6 +1,6 @@ For information on writing a plugin for Purple, Pidgin or Finch, go -http://developer.pidgin.im and click on API. From there, see the HOWTOs in the -"Related Pages" section. +http://developer.pidgin.im and click on API. From there, see the +HOWTOs in the "Related Pages" section. You can also generate this documentation locally by installing doxygen and graphviz dot, then running "make docs" in the
--- a/configure.ac Thu Aug 13 17:40:00 2009 +0000 +++ b/configure.ac Mon Aug 24 19:21:21 2009 +0000 @@ -46,7 +46,7 @@ m4_define([purple_lt_current], [6]) m4_define([purple_major_version], [2]) m4_define([purple_minor_version], [6]) -m4_define([purple_micro_version], [0]) +m4_define([purple_micro_version], [2]) m4_define([purple_version_suffix], [devel]) m4_define([purple_version], [purple_major_version.purple_minor_version.purple_micro_version]) @@ -55,7 +55,7 @@ m4_define([gnt_lt_current], [6]) m4_define([gnt_major_version], [2]) m4_define([gnt_minor_version], [6]) -m4_define([gnt_micro_version], [0]) +m4_define([gnt_micro_version], [2]) m4_define([gnt_version_suffix], [devel]) m4_define([gnt_version], [gnt_major_version.gnt_minor_version.gnt_micro_version]) @@ -312,11 +312,11 @@ dnl ####################################################################### dnl # Check for GLib 2.0 (required) dnl ####################################################################### -PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.0.0 gobject-2.0 gmodule-2.0 gthread-2.0], , [ +PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.4.0 gobject-2.0 gmodule-2.0 gthread-2.0], , [ AC_MSG_RESULT(no) AC_MSG_ERROR([ -You must have the GLib 2.0 development headers installed to build. +You must have GLib 2.4.0 or newer development headers installed to build. If you have these installed already you may need to install pkg-config so I can find them. @@ -399,12 +399,13 @@ fi if test "x$enable_gtkui" = "xyes" ; then - PKG_CHECK_MODULES(GTK, [gtk+-2.0 >= 2.0.0], , [ + PKG_CHECK_MODULES(GTK, [gtk+-2.0 >= 2.4.0], , [ AC_MSG_RESULT(no) AC_MSG_ERROR([ -You must have the GTK+ 2.0 development headers installed to compile Pidgin. -If you want to build only Finch then specify --disable-gtkui when running configure. +You must have GTK+ 2.4.0 or newer development headers installed to compile +Pidgin. If you want to build only Finch then specify --disable-gtkui when +running configure. ])]) AC_SUBST(GTK_CFLAGS) @@ -631,7 +632,8 @@ [ac_ncurses_includes="$withval"], [ac_ncurses_includes=""]) if test "x$enable_consoleui" = "xyes"; then AC_CHECK_LIB(ncursesw, initscr, [GNT_LIBS="-lncursesw"], [enable_consoleui=no]) - AC_CHECK_LIB(panelw, update_panels, [GNT_LIBS="$GNT_LIBS -lpanelw"], [enable_consoleui=no]) + AC_CHECK_LIB(panelw, update_panels, [GNT_LIBS="$GNT_LIBS -lpanelw"], + [enable_consoleui=no], [$GNT_LIBS]) if test "x$enable_consoleui" = "xyes"; then dnl # Some distros put the headers in ncursesw/, some don't @@ -674,7 +676,8 @@ # ncursesw was not found. Look for plain old ncurses enable_consoleui=yes AC_CHECK_LIB(ncurses, initscr, [GNT_LIBS="-lncurses"], [enable_consoleui=no]) - AC_CHECK_LIB(panel, update_panels, [GNT_LIBS="$GNT_LIBS -lpanel"], [enable_consoleui=no]) + AC_CHECK_LIB(panel, update_panels, [GNT_LIBS="$GNT_LIBS -lpanel"], + [enable_consoleui=no], [$GNT_LIBS]) AC_DEFINE(NO_WIDECHAR, 1, [Define to 1 if you don't have wide-character support.]) if test x"$ac_ncurses_includes" != "x"; then GNT_CFLAGS="-I$ac_ncurses_includes" @@ -792,13 +795,13 @@ dnl ####################################################################### AC_ARG_ENABLE(vv, [AC_HELP_STRING([--disable-vv], [compile without voice and video support])], - [enable_vv="$enableval" force_vv=$enableval], [enable_vv="yes" force_vv=no]) + enable_vv="$enableval", enable_vv="yes") if test "x$enable_vv" != "xno"; then if test "x$enable_gstreamer" != "xno" -a "x$enable_gstinterfaces" != "xno" -a "x$enable_farsight" != "xno"; then AC_DEFINE(USE_VV, 1, [Use voice and video]) else enable_vv="no" - if test "x$force_vv" = "xyes"; then + if test "x$force_deps" = "xyes"; then AC_MSG_ERROR([ Dependencies for voice/video were not met. Install the necessary gstreamer and farsight packages first. @@ -807,6 +810,7 @@ fi fi fi +AM_CONDITIONAL(USE_VV, test "x$enable_gstreamer" != "xno" -a "x$enable_gstinterfaces" != "xno" -a "x$enable_farsight" != "xno") AC_ARG_ENABLE(idn, [AC_HELP_STRING([--disable-idn], [compile without IDN support])], @@ -856,36 +860,39 @@ [AC_HELP_STRING([--disable-avahi], [compile without avahi (required for Bonjour support)])], enable_avahi="$enableval", enable_avahi="yes") -AC_ARG_WITH(avahi-client-includes, [AC_HELP_STRING([--with-avahi-client-includes=DIR], [compile the Bonjour plugin against the Avahi Client includes in DIR])], [ac_avahi_client_includes="$withval"], [ac_avahi_client_includes="no"]) -AC_ARG_WITH(avahi-client-libs, [AC_HELP_STRING([--with-avahi-client-libs=DIR], [compile the Bonjour plugin against the Avahi Client libs in DIR])], [ac_avahi_client_libs="$withval"], [ac_avahi_client_libs="no"]) -AVAHI_CFLAGS="" -AVAHI_LIBS="" + +if test "x$enable_avahi" = "xyes"; then + AC_ARG_WITH(avahi-client-includes, [AC_HELP_STRING([--with-avahi-client-includes=DIR], [compile the Bonjour plugin against the Avahi Client includes in DIR])], [ac_avahi_client_includes="$withval"], [ac_avahi_client_includes="no"]) + AC_ARG_WITH(avahi-client-libs, [AC_HELP_STRING([--with-avahi-client-libs=DIR], [compile the Bonjour plugin against the Avahi Client libs in DIR])], [ac_avahi_client_libs="$withval"], [ac_avahi_client_libs="no"]) + AVAHI_CFLAGS="" + AVAHI_LIBS="" -dnl Attempt to autodetect Avahi -PKG_CHECK_MODULES(AVAHI, [avahi-client avahi-glib], [ - avahiincludes="yes" - avahilibs="yes" -], [ - avahiincludes="no" - avahilibs="no" -]) + dnl Attempt to autodetect Avahi + PKG_CHECK_MODULES(AVAHI, [avahi-client avahi-glib], [ + avahiincludes="yes" + avahilibs="yes" + ], [ + avahiincludes="no" + avahilibs="no" + ]) -dnl Override AVAHI_CFLAGS if the user specified an include dir -if test "$ac_avahi_client_includes" != "no"; then - AVAHI_CFLAGS="-I$ac_avahi_client_includes" + dnl Override AVAHI_CFLAGS if the user specified an include dir + if test "$ac_avahi_client_includes" != "no"; then + AVAHI_CFLAGS="-I$ac_avahi_client_includes" + fi + CPPFLAGS_save="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $AVAHI_CFLAGS" + AC_CHECK_HEADER(avahi-client/client.h, [avahiincludes=yes], [avahiincludes=no]) + CPPFLAGS="$CPPFLAGS $AVAHI_CFLAGS $GLIB_CFLAGS" + AC_CHECK_HEADER(avahi-glib/glib-malloc.h, [avahiincludes=yes], [avahiincludes=no]) + CPPFLAGS="$CPPFLAGS_save" + + dnl Override AVAHI_LIBS if the user specified a libs dir + if test "$ac_avahi_client_libs" != "no"; then + AVAHI_LIBS="-L$ac_avahi_client_libs -lavahi-common -lavahi-client -lavahi-glib " + fi + AC_CHECK_LIB(avahi-client, avahi_client_new, [avahilibs=yes], [avahilibs=no], $AVAHI_LIBS) fi -CPPFLAGS_save="$CPPFLAGS" -CPPFLAGS="$CPPFLAGS $AVAHI_CFLAGS" -AC_CHECK_HEADER(avahi-client/client.h, [avahiincludes=yes], [avahiincludes=no]) -CPPFLAGS="$CPPFLAGS $AVAHI_CFLAGS $GLIB_CFLAGS" -AC_CHECK_HEADER(avahi-glib/glib-malloc.h, [avahiincludes=yes], [avahiincludes=no]) -CPPFLAGS="$CPPFLAGS_save" - -dnl Override AVAHI_LIBS if the user specified a libs dir -if test "$ac_avahi_client_libs" != "no"; then - AVAHI_LIBS="-L$ac_avahi_client_libs -lavahi-common -lavahi-client -lavahi-glib " -fi -AC_CHECK_LIB(avahi-client, avahi_client_new, [avahilibs=yes], [avahilibs=no], $AVAHI_LIBS) if test "x$enable_avahi" = "xyes" -a "x$force_deps" = "xyes" -a \( "x$avahiincludes" = "xno" -o "x$avahilibs" = "xno" \); then AC_MSG_ERROR([
--- a/doc/core-signals.dox Thu Aug 13 17:40:00 2009 +0000 +++ b/doc/core-signals.dox Mon Aug 24 19:21:21 2009 +0000 @@ -2,6 +2,7 @@ @signals @signal quitting + @signal uri-handler @endsignals @see core.h @@ -16,5 +17,16 @@ Emitted when libpurple is quitting. @endsignaldef + @signaldef uri-handler + @signalproto +gboolean (*uri_handler)(const gchar *proto, const gchar *cmd, GHashTable *params); + @endsignalproto + @signaldesc + Emitted when handling a registered URI. + @param proto The protocol of the URI. + @param cmd The 'command' of the URI. + @param params Any key/value parameters from the URI. + @endsignaldef + */ // vim: syntax=c.doxygen tw=75 et
--- a/doc/jabber-signals.dox Thu Aug 13 17:40:00 2009 +0000 +++ b/doc/jabber-signals.dox Mon Aug 24 19:21:21 2009 +0000 @@ -8,6 +8,7 @@ @signal jabber-register-namespace-watcher @signal jabber-unregister-namespace-watcher @signal jabber-sending-xmlnode + @signal jabber-receiving-xmlnode @endsignals <hr> @@ -71,7 +72,7 @@ @signaldef jabber-watched-iq @signalproto -gboolean (*watched_iq)(PurpleConnection *pc, const char *type, const char *id, +gboolean (*watched_iq)(PurpleConnection *gc, const char *type, const char *id, const char *from, xmlnode *child); @endsignalproto @signaldesc @@ -87,18 +88,6 @@ process it. FALSE otherwise. @endsignaldef - @signaldef jabber-sending-xmlnode - @signalproto -void (sending_xmlnode)(PurpleConnection *gc, xmlnode **stanza); - @endsignalproto - @signaldesc - Emit this signal (@c purple_signal_emit) to send a stanza. It is preferred - to use this instead of prpl_info->send_raw. - @param gc The connectoin on which to send the stanza. - @param stanza The stanza to send. If stanza is not NULL after being sent, - the emitter should free it. - @endsignaldef - @signaldef jabber-register-namespace-watcher @signalproto void (register_namespace_watcher)(const char *node, const char *namespace); @@ -121,5 +110,29 @@ @param namespace The IQ child namespace to no longer watch. @endsignaldef + @signaldef jabber-sending-xmlnode + @signalproto +void (sending_xmlnode)(PurpleConnection *gc, xmlnode **stanza); + @endsignalproto + @signaldesc + Emit this signal (@c purple_signal_emit) to send a stanza. It is preferred + to use this instead of prpl_info->send_raw. + @param gc The connection on which to send the stanza. + @param stanza The stanza to send. If stanza is not NULL after being sent, + the emitter should free it. + @endsignaldef + + @signaldef jabber-receiving-xmlnode + @signalproto +void (receiving_xmlnode)(PurpleConnection *gc, xmlnode **stanza); + @endsignalproto + @signaldesc + Emitted when an XMPP stanza is received. Allows a plugin to process any + stanza. + @param gc The connection on which the stanza was received. + @param stanza The received stanza. Set stanza to NULL (and free it) to + stop processing the stanza. + @endsignaldef + */ // vim: syntax=c.doxygen tw=75 et
--- a/finch/gntmedia.c Thu Aug 13 17:40:00 2009 +0000 +++ b/finch/gntmedia.c Mon Aug 24 19:21:21 2009 +0000 @@ -156,7 +156,7 @@ { media->priv = FINCH_MEDIA_GET_PRIVATE(media); - media->priv->calling = gnt_label_new(_("Calling ... ")); + media->priv->calling = gnt_label_new(_("Calling...")); media->priv->hangup = gnt_button_new(_("Hangup")); media->priv->accept = gnt_button_new(_("Accept")); media->priv->reject = gnt_button_new(_("Reject"));
--- a/finch/libgnt/configure.ac Thu Aug 13 17:40:00 2009 +0000 +++ b/finch/libgnt/configure.ac Mon Aug 24 19:21:21 2009 +0000 @@ -24,11 +24,11 @@ # Make sure to update ../../configure.ac with libgnt version changes. # -m4_define([gnt_lt_current], [5]) +m4_define([gnt_lt_current], [6]) m4_define([gnt_major_version], [2]) -m4_define([gnt_minor_version], [5]) -m4_define([gnt_micro_version], [0]) -m4_define([gnt_version_suffix], []) +m4_define([gnt_minor_version], [6]) +m4_define([gnt_micro_version], [2]) +m4_define([gnt_version_suffix], [devel]) m4_define([gnt_version], [gnt_major_version.gnt_minor_version.gnt_micro_version]) m4_define([gnt_display_version], gnt_version[]m4_ifdef([gnt_version_suffix],[gnt_version_suffix]))
--- a/finch/libgnt/gntkeys.c Thu Aug 13 17:40:00 2009 +0000 +++ b/finch/libgnt/gntkeys.c Mon Aug 24 19:21:21 2009 +0000 @@ -166,7 +166,7 @@ strstr(term, "xterm") == term || strstr(term, "vt100") == term) *(text + 1) = 'O'; - } else if (*(unsigned char*)text == 195) { + } else if (g_utf8_get_char(text) == 195) { if (*(text + 2) == 0 && strstr(term, "xterm") == term) { *(text) = 27; *(text + 1) -= 64; /* Say wha? */
--- a/finch/plugins/gnttinyurl.c Thu Aug 13 17:40:00 2009 +0000 +++ b/finch/plugins/gnttinyurl.c Mon Aug 24 19:21:21 2009 +0000 @@ -354,7 +354,7 @@ frame = purple_plugin_pref_frame_new(); pref = purple_plugin_pref_new_with_name(PREF_LENGTH); - purple_plugin_pref_set_label(pref, _("Only create TinyURL for urls" + purple_plugin_pref_set_label(pref, _("Only create TinyURL for URLs" " of this length or greater")); purple_plugin_pref_frame_add(frame, pref); pref = purple_plugin_pref_new_with_name(PREF_URL); @@ -390,7 +390,7 @@ N_("TinyURL"), DISPLAY_VERSION, N_("TinyURL plugin"), - N_("When receiving a message with URL(s), TinyURL for easier copying"), + N_("When receiving a message with URL(s), use TinyURL for easier copying"), "Richard Nelson <wabz@whatsbeef.net>", PURPLE_WEBSITE, plugin_load,
--- a/finch/plugins/grouping.c Thu Aug 13 17:40:00 2009 +0000 +++ b/finch/plugins/grouping.c Mon Aug 24 19:21:21 2009 +0000 @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #define PURPLE_PLUGIN
--- a/libpurple/certificate.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/certificate.c Mon Aug 24 19:21:21 2009 +0000 @@ -43,6 +43,91 @@ /** List of registered Pools */ static GList *cert_pools = NULL; +/* + * TODO: Merge this with PurpleCertificateVerificationStatus for 3.0.0 */ +typedef enum { + PURPLE_CERTIFICATE_UNKNOWN_ERROR = -1, + + /* Not an error */ + PURPLE_CERTIFICATE_NO_PROBLEMS = 0, + + /* Non-fatal */ + PURPLE_CERTIFICATE_NON_FATALS_MASK = 0x0000FFFF, + + /* The certificate is self-signed. */ + PURPLE_CERTIFICATE_SELF_SIGNED = 0x01, + + /* The CA is not in libpurple's pool of certificates. */ + PURPLE_CERTIFICATE_CA_UNKNOWN = 0x02, + + /* The current time is before the certificate's specified + * activation time. + */ + PURPLE_CERTIFICATE_NOT_ACTIVATED = 0x04, + + /* The current time is after the certificate's specified expiration time */ + PURPLE_CERTIFICATE_EXPIRED = 0x08, + + /* The certificate's subject name doesn't match the expected */ + PURPLE_CERTIFICATE_NAME_MISMATCH = 0x10, + + /* No CA pool was found. This shouldn't happen... */ + PURPLE_CERTIFICATE_NO_CA_POOL = 0x20, + + /* Fatal */ + PURPLE_CERTIFICATE_FATALS_MASK = 0xFFFF0000, + + /* The signature chain could not be validated. Due to limitations in the + * the current API, this also indicates one of the CA certificates in the + * chain is expired (or not yet activated). FIXME 3.0.0 */ + PURPLE_CERTIFICATE_INVALID_CHAIN = 0x10000, + + /* The signature has been revoked. */ + PURPLE_CERTIFICATE_REVOKED = 0x20000, + + PURPLE_CERTIFICATE_LAST = 0x40000, +} PurpleCertificateInvalidityFlags; + +static const gchar * +invalidity_reason_to_string(PurpleCertificateInvalidityFlags flag) +{ + switch (flag) { + case PURPLE_CERTIFICATE_SELF_SIGNED: + return _("The certificate is self-signed and cannot be " + "automatically checked."); + break; + case PURPLE_CERTIFICATE_CA_UNKNOWN: + return _("The root certificate this one claims to be issued by is " + "unknown to Pidgin."); + break; + case PURPLE_CERTIFICATE_NOT_ACTIVATED: + return _("The certificate is not valid yet."); + break; + case PURPLE_CERTIFICATE_EXPIRED: + return _("The certificate has expired and should not be " + "considered valid."); + break; + case PURPLE_CERTIFICATE_NAME_MISMATCH: + /* Translators: "domain" refers to a DNS domain (e.g. talk.google.com) */ + return _("The certificate presented is not issued to this domain."); + break; + case PURPLE_CERTIFICATE_NO_CA_POOL: + return _("You have no database of root certificates, so " + "this certificate cannot be validated."); + break; + case PURPLE_CERTIFICATE_INVALID_CHAIN: + return _("The certificate chain presented is invalid."); + break; + case PURPLE_CERTIFICATE_REVOKED: + return _("The certificate has been revoked."); + break; + case PURPLE_CERTIFICATE_UNKNOWN_ERROR: + default: + return _("An unknown certificate error occurred."); + break; + } +} + void purple_certificate_verify (PurpleCertificateVerifier *verifier, const gchar *subject_name, GList *cert_chain, @@ -1265,10 +1350,104 @@ } static void -x509_tls_cached_unknown_peer(PurpleCertificateVerificationRequest *vrq); +x509_tls_cached_unknown_peer(PurpleCertificateVerificationRequest *vrq, + PurpleCertificateInvalidityFlags flags); static void -x509_tls_cached_cert_in_cache(PurpleCertificateVerificationRequest *vrq) +x509_tls_cached_complete(PurpleCertificateVerificationRequest *vrq, + PurpleCertificateInvalidityFlags flags) +{ + PurpleCertificatePool *tls_peers; + PurpleCertificate *peer_crt = vrq->cert_chain->data; + + if (flags & PURPLE_CERTIFICATE_FATALS_MASK) { + /* TODO: Also print any other warnings? */ + const gchar *error; + gchar *tmp, *secondary; + + if (flags & PURPLE_CERTIFICATE_INVALID_CHAIN) + error = invalidity_reason_to_string(PURPLE_CERTIFICATE_INVALID_CHAIN); + else if (flags & PURPLE_CERTIFICATE_REVOKED) + error = invalidity_reason_to_string(PURPLE_CERTIFICATE_REVOKED); + else + error = invalidity_reason_to_string(PURPLE_CERTIFICATE_UNKNOWN_ERROR); + + tmp = g_strdup_printf(_("The certificate for %s could not be validated."), + vrq->subject_name); + secondary = g_strconcat(tmp, " ", error, NULL); + g_free(tmp); + + purple_notify_error(NULL, /* TODO: Probably wrong. */ + _("SSL Certificate Error"), + _("Unable to validate certificate"), + secondary); + g_free(secondary); + + purple_certificate_verify_complete(vrq, PURPLE_CERTIFICATE_INVALID); + return; + } else if (flags & PURPLE_CERTIFICATE_NON_FATALS_MASK) { + /* Non-fatal error. Prompt the user. */ + gchar *tmp; + GString *errors; + guint32 i = 1; + + tmp = g_strdup_printf(_("The certificate for %s could not be validated."), + vrq->subject_name); + errors = g_string_new(tmp); + g_free(tmp); + + errors = g_string_append_c(errors, '\n'); + + /* Special case a name mismatch because we want to display the two names... */ + if (flags & PURPLE_CERTIFICATE_NAME_MISMATCH) { + gchar *sn = purple_certificate_get_subject_name(peer_crt); + + g_string_append_printf(errors, _("The certificate claims to be " + "from \"%s\" instead. This could mean that you are " + "not connecting to the service you believe you are."), + sn); + g_free(sn); + + flags &= ~PURPLE_CERTIFICATE_NAME_MISMATCH; + } + + while (i != PURPLE_CERTIFICATE_LAST) { + if (flags & i) { + errors = g_string_append_c(errors, '\n'); + g_string_append(errors, invalidity_reason_to_string(i)); + } + + i <<= 1; + } + + x509_tls_cached_user_auth(vrq, errors->str); + g_string_free(errors, TRUE); + return; + } + + /* If we reach this point, the certificate is good. */ + + /* Look up the local cache and store it there for future use */ + tls_peers = purple_certificate_find_pool(x509_tls_cached.scheme_name, + "tls_peers"); + if (tls_peers) { + if (!purple_certificate_pool_contains(tls_peers, vrq->subject_name) && + !purple_certificate_pool_store(tls_peers,vrq->subject_name, + peer_crt)) { + purple_debug_error("certificate/x509/tls_cached", + "FAILED to cache peer certificate\n"); + } + } else { + purple_debug_error("certificate/x509/tls_cached", + "Unable to locate tls_peers certificate cache.\n"); + } + + purple_certificate_verify_complete(vrq, PURPLE_CERTIFICATE_VALID); +} + +static void +x509_tls_cached_cert_in_cache(PurpleCertificateVerificationRequest *vrq, + PurpleCertificateInvalidityFlags flags) { /* TODO: Looking this up by name over and over is expensive. Fix, please! */ @@ -1291,7 +1470,7 @@ "Lookup failed on cached certificate!\n" "Falling back to full verification.\n"); /* vrq now becomes the problem of unknown_peer */ - x509_tls_cached_unknown_peer(vrq); + x509_tls_cached_unknown_peer(vrq, flags); return; } @@ -1302,14 +1481,12 @@ if (!memcmp(peer_fpr->data, cached_fpr->data, peer_fpr->len)) { purple_debug_info("certificate/x509/tls_cached", "Peer cert matched cached\n"); - /* vrq is now finished */ - purple_certificate_verify_complete(vrq, - PURPLE_CERTIFICATE_VALID); + x509_tls_cached_complete(vrq, flags); } else { purple_debug_error("certificate/x509/tls_cached", "Peer cert did NOT match cached\n"); /* vrq now becomes the problem of the user */ - x509_tls_cached_unknown_peer(vrq); + x509_tls_cached_unknown_peer(vrq, flags); } purple_certificate_destroy(cached_crt); @@ -1324,9 +1501,8 @@ */ static void x509_tls_cached_check_subject_name(PurpleCertificateVerificationRequest *vrq, - gboolean had_ca_pool) + PurpleCertificateInvalidityFlags flags) { - PurpleCertificatePool *tls_peers; PurpleCertificate *peer_crt; GList *chain = vrq->cert_chain; @@ -1337,77 +1513,14 @@ vrq->subject_name) ) { gchar *sn = purple_certificate_get_subject_name(peer_crt); + flags |= PURPLE_CERTIFICATE_NAME_MISMATCH; purple_debug_error("certificate/x509/tls_cached", "Name mismatch: Certificate given for %s " "has a name of %s\n", vrq->subject_name, sn); - - if (had_ca_pool) { - /* Prompt the user to authenticate the certificate */ - /* TODO: Provide the user with more guidance about why he is - being prompted */ - /* vrq will be completed by user_auth */ - gchar *msg; - msg = g_strdup_printf(_("The certificate presented by \"%s\" " - "claims to be from \"%s\" instead. " - "This could mean that you are not " - "connecting to the service you " - "believe you are."), - vrq->subject_name, sn); - - x509_tls_cached_user_auth(vrq, msg); - g_free(msg); - } else { - /* Had no CA pool, so couldn't verify the chain *and* - * the subject name isn't valid. - * I think this is bad enough to warrant a fatal error. It's - * not likely anyway... - */ - purple_notify_error(NULL, /* TODO: Probably wrong. */ - _("SSL Certificate Error"), - _("Invalid certificate chain"), - _("You have no database of root certificates, so " - "this certificate cannot be validated.")); - } - - g_free(sn); - return; - } /* if (name mismatch) */ - - if (!had_ca_pool) { - /* The subject name is correct, but we weren't able to verify the - * chain because there was no pool of root CAs found. Prompt the user - * to validate it. - */ - - /* vrq will be completed by user_auth */ - x509_tls_cached_user_auth(vrq,_("You have no database of root " - "certificates, so this " - "certificate cannot be " - "validated.")); - return; } - /* If we reach this point, the certificate is good. */ - /* Look up the local cache and store it there for future use */ - tls_peers = purple_certificate_find_pool(x509_tls_cached.scheme_name, - "tls_peers"); - - if (tls_peers) { - if (!purple_certificate_pool_store(tls_peers,vrq->subject_name, - peer_crt) ) { - purple_debug_error("certificate/x509/tls_cached", - "FAILED to cache peer certificate\n"); - } - } else { - purple_debug_error("certificate/x509/tls_cached", - "Unable to locate tls_peers certificate " - "cache.\n"); - } - - /* Whew! Done! */ - purple_certificate_verify_complete(vrq, PURPLE_CERTIFICATE_VALID); - + x509_tls_cached_complete(vrq, flags); } /* For when we've never communicated with this party before */ @@ -1415,7 +1528,8 @@ least reprioritize them. */ static void -x509_tls_cached_unknown_peer(PurpleCertificateVerificationRequest *vrq) +x509_tls_cached_unknown_peer(PurpleCertificateVerificationRequest *vrq, + PurpleCertificateInvalidityFlags flags) { PurpleCertificatePool *ca; PurpleCertificate *peer_crt; @@ -1430,22 +1544,13 @@ /* TODO: Figure out a way to check for a bad signature, as opposed to "not self-signed" */ if ( purple_certificate_signed_by(peer_crt, peer_crt) ) { - gchar *msg; + flags |= PURPLE_CERTIFICATE_SELF_SIGNED; purple_debug_info("certificate/x509/tls_cached", "Certificate for %s is self-signed.\n", vrq->subject_name); - /* Prompt the user to authenticate the certificate */ - /* vrq will be completed by user_auth */ - msg = g_strdup_printf(_("The certificate presented by \"%s\" " - "is self-signed. It cannot be " - "automatically checked."), - vrq->subject_name); - - x509_tls_cached_user_auth(vrq,msg); - - g_free(msg); + x509_tls_cached_check_subject_name(vrq, flags); return; } /* if (self signed) */ @@ -1491,32 +1596,11 @@ * If we get here, either the cert matched the stuff right above * or it didn't, in which case we give up and complain to the user. */ - if (chain_validated) { - x509_tls_cached_check_subject_name(vrq, TRUE); - } else { + if (!chain_validated) /* TODO: Tell the user where the chain broke? */ - /* TODO: This error will hopelessly confuse any - non-elite user. */ - gchar *secondary; - - secondary = g_strdup_printf(_("The certificate chain presented" - " for %s is not valid."), - vrq->subject_name); + flags |= PURPLE_CERTIFICATE_INVALID_CHAIN; - /* TODO: Make this error either block the ensuing SSL - connection error until the user dismisses this one, or - stifle it. */ - purple_notify_error(NULL, /* TODO: Probably wrong. */ - _("SSL Certificate Error"), - _("Invalid certificate chain"), - secondary ); - g_free(secondary); - - /* Okay, we're done here */ - purple_certificate_verify_complete(vrq, - PURPLE_CERTIFICATE_INVALID); - } - + x509_tls_cached_check_subject_name(vrq, flags); return; } /* if (signature chain not good) */ @@ -1527,7 +1611,9 @@ "No X.509 Certificate Authority pool " "could be found!\n"); - x509_tls_cached_check_subject_name(vrq, FALSE); + flags |= PURPLE_CERTIFICATE_NO_CA_POOL; + + x509_tls_cached_check_subject_name(vrq, flags); return; } @@ -1540,15 +1626,15 @@ ca_id); ca_crt = purple_certificate_pool_retrieve(ca, ca_id); if ( NULL == ca_crt ) { + flags |= PURPLE_CERTIFICATE_CA_UNKNOWN; + purple_debug_warning("certificate/x509/tls_cached", "Certificate Authority with DN='%s' not " "found. I'll prompt the user, I guess.\n", ca_id); g_free(ca_id); - /* vrq will be completed by user_auth */ - x509_tls_cached_user_auth(vrq,_("The root certificate this " - "one claims to be issued by " - "is unknown to Pidgin.")); + + x509_tls_cached_check_subject_name(vrq, flags); return; } @@ -1579,36 +1665,15 @@ /* TODO: Also mention the CA involved. While I could do this now, a full DN is a little much with which to assault the user's poor, leaky eyes. */ - /* TODO: This error message makes my eyes cross, and I wrote it */ - gchar * secondary = - g_strdup_printf(_("The certificate chain presented by " - "%s does not have a valid digital " - "signature from the Certificate " - "Authority from which it claims to " - "have a signature."), - vrq->subject_name); - - purple_notify_error(NULL, /* TODO: Probably wrong */ - _("SSL Certificate Error"), - _("Invalid certificate authority" - " signature"), - secondary); - g_free(secondary); - - /* Signal "bad cert" */ - purple_certificate_verify_complete(vrq, - PURPLE_CERTIFICATE_INVALID); - - purple_certificate_destroy(ca_crt); - g_byte_array_free(ca_fpr, TRUE); - g_byte_array_free(last_fpr, TRUE); - return; - } /* if (CA signature not good) */ + flags |= PURPLE_CERTIFICATE_INVALID_CHAIN; + } g_byte_array_free(ca_fpr, TRUE); g_byte_array_free(last_fpr, TRUE); - x509_tls_cached_check_subject_name(vrq, TRUE); + purple_certificate_destroy(ca_crt); + + x509_tls_cached_check_subject_name(vrq, flags); } static void @@ -1617,6 +1682,7 @@ const gchar *tls_peers_name = "tls_peers"; /* Name of local cache */ PurpleCertificatePool *tls_peers; time_t now, activation, expiration; + PurpleCertificateInvalidityFlags flags = PURPLE_CERTIFICATE_NO_PROBLEMS; gboolean ret; g_return_if_fail(vrq); @@ -1632,37 +1698,21 @@ now = time(NULL); ret = purple_certificate_get_times(vrq->cert_chain->data, &activation, &expiration); - if (!ret || now > expiration || now < activation) { - gchar *secondary; - - if (!ret) - purple_debug_error("certificate/x509/tls_cached", - "Failed to get validity times for certificate %s\n", - vrq->subject_name); - else if (now > expiration) - purple_debug_error("certificate/x509/tls_cached", - "Certificate %s expired at %s\n", - vrq->subject_name, ctime(&expiration)); - else - purple_debug_error("certificate/x509/tls_cached", - "Certificate %s is not yet valid, will be at %s\n", - vrq->subject_name, ctime(&activation)); - - /* FIXME 2.6.1 */ - secondary = g_strdup_printf(_("The certificate chain presented" - " for %s is not valid."), - vrq->subject_name); - - purple_notify_error(NULL, /* TODO: Probably wrong. */ - _("SSL Certificate Error"), - _("Invalid certificate chain"), - secondary ); - g_free(secondary); - - /* Okay, we're done here */ - purple_certificate_verify_complete(vrq, - PURPLE_CERTIFICATE_INVALID); - return; + if (!ret) { + flags |= PURPLE_CERTIFICATE_EXPIRED | PURPLE_CERTIFICATE_NOT_ACTIVATED; + purple_debug_error("certificate/x509/tls_cached", + "Failed to get validity times for certificate %s\n", + vrq->subject_name); + } else if (now > expiration) { + flags |= PURPLE_CERTIFICATE_EXPIRED; + purple_debug_error("certificate/x509/tls_cached", + "Certificate %s expired at %s\n", + vrq->subject_name, ctime(&expiration)); + } else if (now < activation) { + flags |= PURPLE_CERTIFICATE_NOT_ACTIVATED; + purple_debug_error("certificate/x509/tls_cached", + "Certificate %s is not yet valid, will be at %s\n", + vrq->subject_name, ctime(&activation)); } tls_peers = purple_certificate_find_pool(x509_tls_cached.scheme_name,tls_peers_name); @@ -1672,9 +1722,8 @@ "Couldn't find local peers cache %s\n", tls_peers_name); - /* vrq now becomes the problem of unknown_peer */ - x509_tls_cached_unknown_peer(vrq); + x509_tls_cached_unknown_peer(vrq, flags); return; } @@ -1685,12 +1734,12 @@ purple_debug_info("certificate/x509/tls_cached", "...Found cached cert\n"); /* vrq is now the responsibility of cert_in_cache */ - x509_tls_cached_cert_in_cache(vrq); + x509_tls_cached_cert_in_cache(vrq, flags); } else { purple_debug_warning("certificate/x509/tls_cached", "...Not in cache\n"); /* vrq now becomes the problem of unknown_peer */ - x509_tls_cached_unknown_peer(vrq); + x509_tls_cached_unknown_peer(vrq, flags); } }
--- a/libpurple/dbus-analyze-functions.py Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/dbus-analyze-functions.py Mon Aug 24 19:21:21 2009 +0000 @@ -181,15 +181,20 @@ def processoutput(self, type, name): + const = False + unsigned = False # the "void" type is simple ... if type == ["void"]: return self.outputvoid(type, name) - const = False if type[0] == "const": type = type[1:] const = True + if type[0] == "unsigned": + type = type[1:] + unsigned = True + # a string if type == ["char", pointer] or type == ["gchar", pointer]: return self.outputstring(type, name, const) @@ -197,7 +202,7 @@ # simple types (ints, booleans, enums, ...) if (len(type) == 1) and \ ((type[0] in simpletypes) or (type[0].startswith("Purple"))): - return self.outputsimple(type, name) + return self.outputsimple(type, name, unsigned) # pointers ... if (len(type) == 2) and (type[1] == pointer): @@ -303,10 +308,13 @@ # self.returncode.append("NULLIFY(%s);" % name) self.returncode.append("return %s;" % name); - def outputsimple(self, type, name): + def outputsimple(self, type, name, us): self.functiontype = type[0] self.decls.append("%s %s = 0;" % (type[0], name)) - self.outputparams.append(("G_TYPE_INT", name)) + if us: + self.outputparams.append(("G_TYPE_UINT", name)) + else: + self.outputparams.append(("G_TYPE_INT", name)) self.returncode.append("return %s;" % name); # we could add "const" to the return type but this would probably @@ -455,11 +463,16 @@ if not const: self.ccodeout.append("\tg_free(%s);" % name) - def outputsimple(self, type, name): - self.cdecls.append("\tdbus_int32_t %s;" % name) + def outputsimple(self, type, name, us): + if us: + self.cdecls.append("\tdbus_uint32_t %s;" % name) + self.cparamsout.append(("UINT32", name)) + self.addouttype("u", name) + else: + self.cdecls.append("\tdbus_int32_t %s;" % name) + self.cparamsout.append(("INT32", name)) + self.addouttype("i", name) self.ccode.append("\t%s = %s;" % (name, self.call)) - self.cparamsout.append(("INT32", name)) - self.addouttype("i", name) def outputpurplestructure(self, type, name): self.cdecls.append("\tdbus_int32_t %s;" % name)
--- a/libpurple/dnssrv.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/dnssrv.c Mon Aug 24 19:21:21 2009 +0000 @@ -465,9 +465,16 @@ { PurpleSrvResponse *srvres = NULL; PurpleSrvQueryData *query_data = data; - if(query_data->error_message != NULL) + if(query_data->error_message != NULL) { purple_debug_error("dnssrv", query_data->error_message); - else { + if (query_data->type == DNS_TYPE_SRV) { + if (query_data->cb.srv) + query_data->cb.srv(srvres, 0, query_data->extradata); + } else if (query_data->type == DNS_TYPE_TXT) { + if (query_data->cb.txt) + query_data->cb.txt(NULL, query_data->extradata); + } + } else { if (query_data->type == DNS_TYPE_SRV) { PurpleSrvResponse *srvres_tmp = NULL; GList *lst = query_data->results;
--- a/libpurple/ft.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/ft.c Mon Aug 24 19:21:21 2009 +0000 @@ -1321,7 +1321,7 @@ if (purple_xfer_get_filename(xfer) != NULL) { - msg = g_strdup_printf(_("You canceled the transfer of %s"), + msg = g_strdup_printf(_("You cancelled the transfer of %s"), purple_xfer_get_filename(xfer)); } else @@ -1384,12 +1384,12 @@ if (purple_xfer_get_filename(xfer) != NULL) { - msg = g_strdup_printf(_("%s canceled the transfer of %s"), + msg = g_strdup_printf(_("%s cancelled the transfer of %s"), buddy ? purple_buddy_get_alias(buddy) : xfer->who, purple_xfer_get_filename(xfer)); } else { - msg = g_strdup_printf(_("%s canceled the file transfer"), + msg = g_strdup_printf(_("%s cancelled the file transfer"), buddy ? purple_buddy_get_alias(buddy) : xfer->who); } purple_xfer_conversation_write(xfer, msg, TRUE);
--- a/libpurple/idle.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/idle.h Mon Aug 24 19:21:21 2009 +0000 @@ -26,6 +26,8 @@ #ifndef _PURPLE_IDLE_H_ #define _PURPLE_IDLE_H_ +#include <time.h> + /** * Idle UI operations. */
--- a/libpurple/media-gst.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/media-gst.h Mon Aug 24 19:21:21 2009 +0000 @@ -21,7 +21,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ #ifndef _PURPLE_MEDIA_GST_H_
--- a/libpurple/media.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/media.c Mon Aug 24 19:21:21 2009 +0000 @@ -21,7 +21,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ #include <string.h> @@ -2129,6 +2129,35 @@ } break; } + case GST_MESSAGE_ERROR: { + GstElement *element = GST_ELEMENT(GST_MESSAGE_SRC(msg)); + GstElement *lastElement = NULL; + while (!GST_IS_PIPELINE(element)) { + if (element == media->priv->confbin) { + purple_media_error("media", _("Conference error.")); + purple_media_end(media, NULL, NULL); + break; + } + lastElement = element; + element = GST_ELEMENT_PARENT(element); + } + if (GST_IS_PIPELINE(element)) { + GList *sessions = g_hash_table_get_values(media->priv->sessions); + for (; sessions; sessions = g_list_delete_link(sessions, sessions)) { + PurpleMediaSession *session = sessions->data; + + if (session->src == lastElement) { + if (session->type & PURPLE_MEDIA_AUDIO) + purple_media_error(media, _("Error with your microphone.")); + else + purple_media_error(media, _("Error with your webcam.")); + purple_media_end(media, NULL, NULL); + break; + } + } + g_list_free(sessions); + } + } default: break; } @@ -2730,10 +2759,13 @@ num_params, params, &err); } - if (err) { - purple_debug_error("media", "Error creating stream: %s\n", - err->message); - g_error_free(err); + if (fsstream == NULL) { + purple_debug_error("media", + "Error creating stream: %s\n", + err && err->message ? + err->message : "NULL"); + if (err) + g_error_free(err); g_object_unref(participant); g_hash_table_remove(media->priv->participants, who); purple_media_remove_session(media, session);
--- a/libpurple/media.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/media.h Mon Aug 24 19:21:21 2009 +0000 @@ -21,7 +21,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ #ifndef _PURPLE_MEDIA_H_
--- a/libpurple/mediamanager.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/mediamanager.c Mon Aug 24 19:21:21 2009 +0000 @@ -21,7 +21,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ #include "internal.h"
--- a/libpurple/mediamanager.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/mediamanager.h Mon Aug 24 19:21:21 2009 +0000 @@ -21,7 +21,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ #ifndef _PURPLE_MEDIA_MANAGER_H_
--- a/libpurple/plugins/joinpart.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/plugins/joinpart.c Mon Aug 24 19:21:21 2009 +0000 @@ -229,16 +229,17 @@ frame = purple_plugin_pref_frame_new(); - ppref = purple_plugin_pref_new_with_label(_("Join/Part Hiding Configuration")); + ppref = purple_plugin_pref_new_with_label(_("Hide Joins/Parts")); purple_plugin_pref_frame_add(frame, ppref); ppref = purple_plugin_pref_new_with_name_and_label(THRESHOLD_PREF, - _("Minimum Room Size")); + /* Translators: Followed by an input request a number of people */ + _("For rooms with more than this many people")); purple_plugin_pref_set_bounds(ppref, 0, 1000); purple_plugin_pref_frame_add(frame, ppref); ppref = purple_plugin_pref_new_with_name_and_label(DELAY_PREF, - _("User Inactivity Timeout (in minutes)")); + _("If user has not spoken in this many minutes")); purple_plugin_pref_set_bounds(ppref, 0, 8 * 60); /* 8 Hours */ purple_plugin_pref_frame_add(frame, ppref);
--- a/libpurple/plugins/perl/common/XMLNode.xs Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/plugins/perl/common/XMLNode.xs Mon Aug 24 19:21:21 2009 +0000 @@ -4,21 +4,24 @@ PROTOTYPES: ENABLE Purple::XMLNode -xmlnode_copy(class, src) +xmlnode_copy(src) Purple::XMLNode src - C_ARGS: - src void xmlnode_free(node) Purple::XMLNode node Purple::XMLNode -xmlnode_from_str(class, str, size) - const char *str - gssize size - C_ARGS: - str, size +xmlnode_from_str(const char *str, gssize length(str)) + PROTOTYPE: $ + +const char * +xmlnode_get_name(node) + Purple::XMLNode node + CODE: + RETVAL = node->name; + OUTPUT: + RETVAL const char * xmlnode_get_attrib(node, attr) @@ -78,11 +81,17 @@ const char *value gchar_own * -xmlnode_to_formatted_str(node, len) +xmlnode_to_formatted_str(node) Purple::XMLNode node - int *len + CODE: + RETVAL = xmlnode_to_formatted_str(node, NULL); + OUTPUT: + RETVAL gchar_own * -xmlnode_to_str(node, len) +xmlnode_to_str(node) Purple::XMLNode node - int *len + CODE: + RETVAL = xmlnode_to_str(node, NULL); + OUTPUT: + RETVAL
--- a/libpurple/protocols/bonjour/bonjour_ft.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/bonjour/bonjour_ft.c Mon Aug 24 19:21:21 2009 +0000 @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "internal.h" #include "util.h" @@ -450,9 +450,11 @@ /* TODO: Make sure that it is advertising a bytestreams transfer */ - bonjour_xfer_receive(pc, id, sid, name, filesize, filename, XEP_BYTESTREAMS); + if (filename) { + bonjour_xfer_receive(pc, id, sid, name, filesize, filename, XEP_BYTESTREAMS); - parsed_receive = TRUE; + parsed_receive = TRUE; + } } if (!parsed_receive) {
--- a/libpurple/protocols/bonjour/bonjour_ft.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/bonjour/bonjour_ft.h Mon Aug 24 19:21:21 2009 +0000 @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _BONJOUR_FT_H_ #define _BONJOUR_FT_H_
--- a/libpurple/protocols/jabber/adhoccommands.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/adhoccommands.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/adhoccommands.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/adhoccommands.h Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/auth.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/auth.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/auth.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/auth.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/bosh.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/bosh.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2008, Tobias Markmann <tmarkmann@googlemail.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/bosh.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/bosh.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2008, Tobias Markmann <tmarkmann@googlemail.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/buddy.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/buddy.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -749,7 +751,9 @@ const char *status_name = jabber_buddy_state_get_name(jbr->state); if (jbr->status) { - purdy = purple_strdup_withhtml(jbr->status); + tmp = purple_markup_escape_text(jbr->status, -1); + purdy = purple_strdup_withhtml(tmp); + g_free(tmp); if (purple_strequal(status_name, purdy)) status_name = NULL; @@ -908,12 +912,14 @@ (binval = xmlnode_get_child(photo, "BINVAL"))) { gsize size; char *bintext = xmlnode_get_data(binval); - guchar *data = purple_base64_decode(bintext, &size); - g_free(bintext); + if (bintext) { + guchar *data = purple_base64_decode(bintext, &size); + g_free(bintext); - if (data) { - vcard_hash = jabber_calculate_data_sha1sum(data, size); - g_free(data); + if (data) { + vcard_hash = jabber_calculate_data_sha1sum(data, size); + g_free(data); + } } } @@ -1675,21 +1681,42 @@ jabber_buddy_set_invisibility(js, purple_buddy_get_name(buddy), FALSE); } -static void jabber_buddy_cancel_presence_notification(PurpleBlistNode *node, - gpointer data) +static void cancel_presence_notification(gpointer data) { PurpleBuddy *buddy; PurpleConnection *gc; JabberStream *js; + buddy = data; + gc = purple_account_get_connection(purple_buddy_get_account(buddy)); + js = purple_connection_get_protocol_data(gc); + + jabber_presence_subscription_set(js, purple_buddy_get_name(buddy), "unsubscribed"); +} + +static void +jabber_buddy_cancel_presence_notification(PurpleBlistNode *node, + gpointer data) +{ + PurpleBuddy *buddy; + PurpleAccount *account; + PurpleConnection *gc; + const gchar *name; + char *msg; + g_return_if_fail(PURPLE_BLIST_NODE_IS_BUDDY(node)); buddy = (PurpleBuddy *) node; - gc = purple_account_get_connection(purple_buddy_get_account(buddy)); - js = purple_connection_get_protocol_data(gc); + name = purple_buddy_get_name(buddy); + account = purple_buddy_get_account(buddy); + gc = purple_account_get_connection(account); - /* I wonder if we should prompt the user before doing this */ - jabber_presence_subscription_set(js, purple_buddy_get_name(buddy), "unsubscribed"); + msg = g_strdup_printf(_("%s will no longer be able to see your status " + "updates. Do you want to continue?"), name); + purple_request_yes_no(gc, NULL, _("Cancel Presence Notification"), + msg, 0 /* Yes */, account, name, NULL, buddy, + cancel_presence_notification, NULL /* Do nothing */); + g_free(msg); } static void jabber_buddy_rerequest_auth(PurpleBlistNode *node, gpointer data)
--- a/libpurple/protocols/jabber/buddy.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/buddy.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/caps.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/caps.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */ @@ -456,6 +458,11 @@ /* Only validate if these are v1.5 capabilities */ if (userdata->hash) { gchar *hash = NULL; + /* + * TODO: If you add *any* hash here, make sure the checksum buffer + * size in jabber_caps_calculate_hash is large enough. The cipher API + * doesn't seem to offer a "Get the hash size" function(?). + */ if (!strcmp(userdata->hash, "sha-1")) { hash = jabber_caps_calculate_hash(info, "sha1"); } else if (!strcmp(userdata->hash, "md5")) { @@ -463,8 +470,10 @@ } if (!hash || strcmp(hash, userdata->ver)) { - purple_debug_warning("jabber", "Could not validate caps info from %s\n", - xmlnode_get_attrib(packet, "from")); + purple_debug_warning("jabber", "Could not validate caps info from " + "%s. Expected %s, got %s\n", + xmlnode_get_attrib(packet, "from"), + userdata->ver, hash ? hash : "(null)"); userdata->cb(NULL, NULL, userdata->cb_data); jabber_caps_client_info_destroy(info);
--- a/libpurple/protocols/jabber/caps.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/caps.h Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/chat.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/chat.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/chat.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/chat.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/data.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/data.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,4 +1,8 @@ /* + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or @@ -11,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ #include <stdlib.h>
--- a/libpurple/protocols/jabber/data.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/data.h Mon Aug 24 19:21:21 2009 +0000 @@ -1,4 +1,8 @@ /* + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or @@ -11,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ #ifndef PURPLE_JABBER_DATA_H
--- a/libpurple/protocols/jabber/disco.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/disco.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Service Discovery * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -302,6 +304,8 @@ } } + js->chat_servers = g_list_reverse(js->chat_servers); + capabilities |= JABBER_CAP_RETRIEVED; if(jbr)
--- a/libpurple/protocols/jabber/disco.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/disco.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/google.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/google.c Mon Aug 24 19:21:21 2009 +0000 @@ -91,20 +91,6 @@ } static void -google_session_send_terminate(GoogleSession *session) -{ - xmlnode *sess; - JabberIq *iq = jabber_iq_new(session->js, JABBER_IQ_SET); - - xmlnode_set_attrib(iq->node, "to", session->remote_jid); - sess = google_session_create_xmlnode(session, "terminate"); - xmlnode_insert_child(iq->node, sess); - - jabber_iq_send(iq); - google_session_destroy(session); -} - -static void google_session_send_candidates(PurpleMedia *media, gchar *session_id, gchar *participant, GoogleSession *session) { @@ -398,6 +384,16 @@ purple_media_set_prpl_data(session->media, session); + g_signal_connect_swapped(G_OBJECT(session->media), + "candidates-prepared", + G_CALLBACK(google_session_ready), session); + g_signal_connect_swapped(G_OBJECT(session->media), "codecs-changed", + G_CALLBACK(google_session_ready), session); + g_signal_connect(G_OBJECT(session->media), "state-changed", + G_CALLBACK(google_session_state_changed_cb), session); + g_signal_connect(G_OBJECT(session->media), "stream-info", + G_CALLBACK(google_session_stream_info_cb), session); + params = jabber_google_session_get_params(js, &num_params); if (purple_media_add_stream(session->media, "google-voice", @@ -408,23 +404,11 @@ session->remote_jid, PURPLE_MEDIA_VIDEO, TRUE, "nice", num_params, params) == FALSE)) { purple_media_error(session->media, "Error adding stream."); - purple_media_stream_info(session->media, - PURPLE_MEDIA_INFO_HANGUP, NULL, NULL, TRUE); - google_session_destroy(session); + purple_media_end(session->media, NULL, NULL); g_free(params); return FALSE; } - g_signal_connect_swapped(G_OBJECT(session->media), - "candidates-prepared", - G_CALLBACK(google_session_ready), session); - g_signal_connect_swapped(G_OBJECT(session->media), "codecs-changed", - G_CALLBACK(google_session_ready), session); - g_signal_connect(G_OBJECT(session->media), "state-changed", - G_CALLBACK(google_session_state_changed_cb), session); - g_signal_connect(G_OBJECT(session->media), "stream-info", - G_CALLBACK(google_session_stream_info_cb), session); - g_free(params); return (session->media != NULL) ? TRUE : FALSE; @@ -466,6 +450,16 @@ purple_media_set_prpl_data(session->media, session); + g_signal_connect_swapped(G_OBJECT(session->media), + "candidates-prepared", + G_CALLBACK(google_session_ready), session); + g_signal_connect_swapped(G_OBJECT(session->media), "codecs-changed", + G_CALLBACK(google_session_ready), session); + g_signal_connect(G_OBJECT(session->media), "state-changed", + G_CALLBACK(google_session_state_changed_cb), session); + g_signal_connect(G_OBJECT(session->media), "stream-info", + G_CALLBACK(google_session_stream_info_cb), session); + params = jabber_google_session_get_params(js, &num_params); if (purple_media_add_stream(session->media, "google-voice", @@ -477,8 +471,7 @@ FALSE, "nice", num_params, params) == FALSE)) { purple_media_error(session->media, "Error adding stream."); purple_media_stream_info(session->media, - PURPLE_MEDIA_INFO_HANGUP, NULL, NULL, TRUE); - google_session_send_terminate(session); + PURPLE_MEDIA_INFO_REJECT, NULL, NULL, TRUE); g_free(params); return FALSE; } @@ -535,18 +528,6 @@ purple_media_codec_list_free(codecs); purple_media_codec_list_free(video_codecs); - g_signal_connect_swapped(G_OBJECT(session->media), "accepted", - G_CALLBACK(google_session_ready), session); - g_signal_connect_swapped(G_OBJECT(session->media), - "candidates-prepared", - G_CALLBACK(google_session_ready), session); - g_signal_connect_swapped(G_OBJECT(session->media), "codecs-changed", - G_CALLBACK(google_session_ready), session); - g_signal_connect(G_OBJECT(session->media), "state-changed", - G_CALLBACK(google_session_state_changed_cb), session); - g_signal_connect(G_OBJECT(session->media), "stream-info", - G_CALLBACK(google_session_stream_info_cb), session); - result = jabber_iq_new(js, JABBER_IQ_RESULT); jabber_iq_set_id(result, iq_id); xmlnode_set_attrib(result->node, "to", session->remote_jid); @@ -778,8 +759,7 @@ session->js = js; session->remote_jid = g_strdup(session->id.initiator); - if (!google_session_handle_initiate(js, session, session_node, iq_id)) - google_session_destroy(session); + google_session_handle_initiate(js, session, session_node, iq_id); } #endif /* USE_VV */ @@ -1316,6 +1296,7 @@ purple_debug_error("jabber", "Google STUN lookup failed: %s\n", error_message); g_slist_free(hosts); + js->stun_query = NULL; return; } @@ -1334,18 +1315,16 @@ port = ntohs(((struct sockaddr_in *) addr)->sin_port); } - if (js) { - if (js->stun_ip) { - g_free(js->stun_ip); - } - js->stun_ip = g_strdup(dst); - purple_debug_info("jabber", "set Google STUN IP address: %s\n", dst); - js->stun_port = port; - purple_debug_info("jabber", "set Google STUN port: %d\n", port); - purple_debug_info("jabber", "set Google STUN port: %d\n", port); - /* unmark ongoing query */ - js->stun_query = NULL; - } + if (js->stun_ip) + g_free(js->stun_ip); + js->stun_ip = g_strdup(dst); + js->stun_port = port; + + purple_debug_info("jabber", "set Google STUN IP/port address: " + "%s:%d\n", dst, port); + + /* unmark ongoing query */ + js->stun_query = NULL; } while (hosts != NULL) {
--- a/libpurple/protocols/jabber/ibb.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/ibb.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,4 +1,8 @@ /* + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or @@ -11,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ #include "internal.h"
--- a/libpurple/protocols/jabber/ibb.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/ibb.h Mon Aug 24 19:21:21 2009 +0000 @@ -1,4 +1,8 @@ /* + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or @@ -11,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301, USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ #ifndef PURPLE_JABBER_IBB_H_
--- a/libpurple/protocols/jabber/iq.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/iq.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/iq.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/iq.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/jabber.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jabber.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -3302,7 +3304,7 @@ PURPLE_CMD_FLAG_CHAT | PURPLE_CMD_FLAG_PRPL_ONLY | PURPLE_CMD_FLAG_ALLOW_WRONG_ARGS, "prpl-jabber", jabber_cmd_chat_role, - _("role <moderator|participant|visitor|none> [nick1] [nick2] ...: Get the users with an role or set users' role with the room."), + _("role <moderator|participant|visitor|none> [nick1] [nick2] ...: Get the users with a role or set users' role with the room."), NULL); jabber_cmds = g_slist_prepend(jabber_cmds, GUINT_TO_POINTER(id));
--- a/libpurple/protocols/jabber/jabber.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jabber.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/jingle/content.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/content.c Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/content.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/content.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/iceudp.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/iceudp.c Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/iceudp.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/iceudp.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/jingle.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/jingle.c Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple - Jabber Protocol Plugin * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/jingle.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/jingle.h Mon Aug 24 19:21:21 2009 +0000 @@ -1,6 +1,10 @@ /* * @file jingle.h * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/rawudp.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/rawudp.c Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/rawudp.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/rawudp.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/rtp.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/rtp.c Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or @@ -607,8 +611,11 @@ is_creator = !jingle_session_is_initiator(session); g_free(creator); - purple_media_add_stream(media, name, remote_jid, - type, is_creator, transmitter, num_params, params); + if(!purple_media_add_stream(media, name, remote_jid, + type, is_creator, transmitter, num_params, params)) { + purple_media_end(media, NULL, NULL); + return FALSE; + } g_free(name); g_free(media_type);
--- a/libpurple/protocols/jabber/jingle/rtp.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/rtp.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/session.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/session.c Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/session.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/session.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/transport.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/transport.c Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jingle/transport.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jingle/transport.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,6 +3,10 @@ * * purple * + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or
--- a/libpurple/protocols/jabber/jutil.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jutil.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -504,8 +506,23 @@ JabberStream *js = gc ? gc->proto_data : NULL; static char buf[3072]; /* maximum legal length of a jabber jid */ JabberID *jid; + char *tmp; + size_t len = strlen(in); - jid = jabber_id_new(in); + /* + * If the JID ends with a '/', jabber_id_new is going to throw it away as + * invalid. However, this is what the UI generates for a JID with no + * resource. Deal with that by dropping away the '/'... + */ + if (in[len - 1] == '/') + tmp = g_strndup(in, len - 1); + else + tmp = (gchar *)in; + + jid = jabber_id_new(tmp); + + if (tmp != in) + g_free(tmp); if(!jid) return NULL;
--- a/libpurple/protocols/jabber/jutil.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/jutil.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/message.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/message.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -87,8 +89,12 @@ } if(!jm->xhtml && !jm->body) { - if (jbr) - jbr->chat_states = JABBER_CHAT_STATES_SUPPORTED; + if (jbr) { + if (jm->chat_state != JM_STATE_NONE) + jbr->chat_states = JABBER_CHAT_STATES_SUPPORTED; + else + jbr->chat_states = JABBER_CHAT_STATES_UNSUPPORTED; + } if(JM_STATE_COMPOSING == jm->chat_state) { serv_got_typing(jm->js->gc, from, 0, PURPLE_TYPING);
--- a/libpurple/protocols/jabber/message.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/message.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/oob.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/oob.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -207,7 +209,10 @@ url = xmlnode_get_data(urlnode); jox = g_new0(JabberOOBXfer, 1); - purple_url_parse(url, &jox->address, &jox->port, &jox->page, NULL, NULL); + if (!purple_url_parse(url, &jox->address, &jox->port, &jox->page, NULL, NULL)) { + g_free(url); + return; + } g_free(url); jox->js = js; jox->headers = g_string_new("");
--- a/libpurple/protocols/jabber/oob.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/oob.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/parser.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/parser.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber XML parser stuff * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/parser.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/parser.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/pep.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/pep.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/pep.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/pep.h Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/ping.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/ping.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -16,7 +18,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/ping.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/ping.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -17,7 +19,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ #ifndef PURPLE_JABBER_PING_H_ #define PURPLE_JABBER_PING_H_
--- a/libpurple/protocols/jabber/presence.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/presence.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -469,10 +471,17 @@ jbr->commands_fetched = TRUE; } +#if 0 + /* + * Versions of libpurple before 2.6.0 didn't advertise this capability, so + * we can't yet use Entity Capabilities to determine whether or not the + * other client supports Entity Capabilities. + */ if (jabber_resource_has_capability(jbr, "http://jabber.org/protocol/chatstates")) jbr->chat_states = JABBER_CHAT_STATES_SUPPORTED; else jbr->chat_states = JABBER_CHAT_STATES_UNSUPPORTED; +#endif out: g_free(userdata->from);
--- a/libpurple/protocols/jabber/presence.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/presence.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/roster.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/roster.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/roster.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/roster.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/si.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/si.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/si.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/si.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/useravatar.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/useravatar.c Mon Aug 24 19:21:21 2009 +0000 @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/useravatar.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/useravatar.h Mon Aug 24 19:21:21 2009 +0000 @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/usermood.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/usermood.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/usermood.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/usermood.h Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/usernick.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/usernick.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/usernick.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/usernick.h Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/usertune.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/usertune.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/usertune.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/usertune.h Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -15,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA * */
--- a/libpurple/protocols/jabber/xdata.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/xdata.c Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,9 @@ /* * purple - Jabber Protocol Plugin * - * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/jabber/xdata.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/jabber/xdata.h Mon Aug 24 19:21:21 2009 +0000 @@ -3,7 +3,9 @@ * * purple * - * Copyright (C) 2003 Nathan Walp <faceprint@faceprint.com> + * Purple is the legal property of its developers, whose names are too numerous + * to list here. Please refer to the COPYRIGHT file distributed with this + * source distribution. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
--- a/libpurple/protocols/msn/Makefile.mingw Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/Makefile.mingw Mon Aug 24 19:21:21 2009 +0000 @@ -41,7 +41,6 @@ command.c \ contact.c\ dialog.c \ - directconn.c \ error.c \ group.c \ history.c \
--- a/libpurple/protocols/msn/cmdproc.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/cmdproc.h Mon Aug 24 19:21:21 2009 +0000 @@ -71,6 +71,4 @@ void msn_cmdproc_process_payload(MsnCmdProc *cmdproc, char *payload, int payload_len); -void msn_cmdproc_disconnect(MsnCmdProc *cmdproc); - #endif /* _MSN_CMDPROC_H_ */
--- a/libpurple/protocols/msn/contact.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/contact.c Mon Aug 24 19:21:21 2009 +0000 @@ -21,7 +21,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "msn.h"
--- a/libpurple/protocols/msn/contact.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/contact.h Mon Aug 24 19:21:21 2009 +0000 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _MSN_CONTACT_H_ #define _MSN_CONTACT_H_
--- a/libpurple/protocols/msn/error.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/error.c Mon Aug 24 19:21:21 2009 +0000 @@ -198,7 +198,7 @@ break; case 800: - result = _("Friendly name changes too rapidly"); + result = _("Friendly name is changing too rapidly"); break; case 910:
--- a/libpurple/protocols/msn/msn.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/msn.c Mon Aug 24 19:21:21 2009 +0000 @@ -89,6 +89,7 @@ typedef struct { char *smile; + PurpleSmiley *ps; MsnObject *obj; } MsnEmoticon; @@ -265,6 +266,7 @@ MsnSession *session; MsnCmdProc *cmdproc; MsnPage *page; + MsnMessage *msg; MsnUser *user; char *payload = NULL; const char *mobile_number = NULL; @@ -295,6 +297,9 @@ msn_transaction_set_payload(trans, payload, payload_len); g_free(payload); + msg = msn_message_new_plain(entry); + msn_transaction_set_data(trans, msg); + msn_page_destroy(page); msn_cmdproc_send_trans(cmdproc, trans); @@ -1078,12 +1083,10 @@ strobj = msn_object_to_string(obj); if (current) - g_string_append_printf(current, "\t%s\t%s", - emoticon->smile, strobj); + g_string_append_printf(current, "\t%s\t%s", emoticon->smile, strobj); else { current = g_string_new(""); - g_string_printf(current,"%s\t%s", - emoticon->smile, strobj); + g_string_printf(current, "%s\t%s", emoticon->smile, strobj); } g_free(strobj); @@ -1141,6 +1144,7 @@ emoticon = g_new0(MsnEmoticon, 1); emoticon->smile = g_strdup(purple_smiley_get_shortcut(smiley)); + emoticon->ps = smiley; emoticon->obj = msn_object_new_from_image(img, purple_imgstore_get_filename(img), username, MSN_OBJECT_EMOTICON); @@ -1163,7 +1167,7 @@ smileys = msn_msg_grab_emoticons(msg->body, username); while (smileys) { - smile = (MsnEmoticon*)smileys->data; + smile = (MsnEmoticon *)smileys->data; emoticons = msn_msg_emoticon_add(emoticons, smile); msn_emoticon_destroy(smile); smileys = g_slist_delete_link(smileys, smileys); @@ -1714,13 +1718,19 @@ { PurpleAccount *account; MsnSession *session; + const char *username; MsnSwitchBoard *swboard; MsnMessage *msg; char *msgformat; char *msgtext; + size_t msglen; + MsnEmoticon *smile; + GSList *smileys; + GString *emoticons = NULL; account = purple_connection_get_account(gc); session = gc->proto_data; + username = purple_account_get_username(account); swboard = msn_session_find_swboard_with_id(session, id); if (swboard == NULL) @@ -1732,8 +1742,9 @@ swboard->flag |= MSN_SB_FLAG_IM; msn_import_html(message, &msgformat, &msgtext); - - if (strlen(msgtext) + strlen(msgformat) + strlen(VERSION) > 1564) + msglen = strlen(msgtext); + + if ((msglen == 0) || (msglen + strlen(msgformat) + strlen(VERSION) > 1564)) { g_free(msgformat); g_free(msgtext); @@ -1743,6 +1754,29 @@ msg = msn_message_new_plain(msgtext); msn_message_set_attr(msg, "X-MMS-IM-Format", msgformat); + + smileys = msn_msg_grab_emoticons(msg->body, username); + while (smileys) { + smile = (MsnEmoticon *)smileys->data; + emoticons = msn_msg_emoticon_add(emoticons, smile); + if (purple_conv_custom_smiley_add(swboard->conv, smile->smile, + "sha1", purple_smiley_get_checksum(smile->ps), + FALSE)) { + gconstpointer data; + size_t len; + data = purple_smiley_get_data(smile->ps, &len); + purple_conv_custom_smiley_write(swboard->conv, smile->smile, data, len); + purple_conv_custom_smiley_close(swboard->conv, smile->smile); + } + msn_emoticon_destroy(smile); + smileys = g_slist_delete_link(smileys, smileys); + } + + if (emoticons) { + msn_send_emoticons(swboard, emoticons); + g_string_free(emoticons, TRUE); + } + msn_switchboard_send_msg(swboard, msg, FALSE); msn_message_destroy(msg);
--- a/libpurple/protocols/msn/msn.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/msn.h Mon Aug 24 19:21:21 2009 +0000 @@ -127,7 +127,7 @@ } MsnClientVerId; #define MSN_CLIENT_ID_VERSION MSN_CLIENT_VER_7_0 -#define MSN_CLIENT_ID_CAPABILITIES (MSN_CLIENT_CAP_PACKET|MSN_CLIENT_CAP_INK_GIF|MSN_CLIENT_CAP_VOICEIM|MSN_CLIENT_CAP_WINKS) +#define MSN_CLIENT_ID_CAPABILITIES (MSN_CLIENT_CAP_PACKET|MSN_CLIENT_CAP_INK_GIF|MSN_CLIENT_CAP_VOICEIM) #define MSN_CLIENT_ID \ ((MSN_CLIENT_ID_VERSION << 24) | \
--- a/libpurple/protocols/msn/notification.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/notification.c Mon Aug 24 19:21:21 2009 +0000 @@ -599,6 +599,8 @@ /* Decrement the count for unknown results so that we'll continue login. Also, need to finish the login process here as well, because ADL OK will not be called. */ + if (purple_debug_is_verbose()) + purple_debug_info("msn", "ADL/FQY count is %d\n", session->adl_fqy); if (--session->adl_fqy == 0) msn_session_finish_login(session); return; @@ -680,6 +682,9 @@ /* ADL's are returned all-together */ session->adl_fqy++; + if (purple_debug_is_verbose()) + purple_debug_info("msn", "Posting ADL, count is %d\n", + session->adl_fqy); msn_notification_post_adl(session->notification->cmdproc, payload, payload_len); @@ -694,6 +699,9 @@ } else { /* FQY's are returned one-at-a-time */ session->adl_fqy++; + if (purple_debug_is_verbose()) + purple_debug_info("msn", "Adding FQY address, count is %d\n", + session->adl_fqy); msn_add_contact_xml(session, fqy_node, user->passport, 0, user->networkid); @@ -718,6 +726,9 @@ /* ADL's are returned all-together */ session->adl_fqy++; + if (purple_debug_is_verbose()) + purple_debug_info("msn", "Posting ADL, count is %d\n", + session->adl_fqy); msn_notification_post_adl(session->notification->cmdproc, payload, payload_len); @@ -809,6 +820,9 @@ if (!strcmp(cmd->params[1], "OK")) { /* ADL ack */ + if (purple_debug_is_verbose()) + purple_debug_info("msn", "ADL ACK, count is %d\n", + session->adl_fqy); if (--session->adl_fqy == 0) msn_session_finish_login(session); } else { @@ -1178,14 +1192,36 @@ id = xmlnode_get_attrib(msg, "id"); if (id && !strcmp(id, "407")) { - /* TODO: Use this to NAK the transaction, maybe print the text, too. - unsigned int trId; - id = xmlnode_get_attrib(payloadNode, "id"); - trId = atol(id); - */ - purple_conv_present_error(who, gc->account, - _("Mobile message was not sent because it was too long.")); + PurpleConversation *conv + = purple_find_conversation_with_account(PURPLE_CONV_TYPE_ANY, + who, gc->account); + if (conv != NULL) { + purple_conversation_write(conv, NULL, + _("Mobile message was not sent because it was too long."), + PURPLE_MESSAGE_ERROR, time(NULL)); + + if ((id = xmlnode_get_attrib(payloadNode, "id")) != NULL) { + unsigned int trId = atol(id); + MsnTransaction *trans; + MsnMessage *msg; + trans = msn_history_find(cmdproc->history, trId); + msg = (MsnMessage *)trans->data; + + if (msg) { + char *body_str = msn_message_to_string(msg); + char *body_enc = g_markup_escape_text(body_str, -1); + + purple_conversation_write(conv, NULL, body_enc, + PURPLE_MESSAGE_RAW, time(NULL)); + + g_free(body_str); + g_free(body_enc); + msn_message_destroy(msg); + trans->data = NULL; + } + } + } } else { serv_got_im(gc, who, text, 0, time(NULL)); }
--- a/libpurple/protocols/msn/oim.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/oim.c Mon Aug 24 19:21:21 2009 +0000 @@ -21,7 +21,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "msn.h" #include "soap.h"
--- a/libpurple/protocols/msn/oim.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/oim.h Mon Aug 24 19:21:21 2009 +0000 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _MSN_OIM_H_ #define _MSN_OIM_H_
--- a/libpurple/protocols/msn/slp.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/slp.c Mon Aug 24 19:21:21 2009 +0000 @@ -351,7 +351,7 @@ g_free(bin); - purple_xfer_set_filename(xfer, file_name); + purple_xfer_set_filename(xfer, file_name ? file_name : ""); g_free(file_name); purple_xfer_set_size(xfer, file_size); purple_xfer_set_init_fnc(xfer, msn_xfer_init); @@ -403,9 +403,8 @@ if (conv) { char *buf; buf = g_strdup_printf( - _("%s has sent you a webcam " - "invite, which is not yet " - "supported."), from); + _("%s invited you to view his/her webcam, but " + "this is not yet supported."), from); purple_conversation_write(conv, NULL, buf, PURPLE_MESSAGE_SYSTEM | PURPLE_MESSAGE_NOTIFY,
--- a/libpurple/protocols/msn/slpcall.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/slpcall.c Mon Aug 24 19:21:21 2009 +0000 @@ -205,7 +205,7 @@ if (slpmsg->session_id == 64) { /* This is for handwritten messages (Ink) */ - GError *error; + GError *error = NULL; gsize bytes_read, bytes_written; body_str = g_convert((const gchar *)body, body_len / 2, @@ -232,7 +232,7 @@ g_free(body_str); body_str = g_convert((const gchar *)body, body_len / 2, - "UTF-8", "UTF16-LE", + "UTF-8", "UTF-16LE", &bytes_read, &bytes_written, &error); if (!body_str) {
--- a/libpurple/protocols/msn/slplink.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/slplink.c Mon Aug 24 19:21:21 2009 +0000 @@ -441,6 +441,7 @@ slpmsg->info = "SLP ACK"; msn_slplink_send_slpmsg(slplink, slpmsg); + msn_slpmsg_destroy(slpmsg); } static void @@ -504,11 +505,6 @@ data = msn_message_get_bin_data(msg, &len); - /* - OVERHEAD! - if (msg->msnslp_header.length < msg->msnslp_header.total_size) - */ - offset = msg->msnslp_header.offset; if (offset == 0) @@ -578,7 +574,7 @@ /* fseek(slpmsg->fp, offset, SEEK_SET); */ len = fwrite(data, 1, len, slpmsg->fp); } - else if (slpmsg->size) + else if (slpmsg->size && slpmsg->buffer) { if (G_MAXSIZE - len < offset || (offset + len) > slpmsg->size) {
--- a/libpurple/protocols/msn/soap.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/soap.c Mon Aug 24 19:21:21 2009 +0000 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #include "internal.h"
--- a/libpurple/protocols/msn/soap.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msn/soap.h Mon Aug 24 19:21:21 2009 +0000 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _MSN_SOAP_H
--- a/libpurple/protocols/msnp9/slp.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msnp9/slp.c Mon Aug 24 19:21:21 2009 +0000 @@ -338,7 +338,7 @@ char *bin; gsize bin_len; guint32 file_size; - char *file_name; + gchar *file_name; gunichar2 *uni_name; account = slpcall->slplink->session->account; @@ -368,7 +368,8 @@ g_free(bin); - purple_xfer_set_filename(xfer, file_name); + purple_xfer_set_filename(xfer, file_name ? file_name : ""); + g_free(file_name); purple_xfer_set_size(xfer, file_size); purple_xfer_set_init_fnc(xfer, msn_xfer_init); purple_xfer_set_request_denied_fnc(xfer, msn_xfer_cancel);
--- a/libpurple/protocols/msnp9/slplink.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/msnp9/slplink.c Mon Aug 24 19:21:21 2009 +0000 @@ -477,6 +477,7 @@ #endif msn_slplink_send_slpmsg(slplink, slpmsg); + msn_slpmsg_destroy(slpmsg); } static void @@ -603,7 +604,7 @@ /* fseek(slpmsg->fp, offset, SEEK_SET); */ len = fwrite(data, 1, len, slpmsg->fp); } - else if (slpmsg->size) + else if (slpmsg->size && slpmsg->buffer) { if (G_MAXSIZE - len < offset || (offset + len) > slpmsg->size) {
--- a/libpurple/protocols/oscar/clientlogin.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/oscar/clientlogin.c Mon Aug 24 19:21:21 2009 +0000 @@ -156,11 +156,15 @@ response_node = xmlnode_from_str(response, response_len); if (response_node == NULL) { + char *msg; purple_debug_error("oscar", "startOSCARSession could not parse " "response as XML: %s\n", response); + /* Note to translators: %s in this string is a URL */ + msg = g_strdup_printf(_("Received unexpected response from %s"), + URL_START_OSCAR_SESSION); purple_connection_error_reason(gc, - PURPLE_CONNECTION_ERROR_NETWORK_ERROR, - _("Received unexpected response from " URL_START_OSCAR_SESSION)); + PURPLE_CONNECTION_ERROR_NETWORK_ERROR, msg); + g_free(msg); return FALSE; } @@ -175,11 +179,14 @@ /* Make sure we have a status code */ if (tmp_node == NULL || (tmp = xmlnode_get_data_unescaped(tmp_node)) == NULL) { + char *msg; purple_debug_error("oscar", "startOSCARSession response was " "missing statusCode: %s\n", response); + msg = g_strdup_printf(_("Received unexpected response from %s"), + URL_START_OSCAR_SESSION); purple_connection_error_reason(gc, - PURPLE_CONNECTION_ERROR_NETWORK_ERROR, - _("Received unexpected response from " URL_START_OSCAR_SESSION)); + PURPLE_CONNECTION_ERROR_NETWORK_ERROR, msg); + g_free(msg); xmlnode_free(response_node); return FALSE; } @@ -197,10 +204,14 @@ "frequently. Wait ten minutes and try again. If " "you continue to try, you will need to wait even " "longer.")); - else + else { + char *msg; + msg = g_strdup_printf(_("Received unexpected response from %s"), + URL_START_OSCAR_SESSION); purple_connection_error_reason(gc, - PURPLE_CONNECTION_ERROR_OTHER_ERROR, - _("Received unexpected response from " URL_START_OSCAR_SESSION)); + PURPLE_CONNECTION_ERROR_OTHER_ERROR, msg); + g_free(msg); + } g_free(tmp); xmlnode_free(response_node); @@ -212,11 +223,14 @@ if (data_node == NULL || host_node == NULL || port_node == NULL || cookie_node == NULL) { + char *msg; purple_debug_error("oscar", "startOSCARSession response was missing " "something: %s\n", response); + msg = g_strdup_printf(_("Received unexpected response from %s"), + URL_START_OSCAR_SESSION); purple_connection_error_reason(gc, - PURPLE_CONNECTION_ERROR_NETWORK_ERROR, - _("Received unexpected response from " URL_START_OSCAR_SESSION)); + PURPLE_CONNECTION_ERROR_NETWORK_ERROR, msg); + g_free(msg); xmlnode_free(response_node); return FALSE; } @@ -227,11 +241,14 @@ *cookie = xmlnode_get_data_unescaped(cookie_node); if (*host == NULL || **host == '\0' || tmp == NULL || *tmp == '\0' || cookie == NULL || *cookie == '\0') { + char *msg; purple_debug_error("oscar", "startOSCARSession response was missing " "something: %s\n", response); + msg = g_strdup_printf(_("Received unexpected response from %s"), + URL_START_OSCAR_SESSION); purple_connection_error_reason(gc, - PURPLE_CONNECTION_ERROR_NETWORK_ERROR, - _("Received unexpected response from " URL_START_OSCAR_SESSION)); + PURPLE_CONNECTION_ERROR_NETWORK_ERROR, msg); + g_free(msg); g_free(*host); g_free(tmp); g_free(*cookie); @@ -261,8 +278,10 @@ if (error_message != NULL || len == 0) { gchar *tmp; - tmp = g_strdup_printf(_("Error requesting " URL_START_OSCAR_SESSION - ": %s"), error_message); + /* Note to translators: The first %s is a URL, the second is an + error message. */ + tmp = g_strdup_printf(_("Error requesting %s: %s"), + URL_START_OSCAR_SESSION, error_message); purple_connection_error_reason(gc, PURPLE_CONNECTION_ERROR_NETWORK_ERROR, tmp); g_free(tmp); @@ -339,11 +358,14 @@ response_node = xmlnode_from_str(response, response_len); if (response_node == NULL) { + char *msg; purple_debug_error("oscar", "clientLogin could not parse " "response as XML: %s\n", response); + msg = g_strdup_printf(_("Received unexpected response from %s"), + URL_CLIENT_LOGIN); purple_connection_error_reason(gc, - PURPLE_CONNECTION_ERROR_NETWORK_ERROR, - _("Received unexpected response from " URL_CLIENT_LOGIN)); + PURPLE_CONNECTION_ERROR_NETWORK_ERROR, msg); + g_free(msg); return FALSE; } @@ -360,11 +382,14 @@ /* Make sure we have a status code */ if (tmp_node == NULL || (tmp = xmlnode_get_data_unescaped(tmp_node)) == NULL) { + char *msg; purple_debug_error("oscar", "clientLogin response was " "missing statusCode: %s\n", response); + msg = g_strdup_printf(_("Received unexpected response from %s"), + URL_CLIENT_LOGIN); purple_connection_error_reason(gc, - PURPLE_CONNECTION_ERROR_NETWORK_ERROR, - _("Received unexpected response from " URL_CLIENT_LOGIN)); + PURPLE_CONNECTION_ERROR_NETWORK_ERROR, msg); + g_free(msg); xmlnode_free(response_node); return FALSE; } @@ -393,10 +418,14 @@ purple_connection_error_reason(gc, PURPLE_CONNECTION_ERROR_OTHER_ERROR, _("AOL does not allow your screen name to authenticate here")); - } else + } else { + char *msg; + msg = g_strdup_printf(_("Received unexpected response from %s"), + URL_CLIENT_LOGIN); purple_connection_error_reason(gc, - PURPLE_CONNECTION_ERROR_OTHER_ERROR, - _("Received unexpected response from " URL_CLIENT_LOGIN)); + PURPLE_CONNECTION_ERROR_OTHER_ERROR, msg); + g_free(msg); + } xmlnode_free(response_node); return FALSE; @@ -407,11 +436,14 @@ if (data_node == NULL || secret_node == NULL || token_node == NULL || tokena_node == NULL) { + char *msg; purple_debug_error("oscar", "clientLogin response was missing " "something: %s\n", response); + msg = g_strdup_printf(_("Received unexpected response from %s"), + URL_CLIENT_LOGIN); purple_connection_error_reason(gc, - PURPLE_CONNECTION_ERROR_NETWORK_ERROR, - _("Received unexpected response from " URL_CLIENT_LOGIN)); + PURPLE_CONNECTION_ERROR_NETWORK_ERROR, msg); + g_free(msg); xmlnode_free(response_node); return FALSE; } @@ -422,11 +454,14 @@ tmp = xmlnode_get_data_unescaped(hosttime_node); if (*token == NULL || **token == '\0' || *secret == NULL || **secret == '\0' || tmp == NULL || *tmp == '\0') { + char *msg; purple_debug_error("oscar", "clientLogin response was missing " "something: %s\n", response); + msg = g_strdup_printf(_("Received unexpected response from %s"), + URL_CLIENT_LOGIN); purple_connection_error_reason(gc, - PURPLE_CONNECTION_ERROR_NETWORK_ERROR, - _("Received unexpected response from " URL_CLIENT_LOGIN)); + PURPLE_CONNECTION_ERROR_NETWORK_ERROR, msg); + g_free(msg); g_free(*token); g_free(*secret); g_free(tmp); @@ -458,8 +493,8 @@ if (error_message != NULL || len == 0) { gchar *tmp; - tmp = g_strdup_printf(_("Error requesting " URL_CLIENT_LOGIN - ": %s"), error_message); + tmp = g_strdup_printf(_("Error requesting %s: %s"), + URL_CLIENT_LOGIN, error_message); purple_connection_error_reason(gc, PURPLE_CONNECTION_ERROR_NETWORK_ERROR, tmp); g_free(tmp);
--- a/libpurple/protocols/oscar/family_buddy.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/oscar/family_buddy.c Mon Aug 24 19:21:21 2009 +0000 @@ -221,9 +221,6 @@ if ((userfunc = aim_callhandler(od, snac->family, snac->subtype))) ret = userfunc(od, conn, frame, &userinfo); - if (snac->subtype == SNAC_SUBTYPE_BUDDY_ONCOMING && userinfo.flags & AIM_FLAG_AWAY) - aim_locate_autofetch_away_message(od, userinfo.bn); - aim_info_free(&userinfo); return ret;
--- a/libpurple/protocols/oscar/family_locate.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/oscar/family_locate.c Mon Aug 24 19:21:21 2009 +0000 @@ -250,8 +250,6 @@ aim_locate_adduserinfo(OscarData *od, aim_userinfo_t *userinfo) { aim_userinfo_t *cur; - FlapConnection *conn; - aim_rxcallback_t userfunc; cur = aim_locate_finduserinfo(od, userinfo->bn); @@ -353,73 +351,6 @@ } cur->away_len = 0; } - - /* - * This callback can be used by a client if they want to know whenever - * info for a buddy is updated. For example, if a client shows away - * messages in its buddy list, then it would need to know if a user's - * away message changes. - */ - conn = flap_connection_findbygroup(od, SNAC_FAMILY_LOCATE); - if ((userfunc = aim_callhandler(od, SNAC_FAMILY_LOCATE, SNAC_SUBTYPE_LOCATE_GOTINFOBLOCK))) - userfunc(od, conn, NULL, cur); -} - -/** - * Remove this buddy name from our queue. If this info was requested - * by our info request queue, then pop the next element off of the queue. - * - * @param od The aim session. - * @param bn Buddy name of the info we just received. - * @return True if the request was explicit (client requested the info), - * false if the request was implicit (libfaim request the info). - */ -static int -aim_locate_gotuserinfo(OscarData *od, FlapConnection *conn, const char *bn) -{ - struct userinfo_node *cur, *del; - int was_explicit = TRUE; - - while ((od->locate.requested != NULL) && (oscar_util_name_compare(bn, od->locate.requested->bn) == 0)) { - del = od->locate.requested; - od->locate.requested = del->next; - was_explicit = FALSE; - g_free(del->bn); - g_free(del); - } - - cur = od->locate.requested; - while ((cur != NULL) && (cur->next != NULL)) { - if (oscar_util_name_compare(bn, cur->next->bn) == 0) { - del = cur->next; - cur->next = del->next; - was_explicit = FALSE; - g_free(del->bn); - g_free(del); - } else - cur = cur->next; - } - - return was_explicit; -} - -void -aim_locate_autofetch_away_message(OscarData *od, const char *bn) -{ - struct userinfo_node *cur; - - /* Make sure we haven't already made an info request for this buddy */ - for (cur = od->locate.requested; cur != NULL; cur = cur->next) - if (oscar_util_name_compare(bn, cur->bn) == 0) - return; - - /* Add a new node to our request queue */ - cur = (struct userinfo_node *)g_malloc(sizeof(struct userinfo_node)); - cur->bn = g_strdup(bn); - cur->next = od->locate.requested; - od->locate.requested = cur; - - aim_locate_getinfoshort(od, cur->bn, 0x00000002); } aim_userinfo_t *aim_locate_finduserinfo(OscarData *od, const char *bn) { @@ -956,7 +887,6 @@ aim_snac_t *snac2; guint16 reason; char *bn; - int was_explicit; if (!(snac2 = aim_remsnac(od, snac->id))) { purple_debug_misc("oscar", "locate error: received response from unknown request!\n"); @@ -978,15 +908,9 @@ reason = byte_stream_get16(bs); - /* - * Remove this buddy name from our queue. If the client requested - * this buddy's info explicitly, then notify them that we do not have - * info for this buddy. - */ - was_explicit = aim_locate_gotuserinfo(od, conn, bn); - if (was_explicit == TRUE) - if ((userfunc = aim_callhandler(od, snac->family, snac->subtype))) - ret = userfunc(od, conn, frame, reason, bn); + /* Notify the user that we do not have info for this buddy */ + if ((userfunc = aim_callhandler(od, snac->family, snac->subtype))) + ret = userfunc(od, conn, frame, reason, bn); if (snac2) g_free(snac2->data); @@ -1202,7 +1126,6 @@ aim_userinfo_t *userinfo, *userinfo2; GSList *tlvlist; aim_tlv_t *tlv = NULL; - int was_explicit; userinfo = (aim_userinfo_t *)g_malloc(sizeof(aim_userinfo_t)); aim_info_extract(od, bs, userinfo); @@ -1238,18 +1161,9 @@ aim_info_free(userinfo); g_free(userinfo); - /* - * Remove this buddy name from our queue. If the client requested - * this buddy's info explicitly, then notify them that we have info - * for this buddy. - */ - if (userinfo2 != NULL) - { - was_explicit = aim_locate_gotuserinfo(od, conn, userinfo2->bn); - if (was_explicit == TRUE) - if ((userfunc = aim_callhandler(od, snac->family, snac->subtype))) - ret = userfunc(od, conn, frame, userinfo2); - } + /* Show the info to the user */ + if (userinfo2 != NULL && ((userfunc = aim_callhandler(od, snac->family, snac->subtype)))) + ret = userfunc(od, conn, frame, userinfo2); return ret; }
--- a/libpurple/protocols/oscar/oscar.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/oscar/oscar.c Mon Aug 24 19:21:21 2009 +0000 @@ -160,7 +160,6 @@ static int purple_parse_misses (OscarData *, FlapConnection *, FlapFrame *, ...); static int purple_parse_clientauto (OscarData *, FlapConnection *, FlapFrame *, ...); static int purple_parse_userinfo (OscarData *, FlapConnection *, FlapFrame *, ...); -static int purple_got_infoblock (OscarData *, FlapConnection *, FlapFrame *, ...); static int purple_parse_motd (OscarData *, FlapConnection *, FlapFrame *, ...); static int purple_chatnav_info (OscarData *, FlapConnection *, FlapFrame *, ...); static int purple_conv_chat_join (OscarData *, FlapConnection *, FlapFrame *, ...); @@ -812,24 +811,24 @@ od = purple_connection_get_protocol_data(gc); - if (userinfo == NULL) - userinfo = aim_locate_finduserinfo(od, purple_buddy_get_name(b)); - - if ((user_info == NULL) || ((b == NULL) && (userinfo == NULL))) + if (b == NULL && userinfo == NULL) return; if (b == NULL) b = purple_find_buddy(purple_connection_get_account(gc), userinfo->bn); + else + userinfo = aim_locate_finduserinfo(od, purple_buddy_get_name(b)); if (b) { presence = purple_buddy_get_presence(b); status = purple_presence_get_active_status(presence); - - message = g_strdup(purple_status_get_attr_string(status, "message")); - itmsurl = g_strdup(purple_status_get_attr_string(status, "itmsurl")); - - } else { - /* This is an OSCAR contact for whom we don't have a PurpleBuddy but do have information. */ + } + + /* If we have both b and userinfo we favor userinfo, because if we're + viewing someone's profile then we want the HTML away message, and + the "message" attribute of the status contains only the plaintext + message. */ + if (userinfo) { if ((userinfo->flags & AIM_FLAG_AWAY)) { /* Away message? */ if ((userinfo->flags & AIM_FLAG_AWAY) && (userinfo->away_len > 0) && (userinfo->away != NULL) && (userinfo->away_encoding != NULL)) { @@ -850,6 +849,9 @@ userinfo->itmsurl, userinfo->itmsurl_len); #endif } + } else { + message = g_strdup(purple_status_get_attr_string(status, "message")); + itmsurl = g_strdup(purple_status_get_attr_string(status, "itmsurl")); } is_away = ((status && !purple_status_is_available(status)) || @@ -916,7 +918,6 @@ g_free(message); message = g_strdup(_("Offline")); } - } purple_notify_user_info_add_pair(user_info, _("Status"), message); @@ -1478,7 +1479,6 @@ oscar_data_addhandler(od, SNAC_FAMILY_LOCATE, SNAC_SUBTYPE_LOCATE_RIGHTSINFO, purple_parse_locaterights, 0); oscar_data_addhandler(od, SNAC_FAMILY_LOCATE, SNAC_SUBTYPE_LOCATE_USERINFO, purple_parse_userinfo, 0); oscar_data_addhandler(od, SNAC_FAMILY_LOCATE, SNAC_SUBTYPE_LOCATE_ERROR, purple_parse_locerr, 0); - oscar_data_addhandler(od, SNAC_FAMILY_LOCATE, SNAC_SUBTYPE_LOCATE_GOTINFOBLOCK, purple_got_infoblock, 0); oscar_data_addhandler(od, SNAC_FAMILY_OSERVICE, 0x0001, purple_parse_genericerr, 0); oscar_data_addhandler(od, SNAC_FAMILY_OSERVICE, 0x000f, purple_selfinfo, 0); oscar_data_addhandler(od, SNAC_FAMILY_OSERVICE, 0x001f, purple_memrequest, 0); @@ -2139,6 +2139,23 @@ g_return_val_if_fail(info != NULL, 1); g_return_val_if_fail(info->bn != NULL, 1); + /* + * If this is an AIM buddy and their name has formatting, set their + * server alias. + */ + if (!oscar_util_valid_name_icq(info->bn)) { + gboolean bn_has_formatting = FALSE; + char *c; + for (c = info->bn; *c != '\0'; c++) { + if (!islower(*c)) { + bn_has_formatting = TRUE; + break; + } + } + serv_got_alias(gc, info->bn, + bn_has_formatting ? info->bn : NULL); + } + if (info->present & AIM_USERINFO_PRESENT_FLAGS) { if (info->flags & AIM_FLAG_AWAY) buddy_is_away = TRUE; @@ -3287,7 +3304,7 @@ oscar_user_info_append_extra_info(gc, user_info, NULL, userinfo); if ((userinfo->present & AIM_USERINFO_PRESENT_ONLINESINCE) && !oscar_util_valid_name_sms(userinfo->bn)) { - /* An SMS contact is always online; its Online Since valid is not useful */ + /* An SMS contact is always online; its Online Since value is not useful */ time_t t = userinfo->onlinesince; oscar_user_info_add_pair(user_info, _("Online Since"), purple_date_format_full(localtime(&t))); } @@ -3330,55 +3347,6 @@ return 1; } -static int purple_got_infoblock(OscarData *od, FlapConnection *conn, FlapFrame *fr, ...) -{ - PurpleConnection *gc = od->gc; - PurpleAccount *account = purple_connection_get_account(gc); - PurpleBuddy *b; - PurplePresence *presence; - PurpleStatus *status; - gchar *message = NULL; - - va_list ap; - aim_userinfo_t *userinfo; - - va_start(ap, fr); - userinfo = va_arg(ap, aim_userinfo_t *); - va_end(ap); - - b = purple_find_buddy(account, userinfo->bn); - if (b == NULL) - return 1; - - if (!oscar_util_valid_name_icq(userinfo->bn)) - { - if (strcmp(purple_buddy_get_name(b), userinfo->bn) != 0) - serv_got_alias(gc, purple_buddy_get_name(b), userinfo->bn); - else - serv_got_alias(gc, purple_buddy_get_name(b), NULL); - } - - presence = purple_buddy_get_presence(b); - status = purple_presence_get_active_status(presence); - - if (purple_status_is_online(status) && !purple_status_is_available(status) && - userinfo->flags & AIM_FLAG_AWAY && userinfo->away_len > 0 && - userinfo->away != NULL && userinfo->away_encoding != NULL) - { - gchar *charset = oscar_encoding_extract(userinfo->away_encoding); - message = oscar_encoding_to_utf8(account, charset, - userinfo->away, - userinfo->away_len); - g_free(charset); - purple_prpl_got_user_status(account, userinfo->bn, - purple_status_get_id(status), - "message", message, NULL); - g_free(message); - } - - return 1; -} - static int purple_parse_motd(OscarData *od, FlapConnection *conn, FlapFrame *fr, ...) { char *msg; @@ -6335,6 +6303,44 @@ } static void +oscar_close_directim(gpointer object, gpointer ignored) +{ + PurpleBlistNode *node; + PurpleBuddy *buddy; + PurpleAccount *account; + PurpleConnection *gc; + PurpleConversation *conv; + OscarData *od; + PeerConnection *conn; + const char *name; + + node = object; + + g_return_if_fail(PURPLE_BLIST_NODE_IS_BUDDY(node)); + + buddy = (PurpleBuddy*)node; + name = purple_buddy_get_name(buddy); + account = purple_buddy_get_account(buddy); + gc = purple_account_get_connection(account); + od = gc->proto_data; + conn = peer_connection_find_by_type(od, name, OSCAR_CAPABILITY_DIRECTIM); + + if (conn != NULL) + { + if (!conn->ready) + aim_im_sendch2_cancel(conn); + + peer_connection_destroy(conn, OSCAR_DISCONNECT_LOCAL_CLOSED, NULL); + + /* OSCAR_DISCONNECT_LOCAL_CLOSED doesn't write anything to the convo + * window. Let the user know that we canceled the Direct IM. */ + conv = purple_conversation_new(PURPLE_CONV_TYPE_IM, account, name); + purple_conversation_write(conv, NULL, _("You closed the connection."), + PURPLE_MESSAGE_SYSTEM, time(NULL)); + } +} + +static void oscar_get_aim_info_cb(PurpleBlistNode *node, gpointer ignore) { PurpleBuddy *buddy; @@ -6397,11 +6403,23 @@ oscar_util_name_compare(purple_account_get_username(account), bname) && PURPLE_BUDDY_IS_ONLINE(buddy)) { + PeerConnection *conn; + conn = peer_connection_find_by_type(od, bname, OSCAR_CAPABILITY_DIRECTIM); + if (userinfo->capabilities & OSCAR_CAPABILITY_DIRECTIM) { - act = purple_menu_action_new(_("Direct IM"), - PURPLE_CALLBACK(oscar_ask_directim), - NULL, NULL); + if (conn) + { + act = purple_menu_action_new(_("End Direct IM Session"), + PURPLE_CALLBACK(oscar_close_directim), + NULL, NULL); + } + else + { + act = purple_menu_action_new(_("Direct IM"), + PURPLE_CALLBACK(oscar_ask_directim), + NULL, NULL); + } menu = g_list_prepend(menu, act); } #if 0
--- a/libpurple/protocols/oscar/oscar.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/oscar/oscar.h Mon Aug 24 19:21:21 2009 +0000 @@ -533,7 +533,6 @@ struct { struct aim_userinfo_s *userinfo; - struct userinfo_node *requested; } locate; /* Server-stored information (ssi) */ @@ -1133,7 +1132,6 @@ /* 0x000f */ int aim_locate_setinterests(OscarData *od, const char *interest1, const char *interest2, const char *interest3, const char *interest4, const char *interest5, guint16 privacy); /* 0x0015 */ int aim_locate_getinfoshort(OscarData *od, const char *bn, guint32 flags); -void aim_locate_autofetch_away_message(OscarData *od, const char *bn); guint32 aim_locate_getcaps(OscarData *od, ByteStream *bs, int len); guint32 aim_locate_getcaps_short(OscarData *od, ByteStream *bs, int len); void aim_info_free(aim_userinfo_t *);
--- a/libpurple/protocols/oscar/snactypes.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/oscar/snactypes.h Mon Aug 24 19:21:21 2009 +0000 @@ -96,7 +96,6 @@ #define SNAC_SUBTYPE_LOCATE_USERINFO 0x0006 #define SNAC_SUBTYPE_LOCATE_WATCHERSUBREQ 0x0007 #define SNAC_SUBTYPE_LOCATE_WATCHERNOT 0x0008 -#define SNAC_SUBTYPE_LOCATE_GOTINFOBLOCK 0xfffd #define SNAC_SUBTYPE_LOCATE_DEFAULT 0xffff /*
--- a/libpurple/protocols/qq/qq_crypt.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/qq/qq_crypt.c Mon Aug 24 19:21:21 2009 +0000 @@ -19,7 +19,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * * * QQ encryption algorithm
--- a/libpurple/protocols/qq/qq_crypt.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/qq/qq_crypt.h Mon Aug 24 19:21:21 2009 +0000 @@ -19,7 +19,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _QQ_CRYPT_H_
--- a/libpurple/protocols/qq/send_file.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/qq/send_file.c Mon Aug 24 19:21:21 2009 +0000 @@ -730,7 +730,7 @@ */ filename = g_path_get_basename(purple_xfer_get_local_filename(qd->xfer)); msg = g_strdup_printf - (_("%d canceled the transfer of %s"), + (_("%d cancelled the transfer of %s"), sender_uid, filename); purple_notify_warning (gc, _("File Send"), msg, NULL);
--- a/libpurple/protocols/yahoo/libyahoo.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/yahoo/libyahoo.c Mon Aug 24 19:21:21 2009 +0000 @@ -278,7 +278,7 @@ NULL, /**< dependencies */ PURPLE_PRIORITY_DEFAULT, /**< priority */ "prpl-yahoo", /**< id */ - "Yahoo!", /**< name */ + "Yahoo", /**< name */ DISPLAY_VERSION, /**< version */ /** summary */ N_("Yahoo! Protocol Plugin"), @@ -321,13 +321,15 @@ option = purple_account_option_string_new(_("Chat room locale"), "room_list_locale", YAHOO_ROOMLIST_LOCALE); prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); + option = purple_account_option_string_new(_("Encoding"), "local_charset", "UTF-8"); + prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); + option = purple_account_option_bool_new(_("Ignore conference and chatroom invitations"), "ignore_invites", FALSE); prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); - option = purple_account_option_string_new(_("Encoding"), "local_charset", "UTF-8"); + option = purple_account_option_bool_new(_("Use account proxy for SSL connections"), "proxy_ssl", FALSE); prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); - #if 0 option = purple_account_option_string_new(_("Chat room list URL"), "room_list", YAHOO_ROOMLIST_URL); prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option);
--- a/libpurple/protocols/yahoo/libyahoojp.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/yahoo/libyahoojp.c Mon Aug 24 19:21:21 2009 +0000 @@ -174,7 +174,7 @@ NULL, /**< dependencies */ PURPLE_PRIORITY_DEFAULT, /**< priority */ "prpl-yahoojp", /**< id */ - "Yahoo! JAPAN", /**< name */ + "Yahoo JAPAN", /**< name */ DISPLAY_VERSION, /**< version */ /** summary */ N_("Yahoo! JAPAN Protocol Plugin"), @@ -217,13 +217,15 @@ option = purple_account_option_string_new(_("Chat room locale"), "room_list_locale", YAHOOJP_ROOMLIST_LOCALE); prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); + option = purple_account_option_string_new(_("Encoding"), "local_charset", "UTF-8"); + prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); + option = purple_account_option_bool_new(_("Ignore conference and chatroom invitations"), "ignore_invites", FALSE); prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); - option = purple_account_option_string_new(_("Encoding"), "local_charset", "UTF-8"); + option = purple_account_option_bool_new(_("Use account proxy for SSL connections"), "proxy_ssl", FALSE); prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option); - #if 0 option = purple_account_option_string_new(_("Chat room list URL"), "room_list", YAHOO_ROOMLIST_URL); prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option);
--- a/libpurple/protocols/yahoo/libymsg.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/yahoo/libymsg.c Mon Aug 24 19:21:21 2009 +0000 @@ -971,7 +971,7 @@ /* disconnect the peer if connected through p2p and sends wrong value for session id */ if( (pkt_type == YAHOO_PKT_TYPE_P2P) && (val_11 != yd->session_id) ) { - purple_debug_warning("yahoo","p2p: %s sent us message with wrong session id. Disconnecting p2p connection to peer\n", im->from); + purple_debug_warning("yahoo","p2p: %s sent us message with wrong session id. Disconnecting p2p connection to peer\n", im ? im->from : "(im was null)"); /* remove from p2p connection lists, also calls yahoo_p2p_disconnect_destroy_data */ g_hash_table_remove(yd->peers, im->from); return; @@ -1839,11 +1839,12 @@ PurpleAccount *account = purple_connection_get_account(gc); char *url = NULL; gboolean yahoojp = yahoo_is_japan(account); + gboolean proxy_ssl = purple_account_get_bool(account, "proxy_ssl", FALSE); url = g_strdup_printf(yahoojp ? YAHOOJP_LOGIN_URL : YAHOO_LOGIN_URL, token); - url_data = purple_util_fetch_url_request_len_with_account(account, url, - TRUE, YAHOO_CLIENT_USERAGENT, TRUE, NULL, FALSE, -1, - yahoo_auth16_stage2, auth_data); + url_data = purple_util_fetch_url_request_len_with_account( + proxy_ssl ? account : NULL, url, TRUE, YAHOO_CLIENT_USERAGENT, + TRUE, NULL, FALSE, -1, yahoo_auth16_stage2, auth_data); g_free(url); g_free(token); } @@ -1852,12 +1853,14 @@ static void yahoo_auth16_stage1(PurpleConnection *gc, const char *seed) { + PurpleAccount *account = purple_connection_get_account(gc); PurpleUtilFetchUrlData *url_data = NULL; struct yahoo_auth_data *auth_data = NULL; char *url = NULL; char *encoded_username; char *encoded_password; - gboolean yahoojp; + gboolean yahoojp = yahoo_is_japan(account); + gboolean proxy_ssl = purple_account_get_bool(account, "proxy_ssl", FALSE); purple_debug_info("yahoo", "Authentication: In yahoo_auth16_stage1\n"); @@ -1866,7 +1869,6 @@ return; } - yahoojp = yahoo_is_japan(purple_connection_get_account(gc)); auth_data = g_new0(struct yahoo_auth_data, 1); auth_data->gc = gc; auth_data->seed = g_strdup(seed); @@ -1879,7 +1881,7 @@ g_free(encoded_username); url_data = purple_util_fetch_url_request_len_with_account( - purple_connection_get_account(gc), url, TRUE, + proxy_ssl ? account : NULL, url, TRUE, YAHOO_CLIENT_USERAGENT, TRUE, NULL, FALSE, -1, yahoo_auth16_stage1_cb, auth_data); @@ -2077,21 +2079,24 @@ if (!purple_account_get_remember_password(account)) purple_account_set_password(account, NULL); - msg = g_strdup(_("Incorrect password")); + msg = g_strdup(_("Invalid username or password")); reason = PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED; break; case 14: - msg = g_strdup(_("Your account is locked, please log in to the Yahoo! website.")); + msg = g_strdup(_("Your account has been locked due to too many failed login attempts." + " Please try logging into the Yahoo! website.")); reason = PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED; break; case 52: /* See #9660. As much as we know, reconnecting shouldn't hurt */ purple_debug_info("yahoo", "Got error 52, Set to autoreconnect\n"); - msg = g_strdup_printf(_("Unknown error")); + msg = g_strdup_printf(_("Unknown error 52. Reconnecting should fix this.")); reason = PURPLE_CONNECTION_ERROR_NETWORK_ERROR; break; case 1013: - msg = g_strdup(_("Invalid username")); + msg = g_strdup(_("Error 1013: The username you have entered is invalid." + " The most common cause of this error is entering your e-mail" + " address instead of your Yahoo! ID.")); reason = PURPLE_CONNECTION_ERROR_INVALID_USERNAME; break; default: @@ -4271,7 +4276,7 @@ } } - msn = !g_strncasecmp(who, "msn/", 4); + msn = !g_ascii_strncasecmp(who, "msn/", 4); if( strncmp(who, "+", 1) == 0 ) { /* we have an sms to be sent */ @@ -4395,7 +4400,7 @@ { YahooData *yd = gc->proto_data; struct yahoo_p2p_data *p2p_data; - gboolean msn = !g_strncasecmp(who, "msn/", 4); + gboolean msn = !g_ascii_strncasecmp(who, "msn/", 4); struct yahoo_packet *pkt = NULL; /* Don't do anything if sms is being typed */ @@ -4495,8 +4500,6 @@ if (purple_presence_is_idle(presence)) yahoo_packet_hash_str(pkt, 47, "2"); - else if (!purple_status_is_available(status)) - yahoo_packet_hash_str(pkt, 47, "1"); yahoo_packet_send_and_free(pkt, yd); @@ -4517,6 +4520,7 @@ struct yahoo_packet *pkt = NULL; char *msg = NULL, *msg2 = NULL; PurpleStatus *status = NULL; + gboolean invisible = FALSE; if (idle && yd->current_status != YAHOO_STATUS_CUSTOM) yd->current_status = YAHOO_STATUS_IDLE; @@ -4525,9 +4529,15 @@ yd->current_status = get_yahoo_status_from_purple_status(status); } + invisible = !( purple_presence_is_available(purple_account_get_presence(purple_connection_get_account(gc))) ); + pkt = yahoo_packet_new(YAHOO_SERVICE_Y6_STATUS_UPDATE, YAHOO_STATUS_AVAILABLE, yd->session_id); - yahoo_packet_hash_int(pkt, 10, yd->current_status); + if (!idle && invisible) + yahoo_packet_hash_int(pkt, 10, YAHOO_STATUS_AVAILABLE); + else + yahoo_packet_hash_int(pkt, 10, yd->current_status); + if (yd->current_status == YAHOO_STATUS_CUSTOM) { const char *tmp; if (status == NULL) @@ -4550,8 +4560,6 @@ if (idle) yahoo_packet_hash_str(pkt, 47, "2"); - else if (!purple_presence_is_available(purple_account_get_presence(purple_connection_get_account(gc)))) - yahoo_packet_hash_str(pkt, 47, "1"); yahoo_packet_send_and_free(pkt, yd); @@ -4668,7 +4676,7 @@ return; f = yahoo_friend_find(gc, bname); - msn = !g_strncasecmp(bname, "msn/", 4); + msn = !g_ascii_strncasecmp(bname, "msn/", 4); g = purple_buddy_get_group(buddy); if (g)
--- a/libpurple/protocols/yahoo/libymsg.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/yahoo/libymsg.h Mon Aug 24 19:21:21 2009 +0000 @@ -280,6 +280,27 @@ void yahoo_init_colorht(void); void yahoo_dest_colorht(void); char *yahoo_codes_to_html(const char *x); + +/** + * This function takes a normal HTML message and converts it to the message + * format used by Yahoo, which uses a frankensteinish combination of ANSI + * escape codes and broken HTML. + * + * It results in slightly different output than would be sent by official + * Yahoo clients. The two main differences are: + * + * 1. We always close all tags, whereas official Yahoo clients leave tags + * dangling open at the end of each message (and the client treats them + * as closed). + * 2. We always close inner tags first before closing outter tags. + * + * For example, if you want to send this message: + * <b> bold <i> bolditalic </i></b><i> italic </i> + * Official Yahoo clients would send: + * ESC[1m bold ESC[2m bolditalic ESC[x1m italic + * But we will send: + * ESC[1m bold ESC[2m bolditalic ESC[x2mESC[x1mESC[2m italic ESC[x2m + */ char *yahoo_html_to_codes(const char *src); gboolean
--- a/libpurple/protocols/yahoo/util.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/protocols/yahoo/util.c Mon Aug 24 19:21:21 2009 +0000 @@ -513,7 +513,7 @@ int i, j; gboolean no_more_gt_brackets = FALSE; const char *match; - gchar *xmlstr1, *xmlstr2; + gchar *xmlstr1, *xmlstr2, *esc; x_len = strlen(x); html = xmlnode_new("html"); @@ -553,12 +553,15 @@ #endif /* !USE_CSS_FORMATTING */ } else if ((match = g_hash_table_lookup(esc_codes_ht, code))) { - gboolean is_closing_tag; - gchar *tag_name; - - tag_name = yahoo_markup_get_tag_name(match, &is_closing_tag); - yahoo_codes_to_html_add_tag(&cur, match, is_closing_tag, tag_name, FALSE); - g_free(tag_name); + /* Some tags are in the hash table only because we + * want to ignore them */ + if (match[0] != '\0') { + gboolean is_closing_tag; + gchar *tag_name; + tag_name = yahoo_markup_get_tag_name(match, &is_closing_tag); + yahoo_codes_to_html_add_tag(&cur, match, is_closing_tag, tag_name, FALSE); + g_free(tag_name); + } } else { purple_debug_error("yahoo", @@ -608,7 +611,6 @@ if (match == NULL) { /* Unknown tag. The user probably typed a less-than sign */ g_string_append_c(cdata, x[i]); - no_more_gt_brackets = TRUE; g_free(tag); g_free(tag_name); break; @@ -657,7 +659,10 @@ xmlstr2 = g_strndup(xmlstr1 + 6, strlen(xmlstr1) - 13); g_free(xmlstr1); - purple_debug_misc("yahoo", "yahoo_codes_to_html: Returning string: '%s'.\n", xmlstr2); + esc = g_strescape(x, NULL); + purple_debug_misc("yahoo", "yahoo_codes_to_html(%s)=%s\n", esc, xmlstr2); + g_free(esc); + return xmlstr2; } @@ -666,33 +671,16 @@ #define POINT_SIZE(x) (_point_sizes [MIN ((x > 0 ? x : 1), MAX_FONT_SIZE) - 1]) static const gint _point_sizes [] = { 8, 10, 12, 14, 20, 30, 40 }; -enum fatype -{ - FATYPE_SIZE, - FATYPE_COLOR, - FATYPE_FACE, - FATYPE_JUNK -}; - typedef struct { - enum fatype type; - union { - int size; - char *color; - char *face; - char *junk; - } u; -} fontattr; - -static void fontattr_free(fontattr *f) -{ - if (f->type == FATYPE_COLOR) - g_free(f->u.color); - else if (f->type == FATYPE_FACE) - g_free(f->u.face); - g_free(f); -} + gboolean bold; + gboolean italic; + gboolean underline; + gboolean in_link; + int font_size; + char *font_face; + char *font_color; +} CurrentMsgState; static void yahoo_htc_list_cleanup(GSList *l) { @@ -702,338 +690,203 @@ } } -static void _parse_font_tag(const char *src, GString *dest, int *i, int *j, - int len, GSList **colors, GSList **tags, GQueue *ftattr) +static void parse_font_tag(GString *dest, const char *tag_name, const char *tag, + GSList **colors, GSList **tags) { - int m, n, vstart; - gboolean quote = FALSE, done = FALSE; + const char *start; + const char *end; + GData *attributes; + const char *attribute; + gboolean needendtag; + GString *tmp; - m = *j; + purple_markup_find_tag(tag_name, tag, &start, &end, &attributes); + + needendtag = FALSE; + tmp = g_string_new(NULL); - while (1) { - m++; + attribute = g_datalist_get_data(&attributes, "color"); + if (attribute != NULL) { + g_string_append(tmp, *colors ? (*colors)->data : "\033[#000000m"); + g_string_append_printf(dest, "\033[%sm", attribute); + *colors = g_slist_prepend(*colors, + g_strdup_printf("\033[%sm", attribute)); + } else { + /* We need to add a value to the colors stack even if we're not + * setting a color because we ALWAYS pop exactly 1 element from + * this stack for every </font> tag. If we don't add anything + * then we'll pop something that we shouldn't when we hit this + * corresponding </font>. */ + *colors = g_slist_prepend(*colors, + *colors ? g_strdup((*colors)->data) : g_strdup("\033[#000000m")); + } - if (m >= len) { - g_string_append(dest, &src[*i]); - *i = len; - break; + attribute = g_datalist_get_data(&attributes, "face"); + if (attribute != NULL) { + needendtag = TRUE; + g_string_append(dest, "<font "); + g_string_append_printf(dest, "face=\"%s\" ", attribute); + } + + attribute = g_datalist_get_data(&attributes, "size"); + if (attribute != NULL) { + if (!needendtag) { + needendtag = TRUE; + g_string_append(dest, "<font "); } - if (src[m] == '=') { - n = vstart = m; - while (1) { - n++; - - if (n >= len) { - m = n; - break; - } - - if (src[n] == '"') { - if (!quote) { - quote = TRUE; - vstart = n; - continue; - } else { - done = 1; - } - } - - if (!quote && ((src[n] == ' ') || (src[n] == '>'))) - done = TRUE; - - if (done) { - if (!g_ascii_strncasecmp(&src[*j+1], "FACE", m - *j - 1)) { - fontattr *f; - - f = g_new(fontattr, 1); - f->type = FATYPE_FACE; - f->u.face = g_strndup(&src[vstart+1], n-vstart-1); - if (!ftattr) - ftattr = g_queue_new(); - g_queue_push_tail(ftattr, f); - m = n; - break; - } else if (!g_ascii_strncasecmp(&src[*j+1], "SIZE", m - *j - 1)) { - fontattr *f; - - f = g_new(fontattr, 1); - f->type = FATYPE_SIZE; - f->u.size = POINT_SIZE(strtol(&src[vstart+1], NULL, 10)); - if (!ftattr) - ftattr = g_queue_new(); - g_queue_push_tail(ftattr, f); - m = n; - break; - } else if (!g_ascii_strncasecmp(&src[*j+1], "COLOR", m - *j - 1)) { - fontattr *f; - - f = g_new(fontattr, 1); - f->type = FATYPE_COLOR; - f->u.color = g_strndup(&src[vstart+1], n-vstart-1); - if (!ftattr) - ftattr = g_queue_new(); - g_queue_push_head(ftattr, f); - m = n; - break; - } else { - fontattr *f; - - f = g_new(fontattr, 1); - f->type = FATYPE_JUNK; - f->u.junk = g_strndup(&src[*j+1], n-*j); - if (!ftattr) - ftattr = g_queue_new(); - g_queue_push_tail(ftattr, f); - m = n; - break; - } + g_string_append_printf(dest, "size=\"%d\" ", + POINT_SIZE(strtol(attribute, NULL, 10))); + } - } - } - } - - if (src[m] == ' ') - *j = m; - - if (src[m] == '>') { - gboolean needendtag = FALSE; - fontattr *f; - GString *tmp = g_string_new(NULL); - - if (!g_queue_is_empty(ftattr)) { - while ((f = g_queue_pop_tail(ftattr))) { - switch (f->type) { - case FATYPE_SIZE: - if (!needendtag) { - needendtag = TRUE; - g_string_append(dest, "<font "); - } - - g_string_append_printf(dest, "size=\"%d\" ", f->u.size); - break; - case FATYPE_FACE: - if (!needendtag) { - needendtag = TRUE; - g_string_append(dest, "<font "); - } - - g_string_append_printf(dest, "face=\"%s\" ", f->u.face); - break; - case FATYPE_JUNK: - if (!needendtag) { - needendtag = TRUE; - g_string_append(dest, "<font "); - } + if (needendtag) { + dest->str[dest->len-1] = '>'; + *tags = g_slist_prepend(*tags, g_strdup("</font>")); + g_string_free(tmp, TRUE); + } else { + *tags = g_slist_prepend(*tags, tmp->str); + g_string_free(tmp, FALSE); + } - g_string_append(dest, f->u.junk); - break; - - case FATYPE_COLOR: - if (needendtag) { - g_string_append(tmp, "</font>"); - dest->str[dest->len-1] = '>'; - needendtag = TRUE; - } - - g_string_append(tmp, *colors ? (*colors)->data : "\033[#000000m"); - g_string_append_printf(dest, "\033[%sm", f->u.color); - *colors = g_slist_prepend(*colors, - g_strdup_printf("\033[%sm", f->u.color)); - break; - } - fontattr_free(f); - } - - g_queue_free(ftattr); - ftattr = NULL; - - if (needendtag) { - dest->str[dest->len-1] = '>'; - *tags = g_slist_prepend(*tags, g_strdup("</font>")); - g_string_free(tmp, TRUE); - } else { - *tags = g_slist_prepend(*tags, tmp->str); - g_string_free(tmp, FALSE); - } - } - - *i = *j = m; - break; - } - } + g_datalist_clear(&attributes); } char *yahoo_html_to_codes(const char *src) { GSList *colors = NULL; + + /** + * A stack of char*s where each char* is the string that should be + * appended to dest in order to close all the tags that were opened + * by a <font> tag. + */ GSList *tags = NULL; + size_t src_len; int i, j; GString *dest; char *esc; - GQueue *ftattr = NULL; - gboolean no_more_specials = FALSE; + gboolean no_more_gt_brackets = FALSE; + gchar *tag, *tag_name; + gboolean is_closing_tag; + CurrentMsgState current_state; + + memset(¤t_state, 0, sizeof(current_state)); src_len = strlen(src); dest = g_string_sized_new(src_len); for (i = 0; i < src_len; i++) { - - if (src[i] == '<' && !no_more_specials) { + if (src[i] == '<' && !no_more_gt_brackets) { + /* The start of an HTML tag */ j = i; - while (1) { - j++; - - if (j >= src_len) { /* no '>' */ - g_string_append_c(dest, src[i]); - no_more_specials = TRUE; - break; - } + while (j++ < src_len) { + if (src[j] != '>') { + if (src[j] == '"') { + /* We're inside a quoted attribute value. Skip to the end */ + j++; + while (j != src_len && src[j] != '"') + j++; + } else if (src[j] == '\'') { + /* We're inside a quoted attribute value. Skip to the end */ + j++; + while (j != src_len && src[j] != '\'') + j++; + } + if (j != src_len) + /* Keep looking for the end of this tag */ + continue; - if (src[j] == '<') { - /* FIXME: This doesn't convert outgoing entities. - * However, I suspect this case may never - * happen anymore because of the entities. - */ - g_string_append_len(dest, &src[i], j - i); - i = j - 1; - if (ftattr) { - fontattr *f; - - while ((f = g_queue_pop_head(ftattr))) - fontattr_free(f); - g_queue_free(ftattr); - ftattr = NULL; - } + /* This < has no corresponding > */ + g_string_append_c(dest, src[i]); + no_more_gt_brackets = TRUE; break; } - if (src[j] == ' ') { - if (!g_ascii_strncasecmp(&src[i+1], "BODY", j - i - 1)) { - char *t = strchr(&src[j], '>'); - if (!t) { - g_string_append(dest, &src[i]); - i = src_len; - break; - } else { - i = t - src; - break; + tag = g_strndup(src + i, j - i + 1); + tag_name = yahoo_markup_get_tag_name(tag, &is_closing_tag); + + if (g_str_equal(tag_name, "a")) { + const char *start; + const char *end; + GData *attributes; + const char *attribute; + + /* + * TODO: Ideally we would replace this: + * <a href="http://pidgin.im/">Pidgin</a> + * with this: + * Pidgin (http://pidgin.im/) + * + * Currently we drop the text within the <a> tag and + * just show the URL. Doing it the fancy way is + * complicated when dealing with HTML tags within the + * <a> tag. + */ + + /* Append the URL */ + purple_markup_find_tag(tag_name, tag, &start, &end, &attributes); + attribute = g_datalist_get_data(&attributes, "href"); + if (attribute != NULL) { + if (purple_str_has_prefix(attribute, "mailto:")) + attribute += 7; + g_string_append(dest, attribute); + } + g_datalist_clear(&attributes); + + /* Skip past the closing </a> tag */ + end = purple_strcasestr(src + j, "</a>"); + if (end != NULL) + j = end - src + 3; + + } else if (g_str_equal(tag_name, "font")) { + parse_font_tag(dest, tag_name, tag, &colors, &tags); + } else if (g_str_equal(tag_name, "b")) { + g_string_append(dest, "\033[1m"); + current_state.bold = TRUE; + } else if (g_str_equal(tag_name, "/b")) { + if (current_state.bold) { + g_string_append(dest, "\033[x1m"); + current_state.bold = FALSE; + } + } else if (g_str_equal(tag_name, "i")) { + current_state.italic = TRUE; + g_string_append(dest, "\033[2m"); + } else if (g_str_equal(tag_name, "/i")) { + if (current_state.italic) { + g_string_append(dest, "\033[x2m"); + current_state.italic = FALSE; + } + } else if (g_str_equal(tag_name, "u")) { + current_state.underline = TRUE; + g_string_append(dest, "\033[4m"); + } else if (g_str_equal(tag_name, "/u")) { + if (current_state.underline) { + g_string_append(dest, "\033[x4m"); + current_state.underline = FALSE; + } + } else if (g_str_equal(tag_name, "/a")) { + /* Do nothing */ + } else if (g_str_equal(tag_name, "br")) { + g_string_append_c(dest, '\n'); + } else if (g_str_equal(tag_name, "/font")) { + if (tags != NULL) { + char *etag = tags->data; + tags = g_slist_delete_link(tags, tags); + g_string_append(dest, etag); + if (colors != NULL) { + g_free(colors->data); + colors = g_slist_delete_link(colors, colors); } - } else if (!g_ascii_strncasecmp(&src[i+1], "A HREF=\"", j - i - 1)) { - j += 7; - g_string_append(dest, "\033[lm"); - if (purple_str_has_prefix(src + j, "mailto:")) - j += sizeof("mailto:") - 1; - while (1) { - g_string_append_c(dest, src[j]); - if (++j >= src_len) { - i = src_len; - break; - } - if (src[j] == '"') { - g_string_append(dest, "\033[xlm"); - while (1) { - if (++j >= src_len) { - i = src_len; - break; - } - if (!g_ascii_strncasecmp(&src[j], "</A>", 4)) { - j += 3; - break; - } - } - i = j; - break; - } - } - } else if (!g_ascii_strncasecmp(&src[i+1], "SPAN", j - i - 1)) { /* drop span tags */ - while (1) { - if (++j >= src_len) { - g_string_append(dest, &src[i]); - i = src_len; - break; - } - if (src[j] == '>') { - i = j; - break; - } - } - } else if (g_ascii_strncasecmp(&src[i+1], "FONT", j - i - 1)) { /* not interested! */ - while (1) { - if (++j >= src_len) { - g_string_append(dest, &src[i]); - i = src_len; - break; - } - if (src[j] == '>') { - g_string_append_len(dest, &src[i], j - i + 1); - i = j; - break; - } - } - } else { /* yay we have a font tag */ - _parse_font_tag(src, dest, &i, &j, src_len, &colors, &tags, ftattr); + g_free(etag); } - - break; } - if (src[j] == '>') { - /* This has some problems like the FIXME for the - * '<' case. and like that case, I suspect the case - * that this has problems is won't happen anymore anyway. - */ - int sublen = j - i - 1; - - if (sublen) { - if (!g_ascii_strncasecmp(&src[i+1], "B", sublen)) { - g_string_append(dest, "\033[1m"); - } else if (!g_ascii_strncasecmp(&src[i+1], "/B", sublen)) { - g_string_append(dest, "\033[x1m"); - } else if (!g_ascii_strncasecmp(&src[i+1], "I", sublen)) { - g_string_append(dest, "\033[2m"); - } else if (!g_ascii_strncasecmp(&src[i+1], "/I", sublen)) { - g_string_append(dest, "\033[x2m"); - } else if (!g_ascii_strncasecmp(&src[i+1], "U", sublen)) { - g_string_append(dest, "\033[4m"); - } else if (!g_ascii_strncasecmp(&src[i+1], "/U", sublen)) { - g_string_append(dest, "\033[x4m"); - } else if (!g_ascii_strncasecmp(&src[i+1], "/A", sublen)) { - g_string_append(dest, "\033[xlm"); - } else if (!g_ascii_strncasecmp(&src[i+1], "BR", sublen)) { - g_string_append_c(dest, '\n'); - } else if (!g_ascii_strncasecmp(&src[i+1], "/BODY", sublen)) { - /* mmm, </body> tags. *BURP* */ - } else if (!g_ascii_strncasecmp(&src[i+1], "/SPAN", sublen)) { - /* </span> tags. dangerously close to </spam> */ - } else if (!g_ascii_strncasecmp(&src[i+1], "/FONT", sublen) && tags != NULL) { - char *etag; - - etag = tags->data; - tags = g_slist_delete_link(tags, tags); - if (etag) { - g_string_append(dest, etag); - if (!strcmp(etag, "</font>")) { - if (colors != NULL) { - g_free(colors->data); - colors = g_slist_delete_link(colors, colors); - } - } - g_free(etag); - } - } else { - g_string_append_len(dest, &src[i], j - i + 1); - } - } else { - g_string_append_len(dest, &src[i], j - i + 1); - } - - i = j; - break; - } - + i = j; + g_free(tag); + g_free(tag_name); + break; } } else { @@ -1052,7 +905,7 @@ } esc = g_strescape(dest->str, NULL); - purple_debug_misc("yahoo", "yahoo_html_to_codes: Returning string: '%s'.\n", esc); + purple_debug_misc("yahoo", "yahoo_html_to_codes(%s)=%s\n", src, esc); g_free(esc); yahoo_htc_list_cleanup(colors);
--- a/libpurple/proxy.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/proxy.c Mon Aug 24 19:21:21 2009 +0000 @@ -245,7 +245,7 @@ return &info; } - if (purple_strequal(tmp, "manual\n")) { + if (!purple_strequal(tmp, "manual\n")) { /* Unknown setting. Fallback to using our global proxy settings. */ g_free(tmp); return purple_global_proxy_get_info();
--- a/libpurple/purple-send Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/purple-send Mon Aug 24 19:21:21 2009 +0000 @@ -29,4 +29,3 @@ shift dbus-send --dest=im.pidgin.purple.PurpleService --print-reply --type=method_call /im/pidgin/purple/PurpleObject im.pidgin.purple.PurpleInterface.$METHOD_NAME "$@" -echo
--- a/libpurple/purple-send-async Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/purple-send-async Mon Aug 24 19:21:21 2009 +0000 @@ -27,4 +27,3 @@ shift dbus-send --dest=im.pidgin.purple.PurpleService --type=method_call /im/pidgin/purple/PurpleObject im.pidgin.purple.PurpleInterface.$METHOD_NAME "$@" -echo
--- a/libpurple/server.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/server.c Mon Aug 24 19:21:21 2009 +0000 @@ -592,13 +592,10 @@ */ flags |= PURPLE_MESSAGE_RECV; - if (PURPLE_PLUGIN_PROTOCOL_INFO(purple_connection_get_prpl(gc))->set_permit_deny == NULL) { - /* protocol does not support privacy, handle it ourselves */ - if (!purple_privacy_check(account, who)) { - purple_signal_emit(purple_conversations_get_handle(), "blocked-im-msg", - account, who, msg, flags, (unsigned int)mtime); - return; - } + if (!purple_privacy_check(account, who)) { + purple_signal_emit(purple_conversations_get_handle(), "blocked-im-msg", + account, who, msg, flags, (unsigned int)mtime); + return; } /*
--- a/libpurple/smiley.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/smiley.c Mon Aug 24 19:21:21 2009 +0000 @@ -80,7 +80,7 @@ * XML descriptor file layout * ****************************************************************************** * - * Althought we are creating the profile XML structure here, now we + * Although we are creating the profile XML structure here, now we * won't handle it. * So, we just add one profile named "default" that has no associated * account elements, and have only the smiley_set that will contain @@ -163,14 +163,14 @@ } static xmlnode * -smileys_to_xmlnode() +smileys_to_xmlnode(void) { xmlnode *root_node, *profile_node, *smileyset_node; root_node = xmlnode_new(XML_ROOT_TAG); xmlnode_set_attrib(root_node, "version", "1.0"); - /* See the top comment's above to understand why initial tag elements + /* See the top comments above to understand why initial tag elements * are not being considered by now. */ profile_node = xmlnode_new(XML_PROFILE_TAG); if (profile_node) { @@ -188,7 +188,7 @@ } static void -sync_smileys() +sync_smileys(void) { xmlnode *root_node; char *data; @@ -216,7 +216,7 @@ } static void -purple_smileys_save() +purple_smileys_save(void) { if (save_timer == 0) save_timer = purple_timeout_add_seconds(5, save_smileys_cb, NULL); @@ -248,7 +248,7 @@ } static void -purple_smileys_load() +purple_smileys_load(void) { xmlnode *root_node, *profile_node; xmlnode *smileyset_node = NULL; @@ -262,7 +262,7 @@ if (root_node == NULL) return; - /* See the top comment's above to understand why initial tag elements + /* See the top comments above to understand why initial tag elements * are not being considered by now. */ profile_node = xmlnode_get_child(root_node, XML_PROFILE_TAG); if (profile_node) @@ -456,7 +456,7 @@ } /********************************************************************* - * Other Stuff * + * Other Stuff * *********************************************************************/ static char *get_file_full_path(const char *filename) @@ -876,7 +876,7 @@ } void -purple_smileys_init() +purple_smileys_init(void) { smiley_shortcut_index = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL); smiley_checksum_index = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL); @@ -887,7 +887,7 @@ } void -purple_smileys_uninit() +purple_smileys_uninit(void) { if (save_timer != 0) { purple_timeout_remove(save_timer);
--- a/libpurple/smiley.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/smiley.h Mon Aug 24 19:21:21 2009 +0000 @@ -95,7 +95,7 @@ purple_smiley_new_from_file(const char *shortcut, const char *filepath); /** - * Destroys the custom smiley and release the associated resources. + * Destroys the custom smiley and releases the associated resources. * * @param smiley The custom smiley. */ @@ -183,7 +183,7 @@ * If the custom smiley has data and the file exists in the cache, this * will return a full path to the cached file. * - * In general, it is not appropriate to be poking in the file cached + * In general, it is not appropriate to be poking in the file cache * directly. If you find yourself wanting to use this function, think * very long and hard about it, and then don't. *
--- a/libpurple/status.h Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/status.h Mon Aug 24 19:21:21 2009 +0000 @@ -50,25 +50,25 @@ * your accounts are saved so that the next time you start Purple, * your accounts will be set to their last known statuses. There * is also a list of saved statuses that are written to the - * status.xml file. Also, each PurpleStatus has a "savable" boolean. - * If "savable" is set to FALSE then the status is NEVER saved. + * status.xml file. Also, each PurpleStatus has a "saveable" boolean. + * If "saveable" is set to FALSE then the status is NEVER saved. * All PurpleStatuses should be inside a PurplePresence. * * - * A PurpleStatus is either "indepedent" or "exclusive." - * Independent statuses can be active or inactive and it doesn't + * A PurpleStatus is either "independent" or "exclusive." + * Independent statuses can be active or inactive and they don't * affect anything else. However, you can only have one exclusive - * status per PurplePresence. If you activate one exlusive status, + * status per PurplePresence. If you activate one exclusive status, * then the previous exclusive status is automatically deactivated. * * A PurplePresence is like a collection of PurpleStatuses (plus some * other random info). For any buddy, or for any one of your accounts, - * or for any person you're chatting with, you may know various + * or for any person with which you're chatting, you may know various * amounts of information. This information is all contained in * one PurplePresence. If one of your buddies is away and idle, * then the presence contains the PurpleStatus for their awayness, * and it contains their current idle time. PurplePresences are - * never saved to disk. The information they contain is only relevent + * never saved to disk. The information they contain is only relevant * for the current PurpleSession. */ @@ -80,7 +80,7 @@ /** * A context for a presence. * - * The context indicates what the presence applies to. + * The context indicates to what the presence applies. */ typedef enum { @@ -134,7 +134,7 @@ #endif /**************************************************************************/ -/** @name PurpleStatusPrimitive API */ +/** @name PurpleStatusPrimitive API */ /**************************************************************************/ /*@{*/ @@ -172,7 +172,7 @@ /*@}*/ /**************************************************************************/ -/** @name PurpleStatusType API */ +/** @name PurpleStatusType API */ /**************************************************************************/ /*@{*/
--- a/libpurple/tests/test_yahoo_util.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/tests/test_yahoo_util.c Mon Aug 24 19:21:21 2009 +0000 @@ -25,6 +25,10 @@ yahoo_codes_to_html("plain <peanut")); assert_string_equal_free("plain> peanut", yahoo_codes_to_html("plain> peanut")); + assert_string_equal_free("<font face='inva>lid'>test</font>", + yahoo_codes_to_html("<font face='inva>lid'>test")); + assert_string_equal_free("<font face='inva>lid", + yahoo_codes_to_html("<font face='inva>lid")); /* bold/italic/underline */ assert_string_equal_free("<b>bold</b>", @@ -46,6 +50,10 @@ assert_string_equal_free("<b>bold <i>bolditalic <u>bolditalicunderline</u></i></b><i><u> italicunderline</u></i>", yahoo_codes_to_html("\x1B[1mbold \x1B[2mbolditalic \x1B[4mbolditalicunderline\x1B[x1m italicunderline")); + /* link */ + assert_string_equal_free("http://pidgin.im/", + yahoo_codes_to_html("\x1B[lmhttp://pidgin.im/\x1B[xlm")); + #ifdef USE_CSS_FORMATTING /* font color */ assert_string_equal_free("<span style='color: #0000FF'>blue</span>", @@ -92,19 +100,105 @@ yahoo_codes_to_html("<font face='Georgia' size='32'>test")); assert_string_equal_free("<font color='#FF0080'><font size='4' absz='15'>test</font></font>", yahoo_codes_to_html("\x1B[35m<font size='15'>test")); + assert_string_equal_free(":<", + yahoo_codes_to_html("<FADE #ff0000,#00ff00,#0000ff>:<</FADE>")); #endif /* !USE_CSS_FORMATTING */ } END_TEST +START_TEST(test_html_to_codes) +{ + assert_string_equal_free("plain", + yahoo_html_to_codes("plain")); + assert_string_equal_free("plain <peanut>", + yahoo_html_to_codes("plain <peanut>")); + assert_string_equal_free("plain <peanut", + yahoo_html_to_codes("plain <peanut")); + assert_string_equal_free("plain> peanut", + yahoo_html_to_codes("plain> peanut")); + assert_string_equal_free("plain >", + yahoo_html_to_codes("plain >")); + assert_string_equal_free("plain > ", + yahoo_html_to_codes("plain > ")); + assert_string_equal_free("plain <", + yahoo_html_to_codes("plain <")); + assert_string_equal_free("plain < ", + yahoo_html_to_codes("plain < ")); + assert_string_equal_free("plain <", + yahoo_html_to_codes("plain <")); + assert_string_equal_free("plain &", + yahoo_html_to_codes("plain &")); + + /* bold/italic/underline */ + assert_string_equal_free("\x1B[1mbold\x1B[x1m", + yahoo_html_to_codes("<b>bold</b>")); + assert_string_equal_free("\x1B[2mitalic\x1B[x2m", + yahoo_html_to_codes("<i>italic</i>")); + assert_string_equal_free("\x1B[4munderline\x1B[x4m", + yahoo_html_to_codes("<u>underline</u>")); + assert_string_equal_free("no markup", + yahoo_html_to_codes("no</u> markup")); + assert_string_equal_free("\x1B[1mbold\x1B[x1m \x1B[2mitalic\x1B[x2m \x1B[4munderline\x1B[x4m", + yahoo_html_to_codes("<b>bold</b> <i>italic</i> <u>underline</u>")); + assert_string_equal_free("\x1B[1mbold \x1B[2mbolditalic\x1B[x2m\x1B[x1m\x1B[2m italic\x1B[x2m", + yahoo_html_to_codes("<b>bold <i>bolditalic</i></b><i> italic</i>")); + assert_string_equal_free("\x1B[1mbold \x1B[2mbolditalic\x1B[x2m\x1B[x1m\x1B[2m \x1B[4mitalicunderline\x1B[x4m\x1B[x2m", + yahoo_html_to_codes("<b>bold <i>bolditalic</i></b><i> <u>italicunderline</u></i>")); + + /* link */ + assert_string_equal_free("http://pidgin.im/", + yahoo_html_to_codes("<A HREF=\"http://pidgin.im/\">http://pidgin.im/</A>")); + assert_string_equal_free("mark@example.com", + yahoo_html_to_codes("<A HREF=\"mailto:mark@example.com\">mark@example.com</A>")); +#if 0 + assert_string_equal_free("Pidgin (http://pidgin.im/)", + yahoo_html_to_codes("<A HREF=\"http://pidgin.im/\">Pidgin</A>")); +#endif + + /* font nothing */ + assert_string_equal_free("nothing", + yahoo_html_to_codes("<font>nothing</font>")); + + /* font color */ + assert_string_equal_free("\x1B[#E71414mred\x1B[#000000m", + yahoo_html_to_codes("<font color=\"#E71414\">red</font>")); + assert_string_equal_free("\x1B[#FF0000mred\x1B[#000000m \x1B[#0000FFmblue\x1B[#000000m black", + yahoo_html_to_codes("<font color=\"#FF0000\">red</font> <font color=\"#0000FF\">blue</font> black")); + + /* font size */ + assert_string_equal_free("<font size=\"10\">test</font>", + yahoo_html_to_codes("<font size=\"2\">test</font>")); + assert_string_equal_free("<font size=\"30\">test</font>", + yahoo_html_to_codes("<font size=\"6\">test</font>")); + + /* combinations */ + assert_string_equal_free("\x1B[#FF0000m<font size=\"8\">redsmall</font> rednormal\x1B[#000000m", + yahoo_html_to_codes("<font color=\"#FF0000\"><font size=\"1\">redsmall</font> rednormal</font>")); + + assert_string_equal_free("\x1B[#FF0000m<font size=\"8\">redsmall</font> \x1B[#00FF00mgreennormal\x1B[#FF0000m rednormal\x1B[#000000m", + yahoo_html_to_codes("<font color=\"#FF0000\"><font size=\"1\">redsmall</font> <font color=\"#00FF00\">greennormal</font> rednormal</font>")); + + assert_string_equal_free("\x1B[1mbold \x1B[#FF0000mred <font face=\"Comic Sans MS\" size=\"20\">larger \x1B[#000000mbacktoblack <font size=\"12\">normalsize</font>\x1B[#FF0000m</font>\x1B[#000000m\x1B[x1m", + yahoo_html_to_codes("<b>bold <font color=\"#FF0000\">red <font face=\"Comic Sans MS\" size=\"5\">larger <font color=\"#000000\">backtoblack <font size=\"3\">normalsize</font></font></font></font></b>")); +} +END_TEST + Suite * yahoo_util_suite(void) { - Suite *s = suite_create("Yahoo Utility Functions"); + Suite *s; + TCase *tc; - TCase *tc = tcase_create("Convert to Numeric"); + s = suite_create("Yahoo Utility Functions"); + + tc = tcase_create("Convert IM from network format to HTML"); tcase_add_unchecked_fixture(tc, setup_codes_to_html, teardown_codes_to_html); tcase_add_test(tc, test_codes_to_html); suite_add_tcase(s, tc); + tc = tcase_create("Convert IM from HTML to network format"); + tcase_add_test(tc, test_html_to_codes); + suite_add_tcase(s, tc); + return s; }
--- a/libpurple/util.c Thu Aug 13 17:40:00 2009 +0000 +++ b/libpurple/util.c Mon Aug 24 19:21:21 2009 +0000 @@ -405,7 +405,7 @@ encoded_word_state_t state = state_start; const char *cur, *mark; const char *charset0 = NULL, *encoding0 = NULL, *encoded_text0 = NULL; - char *n, *new; + GString *new; /* token can be any CHAR (supposedly ISO8859-1/ISO2022), not just ASCII */ #define token_char_p(c) \ @@ -415,16 +415,9 @@ #define encoded_text_char_p(c) \ ((c & 0x80) == 0 && c != '?' && c != ' ' && isgraph(c)) - #define RECOVER_MARKED_TEXT strncpy(n, mark, cur - mark + 1); \ - n += cur - mark + 1 - g_return_val_if_fail(str != NULL, NULL); - /* NOTE: Assuming that we need just strlen(str)+1 *may* be wrong. - * It would be wrong if one byte (in some unknown encoding) could - * expand to >=4 bytes of UTF-8; I don't know if there are such things. - */ - n = new = g_malloc(strlen(str) + 1); + new = g_string_new(NULL); /* Here we will be looking for encoded words and if they seem to be * valid then decode them. @@ -437,7 +430,7 @@ if (*cur == '?') { state = state_question1; } else { - RECOVER_MARKED_TEXT; + g_string_append_len(new, mark, cur - mark + 1); state = state_start; } break; @@ -446,7 +439,7 @@ charset0 = cur; state = state_charset; } else { /* This should never happen */ - RECOVER_MARKED_TEXT; + g_string_append_len(new, mark, cur - mark + 1); state = state_start; } break; @@ -454,7 +447,7 @@ if (*cur == '?') { state = state_question2; } else if (!token_char_p(*cur)) { /* This should never happen */ - RECOVER_MARKED_TEXT; + g_string_append_len(new, mark, cur - mark + 1); state = state_start; } break; @@ -463,7 +456,7 @@ encoding0 = cur; state = state_encoding; } else { /* This should never happen */ - RECOVER_MARKED_TEXT; + g_string_append_len(new, mark, cur - mark + 1); state = state_start; } break; @@ -471,7 +464,7 @@ if (*cur == '?') { state = state_question3; } else if (!token_char_p(*cur)) { /* This should never happen */ - RECOVER_MARKED_TEXT; + g_string_append_len(new, mark, cur - mark + 1); state = state_start; } break; @@ -483,7 +476,7 @@ encoded_text0 = cur; state = state_question4; } else { /* This should never happen */ - RECOVER_MARKED_TEXT; + g_string_append_len(new, mark, cur - mark + 1); state = state_start; } break; @@ -491,7 +484,7 @@ if (*cur == '?') { state = state_question4; } else if (!encoded_text_char_p(*cur)) { - RECOVER_MARKED_TEXT; + g_string_append_len(new, mark, cur - mark + 1); state = state_start; } break; @@ -513,7 +506,7 @@ char *converted = g_convert((const gchar *)decoded, dec_len, "utf-8", charset, NULL, &len, NULL); if (converted) { - n = strncpy(n, converted, len) + len; + g_string_append_len(new, converted, len); g_free(converted); } g_free(decoded); @@ -523,7 +516,7 @@ g_free(encoded_text); state = state_equal2; /* Restart the FSM */ } else { /* This should never happen */ - RECOVER_MARKED_TEXT; + g_string_append_len(new, mark, cur - mark + 1); state = state_start; } break; @@ -533,19 +526,16 @@ state = state_equal1; } else { /* Some unencoded text. */ - *n = *cur; - n += 1; + g_string_append_c(new, *cur); } break; } /* switch */ } /* for */ - if (state != state_start) { - RECOVER_MARKED_TEXT; - } - *n = '\0'; - - return new; + if (state != state_start) + g_string_append_len(new, mark, cur - mark + 1); + + return g_string_free(new, FALSE);; } @@ -3830,7 +3820,7 @@ /* Note: data is _not_ nul-terminated. */ if (data_len > header_len) { if (header[0] == '\n') - p = (g_strncasecmp(data, header + 1, header_len - 1) == 0) ? data : NULL; + p = (g_ascii_strncasecmp(data, header + 1, header_len - 1) == 0) ? data : NULL; if (!p) p = purple_strcasestr(data, header); if (p) @@ -3867,7 +3857,7 @@ content_is_chunked(const char *data, size_t data_len) { const char *p = find_header_content(data, data_len, "\nTransfer-Encoding: ", sizeof("\nTransfer-Encoding: ") - 1); - if (p && g_strncasecmp(p, "chunked", 7) == 0) + if (p && g_ascii_strncasecmp(p, "chunked", 7) == 0) return TRUE; return FALSE;
--- a/pidgin/gtkblist-theme.c Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/gtkblist-theme.c Mon Aug 24 19:21:21 2009 +0000 @@ -373,70 +373,94 @@ g_object_class_install_property(obj_class, PROP_BACKGROUND_COLOR, pspec); pspec = g_param_spec_pointer("layout", _("Layout"), - _("The layout of icons, name, and status of the blist"), + _("The layout of icons, name, and status of the buddy list"), G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_LAYOUT, pspec); /* Group */ + /* Note to translators: These two strings refer to the background color + of a buddy list group when in its expanded state */ pspec = g_param_spec_boxed("expanded-color", _("Expanded Background Color"), _("The background color of an expanded group"), GDK_TYPE_COLOR, G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_EXPANDED_COLOR, pspec); + /* Note to translators: These two strings refer to the font and color + of a buddy list group when in its expanded state */ pspec = g_param_spec_pointer("expanded-text", _("Expanded Text"), _("The text information for when a group is expanded"), G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_EXPANDED_TEXT, pspec); + /* Note to translators: These two strings refer to the background color + of a buddy list group when in its collapsed state */ pspec = g_param_spec_boxed("collapsed-color", _("Collapsed Background Color"), _("The background color of a collapsed group"), GDK_TYPE_COLOR, G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_COLLAPSED_COLOR, pspec); + /* Note to translators: These two strings refer to the font and color + of a buddy list group when in its collapsed state */ pspec = g_param_spec_pointer("collapsed-text", _("Collapsed Text"), _("The text information for when a group is collapsed"), G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_COLLAPSED_TEXT, pspec); /* Buddy */ + /* Note to translators: These two strings refer to the background color + of a buddy list contact or chat room */ pspec = g_param_spec_boxed("contact-color", _("Contact/Chat Background Color"), _("The background color of a contact or chat"), GDK_TYPE_COLOR, G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_CONTACT_COLOR, pspec); + /* Note to translators: These two strings refer to the font and color + of a buddy list contact when in its expanded state */ pspec = g_param_spec_pointer("contact", _("Contact Text"), _("The text information for when a contact is expanded"), G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_CONTACT, pspec); - pspec = g_param_spec_pointer("online", _("On-line Text"), + /* Note to translators: These two strings refer to the font and color + of a buddy list buddy when it is online */ + pspec = g_param_spec_pointer("online", _("Online Text"), _("The text information for when a buddy is online"), G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_ONLINE, pspec); + /* Note to translators: These two strings refer to the font and color + of a buddy list buddy when it is away */ pspec = g_param_spec_pointer("away", _("Away Text"), _("The text information for when a buddy is away"), G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_AWAY, pspec); - pspec = g_param_spec_pointer("offline", _("Off-line Text"), - _("The text information for when a buddy is off-line"), + /* Note to translators: These two strings refer to the font and color + of a buddy list buddy when it is offline */ + pspec = g_param_spec_pointer("offline", _("Offline Text"), + _("The text information for when a buddy is offline"), G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_OFFLINE, pspec); + /* Note to translators: These two strings refer to the font and color + of a buddy list buddy when it is idle */ pspec = g_param_spec_pointer("idle", _("Idle Text"), _("The text information for when a buddy is idle"), G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_IDLE, pspec); + /* Note to translators: These two strings refer to the font and color + of a buddy list buddy when they have sent you a new message */ pspec = g_param_spec_pointer("message", _("Message Text"), _("The text information for when a buddy has an unread message"), G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_MESSAGE, pspec); + /* Note to translators: These two strings refer to the font and color + of a buddy list buddy when they have sent you a new message */ pspec = g_param_spec_pointer("message_nick_said", _("Message (Nick Said) Text"), - _("The text information for when a chat has an unread message that mentions your nick"), + _("The text information for when a chat has an unread message that mentions your nickname"), G_PARAM_READWRITE); g_object_class_install_property(obj_class, PROP_MESSAGE_NICK_SAID, pspec);
--- a/pidgin/gtkblist.c Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/gtkblist.c Mon Aug 24 19:21:21 2009 +0000 @@ -622,7 +622,14 @@ struct _pidgin_blist_node *gtknode = (struct _pidgin_blist_node *)purple_blist_node_get_ui_data(node); - if (purple_contact_get_alias(contact) || gtknode->contact_expanded) { + /* + * XXX Using purple_contact_get_alias here breaks because we + * specifically want to check the contact alias only (i.e. not + * the priority buddy, which purple_contact_get_alias does). + * Adding yet another get_alias is evil, so figure this out + * later :-P + */ + if (contact->alias || gtknode->contact_expanded) { purple_blist_alias_contact(contact, arg2); gtk_blist_auto_personize(purple_blist_node_get_parent(node), arg2); } else { @@ -4090,7 +4097,7 @@ else g_snprintf(buf, sizeof(buf), "%%s "); - statustext = g_strdup_printf(buf, tmp);purple_presence_is_idle(presence) + statustext = g_strdup_printf(buf, tmp); g_free(tmp); } @@ -4141,6 +4148,7 @@ name_color = "dim grey"; } else if (!purple_presence_is_online(presence)) { namefont = pidgin_blist_theme_get_offline_text_info(theme); + name_color = "dim grey"; statusfont = pidgin_blist_theme_get_status_text_info(theme); } else if (purple_presence_is_available(presence)) { namefont = pidgin_blist_theme_get_online_text_info(theme); @@ -4149,6 +4157,13 @@ namefont = pidgin_blist_theme_get_away_text_info(theme); statusfont = pidgin_blist_theme_get_status_text_info(theme); } + } else { + if (!selected + && (purple_presence_is_idle(presence) + || !purple_presence_is_online(presence))) + { + name_color = "dim grey"; + } } name_color = theme_font_get_color_default(namefont, name_color); @@ -6398,10 +6413,13 @@ ihrs = (t - idle_secs) / 3600; imin = ((t - idle_secs) / 60) % 60; - if (!selected && theme != NULL && (pair = pidgin_blist_theme_get_idle_text_info(theme)) != NULL) + if (selected) + textcolor = NULL; + else if (theme != NULL && (pair = pidgin_blist_theme_get_idle_text_info(theme)) != NULL) textcolor = pidgin_theme_font_get_color_describe(pair); else - textcolor = NULL; + /* If no theme them default to making idle buddy names grey */ + textcolor = "dim grey"; if (textcolor) { idle = g_strdup_printf("<span color='%s' font_desc='%s'>%d:%02d</span>", @@ -7130,7 +7148,7 @@ data->chat_data.rq_data.sg, data->group_combo, TRUE, NULL); - data->autojoin = gtk_check_button_new_with_mnemonic(_("Auto_join when account becomes online.")); + data->autojoin = gtk_check_button_new_with_mnemonic(_("Auto_join when account connects.")); data->persistent = gtk_check_button_new_with_mnemonic(_("_Remain in chat after window is closed.")); gtk_box_pack_start(GTK_BOX(vbox), data->autojoin, FALSE, FALSE, 0); gtk_box_pack_start(GTK_BOX(vbox), data->persistent, FALSE, FALSE, 0);
--- a/pidgin/gtkcertmgr.c Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/gtkcertmgr.c Mon Aug 24 19:21:21 2009 +0000 @@ -144,12 +144,12 @@ tls_peers_mgmt_import_ok2_cb(gpointer data, const char *result) { PurpleCertificate *crt = (PurpleCertificate *) data; - const char *id = result; /* TODO: Perhaps prompt if you're overwriting a cert? */ /* Drop the certificate into the pool */ - purple_certificate_pool_store(tpm_dat->tls_peers, id, crt); + if (result && *result) + purple_certificate_pool_store(tpm_dat->tls_peers, result, crt); /* And this certificate is not needed any more */ purple_certificate_destroy(crt);
--- a/pidgin/gtkconv.c Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/gtkconv.c Mon Aug 24 19:21:21 2009 +0000 @@ -959,6 +959,12 @@ } static void +menu_join_chat_cb(gpointer data, guint action, GtkWidget *widget) +{ + pidgin_blist_joinchat_show(); +} + +static void savelog_writefile_cb(void *user_data, const char *filename) { PurpleConversation *conv = (PurpleConversation *)user_data; @@ -3133,6 +3139,8 @@ { N_("/Conversation/New Instant _Message..."), "<CTL>M", menu_new_conv_cb, 0, "<StockItem>", PIDGIN_STOCK_TOOLBAR_MESSAGE_NEW }, + { N_("/Conversation/Join a _Chat..."), NULL, menu_join_chat_cb, + 0, "<StockItem>", PIDGIN_STOCK_CHAT }, { "/Conversation/sep0", NULL, NULL, 0, "<Separator>", NULL },
--- a/pidgin/gtkdialogs.c Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/gtkdialogs.c Mon Aug 24 19:21:21 2009 +0000 @@ -170,9 +170,7 @@ {N_("Esperanto"), "eo", "St辿phane Fillod", "fillods@users.sourceforge.net"}, {N_("Spanish"), "es", "Javier Fern叩ndez-Sanguino Pe単a", "jfs@debian.org"}, {N_("Estonian"), "et", "Ivar Smolin", "okul@linux.ee"}, - {N_("Euskera(Basque)"), "eu", "Mikel Pascual Aldabaldetreku", "mikel.paskual@gmail.com"}, - {N_("Euskera(Basque)"), "eu", "I単aki Larra単aga Murgoitio", "dooteo@zundan.com"}, - {N_("Euskera(Basque)"), "eu", "Hizkuntza Politikarako Sailburuordetza", "hizkpol@ej-gv.es"}, + {N_("Basque"), "eu", "Mikel Pascual Aldabaldetreku", "mikel.paskual@gmail.com"}, {N_("Persian"), "fa", "Elnaz Sarbar", "elnaz@farsiweb.info"}, {N_("Persian"), "fa", "Meelad Zakaria", "meelad@farsiweb.info"}, {N_("Persian"), "fa", "Roozbeh Pournader ", "roozbeh@farsiweb.info"}, @@ -257,6 +255,8 @@ {N_("Spanish"), "es", "Nicol叩s Lichtmaier", NULL}, {N_("Spanish"), "es", "Amaya Rodrigo", NULL}, {N_("Spanish"), "es", "Alejandro G Villar", NULL}, + {N_("Basque"), "eu", "I単aki Larra単aga Murgoitio", "dooteo@zundan.com"}, + {N_("Basque"), "eu", "Hizkuntza Politikarako Sailburuordetza", "hizkpol@ej-gv.es"}, {N_("Finnish"), "fi", "Arto Alakulju", NULL}, {N_("Finnish"), "fi", "Tero Kuusela", NULL}, {N_("French"), "fr", "S辿bastien Fran巽ois", NULL}, @@ -472,7 +472,13 @@ "http://developer.pidgin.im/wiki/FAQ</A><BR/><BR/>")); g_string_append_printf(str, _("<FONT SIZE=\"4\">Help via e-mail:</FONT>" " <A HREF=\"mailto:support@pidgin.im\">support@pidgin.im</A>" - "<BR/><BR/>")); + " (This is a" + " <A HREF=\"http://pidgin.im/cgi-bin/mailman/listinfo/support\">" + "mailing list</A>, and messages sent here are" + " <A HREF=\"http://pidgin.im/pipermail/support/\">publicly" + " archived!</A> Furthermore, we do <I><B>not</B></I> support" + " MXit, Facebook, Skype, or any other third-party plugins on" + " this list.)<BR/><BR/>")); g_string_append_printf(str, _("<FONT SIZE=\"4\">IRC Channel:</FONT> " "#pidgin on irc.freenode.net<BR><BR>")); g_string_append_printf(str, _("<FONT SIZE=\"4\">XMPP MUC:</FONT> "
--- a/pidgin/gtkmain.c Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/gtkmain.c Mon Aug 24 19:21:21 2009 +0000 @@ -406,34 +406,34 @@ if (terse) { text = g_strdup_printf(_("%s %s. Try `%s -h' for more information.\n"), PIDGIN_NAME, DISPLAY_VERSION, name); } else { + GString *str = g_string_new(NULL); + g_string_append_printf(str, "%s %s\n", PIDGIN_NAME, DISPLAY_VERSION); + g_string_append_printf(str, _("Usage: %s [OPTION]...\n\n"), name); + g_string_append_printf(str, " -c, --config=DIR %s\n", + _("use DIR for config files")); + g_string_append_printf(str, " -d, --debug %s\n", + _("print debugging messages to stdout")); + g_string_append_printf(str, " -f, --force-online %s\n", + _("force online, regardless of network status")); + g_string_append_printf(str, " -h, --help %s\n", + _("display this help and exit")); + g_string_append_printf(str, " -m, --multiple %s\n", + _("allow multiple instances")); + g_string_append_printf(str, " -n, --nologin %s\n", + _("don't automatically login")); + g_string_append_printf(str, " -l, --login[=NAME] %s\n", + _("enable specified account(s) (optional argument NAME\n" + " " + "specifies account(s) to use, separated by commas.")); + g_string_append_printf(str, " %s\n", + _("Without this only the first account will be enabled).")); #ifndef WIN32 - text = g_strdup_printf(_("%s %s\n" - "Usage: %s [OPTION]...\n\n" - " -c, --config=DIR use DIR for config files\n" - " -d, --debug print debugging messages to stdout\n" - " -f, --force-online force online, regardless of network status\n" - " -h, --help display this help and exit\n" - " -m, --multiple do not ensure single instance\n" - " -n, --nologin don't automatically login\n" - " -l, --login[=NAME] enable specified account(s) (optional argument NAME\n" - " specifies account(s) to use, separated by commas.\n" - " Without this only the first account will be enabled).\n" - " --display=DISPLAY X display to use\n" - " -v, --version display the current version and exit\n"), PIDGIN_NAME, DISPLAY_VERSION, name); -#else - text = g_strdup_printf(_("%s %s\n" - "Usage: %s [OPTION]...\n\n" - " -c, --config=DIR use DIR for config files\n" - " -d, --debug print debugging messages to stdout\n" - " -f, --force-online force online, regardless of network status\n" - " -h, --help display this help and exit\n" - " -m, --multiple do not ensure single instance\n" - " -n, --nologin don't automatically login\n" - " -l, --login[=NAME] enable specified account(s) (optional argument NAME\n" - " specifies account(s) to use, separated by commas.\n" - " Without this only the first account will be enabled).\n" - " -v, --version display the current version and exit\n"), PIDGIN_NAME, DISPLAY_VERSION, name); -#endif + g_string_append_printf(str, " --display=DISPLAY %s\n", + _("X display to use")); +#endif /* !WIN32 */ + g_string_append_printf(str, " -v, --version %s\n", + _("display the current version and exit")); + text = g_string_free(str, FALSE); } purple_print_utf8_to_console(stdout, text);
--- a/pidgin/gtkmedia.c Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/gtkmedia.c Mon Aug 24 19:21:21 2009 +0000 @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA */ #include <string.h>
--- a/pidgin/gtkmedia.h Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/gtkmedia.h Mon Aug 24 19:21:21 2009 +0000 @@ -21,7 +21,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef __GTKMEDIA_H_
--- a/pidgin/gtknotify.c Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/gtknotify.c Mon Aug 24 19:21:21 2009 +0000 @@ -60,6 +60,7 @@ { PurpleAccount *account; PurplePounce *pounce; + char *pouncee; } PidginNotifyPounceData; @@ -155,6 +156,7 @@ -1); gtk_tree_store_remove(dialog->treemodel, &iter); + g_free(pounce_data->pouncee); g_free(pounce_data); } @@ -173,8 +175,29 @@ PIDGIN_POUNCE_DATA, &pounce_data, -1); - if (pounce_data != NULL) + if (pounce_data != NULL) { + g_free(pounce_data->pouncee); g_free(pounce_data); + } +} + +static void +open_im_foreach(GtkTreeModel *model, GtkTreePath *path, + GtkTreeIter *iter, gpointer data) +{ + PidginNotifyPounceData *pounce_data; + + gtk_tree_model_get(model, iter, + PIDGIN_POUNCE_DATA, &pounce_data, + -1); + + if (pounce_data != NULL) { + PurpleConversation *conv; + + conv = purple_conversation_new(PURPLE_CONV_TYPE_IM, + pounce_data->account, pounce_data->pouncee); + purple_conversation_present(conv); + } } static void @@ -184,25 +207,69 @@ GList **list = data; *list = g_list_prepend(*list, gtk_tree_path_copy(path)); } + static void pounce_response_dismiss() { + GtkTreeModel *model = GTK_TREE_MODEL(pounce_dialog->treemodel); GtkTreeSelection *selection; + GtkTreeIter iter; + GtkTreeIter new_selection; GList *list = NULL; + gboolean found_selection = FALSE; selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(pounce_dialog->treeview)); gtk_tree_selection_selected_foreach(selection, delete_foreach, pounce_dialog); gtk_tree_selection_selected_foreach(selection, append_to_list, &list); + g_return_if_fail(list != NULL); + + if (list->next == NULL) { + gtk_tree_model_get_iter(model, &new_selection, list->data); + if (gtk_tree_model_iter_next(model, &new_selection)) + found_selection = TRUE; + else { + /* This is the last thing in the list */ + GtkTreePath *path; + + /* Because gtk_tree_model_iter_prev doesn't exist... */ + gtk_tree_model_get_iter(model, &new_selection, list->data); + path = gtk_tree_model_get_path(model, &new_selection); + if (gtk_tree_path_prev(path)) { + gtk_tree_model_get_iter(model, &new_selection, path); + found_selection = TRUE; + } + + gtk_tree_path_free(path); + } + } + while (list) { - GtkTreeIter iter; - if (gtk_tree_model_get_iter(GTK_TREE_MODEL(pounce_dialog->treemodel), &iter, - list->data)) { + if (gtk_tree_model_get_iter(model, &iter, list->data)) { gtk_tree_store_remove(GTK_TREE_STORE(pounce_dialog->treemodel), &iter); } gtk_tree_path_free(list->data); list = g_list_delete_link(list, list); } + + if (gtk_tree_model_get_iter_first(model, &iter)) { + if (found_selection) + gtk_tree_selection_select_iter(selection, &new_selection); + else + gtk_tree_selection_select_iter(selection, &iter); + } else + pounce_response_close(pounce_dialog); +} + +static void +pounce_response_open_ims() +{ + GtkTreeSelection *selection; + + selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(pounce_dialog->treeview)); + gtk_tree_selection_selected_foreach(selection, open_im_foreach, pounce_dialog); + + pounce_response_dismiss(); } static void @@ -241,6 +308,9 @@ case GTK_RESPONSE_DELETE_EVENT: pounce_response_close(dialog); break; + case GTK_RESPONSE_YES: + pounce_response_open_ims(); + break; case GTK_RESPONSE_NO: pounce_response_dismiss(); break; @@ -256,40 +326,47 @@ pounce_row_selected_cb(GtkTreeView *tv, GtkTreePath *path, GtkTreeViewColumn *col, gpointer data) { - GtkTreeIter iter; GtkTreeSelection *selection; - gboolean selected; - GList *list; + int count; selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(pounce_dialog->treeview)); - selected = gtk_tree_selection_get_selected(selection, - NULL, &iter); + count = gtk_tree_selection_count_selected_rows(selection); - if (selected) { - PurplePounce *pounce; + if (count == 0) { + gtk_widget_set_sensitive(pounce_dialog->open_button, FALSE); + gtk_widget_set_sensitive(pounce_dialog->edit_button, FALSE); + gtk_widget_set_sensitive(pounce_dialog->dismiss_button, FALSE); + } else if (count == 1) { + GList *pounces; + GList *list; PidginNotifyPounceData *pounce_data; + GtkTreeIter iter; - list = purple_pounces_get_all(); - + list = gtk_tree_selection_get_selected_rows(selection, NULL); + gtk_tree_model_get_iter(GTK_TREE_MODEL(pounce_dialog->treemodel), + &iter, list->data); gtk_tree_model_get(GTK_TREE_MODEL(pounce_dialog->treemodel), &iter, PIDGIN_POUNCE_DATA, &pounce_data, -1); - - gtk_widget_set_sensitive(pounce_dialog->edit_button, FALSE); + g_list_foreach(list, (GFunc)gtk_tree_path_free, NULL); + g_list_free(list); - for (; list != NULL; list = list->next) { - pounce = list->data; + pounces = purple_pounces_get_all(); + for (; pounces != NULL; pounces = pounces->next) { + PurplePounce *pounce = pounces->data; if (pounce == pounce_data->pounce) { gtk_widget_set_sensitive(pounce_dialog->edit_button, TRUE); break; } } + gtk_widget_set_sensitive(pounce_dialog->open_button, TRUE); gtk_widget_set_sensitive(pounce_dialog->dismiss_button, TRUE); } else { + gtk_widget_set_sensitive(pounce_dialog->open_button, TRUE); gtk_widget_set_sensitive(pounce_dialog->edit_button, FALSE); - gtk_widget_set_sensitive(pounce_dialog->dismiss_button, FALSE); + gtk_widget_set_sensitive(pounce_dialog->dismiss_button, TRUE); } @@ -1351,6 +1428,7 @@ GdkPixbuf *icon; GtkTreeIter iter; PidginNotifyPounceData *pounce_data; + gboolean first = (pounce_dialog == NULL); if (pounce_dialog == NULL) pounce_dialog = pidgin_create_notification_dialog(PIDGIN_NOTIFY_POUNCE); @@ -1361,6 +1439,7 @@ pounce_data->account = account; pounce_data->pounce = pounce; + pounce_data->pouncee = g_strdup(purple_pounce_get_pouncee(pounce)); gtk_tree_store_append(pounce_dialog->treemodel, &iter, NULL); @@ -1373,6 +1452,12 @@ PIDGIN_POUNCE_DATA, pounce_data, -1); + if (first) { + GtkTreeSelection *selection = + gtk_tree_view_get_selection(GTK_TREE_VIEW(pounce_dialog->treeview)); + gtk_tree_selection_select_iter(selection, &iter); + } + if (icon) g_object_unref(icon); @@ -1411,9 +1496,7 @@ G_TYPE_STRING, G_TYPE_POINTER); } - dialog = gtk_dialog_new_with_buttons(NULL, NULL, 0, - GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, - NULL); + dialog = gtk_dialog_new(); /* Setup the dialog */ gtk_container_set_border_width(GTK_CONTAINER(dialog), PIDGIN_HIG_BOX_SPACE); @@ -1484,15 +1567,20 @@ gtk_window_set_title(GTK_WINDOW(dialog), _("New Pounces")); button = gtk_dialog_add_button(GTK_DIALOG(dialog), + _("IM"), GTK_RESPONSE_YES); + gtk_widget_set_sensitive(button, FALSE); + spec_dialog->open_button = button; + + button = gtk_dialog_add_button(GTK_DIALOG(dialog), + PIDGIN_STOCK_MODIFY, GTK_RESPONSE_APPLY); + gtk_widget_set_sensitive(button, FALSE); + spec_dialog->edit_button = button; + + button = gtk_dialog_add_button(GTK_DIALOG(dialog), _("Dismiss"), GTK_RESPONSE_NO); gtk_widget_set_sensitive(button, FALSE); spec_dialog->dismiss_button = button; - button = gtk_dialog_add_button(GTK_DIALOG(dialog), - PIDGIN_STOCK_EDIT, GTK_RESPONSE_APPLY); - gtk_widget_set_sensitive(button, FALSE); - spec_dialog->edit_button = button; - g_signal_connect(G_OBJECT(dialog), "response", G_CALLBACK(pounce_response_cb), spec_dialog); @@ -1536,11 +1624,16 @@ gtk_label_set_markup(GTK_LABEL(label), _("<span weight=\"bold\" size=\"larger\">You have pounced!</span>")); sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(spec_dialog->treeview)); - gtk_tree_selection_set_mode(sel, GTK_SELECTION_SINGLE); + gtk_tree_selection_set_mode(sel, GTK_SELECTION_MULTIPLE); g_signal_connect(G_OBJECT(sel), "changed", G_CALLBACK(pounce_row_selected_cb), NULL); + g_signal_connect(G_OBJECT(spec_dialog->treeview), "row-activated", + G_CALLBACK(pounce_response_open_ims), NULL); } + button = gtk_dialog_add_button(GTK_DIALOG(dialog), + GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE); + gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); gtk_misc_set_alignment(GTK_MISC(label), 0, 0); gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
--- a/pidgin/gtkutils.c Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/gtkutils.c Mon Aug 24 19:21:21 2009 +0000 @@ -3699,9 +3699,13 @@ gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); /* Open Containing Directory */ +#if GTK_CHECK_VERSION(2,6,0) img = gtk_image_new_from_stock(GTK_STOCK_DIRECTORY, GTK_ICON_SIZE_MENU); item = gtk_image_menu_item_new_with_mnemonic(_("Open _Containing Directory")); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(item), img); +#else + item = gtk_menu_item_new_with_mnemonic(_("Open _Containing Directory")); +#endif g_signal_connect(G_OBJECT(item), "activate", G_CALLBACK(open_containing_cb), (gpointer)url); gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); @@ -3767,9 +3771,13 @@ url = gtk_imhtml_link_get_url(link); /* Play Sound */ +#if GTK_CHECK_VERSION(2,6,0) img = gtk_image_new_from_stock(GTK_STOCK_MEDIA_PLAY, GTK_ICON_SIZE_MENU); item = gtk_image_menu_item_new_with_mnemonic(_("_Play Sound")); gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(item), img); +#else + item = gtk_menu_item_new_with_mnemonic(_("_Play Sound")); +#endif g_signal_connect_swapped(G_OBJECT(item), "activate", G_CALLBACK(gtk_imhtml_link_activate), link); gtk_menu_shell_append(GTK_MENU_SHELL(menu), item);
--- a/pidgin/pixmaps/Makefile.am Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/pixmaps/Makefile.am Mon Aug 24 19:21:21 2009 +0000 @@ -448,28 +448,28 @@ TOOLBAR_22_SCALABLE = \ toolbar/22/scalable/select-avatar.svg \ toolbar/22/scalable/video-call.svg \ - toolbar/22/scalable/voice-call.svg + toolbar/22/scalable/audio-call.svg TOOLBAR_22 = \ toolbar/22/select-avatar.png \ toolbar/22/video-call.png \ - toolbar/22/voice-call.png + toolbar/22/audio-call.png TOOLBAR_32_SCALABLE = \ toolbar/32/scalable/video-call.svg \ - toolbar/32/scalable/voice-call.svg + toolbar/32/scalable/audio-call.svg TOOLBAR_32 = \ toolbar/32/video-call.png \ - toolbar/32/voice-call.png + toolbar/32/audio-call.png TOOLBAR_48_SCALABLE = \ toolbar/48/scalable/video-call.svg \ - toolbar/48/scalable/voice-call.svg + toolbar/48/scalable/audio-call.svg TOOLBAR_48 = \ toolbar/48/video-call.png \ - toolbar/48/voice-call.png + toolbar/48/audio-call.png TRAY_16_ICO = \ tray/16/available_4bit.ico \
--- a/pidgin/pixmaps/emotes/default/24/default.theme.in Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/pixmaps/emotes/default/24/default.theme.in Mon Aug 24 19:21:21 2009 +0000 @@ -364,6 +364,98 @@ female-fighter.png o-+ O-+ yin-yang.png (%) +# Following Yahoo! Messenger 8.1 +[Yahoo JAPAN] +smile.png :) :-) +question.png :-/ :-\\ +shock.png :-O :O :-o :o +devil.png >:) +angel.png O:-) o:-) 0:-) +sick.png :-& +yawn.png (:| +hypnotized.png @-) +on-the-phone.png :)] +sad.png :( :-( +in-love.png :x :-x :X :-X +angry.png X-( x-( X( x( +crying.png :(( +glasses-nerdy.png :-B :-b +quiet.png :-$ +drool.png =P~ =p~ +lying.png :^O :^o +call-me.png :-c +wink.png ;) ;-) +embarrassed.png :"> +mean.png :-> :> +laugh.png :)) :-)) +bye.png =; +arrogant.png [-( +thinking.png :-? +waiting.png :-w :-W +at-wits-end.png ~x( ~X( +smile-big.png :D :-D :d :-d +tongue.png :-P :P :-p :p +glasses-cool.png B-) b-) +neutral.png :| :-| +sleepy.png I-) i-) |-) +clown.png :o) :O) +doh.png #-o #-O +weep.png :-< +go-away.png :-h +lashes.png ;;) +kiss.png :-* :* +confused.png :-S :-s +sarcastic.png /:) +eyeroll.png 8-| +silly.png 8-} +clap.png =D> =d> +mad-tongue.png >:P >:p +time-out.png :-t :-T +hug-left.png >:D< >:d< +love-over.png =(( +sweat.png #:-S #:-s +rotfl.png =)) :-j :-J +loser.png L-) l-) +party.png <:-P <:-p +nailbiting.png :-SS :-Ss :-sS :-ss +cowboy.png <):) +desire.png 8-> +! skywalker.png C:-) c:-) C:) c:) +! monkey.png :-(|) :(|) + +# Hidden Yahoo emotes +alien.png =:) >-) +beat-up.png b-( B-( +chicken.png ~:> +coffee.png ~o) ~O) +cow.png 3:-O 3:-o +dance.png \\:D/ \\:d/ +rose.png @};- +dont-know.png :-L :-l +skeleton.png 8-X 8-x +lamp.png *-:) +monkey.png :(|) +coins.png $-) +peace.png :)>- +pig.png :@) +pray.png [-o< [-O< +pumpkin.png (~~) +shame.png [-X [-x +flag.png **== +clover.png %%- +musical-note.png :-" +giggle.png ;)) +worship.png ^:)^ +star.png (*) +waving.png >:/ +talktohand.png :-@ + +# Only available after activating the Yahoo! Fighter IMVironment +male-fighter1.png o-> O-> +male-fighter2.png o=> O=> +female-fighter.png o-+ O-+ +yin-yang.png (%) + # Following MySpaceIM Beta 1.0.697.0 [MySpaceIM]
--- a/pidgin/pixmaps/emotes/small/16/small.theme.in Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/pixmaps/emotes/small/16/small.theme.in Mon Aug 24 19:21:21 2009 +0000 @@ -139,7 +139,34 @@ shame.png [-X [-x musical-note.png :-" -# Only available after activating the Yahoo! Fighter IMVironment +# Following Yahoo! Messenger 8.1 +[Yahoo JAPAN] +smile.png :) :-) +question.png :-/ :-\\ +shock.png :-O :O :-o :o +devil.png >:) +angel.png O:-) o:-) 0:-) +sick.png :-& +yawn.png (:| +sad.png :( :-( +angry.png X-( x-( X( x( +crying.png :(( +wink.png ;) ;-) +thinking.png :-? +smile-big.png :D :-D :d :-d +tongue.png :-P :P :-p :p +neutral.png :| :-| +sleepy.png I-) i-) |-) +kiss.png :-* :* +confused.png :-S :-s +hug-left.png >:D< >:d< +party.png <:-P <:-p + +# Hidden Yahoo emotes +coffee.png ~o) ~O) +dont-know.png :-L :-l +shame.png [-X [-x +musical-note.png :-" # Following MySpaceIM Beta 1.0.697.0
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pidgin/pixmaps/toolbar/22/scalable/audio-call.svg Mon Aug 24 19:21:21 2009 +0000 @@ -0,0 +1,795 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="24" + height="24" + id="svg3879" + sodipodi:version="0.32" + inkscape:version="0.46+devel r20974" + version="1.0" + sodipodi:docname="voice-24.svg" + inkscape:output_extension="org.inkscape.output.svg.inkscape"> + <defs + id="defs3881"> + <linearGradient + inkscape:collect="always" + id="linearGradient3617"> + <stop + style="stop-color:#2e3436;stop-opacity:1;" + offset="0" + id="stop3619" /> + <stop + style="stop-color:#0b0c0d;stop-opacity:1" + offset="1" + id="stop3621" /> + </linearGradient> + <linearGradient + gradientTransform="matrix(1.0338738,0,0,1.022703,49.113708,-252.03388)" + inkscape:collect="always" + xlink:href="#linearGradient4976" + id="linearGradient4984" + x1="-24.687374" + y1="245.84587" + x2="-24.687374" + y2="247.61009" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient4976"> + <stop + style="stop-color:#555753;stop-opacity:1;" + offset="0" + id="stop4978" /> + <stop + style="stop-color:#808080;stop-opacity:1" + offset="1" + id="stop4980" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5677-7" + id="linearGradient5723-8" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0038316,0,0,0.67291737,-299.60391,95.209072)" + x1="305.89481" + y1="-120.46718" + x2="306.04715" + y2="-120.46718" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5677-7"> + <stop + style="stop-color:#ff2de7;stop-opacity:1" + offset="0" + id="stop5679-1" /> + <stop + style="stop-color:#7b009b;stop-opacity:1" + offset="1" + id="stop5681-4" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5043-9-6-1" + id="radialGradient5721-4" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.48374104,0.92161718,-1.0869289,0.53973041,10.51482,359.09454)" + cx="-306.03387" + cy="-120.8595" + fx="-306.03387" + fy="-120.8595" + r="3.03685" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5043-9-6-1"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop5045-4-8-8" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop5047-1-2-6" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5655-9" + id="linearGradient5719-5" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.52563657,0,0,0.74896722,153.12631,104.25845)" + x1="-300.82822" + y1="-126.31032" + x2="-300.82822" + y2="-114.83224" /> + <linearGradient + id="linearGradient5655-9" + inkscape:collect="always"> + <stop + id="stop5657-5" + offset="0" + style="stop-color:#2e3436;stop-opacity:1" /> + <stop + id="stop5659-1" + offset="1" + style="stop-color:#707e83;stop-opacity:0;" /> + </linearGradient> + <linearGradient + y2="-36.569096" + x2="-219.25159" + y1="-43.842201" + x1="-219.25159" + gradientTransform="matrix(-0.78353222,0,0,0.63823472,-176.89854,41.230437)" + gradientUnits="userSpaceOnUse" + id="linearGradient5758" + xlink:href="#linearGradient5853" + inkscape:collect="always" /> + <linearGradient + id="linearGradient5853" + inkscape:collect="always"> + <stop + id="stop5855" + offset="0" + style="stop-color:#888a85;stop-opacity:1" /> + <stop + id="stop5857" + offset="1" + style="stop-color:#555753;stop-opacity:1" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5626" + id="linearGradient5632" + x1="-25.743168" + y1="-243.09763" + x2="-23.90864" + y2="-240.62437" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.34459514,0,0,0.65761929,31.073819,161.60062)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5626"> + <stop + style="stop-color:#babdb6;stop-opacity:1;" + offset="0" + id="stop5628" /> + <stop + style="stop-color:#babdb6;stop-opacity:0;" + offset="1" + id="stop5630" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4971" + id="linearGradient4977" + x1="-105.74262" + y1="-282.20282" + x2="-102.94624" + y2="-282.20282" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient4971"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop4973" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop4975" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4786" + id="linearGradient4792" + x1="-106.91152" + y1="280.91522" + x2="-101.28181" + y2="282.32028" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.40915917,0,0,0.50230701,64.794864,-139.49239)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient4786"> + <stop + style="stop-color:#555753;stop-opacity:1" + offset="0" + id="stop4788" /> + <stop + style="stop-color:#000000;stop-opacity:1" + offset="1" + id="stop4790" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5206" + id="linearGradient5212" + x1="-304.49771" + y1="-142.89493" + x2="-262.4259" + y2="-143.92334" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5206"> + <stop + style="stop-color:#ffffff;stop-opacity:1" + offset="0" + id="stop5208" /> + <stop + style="stop-color:#dededd;stop-opacity:0;" + offset="1" + id="stop5210" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5388" + id="linearGradient5394" + x1="-283.80222" + y1="-143.74782" + x2="-283.80222" + y2="-141.12897" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.52812148,0,0,0.55524807,152.92759,81.21193)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5388"> + <stop + style="stop-color:#555753;stop-opacity:1" + offset="0" + id="stop5390" /> + <stop + style="stop-color:#000000;stop-opacity:1" + offset="1" + id="stop5392" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5376" + id="radialGradient5382" + cx="-284.44626" + cy="-153.18155" + fx="-284.44626" + fy="-153.18155" + r="17.449057" + gradientTransform="matrix(0.39680407,0.00462157,-0.0039183,0.50203811,114.94145,79.306255)" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5376"> + <stop + style="stop-color:#babdb6;stop-opacity:1" + offset="0" + id="stop5378" /> + <stop + style="stop-color:#434542;stop-opacity:1" + offset="1" + id="stop5380" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3617" + id="linearGradient3623" + x1="1.421198" + y1="19.01931" + x2="1.421198" + y2="34.927505" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0323022,0,0,0.62872826,-5.0367759,-2.8264081)" /> + <linearGradient + id="linearGradient5853-9" + inkscape:collect="always"> + <stop + id="stop5855-9" + offset="0" + style="stop-color:#888a85;stop-opacity:1" /> + <stop + id="stop5857-6" + offset="1" + style="stop-color:#555753;stop-opacity:1" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5655-9-5" + id="linearGradient2892-5" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.77127394,0,0,0.69309231,220.91736,97.227704)" + x1="-300.82822" + y1="-126.31032" + x2="-300.82822" + y2="-114.83224" /> + <linearGradient + id="linearGradient5655-9-5" + inkscape:collect="always"> + <stop + id="stop5657-5-8" + offset="0" + style="stop-color:#2e3436;stop-opacity:1" /> + <stop + id="stop5659-1-7" + offset="1" + style="stop-color:#707e83;stop-opacity:0;" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3617-3" + id="linearGradient2894-1" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.77739212,0,0,0.56621027,-10.810779,-1.5472934)" + x1="1.421198" + y1="19.01931" + x2="1.421198" + y2="34.927505" /> + <linearGradient + inkscape:collect="always" + id="linearGradient3617-3"> + <stop + style="stop-color:#2e3436;stop-opacity:1;" + offset="0" + id="stop3619-4" /> + <stop + style="stop-color:#0b0c0d;stop-opacity:1" + offset="1" + id="stop3621-6" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5043-9-6-1-1" + id="radialGradient2896-0" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-0.48374104,0.92161718,1.0869289,0.53973041,-4.6726884,359.09453)" + cx="-306.03387" + cy="-120.8595" + fx="-306.03387" + fy="-120.8595" + r="3.03685" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5043-9-6-1-1"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop5045-4-8-8-6" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop5047-1-2-6-8" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5677-7-2" + id="linearGradient2898-1" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.74926868,0,0,0.67528296,-215.80931,95.061921)" + x1="305.89481" + y1="-120.46718" + x2="306.04715" + y2="-120.46718" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5677-7-2"> + <stop + style="stop-color:#ff2de7;stop-opacity:1" + offset="0" + id="stop5679-1-6" /> + <stop + style="stop-color:#7b009b;stop-opacity:1" + offset="1" + id="stop5681-4-3" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4555-8" + id="linearGradient2900-3" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.69961638,0,0,0.83812243,167.85054,51.827596)" + x1="-257.51324" + y1="-50.301723" + x2="-257.49792" + y2="-51.439991" /> + <linearGradient + id="linearGradient4555-8" + inkscape:collect="always"> + <stop + id="stop4557-5" + offset="0" + style="stop-color:#545652;stop-opacity:1;" /> + <stop + id="stop4559-4" + offset="1" + style="stop-color:#80837d;stop-opacity:1" /> + </linearGradient> + <linearGradient + y2="-36.569096" + x2="-219.25159" + y1="-43.842201" + x1="-219.25159" + gradientTransform="matrix(0.736656,0,0,0.58794323,172.57296,38.700092)" + gradientUnits="userSpaceOnUse" + id="linearGradient2944" + xlink:href="#linearGradient5853-9" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4555-8" + id="linearGradient3017" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.99999661,0,0,0.84879369,263.57748,52.023106)" + x1="-257.51324" + y1="-50.301723" + x2="-257.49792" + y2="-51.439991" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5853" + id="linearGradient3052" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.78353222,0,0,0.63823472,182.7448,41.268763)" + x1="-219.25159" + y1="-43.842201" + x2="-219.25159" + y2="-36.569096" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5655-9" + id="linearGradient3054" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.52563657,0,0,0.74896722,147.28005,104.29678)" + x1="-300.82822" + y1="-126.31032" + x2="-300.82822" + y2="-114.83224" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3617" + id="linearGradient3056" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0323022,0,0,0.62872826,-10.883035,-2.7880825)" + x1="1.421198" + y1="19.01931" + x2="1.421198" + y2="34.927505" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5043-9-6-1" + id="radialGradient3058" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-0.48374104,0.92161718,1.0869289,0.53973041,-4.6685612,359.13287)" + cx="-306.03387" + cy="-120.8595" + fx="-306.03387" + fy="-120.8595" + r="3.03685" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5677-7" + id="linearGradient3060" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0038316,0,0,0.67291737,-293.75765,95.247398)" + x1="305.89481" + y1="-120.46718" + x2="306.04715" + y2="-120.46718" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4555-8" + id="linearGradient3062" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.97519982,0,0,0.84415901,263.06047,51.763511)" + x1="-257.51324" + y1="-50.301723" + x2="-257.49792" + y2="-51.439991" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="45.254834" + inkscape:cx="11.202323" + inkscape:cy="4.1597985" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:grid-bbox="true" + inkscape:document-units="px" + inkscape:window-width="1280" + inkscape:window-height="752" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:snap-global="false"> + <inkscape:grid + type="xygrid" + id="grid2855" + empspacing="5" + visible="true" + enabled="true" /> + </sodipodi:namedview> + <metadata + id="metadata3884"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:label="Layer 1" + inkscape:groupmode="layer" + transform="translate(8.5714283,-0.14285715)"> + <rect + style="fill:#cc0000;fill-opacity:0;stroke:none" + id="rect5861" + width="24.790443" + height="24.790268" + x="-9.2806616" + y="-0.527372" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" + d="m -0.48273876,1.0629519 c -3.52465864,0 -6.05863694,2.8300983 -6.05863694,6.3428228 l 0,3.3085963 c 0,0.37141 0.035895,0.72774 0.097163,1.081347 l 0.9991275,0 c -0.065659,-0.350767 -0.097169,-0.710737 -0.097169,-1.081347 l 0,-3.3085963 c 0,-3.2355382 2.6134218,-5.8263589 5.85995222,-5.8263589 l 5.78571128,0 c 3.2465298,0 5.3244047,2.5908207 5.3244047,5.8263589 l 0,3.3085963 c 0,0.37061 -0.03151,0.73058 -0.09716,1.081347 l 1.009535,0 c 0.06128,-0.353607 0.09717,-0.709937 0.09717,-1.081347 l 0,-3.3085963 c 0,-3.5127245 -2.5943893,-6.3428228 -6.1190468,-6.3428228 l -6.80105096,0 z" + id="rect5549" + sodipodi:nodetypes="ccccccccccccccccc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="fill:url(#radialGradient5382);fill-opacity:1;stroke:none" + d="M -6.1124165,5.0092681 C -6.2937011,4.857301 -6.3656082,4.6552646 -6.3508656,4.3393305 c 0.015145,-0.3246281 0.074427,-0.4224572 0.5782217,-0.9542902 2.4612924,-2.59830661 7.0821101,-3.80012252 11.4352585,-2.9741749 1.9884343,0.37728499 3.8595526,1.2045329 5.1621134,2.2822431 0.700934,0.5799423 1.227547,1.2049406 1.287114,1.5275892 0.08117,0.4396387 -0.165477,0.8816512 -0.492195,0.8820587 C 11.511915,5.1028987 11.414663,5.0482236 11.192716,4.8627671 8.7626236,2.8321186 4.9304322,2.0520483 1.1786312,2.4838271 -1.3654872,2.7766089 -3.5952197,3.4219776 -5.3219525,4.7999737 -5.7481258,5.1400754 -5.9063913,5.1819745 -6.1124165,5.0092681 l 0,0 z" + id="path5202" + sodipodi:nodetypes="cssssssssscc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:url(#linearGradient5394);fill-opacity:1;stroke:none;stroke-width:1.36950052;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" + d="M 2.2314285,0.15982254 C 1.5681819,0.18486471 0.90718512,0.24568013 0.26747679,0.33930091 -2.2757235,0.71150594 -4.5645706,1.6180373 -6.0369733,2.9956022 c -0.00903,0.00844 -0.024029,0.00944 -0.033007,0.017935 -0.012792,0.016513 -0.023888,0.034598 -0.033008,0.053804 -0.4403793,0.3375798 -0.5877622,0.9911622 -0.3135721,1.5076317 0.2695585,0.5077469 0.8359264,0.8666088 1.3203037,0.6391068 0.00871,-0.00389 0.024399,0.00444 0.033008,0 0.023394,-0.00852 0.045687,-0.020622 0.066015,-0.035869 0.00423,-0.00222 0.012306,0.00278 0.016478,0 0.00998,-0.00699 0.022974,-0.010993 0.033007,-0.017935 0.00618,-0.00389 0.010301,-0.013659 0.016478,-0.017935 3.3537088,-2.3260348 9.7006937,-2.6339833 14.0447311,-0.7955125 0.6082274,0.2574074 1.1553506,0.4018799 1.6338756,0.7237182 0.0052,0.00623 0.01073,0.012223 0.01649,0.017935 0.0063,0.00389 0.01023,0.013659 0.01649,0.017935 0.01419,0.020208 0.0309,0.038354 0.04948,0.053804 0.502483,0.3154924 1.162228,-0.038811 1.452335,-0.5852639 0.247807,-0.4667638 0.146702,-1.0421673 -0.198045,-1.399947 -0.0047,-0.012372 -0.01023,-0.024385 -0.01649,-0.035924 -0.0032,-0.00278 -0.01325,0.00278 -0.01648,0 -0.0052,-0.00623 -0.01075,-0.012222 -0.01649,-0.017935 -0.01451,-0.013159 -0.01774,-0.041477 -0.03301,-0.053804 1.69e-4,-0.00598 1.69e-4,-0.011958 0,-0.017935 C 11.063525,2.1438018 9.7288832,1.420058 8.123231,0.9136051 6.881406,0.52191092 5.5618524,0.2860859 4.2283351,0.19568594 3.5615763,0.15048887 2.8946224,0.13475869 2.2313757,0.15981702 l 5.28e-5,5.52e-6 z M 3.2216546,1.118851 C 4.8434103,1.1445592 6.47508,1.381683 7.9747488,1.8547154 l 0.016477,0 c 1.4589832,0.4622162 2.6653182,0.7504142 3.5153102,1.5177947 0.02512,0.053659 0.06618,0.098318 0.115525,0.1256361 0.255306,0.1602946 0.345445,0.5120662 0.198047,0.7897126 -0.125292,0.2360026 -0.381595,0.5148033 -0.610642,0.4416827 -0.02417,-0.023244 -0.05231,-0.041582 -0.08252,-0.053803 C 10.586764,4.2971254 9.9816422,3.6699592 9.2950271,3.3793701 7.0201121,2.4165922 4.2797424,2.0800172 1.6537692,2.2613612 -0.92727635,2.439607 -3.385666,3.4217546 -5.1622985,4.6398355 c -0.00423,0.00278 -0.012516,-0.00278 -0.016478,0 -0.011369,0.00513 -0.022407,0.011131 -0.033007,0.017935 -0.011368,0.00513 -0.022407,0.011131 -0.033008,0.017935 -0.00629,0.00444 -0.010248,0.013549 -0.016478,0.017935 -0.2519456,0.1440146 -0.5659508,-0.1350971 -0.709663,-0.4057859 -0.1414944,-0.2665301 -0.066845,-0.6038212 0.165038,-0.7717671 0.011365,-0.00513 0.022402,-0.011131 0.033007,-0.017935 0.039117,-0.020455 0.073468,-0.051585 0.099022,-0.089739 C -4.3207441,2.1583496 -2.1238168,1.6579803 0.33351644,1.2983351 1.2668605,1.1617328 2.2486277,1.1033985 3.2216811,1.1188565 l -2.65e-5,-5.5e-6 z" + id="path5194" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" + sodipodi:nodetypes="csssssssssssssssssssssscssccccccsssssssssssssscscc" /> + <path + sodipodi:type="arc" + style="fill:none;stroke:url(#linearGradient5212);stroke-width:1.91763961;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + id="path5204" + sodipodi:cx="-285.49203" + sodipodi:cy="-135.7495" + sodipodi:rx="18.775068" + sodipodi:ry="9.3875341" + d="m -300.83968,-141.15673 a 18.775068,9.3875341 0 0 1 30.74554,0.0358" + transform="matrix(-0.53178943,0,0,0.51135941,-148.92763,75.903492)" + sodipodi:start="3.7554218" + sodipodi:end="5.6740176" + sodipodi:open="true" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" + d="m -6.5611649,17.801468 0,0.01611 c 0,3.512724 2.8301183,6.342822 6.34286708,6.342822 L 4.5590266,23.541443 4.7566141,22.863449 0.3433825,23.189216 c -3.2355607,0 -5.8263995,-2.470095 -5.8263995,-5.705633 l 0,-0.01611 -1.0781479,0.333995 z" + id="rect5551" + sodipodi:nodetypes="ccccccccc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + ry="1.0211699" + rx="1.0211699" + y="-0.10164929" + x="21.63047" + height="5.0177956" + width="2.0423398" + id="rect4784" + style="fill:#555753;fill-opacity:1;stroke:url(#linearGradient4792);stroke-width:0.99999988;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + transform="matrix(0,1,1,0,0,0)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + sodipodi:type="inkscape:offset" + inkscape:radius="-1.0081301" + inkscape:original="M -103.46875 -287.5 C -104.58751 -287.5 -105.5 -286.58751 -105.5 -285.46875 L -105.5 -279.53125 C -105.5 -278.41249 -104.58751 -277.5 -103.46875 -277.5 L -102.53125 -277.5 C -101.41249 -277.5 -100.5 -278.41249 -100.5 -279.53125 L -100.5 -285.46875 C -100.5 -286.58751 -101.41249 -287.5 -102.53125 -287.5 L -103.46875 -287.5 z " + style="opacity:0.6081081;fill:none;stroke:url(#linearGradient4977);stroke-width:3.76500607;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + id="path4967" + d="m -103.46875,-286.5 c -0.57059,0 -1.03125,0.46066 -1.03125,1.03125 l 0,5.9375 c 0,0.57059 0.46066,1.03125 1.03125,1.03125 l 0.9375,0 c 0.57059,0 1.03125,-0.46066 1.03125,-1.03125 l 0,-5.9375 c 0,-0.57059 -0.46066,-1.03125 -1.03125,-1.03125 l -0.9375,0 z" + transform="matrix(0,0.1801693,0.39155051,0,113.06595,41.440494)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + transform="matrix(0,1,1,0,0,0)" + style="fill:url(#linearGradient5632);fill-opacity:1;stroke:none" + id="rect5572" + width="1.0458575" + height="3.8989625" + x="22.13949" + y="0.49657452" + rx="0.99727494" + ry="0.99727511" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient5758);stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + d="m -5.3765984,9.6362166 c -1.49077,0 -2.6907551,1.0642814 -2.6907551,2.3864794 l 0,4.192469 c 0,1.322192 1.1999851,2.38648 2.6907551,2.38648 l 1.2651311,0.0013 0.015891,-8.9736896 c -0.9561106,0.024323 -0.3962926,0.00686 -1.2810216,0.00686 l 0,-5.62e-5 1e-7,6.63e-5 z" + id="path5707" + sodipodi:nodetypes="ccccccccc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient5719-5);fill-opacity:1;stroke:none" + id="rect5709" + width="0.98004872" + height="8.9388952" + x="-5.5517335" + y="9.1426477" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient3623);fill-opacity:1;stroke:none" + id="rect5711" + width="2.0254388" + height="10.001933" + x="-4.5823889" + y="9.1315699" + rx="1.0133103" + ry="1.0133103" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + sodipodi:nodetypes="cccccccc" + id="path5713" + d="m -5.8661826,9.9499715 c -0.9407715,0 -1.698042,0.8558425 -1.698042,1.9190855 l 0,3.371356 c 0,1.063237 0.7572705,1.919079 1.698042,1.919079 l 1.2401832,-0.01722 0,-7.19223 c -0.6033633,0.019548 -0.6818611,0 -1.2401832,0 l 0,-7.25e-5 z" + style="opacity:0.5;fill:url(#radialGradient5721-4);fill-opacity:1;stroke:none" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient5723-8);fill-opacity:1;stroke:none" + id="rect5715" + width="2.0024893" + height="5.9961619" + x="6.5585375" + y="11.146509" + rx="0.99742299" + ry="0.99742311" + transform="scale(-1,1)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + sodipodi:type="arc" + style="fill:#dee1e3;fill-opacity:1;stroke:none" + id="path5859" + sodipodi:cx="-244.01906" + sodipodi:cy="-24.045986" + sodipodi:rx="0.83739835" + sodipodi:ry="1.3739837" + d="m -243.18166,-24.045986 a 0.83739835,1.3739837 0 1 1 -1.6748,0 0.83739835,1.3739837 0 1 1 1.6748,0 z" + transform="matrix(0.62336294,0,0,0.3800951,153.07483,31.796377)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient4984);fill-opacity:1;stroke:none" + id="rect5811-4" + width="1.042106" + height="2.3800838" + x="23.119368" + y="-1.4279883" + rx="0.50398123" + ry="0.50398123" + transform="matrix(0,1,-1,0,0,0)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + y="-0.527372" + x="-9.2806616" + height="24.790268" + width="24.790443" + id="rect5863" + style="fill:#ffffff;fill-opacity:0;stroke:none" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> + <rect + transform="scale(-1,1)" + style="fill:url(#linearGradient3017);fill-opacity:1;stroke:none" + id="rect3015" + width="1.0079591" + height="3.0484221" + x="5.5438328" + y="8.1219101" + rx="0.50398123" + ry="0.50398123" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + sodipodi:nodetypes="ccccccccc" + id="path3040" + d="m 11.222858,9.6745422 c 1.49077,0 2.690755,1.0642818 2.690755,2.3864798 l 0,4.192469 c 0,1.322192 -1.199985,2.38648 -2.690755,2.38648 l -1.2651315,0.0013 -0.015891,-8.97369 c 0.9561105,0.024323 0.3962925,0.00686 1.2810215,0.00686 l 0,-5.62e-5 0,6.63e-5 z" + style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient3052);stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" /> + <rect + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + y="9.1809731" + x="-11.397993" + height="8.9388952" + width="0.98004872" + id="rect3042" + style="fill:url(#linearGradient3054);fill-opacity:1;stroke:none" + transform="scale(-1,1)" /> + <rect + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + ry="1.0133103" + rx="1.0133103" + y="9.1698952" + x="-10.428648" + height="10.001933" + width="2.0254388" + id="rect3044" + style="fill:url(#linearGradient3056);fill-opacity:1;stroke:none" + transform="scale(-1,1)" /> + <path + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + style="opacity:0.5;fill:url(#radialGradient3058);fill-opacity:1;stroke:none" + d="m 11.712442,9.9882971 c 0.940771,0 1.698042,0.8558429 1.698042,1.9190859 l 0,3.371356 c 0,1.063237 -0.757271,1.919079 -1.698042,1.919079 l -1.240183,-0.01722 0,-7.1922304 c 0.603363,0.019548 0.681861,0 1.240183,0 l 0,-7.25e-5 z" + id="path3046" + sodipodi:nodetypes="cccccccc" /> + <rect + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + ry="0.99742311" + rx="0.99742299" + y="11.184834" + x="12.404797" + height="5.9961619" + width="2.0024893" + id="rect3048" + style="fill:url(#linearGradient3060);fill-opacity:1;stroke:none" /> + <rect + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + ry="0.50398123" + rx="0.50398123" + y="8.1020288" + x="11.425255" + height="3.0317767" + width="0.98296487" + id="rect3050" + style="fill:url(#linearGradient3062);fill-opacity:1;stroke:none" /> + </g> +</svg>
--- a/pidgin/pixmaps/toolbar/22/scalable/voice-call.svg Thu Aug 13 17:40:00 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,795 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cc="http://creativecommons.org/ns#" - xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:svg="http://www.w3.org/2000/svg" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="24" - height="24" - id="svg3879" - sodipodi:version="0.32" - inkscape:version="0.46+devel r20974" - version="1.0" - sodipodi:docname="voice-24.svg" - inkscape:output_extension="org.inkscape.output.svg.inkscape"> - <defs - id="defs3881"> - <linearGradient - inkscape:collect="always" - id="linearGradient3617"> - <stop - style="stop-color:#2e3436;stop-opacity:1;" - offset="0" - id="stop3619" /> - <stop - style="stop-color:#0b0c0d;stop-opacity:1" - offset="1" - id="stop3621" /> - </linearGradient> - <linearGradient - gradientTransform="matrix(1.0338738,0,0,1.022703,49.113708,-252.03388)" - inkscape:collect="always" - xlink:href="#linearGradient4976" - id="linearGradient4984" - x1="-24.687374" - y1="245.84587" - x2="-24.687374" - y2="247.61009" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient4976"> - <stop - style="stop-color:#555753;stop-opacity:1;" - offset="0" - id="stop4978" /> - <stop - style="stop-color:#808080;stop-opacity:1" - offset="1" - id="stop4980" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5677-7" - id="linearGradient5723-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0038316,0,0,0.67291737,-299.60391,95.209072)" - x1="305.89481" - y1="-120.46718" - x2="306.04715" - y2="-120.46718" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5677-7"> - <stop - style="stop-color:#ff2de7;stop-opacity:1" - offset="0" - id="stop5679-1" /> - <stop - style="stop-color:#7b009b;stop-opacity:1" - offset="1" - id="stop5681-4" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5043-9-6-1" - id="radialGradient5721-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.48374104,0.92161718,-1.0869289,0.53973041,10.51482,359.09454)" - cx="-306.03387" - cy="-120.8595" - fx="-306.03387" - fy="-120.8595" - r="3.03685" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5043-9-6-1"> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0" - id="stop5045-4-8-8" /> - <stop - style="stop-color:#ffffff;stop-opacity:0;" - offset="1" - id="stop5047-1-2-6" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5655-9" - id="linearGradient5719-5" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.52563657,0,0,0.74896722,153.12631,104.25845)" - x1="-300.82822" - y1="-126.31032" - x2="-300.82822" - y2="-114.83224" /> - <linearGradient - id="linearGradient5655-9" - inkscape:collect="always"> - <stop - id="stop5657-5" - offset="0" - style="stop-color:#2e3436;stop-opacity:1" /> - <stop - id="stop5659-1" - offset="1" - style="stop-color:#707e83;stop-opacity:0;" /> - </linearGradient> - <linearGradient - y2="-36.569096" - x2="-219.25159" - y1="-43.842201" - x1="-219.25159" - gradientTransform="matrix(-0.78353222,0,0,0.63823472,-176.89854,41.230437)" - gradientUnits="userSpaceOnUse" - id="linearGradient5758" - xlink:href="#linearGradient5853" - inkscape:collect="always" /> - <linearGradient - id="linearGradient5853" - inkscape:collect="always"> - <stop - id="stop5855" - offset="0" - style="stop-color:#888a85;stop-opacity:1" /> - <stop - id="stop5857" - offset="1" - style="stop-color:#555753;stop-opacity:1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5626" - id="linearGradient5632" - x1="-25.743168" - y1="-243.09763" - x2="-23.90864" - y2="-240.62437" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.34459514,0,0,0.65761929,31.073819,161.60062)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5626"> - <stop - style="stop-color:#babdb6;stop-opacity:1;" - offset="0" - id="stop5628" /> - <stop - style="stop-color:#babdb6;stop-opacity:0;" - offset="1" - id="stop5630" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4971" - id="linearGradient4977" - x1="-105.74262" - y1="-282.20282" - x2="-102.94624" - y2="-282.20282" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient4971"> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0" - id="stop4973" /> - <stop - style="stop-color:#ffffff;stop-opacity:0;" - offset="1" - id="stop4975" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4786" - id="linearGradient4792" - x1="-106.91152" - y1="280.91522" - x2="-101.28181" - y2="282.32028" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.40915917,0,0,0.50230701,64.794864,-139.49239)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient4786"> - <stop - style="stop-color:#555753;stop-opacity:1" - offset="0" - id="stop4788" /> - <stop - style="stop-color:#000000;stop-opacity:1" - offset="1" - id="stop4790" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5206" - id="linearGradient5212" - x1="-304.49771" - y1="-142.89493" - x2="-262.4259" - y2="-143.92334" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5206"> - <stop - style="stop-color:#ffffff;stop-opacity:1" - offset="0" - id="stop5208" /> - <stop - style="stop-color:#dededd;stop-opacity:0;" - offset="1" - id="stop5210" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5388" - id="linearGradient5394" - x1="-283.80222" - y1="-143.74782" - x2="-283.80222" - y2="-141.12897" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.52812148,0,0,0.55524807,152.92759,81.21193)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5388"> - <stop - style="stop-color:#555753;stop-opacity:1" - offset="0" - id="stop5390" /> - <stop - style="stop-color:#000000;stop-opacity:1" - offset="1" - id="stop5392" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5376" - id="radialGradient5382" - cx="-284.44626" - cy="-153.18155" - fx="-284.44626" - fy="-153.18155" - r="17.449057" - gradientTransform="matrix(0.39680407,0.00462157,-0.0039183,0.50203811,114.94145,79.306255)" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5376"> - <stop - style="stop-color:#babdb6;stop-opacity:1" - offset="0" - id="stop5378" /> - <stop - style="stop-color:#434542;stop-opacity:1" - offset="1" - id="stop5380" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3617" - id="linearGradient3623" - x1="1.421198" - y1="19.01931" - x2="1.421198" - y2="34.927505" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0323022,0,0,0.62872826,-5.0367759,-2.8264081)" /> - <linearGradient - id="linearGradient5853-9" - inkscape:collect="always"> - <stop - id="stop5855-9" - offset="0" - style="stop-color:#888a85;stop-opacity:1" /> - <stop - id="stop5857-6" - offset="1" - style="stop-color:#555753;stop-opacity:1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5655-9-5" - id="linearGradient2892-5" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.77127394,0,0,0.69309231,220.91736,97.227704)" - x1="-300.82822" - y1="-126.31032" - x2="-300.82822" - y2="-114.83224" /> - <linearGradient - id="linearGradient5655-9-5" - inkscape:collect="always"> - <stop - id="stop5657-5-8" - offset="0" - style="stop-color:#2e3436;stop-opacity:1" /> - <stop - id="stop5659-1-7" - offset="1" - style="stop-color:#707e83;stop-opacity:0;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3617-3" - id="linearGradient2894-1" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.77739212,0,0,0.56621027,-10.810779,-1.5472934)" - x1="1.421198" - y1="19.01931" - x2="1.421198" - y2="34.927505" /> - <linearGradient - inkscape:collect="always" - id="linearGradient3617-3"> - <stop - style="stop-color:#2e3436;stop-opacity:1;" - offset="0" - id="stop3619-4" /> - <stop - style="stop-color:#0b0c0d;stop-opacity:1" - offset="1" - id="stop3621-6" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5043-9-6-1-1" - id="radialGradient2896-0" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(-0.48374104,0.92161718,1.0869289,0.53973041,-4.6726884,359.09453)" - cx="-306.03387" - cy="-120.8595" - fx="-306.03387" - fy="-120.8595" - r="3.03685" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5043-9-6-1-1"> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0" - id="stop5045-4-8-8-6" /> - <stop - style="stop-color:#ffffff;stop-opacity:0;" - offset="1" - id="stop5047-1-2-6-8" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5677-7-2" - id="linearGradient2898-1" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.74926868,0,0,0.67528296,-215.80931,95.061921)" - x1="305.89481" - y1="-120.46718" - x2="306.04715" - y2="-120.46718" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5677-7-2"> - <stop - style="stop-color:#ff2de7;stop-opacity:1" - offset="0" - id="stop5679-1-6" /> - <stop - style="stop-color:#7b009b;stop-opacity:1" - offset="1" - id="stop5681-4-3" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4555-8" - id="linearGradient2900-3" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.69961638,0,0,0.83812243,167.85054,51.827596)" - x1="-257.51324" - y1="-50.301723" - x2="-257.49792" - y2="-51.439991" /> - <linearGradient - id="linearGradient4555-8" - inkscape:collect="always"> - <stop - id="stop4557-5" - offset="0" - style="stop-color:#545652;stop-opacity:1;" /> - <stop - id="stop4559-4" - offset="1" - style="stop-color:#80837d;stop-opacity:1" /> - </linearGradient> - <linearGradient - y2="-36.569096" - x2="-219.25159" - y1="-43.842201" - x1="-219.25159" - gradientTransform="matrix(0.736656,0,0,0.58794323,172.57296,38.700092)" - gradientUnits="userSpaceOnUse" - id="linearGradient2944" - xlink:href="#linearGradient5853-9" - inkscape:collect="always" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4555-8" - id="linearGradient3017" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.99999661,0,0,0.84879369,263.57748,52.023106)" - x1="-257.51324" - y1="-50.301723" - x2="-257.49792" - y2="-51.439991" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5853" - id="linearGradient3052" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.78353222,0,0,0.63823472,182.7448,41.268763)" - x1="-219.25159" - y1="-43.842201" - x2="-219.25159" - y2="-36.569096" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5655-9" - id="linearGradient3054" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.52563657,0,0,0.74896722,147.28005,104.29678)" - x1="-300.82822" - y1="-126.31032" - x2="-300.82822" - y2="-114.83224" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3617" - id="linearGradient3056" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0323022,0,0,0.62872826,-10.883035,-2.7880825)" - x1="1.421198" - y1="19.01931" - x2="1.421198" - y2="34.927505" /> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5043-9-6-1" - id="radialGradient3058" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(-0.48374104,0.92161718,1.0869289,0.53973041,-4.6685612,359.13287)" - cx="-306.03387" - cy="-120.8595" - fx="-306.03387" - fy="-120.8595" - r="3.03685" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5677-7" - id="linearGradient3060" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0038316,0,0,0.67291737,-293.75765,95.247398)" - x1="305.89481" - y1="-120.46718" - x2="306.04715" - y2="-120.46718" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4555-8" - id="linearGradient3062" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.97519982,0,0,0.84415901,263.06047,51.763511)" - x1="-257.51324" - y1="-50.301723" - x2="-257.49792" - y2="-51.439991" /> - </defs> - <sodipodi:namedview - id="base" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:pageopacity="0.0" - inkscape:pageshadow="2" - inkscape:zoom="45.254834" - inkscape:cx="11.202323" - inkscape:cy="4.1597985" - inkscape:current-layer="layer1" - showgrid="true" - inkscape:grid-bbox="true" - inkscape:document-units="px" - inkscape:window-width="1280" - inkscape:window-height="752" - inkscape:window-x="0" - inkscape:window-y="0" - inkscape:snap-global="false"> - <inkscape:grid - type="xygrid" - id="grid2855" - empspacing="5" - visible="true" - enabled="true" /> - </sodipodi:namedview> - <metadata - id="metadata3884"> - <rdf:RDF> - <cc:Work - rdf:about=""> - <dc:format>image/svg+xml</dc:format> - <dc:type - rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> - </cc:Work> - </rdf:RDF> - </metadata> - <g - id="layer1" - inkscape:label="Layer 1" - inkscape:groupmode="layer" - transform="translate(8.5714283,-0.14285715)"> - <rect - style="fill:#cc0000;fill-opacity:0;stroke:none" - id="rect5861" - width="24.790443" - height="24.790268" - x="-9.2806616" - y="-0.527372" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" - d="m -0.48273876,1.0629519 c -3.52465864,0 -6.05863694,2.8300983 -6.05863694,6.3428228 l 0,3.3085963 c 0,0.37141 0.035895,0.72774 0.097163,1.081347 l 0.9991275,0 c -0.065659,-0.350767 -0.097169,-0.710737 -0.097169,-1.081347 l 0,-3.3085963 c 0,-3.2355382 2.6134218,-5.8263589 5.85995222,-5.8263589 l 5.78571128,0 c 3.2465298,0 5.3244047,2.5908207 5.3244047,5.8263589 l 0,3.3085963 c 0,0.37061 -0.03151,0.73058 -0.09716,1.081347 l 1.009535,0 c 0.06128,-0.353607 0.09717,-0.709937 0.09717,-1.081347 l 0,-3.3085963 c 0,-3.5127245 -2.5943893,-6.3428228 -6.1190468,-6.3428228 l -6.80105096,0 z" - id="rect5549" - sodipodi:nodetypes="ccccccccccccccccc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="fill:url(#radialGradient5382);fill-opacity:1;stroke:none" - d="M -6.1124165,5.0092681 C -6.2937011,4.857301 -6.3656082,4.6552646 -6.3508656,4.3393305 c 0.015145,-0.3246281 0.074427,-0.4224572 0.5782217,-0.9542902 2.4612924,-2.59830661 7.0821101,-3.80012252 11.4352585,-2.9741749 1.9884343,0.37728499 3.8595526,1.2045329 5.1621134,2.2822431 0.700934,0.5799423 1.227547,1.2049406 1.287114,1.5275892 0.08117,0.4396387 -0.165477,0.8816512 -0.492195,0.8820587 C 11.511915,5.1028987 11.414663,5.0482236 11.192716,4.8627671 8.7626236,2.8321186 4.9304322,2.0520483 1.1786312,2.4838271 -1.3654872,2.7766089 -3.5952197,3.4219776 -5.3219525,4.7999737 -5.7481258,5.1400754 -5.9063913,5.1819745 -6.1124165,5.0092681 l 0,0 z" - id="path5202" - sodipodi:nodetypes="cssssssssscc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:url(#linearGradient5394);fill-opacity:1;stroke:none;stroke-width:1.36950052;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" - d="M 2.2314285,0.15982254 C 1.5681819,0.18486471 0.90718512,0.24568013 0.26747679,0.33930091 -2.2757235,0.71150594 -4.5645706,1.6180373 -6.0369733,2.9956022 c -0.00903,0.00844 -0.024029,0.00944 -0.033007,0.017935 -0.012792,0.016513 -0.023888,0.034598 -0.033008,0.053804 -0.4403793,0.3375798 -0.5877622,0.9911622 -0.3135721,1.5076317 0.2695585,0.5077469 0.8359264,0.8666088 1.3203037,0.6391068 0.00871,-0.00389 0.024399,0.00444 0.033008,0 0.023394,-0.00852 0.045687,-0.020622 0.066015,-0.035869 0.00423,-0.00222 0.012306,0.00278 0.016478,0 0.00998,-0.00699 0.022974,-0.010993 0.033007,-0.017935 0.00618,-0.00389 0.010301,-0.013659 0.016478,-0.017935 3.3537088,-2.3260348 9.7006937,-2.6339833 14.0447311,-0.7955125 0.6082274,0.2574074 1.1553506,0.4018799 1.6338756,0.7237182 0.0052,0.00623 0.01073,0.012223 0.01649,0.017935 0.0063,0.00389 0.01023,0.013659 0.01649,0.017935 0.01419,0.020208 0.0309,0.038354 0.04948,0.053804 0.502483,0.3154924 1.162228,-0.038811 1.452335,-0.5852639 0.247807,-0.4667638 0.146702,-1.0421673 -0.198045,-1.399947 -0.0047,-0.012372 -0.01023,-0.024385 -0.01649,-0.035924 -0.0032,-0.00278 -0.01325,0.00278 -0.01648,0 -0.0052,-0.00623 -0.01075,-0.012222 -0.01649,-0.017935 -0.01451,-0.013159 -0.01774,-0.041477 -0.03301,-0.053804 1.69e-4,-0.00598 1.69e-4,-0.011958 0,-0.017935 C 11.063525,2.1438018 9.7288832,1.420058 8.123231,0.9136051 6.881406,0.52191092 5.5618524,0.2860859 4.2283351,0.19568594 3.5615763,0.15048887 2.8946224,0.13475869 2.2313757,0.15981702 l 5.28e-5,5.52e-6 z M 3.2216546,1.118851 C 4.8434103,1.1445592 6.47508,1.381683 7.9747488,1.8547154 l 0.016477,0 c 1.4589832,0.4622162 2.6653182,0.7504142 3.5153102,1.5177947 0.02512,0.053659 0.06618,0.098318 0.115525,0.1256361 0.255306,0.1602946 0.345445,0.5120662 0.198047,0.7897126 -0.125292,0.2360026 -0.381595,0.5148033 -0.610642,0.4416827 -0.02417,-0.023244 -0.05231,-0.041582 -0.08252,-0.053803 C 10.586764,4.2971254 9.9816422,3.6699592 9.2950271,3.3793701 7.0201121,2.4165922 4.2797424,2.0800172 1.6537692,2.2613612 -0.92727635,2.439607 -3.385666,3.4217546 -5.1622985,4.6398355 c -0.00423,0.00278 -0.012516,-0.00278 -0.016478,0 -0.011369,0.00513 -0.022407,0.011131 -0.033007,0.017935 -0.011368,0.00513 -0.022407,0.011131 -0.033008,0.017935 -0.00629,0.00444 -0.010248,0.013549 -0.016478,0.017935 -0.2519456,0.1440146 -0.5659508,-0.1350971 -0.709663,-0.4057859 -0.1414944,-0.2665301 -0.066845,-0.6038212 0.165038,-0.7717671 0.011365,-0.00513 0.022402,-0.011131 0.033007,-0.017935 0.039117,-0.020455 0.073468,-0.051585 0.099022,-0.089739 C -4.3207441,2.1583496 -2.1238168,1.6579803 0.33351644,1.2983351 1.2668605,1.1617328 2.2486277,1.1033985 3.2216811,1.1188565 l -2.65e-5,-5.5e-6 z" - id="path5194" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" - sodipodi:nodetypes="csssssssssssssssssssssscssccccccsssssssssssssscscc" /> - <path - sodipodi:type="arc" - style="fill:none;stroke:url(#linearGradient5212);stroke-width:1.91763961;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - id="path5204" - sodipodi:cx="-285.49203" - sodipodi:cy="-135.7495" - sodipodi:rx="18.775068" - sodipodi:ry="9.3875341" - d="m -300.83968,-141.15673 a 18.775068,9.3875341 0 0 1 30.74554,0.0358" - transform="matrix(-0.53178943,0,0,0.51135941,-148.92763,75.903492)" - sodipodi:start="3.7554218" - sodipodi:end="5.6740176" - sodipodi:open="true" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" - d="m -6.5611649,17.801468 0,0.01611 c 0,3.512724 2.8301183,6.342822 6.34286708,6.342822 L 4.5590266,23.541443 4.7566141,22.863449 0.3433825,23.189216 c -3.2355607,0 -5.8263995,-2.470095 -5.8263995,-5.705633 l 0,-0.01611 -1.0781479,0.333995 z" - id="rect5551" - sodipodi:nodetypes="ccccccccc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - ry="1.0211699" - rx="1.0211699" - y="-0.10164929" - x="21.63047" - height="5.0177956" - width="2.0423398" - id="rect4784" - style="fill:#555753;fill-opacity:1;stroke:url(#linearGradient4792);stroke-width:0.99999988;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - transform="matrix(0,1,1,0,0,0)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - sodipodi:type="inkscape:offset" - inkscape:radius="-1.0081301" - inkscape:original="M -103.46875 -287.5 C -104.58751 -287.5 -105.5 -286.58751 -105.5 -285.46875 L -105.5 -279.53125 C -105.5 -278.41249 -104.58751 -277.5 -103.46875 -277.5 L -102.53125 -277.5 C -101.41249 -277.5 -100.5 -278.41249 -100.5 -279.53125 L -100.5 -285.46875 C -100.5 -286.58751 -101.41249 -287.5 -102.53125 -287.5 L -103.46875 -287.5 z " - style="opacity:0.6081081;fill:none;stroke:url(#linearGradient4977);stroke-width:3.76500607;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - id="path4967" - d="m -103.46875,-286.5 c -0.57059,0 -1.03125,0.46066 -1.03125,1.03125 l 0,5.9375 c 0,0.57059 0.46066,1.03125 1.03125,1.03125 l 0.9375,0 c 0.57059,0 1.03125,-0.46066 1.03125,-1.03125 l 0,-5.9375 c 0,-0.57059 -0.46066,-1.03125 -1.03125,-1.03125 l -0.9375,0 z" - transform="matrix(0,0.1801693,0.39155051,0,113.06595,41.440494)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - transform="matrix(0,1,1,0,0,0)" - style="fill:url(#linearGradient5632);fill-opacity:1;stroke:none" - id="rect5572" - width="1.0458575" - height="3.8989625" - x="22.13949" - y="0.49657452" - rx="0.99727494" - ry="0.99727511" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient5758);stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - d="m -5.3765984,9.6362166 c -1.49077,0 -2.6907551,1.0642814 -2.6907551,2.3864794 l 0,4.192469 c 0,1.322192 1.1999851,2.38648 2.6907551,2.38648 l 1.2651311,0.0013 0.015891,-8.9736896 c -0.9561106,0.024323 -0.3962926,0.00686 -1.2810216,0.00686 l 0,-5.62e-5 1e-7,6.63e-5 z" - id="path5707" - sodipodi:nodetypes="ccccccccc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient5719-5);fill-opacity:1;stroke:none" - id="rect5709" - width="0.98004872" - height="8.9388952" - x="-5.5517335" - y="9.1426477" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient3623);fill-opacity:1;stroke:none" - id="rect5711" - width="2.0254388" - height="10.001933" - x="-4.5823889" - y="9.1315699" - rx="1.0133103" - ry="1.0133103" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - sodipodi:nodetypes="cccccccc" - id="path5713" - d="m -5.8661826,9.9499715 c -0.9407715,0 -1.698042,0.8558425 -1.698042,1.9190855 l 0,3.371356 c 0,1.063237 0.7572705,1.919079 1.698042,1.919079 l 1.2401832,-0.01722 0,-7.19223 c -0.6033633,0.019548 -0.6818611,0 -1.2401832,0 l 0,-7.25e-5 z" - style="opacity:0.5;fill:url(#radialGradient5721-4);fill-opacity:1;stroke:none" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient5723-8);fill-opacity:1;stroke:none" - id="rect5715" - width="2.0024893" - height="5.9961619" - x="6.5585375" - y="11.146509" - rx="0.99742299" - ry="0.99742311" - transform="scale(-1,1)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - sodipodi:type="arc" - style="fill:#dee1e3;fill-opacity:1;stroke:none" - id="path5859" - sodipodi:cx="-244.01906" - sodipodi:cy="-24.045986" - sodipodi:rx="0.83739835" - sodipodi:ry="1.3739837" - d="m -243.18166,-24.045986 a 0.83739835,1.3739837 0 1 1 -1.6748,0 0.83739835,1.3739837 0 1 1 1.6748,0 z" - transform="matrix(0.62336294,0,0,0.3800951,153.07483,31.796377)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient4984);fill-opacity:1;stroke:none" - id="rect5811-4" - width="1.042106" - height="2.3800838" - x="23.119368" - y="-1.4279883" - rx="0.50398123" - ry="0.50398123" - transform="matrix(0,1,-1,0,0,0)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - y="-0.527372" - x="-9.2806616" - height="24.790268" - width="24.790443" - id="rect5863" - style="fill:#ffffff;fill-opacity:0;stroke:none" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> - <rect - transform="scale(-1,1)" - style="fill:url(#linearGradient3017);fill-opacity:1;stroke:none" - id="rect3015" - width="1.0079591" - height="3.0484221" - x="5.5438328" - y="8.1219101" - rx="0.50398123" - ry="0.50398123" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - sodipodi:nodetypes="ccccccccc" - id="path3040" - d="m 11.222858,9.6745422 c 1.49077,0 2.690755,1.0642818 2.690755,2.3864798 l 0,4.192469 c 0,1.322192 -1.199985,2.38648 -2.690755,2.38648 l -1.2651315,0.0013 -0.015891,-8.97369 c 0.9561105,0.024323 0.3962925,0.00686 1.2810215,0.00686 l 0,-5.62e-5 0,6.63e-5 z" - style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient3052);stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" /> - <rect - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - y="9.1809731" - x="-11.397993" - height="8.9388952" - width="0.98004872" - id="rect3042" - style="fill:url(#linearGradient3054);fill-opacity:1;stroke:none" - transform="scale(-1,1)" /> - <rect - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - ry="1.0133103" - rx="1.0133103" - y="9.1698952" - x="-10.428648" - height="10.001933" - width="2.0254388" - id="rect3044" - style="fill:url(#linearGradient3056);fill-opacity:1;stroke:none" - transform="scale(-1,1)" /> - <path - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - style="opacity:0.5;fill:url(#radialGradient3058);fill-opacity:1;stroke:none" - d="m 11.712442,9.9882971 c 0.940771,0 1.698042,0.8558429 1.698042,1.9190859 l 0,3.371356 c 0,1.063237 -0.757271,1.919079 -1.698042,1.919079 l -1.240183,-0.01722 0,-7.1922304 c 0.603363,0.019548 0.681861,0 1.240183,0 l 0,-7.25e-5 z" - id="path3046" - sodipodi:nodetypes="cccccccc" /> - <rect - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - ry="0.99742311" - rx="0.99742299" - y="11.184834" - x="12.404797" - height="5.9961619" - width="2.0024893" - id="rect3048" - style="fill:url(#linearGradient3060);fill-opacity:1;stroke:none" /> - <rect - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - ry="0.50398123" - rx="0.50398123" - y="8.1020288" - x="11.425255" - height="3.0317767" - width="0.98296487" - id="rect3050" - style="fill:url(#linearGradient3062);fill-opacity:1;stroke:none" /> - </g> -</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pidgin/pixmaps/toolbar/32/scalable/audio-call.svg Mon Aug 24 19:21:21 2009 +0000 @@ -0,0 +1,990 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="32" + height="32" + id="svg3879" + sodipodi:version="0.32" + inkscape:version="0.46+devel r20974" + version="1.0" + sodipodi:docname="voice-32.svg" + inkscape:output_extension="org.inkscape.output.svg.inkscape"> + <defs + id="defs3881"> + <linearGradient + inkscape:collect="always" + id="linearGradient3617"> + <stop + style="stop-color:#2e3436;stop-opacity:1;" + offset="0" + id="stop3619" /> + <stop + style="stop-color:#0b0c0d;stop-opacity:1" + offset="1" + id="stop3621" /> + </linearGradient> + <inkscape:perspective + sodipodi:type="inkscape:persp3d" + inkscape:vp_x="0 : 24 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_z="48 : 24 : 1" + inkscape:persp3d-origin="24 : 16 : 1" + id="perspective96" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4555" + id="linearGradient4563" + gradientUnits="userSpaceOnUse" + x1="-257.51324" + y1="-50.301723" + x2="-257.49792" + y2="-51.439991" + gradientTransform="matrix(0.66407978,0,0,0.75715849,190.43006,50.728904)" /> + <linearGradient + id="linearGradient4555" + inkscape:collect="always"> + <stop + id="stop4557" + offset="0" + style="stop-color:#545652;stop-opacity:1;" /> + <stop + id="stop4559" + offset="1" + style="stop-color:#80837d;stop-opacity:1" /> + </linearGradient> + <linearGradient + gradientTransform="matrix(1.0450411,0,0,1.0014371,56.421478,-248.82007)" + inkscape:collect="always" + xlink:href="#linearGradient4976" + id="linearGradient4984" + x1="-24.687374" + y1="245.84587" + x2="-24.687374" + y2="247.61009" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient4976"> + <stop + style="stop-color:#555753;stop-opacity:1;" + offset="0" + id="stop4978" /> + <stop + style="stop-color:#808080;stop-opacity:1" + offset="1" + id="stop4980" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4555" + id="linearGradient4553" + x1="-257.51324" + y1="-50.301723" + x2="-257.49792" + y2="-51.439991" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.68621958,0,0,0.68621958,170.73384,47.327606)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5677-7" + id="linearGradient5723-8" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.99553756,0,0,0.89724059,-297.05952,126.21271)" + x1="305.89481" + y1="-120.46718" + x2="306.04715" + y2="-120.46718" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5677-7"> + <stop + style="stop-color:#ff2de7;stop-opacity:1" + offset="0" + id="stop5679-1" /> + <stop + style="stop-color:#7b009b;stop-opacity:1" + offset="1" + id="stop5681-4" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5043-9-6-1" + id="radialGradient5721-4" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.64273656,1.224542,-1.4441796,0.7171335,16.526738,477.02976)" + cx="-306.03387" + cy="-120.8595" + fx="-306.03387" + fy="-120.8595" + r="3.03685" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5043-9-6-1"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop5045-4-8-8" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop5047-1-2-6" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5655-9" + id="linearGradient5719-5" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0247755,0,0,0.92090367,303.84649,129.09036)" + x1="-300.82822" + y1="-126.31032" + x2="-300.82822" + y2="-114.83224" /> + <linearGradient + id="linearGradient5655-9" + inkscape:collect="always"> + <stop + id="stop5657-5" + offset="0" + style="stop-color:#2e3436;stop-opacity:1" /> + <stop + id="stop5659-1" + offset="1" + style="stop-color:#707e83;stop-opacity:0;" /> + </linearGradient> + <linearGradient + y2="-36.569096" + x2="-219.25159" + y1="-43.842201" + x1="-219.25159" + gradientTransform="matrix(-0.97877933,0,0,0.78119332,-218.97584,51.325392)" + gradientUnits="userSpaceOnUse" + id="linearGradient5758" + xlink:href="#linearGradient5853" + inkscape:collect="always" /> + <linearGradient + id="linearGradient5853" + inkscape:collect="always"> + <stop + id="stop5855" + offset="0" + style="stop-color:#888a85;stop-opacity:1" /> + <stop + id="stop5857" + offset="1" + style="stop-color:#555753;stop-opacity:1" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5626" + id="linearGradient5632" + x1="-25.743168" + y1="-243.09763" + x2="-23.90864" + y2="-240.62437" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.6571758,0,0,1.0085905,46.149483,249.53936)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5626"> + <stop + style="stop-color:#babdb6;stop-opacity:1;" + offset="0" + id="stop5628" /> + <stop + style="stop-color:#babdb6;stop-opacity:0;" + offset="1" + id="stop5630" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4971" + id="linearGradient4977" + x1="-105.74262" + y1="-282.20282" + x2="-102.94624" + y2="-282.20282" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient4971"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop4973" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop4975" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4786" + id="linearGradient4792" + x1="-106.91152" + y1="280.91522" + x2="-101.28181" + y2="282.32028" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.60027296,0,0,0.696962,91.940589,-191.45315)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient4786"> + <stop + style="stop-color:#555753;stop-opacity:1" + offset="0" + id="stop4788" /> + <stop + style="stop-color:#000000;stop-opacity:1" + offset="1" + id="stop4790" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5677" + id="linearGradient5449-8" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.68621958,0,0,0.76218683,-188.89688,109.60097)" + x1="305.89481" + y1="-120.46718" + x2="306.04715" + y2="-120.46718" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5677"> + <stop + style="stop-color:#ff2de7;stop-opacity:1" + offset="0" + id="stop5679" /> + <stop + style="stop-color:#7b009b;stop-opacity:1" + offset="1" + id="stop5681" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5043-9-6" + id="radialGradient5447-5" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-0.64273656,1.224542,1.4441796,0.7171335,-3.1640994,476.83323)" + cx="-306.03387" + cy="-120.8595" + fx="-306.03387" + fy="-120.8595" + r="3.03685" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5043-9-6"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop5045-4-8" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop5047-1-2" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5655" + id="linearGradient5443-6" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.75005399,0,0,0.85573606,208.06197,120.96548)" + x1="-300.82822" + y1="-126.31032" + x2="-300.82822" + y2="-114.83224" /> + <linearGradient + id="linearGradient5655" + inkscape:collect="always"> + <stop + id="stop5657" + offset="0" + style="stop-color:#2e3436;stop-opacity:1" /> + <stop + id="stop5659" + offset="1" + style="stop-color:#707e83;stop-opacity:0;" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5661" + id="linearGradient5667" + x1="-219.25159" + y1="-43.842201" + x2="-219.25159" + y2="-36.569096" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.77824526,0,0,0.72964259,189.11899,48.738021)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5661"> + <stop + style="stop-color:#888a85;stop-opacity:1;" + offset="0" + id="stop5663" /> + <stop + style="stop-color:#555753;stop-opacity:1" + offset="1" + id="stop5665" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5206" + id="linearGradient5212" + x1="-304.49771" + y1="-142.89493" + x2="-262.4259" + y2="-143.92334" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5206"> + <stop + style="stop-color:#ffffff;stop-opacity:1" + offset="0" + id="stop5208" /> + <stop + style="stop-color:#dededd;stop-opacity:0;" + offset="1" + id="stop5210" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5388" + id="linearGradient5394" + x1="-283.80222" + y1="-143.74782" + x2="-283.80222" + y2="-141.12897" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.69617626,0,0,0.77539869,204.63341,113.36017)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5388"> + <stop + style="stop-color:#555753;stop-opacity:1" + offset="0" + id="stop5390" /> + <stop + style="stop-color:#000000;stop-opacity:1" + offset="1" + id="stop5392" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5376" + id="radialGradient5382" + cx="-284.44626" + cy="-153.18155" + fx="-284.44626" + fy="-153.18155" + r="17.449057" + gradientTransform="matrix(0.52159422,0.00570372,-0.00515056,0.61959156,154.17873,98.370923)" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5376"> + <stop + style="stop-color:#babdb6;stop-opacity:1" + offset="0" + id="stop5378" /> + <stop + style="stop-color:#434542;stop-opacity:1" + offset="1" + id="stop5380" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3617" + id="linearGradient3623" + x1="1.421198" + y1="19.01931" + x2="1.421198" + y2="34.927505" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0329046,0,0,0.75231698,-4.0458192,-2.1508414)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3617" + id="linearGradient3627" + gradientUnits="userSpaceOnUse" + x1="1.421198" + y1="19.01931" + x2="1.421198" + y2="34.927505" + gradientTransform="translate(27.998451,0)" /> + <inkscape:perspective + id="perspective3637" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3617-8" + id="linearGradient3627-1" + gradientUnits="userSpaceOnUse" + x1="1.421198" + y1="19.01931" + x2="1.421198" + y2="34.927505" + gradientTransform="translate(27.998451,0)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient3617-8"> + <stop + style="stop-color:#2e3436;stop-opacity:1;" + offset="0" + id="stop3619-2" /> + <stop + style="stop-color:#0b0c0d;stop-opacity:1" + offset="1" + id="stop3621-4" /> + </linearGradient> + <linearGradient + y2="34.927505" + x2="1.421198" + y1="19.01931" + x1="1.421198" + gradientTransform="matrix(0.68621958,0,0,0.68621958,15.319865,-0.89371418)" + gradientUnits="userSpaceOnUse" + id="linearGradient3646" + xlink:href="#linearGradient3617-8" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5853" + id="linearGradient2890" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.97877933,0,0,0.78119332,232.83687,51.325392)" + x1="-219.25159" + y1="-43.842201" + x2="-219.25159" + y2="-36.569096" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5655-9" + id="linearGradient2892" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0247755,0,0,0.92090367,289.98546,129.09036)" + x1="-300.82822" + y1="-126.31032" + x2="-300.82822" + y2="-114.83224" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3617" + id="linearGradient2894" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0329046,0,0,0.75231698,-17.906854,-2.1508414)" + x1="1.421198" + y1="19.01931" + x2="1.421198" + y2="34.927505" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5043-9-6-1" + id="radialGradient2896" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-0.64273656,1.224542,1.4441796,0.7171335,-2.6657025,477.02976)" + cx="-306.03387" + cy="-120.8595" + fx="-306.03387" + fy="-120.8595" + r="3.03685" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5677-7" + id="linearGradient2898" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.99553756,0,0,0.89724059,-283.19849,126.21271)" + x1="305.89481" + y1="-120.46718" + x2="306.04715" + y2="-120.46718" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4555" + id="linearGradient2900" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.68621958,0,0,0.68621958,156.87281,47.327606)" + x1="-257.51324" + y1="-50.301723" + x2="-257.49792" + y2="-51.439991" /> + <inkscape:perspective + id="perspective2910" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5853-9" + id="linearGradient2890-4" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.97877933,0,0,0.78119332,232.83687,51.325392)" + x1="-219.25159" + y1="-43.842201" + x2="-219.25159" + y2="-36.569096" /> + <linearGradient + id="linearGradient5853-9" + inkscape:collect="always"> + <stop + id="stop5855-9" + offset="0" + style="stop-color:#888a85;stop-opacity:1" /> + <stop + id="stop5857-6" + offset="1" + style="stop-color:#555753;stop-opacity:1" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5655-9-5" + id="linearGradient2892-5" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0247755,0,0,0.92090367,290.97234,129.09035)" + x1="-300.82822" + y1="-126.31032" + x2="-300.82822" + y2="-114.83224" /> + <linearGradient + id="linearGradient5655-9-5" + inkscape:collect="always"> + <stop + id="stop5657-5-8" + offset="0" + style="stop-color:#2e3436;stop-opacity:1" /> + <stop + id="stop5659-1-7" + offset="1" + style="stop-color:#707e83;stop-opacity:0;" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3617-3" + id="linearGradient2894-1" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0329046,0,0,0.75231698,-16.919972,-2.1508407)" + x1="1.421198" + y1="19.01931" + x2="1.421198" + y2="34.927505" /> + <linearGradient + inkscape:collect="always" + id="linearGradient3617-3"> + <stop + style="stop-color:#2e3436;stop-opacity:1;" + offset="0" + id="stop3619-4" /> + <stop + style="stop-color:#0b0c0d;stop-opacity:1" + offset="1" + id="stop3621-6" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5043-9-6-1-1" + id="radialGradient2896-0" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-0.64273656,1.224542,1.4441796,0.7171335,-3.6525853,477.02975)" + cx="-306.03387" + cy="-120.8595" + fx="-306.03387" + fy="-120.8595" + r="3.03685" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5043-9-6-1-1"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop5045-4-8-8-6" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop5047-1-2-6-8" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5677-7-2" + id="linearGradient2898-1" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.99553756,0,0,0.89724059,-284.18537,126.2127)" + x1="305.89481" + y1="-120.46718" + x2="306.04715" + y2="-120.46718" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5677-7-2"> + <stop + style="stop-color:#ff2de7;stop-opacity:1" + offset="0" + id="stop5679-1-6" /> + <stop + style="stop-color:#7b009b;stop-opacity:1" + offset="1" + id="stop5681-4-3" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4555-8" + id="linearGradient2900-3" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.9295656,0,0,1.1136035,220.46357,68.767752)" + x1="-257.51324" + y1="-50.301723" + x2="-257.49792" + y2="-51.439991" /> + <linearGradient + id="linearGradient4555-8" + inkscape:collect="always"> + <stop + id="stop4557-5" + offset="0" + style="stop-color:#545652;stop-opacity:1;" /> + <stop + id="stop4559-4" + offset="1" + style="stop-color:#80837d;stop-opacity:1" /> + </linearGradient> + <linearGradient + y2="-36.569096" + x2="-219.25159" + y1="-43.842201" + x1="-219.25159" + gradientTransform="matrix(0.97877933,0,0,0.78119332,231.84999,51.325392)" + gradientUnits="userSpaceOnUse" + id="linearGradient2944" + xlink:href="#linearGradient5853-9" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4555-8" + id="linearGradient3017" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.9295656,0,0,1.1136035,245.41352,68.767752)" + x1="-257.51324" + y1="-50.301723" + x2="-257.49792" + y2="-51.439991" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="11.313708" + inkscape:cx="30.024929" + inkscape:cy="6.5961333" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:grid-bbox="true" + inkscape:document-units="px" + inkscape:window-width="1280" + inkscape:window-height="752" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:snap-global="false"> + <inkscape:grid + type="xygrid" + id="grid2855" + empspacing="5" + visible="true" + enabled="true" /> + </sodipodi:namedview> + <metadata + id="metadata3884"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:label="Layer 1" + inkscape:groupmode="layer" + transform="translate(8.5714283,-0.14285715)"> + <rect + style="fill:#cc0000;fill-opacity:0;stroke:none" + id="rect5861" + width="32.938541" + height="32.938541" + x="-9.7751017" + y="-0.79568303" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" + d="m 1.9145026,1.3173618 c -4.6831399,0 -8.4777215,3.7603186 -8.4777215,8.4276345 l 0,4.3960947 c 0,0.493488 0.047692,0.966938 0.1290984,1.436772 l 1.0219853,0 c -0.087239,-0.46606 -0.1291054,-0.944348 -0.1291054,-1.436772 l 0,-4.3960947 c 0,-4.2990218 4.2056809,-7.7414149 8.5192778,-7.7414149 l 7.6873528,0 c 4.313596,0 7.789175,3.4423931 7.789175,7.7414149 l 0,4.3960947 c 0,0.492424 -0.04186,0.970712 -0.129105,1.436772 l 0.974072,0 c 0.08141,-0.469834 0.129105,-0.943284 0.129105,-1.436772 l 0,-4.3960947 c 0,-4.6673159 -3.794582,-8.4276345 -8.477721,-8.4276345 l -9.0364134,0 z" + id="rect5549" + sodipodi:nodetypes="ccccccccccccccccc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="fill:url(#radialGradient5382);fill-opacity:1;stroke:none" + d="m -4.9451328,6.6771159 c -0.2382967,-0.1875506 -0.3328176,-0.4368942 -0.3134387,-0.826805 0.019908,-0.4006407 0.097834,-0.5213766 0.7600657,-1.1777397 3.2353396,-3.2067063 9.3093493,-4.6899303 15.0315108,-3.670585 2.613773,0.4656271 5.073336,1.4865771 6.785537,2.8166358 0.921369,0.7157372 1.613595,1.4870802 1.691896,1.8852778 0.106689,0.542581 -0.217518,1.088092 -0.646986,1.0885949 C 18.22184,6.7926704 18.094005,6.725193 17.802257,6.4963114 14.60793,3.9901815 9.5705605,3.0274559 4.6388625,3.5603368 1.2946491,3.9216742 -1.6363077,4.7181575 -3.9060775,6.4188147 -4.4662772,6.8385521 -4.6743153,6.8902619 -4.9451328,6.6771159 l 0,0 z" + id="path5202" + sodipodi:nodetypes="cssssssssscc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:url(#linearGradient5394);fill-opacity:1;stroke:none;stroke-width:1.36950052;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" + d="M 5.9838584,0.17166026 C 5.1095585,0.20663073 4.2382243,0.29156016 3.394953,0.42230013 0.04247471,0.94208089 -2.9747116,2.2080433 -4.915651,4.1317997 c -0.011904,0.011787 -0.031676,0.013182 -0.043511,0.025045 -0.016864,0.023062 -0.031489,0.048317 -0.043511,0.075137 -0.5805135,0.4714269 -0.7747954,1.3841486 -0.4133546,2.1053935 0.3553353,0.7090636 1.1019287,0.9693649 1.7404406,0.6516606 0.011487,-0.00543 0.032163,0.00621 0.043511,0 0.030839,-0.011883 0.060226,-0.028799 0.087022,-0.050091 0.00557,-0.0031 0.016221,0.00388 0.021721,0 0.013158,-0.00977 0.030284,-0.015352 0.043511,-0.025045 0.00815,-0.00543 0.013575,-0.019075 0.021721,-0.025045 4.42090043,-3.2482857 12.7875743,-3.6783329 18.513938,-1.1109257 0.801771,0.359467 1.522996,0.5612214 2.153794,1.0106657 0.0069,0.00871 0.01416,0.01707 0.02172,0.025045 0.0083,0.00543 0.0135,0.019075 0.02172,0.025045 0.01873,0.028221 0.04073,0.053561 0.06523,0.075137 0.662378,0.4405821 1.532062,0.1866468 1.914485,-0.5764698 0.32666,-0.6518311 0.193384,-1.4553767 -0.261066,-1.9550127 -0.0062,-0.017277 -0.01349,-0.034053 -0.02172,-0.050168 -0.0042,-0.00388 -0.01747,0.00388 -0.02172,0 -0.0069,-0.00871 -0.01417,-0.017069 -0.02172,-0.025045 -0.01914,-0.018377 -0.02339,-0.057923 -0.04351,-0.075137 2.23e-4,-0.00835 2.23e-4,-0.016699 0,-0.025045 C 17.626438,2.9422684 15.867096,1.9315671 13.750505,1.2243105 12.113516,0.67731325 10.374064,0.34798591 8.6162053,0.22174326 7.7372758,0.15862581 6.8580887,0.13665877 5.9837888,0.1716525 l 6.96e-5,7.76e-6 z M 7.2891889,1.1336088 c 2.1378181,0.035901 4.2887031,0.3670427 6.2655851,1.0276281 l 0.02172,0 c 1.92325,0.6454806 3.513456,1.4252715 4.633924,2.4969112 0.03311,0.074934 0.08725,0.1372993 0.152288,0.1754495 0.336545,0.2238499 0.455369,0.7150959 0.261066,1.1028263 -0.16516,0.3295754 -0.503022,0.478072 -0.804953,0.3759598 -0.03188,-0.03246 -0.06896,-0.058069 -0.108777,-0.075136 C 16.997965,5.7085187 16.200286,5.2394489 15.295181,4.833644 12.29636,3.4891337 8.6839711,2.9762928 5.2223808,3.229538 1.8200146,3.4784567 -1.420665,4.4860717 -3.7626438,6.1871102 c -0.00557,0.00388 -0.016499,-0.00388 -0.021721,0 -0.014986,0.00717 -0.029537,0.015544 -0.043511,0.025045 -0.014986,0.00717 -0.029537,0.015544 -0.043511,0.025045 -0.00829,0.00621 -0.013506,0.01892 -0.021721,0.025045 -0.3321179,0.2011152 -0.7460434,0.052185 -0.9354868,-0.3258303 -0.1865196,-0.3722068 -0.088115,-0.8432306 0.2175551,-1.0777654 0.014982,-0.00717 0.029532,-0.015544 0.043511,-0.025045 0.051565,-0.028565 0.096846,-0.072038 0.130533,-0.1253199 1.7837016,-1.7457008 4.67971835,-2.821787 7.9190054,-3.3240282 1.2303452,-0.1907636 2.524523,-0.272227 3.8072138,-0.2506399 l -3.48e-5,-7.7e-6 z" + id="path5194" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" + sodipodi:nodetypes="csssssssssssssssssssssscssccccccsssssssssssssscscc" /> + <path + sodipodi:type="arc" + style="fill:none;stroke:url(#linearGradient5212);stroke-width:1.41199458;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + id="path5204" + sodipodi:cx="-285.49203" + sodipodi:cy="-135.7495" + sodipodi:rx="18.775068" + sodipodi:ry="9.3875341" + d="m -300.83968,-141.15673 a 18.775068,9.3875341 0 0 1 30.74554,0.0358" + transform="matrix(-0.70657745,0,0,0.70986232,-194.81186,105.68217)" + sodipodi:start="3.7554218" + sodipodi:end="5.6740176" + sodipodi:open="true" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" + d="m -6.5233133,22.735232 0,0.02141 c 0,4.667316 3.7603187,8.427634 8.4276344,8.427634 l 6.3475307,0 0.2625302,-0.900842 -6.3475307,0 c -4.2990216,0 -7.7414148,-3.442393 -7.7414148,-7.741415 l 0,-0.02141 -0.9487498,0.214623 z" + id="rect5551" + sodipodi:nodetypes="ccccccccc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + ry="1.4981471" + rx="1.4981471" + y="1.9545606" + x="28.614576" + height="6.9623013" + width="2.9962943" + id="rect4784" + style="fill:#555753;fill-opacity:1;stroke:url(#linearGradient4792);stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + transform="matrix(0,1,1,0,0,0)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + sodipodi:type="inkscape:offset" + inkscape:radius="-1.0081301" + inkscape:original="M -103.46875 -287.5 C -104.58751 -287.5 -105.5 -286.58751 -105.5 -285.46875 L -105.5 -279.53125 C -105.5 -278.41249 -104.58751 -277.5 -103.46875 -277.5 L -102.53125 -277.5 C -101.41249 -277.5 -100.5 -278.41249 -100.5 -279.53125 L -100.5 -285.46875 C -100.5 -286.58751 -101.41249 -287.5 -102.53125 -287.5 L -103.46875 -287.5 z " + style="opacity:0.6081081;fill:none;stroke:url(#linearGradient4977);stroke-width:2.1435864;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + id="path4967" + d="m -103.46875,-286.5 c -0.57059,0 -1.03125,0.46066 -1.03125,1.03125 l 0,5.9375 c 0,0.57059 0.46066,1.03125 1.03125,1.03125 l 0.9375,0 c 0.57059,0 1.03125,-0.46066 1.03125,-1.03125 l 0,-5.9375 c 0,-0.57059 -0.46066,-1.03125 -1.03125,-1.03125 l -0.9375,0 z" + transform="matrix(0,0.35041293,0.62106611,0,180.86297,66.235476)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + transform="matrix(0,1,1,0,0,0)" + style="fill:url(#linearGradient5632);fill-opacity:1;stroke:none" + id="rect5572" + width="1.99455" + height="5.9798374" + x="29.110865" + y="2.4541459" + rx="0.99727499" + ry="0.99727499" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient5758);stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + d="m -4.7126309,12.654361 c -1.8622525,0 -3.3612598,1.30267 -3.3612598,2.921028 l 0,5.131543 c 0,1.618351 1.4990073,2.921029 3.3612598,2.921029 l 1.5803872,0.0017 0.01985,-10.983712 c -1.1943624,0.02977 -0.4950442,0.0084 -1.6002373,0.0084 l 0,-6.9e-5 1e-7,8.1e-5 z" + id="path5707" + sodipodi:nodetypes="ccccccccc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient5719-5);fill-opacity:1;stroke:none" + id="rect5709" + width="1.9106927" + height="10.99095" + x="-5.5105519" + y="12.139328" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient3623);fill-opacity:1;stroke:none" + id="rect5711" + width="2.0266206" + height="11.968007" + x="-3.5911674" + y="12.157709" + rx="1.0133103" + ry="1.0133103" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + sodipodi:nodetypes="cccccccc" + id="path5713" + d="m -5.238356,13.125441 c -1.2499833,0 -2.2561527,1.137149 -2.2561527,2.549866 l 0,4.479482 c 0,1.41271 1.0061694,2.549858 2.2561527,2.549858 l 1.6478054,-0.02288 0,-9.556232 c -0.8016761,0.02597 -0.9059746,0 -1.6478054,0 l 0,-9.6e-5 z" + style="opacity:0.5;fill:url(#radialGradient5721-4);fill-opacity:1;stroke:none" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient5723-8);fill-opacity:1;stroke:none" + id="rect5715" + width="1.9859439" + height="7.995038" + x="6.5732913" + y="14.12711" + rx="0.99742299" + ry="0.99742305" + transform="scale(-1,1)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + sodipodi:type="arc" + style="fill:#dee1e3;fill-opacity:1;stroke:none" + id="path5859" + sodipodi:cx="-244.01906" + sodipodi:cy="-24.045986" + sodipodi:rx="0.83739835" + sodipodi:ry="1.3739837" + d="m -243.18166,-24.045986 a 0.83739835,1.3739837 0 1 1 -1.6748,0 0.83739835,1.3739837 0 1 1 1.6748,0 z" + transform="matrix(0.8690986,0,0,0.73826906,214.78423,47.887046)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient4984);fill-opacity:1;stroke:none" + id="rect5811-4" + width="1.0533623" + height="2.3305926" + x="30.146362" + y="-3.4252403" + rx="0.50398123" + ry="0.50398123" + transform="matrix(0,1,-1,0,0,0)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + y="-0.79568303" + x="-9.7751017" + height="32.938541" + width="32.938541" + id="rect5863" + style="fill:#ffffff;fill-opacity:0;stroke:none" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> + <path + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + sodipodi:nodetypes="ccccccccc" + id="path2878" + d="m 17.586784,12.654361 c 1.862252,0 3.36126,1.30267 3.36126,2.921028 l 0,5.131543 c 0,1.618351 -1.499008,2.921029 -3.36126,2.921029 l -1.580387,0.0017 -0.01985,-10.983712 c 1.194362,0.02977 0.495044,0.0084 1.600237,0.0084 l 0,-6.9e-5 0,8.1e-5 z" + style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient2944);stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" /> + <rect + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + y="12.139328" + x="-18.384705" + height="10.99095" + width="1.9106927" + id="rect2880" + style="fill:url(#linearGradient2892-5);fill-opacity:1;stroke:none" + transform="scale(-1,1)" /> + <rect + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + ry="1.0133103" + rx="1.0133103" + y="12.157709" + x="-16.465319" + height="11.968007" + width="2.0266206" + id="rect2882" + style="fill:url(#linearGradient2894-1);fill-opacity:1;stroke:none" + transform="scale(-1,1)" /> + <path + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + style="opacity:0.5;fill:url(#radialGradient2896-0);fill-opacity:1;stroke:none" + d="m 18.112509,13.125441 c 1.249983,0 2.256153,1.137149 2.256153,2.549866 l 0,4.479482 c 0,1.41271 -1.00617,2.549858 -2.256153,2.549858 l -1.647805,-0.02288 0,-9.556232 c 0.801676,0.02597 0.905974,0 1.647805,0 l 0,-9.6e-5 z" + id="path2884" + sodipodi:nodetypes="cccccccc" /> + <rect + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + ry="0.99742305" + rx="0.99742299" + y="14.12711" + x="19.447443" + height="7.995038" + width="1.9859439" + id="rect2886" + style="fill:url(#linearGradient2898-1);fill-opacity:1;stroke:none" /> + <rect + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + ry="0.50398123" + rx="0.50398123" + y="11.170098" + x="-19.396423" + height="3.9994802" + width="0.93696725" + id="rect2888" + style="fill:url(#linearGradient2900-3);fill-opacity:1;stroke:none" + transform="scale(-1,1)" /> + <rect + transform="scale(-1,1)" + style="fill:url(#linearGradient3017);fill-opacity:1;stroke:none" + id="rect3015" + width="0.93696725" + height="3.9994802" + x="5.5535235" + y="11.170098" + rx="0.50398123" + ry="0.50398123" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + </g> +</svg>
--- a/pidgin/pixmaps/toolbar/32/scalable/voice-call.svg Thu Aug 13 17:40:00 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,990 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cc="http://creativecommons.org/ns#" - xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:svg="http://www.w3.org/2000/svg" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="32" - height="32" - id="svg3879" - sodipodi:version="0.32" - inkscape:version="0.46+devel r20974" - version="1.0" - sodipodi:docname="voice-32.svg" - inkscape:output_extension="org.inkscape.output.svg.inkscape"> - <defs - id="defs3881"> - <linearGradient - inkscape:collect="always" - id="linearGradient3617"> - <stop - style="stop-color:#2e3436;stop-opacity:1;" - offset="0" - id="stop3619" /> - <stop - style="stop-color:#0b0c0d;stop-opacity:1" - offset="1" - id="stop3621" /> - </linearGradient> - <inkscape:perspective - sodipodi:type="inkscape:persp3d" - inkscape:vp_x="0 : 24 : 1" - inkscape:vp_y="0 : 1000 : 0" - inkscape:vp_z="48 : 24 : 1" - inkscape:persp3d-origin="24 : 16 : 1" - id="perspective96" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4555" - id="linearGradient4563" - gradientUnits="userSpaceOnUse" - x1="-257.51324" - y1="-50.301723" - x2="-257.49792" - y2="-51.439991" - gradientTransform="matrix(0.66407978,0,0,0.75715849,190.43006,50.728904)" /> - <linearGradient - id="linearGradient4555" - inkscape:collect="always"> - <stop - id="stop4557" - offset="0" - style="stop-color:#545652;stop-opacity:1;" /> - <stop - id="stop4559" - offset="1" - style="stop-color:#80837d;stop-opacity:1" /> - </linearGradient> - <linearGradient - gradientTransform="matrix(1.0450411,0,0,1.0014371,56.421478,-248.82007)" - inkscape:collect="always" - xlink:href="#linearGradient4976" - id="linearGradient4984" - x1="-24.687374" - y1="245.84587" - x2="-24.687374" - y2="247.61009" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient4976"> - <stop - style="stop-color:#555753;stop-opacity:1;" - offset="0" - id="stop4978" /> - <stop - style="stop-color:#808080;stop-opacity:1" - offset="1" - id="stop4980" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4555" - id="linearGradient4553" - x1="-257.51324" - y1="-50.301723" - x2="-257.49792" - y2="-51.439991" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.68621958,0,0,0.68621958,170.73384,47.327606)" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5677-7" - id="linearGradient5723-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.99553756,0,0,0.89724059,-297.05952,126.21271)" - x1="305.89481" - y1="-120.46718" - x2="306.04715" - y2="-120.46718" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5677-7"> - <stop - style="stop-color:#ff2de7;stop-opacity:1" - offset="0" - id="stop5679-1" /> - <stop - style="stop-color:#7b009b;stop-opacity:1" - offset="1" - id="stop5681-4" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5043-9-6-1" - id="radialGradient5721-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.64273656,1.224542,-1.4441796,0.7171335,16.526738,477.02976)" - cx="-306.03387" - cy="-120.8595" - fx="-306.03387" - fy="-120.8595" - r="3.03685" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5043-9-6-1"> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0" - id="stop5045-4-8-8" /> - <stop - style="stop-color:#ffffff;stop-opacity:0;" - offset="1" - id="stop5047-1-2-6" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5655-9" - id="linearGradient5719-5" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0247755,0,0,0.92090367,303.84649,129.09036)" - x1="-300.82822" - y1="-126.31032" - x2="-300.82822" - y2="-114.83224" /> - <linearGradient - id="linearGradient5655-9" - inkscape:collect="always"> - <stop - id="stop5657-5" - offset="0" - style="stop-color:#2e3436;stop-opacity:1" /> - <stop - id="stop5659-1" - offset="1" - style="stop-color:#707e83;stop-opacity:0;" /> - </linearGradient> - <linearGradient - y2="-36.569096" - x2="-219.25159" - y1="-43.842201" - x1="-219.25159" - gradientTransform="matrix(-0.97877933,0,0,0.78119332,-218.97584,51.325392)" - gradientUnits="userSpaceOnUse" - id="linearGradient5758" - xlink:href="#linearGradient5853" - inkscape:collect="always" /> - <linearGradient - id="linearGradient5853" - inkscape:collect="always"> - <stop - id="stop5855" - offset="0" - style="stop-color:#888a85;stop-opacity:1" /> - <stop - id="stop5857" - offset="1" - style="stop-color:#555753;stop-opacity:1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5626" - id="linearGradient5632" - x1="-25.743168" - y1="-243.09763" - x2="-23.90864" - y2="-240.62437" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.6571758,0,0,1.0085905,46.149483,249.53936)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5626"> - <stop - style="stop-color:#babdb6;stop-opacity:1;" - offset="0" - id="stop5628" /> - <stop - style="stop-color:#babdb6;stop-opacity:0;" - offset="1" - id="stop5630" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4971" - id="linearGradient4977" - x1="-105.74262" - y1="-282.20282" - x2="-102.94624" - y2="-282.20282" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient4971"> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0" - id="stop4973" /> - <stop - style="stop-color:#ffffff;stop-opacity:0;" - offset="1" - id="stop4975" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4786" - id="linearGradient4792" - x1="-106.91152" - y1="280.91522" - x2="-101.28181" - y2="282.32028" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.60027296,0,0,0.696962,91.940589,-191.45315)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient4786"> - <stop - style="stop-color:#555753;stop-opacity:1" - offset="0" - id="stop4788" /> - <stop - style="stop-color:#000000;stop-opacity:1" - offset="1" - id="stop4790" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5677" - id="linearGradient5449-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.68621958,0,0,0.76218683,-188.89688,109.60097)" - x1="305.89481" - y1="-120.46718" - x2="306.04715" - y2="-120.46718" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5677"> - <stop - style="stop-color:#ff2de7;stop-opacity:1" - offset="0" - id="stop5679" /> - <stop - style="stop-color:#7b009b;stop-opacity:1" - offset="1" - id="stop5681" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5043-9-6" - id="radialGradient5447-5" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(-0.64273656,1.224542,1.4441796,0.7171335,-3.1640994,476.83323)" - cx="-306.03387" - cy="-120.8595" - fx="-306.03387" - fy="-120.8595" - r="3.03685" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5043-9-6"> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0" - id="stop5045-4-8" /> - <stop - style="stop-color:#ffffff;stop-opacity:0;" - offset="1" - id="stop5047-1-2" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5655" - id="linearGradient5443-6" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.75005399,0,0,0.85573606,208.06197,120.96548)" - x1="-300.82822" - y1="-126.31032" - x2="-300.82822" - y2="-114.83224" /> - <linearGradient - id="linearGradient5655" - inkscape:collect="always"> - <stop - id="stop5657" - offset="0" - style="stop-color:#2e3436;stop-opacity:1" /> - <stop - id="stop5659" - offset="1" - style="stop-color:#707e83;stop-opacity:0;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5661" - id="linearGradient5667" - x1="-219.25159" - y1="-43.842201" - x2="-219.25159" - y2="-36.569096" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.77824526,0,0,0.72964259,189.11899,48.738021)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5661"> - <stop - style="stop-color:#888a85;stop-opacity:1;" - offset="0" - id="stop5663" /> - <stop - style="stop-color:#555753;stop-opacity:1" - offset="1" - id="stop5665" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5206" - id="linearGradient5212" - x1="-304.49771" - y1="-142.89493" - x2="-262.4259" - y2="-143.92334" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5206"> - <stop - style="stop-color:#ffffff;stop-opacity:1" - offset="0" - id="stop5208" /> - <stop - style="stop-color:#dededd;stop-opacity:0;" - offset="1" - id="stop5210" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5388" - id="linearGradient5394" - x1="-283.80222" - y1="-143.74782" - x2="-283.80222" - y2="-141.12897" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.69617626,0,0,0.77539869,204.63341,113.36017)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5388"> - <stop - style="stop-color:#555753;stop-opacity:1" - offset="0" - id="stop5390" /> - <stop - style="stop-color:#000000;stop-opacity:1" - offset="1" - id="stop5392" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5376" - id="radialGradient5382" - cx="-284.44626" - cy="-153.18155" - fx="-284.44626" - fy="-153.18155" - r="17.449057" - gradientTransform="matrix(0.52159422,0.00570372,-0.00515056,0.61959156,154.17873,98.370923)" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5376"> - <stop - style="stop-color:#babdb6;stop-opacity:1" - offset="0" - id="stop5378" /> - <stop - style="stop-color:#434542;stop-opacity:1" - offset="1" - id="stop5380" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3617" - id="linearGradient3623" - x1="1.421198" - y1="19.01931" - x2="1.421198" - y2="34.927505" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0329046,0,0,0.75231698,-4.0458192,-2.1508414)" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3617" - id="linearGradient3627" - gradientUnits="userSpaceOnUse" - x1="1.421198" - y1="19.01931" - x2="1.421198" - y2="34.927505" - gradientTransform="translate(27.998451,0)" /> - <inkscape:perspective - id="perspective3637" - inkscape:persp3d-origin="0.5 : 0.33333333 : 1" - inkscape:vp_z="1 : 0.5 : 1" - inkscape:vp_y="0 : 1000 : 0" - inkscape:vp_x="0 : 0.5 : 1" - sodipodi:type="inkscape:persp3d" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3617-8" - id="linearGradient3627-1" - gradientUnits="userSpaceOnUse" - x1="1.421198" - y1="19.01931" - x2="1.421198" - y2="34.927505" - gradientTransform="translate(27.998451,0)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient3617-8"> - <stop - style="stop-color:#2e3436;stop-opacity:1;" - offset="0" - id="stop3619-2" /> - <stop - style="stop-color:#0b0c0d;stop-opacity:1" - offset="1" - id="stop3621-4" /> - </linearGradient> - <linearGradient - y2="34.927505" - x2="1.421198" - y1="19.01931" - x1="1.421198" - gradientTransform="matrix(0.68621958,0,0,0.68621958,15.319865,-0.89371418)" - gradientUnits="userSpaceOnUse" - id="linearGradient3646" - xlink:href="#linearGradient3617-8" - inkscape:collect="always" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5853" - id="linearGradient2890" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.97877933,0,0,0.78119332,232.83687,51.325392)" - x1="-219.25159" - y1="-43.842201" - x2="-219.25159" - y2="-36.569096" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5655-9" - id="linearGradient2892" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0247755,0,0,0.92090367,289.98546,129.09036)" - x1="-300.82822" - y1="-126.31032" - x2="-300.82822" - y2="-114.83224" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3617" - id="linearGradient2894" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0329046,0,0,0.75231698,-17.906854,-2.1508414)" - x1="1.421198" - y1="19.01931" - x2="1.421198" - y2="34.927505" /> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5043-9-6-1" - id="radialGradient2896" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(-0.64273656,1.224542,1.4441796,0.7171335,-2.6657025,477.02976)" - cx="-306.03387" - cy="-120.8595" - fx="-306.03387" - fy="-120.8595" - r="3.03685" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5677-7" - id="linearGradient2898" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.99553756,0,0,0.89724059,-283.19849,126.21271)" - x1="305.89481" - y1="-120.46718" - x2="306.04715" - y2="-120.46718" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4555" - id="linearGradient2900" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.68621958,0,0,0.68621958,156.87281,47.327606)" - x1="-257.51324" - y1="-50.301723" - x2="-257.49792" - y2="-51.439991" /> - <inkscape:perspective - id="perspective2910" - inkscape:persp3d-origin="0.5 : 0.33333333 : 1" - inkscape:vp_z="1 : 0.5 : 1" - inkscape:vp_y="0 : 1000 : 0" - inkscape:vp_x="0 : 0.5 : 1" - sodipodi:type="inkscape:persp3d" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5853-9" - id="linearGradient2890-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.97877933,0,0,0.78119332,232.83687,51.325392)" - x1="-219.25159" - y1="-43.842201" - x2="-219.25159" - y2="-36.569096" /> - <linearGradient - id="linearGradient5853-9" - inkscape:collect="always"> - <stop - id="stop5855-9" - offset="0" - style="stop-color:#888a85;stop-opacity:1" /> - <stop - id="stop5857-6" - offset="1" - style="stop-color:#555753;stop-opacity:1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5655-9-5" - id="linearGradient2892-5" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0247755,0,0,0.92090367,290.97234,129.09035)" - x1="-300.82822" - y1="-126.31032" - x2="-300.82822" - y2="-114.83224" /> - <linearGradient - id="linearGradient5655-9-5" - inkscape:collect="always"> - <stop - id="stop5657-5-8" - offset="0" - style="stop-color:#2e3436;stop-opacity:1" /> - <stop - id="stop5659-1-7" - offset="1" - style="stop-color:#707e83;stop-opacity:0;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3617-3" - id="linearGradient2894-1" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0329046,0,0,0.75231698,-16.919972,-2.1508407)" - x1="1.421198" - y1="19.01931" - x2="1.421198" - y2="34.927505" /> - <linearGradient - inkscape:collect="always" - id="linearGradient3617-3"> - <stop - style="stop-color:#2e3436;stop-opacity:1;" - offset="0" - id="stop3619-4" /> - <stop - style="stop-color:#0b0c0d;stop-opacity:1" - offset="1" - id="stop3621-6" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5043-9-6-1-1" - id="radialGradient2896-0" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(-0.64273656,1.224542,1.4441796,0.7171335,-3.6525853,477.02975)" - cx="-306.03387" - cy="-120.8595" - fx="-306.03387" - fy="-120.8595" - r="3.03685" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5043-9-6-1-1"> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0" - id="stop5045-4-8-8-6" /> - <stop - style="stop-color:#ffffff;stop-opacity:0;" - offset="1" - id="stop5047-1-2-6-8" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5677-7-2" - id="linearGradient2898-1" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.99553756,0,0,0.89724059,-284.18537,126.2127)" - x1="305.89481" - y1="-120.46718" - x2="306.04715" - y2="-120.46718" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5677-7-2"> - <stop - style="stop-color:#ff2de7;stop-opacity:1" - offset="0" - id="stop5679-1-6" /> - <stop - style="stop-color:#7b009b;stop-opacity:1" - offset="1" - id="stop5681-4-3" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4555-8" - id="linearGradient2900-3" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.9295656,0,0,1.1136035,220.46357,68.767752)" - x1="-257.51324" - y1="-50.301723" - x2="-257.49792" - y2="-51.439991" /> - <linearGradient - id="linearGradient4555-8" - inkscape:collect="always"> - <stop - id="stop4557-5" - offset="0" - style="stop-color:#545652;stop-opacity:1;" /> - <stop - id="stop4559-4" - offset="1" - style="stop-color:#80837d;stop-opacity:1" /> - </linearGradient> - <linearGradient - y2="-36.569096" - x2="-219.25159" - y1="-43.842201" - x1="-219.25159" - gradientTransform="matrix(0.97877933,0,0,0.78119332,231.84999,51.325392)" - gradientUnits="userSpaceOnUse" - id="linearGradient2944" - xlink:href="#linearGradient5853-9" - inkscape:collect="always" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4555-8" - id="linearGradient3017" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.9295656,0,0,1.1136035,245.41352,68.767752)" - x1="-257.51324" - y1="-50.301723" - x2="-257.49792" - y2="-51.439991" /> - </defs> - <sodipodi:namedview - id="base" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:pageopacity="0.0" - inkscape:pageshadow="2" - inkscape:zoom="11.313708" - inkscape:cx="30.024929" - inkscape:cy="6.5961333" - inkscape:current-layer="layer1" - showgrid="true" - inkscape:grid-bbox="true" - inkscape:document-units="px" - inkscape:window-width="1280" - inkscape:window-height="752" - inkscape:window-x="0" - inkscape:window-y="0" - inkscape:snap-global="false"> - <inkscape:grid - type="xygrid" - id="grid2855" - empspacing="5" - visible="true" - enabled="true" /> - </sodipodi:namedview> - <metadata - id="metadata3884"> - <rdf:RDF> - <cc:Work - rdf:about=""> - <dc:format>image/svg+xml</dc:format> - <dc:type - rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> - </cc:Work> - </rdf:RDF> - </metadata> - <g - id="layer1" - inkscape:label="Layer 1" - inkscape:groupmode="layer" - transform="translate(8.5714283,-0.14285715)"> - <rect - style="fill:#cc0000;fill-opacity:0;stroke:none" - id="rect5861" - width="32.938541" - height="32.938541" - x="-9.7751017" - y="-0.79568303" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" - d="m 1.9145026,1.3173618 c -4.6831399,0 -8.4777215,3.7603186 -8.4777215,8.4276345 l 0,4.3960947 c 0,0.493488 0.047692,0.966938 0.1290984,1.436772 l 1.0219853,0 c -0.087239,-0.46606 -0.1291054,-0.944348 -0.1291054,-1.436772 l 0,-4.3960947 c 0,-4.2990218 4.2056809,-7.7414149 8.5192778,-7.7414149 l 7.6873528,0 c 4.313596,0 7.789175,3.4423931 7.789175,7.7414149 l 0,4.3960947 c 0,0.492424 -0.04186,0.970712 -0.129105,1.436772 l 0.974072,0 c 0.08141,-0.469834 0.129105,-0.943284 0.129105,-1.436772 l 0,-4.3960947 c 0,-4.6673159 -3.794582,-8.4276345 -8.477721,-8.4276345 l -9.0364134,0 z" - id="rect5549" - sodipodi:nodetypes="ccccccccccccccccc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="fill:url(#radialGradient5382);fill-opacity:1;stroke:none" - d="m -4.9451328,6.6771159 c -0.2382967,-0.1875506 -0.3328176,-0.4368942 -0.3134387,-0.826805 0.019908,-0.4006407 0.097834,-0.5213766 0.7600657,-1.1777397 3.2353396,-3.2067063 9.3093493,-4.6899303 15.0315108,-3.670585 2.613773,0.4656271 5.073336,1.4865771 6.785537,2.8166358 0.921369,0.7157372 1.613595,1.4870802 1.691896,1.8852778 0.106689,0.542581 -0.217518,1.088092 -0.646986,1.0885949 C 18.22184,6.7926704 18.094005,6.725193 17.802257,6.4963114 14.60793,3.9901815 9.5705605,3.0274559 4.6388625,3.5603368 1.2946491,3.9216742 -1.6363077,4.7181575 -3.9060775,6.4188147 -4.4662772,6.8385521 -4.6743153,6.8902619 -4.9451328,6.6771159 l 0,0 z" - id="path5202" - sodipodi:nodetypes="cssssssssscc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:url(#linearGradient5394);fill-opacity:1;stroke:none;stroke-width:1.36950052;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" - d="M 5.9838584,0.17166026 C 5.1095585,0.20663073 4.2382243,0.29156016 3.394953,0.42230013 0.04247471,0.94208089 -2.9747116,2.2080433 -4.915651,4.1317997 c -0.011904,0.011787 -0.031676,0.013182 -0.043511,0.025045 -0.016864,0.023062 -0.031489,0.048317 -0.043511,0.075137 -0.5805135,0.4714269 -0.7747954,1.3841486 -0.4133546,2.1053935 0.3553353,0.7090636 1.1019287,0.9693649 1.7404406,0.6516606 0.011487,-0.00543 0.032163,0.00621 0.043511,0 0.030839,-0.011883 0.060226,-0.028799 0.087022,-0.050091 0.00557,-0.0031 0.016221,0.00388 0.021721,0 0.013158,-0.00977 0.030284,-0.015352 0.043511,-0.025045 0.00815,-0.00543 0.013575,-0.019075 0.021721,-0.025045 4.42090043,-3.2482857 12.7875743,-3.6783329 18.513938,-1.1109257 0.801771,0.359467 1.522996,0.5612214 2.153794,1.0106657 0.0069,0.00871 0.01416,0.01707 0.02172,0.025045 0.0083,0.00543 0.0135,0.019075 0.02172,0.025045 0.01873,0.028221 0.04073,0.053561 0.06523,0.075137 0.662378,0.4405821 1.532062,0.1866468 1.914485,-0.5764698 0.32666,-0.6518311 0.193384,-1.4553767 -0.261066,-1.9550127 -0.0062,-0.017277 -0.01349,-0.034053 -0.02172,-0.050168 -0.0042,-0.00388 -0.01747,0.00388 -0.02172,0 -0.0069,-0.00871 -0.01417,-0.017069 -0.02172,-0.025045 -0.01914,-0.018377 -0.02339,-0.057923 -0.04351,-0.075137 2.23e-4,-0.00835 2.23e-4,-0.016699 0,-0.025045 C 17.626438,2.9422684 15.867096,1.9315671 13.750505,1.2243105 12.113516,0.67731325 10.374064,0.34798591 8.6162053,0.22174326 7.7372758,0.15862581 6.8580887,0.13665877 5.9837888,0.1716525 l 6.96e-5,7.76e-6 z M 7.2891889,1.1336088 c 2.1378181,0.035901 4.2887031,0.3670427 6.2655851,1.0276281 l 0.02172,0 c 1.92325,0.6454806 3.513456,1.4252715 4.633924,2.4969112 0.03311,0.074934 0.08725,0.1372993 0.152288,0.1754495 0.336545,0.2238499 0.455369,0.7150959 0.261066,1.1028263 -0.16516,0.3295754 -0.503022,0.478072 -0.804953,0.3759598 -0.03188,-0.03246 -0.06896,-0.058069 -0.108777,-0.075136 C 16.997965,5.7085187 16.200286,5.2394489 15.295181,4.833644 12.29636,3.4891337 8.6839711,2.9762928 5.2223808,3.229538 1.8200146,3.4784567 -1.420665,4.4860717 -3.7626438,6.1871102 c -0.00557,0.00388 -0.016499,-0.00388 -0.021721,0 -0.014986,0.00717 -0.029537,0.015544 -0.043511,0.025045 -0.014986,0.00717 -0.029537,0.015544 -0.043511,0.025045 -0.00829,0.00621 -0.013506,0.01892 -0.021721,0.025045 -0.3321179,0.2011152 -0.7460434,0.052185 -0.9354868,-0.3258303 -0.1865196,-0.3722068 -0.088115,-0.8432306 0.2175551,-1.0777654 0.014982,-0.00717 0.029532,-0.015544 0.043511,-0.025045 0.051565,-0.028565 0.096846,-0.072038 0.130533,-0.1253199 1.7837016,-1.7457008 4.67971835,-2.821787 7.9190054,-3.3240282 1.2303452,-0.1907636 2.524523,-0.272227 3.8072138,-0.2506399 l -3.48e-5,-7.7e-6 z" - id="path5194" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" - sodipodi:nodetypes="csssssssssssssssssssssscssccccccsssssssssssssscscc" /> - <path - sodipodi:type="arc" - style="fill:none;stroke:url(#linearGradient5212);stroke-width:1.41199458;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - id="path5204" - sodipodi:cx="-285.49203" - sodipodi:cy="-135.7495" - sodipodi:rx="18.775068" - sodipodi:ry="9.3875341" - d="m -300.83968,-141.15673 a 18.775068,9.3875341 0 0 1 30.74554,0.0358" - transform="matrix(-0.70657745,0,0,0.70986232,-194.81186,105.68217)" - sodipodi:start="3.7554218" - sodipodi:end="5.6740176" - sodipodi:open="true" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" - d="m -6.5233133,22.735232 0,0.02141 c 0,4.667316 3.7603187,8.427634 8.4276344,8.427634 l 6.3475307,0 0.2625302,-0.900842 -6.3475307,0 c -4.2990216,0 -7.7414148,-3.442393 -7.7414148,-7.741415 l 0,-0.02141 -0.9487498,0.214623 z" - id="rect5551" - sodipodi:nodetypes="ccccccccc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - ry="1.4981471" - rx="1.4981471" - y="1.9545606" - x="28.614576" - height="6.9623013" - width="2.9962943" - id="rect4784" - style="fill:#555753;fill-opacity:1;stroke:url(#linearGradient4792);stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - transform="matrix(0,1,1,0,0,0)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - sodipodi:type="inkscape:offset" - inkscape:radius="-1.0081301" - inkscape:original="M -103.46875 -287.5 C -104.58751 -287.5 -105.5 -286.58751 -105.5 -285.46875 L -105.5 -279.53125 C -105.5 -278.41249 -104.58751 -277.5 -103.46875 -277.5 L -102.53125 -277.5 C -101.41249 -277.5 -100.5 -278.41249 -100.5 -279.53125 L -100.5 -285.46875 C -100.5 -286.58751 -101.41249 -287.5 -102.53125 -287.5 L -103.46875 -287.5 z " - style="opacity:0.6081081;fill:none;stroke:url(#linearGradient4977);stroke-width:2.1435864;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - id="path4967" - d="m -103.46875,-286.5 c -0.57059,0 -1.03125,0.46066 -1.03125,1.03125 l 0,5.9375 c 0,0.57059 0.46066,1.03125 1.03125,1.03125 l 0.9375,0 c 0.57059,0 1.03125,-0.46066 1.03125,-1.03125 l 0,-5.9375 c 0,-0.57059 -0.46066,-1.03125 -1.03125,-1.03125 l -0.9375,0 z" - transform="matrix(0,0.35041293,0.62106611,0,180.86297,66.235476)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - transform="matrix(0,1,1,0,0,0)" - style="fill:url(#linearGradient5632);fill-opacity:1;stroke:none" - id="rect5572" - width="1.99455" - height="5.9798374" - x="29.110865" - y="2.4541459" - rx="0.99727499" - ry="0.99727499" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient5758);stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - d="m -4.7126309,12.654361 c -1.8622525,0 -3.3612598,1.30267 -3.3612598,2.921028 l 0,5.131543 c 0,1.618351 1.4990073,2.921029 3.3612598,2.921029 l 1.5803872,0.0017 0.01985,-10.983712 c -1.1943624,0.02977 -0.4950442,0.0084 -1.6002373,0.0084 l 0,-6.9e-5 1e-7,8.1e-5 z" - id="path5707" - sodipodi:nodetypes="ccccccccc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient5719-5);fill-opacity:1;stroke:none" - id="rect5709" - width="1.9106927" - height="10.99095" - x="-5.5105519" - y="12.139328" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient3623);fill-opacity:1;stroke:none" - id="rect5711" - width="2.0266206" - height="11.968007" - x="-3.5911674" - y="12.157709" - rx="1.0133103" - ry="1.0133103" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - sodipodi:nodetypes="cccccccc" - id="path5713" - d="m -5.238356,13.125441 c -1.2499833,0 -2.2561527,1.137149 -2.2561527,2.549866 l 0,4.479482 c 0,1.41271 1.0061694,2.549858 2.2561527,2.549858 l 1.6478054,-0.02288 0,-9.556232 c -0.8016761,0.02597 -0.9059746,0 -1.6478054,0 l 0,-9.6e-5 z" - style="opacity:0.5;fill:url(#radialGradient5721-4);fill-opacity:1;stroke:none" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient5723-8);fill-opacity:1;stroke:none" - id="rect5715" - width="1.9859439" - height="7.995038" - x="6.5732913" - y="14.12711" - rx="0.99742299" - ry="0.99742305" - transform="scale(-1,1)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - sodipodi:type="arc" - style="fill:#dee1e3;fill-opacity:1;stroke:none" - id="path5859" - sodipodi:cx="-244.01906" - sodipodi:cy="-24.045986" - sodipodi:rx="0.83739835" - sodipodi:ry="1.3739837" - d="m -243.18166,-24.045986 a 0.83739835,1.3739837 0 1 1 -1.6748,0 0.83739835,1.3739837 0 1 1 1.6748,0 z" - transform="matrix(0.8690986,0,0,0.73826906,214.78423,47.887046)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient4984);fill-opacity:1;stroke:none" - id="rect5811-4" - width="1.0533623" - height="2.3305926" - x="30.146362" - y="-3.4252403" - rx="0.50398123" - ry="0.50398123" - transform="matrix(0,1,-1,0,0,0)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - y="-0.79568303" - x="-9.7751017" - height="32.938541" - width="32.938541" - id="rect5863" - style="fill:#ffffff;fill-opacity:0;stroke:none" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> - <path - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - sodipodi:nodetypes="ccccccccc" - id="path2878" - d="m 17.586784,12.654361 c 1.862252,0 3.36126,1.30267 3.36126,2.921028 l 0,5.131543 c 0,1.618351 -1.499008,2.921029 -3.36126,2.921029 l -1.580387,0.0017 -0.01985,-10.983712 c 1.194362,0.02977 0.495044,0.0084 1.600237,0.0084 l 0,-6.9e-5 0,8.1e-5 z" - style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient2944);stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" /> - <rect - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - y="12.139328" - x="-18.384705" - height="10.99095" - width="1.9106927" - id="rect2880" - style="fill:url(#linearGradient2892-5);fill-opacity:1;stroke:none" - transform="scale(-1,1)" /> - <rect - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - ry="1.0133103" - rx="1.0133103" - y="12.157709" - x="-16.465319" - height="11.968007" - width="2.0266206" - id="rect2882" - style="fill:url(#linearGradient2894-1);fill-opacity:1;stroke:none" - transform="scale(-1,1)" /> - <path - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - style="opacity:0.5;fill:url(#radialGradient2896-0);fill-opacity:1;stroke:none" - d="m 18.112509,13.125441 c 1.249983,0 2.256153,1.137149 2.256153,2.549866 l 0,4.479482 c 0,1.41271 -1.00617,2.549858 -2.256153,2.549858 l -1.647805,-0.02288 0,-9.556232 c 0.801676,0.02597 0.905974,0 1.647805,0 l 0,-9.6e-5 z" - id="path2884" - sodipodi:nodetypes="cccccccc" /> - <rect - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - ry="0.99742305" - rx="0.99742299" - y="14.12711" - x="19.447443" - height="7.995038" - width="1.9859439" - id="rect2886" - style="fill:url(#linearGradient2898-1);fill-opacity:1;stroke:none" /> - <rect - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - ry="0.50398123" - rx="0.50398123" - y="11.170098" - x="-19.396423" - height="3.9994802" - width="0.93696725" - id="rect2888" - style="fill:url(#linearGradient2900-3);fill-opacity:1;stroke:none" - transform="scale(-1,1)" /> - <rect - transform="scale(-1,1)" - style="fill:url(#linearGradient3017);fill-opacity:1;stroke:none" - id="rect3015" - width="0.93696725" - height="3.9994802" - x="5.5535235" - y="11.170098" - rx="0.50398123" - ry="0.50398123" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - </g> -</svg>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pidgin/pixmaps/toolbar/48/scalable/audio-call.svg Mon Aug 24 19:21:21 2009 +0000 @@ -0,0 +1,756 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="48" + height="48" + id="svg3879" + sodipodi:version="0.32" + inkscape:version="0.46+devel r20974" + version="1.0" + sodipodi:docname="voice.svg" + inkscape:output_extension="org.inkscape.output.svg.inkscape"> + <defs + id="defs3881"> + <linearGradient + inkscape:collect="always" + id="linearGradient3617"> + <stop + style="stop-color:#2e3436;stop-opacity:1;" + offset="0" + id="stop3619" /> + <stop + style="stop-color:#0b0c0d;stop-opacity:1" + offset="1" + id="stop3621" /> + </linearGradient> + <inkscape:perspective + sodipodi:type="inkscape:persp3d" + inkscape:vp_x="0 : 24 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_z="48 : 24 : 1" + inkscape:persp3d-origin="24 : 16 : 1" + id="perspective96" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4555" + id="linearGradient4563" + gradientUnits="userSpaceOnUse" + x1="-257.51324" + y1="-50.301723" + x2="-257.49792" + y2="-51.439991" + gradientTransform="matrix(0.96773657,0,0,1.1033764,283.17944,75.227551)" /> + <linearGradient + id="linearGradient4555" + inkscape:collect="always"> + <stop + id="stop4557" + offset="0" + style="stop-color:#545652;stop-opacity:1;" /> + <stop + id="stop4559" + offset="1" + style="stop-color:#80837d;stop-opacity:1" /> + </linearGradient> + <linearGradient + gradientTransform="translate(70.143605,-254.44307)" + inkscape:collect="always" + xlink:href="#linearGradient4976" + id="linearGradient4984" + x1="-24.687374" + y1="245.84587" + x2="-24.687374" + y2="247.61009" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient4976"> + <stop + style="stop-color:#555753;stop-opacity:1;" + offset="0" + id="stop4978" /> + <stop + style="stop-color:#808080;stop-opacity:1" + offset="1" + id="stop4980" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4555" + id="linearGradient4553" + x1="-257.51324" + y1="-50.301723" + x2="-257.49792" + y2="-51.439991" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(254.47694,70.270976)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5677-7" + id="linearGradient5723-8" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1,0,0,1.110704,-300.45156,160.82553)" + x1="305.89481" + y1="-120.46718" + x2="306.04715" + y2="-120.46718" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5677-7"> + <stop + style="stop-color:#ff2de7;stop-opacity:1" + offset="0" + id="stop5679-1" /> + <stop + style="stop-color:#7b009b;stop-opacity:1" + offset="1" + id="stop5681-4" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5043-9-6-1" + id="radialGradient5721-4" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.93663395,1.7844755,-2.1045445,1.0450496,29.790687,695.97821)" + cx="-306.03387" + cy="-120.8595" + fx="-306.03387" + fy="-120.8595" + r="3.03685" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5043-9-6-1"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop5045-4-8-8" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop5047-1-2-6" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5655-9" + id="linearGradient5719-5" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0739995,0,0,1.2558918,322.6417,178.48569)" + x1="-300.82822" + y1="-126.31032" + x2="-300.82822" + y2="-114.83224" /> + <linearGradient + id="linearGradient5655-9" + inkscape:collect="always"> + <stop + id="stop5657-5" + offset="0" + style="stop-color:#2e3436;stop-opacity:1" /> + <stop + id="stop5659-1" + offset="1" + style="stop-color:#707e83;stop-opacity:0;" /> + </linearGradient> + <linearGradient + y2="-36.569096" + x2="-219.25159" + y1="-43.842201" + x1="-219.25159" + gradientTransform="matrix(-1.1341053,0,0,1.0684624,-250.41566,72.38903)" + gradientUnits="userSpaceOnUse" + id="linearGradient5758" + xlink:href="#linearGradient5853" + inkscape:collect="always" /> + <linearGradient + id="linearGradient5853" + inkscape:collect="always"> + <stop + id="stop5855" + offset="0" + style="stop-color:#888a85;stop-opacity:1" /> + <stop + id="stop5857" + offset="1" + style="stop-color:#555753;stop-opacity:1" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5626" + id="linearGradient5632" + x1="-25.743168" + y1="-243.09763" + x2="-23.90864" + y2="-240.62437" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1,0,0,1.4970962,69.91678,375.11023)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5626"> + <stop + style="stop-color:#babdb6;stop-opacity:1;" + offset="0" + id="stop5628" /> + <stop + style="stop-color:#babdb6;stop-opacity:0;" + offset="1" + id="stop5630" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4971" + id="linearGradient4977" + x1="-105.74262" + y1="-282.20282" + x2="-102.94624" + y2="-282.20282" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient4971"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop4973" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop4975" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4786" + id="linearGradient4792" + x1="-106.91152" + y1="280.91522" + x2="-101.28181" + y2="282.32028" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.81265471,0,0,1,129.18772,-269.64677)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient4786"> + <stop + style="stop-color:#555753;stop-opacity:1" + offset="0" + id="stop4788" /> + <stop + style="stop-color:#000000;stop-opacity:1" + offset="1" + id="stop4790" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5677" + id="linearGradient5449-8" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1,0,0,1.110704,-269.59835,161.01943)" + x1="305.89481" + y1="-120.46718" + x2="306.04715" + y2="-120.46718" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5677"> + <stop + style="stop-color:#ff2de7;stop-opacity:1" + offset="0" + id="stop5679" /> + <stop + style="stop-color:#7b009b;stop-opacity:1" + offset="1" + id="stop5681" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5043-9-6" + id="radialGradient5447-5" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-0.93663395,1.7844755,2.1045445,1.0450496,1.0625172,696.17212)" + cx="-306.03387" + cy="-120.8595" + fx="-306.03387" + fy="-120.8595" + r="3.03685" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5043-9-6"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop5045-4-8" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop5047-1-2" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5655" + id="linearGradient5443-6" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.0930233,0,0,1.2470295,297.52685,177.58046)" + x1="-300.82822" + y1="-126.31032" + x2="-300.82822" + y2="-114.83224" /> + <linearGradient + id="linearGradient5655" + inkscape:collect="always"> + <stop + id="stop5657" + offset="0" + style="stop-color:#2e3436;stop-opacity:1" /> + <stop + id="stop5659" + offset="1" + style="stop-color:#707e83;stop-opacity:0;" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5661" + id="linearGradient5667" + x1="-219.25159" + y1="-43.842201" + x2="-219.25159" + y2="-36.569096" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.1341053,0,0,1.0632786,281.26887,72.326317)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5661"> + <stop + style="stop-color:#888a85;stop-opacity:1;" + offset="0" + id="stop5663" /> + <stop + style="stop-color:#555753;stop-opacity:1" + offset="1" + id="stop5665" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5206" + id="linearGradient5212" + x1="-304.49771" + y1="-142.89493" + x2="-262.4259" + y2="-143.92334" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5206"> + <stop + style="stop-color:#ffffff;stop-opacity:1" + offset="0" + id="stop5208" /> + <stop + style="stop-color:#dededd;stop-opacity:0;" + offset="1" + id="stop5210" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5388" + id="linearGradient5394" + x1="-283.80222" + y1="-143.74782" + x2="-283.80222" + y2="-141.12897" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(299.49582,147.12151)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5388"> + <stop + style="stop-color:#555753;stop-opacity:1" + offset="0" + id="stop5390" /> + <stop + style="stop-color:#000000;stop-opacity:1" + offset="1" + id="stop5392" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5376" + id="radialGradient5382" + cx="-284.44626" + cy="-153.18155" + fx="-284.44626" + fy="-153.18155" + r="17.449057" + gradientTransform="matrix(0.7493289,0.0071443,-0.00739936,0.77608101,227.05992,124.25584)" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + id="linearGradient5376"> + <stop + style="stop-color:#babdb6;stop-opacity:1" + offset="0" + id="stop5378" /> + <stop + style="stop-color:#434542;stop-opacity:1" + offset="1" + id="stop5380" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3617" + id="linearGradient3623" + x1="1.421198" + y1="19.01931" + x2="1.421198" + y2="34.927505" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3617" + id="linearGradient3627" + gradientUnits="userSpaceOnUse" + x1="1.421198" + y1="19.01931" + x2="1.421198" + y2="34.927505" + gradientTransform="translate(27.998451,0)" /> + <inkscape:perspective + id="perspective3637" + inkscape:persp3d-origin="0.5 : 0.33333333 : 1" + inkscape:vp_z="1 : 0.5 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 0.5 : 1" + sodipodi:type="inkscape:persp3d" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3617-8" + id="linearGradient3627-1" + gradientUnits="userSpaceOnUse" + x1="1.421198" + y1="19.01931" + x2="1.421198" + y2="34.927505" + gradientTransform="translate(27.998451,0)" /> + <linearGradient + inkscape:collect="always" + id="linearGradient3617-8"> + <stop + style="stop-color:#2e3436;stop-opacity:1;" + offset="0" + id="stop3619-2" /> + <stop + style="stop-color:#0b0c0d;stop-opacity:1" + offset="1" + id="stop3621-4" /> + </linearGradient> + <linearGradient + y2="34.927505" + x2="1.421198" + y1="19.01931" + x1="1.421198" + gradientTransform="translate(27.998451,2.9924335e-7)" + gradientUnits="userSpaceOnUse" + id="linearGradient3646" + xlink:href="#linearGradient3617-8" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1" + inkscape:cx="275.47836" + inkscape:cy="12.04013" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:grid-bbox="true" + inkscape:document-units="px" + inkscape:window-width="1280" + inkscape:window-height="752" + inkscape:window-x="0" + inkscape:window-y="0" /> + <metadata + id="metadata3884"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:label="Layer 1" + inkscape:groupmode="layer" + transform="translate(8.5714283,-0.14285715)"> + <rect + style="fill:#cc0000;fill-opacity:0;stroke:none" + id="rect5861" + width="48" + height="48" + x="-8.5714283" + y="0.14285715" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" + d="m 8.7956674,3.2221118 c -6.82455,0 -12.3542402,5.47976 -12.3542402,12.2812502 l 0,6.40625 c 0,0.71914 0.0695,1.40908 0.18813,2.09375 l 1.0034,0 c -0.12713,-0.67917 -0.18814,-1.37616 -0.18814,-2.09375 l 0,-6.40625 c 0,-6.2647902 5.0648202,-11.2812502 11.3508502,-11.2812502 l 13.2912696,0 c 6.28603,0 11.35085,5.01646 11.35085,11.2812502 l 0,6.40625 c 0,0.71759 -0.061,1.41458 -0.18814,2.09375 l 1.00339,0 c 0.11864,-0.68467 0.18814,-1.37461 0.18814,-2.09375 l 0,-6.40625 c 0,-6.8014902 -5.52969,-12.2812502 -12.35424,-12.2812502 l -13.2912696,0 z" + id="rect5549" + sodipodi:nodetypes="ccccccccccccccccc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="fill:url(#radialGradient5382);fill-opacity:1;stroke:none" + d="m -1.5394328,9.4030418 c -0.34234,-0.23492 -0.47813,-0.54724 -0.45029,-1.03563 0.0286,-0.50183 0.14055,-0.65306 1.09192003,-1.4752 4.64793017,-4.01662 13.37392977,-5.87446 21.59445977,-4.59766 3.75498,0.58323 7.28842,1.86204 9.74819,3.52803 1.32365,0.89651 2.31811,1.86267 2.4306,2.36144 0.15327,0.67962 -0.31249,1.36291 -0.92947,1.36354 -0.20344,2.2e-4 -0.38709,-0.0843 -0.80622,-0.37099 -4.58901,-3.1391 -11.82576,-4.34498 -18.9107,-3.67751 -4.8043396,0.4526 -9.0149896,1.45025 -12.27576977,3.58044 -0.80479,0.52575 -1.10366003,0.59052 -1.49272003,0.32354 l 0,0 z" + id="path5202" + sodipodi:nodetypes="cssssssssscc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:url(#linearGradient5394);fill-opacity:1;stroke:none;stroke-width:1.36950052;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" + d="m 14.152067,1.1469218 c -1.25586,0.0451 -2.50746,0.15463 -3.71875,0.32324 -4.8155596,0.67034 -9.1494998,2.303 -11.9374998,4.78399 -0.0171,0.0152 -0.0455,0.017 -0.0625,0.0323 a 0.50262213,0.52231753 0 0 0 -0.0625,0.0969 c -0.83386,0.60798 -1.11293,1.78508 -0.59375,2.71524 0.51041,0.9144502 1.58283003,1.2501502 2.50000003,0.84042 0.0165,-0.007 0.0462,0.008 0.0625,0 a 0.4997817,0.5193658 0 0 0 0.125,-0.0646 c 0.008,-0.004 0.0233,0.005 0.0312,0 0.0189,-0.0126 0.0435,-0.0198 0.0625,-0.0323 0.0117,-0.007 0.0195,-0.0246 0.0312,-0.0323 6.35026017,-4.18918 18.36829977,-4.99194 26.59374977,-1.68086 1.15168,0.46359 2.18766,0.97193 3.09375,1.55156 a 0.50097,0.51819158 0 0 0 0.0312,0.0323 c 0.0119,0.007 0.0194,0.0246 0.0312,0.0323 a 0.50097,0.51819158 0 0 0 0.0937,0.0969 c 0.95145,0.5682002 2.20068,0.2407102 2.75,-0.74345 0.46922,-0.84064 0.27778,-1.87694 -0.375,-2.5213 a 0.50262213,0.52231753 0 0 0 -0.0312,-0.0647 c -0.006,-0.005 -0.0251,0.005 -0.0312,0 a 0.50262213,0.52231753 0 0 0 -0.0312,-0.0323 c -0.0275,-0.0237 -0.0336,-0.0747 -0.0625,-0.0969 a 0.50262213,0.52231753 0 0 0 0,-0.0323 c -1.77629,-1.631 -4.30344,-2.93446 -7.34375,-3.84658 -2.3514,-0.70544 -4.84998,-1.13016 -7.375,-1.29297 -1.26251,-0.0814 -2.52539,-0.10973 -3.78125,-0.0646 z m 1.875,1.03438 c 3.0708,0.0463 6.16037,0.47336 9,1.32529 l 0.0312,0 c 2.76259,0.83245 5.04679,2.04432 6.65625,3.42637 a 0.50005001,0.51723997 0 0 0 0.21875,0.22627 c 0.48342,0.28869 0.6541,0.92223 0.375,1.42227 -0.23724,0.42504 -0.72255,0.61655 -1.15625,0.48486 a 0.49889166,0.51844088 0 0 0 -0.15625,-0.0969 c -1.02284,-0.68188 -2.16864,-1.28682 -3.46875,-1.81017 -4.30756,-1.73396 -9.49646,-2.39535 -14.46875,-2.06875 -4.8872196,0.32102 -9.5421896,1.6205 -12.90624977,3.81426 -0.008,0.005 -0.0237,-0.005 -0.0312,0 a 0.50097251,0.51819418 0 0 0 -0.0625,0.0323 0.50097251,0.51819418 0 0 0 -0.0625,0.0323 c -0.0119,0.008 -0.0194,0.0244 -0.0312,0.0323 -0.47706,0.25937 -1.07163003,0.0673 -1.34375003,-0.42021 -0.26792,-0.48002 -0.12657,-1.08748 0.3125,-1.38995 a 0.50262213,0.52231753 0 0 0 0.0625,-0.0323 0.50005001,0.51723997 0 0 0 0.18750003,-0.16162 c 2.56214017,-2.25136 6.72203017,-3.84535 11.37499977,-4.49307 1.76729,-0.24602 3.62627,-0.35108 5.46875,-0.32324 z" + id="path5194" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + sodipodi:type="arc" + style="fill:none;stroke:url(#linearGradient5212);stroke-width:0.96893835;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + id="path5204" + sodipodi:cx="-285.49203" + sodipodi:cy="-135.7495" + sodipodi:rx="18.775068" + sodipodi:ry="9.3875341" + d="m -300.83968,-141.15673 c 5.97266,-4.23814 17.68585,-5.25293 26.16212,-2.26659 1.7838,0.62846 3.33482,1.4076 4.58342,2.30242" + transform="matrix(-1.0296667,0,0,1.0344536,-278.49445,154.74398)" + sodipodi:start="3.7554218" + sodipodi:end="5.6740176" + sodipodi:open="true" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" + d="m -3.5925728,33.735378 0,0.0312 c 0,6.80149 5.4797602,12.28125 12.2812502,12.28125 l 9.2499996,0 0,-1 -9.2499996,0 c -6.26479,0 -11.2812502,-5.01646 -11.2812502,-11.28125 l 0,-0.0312 -1,0 z" + id="rect5551" + sodipodi:nodetypes="ccccccccc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + sodipodi:nodetypes="cccccccc" + id="path5431" + d="m 33.003467,19.691354 c 2.15778,0 3.89467,1.77306 3.89467,3.975801 l 0,6.984518 c 0,2.20273 -1.73689,3.9758 -3.89467,3.9758 l -3.07307,0.04092 -0.0268,-14.992278 c 1.3839,0.04051 1.81932,0.01533 3.0999,0.01533 l 0,-9.2e-5 z" + style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient5667);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + y="19.212761" + x="-32.432659" + height="14.883246" + width="2.0379403" + id="rect5433" + style="fill:url(#linearGradient5443-6);fill-opacity:1;stroke:none" + transform="scale(-1,1)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="opacity:0.5;fill:url(#radialGradient5447-5);fill-opacity:1;stroke:none" + d="m 32.779907,20.143134 c 1.82155,0 3.2878,1.657121 3.2878,3.715816 l 0,6.527768 c 0,2.058685 -1.46625,3.715805 -3.2878,3.715805 l -2.40128,-0.03334 0,-13.925911 c 1.16825,0.03784 1.32024,0 2.40128,0 l 0,-1.39e-4 z" + id="path5437" + sodipodi:nodetypes="cccccccc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + ry="0.99742299" + rx="0.99742299" + y="22.267445" + x="35.395443" + height="9.8971453" + width="1.994846" + id="rect5439" + style="fill:url(#linearGradient5449-8);fill-opacity:1;stroke:none" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + ry="2.0194242" + rx="2.0194242" + y="7.854322" + x="43.456417" + height="9.9894991" + width="4.0564089" + id="rect4784" + style="fill:#555753;fill-opacity:1;stroke:url(#linearGradient4792);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + transform="matrix(0,1,1,0,0,0)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + sodipodi:type="inkscape:offset" + inkscape:radius="-1.0081301" + inkscape:original="M -103.46875 -287.5 C -104.58751 -287.5 -105.5 -286.58751 -105.5 -285.46875 L -105.5 -279.53125 C -105.5 -278.41249 -104.58751 -277.5 -103.46875 -277.5 L -102.53125 -277.5 C -101.41249 -277.5 -100.5 -278.41249 -100.5 -279.53125 L -100.5 -285.46875 C -100.5 -286.58751 -101.41249 -287.5 -102.53125 -287.5 L -103.46875 -287.5 z " + style="opacity:0.6081081;fill:none;stroke:url(#linearGradient4977);stroke-width:1.22016776;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + id="path4967" + d="m -103.46875,-286.5 c -0.57059,0 -1.03125,0.46066 -1.03125,1.03125 l 0,5.9375 c 0,0.57059 0.46066,1.03125 1.03125,1.03125 l 0.9375,0 c 0.57059,0 1.03125,-0.46066 1.03125,-1.03125 l 0,-5.9375 c 0,-0.57059 -0.46066,-1.03125 -1.03125,-1.03125 l -0.9375,0 z" + transform="matrix(0,0.67167761,1,0,295.34493,114.69191)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + transform="matrix(0,1,1,0,0,0)" + style="fill:url(#linearGradient5632);fill-opacity:1;stroke:none" + id="rect5572" + width="3.0350325" + height="8.8761415" + x="43.98975" + y="8.3505688" + rx="1.5175163" + ry="1.5023295" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient5758);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" + d="m -2.1502628,19.497458 c -2.15778,0 -3.89467,1.781702 -3.89467,3.995182 l 0,7.01857 c 0,2.213469 1.73689,3.995183 3.89467,3.995183 l 3.05582003,0.0024 0.023,-15.022765 c -1.3839,0.04071 -1.79824,0.0115 -3.07882003,0.0115 l 0,-9.6e-5 z" + id="path5707" + sodipodi:nodetypes="cccccccc" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient5719-5);fill-opacity:1;stroke:none" + id="rect5709" + width="2.0024707" + height="14.989019" + x="-1.5749686" + y="18.992523" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient3623);fill-opacity:1;stroke:none" + id="rect5711" + width="1.9620597" + height="15.908196" + x="0.44016811" + y="19.01931" + rx="0.98102987" + ry="0.98102987" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + sodipodi:nodetypes="cccccccc" + id="path5713" + d="m -1.9267028,19.949234 c -1.82155,0 -3.2878,1.657121 -3.2878,3.715816 l 0,6.527768 c 0,2.058685 1.46625,3.715805 3.2878,3.715805 l 2.40128003,-0.03334 0,-13.925911 c -1.16825,0.03784 -1.32024,0 -2.40128003,0 l 0,-1.39e-4 z" + style="opacity:0.5;fill:url(#radialGradient5721-4);fill-opacity:1;stroke:none" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient5723-8);fill-opacity:1;stroke:none" + id="rect5715" + width="1.994846" + height="9.8971453" + x="4.542254" + y="22.073544" + rx="0.99742299" + ry="0.99742299" + transform="scale(-1,1)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient4553);fill-opacity:1;stroke:none" + id="rect5811" + width="1.0079625" + height="3.591476" + x="-3.557543" + y="18.549107" + rx="0.50398123" + ry="0.50398123" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <path + sodipodi:type="arc" + style="fill:#dee1e3;fill-opacity:1;stroke:none" + id="path5859" + sodipodi:cx="-244.01906" + sodipodi:cy="-24.045986" + sodipodi:rx="0.83739835" + sodipodi:ry="1.3739837" + d="m -243.18166,-24.045986 c 0,0.75883 -0.37492,1.373984 -0.8374,1.373984 -0.46248,0 -0.8374,-0.615154 -0.8374,-1.373984 0,-0.75883 0.37492,-1.373984 0.8374,-1.373984 0.46248,0 0.8374,0.615154 0.8374,1.373984 z" + transform="matrix(1.2048093,0,0,1.0941414,303.39913,71.819285)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + style="fill:url(#linearGradient4984);fill-opacity:1;stroke:none" + id="rect5811-4" + width="1.0079625" + height="2.3272483" + x="45.000946" + y="-9.4003887" + rx="0.50398123" + ry="0.50398123" + transform="matrix(0,1,-1,0,0,0)" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" /> + <rect + y="0.14285715" + x="-8.5714283" + height="48" + width="48" + id="rect5863" + style="fill:#ffffff;fill-opacity:0;stroke:none" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> + <rect + ry="0.50398123" + rx="0.50398123" + y="18.158859" + x="33.470028" + height="3.9627495" + width="0.97544211" + id="rect4561" + style="fill:url(#linearGradient4563);fill-opacity:1;stroke:none" + inkscape:export-xdpi="90.108963" + inkscape:export-ydpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> + <rect + inkscape:export-ydpi="90.108963" + inkscape:export-xdpi="90.108963" + inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" + ry="0.98102987" + rx="0.98102987" + y="19.01931" + x="28.43862" + height="15.908196" + width="1.9620597" + id="rect3625" + style="fill:url(#linearGradient3646);fill-opacity:1;stroke:none" /> + </g> +</svg>
--- a/pidgin/pixmaps/toolbar/48/scalable/voice-call.svg Thu Aug 13 17:40:00 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,756 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<!-- Created with Inkscape (http://www.inkscape.org/) --> - -<svg - xmlns:dc="http://purl.org/dc/elements/1.1/" - xmlns:cc="http://creativecommons.org/ns#" - xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:svg="http://www.w3.org/2000/svg" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" - xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="48" - height="48" - id="svg3879" - sodipodi:version="0.32" - inkscape:version="0.46+devel r20974" - version="1.0" - sodipodi:docname="voice.svg" - inkscape:output_extension="org.inkscape.output.svg.inkscape"> - <defs - id="defs3881"> - <linearGradient - inkscape:collect="always" - id="linearGradient3617"> - <stop - style="stop-color:#2e3436;stop-opacity:1;" - offset="0" - id="stop3619" /> - <stop - style="stop-color:#0b0c0d;stop-opacity:1" - offset="1" - id="stop3621" /> - </linearGradient> - <inkscape:perspective - sodipodi:type="inkscape:persp3d" - inkscape:vp_x="0 : 24 : 1" - inkscape:vp_y="0 : 1000 : 0" - inkscape:vp_z="48 : 24 : 1" - inkscape:persp3d-origin="24 : 16 : 1" - id="perspective96" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4555" - id="linearGradient4563" - gradientUnits="userSpaceOnUse" - x1="-257.51324" - y1="-50.301723" - x2="-257.49792" - y2="-51.439991" - gradientTransform="matrix(0.96773657,0,0,1.1033764,283.17944,75.227551)" /> - <linearGradient - id="linearGradient4555" - inkscape:collect="always"> - <stop - id="stop4557" - offset="0" - style="stop-color:#545652;stop-opacity:1;" /> - <stop - id="stop4559" - offset="1" - style="stop-color:#80837d;stop-opacity:1" /> - </linearGradient> - <linearGradient - gradientTransform="translate(70.143605,-254.44307)" - inkscape:collect="always" - xlink:href="#linearGradient4976" - id="linearGradient4984" - x1="-24.687374" - y1="245.84587" - x2="-24.687374" - y2="247.61009" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient4976"> - <stop - style="stop-color:#555753;stop-opacity:1;" - offset="0" - id="stop4978" /> - <stop - style="stop-color:#808080;stop-opacity:1" - offset="1" - id="stop4980" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4555" - id="linearGradient4553" - x1="-257.51324" - y1="-50.301723" - x2="-257.49792" - y2="-51.439991" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(254.47694,70.270976)" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5677-7" - id="linearGradient5723-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1,0,0,1.110704,-300.45156,160.82553)" - x1="305.89481" - y1="-120.46718" - x2="306.04715" - y2="-120.46718" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5677-7"> - <stop - style="stop-color:#ff2de7;stop-opacity:1" - offset="0" - id="stop5679-1" /> - <stop - style="stop-color:#7b009b;stop-opacity:1" - offset="1" - id="stop5681-4" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5043-9-6-1" - id="radialGradient5721-4" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.93663395,1.7844755,-2.1045445,1.0450496,29.790687,695.97821)" - cx="-306.03387" - cy="-120.8595" - fx="-306.03387" - fy="-120.8595" - r="3.03685" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5043-9-6-1"> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0" - id="stop5045-4-8-8" /> - <stop - style="stop-color:#ffffff;stop-opacity:0;" - offset="1" - id="stop5047-1-2-6" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5655-9" - id="linearGradient5719-5" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0739995,0,0,1.2558918,322.6417,178.48569)" - x1="-300.82822" - y1="-126.31032" - x2="-300.82822" - y2="-114.83224" /> - <linearGradient - id="linearGradient5655-9" - inkscape:collect="always"> - <stop - id="stop5657-5" - offset="0" - style="stop-color:#2e3436;stop-opacity:1" /> - <stop - id="stop5659-1" - offset="1" - style="stop-color:#707e83;stop-opacity:0;" /> - </linearGradient> - <linearGradient - y2="-36.569096" - x2="-219.25159" - y1="-43.842201" - x1="-219.25159" - gradientTransform="matrix(-1.1341053,0,0,1.0684624,-250.41566,72.38903)" - gradientUnits="userSpaceOnUse" - id="linearGradient5758" - xlink:href="#linearGradient5853" - inkscape:collect="always" /> - <linearGradient - id="linearGradient5853" - inkscape:collect="always"> - <stop - id="stop5855" - offset="0" - style="stop-color:#888a85;stop-opacity:1" /> - <stop - id="stop5857" - offset="1" - style="stop-color:#555753;stop-opacity:1" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5626" - id="linearGradient5632" - x1="-25.743168" - y1="-243.09763" - x2="-23.90864" - y2="-240.62437" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1,0,0,1.4970962,69.91678,375.11023)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5626"> - <stop - style="stop-color:#babdb6;stop-opacity:1;" - offset="0" - id="stop5628" /> - <stop - style="stop-color:#babdb6;stop-opacity:0;" - offset="1" - id="stop5630" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4971" - id="linearGradient4977" - x1="-105.74262" - y1="-282.20282" - x2="-102.94624" - y2="-282.20282" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient4971"> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0" - id="stop4973" /> - <stop - style="stop-color:#ffffff;stop-opacity:0;" - offset="1" - id="stop4975" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient4786" - id="linearGradient4792" - x1="-106.91152" - y1="280.91522" - x2="-101.28181" - y2="282.32028" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.81265471,0,0,1,129.18772,-269.64677)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient4786"> - <stop - style="stop-color:#555753;stop-opacity:1" - offset="0" - id="stop4788" /> - <stop - style="stop-color:#000000;stop-opacity:1" - offset="1" - id="stop4790" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5677" - id="linearGradient5449-8" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1,0,0,1.110704,-269.59835,161.01943)" - x1="305.89481" - y1="-120.46718" - x2="306.04715" - y2="-120.46718" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5677"> - <stop - style="stop-color:#ff2de7;stop-opacity:1" - offset="0" - id="stop5679" /> - <stop - style="stop-color:#7b009b;stop-opacity:1" - offset="1" - id="stop5681" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5043-9-6" - id="radialGradient5447-5" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(-0.93663395,1.7844755,2.1045445,1.0450496,1.0625172,696.17212)" - cx="-306.03387" - cy="-120.8595" - fx="-306.03387" - fy="-120.8595" - r="3.03685" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5043-9-6"> - <stop - style="stop-color:#ffffff;stop-opacity:1;" - offset="0" - id="stop5045-4-8" /> - <stop - style="stop-color:#ffffff;stop-opacity:0;" - offset="1" - id="stop5047-1-2" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5655" - id="linearGradient5443-6" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.0930233,0,0,1.2470295,297.52685,177.58046)" - x1="-300.82822" - y1="-126.31032" - x2="-300.82822" - y2="-114.83224" /> - <linearGradient - id="linearGradient5655" - inkscape:collect="always"> - <stop - id="stop5657" - offset="0" - style="stop-color:#2e3436;stop-opacity:1" /> - <stop - id="stop5659" - offset="1" - style="stop-color:#707e83;stop-opacity:0;" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5661" - id="linearGradient5667" - x1="-219.25159" - y1="-43.842201" - x2="-219.25159" - y2="-36.569096" - gradientUnits="userSpaceOnUse" - gradientTransform="matrix(1.1341053,0,0,1.0632786,281.26887,72.326317)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5661"> - <stop - style="stop-color:#888a85;stop-opacity:1;" - offset="0" - id="stop5663" /> - <stop - style="stop-color:#555753;stop-opacity:1" - offset="1" - id="stop5665" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5206" - id="linearGradient5212" - x1="-304.49771" - y1="-142.89493" - x2="-262.4259" - y2="-143.92334" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5206"> - <stop - style="stop-color:#ffffff;stop-opacity:1" - offset="0" - id="stop5208" /> - <stop - style="stop-color:#dededd;stop-opacity:0;" - offset="1" - id="stop5210" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient5388" - id="linearGradient5394" - x1="-283.80222" - y1="-143.74782" - x2="-283.80222" - y2="-141.12897" - gradientUnits="userSpaceOnUse" - gradientTransform="translate(299.49582,147.12151)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5388"> - <stop - style="stop-color:#555753;stop-opacity:1" - offset="0" - id="stop5390" /> - <stop - style="stop-color:#000000;stop-opacity:1" - offset="1" - id="stop5392" /> - </linearGradient> - <radialGradient - inkscape:collect="always" - xlink:href="#linearGradient5376" - id="radialGradient5382" - cx="-284.44626" - cy="-153.18155" - fx="-284.44626" - fy="-153.18155" - r="17.449057" - gradientTransform="matrix(0.7493289,0.0071443,-0.00739936,0.77608101,227.05992,124.25584)" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - id="linearGradient5376"> - <stop - style="stop-color:#babdb6;stop-opacity:1" - offset="0" - id="stop5378" /> - <stop - style="stop-color:#434542;stop-opacity:1" - offset="1" - id="stop5380" /> - </linearGradient> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3617" - id="linearGradient3623" - x1="1.421198" - y1="19.01931" - x2="1.421198" - y2="34.927505" - gradientUnits="userSpaceOnUse" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3617" - id="linearGradient3627" - gradientUnits="userSpaceOnUse" - x1="1.421198" - y1="19.01931" - x2="1.421198" - y2="34.927505" - gradientTransform="translate(27.998451,0)" /> - <inkscape:perspective - id="perspective3637" - inkscape:persp3d-origin="0.5 : 0.33333333 : 1" - inkscape:vp_z="1 : 0.5 : 1" - inkscape:vp_y="0 : 1000 : 0" - inkscape:vp_x="0 : 0.5 : 1" - sodipodi:type="inkscape:persp3d" /> - <linearGradient - inkscape:collect="always" - xlink:href="#linearGradient3617-8" - id="linearGradient3627-1" - gradientUnits="userSpaceOnUse" - x1="1.421198" - y1="19.01931" - x2="1.421198" - y2="34.927505" - gradientTransform="translate(27.998451,0)" /> - <linearGradient - inkscape:collect="always" - id="linearGradient3617-8"> - <stop - style="stop-color:#2e3436;stop-opacity:1;" - offset="0" - id="stop3619-2" /> - <stop - style="stop-color:#0b0c0d;stop-opacity:1" - offset="1" - id="stop3621-4" /> - </linearGradient> - <linearGradient - y2="34.927505" - x2="1.421198" - y1="19.01931" - x1="1.421198" - gradientTransform="translate(27.998451,2.9924335e-7)" - gradientUnits="userSpaceOnUse" - id="linearGradient3646" - xlink:href="#linearGradient3617-8" - inkscape:collect="always" /> - </defs> - <sodipodi:namedview - id="base" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:pageopacity="0.0" - inkscape:pageshadow="2" - inkscape:zoom="1" - inkscape:cx="275.47836" - inkscape:cy="12.04013" - inkscape:current-layer="layer1" - showgrid="true" - inkscape:grid-bbox="true" - inkscape:document-units="px" - inkscape:window-width="1280" - inkscape:window-height="752" - inkscape:window-x="0" - inkscape:window-y="0" /> - <metadata - id="metadata3884"> - <rdf:RDF> - <cc:Work - rdf:about=""> - <dc:format>image/svg+xml</dc:format> - <dc:type - rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title /> - </cc:Work> - </rdf:RDF> - </metadata> - <g - id="layer1" - inkscape:label="Layer 1" - inkscape:groupmode="layer" - transform="translate(8.5714283,-0.14285715)"> - <rect - style="fill:#cc0000;fill-opacity:0;stroke:none" - id="rect5861" - width="48" - height="48" - x="-8.5714283" - y="0.14285715" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" - d="m 8.7956674,3.2221118 c -6.82455,0 -12.3542402,5.47976 -12.3542402,12.2812502 l 0,6.40625 c 0,0.71914 0.0695,1.40908 0.18813,2.09375 l 1.0034,0 c -0.12713,-0.67917 -0.18814,-1.37616 -0.18814,-2.09375 l 0,-6.40625 c 0,-6.2647902 5.0648202,-11.2812502 11.3508502,-11.2812502 l 13.2912696,0 c 6.28603,0 11.35085,5.01646 11.35085,11.2812502 l 0,6.40625 c 0,0.71759 -0.061,1.41458 -0.18814,2.09375 l 1.00339,0 c 0.11864,-0.68467 0.18814,-1.37461 0.18814,-2.09375 l 0,-6.40625 c 0,-6.8014902 -5.52969,-12.2812502 -12.35424,-12.2812502 l -13.2912696,0 z" - id="rect5549" - sodipodi:nodetypes="ccccccccccccccccc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="fill:url(#radialGradient5382);fill-opacity:1;stroke:none" - d="m -1.5394328,9.4030418 c -0.34234,-0.23492 -0.47813,-0.54724 -0.45029,-1.03563 0.0286,-0.50183 0.14055,-0.65306 1.09192003,-1.4752 4.64793017,-4.01662 13.37392977,-5.87446 21.59445977,-4.59766 3.75498,0.58323 7.28842,1.86204 9.74819,3.52803 1.32365,0.89651 2.31811,1.86267 2.4306,2.36144 0.15327,0.67962 -0.31249,1.36291 -0.92947,1.36354 -0.20344,2.2e-4 -0.38709,-0.0843 -0.80622,-0.37099 -4.58901,-3.1391 -11.82576,-4.34498 -18.9107,-3.67751 -4.8043396,0.4526 -9.0149896,1.45025 -12.27576977,3.58044 -0.80479,0.52575 -1.10366003,0.59052 -1.49272003,0.32354 l 0,0 z" - id="path5202" - sodipodi:nodetypes="cssssssssscc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:url(#linearGradient5394);fill-opacity:1;stroke:none;stroke-width:1.36950052;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" - d="m 14.152067,1.1469218 c -1.25586,0.0451 -2.50746,0.15463 -3.71875,0.32324 -4.8155596,0.67034 -9.1494998,2.303 -11.9374998,4.78399 -0.0171,0.0152 -0.0455,0.017 -0.0625,0.0323 a 0.50262213,0.52231753 0 0 0 -0.0625,0.0969 c -0.83386,0.60798 -1.11293,1.78508 -0.59375,2.71524 0.51041,0.9144502 1.58283003,1.2501502 2.50000003,0.84042 0.0165,-0.007 0.0462,0.008 0.0625,0 a 0.4997817,0.5193658 0 0 0 0.125,-0.0646 c 0.008,-0.004 0.0233,0.005 0.0312,0 0.0189,-0.0126 0.0435,-0.0198 0.0625,-0.0323 0.0117,-0.007 0.0195,-0.0246 0.0312,-0.0323 6.35026017,-4.18918 18.36829977,-4.99194 26.59374977,-1.68086 1.15168,0.46359 2.18766,0.97193 3.09375,1.55156 a 0.50097,0.51819158 0 0 0 0.0312,0.0323 c 0.0119,0.007 0.0194,0.0246 0.0312,0.0323 a 0.50097,0.51819158 0 0 0 0.0937,0.0969 c 0.95145,0.5682002 2.20068,0.2407102 2.75,-0.74345 0.46922,-0.84064 0.27778,-1.87694 -0.375,-2.5213 a 0.50262213,0.52231753 0 0 0 -0.0312,-0.0647 c -0.006,-0.005 -0.0251,0.005 -0.0312,0 a 0.50262213,0.52231753 0 0 0 -0.0312,-0.0323 c -0.0275,-0.0237 -0.0336,-0.0747 -0.0625,-0.0969 a 0.50262213,0.52231753 0 0 0 0,-0.0323 c -1.77629,-1.631 -4.30344,-2.93446 -7.34375,-3.84658 -2.3514,-0.70544 -4.84998,-1.13016 -7.375,-1.29297 -1.26251,-0.0814 -2.52539,-0.10973 -3.78125,-0.0646 z m 1.875,1.03438 c 3.0708,0.0463 6.16037,0.47336 9,1.32529 l 0.0312,0 c 2.76259,0.83245 5.04679,2.04432 6.65625,3.42637 a 0.50005001,0.51723997 0 0 0 0.21875,0.22627 c 0.48342,0.28869 0.6541,0.92223 0.375,1.42227 -0.23724,0.42504 -0.72255,0.61655 -1.15625,0.48486 a 0.49889166,0.51844088 0 0 0 -0.15625,-0.0969 c -1.02284,-0.68188 -2.16864,-1.28682 -3.46875,-1.81017 -4.30756,-1.73396 -9.49646,-2.39535 -14.46875,-2.06875 -4.8872196,0.32102 -9.5421896,1.6205 -12.90624977,3.81426 -0.008,0.005 -0.0237,-0.005 -0.0312,0 a 0.50097251,0.51819418 0 0 0 -0.0625,0.0323 0.50097251,0.51819418 0 0 0 -0.0625,0.0323 c -0.0119,0.008 -0.0194,0.0244 -0.0312,0.0323 -0.47706,0.25937 -1.07163003,0.0673 -1.34375003,-0.42021 -0.26792,-0.48002 -0.12657,-1.08748 0.3125,-1.38995 a 0.50262213,0.52231753 0 0 0 0.0625,-0.0323 0.50005001,0.51723997 0 0 0 0.18750003,-0.16162 c 2.56214017,-2.25136 6.72203017,-3.84535 11.37499977,-4.49307 1.76729,-0.24602 3.62627,-0.35108 5.46875,-0.32324 z" - id="path5194" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - sodipodi:type="arc" - style="fill:none;stroke:url(#linearGradient5212);stroke-width:0.96893835;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - id="path5204" - sodipodi:cx="-285.49203" - sodipodi:cy="-135.7495" - sodipodi:rx="18.775068" - sodipodi:ry="9.3875341" - d="m -300.83968,-141.15673 c 5.97266,-4.23814 17.68585,-5.25293 26.16212,-2.26659 1.7838,0.62846 3.33482,1.4076 4.58342,2.30242" - transform="matrix(-1.0296667,0,0,1.0344536,-278.49445,154.74398)" - sodipodi:start="3.7554218" - sodipodi:end="5.6740176" - sodipodi:open="true" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Sans;-inkscape-font-specification:Bitstream Vera Sans" - d="m -3.5925728,33.735378 0,0.0312 c 0,6.80149 5.4797602,12.28125 12.2812502,12.28125 l 9.2499996,0 0,-1 -9.2499996,0 c -6.26479,0 -11.2812502,-5.01646 -11.2812502,-11.28125 l 0,-0.0312 -1,0 z" - id="rect5551" - sodipodi:nodetypes="ccccccccc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - sodipodi:nodetypes="cccccccc" - id="path5431" - d="m 33.003467,19.691354 c 2.15778,0 3.89467,1.77306 3.89467,3.975801 l 0,6.984518 c 0,2.20273 -1.73689,3.9758 -3.89467,3.9758 l -3.07307,0.04092 -0.0268,-14.992278 c 1.3839,0.04051 1.81932,0.01533 3.0999,0.01533 l 0,-9.2e-5 z" - style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient5667);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - y="19.212761" - x="-32.432659" - height="14.883246" - width="2.0379403" - id="rect5433" - style="fill:url(#linearGradient5443-6);fill-opacity:1;stroke:none" - transform="scale(-1,1)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="opacity:0.5;fill:url(#radialGradient5447-5);fill-opacity:1;stroke:none" - d="m 32.779907,20.143134 c 1.82155,0 3.2878,1.657121 3.2878,3.715816 l 0,6.527768 c 0,2.058685 -1.46625,3.715805 -3.2878,3.715805 l -2.40128,-0.03334 0,-13.925911 c 1.16825,0.03784 1.32024,0 2.40128,0 l 0,-1.39e-4 z" - id="path5437" - sodipodi:nodetypes="cccccccc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - ry="0.99742299" - rx="0.99742299" - y="22.267445" - x="35.395443" - height="9.8971453" - width="1.994846" - id="rect5439" - style="fill:url(#linearGradient5449-8);fill-opacity:1;stroke:none" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - ry="2.0194242" - rx="2.0194242" - y="7.854322" - x="43.456417" - height="9.9894991" - width="4.0564089" - id="rect4784" - style="fill:#555753;fill-opacity:1;stroke:url(#linearGradient4792);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - transform="matrix(0,1,1,0,0,0)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - sodipodi:type="inkscape:offset" - inkscape:radius="-1.0081301" - inkscape:original="M -103.46875 -287.5 C -104.58751 -287.5 -105.5 -286.58751 -105.5 -285.46875 L -105.5 -279.53125 C -105.5 -278.41249 -104.58751 -277.5 -103.46875 -277.5 L -102.53125 -277.5 C -101.41249 -277.5 -100.5 -278.41249 -100.5 -279.53125 L -100.5 -285.46875 C -100.5 -286.58751 -101.41249 -287.5 -102.53125 -287.5 L -103.46875 -287.5 z " - style="opacity:0.6081081;fill:none;stroke:url(#linearGradient4977);stroke-width:1.22016776;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - id="path4967" - d="m -103.46875,-286.5 c -0.57059,0 -1.03125,0.46066 -1.03125,1.03125 l 0,5.9375 c 0,0.57059 0.46066,1.03125 1.03125,1.03125 l 0.9375,0 c 0.57059,0 1.03125,-0.46066 1.03125,-1.03125 l 0,-5.9375 c 0,-0.57059 -0.46066,-1.03125 -1.03125,-1.03125 l -0.9375,0 z" - transform="matrix(0,0.67167761,1,0,295.34493,114.69191)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - transform="matrix(0,1,1,0,0,0)" - style="fill:url(#linearGradient5632);fill-opacity:1;stroke:none" - id="rect5572" - width="3.0350325" - height="8.8761415" - x="43.98975" - y="8.3505688" - rx="1.5175163" - ry="1.5023295" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - style="fill:#ffffff;fill-opacity:1;stroke:url(#linearGradient5758);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:220" - d="m -2.1502628,19.497458 c -2.15778,0 -3.89467,1.781702 -3.89467,3.995182 l 0,7.01857 c 0,2.213469 1.73689,3.995183 3.89467,3.995183 l 3.05582003,0.0024 0.023,-15.022765 c -1.3839,0.04071 -1.79824,0.0115 -3.07882003,0.0115 l 0,-9.6e-5 z" - id="path5707" - sodipodi:nodetypes="cccccccc" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient5719-5);fill-opacity:1;stroke:none" - id="rect5709" - width="2.0024707" - height="14.989019" - x="-1.5749686" - y="18.992523" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient3623);fill-opacity:1;stroke:none" - id="rect5711" - width="1.9620597" - height="15.908196" - x="0.44016811" - y="19.01931" - rx="0.98102987" - ry="0.98102987" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - sodipodi:nodetypes="cccccccc" - id="path5713" - d="m -1.9267028,19.949234 c -1.82155,0 -3.2878,1.657121 -3.2878,3.715816 l 0,6.527768 c 0,2.058685 1.46625,3.715805 3.2878,3.715805 l 2.40128003,-0.03334 0,-13.925911 c -1.16825,0.03784 -1.32024,0 -2.40128003,0 l 0,-1.39e-4 z" - style="opacity:0.5;fill:url(#radialGradient5721-4);fill-opacity:1;stroke:none" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient5723-8);fill-opacity:1;stroke:none" - id="rect5715" - width="1.994846" - height="9.8971453" - x="4.542254" - y="22.073544" - rx="0.99742299" - ry="0.99742299" - transform="scale(-1,1)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient4553);fill-opacity:1;stroke:none" - id="rect5811" - width="1.0079625" - height="3.591476" - x="-3.557543" - y="18.549107" - rx="0.50398123" - ry="0.50398123" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <path - sodipodi:type="arc" - style="fill:#dee1e3;fill-opacity:1;stroke:none" - id="path5859" - sodipodi:cx="-244.01906" - sodipodi:cy="-24.045986" - sodipodi:rx="0.83739835" - sodipodi:ry="1.3739837" - d="m -243.18166,-24.045986 c 0,0.75883 -0.37492,1.373984 -0.8374,1.373984 -0.46248,0 -0.8374,-0.615154 -0.8374,-1.373984 0,-0.75883 0.37492,-1.373984 0.8374,-1.373984 0.46248,0 0.8374,0.615154 0.8374,1.373984 z" - transform="matrix(1.2048093,0,0,1.0941414,303.39913,71.819285)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - style="fill:url(#linearGradient4984);fill-opacity:1;stroke:none" - id="rect5811-4" - width="1.0079625" - height="2.3272483" - x="45.000946" - y="-9.4003887" - rx="0.50398123" - ry="0.50398123" - transform="matrix(0,1,-1,0,0,0)" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" /> - <rect - y="0.14285715" - x="-8.5714283" - height="48" - width="48" - id="rect5863" - style="fill:#ffffff;fill-opacity:0;stroke:none" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> - <rect - ry="0.50398123" - rx="0.50398123" - y="18.158859" - x="33.470028" - height="3.9627495" - width="0.97544211" - id="rect4561" - style="fill:url(#linearGradient4563);fill-opacity:1;stroke:none" - inkscape:export-xdpi="90.108963" - inkscape:export-ydpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" /> - <rect - inkscape:export-ydpi="90.108963" - inkscape:export-xdpi="90.108963" - inkscape:export-filename="/home/hbons/Desktop/Pidgin VV/voice.png" - ry="0.98102987" - rx="0.98102987" - y="19.01931" - x="28.43862" - height="15.908196" - width="1.9620597" - id="rect3625" - style="fill:url(#linearGradient3646);fill-opacity:1;stroke:none" /> - </g> -</svg>
--- a/pidgin/plugins/Makefile.am Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/plugins/Makefile.am Mon Aug 24 19:21:21 2009 +0000 @@ -47,6 +47,7 @@ themeedit_la_LDFLAGS = -module -avoid-version timestamp_la_LDFLAGS = -module -avoid-version timestamp_format_la_LDFLAGS = -module -avoid-version +vvconfig_la_LDFLAGS = -module -avoid-version xmppconsole_la_LDFLAGS = -module -avoid-version if PLUGINS @@ -68,6 +69,10 @@ timestamp_format.la \ xmppconsole.la +if USE_VV +plugin_LTLIBRARIES += vvconfig.la +endif + noinst_LTLIBRARIES = \ contact_priority.la \ gtk_signals_test.la @@ -88,6 +93,7 @@ themeedit_la_SOURCES = themeedit.c themeedit-icon.c themeedit-icon.h timestamp_la_SOURCES = timestamp.c timestamp_format_la_SOURCES = timestamp_format.c +vvconfig_SOURCES = vvconfig.c xmppconsole_la_SOURCES = xmppconsole.c convcolors_la_LIBADD = $(GTK_LIBS) @@ -106,6 +112,7 @@ themeedit_la_LIBADD = $(GTK_LIBS) timestamp_la_LIBADD = $(GTK_LIBS) timestamp_format_la_LIBADD = $(GTK_LIBS) +vvconfig_la_LIBADD = $(GTK_LIBS) $(GSTREAMER_LIBS) xmppconsole_la_LIBADD = $(GTK_LIBS) endif # PLUGINS @@ -129,6 +136,7 @@ -I$(top_srcdir)/pidgin \ $(DEBUG_CFLAGS) \ $(GTK_CFLAGS) \ + $(GSTREAMER_CFLAGS) \ $(PLUGIN_CFLAGS) #
--- a/pidgin/plugins/disco/Makefile.am Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/plugins/disco/Makefile.am Mon Aug 24 19:21:21 2009 +0000 @@ -2,6 +2,9 @@ xmppdisco_la_LDFLAGS = -module -avoid-version +EXTRA_DIST = \ + Makefile.mingw + if PLUGINS plugin_LTLIBRARIES = xmppdisco.la
--- a/pidgin/plugins/disco/gtkdisco.c Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/plugins/disco/gtkdisco.c Mon Aug 24 19:21:21 2009 +0000 @@ -224,6 +224,8 @@ /* This shouldn't ever happen since the account is connected */ server = g_strdup("jabber.org"); + /* Note to translators: The string "Enter an XMPP Server" is asking the + user to type the name of an XMPP server which will then be queried */ purple_request_input(my_plugin, _("Server name request"), _("Enter an XMPP Server"), _("Select an XMPP server to query"), server, FALSE, FALSE, NULL,
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pidgin/plugins/vvconfig.c Mon Aug 24 19:21:21 2009 +0000 @@ -0,0 +1,566 @@ +/* + * Configures microphones and webcams for voice and video + * Copyright (C) 2009 Mike Ruprecht <cmaiku@gmail.com> + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301, USA. + */ +#include "internal.h" + +#include "debug.h" +#include "mediamanager.h" +#include "media-gst.h" +#include "version.h" +#include "gtkplugin.h" +#include "gtkutils.h" +#include "gtkprefs.h" + +#include <gst/interfaces/propertyprobe.h> + +static PurpleMediaElementInfo *old_video_src = NULL, *old_video_sink = NULL, + *old_audio_src = NULL, *old_audio_sink = NULL; + +static const gchar *AUDIO_SRC_PLUGINS[] = { + "alsasrc", "ALSA", + /* "esdmon", "ESD", ? */ + "osssrc", "OSS", + "pulsesrc", "PulseAudio", + /* "audiotestsrc wave=silence", "Silence", */ + "audiotestsrc", "Test Sound", + NULL +}; + +static const gchar *AUDIO_SINK_PLUGINS[] = { + "alsasink", "ALSA", + "artsdsink", "aRts", + "esdsink", "ESD", + "osssink", "OSS", + "pulsesink", "PulseAudio", + NULL +}; + +static const gchar *VIDEO_SRC_PLUGINS[] = { + "videotestsrc", "Test Input", + "dshowvideosrc","DirectDraw", + "ksvideosrc", "KS Video", + "qcamsrc", "Quickcam", + "v4lsrc", "Video4Linux", + "v4l2src", "Video4Linux2", + "v4lmjpegsrc", "Video4Linux MJPEG", + NULL +}; + +static const gchar *VIDEO_SINK_PLUGINS[] = { + /* "aasink", "AALib", Didn't work for me */ + "directdrawsink","DirectDraw", + "glimagesink", "OpenGL", + "ximagesink", "X Window System", + "xvimagesink", "X Window System (Xv)", + NULL +}; + +static GList * +get_element_devices(const gchar *element_name) +{ + GList *ret = NULL; + GstElement *element; + GObjectClass *klass; + GstPropertyProbe *probe; + const GParamSpec *pspec; + + if (!strcmp(element_name, "<custom>")) { + ret = g_list_prepend(ret, NULL); + ret = g_list_prepend(ret, (gpointer)_("Default")); + ret = g_list_prepend(ret, ""); + return ret; + } + + ret = g_list_prepend(ret, (gpointer)_("Default")); + ret = g_list_prepend(ret, ""); + + if (*element_name == '\0') { + ret = g_list_prepend(ret, NULL); + ret = g_list_reverse(ret); + return ret; + } + + element = gst_element_factory_make(element_name, "test"); + klass = G_OBJECT_GET_CLASS (element); + if (!g_object_class_find_property(klass, "device") || + !GST_IS_PROPERTY_PROBE(element) || + !(probe = GST_PROPERTY_PROBE(element)) || + !(pspec = gst_property_probe_get_property(probe, "device"))) { + purple_debug_info("vvconfig", "'%s' - no device\n", element_name); + } else { + gint n; + GValueArray *array; + + /* Set autoprobe[-fps] to FALSE to avoid delays when probing. */ + if (g_object_class_find_property (klass, "autoprobe")) { + g_object_set (G_OBJECT (element), "autoprobe", FALSE, NULL); + if (g_object_class_find_property (klass, "autoprobe-fps")) { + g_object_set (G_OBJECT (element), "autoprobe-fps", FALSE, NULL); + } + } + + array = gst_property_probe_probe_and_get_values (probe, pspec); + if (array == NULL) { + purple_debug_info("vvconfig", "'%s' has no devices\n", element_name); + ret = g_list_prepend(ret, NULL); + ret = g_list_reverse(ret); + return ret; + } + + for (n=0; n < array->n_values; ++n) { + GValue *device; + const gchar *name; + const gchar *device_name; + + device = g_value_array_get_nth(array, n); + g_object_set_property(G_OBJECT(element), "device", device); + if (gst_element_set_state(element, GST_STATE_READY) + != GST_STATE_CHANGE_SUCCESS) { + purple_debug_warning("vvconfig", + "Error changing state of %s\n", + element_name); + continue; + } + + g_object_get(G_OBJECT(element), "device-name", &name, NULL); + device_name = g_value_get_string(device); + if (name == NULL) + name = _("Unknown"); + purple_debug_info("vvconfig", "Found device %s : %s for %s\n", + device_name, name, element_name); + ret = g_list_prepend(ret, (gpointer)name); + ret = g_list_prepend(ret, (gpointer)device_name); + gst_element_set_state(element, GST_STATE_NULL); + } + } + gst_object_unref(element); + + ret = g_list_prepend(ret, NULL); + ret = g_list_reverse(ret); + + return ret; +} + +static GList * +get_element_plugins(const gchar **plugins) +{ + GList *ret = NULL; + + ret = g_list_prepend(ret, "Default"); + ret = g_list_prepend(ret, ""); + for (; plugins[0] && plugins[1]; plugins += 2) { + if (gst_default_registry_check_feature_version( + plugins[0], 0, 0, 0)) { + ret = g_list_prepend(ret, (gpointer)plugins[1]); + ret = g_list_prepend(ret, (gpointer)plugins[0]); + } + } + ret = g_list_prepend(ret, NULL); + ret = g_list_reverse(ret); + return ret; +} + +static void +device_changed_cb(const gchar *name, PurplePrefType type, + gconstpointer value, gpointer data) +{ + GtkSizeGroup *sg = data; + GtkWidget *parent, *widget; + GSList *widgets; + GList *devices; + GValue gvalue; + gint position; + gchar *label, *pref; + + widgets = gtk_size_group_get_widgets(GTK_SIZE_GROUP(sg)); + for (; widgets; widgets = g_slist_next(widgets)) { + const gchar *widget_name = + gtk_widget_get_name(GTK_WIDGET(widgets->data)); + if (!strcmp(widget_name, name)) { + gchar *temp_str; + gchar delimiters[3] = {0, 0, 0}; + const gchar *text; + gint keyval, pos; + + widget = widgets->data; + /* Get label with _ from the GtkLabel */ + text = gtk_label_get_text(GTK_LABEL(widget)); + keyval = gtk_label_get_mnemonic_keyval(GTK_LABEL(widget)); + delimiters[0] = g_ascii_tolower(keyval); + delimiters[1] = g_ascii_toupper(keyval); + pos = strcspn(text, delimiters); + if (pos != -1) { + temp_str = g_strndup(text, pos); + label = g_strconcat(temp_str, "_", + text + pos, NULL); + g_free(temp_str); + } else { + label = g_strdup(text); + } + break; + } + } + + if (widgets == NULL) + return; + + parent = gtk_widget_get_parent(widget); + widget = parent; + parent = gtk_widget_get_parent(GTK_WIDGET(widget)); + gvalue.g_type = 0; + g_value_init(&gvalue, G_TYPE_INT); + gtk_container_child_get_property(GTK_CONTAINER(parent), + GTK_WIDGET(widget), "position", &gvalue); + position = g_value_get_int(&gvalue); + g_value_unset(&gvalue); + gtk_widget_destroy(widget); + + pref = g_strdup(name); + strcpy(pref + strlen(pref) - strlen("plugin"), "device"); + devices = get_element_devices(value); + if (g_list_find(devices, purple_prefs_get_string(pref)) == NULL) + purple_prefs_set_string(pref, g_list_next(devices)->data); + widget = pidgin_prefs_dropdown_from_list(parent, + label, PURPLE_PREF_STRING, + pref, devices); + g_list_free(devices); + g_signal_connect_swapped(widget, "destroy", + G_CALLBACK(g_free), pref); + g_free(label); + gtk_misc_set_alignment(GTK_MISC(widget), 0, 0.5); + gtk_widget_set_name(widget, name); + gtk_size_group_add_widget(sg, widget); + gtk_box_reorder_child(GTK_BOX(parent), + gtk_widget_get_parent(GTK_WIDGET(widget)), position); +} + +static void +get_plugin_frame(GtkWidget *parent, GtkSizeGroup *sg, + const gchar *name, const gchar *plugin_label, + const gchar **plugin_strs, const gchar *plugin_pref, + const gchar *device_label, const gchar *device_pref) +{ + GtkWidget *vbox, *widget; + GList *plugins, *devices; + + vbox = pidgin_make_frame(parent, name); + + /* Setup plugin preference */ + plugins = get_element_plugins(plugin_strs); + widget = pidgin_prefs_dropdown_from_list(vbox, plugin_label, + PURPLE_PREF_STRING, plugin_pref, plugins); + g_list_free(plugins); + gtk_size_group_add_widget(sg, widget); + gtk_misc_set_alignment(GTK_MISC(widget), 0, 0.5); + + /* Setup device preference */ + devices = get_element_devices(purple_prefs_get_string(plugin_pref)); + if (g_list_find(devices, purple_prefs_get_string(device_pref)) == NULL) + purple_prefs_set_string(device_pref, g_list_next(devices)->data); + widget = pidgin_prefs_dropdown_from_list(vbox, device_label, + PURPLE_PREF_STRING, device_pref, devices); + g_list_free(devices); + gtk_widget_set_name(widget, plugin_pref); + gtk_size_group_add_widget(sg, widget); + gtk_misc_set_alignment(GTK_MISC(widget), 0, 0.5); + + purple_prefs_connect_callback(vbox, plugin_pref, + device_changed_cb, sg); + g_signal_connect_swapped(vbox, "destroy", + G_CALLBACK(purple_prefs_disconnect_by_handle), vbox); +} + +static GtkWidget * +get_plugin_config_frame(PurplePlugin *plugin) { + GtkWidget *notebook, *vbox_audio, *vbox_video; + GtkSizeGroup *sg; + + notebook = gtk_notebook_new(); + gtk_container_set_border_width(GTK_CONTAINER(notebook), + PIDGIN_HIG_BORDER); + gtk_widget_show(notebook); + + vbox_audio = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE); + vbox_video = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE); + gtk_notebook_append_page(GTK_NOTEBOOK(notebook), + vbox_audio, gtk_label_new(_("Audio"))); + gtk_notebook_append_page(GTK_NOTEBOOK(notebook), + vbox_video, gtk_label_new(_("Video"))); + gtk_container_set_border_width(GTK_CONTAINER (vbox_audio), + PIDGIN_HIG_BORDER); + gtk_container_set_border_width(GTK_CONTAINER (vbox_video), + PIDGIN_HIG_BORDER); + + gtk_widget_show(vbox_audio); + gtk_widget_show(vbox_video); + + sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL); + + get_plugin_frame(vbox_audio, sg, _("Output"), _("_Plugin"), AUDIO_SINK_PLUGINS, + "/plugins/core/vvconfig/audio/sink/plugin", _("_Device"), + "/plugins/core/vvconfig/audio/sink/device"); + get_plugin_frame(vbox_audio, sg, _("Input"), _("P_lugin"), AUDIO_SRC_PLUGINS, + "/plugins/core/vvconfig/audio/src/plugin", _("D_evice"), + "/plugins/core/vvconfig/audio/src/device"); + + get_plugin_frame(vbox_video, sg, _("Output"), _("_Plugin"), VIDEO_SINK_PLUGINS, + "/plugins/gtk/vvconfig/video/sink/plugin", _("_Device"), + "/plugins/gtk/vvconfig/video/sink/device"); + get_plugin_frame(vbox_video, sg, _("Input"), _("P_lugin"), VIDEO_SRC_PLUGINS, + "/plugins/core/vvconfig/video/src/plugin", _("D_evice"), + "/plugins/core/vvconfig/video/src/device"); + + return notebook; +} + +static GstElement * +create_video_src(PurpleMedia *media, + const gchar *session_id, const gchar *participant) +{ + const gchar *plugin = purple_prefs_get_string( + "/plugins/core/vvconfig/video/src/plugin"); + const gchar *device = purple_prefs_get_string( + "/plugins/core/vvconfig/video/src/device"); + GstElement *ret; + + if (plugin[0] == '\0') + return purple_media_element_info_call_create(old_video_src, + media, session_id, participant); + + ret = gst_element_factory_make(plugin, "vvconfig-videosrc"); + if (device[0] != '\0') + g_object_set(G_OBJECT(ret), "device", device, NULL); + if (!strcmp(plugin, "videotestsrc")) + g_object_set(G_OBJECT(ret), "is-live", 1, NULL); + return ret; +} + +static GstElement * +create_video_sink(PurpleMedia *media, + const gchar *session_id, const gchar *participant) +{ + const gchar *plugin = purple_prefs_get_string( + "/plugins/gtk/vvconfig/video/sink/plugin"); + const gchar *device = purple_prefs_get_string( + "/plugins/gtk/vvconfig/video/sink/device"); + GstElement *ret; + + if (plugin[0] == '\0') + return purple_media_element_info_call_create(old_video_sink, + media, session_id, participant); + + ret = gst_element_factory_make(plugin, NULL); + if (device[0] != '\0') + g_object_set(G_OBJECT(ret), "device", device, NULL); + return ret; +} + +static GstElement * +create_audio_src(PurpleMedia *media, + const gchar *session_id, const gchar *participant) +{ + const gchar *plugin = purple_prefs_get_string( + "/plugins/core/vvconfig/audio/src/plugin"); + const gchar *device = purple_prefs_get_string( + "/plugins/core/vvconfig/audio/src/device"); + GstElement *ret; + + if (plugin[0] == '\0') + return purple_media_element_info_call_create(old_audio_src, + media, session_id, participant); + + ret = gst_element_factory_make(plugin, NULL); + if (device[0] != '\0') + g_object_set(G_OBJECT(ret), "device", device, NULL); + return ret; +} + +static GstElement * +create_audio_sink(PurpleMedia *media, + const gchar *session_id, const gchar *participant) +{ + const gchar *plugin = purple_prefs_get_string( + "/plugins/core/vvconfig/audio/sink/plugin"); + const gchar *device = purple_prefs_get_string( + "/plugins/core/vvconfig/audio/sink/device"); + GstElement *ret; + + if (plugin[0] == '\0') + return purple_media_element_info_call_create(old_audio_sink, + media, session_id, participant); + + ret = gst_element_factory_make(plugin, NULL); + if (device[0] != '\0') + g_object_set(G_OBJECT(ret), "device", device, NULL); + return ret; +} + +static void +set_element_info_cond(PurpleMediaElementInfo *old_info, + PurpleMediaElementInfo *new_info, const gchar *id) +{ + gchar *element_id = purple_media_element_info_get_id(old_info); + if (!strcmp(element_id, id)) + purple_media_manager_set_active_element( + purple_media_manager_get(), new_info); + g_free(element_id); +} + +static gboolean +plugin_load(PurplePlugin *plugin) +{ + PurpleMediaManager *manager; + PurpleMediaElementInfo *video_src, *video_sink, + *audio_src, *audio_sink; + + /* Disable the plugin if the UI doesn't support VV */ + if (purple_media_manager_get_ui_caps(purple_media_manager_get()) == + PURPLE_MEDIA_CAPS_NONE) + return FALSE; + + purple_prefs_add_none("/plugins/core/vvconfig"); + purple_prefs_add_none("/plugins/core/vvconfig/audio"); + purple_prefs_add_none("/plugins/core/vvconfig/audio/src"); + purple_prefs_add_string("/plugins/core/vvconfig/audio/src/plugin", ""); + purple_prefs_add_string("/plugins/core/vvconfig/audio/src/device", ""); + purple_prefs_add_none("/plugins/core/vvconfig/audio/sink"); + purple_prefs_add_string("/plugins/core/vvconfig/audio/sink/plugin", ""); + purple_prefs_add_string("/plugins/core/vvconfig/audio/sink/device", ""); + purple_prefs_add_none("/plugins/core/vvconfig/video"); + purple_prefs_add_none("/plugins/core/vvconfig/video/src"); + purple_prefs_add_string("/plugins/core/vvconfig/video/src/plugin", ""); + purple_prefs_add_string("/plugins/core/vvconfig/video/src/device", ""); + purple_prefs_add_none("/plugins/gtk/vvconfig"); + purple_prefs_add_none("/plugins/gtk/vvconfig/video"); + purple_prefs_add_none("/plugins/gtk/vvconfig/video/sink"); + purple_prefs_add_string("/plugins/gtk/vvconfig/video/sink/plugin", ""); + purple_prefs_add_string("/plugins/gtk/vvconfig/video/sink/device", ""); + + video_src = g_object_new(PURPLE_TYPE_MEDIA_ELEMENT_INFO, + "id", "vvconfig-videosrc", + "name", "VV Conf Plugin Video Source", + "type", PURPLE_MEDIA_ELEMENT_VIDEO + | PURPLE_MEDIA_ELEMENT_SRC + | PURPLE_MEDIA_ELEMENT_ONE_SRC + | PURPLE_MEDIA_ELEMENT_UNIQUE, + "create-cb", create_video_src, NULL); + video_sink = g_object_new(PURPLE_TYPE_MEDIA_ELEMENT_INFO, + "id", "vvconfig-videosink", + "name", "VV Conf Plugin Video Sink", + "type", PURPLE_MEDIA_ELEMENT_VIDEO + | PURPLE_MEDIA_ELEMENT_SINK + | PURPLE_MEDIA_ELEMENT_ONE_SINK, + "create-cb", create_video_sink, NULL); + audio_src = g_object_new(PURPLE_TYPE_MEDIA_ELEMENT_INFO, + "id", "vvconfig-audiosrc", + "name", "VV Conf Plugin Audio Source", + "type", PURPLE_MEDIA_ELEMENT_AUDIO + | PURPLE_MEDIA_ELEMENT_SRC + | PURPLE_MEDIA_ELEMENT_ONE_SRC + | PURPLE_MEDIA_ELEMENT_UNIQUE, + "create-cb", create_audio_src, NULL); + audio_sink = g_object_new(PURPLE_TYPE_MEDIA_ELEMENT_INFO, + "id", "vvconfig-audiosink", + "name", "VV Conf Plugin Audio Sink", + "type", PURPLE_MEDIA_ELEMENT_AUDIO + | PURPLE_MEDIA_ELEMENT_SINK + | PURPLE_MEDIA_ELEMENT_ONE_SINK, + "create-cb", create_audio_sink, NULL); + + purple_debug_info("gtkmedia", "Registering media element types\n"); + manager = purple_media_manager_get(); + + old_video_src = purple_media_manager_get_active_element(manager, + PURPLE_MEDIA_ELEMENT_VIDEO | PURPLE_MEDIA_ELEMENT_SRC); + old_video_sink = purple_media_manager_get_active_element(manager, + PURPLE_MEDIA_ELEMENT_VIDEO | PURPLE_MEDIA_ELEMENT_SINK); + old_audio_src = purple_media_manager_get_active_element(manager, + PURPLE_MEDIA_ELEMENT_AUDIO | PURPLE_MEDIA_ELEMENT_SRC); + old_audio_sink = purple_media_manager_get_active_element(manager, + PURPLE_MEDIA_ELEMENT_AUDIO | PURPLE_MEDIA_ELEMENT_SINK); + + set_element_info_cond(old_video_src, video_src, "pidgindefaultvideosrc"); + set_element_info_cond(old_video_sink, video_sink, "pidgindefaultvideosink"); + set_element_info_cond(old_audio_src, audio_src, "pidgindefaultaudiosrc"); + set_element_info_cond(old_audio_sink, audio_sink, "pidgindefaultaudiosink"); + + return TRUE; +} + +static gboolean +plugin_unload(PurplePlugin *plugin) +{ + PurpleMediaManager *manager = purple_media_manager_get(); + purple_media_manager_set_active_element(manager, old_video_src); + purple_media_manager_set_active_element(manager, old_video_sink); + purple_media_manager_set_active_element(manager, old_audio_src); + purple_media_manager_set_active_element(manager, old_audio_sink); + return TRUE; +} + +static PidginPluginUiInfo ui_info = { + get_plugin_config_frame, + 0, /* page_num (Reserved) */ + /* Padding */ + NULL, + NULL, + NULL, + NULL +}; + +static PurplePluginInfo info = +{ + PURPLE_PLUGIN_MAGIC, /**< magic */ + PURPLE_MAJOR_VERSION, /**< major version */ + PURPLE_MINOR_VERSION, /**< minor version */ + PURPLE_PLUGIN_STANDARD, /**< type */ + PIDGIN_PLUGIN_TYPE, /**< ui_requirement */ + 0, /**< flags */ + NULL, /**< dependencies */ + PURPLE_PRIORITY_DEFAULT, /**< priority */ + + "gtk-maiku-vvconfig", /**< id */ + N_("Voice/Video Settings"), /**< name */ + DISPLAY_VERSION, /**< version */ + N_("Configure your microphone and webcam."), /**< summary */ + N_("Configure microphone and webcam " + "settings for voice/video calls."), /**< description */ + "Mike Ruprecht <cmaiku@gmail.com>", /**< author */ + PURPLE_WEBSITE, /**< homepage */ + + plugin_load, /**< load */ + plugin_unload, /**< unload */ + NULL, /**< destroy */ + + &ui_info, /**< ui_info */ + NULL, /**< extra_info */ + NULL, /**< prefs_info */ + NULL, /**< actions */ + + /* padding */ + NULL, + NULL, + NULL, + NULL +}; + +static void +init_plugin(PurplePlugin *plugin) { +} + +PURPLE_INIT_PLUGIN(vvconfig, init_plugin, info)
--- a/pidgin/win32/nsis/translations/italian.nsh Thu Aug 13 17:40:00 2009 +0000 +++ b/pidgin/win32/nsis/translations/italian.nsh Mon Aug 24 19:21:21 2009 +0000 @@ -1,7 +1,7 @@ ;; -;; english.nsh +;; italian.nsh ;; -;; Default language strings for the Windows Pidgin NSIS installer. +;; Italian language strings for the Windows Pidgin NSIS installer. ;; Windows Code page: 1252 ;; ;; Author: Claudio Satriano <satriano@na.infn.it>, 2003-2009. @@ -9,13 +9,13 @@ ;; ; Startup Checks -!define INSTALLER_IS_RUNNING "Il programma di installazione 竪 gi� in esecuzione" -!define PIDGIN_IS_RUNNING "� attualmente in esecuzione un'istanza di Pidgin. Esci da Pidgin e riprova." -!define GTK_INSTALLER_NEEDED "L'ambiente di runtime GTK+ non 竪 presente o deve essere aggiornato.$\rInstallare GTK+ versione ${GTK_MIN_VERSION} o maggiore" +!define INSTALLER_IS_RUNNING "Il programma di installazione � gi� in esecuzione" +!define PIDGIN_IS_RUNNING "� attualmente in esecuzione un'istanza di Pidgin. Esci da Pidgin e riprova." +!define GTK_INSTALLER_NEEDED "L'ambiente di runtime GTK+ non � presente o deve essere aggiornato.$\rInstallare GTK+ versione ${GTK_MIN_VERSION} o maggiore" ; License Page !define PIDGIN_LICENSE_BUTTON "Avanti >" -!define PIDGIN_LICENSE_BOTTOM_TEXT "$(^Name) 竪 distribuito sotto la GNU General Public License (GPL). La licenza 竪 mostrata qui solamente a scopo informativo. $_CLICK" +!define PIDGIN_LICENSE_BOTTOM_TEXT "$(^Name) � distribuito sotto la GNU General Public License (GPL). La licenza � mostrata qui solamente a scopo informativo. $_CLICK" ; Components Page !define PIDGIN_SECTION_TITLE "Pidgin - Client per Messaggi Immediati (richiesto)" @@ -31,31 +31,31 @@ !define PIDGIN_STARTMENU_SHORTCUT_DESC "Crea una voce per Pidgin nel Menu Avvio" ; GTK+ Directory Page -!define GTK_UPGRADE_PROMPT "� stata trovata una versione precedente di GTK+. Vuoi aggiornarla?$\rNota: $(^Name) potrebbe non funzionare senza l'aggiornamento." -!define GTK_WINDOWS_INCOMPATIBLE "Windows 95/98/Me non 竪 incompatible con GTK+ 2.8.0 o successivo. GTK+ ${GTK_INSTALL_VERSION} non sar� installato.$\rSe non hai GTK+ ${GTK_MIN_VERSION} o successivo gi� installato sul tuo computer, questa installazione sar� interrotta." +!define GTK_UPGRADE_PROMPT "� stata trovata una versione precedente di GTK+. Vuoi aggiornarla?$\rNota: $(^Name) potrebbe non funzionare senza l'aggiornamento." +!define GTK_WINDOWS_INCOMPATIBLE "Windows 95/98/Me non � incompatible con GTK+ 2.8.0 o successivo. GTK+ ${GTK_INSTALL_VERSION} non sar� installato.$\rSe non hai GTK+ ${GTK_MIN_VERSION} o successivo gi� installato sul tuo computer, questa installazione sar� interrotta." ; Installer Finish Page !define PIDGIN_FINISH_VISIT_WEB_SITE "Visita la pagina web di Pidgin" ; Pidgin Section Prompts and Texts -!define PIDGIN_PROMPT_CONTINUE_WITHOUT_UNINSTALL "Impossibile rimuovere la versione di Pidgin attualmente presente sul tuo computer. La nuova versione sar� installata senza rimuovere la versione precedente." +!define PIDGIN_PROMPT_CONTINUE_WITHOUT_UNINSTALL "Impossibile rimuovere la versione di Pidgin attualmente presente sul tuo computer. La nuova versione sar� installata senza rimuovere la versione precedente." ; GTK+ Section Prompts !define GTK_INSTALL_ERROR "Error nell'installazione del runtime GTK+." -!define GTK_BAD_INSTALL_PATH "Il percorso scelto non pu嘆 essere raggiunto o creato." +!define GTK_BAD_INSTALL_PATH "Il percorso scelto non pu� essere raggiunto o creato." ; URL Handler section !define URI_HANDLERS_SECTION_TITLE "Gestori degli URI" ; Uninstall Section Prompts -!define un.PIDGIN_UNINSTALL_ERROR_1 "Il programma di rimozione non 竪 in grado di trovare le voci di registro per Pidgin.$\rProbabilmente questa applicazione 竪 stata installata da un altro utente." +!define un.PIDGIN_UNINSTALL_ERROR_1 "Il programma di rimozione non � in grado di trovare le voci di registro per Pidgin.$\rProbabilmente questa applicazione � stata installata da un altro utente." !define un.PIDGIN_UNINSTALL_ERROR_2 "Non hai il permesso per rimuovere questa applicazione." ; Spellcheck Section Prompts !define PIDGIN_SPELLCHECK_SECTION_TITLE "Supporto per il correttore ortografico" !define PIDGIN_SPELLCHECK_ERROR "Errore nell'installazione del correttore ortografico" !define PIDGIN_SPELLCHECK_DICT_ERROR "Errore nell'installazione del dizionario per il correttore ortografico" -!define PIDGIN_SPELLCHECK_SECTION_DESCRIPTION "Supporto per il correttore ortografico. (� richiesta una connessione a internet per l'installazione)" +!define PIDGIN_SPELLCHECK_SECTION_DESCRIPTION "Supporto per il correttore ortografico. (� richiesta una connessione a internet per l'installazione)" !define ASPELL_INSTALL_FAILED "Installazione fallita" !define PIDGIN_SPELLCHECK_BRETON "Bretone" !define PIDGIN_SPELLCHECK_CATALAN "Catalano"
--- a/po/ChangeLog Thu Aug 13 17:40:00 2009 +0000 +++ b/po/ChangeLog Mon Aug 24 19:21:21 2009 +0000 @@ -1,5 +1,8 @@ Pidgin and Finch: The Pimpin' Penguin IM Clients That're Good for the Soul +version 2.6.1 + * No changes + version 2.6.0 * Afrikaans translation updated (Friedel Wolff) * Armenian translation added (David Avsharyan) @@ -14,6 +17,7 @@ * Czech translation updated (David Vachulka) * Dutch translation updated (Dani谷l Heres) * English (British) translation updated (Luke Ross) + * Esperanto translation updated (St辿phane Fillod) * Finnish translation updated (Timo Jyrinki) * French translation updated (�ric Boumaour) * Galician translation updated (Frco. Javier Rial Rodr鱈guez) @@ -36,6 +40,9 @@ * Swahili translation added (Paul Msegeya) * Swedish translation updated (Peter Hjalmarsson) +version 2.5.9 + * No changes + version 2.5.8 * No changes
--- a/po/POTFILES.in Thu Aug 13 17:40:00 2009 +0000 +++ b/po/POTFILES.in Mon Aug 24 19:21:21 2009 +0000 @@ -35,9 +35,9 @@ finch/plugins/gntclipboard.c finch/plugins/gntgf.c finch/plugins/gnthistory.c +finch/plugins/gnttinyurl.c finch/plugins/grouping.c finch/plugins/lastlog.c -finch/plugins/gnttinyurl.c libpurple/account.c libpurple/blist.c libpurple/certificate.c @@ -198,8 +198,8 @@ pidgin.desktop.in pidgin/eggtrayicon.c pidgin/gtkaccount.c +pidgin/gtkblist-theme.c pidgin/gtkblist.c -pidgin/gtkblist-theme.c pidgin/gtkcellview.c pidgin/gtkcertmgr.c pidgin/gtkconn.c @@ -235,10 +235,10 @@ pidgin/pixmaps/emotes/none/none.theme.in pidgin/pixmaps/emotes/small/16/small.theme.in pidgin/plugins/cap/cap.c +pidgin/plugins/contact_priority.c +pidgin/plugins/convcolors.c pidgin/plugins/disco/gtkdisco.c pidgin/plugins/disco/xmppdisco.c -pidgin/plugins/contact_priority.c -pidgin/plugins/convcolors.c pidgin/plugins/extplacement.c pidgin/plugins/gestures/gestures.c pidgin/plugins/gevolution/add_buddy_dialog.c
--- a/po/de.po Thu Aug 13 17:40:00 2009 +0000 +++ b/po/de.po Mon Aug 24 19:21:21 2009 +0000 @@ -11,8 +11,8 @@ msgstr "" "Project-Id-Version: de\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-07-29 09:47+0200\n" -"PO-Revision-Date: 2009-07-29 09:51+0200\n" +"POT-Creation-Date: 2009-08-14 16:32+0200\n" +"PO-Revision-Date: 2009-08-14 16:31+0200\n" "Last-Translator: Bjoern Voigt <bjoern@cs.tu-berlin.de>\n" "Language-Team: Deutsch <de@li.org>\n" "MIME-Version: 1.0\n" @@ -1690,6 +1690,45 @@ msgid "_View Certificate..." msgstr "Ze_rtifikat ansehen..." +#, c-format +msgid "" +"The certificate presented by \"%s\" claims to be from \"%s\" instead. This " +"could mean that you are not connecting to the service you believe you are." +msgstr "" +"Das Zertifikat, welches von ��%s�� pr辰sentiert wurde, behauptet stattdessen " +"von ��%s�� zu kommen. Das kann bedeuten, dass Sie tats辰chlich nicht mit dem " +"Dienst verbunden sind, mit dem Sie glauben verbunden zu sein." + +#. Had no CA pool, so couldn't verify the chain *and* +#. * the subject name isn't valid. +#. * I think this is bad enough to warrant a fatal error. It's +#. * not likely anyway... +#. +#. TODO: Probably wrong. +#. TODO: Make this error either block the ensuing SSL +#. connection error until the user dismisses this one, or +#. stifle it. +#. TODO: Probably wrong. +#. TODO: Probably wrong +#. TODO: Probably wrong. +msgid "SSL Certificate Error" +msgstr "SSL-Zertifikatfehler" + +msgid "Invalid certificate chain" +msgstr "Ung端ltige Zertifikationskette" + +#. The subject name is correct, but we weren't able to verify the +#. * chain because there was no pool of root CAs found. Prompt the user +#. * to validate it. +#. +#. vrq will be completed by user_auth +msgid "" +"You have no database of root certificates, so this certificate cannot be " +"validated." +msgstr "" +"Sie haben keine Datenbank f端r Root-Zertifikate. Zertifikate k旦nnen nicht " +"端berpr端ft werden." + #. Prompt the user to authenticate the certificate #. vrq will be completed by user_auth #, c-format @@ -1705,26 +1744,6 @@ msgid "The certificate chain presented for %s is not valid." msgstr "Die Zertifizierungskette, die f端r %s pr辰sentiert wird, ist ung端ltig." -#. TODO: Make this error either block the ensuing SSL -#. connection error until the user dismisses this one, or -#. stifle it. -#. TODO: Probably wrong. -#. TODO: Probably wrong -#. TODO: Probably wrong. -msgid "SSL Certificate Error" -msgstr "SSL-Zertifikatfehler" - -msgid "Invalid certificate chain" -msgstr "Ung端ltige Zertifikationskette" - -#. vrq will be completed by user_auth -msgid "" -"You have no database of root certificates, so this certificate cannot be " -"validated." -msgstr "" -"Sie haben keine Datenbank f端r Root-Zertifikate. Zertifikate k旦nnen nicht " -"端berpr端ft werden." - #. vrq will be completed by user_auth msgid "" "The root certificate this one claims to be issued by is unknown to Pidgin." @@ -1742,19 +1761,6 @@ msgid "Invalid certificate authority signature" msgstr "Unbekannte Zertifizierungsstellensignatur" -#. Prompt the user to authenticate the certificate -#. TODO: Provide the user with more guidance about why he is -#. being prompted -#. vrq will be completed by user_auth -#, c-format -msgid "" -"The certificate presented by \"%s\" claims to be from \"%s\" instead. This " -"could mean that you are not connecting to the service you believe you are." -msgstr "" -"Das Zertifikat, welches von ��%s�� pr辰sentiert wurde, behauptet stattdessen " -"von ��%s�� zu kommen. Das kann bedeuten, dass Sie tats辰chlich nicht mit dem " -"Dienst verbunden sind, mit dem Sie glauben verbunden zu sein." - #. Make messages #, c-format msgid "" @@ -3836,6 +3842,11 @@ msgid "Street Address" msgstr "Stra�e" +#. +#. * EXTADD is correct, EXTADR is generated by other +#. * clients. The next time someone reads this, remove +#. * EXTADR. +#. msgid "Extended Address" msgstr "Erweiterte Adresse" @@ -3924,14 +3935,12 @@ msgid "Temporarily Hide From" msgstr "Tempor辰r versteckt von" -#. && NOT ME msgid "Cancel Presence Notification" msgstr "Abbrechen der Anwesenheitsbenachrichtigung" msgid "(Re-)Request authorization" msgstr "(Nochmal) nach Autorisierung fragen" -#. if(NOT ME) #. shouldn't this just happen automatically when the buddy is #. removed? msgid "Unsubscribe" @@ -4538,7 +4547,10 @@ msgid "" "affiliate <owner|admin|member|outcast|none> [nick1] [nick2] ...: Get " "the users with an affiliation or set users' affiliation with the room." -msgstr "affiliate <owner|admin|member|outcast|none> [Benutzer1] [Benutzer2] ...: Benutzer mit einer Mitgliedschaft f端r den Raum erfragen oder setzen." +msgstr "" +"affiliate <owner|admin|member|outcast|none> [Benutzer1] " +"[Benutzer2] ...: Benutzer mit einer Mitgliedschaft f端r den Raum erfragen " +"oder setzen." msgid "" "role <moderator|participant|visitor|none> [nick1] [nick2] ...: Get the " @@ -4690,9 +4702,6 @@ msgid "Transfer was closed." msgstr "�bertragung wurde geschlossen." -msgid "Failed to open the file" -msgstr "�ffnen der Datei fehlgeschlagen" - msgid "Failed to open in-band bytestream" msgstr "�ffnen des In-Band-Bytestroms fehlgeschlagen" @@ -12239,6 +12248,12 @@ msgid "%s wishes to start a video session with you." msgstr "%s m旦chte eine Video-Sitzung mit Ihnen starten." +msgid "Incoming Call" +msgstr "Eingehender Anruf" + +msgid "_Pause" +msgstr "_Pause" + #, c-format msgid "%s has %d new message." msgid_plural "%s has %d new messages." @@ -13168,9 +13183,6 @@ msgid "_Open Mail" msgstr "Mail 旦_ffnen" -msgid "_Pause" -msgstr "_Pause" - msgid "_Edit" msgstr "_Bearbeiten" @@ -14028,9 +14040,12 @@ msgid "Founder" msgstr "Gr端nder" +#. A user in a chat room who has special privileges. msgid "Operator" msgstr "Operator" +#. A half operator is someone who has a subset of the privileges +#. that an operator has. msgid "Half Operator" msgstr "Half-Operator" @@ -14303,3 +14318,6 @@ msgid "This plugin is useful for debbuging XMPP servers or clients." msgstr "" "Dieses Plugin ist n端tzlich zur Fehlersuche in XMPP-Servern oder -Clients." + +#~ msgid "Failed to open the file" +#~ msgstr "�ffnen der Datei fehlgeschlagen"
--- a/po/eo.po Thu Aug 13 17:40:00 2009 +0000 +++ b/po/eo.po Mon Aug 24 19:21:21 2009 +0000 @@ -2,21 +2,21 @@ # # Copyright (C) 2006, St辿phane Fillod <fillods@users.sourceforge.net> # -# St辿phane Fillod <f8cfe@free.fr>, 2006, 2007, 2008. +# St辿phane Fillod <fillods@users.sourceforge.net>, 2006, 2007, 2008, 2009. # This file is distributed under the same license as the Pidgin package. msgid "" msgstr "" "Project-Id-Version: eo\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-07-06 15:04-0700\n" -"PO-Revision-Date: 2008-03-02 13:39+0100\n" -"Last-Translator: St辿phane Fillod <f8cfe@free.fr>\n" +"POT-Creation-Date: 2009-08-16 09:57-0400\n" +"PO-Revision-Date: 2009-08-16 20:26+0200\n" +"Last-Translator: St辿phane Fillod <fillods@users.sourceforge.net>\n" "Language-Team: Esperanto <kde-i18n-eo@kde.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: KBabel 1.11.4\n" +"X-Generator: gtranslator 1.9.4\n" #. Translators may want to transliterate the name. #. It is not to be translated. @@ -27,7 +27,7 @@ msgid "%s. Try `%s -h' for more information.\n" msgstr "%s. Provu `%s -h' por plia informo.\n" -#, fuzzy, c-format +#, c-format msgid "" "%s\n" "Usage: %s [OPTION]...\n" @@ -42,7 +42,7 @@ "Uzo: %s [OPCIOJ]...\n" "\n" " -c, --config=UJO uzu UJOn por agordo dosieroj\n" -" -d, --debug montru sencimigajn mesa�ojn al stdout\n" +" -d, --debug montru sencimigajn mesa�ojn al stderr\n" " -h, --help vidigu tiun helpon kaj finu\n" " -n, --nologin ne a鏑tomate ensalutu\n" " -v, --version vidigu la aktualan version kaj finu\n" @@ -60,9 +60,8 @@ msgid "Account was not added" msgstr "Konto ne estis aldonita" -#, fuzzy msgid "Username of an account must be non-empty." -msgstr "Ekrannomo de konto ne devas esti malplena." +msgstr "Uzantonomo de konto ne devas esti malplena." msgid "New mail notifications" msgstr "Nova retpo�t-avizoj" @@ -85,9 +84,8 @@ msgid "Protocol:" msgstr "Protokolo:" -#, fuzzy msgid "Username:" -msgstr "_Uzantonomo:" +msgstr "Uzantnomo:" msgid "Password:" msgstr "Pasvorto:" @@ -96,9 +94,8 @@ msgstr "Alinomo:" #. Register checkbox -#, fuzzy msgid "Create this account on the server" -msgstr "Ne konektita al servilo." +msgstr "Krei tiun konton �e la servilo" #. Cancel button #. Cancel @@ -178,9 +175,8 @@ msgid "Default" msgstr "Apriora" -#, fuzzy msgid "You must provide a username for the buddy." -msgstr "Vi devas enigi ekrannomon por la kunul." +msgstr "Vi devas enigi uzantnomon por la kunul." msgid "You must provide a group." msgstr "Vi devas enigi grupon." @@ -256,7 +252,7 @@ msgstr "Redaktu" msgid "Edit Settings" -msgstr "Agordu" +msgstr "Agordi" msgid "Information" msgstr "Informo" @@ -352,12 +348,11 @@ msgid "Unblock" msgstr "Malbloku" -#, fuzzy msgid "" "Please enter the username or alias of the person you would like to Block/" "Unblock." msgstr "" -"Bonvolu enigi la ekrannomon a鏑 alinomon de persono kiun vi dezrias Bloki/" +"Bonvolu enigi la uzantnomon a鏑 alinomon de persono kiun vi deziras Bloki/" "Malbloki." #. Not multiline @@ -369,10 +364,9 @@ msgid "New Instant Message" msgstr "Nova Tujmesa�o" -#, fuzzy msgid "Please enter the username or alias of the person you would like to IM." msgstr "" -"Bonvolu enigi la ekrannomon a鏑 alinomon de persono kiun vi dezrias tujmesa�i." +"Bonvolu enigi la uzantnomon a鏑 alinomon de persono kiun vi deziras tujmesa�i." msgid "Channel" msgstr "Kanalo" @@ -386,13 +380,12 @@ msgid "Join" msgstr "Ali�u" -#, fuzzy msgid "" "Please enter the username or alias of the person whose log you would like to " "view." msgstr "" -"Bonvolu enigi la ekrannomon a鏑 alinomon de persono kiesn protokolon vi " -"dezrias rigardi." +"Bonvolu enigi la uzantnomon a鏑 alinomon de persono kiesn protokolon vi " +"deziras rigardi." #. Create the "Options" frame. msgid "Options" @@ -410,9 +403,8 @@ msgid "View Log..." msgstr "Montru Protokolon..." -#, fuzzy msgid "View All Logs" -msgstr "Montru Protokolon" +msgstr "Montri �iujn Protokolojn" msgid "Show" msgstr "Montru" @@ -605,9 +597,8 @@ msgid "Add Buddy Pounce..." msgstr "Aldonu Kunul Atentigon..." -#, fuzzy msgid "Invite..." -msgstr "Invitu" +msgstr "Invitu..." msgid "Enable Logging" msgstr "�altu Protokoladon" @@ -618,11 +609,11 @@ msgid "<AUTO-REPLY> " msgstr "<A適TO-RESPONDO> " -#, fuzzy, c-format +#, c-format msgid "List of %d user:\n" msgid_plural "List of %d users:\n" -msgstr[0] "Uzantoj Listo:\n" -msgstr[1] "Uzantoj Listo:\n" +msgstr[0] "Listo de %d uzanto:\n" +msgstr[1] "Listo de %d uzantoj:\n" msgid "Supported debug options are: version" msgstr "Subtenitaj sencimigopcioj estas: versio" @@ -714,10 +705,10 @@ msgid "Pause" msgstr "Pa鏑zu" -#, fuzzy, c-format +#, c-format msgid "File Transfers - %d%% of %d file" msgid_plural "File Transfers - %d%% of %d files" -msgstr[0] "Dosiero al�uto - %d%% je %d dosieroj" +msgstr[0] "Dosiero al�uto - %d%% je %d dosiero" msgstr[1] "Dosiero al�uto - %d%% je %d dosieroj" #. Create the window. @@ -765,13 +756,11 @@ msgid "%.2f KiB/s" msgstr "%.2f KiB/s" -#, fuzzy msgid "Sent" -msgstr "Difinu" - -#, fuzzy +msgstr "Sendita" + msgid "Received" -msgstr "Ricevitaj Mesa�oj" +msgstr "Ricevita" msgid "Finished" msgstr "Finita" @@ -780,13 +769,11 @@ msgid "The file was saved as %s." msgstr "La dosiero estas konservita kial %s." -#, fuzzy msgid "Sending" -msgstr "Sendu" - -#, fuzzy +msgstr "Sendante" + msgid "Receiving" -msgstr "Restanta" +msgstr "Ricevante" #, c-format msgid "Conversation in %s on %s" @@ -833,16 +820,14 @@ msgid "Conversations with %s" msgstr "Konversacioj kun %s" -#, fuzzy msgid "All Conversations" -msgstr "Konversacioj" +msgstr "�iuj Konversacioj" msgid "System Log" msgstr "Sistemo Protokolo" -#, fuzzy msgid "Calling ... " -msgstr "Kalkulante..." +msgstr "Alvokante..." msgid "Hangup" msgstr "" @@ -868,9 +853,8 @@ msgid "%s is trying to start an unsupported media session type with you." msgstr "" -#, fuzzy msgid "You have rejected the call." -msgstr "Vi forlasis tiun babilejon." +msgstr "Vi rifuzis la alvokon." msgid "call: Make an audio call." msgstr "" @@ -915,9 +899,8 @@ msgid "(none)" msgstr "(neniu)" -#, fuzzy msgid "URI" -msgstr "UIN" +msgstr "URI" msgid "ERROR" msgstr "ERARO" @@ -1220,9 +1203,8 @@ msgid "Others talk in chat" msgstr "Aliaj parolas en babilejo" -#, fuzzy msgid "Someone says your username in chat" -msgstr "Iun diras vian nomon en babilejo" +msgstr "Iun diras vian uzantnomon en babilejo" msgid "GStreamer Failure" msgstr "GStreamer Malsukceso" @@ -1529,9 +1511,8 @@ msgid "TinyURL (or other) address prefix" msgstr "" -#, fuzzy msgid "TinyURL" -msgstr "URL" +msgstr "TinyURL" msgid "TinyURL plugin" msgstr "" @@ -1640,6 +1621,40 @@ msgid "_View Certificate..." msgstr "_Montru Atestilon..." +#, c-format +msgid "" +"The certificate presented by \"%s\" claims to be from \"%s\" instead. This " +"could mean that you are not connecting to the service you believe you are." +msgstr "" + +#. Had no CA pool, so couldn't verify the chain *and* +#. * the subject name isn't valid. +#. * I think this is bad enough to warrant a fatal error. It's +#. * not likely anyway... +#. +#. TODO: Probably wrong. +#. TODO: Make this error either block the ensuing SSL +#. connection error until the user dismisses this one, or +#. stifle it. +#. TODO: Probably wrong. +#. TODO: Probably wrong +#. TODO: Probably wrong. +msgid "SSL Certificate Error" +msgstr "" + +msgid "Invalid certificate chain" +msgstr "" + +#. The subject name is correct, but we weren't able to verify the +#. * chain because there was no pool of root CAs found. Prompt the user +#. * to validate it. +#. +#. vrq will be completed by user_auth +msgid "" +"You have no database of root certificates, so this certificate cannot be " +"validated." +msgstr "" + #. Prompt the user to authenticate the certificate #. vrq will be completed by user_auth #, c-format @@ -1648,27 +1663,11 @@ "automatically checked." msgstr "" +#. FIXME 2.6.1 #, c-format msgid "The certificate chain presented for %s is not valid." msgstr "" -#. TODO: Make this error either block the ensuing SSL -#. connection error until the user dismisses this one, or -#. stifle it. -#. TODO: Probably wrong. -#. TODO: Probably wrong -msgid "SSL Certificate Error" -msgstr "" - -msgid "Invalid certificate chain" -msgstr "" - -#. vrq will be completed by user_auth -msgid "" -"You have no database of root certificates, so this certificate cannot be " -"validated." -msgstr "" - #. vrq will be completed by user_auth msgid "" "The root certificate this one claims to be issued by is unknown to Pidgin." @@ -1684,16 +1683,6 @@ msgid "Invalid certificate authority signature" msgstr "" -#. Prompt the user to authenticate the certificate -#. TODO: Provide the user with more guidance about why he is -#. being prompted -#. vrq will be completed by user_auth -#, c-format -msgid "" -"The certificate presented by \"%s\" claims to be from \"%s\" instead. This " -"could mean that you are not connecting to the service you believe you are." -msgstr "" - #. Make messages #, c-format msgid "" @@ -1724,7 +1713,7 @@ msgstr "+++ %s malsalutis" #. Unknown error -#. Unknown error! +#, c-format msgid "Unknown error" msgstr "Nekonata eraro" @@ -1771,9 +1760,8 @@ msgid "%s left the room (%s)." msgstr "%s forlasis la �ambron (%s)." -#, fuzzy msgid "Invite to chat" -msgstr "Iniciatu _Babilon" +msgstr "Inviti por babili" #. Put our happy label in it. msgid "" @@ -1901,6 +1889,10 @@ msgstr "" #, c-format +msgid "Transfer of file <A HREF=\"file://%s\">%s</A> complete" +msgstr "" + +#, c-format msgid "Transfer of file %s complete" msgstr "" @@ -2113,9 +2105,8 @@ msgid "(%s) %s <AUTO-REPLY>: %s\n" msgstr "(%s) %s <A適TO-RESPONDO>: %s\n" -#, fuzzy msgid "Error creating conference." -msgstr "Eraro kreante konekto" +msgstr "Eraro kreante konferencon." #, c-format msgid "You are using %s, but this plugin requires %s." @@ -2208,9 +2199,8 @@ "(only when there's no conversation with the sender)" msgstr "" -#, fuzzy msgid "Create a new directory for each user" -msgstr "Elektu uzantan adreslibron ser�endan" +msgstr "" msgid "Notes" msgstr "Notoj" @@ -2578,9 +2568,8 @@ msgid "Do not ask. Always save in pounce." msgstr "" -#, fuzzy msgid "One Time Password" -msgstr "Enigu Pasvorton" +msgstr "" #. *< type #. *< ui_requirement @@ -2799,9 +2788,8 @@ "im/BonjourWindows for more information." msgstr "" -#, fuzzy msgid "Unable to listen for incoming IM connections" -msgstr "Ne povas eki konekton" +msgstr "" msgid "" "Unable to establish connection with the local mDNS server. Is it running?" @@ -2839,9 +2827,8 @@ msgstr "Purpura Persono" #. Creating the options for the protocol -#, fuzzy msgid "Local Port" -msgstr "Loko" +msgstr "" msgid "Bonjour" msgstr "Bonjour" @@ -2853,17 +2840,17 @@ msgid "Unable to send the message, the conversation couldn't be started." msgstr "" -#, fuzzy, c-format +#, c-format msgid "Unable to create socket: %s" -msgstr "Ne konekteblas al %s" - -#, fuzzy, c-format +msgstr "" + +#, c-format msgid "Unable to bind socket to port: %s" -msgstr "Ne konekteblas al %s: %s" - -#, fuzzy, c-format +msgstr "" + +#, c-format msgid "Unable to listen on socket: %s" -msgstr "Ne eblas sendi mesa�on: %s" +msgstr "" msgid "Error communicating with local mDNSResponder." msgstr "" @@ -2913,9 +2900,8 @@ msgid "You must fill in all registration fields" msgstr "" -#, fuzzy msgid "Passwords do not match" -msgstr "Pasvortoj ne kongruas." +msgstr "Pasvortoj ne akordas" msgid "Unable to register new account. An unknown error occurred." msgstr "" @@ -2935,9 +2921,8 @@ msgid "Enter captcha text" msgstr "" -#, fuzzy msgid "Captcha" -msgstr "Konservu Bildon" +msgstr "" msgid "Register New Gadu-Gadu Account" msgstr "Registru Novan Gadu-Gadu-an Konton" @@ -3076,9 +3061,9 @@ msgid "Chat _name:" msgstr "Babilejo _nomo:" -#, fuzzy, c-format +#, c-format msgid "Unable to resolve hostname '%s': %s" -msgstr "Ne eblas alinomigi grupon" +msgstr "" #. 1. connect to server #. connect to the server @@ -3091,9 +3076,8 @@ msgid "This chat name is already in use" msgstr "Tiu babil nomo jam estas uzata" -#, fuzzy msgid "Not connected to the server" -msgstr "Ne konektita al servilo." +msgstr "Ne konektita al servilo" msgid "Find buddies..." msgstr "Trovu kunulojn..." @@ -3134,9 +3118,8 @@ msgid "Gadu-Gadu User" msgstr "Gadu-Gadu Uzanto" -#, fuzzy msgid "GG server" -msgstr "Difinu Uzanto-Informon..." +msgstr "GG servilo" #, c-format msgid "Unknown command: %s" @@ -3152,9 +3135,8 @@ msgid "File Transfer Failed" msgstr "Dosiero Transmeto Malsukcesis" -#, fuzzy msgid "Unable to open a listening port." -msgstr "Dosiero malfermeblas." +msgstr "" msgid "Error displaying MOTD" msgstr "Eraro montrante MOTD-n" @@ -3176,11 +3158,9 @@ #. #. TODO: what to do here - do we really have to disconnect? #. TODO: do we really want to disconnect on a failure to write? -#, fuzzy, c-format +#, c-format msgid "Lost connection with server: %s" -msgstr "" -"Perdis konekton kun servilo:\n" -"%s" +msgstr "Perdis konekton kun servilo: %s" msgid "View MOTD" msgstr "Rigardu MOTD-n" @@ -3191,9 +3171,8 @@ msgid "_Password:" msgstr "_Pasvorto:" -#, fuzzy msgid "IRC nick and server may not contain whitespace" -msgstr "IRC karesnomoj ne enhaveblas blankan spacon" +msgstr "IRC karesnomo kaj servilo ne enhaveblas blankan spacon" msgid "SSL support unavailable" msgstr "SSL subteno ne disponeblas" @@ -3202,13 +3181,13 @@ msgstr "Malkonekteblas" #. this is a regular connect, error out -#, fuzzy, c-format +#, c-format msgid "Unable to connect: %s" -msgstr "Ne konekteblas al %s" - -#, fuzzy, c-format +msgstr "Ne konekteblas: %s" + +#, c-format msgid "Server closed the connection" -msgstr "Servilo fermis la konekton." +msgstr "Servilo fermis la konekton" msgid "Users" msgstr "Uzantoj" @@ -3262,13 +3241,12 @@ msgid "Ban on %s by %s, set %s ago" msgstr "" -#, fuzzy, c-format +#, c-format msgid "Ban on %s" -msgstr "Kialo: %s" - -#, fuzzy +msgstr "" + msgid "End of ban list" -msgstr "Ne en listo" +msgstr "" #, c-format msgid "You are banned from %s." @@ -3393,13 +3371,12 @@ #. We only want to do the following dance if the connection #. has not been successfully completed. If it has, just #. notify the user that their /nick command didn't go. -#, fuzzy, c-format +#, c-format msgid "The nickname \"%s\" is already being used." -msgstr "Tiu babil nomo jam estas uzata" - -#, fuzzy +msgstr "Tiu karesnomo \"%s\" jam estas uzata." + msgid "Nickname in use" -msgstr "Karesnomo" +msgstr "Karesnomo uzata" msgid "Cannot change nick" msgstr "Ne povas �an�i karesnomon" @@ -3619,13 +3596,11 @@ msgid "Plaintext Authentication" msgstr "Platteksta A鏑tentokontrolo" -#, fuzzy msgid "SASL authentication failed" -msgstr "A鏑tentokontrolo malsukcesis" - -#, fuzzy +msgstr "SASL a鏑tentokontrolo malsukcesis" + msgid "Invalid response from server" -msgstr "Malvalida respondo el servilo." +msgstr "Malvalida respondo el servilo" msgid "Server does not use any supported authentication method" msgstr "" @@ -3636,35 +3611,28 @@ msgid "Invalid challenge from server" msgstr "" -#, fuzzy, c-format +#, c-format msgid "SASL error: %s" -msgstr "SASL eraro" +msgstr "SASL eraro: %s" msgid "The BOSH connection manager terminated your session." msgstr "" -#, fuzzy msgid "No session ID given" -msgstr "Nenia kialo donita." +msgstr "" msgid "Unsupported version of BOSH protocol" msgstr "" -#, fuzzy msgid "Unable to establish a connection with the server" msgstr "" -"Perdis konekto kun prokura servilo\n" -"%s" - -#, fuzzy, c-format + +#, c-format msgid "Unable to establish a connection with the server: %s" msgstr "" -"Perdis konekto kun prokura servilo\n" -"%s" - -#, fuzzy + msgid "Unable to establish SSL connection" -msgstr "Ne povas eki konekton" +msgstr "" msgid "Full Name" msgstr "Plena Nomo" @@ -3681,6 +3649,11 @@ msgid "Street Address" msgstr "Strato Adreso" +#. +#. * EXTADD is correct, EXTADR is generated by other +#. * clients. The next time someone reads this, remove +#. * EXTADR. +#. msgid "Extended Address" msgstr "Plia Adreso" @@ -3730,9 +3703,8 @@ msgid "Operating System" msgstr "" -#, fuzzy msgid "Local Time" -msgstr "Loka Doerisero:" +msgstr "Loka Tempo" msgid "Priority" msgstr "Prioriteco" @@ -3744,9 +3716,8 @@ msgid "%s ago" msgstr "" -#, fuzzy msgid "Logged Off" -msgstr "Ensalutita" +msgstr "Elsalutinta" msgid "Middle Name" msgstr "Meza Nomo" @@ -3769,14 +3740,12 @@ msgid "Temporarily Hide From" msgstr "Provizore Ka�u De" -#. && NOT ME msgid "Cancel Presence Notification" msgstr "�esigu Prezentavizon" msgid "(Re-)Request authorization" msgstr "(Re-)demandu permeson" -#. if(NOT ME) #. shouldn't this just happen automatically when the buddy is #. removed? msgid "Unsubscribe" @@ -3912,17 +3881,14 @@ msgid "Find Rooms" msgstr "Trovu Babilejojn" -#, fuzzy msgid "Affiliations:" -msgstr "Alinomo:" - -#, fuzzy +msgstr "" + msgid "No users found" -msgstr "Neniu protokolo trovita" - -#, fuzzy +msgstr "Neniu uzanto trovita" + msgid "Roles:" -msgstr "Rolo" +msgstr "Roloj:" msgid "Ping timed out" msgstr "" @@ -3938,9 +3904,8 @@ msgid "Invalid XMPP ID. Domain must be set." msgstr "" -#, fuzzy msgid "Malformed BOSH URL" -msgstr "Malsukcesis konekti servilon." +msgstr "" #, c-format msgid "Registration of %s@%s successful" @@ -4009,10 +3974,6 @@ msgid "Change Registration" msgstr "�an�u Registradon" -#, fuzzy -msgid "Malformed BOSH Connect Server" -msgstr "Malsukcesis konekti servilon." - msgid "Error unregistering account" msgstr "Eraro forregistrante konton" @@ -4325,21 +4286,20 @@ msgid "%s has buzzed you!" msgstr "" -#, fuzzy, c-format +#, c-format msgid "Unable to initiate media with %s: invalid JID" -msgstr "Ne eblas sendi dosieron al %s, malvalida JID" - -#, fuzzy, c-format +msgstr "Ne eblas eki medion kun %s, malvalida JID" + +#, c-format msgid "Unable to initiate media with %s: user is not online" -msgstr "Ne eblis sendi dosieron al %s, uzanto ne estas konektita" +msgstr "Ne eblas eki medion kun %s, uzanto ne estas konektita" #, c-format msgid "Unable to initiate media with %s: not subscribed to user presence" msgstr "" -#, fuzzy msgid "Media Initiation Failed" -msgstr "Registrado Malsukcesis" +msgstr "" #, c-format msgid "" @@ -4350,9 +4310,8 @@ msgid "Select a Resource" msgstr "" -#, fuzzy msgid "Initiate Media" -msgstr "Iniciatu _Babilon" +msgstr "" msgid "config: Configure a chat room." msgstr "" @@ -4444,9 +4403,8 @@ #. this should probably be part of global smiley theme settings later on, #. shared with MSN -#, fuzzy msgid "Show Custom Smileys" -msgstr "Montru personajn ridmienojn" +msgstr "Montru Proprajn Sidmienojn" #, c-format msgid "%s has left the conversation." @@ -4471,9 +4429,9 @@ msgid "XMPP Message Error" msgstr "XMPP Mesa�o Eraro" -#, fuzzy, c-format +#, c-format msgid "(Code %s)" -msgstr " (Kodo %s)" +msgstr "(Kodo %s)" msgid "XML Parse error" msgstr "" @@ -4505,29 +4463,22 @@ msgid "_Accept Defaults" msgstr "_Akceptu Apriorajn" -#, fuzzy msgid "No reason" -msgstr "Nenia kialo donita." - -#, fuzzy, c-format +msgstr "Sen kialo" + +#, c-format msgid "You have been kicked: (%s)" -msgstr "Vi estas forigita de %s: (%s)" - -#, fuzzy, c-format +msgstr "Vi estas forigita: (%s)" + +#, c-format msgid "Kicked (%s)" -msgstr "Forigita de %s (%s)" - -#, fuzzy +msgstr "Forigita (%s)" + msgid "An error occurred on the in-band bytestream transfer\n" -msgstr "Eraro okazis malfermante la dosiero." - -#, fuzzy +msgstr "" + msgid "Transfer was closed." -msgstr "Dosiero Transmeto Malsukcesis" - -#, fuzzy -msgid "Failed to open the file" -msgstr "Malsukcesis malfermi dosieron '%s': %s" +msgstr "Transmeto estis fermita." msgid "Failed to open in-band bytestream" msgstr "" @@ -4597,9 +4548,8 @@ msgid "Buddy Add error" msgstr "" -#, fuzzy msgid "The username specified does not exist." -msgstr "La nova formatumo malvalidas." +msgstr "" #, c-format msgid "Buddy list synchronization issue in %s (%s)" @@ -4641,9 +4591,9 @@ msgid "Already logged in" msgstr "Jam ensalutita" -#, fuzzy, c-format +#, c-format msgid "Invalid username" -msgstr "Malvalida Uzantonomo" +msgstr "Malvalida uzantnomo" #, c-format msgid "Invalid friendly name" @@ -4825,9 +4775,8 @@ msgid "Passport account not yet verified" msgstr "Pasporta konto ne jam kontrolita" -#, fuzzy msgid "Passport account suspended" -msgstr "Pasporta konto ne jam kontrolita" +msgstr "Pasporta konto suspendita" #, c-format msgid "Bad ticket" @@ -4841,13 +4790,27 @@ msgid "MSN Error: %s\n" msgstr "MSN Eraro: %s\n" -#, fuzzy msgid "Other Contacts" -msgstr "Preferata Kontakto" - -#, fuzzy +msgstr "Aliaj Kontaktoj" + msgid "Non-IM Contacts" -msgstr "Forigu Kontakton" +msgstr "Ne-TM Kontaktoj" + +#, c-format +msgid "%s sent a wink. <a href='msn-wink://%s'>Click here to play it</a>" +msgstr "" + +#, c-format +msgid "%s sent a wink, but it could not be saved" +msgstr "" + +#, c-format +msgid "%s sent a voice clip. <a href='audio://%s'>Click here to play it</a>" +msgstr "" + +#, c-format +msgid "%s sent a voice clip, but it could not be saved" +msgstr "" #, c-format msgid "%s sent you a voice chat invite, which is not yet supported." @@ -4864,9 +4827,8 @@ msgid "Nudging %s..." msgstr "" -#, fuzzy msgid "Email Address..." -msgstr "Retadreso" +msgstr "Retadreso..." msgid "Your new MSN friendly name is too long." msgstr "Via nova MSN amika nomo estas tro longa." @@ -4900,22 +4862,20 @@ msgid "Disallow" msgstr "Malpermesu" -#, fuzzy, c-format +#, c-format msgid "Blocked Text for %s" -msgstr "Kunul Komento por %s" - -#, fuzzy +msgstr "" + msgid "No text is blocked for this account." -msgstr "Uzu tiun kunul p_iktogramon por tiu konto:" +msgstr "" #, c-format msgid "" "MSN servers are currently blocking the following regular expressions:<br/>%s" msgstr "" -#, fuzzy msgid "This account does not have email enabled." -msgstr "Tiu Hotmail konto eble ne estas aktiva." +msgstr "" msgid "Send a mobile message." msgstr "" @@ -4926,9 +4886,8 @@ msgid "Playing a game" msgstr "" -#, fuzzy msgid "Working" -msgstr "Laboro" +msgstr "Laborante" msgid "Has you" msgstr "Havas vin" @@ -4966,9 +4925,8 @@ msgid "Album" msgstr "Albumo" -#, fuzzy msgid "Game Title" -msgstr "Titolon" +msgstr "Ludo Titolo" msgid "Office Title" msgstr "" @@ -5006,6 +4964,27 @@ msgid "SSL support is needed for MSN. Please install a supported SSL library." msgstr "" +#, c-format +msgid "" +"Unable to add the buddy %s because the username is invalid. Usernames must " +"be a valid email address." +msgstr "" + +msgid "Unable to Add" +msgstr "Ne eblas Aldoni" + +msgid "Authorization Request Message:" +msgstr "Permeso Demando Mesa�o:" + +msgid "Please authorize me!" +msgstr "Bonvolu permesu min!" + +#. * +#. * A wrapper for purple_request_action() that uses @c OK and @c Cancel buttons. +#. +msgid "_OK" +msgstr "_Da鏑rigu" + msgid "Error retrieving profile" msgstr "Eraro ricevante profilon" @@ -5156,9 +5135,8 @@ "does not exist." msgstr "" -#, fuzzy msgid "View web profile" -msgstr "Ka�u kiam senkonekta" +msgstr "Rigardi ttt profilon" #. *< type #. *< ui_requirement @@ -5194,20 +5172,20 @@ msgid "%s just sent you a Nudge!" msgstr "%s 諜us sendis al vi Zumon!" -#, fuzzy, c-format +#, c-format msgid "Unknown error (%d): %s" -msgstr "Nekonata eraro (%d)" +msgstr "Nekonata eraro (%d): %s" msgid "Unable to add user" -msgstr "" - +msgstr "Ne eblas aldoni uzanton" + +#. Unknown error! #, c-format msgid "Unknown error (%d)" msgstr "Nekonata eraro (%d)" -#, fuzzy msgid "The following users are missing from your addressbook" -msgstr "La jenaj estas la rezultoj de via ser�o" +msgstr "" msgid "Mobile message was not sent because it was too long." msgstr "" @@ -5259,13 +5237,11 @@ msgid "Our protocol is not supported by the server" msgstr "" -#, fuzzy msgid "Error parsing HTTP" -msgstr "Eraro lan�ante %s" - -#, fuzzy +msgstr "" + msgid "You have signed on from another location" -msgstr "Vi ensalutis el alia loko." +msgstr "Vi ensalutis el alia loko" msgid "The MSN servers are temporarily unavailable. Please wait and try again." msgstr "" @@ -5343,17 +5319,14 @@ msgid "Message may have not been sent because an unknown error occurred:" msgstr "" -#, fuzzy msgid "Delete Buddy from Address Book?" -msgstr "Aldonu al adresaro" - -#, fuzzy +msgstr "" + msgid "Do you want to delete this buddy from your address book as well?" -msgstr "�u vi volas aldoni tiun kunul en via kunullisto?" - -#, fuzzy +msgstr "�u vi volas forigi tiun kunul el via adresaro anka鏑?" + msgid "The username specified is invalid." -msgstr "La nova formatumo malvalidas." +msgstr "La enigita uzantnomo malvalidas." msgid "This Hotmail account may not be active." msgstr "Tiu Hotmail konto eble ne estas aktiva." @@ -5447,11 +5420,8 @@ msgid "Would you like to set one now? (Note: THIS CANNOT BE CHANGED!)" msgstr "" -#, fuzzy msgid "Lost connection with server" -msgstr "" -"Perdis konekto kun prokura servilo\n" -"%s" +msgstr "Perdis konekton kun servilo" #. Can't write _()'d strings in array initializers. Workaround. #. khc: then use N_() in the array initializer and use _() when they are @@ -5501,9 +5471,8 @@ "cfm?fuseaction=accountSettings.changePassword and try again." msgstr "" -#, fuzzy msgid "Incorrect username or password" -msgstr "Misa ekrannomo a鏑 pasvorto" +msgstr "Misa uzantnomo a鏑 pasvorto" msgid "MySpaceIM Error" msgstr "" @@ -5828,9 +5797,8 @@ msgid "You have reached your limit for the number of contacts allowed" msgstr "" -#, fuzzy msgid "You have entered an incorrect username" -msgstr "Vi trenis bildon" +msgstr "" msgid "An error occurred while updating the directory" msgstr "" @@ -5853,9 +5821,9 @@ msgid "Unknown error: 0x%X" msgstr "" -#, fuzzy, c-format +#, c-format msgid "Unable to login: %s" -msgstr "Ne konekteblas al %s" +msgstr "Ne eblas ensaluti: %s" #, c-format msgid "Unable to send message. Could not get details for user (%s)." @@ -5981,11 +5949,10 @@ "%s appears to be offline and did not receive the message that you just sent." msgstr "" -#, fuzzy msgid "" "Unable to connect to server. Please enter the address of the server to which " "you wish to connect." -msgstr "Bonvolu enmetu la nomon de uzanto kiun vi deziras bloki." +msgstr "" msgid "This conference has been closed. No more messages can be sent." msgstr "Tiu konferenco fermi�is. Ne pliaj mesa�oj sendi�eblas." @@ -6009,9 +5976,8 @@ msgid "Server port" msgstr "Servilo pordo" -#, fuzzy msgid "Received unexpected response from " -msgstr "Ricevis neatendita HTTP respondo de servilo." +msgstr "Ricevis neatenditan respondon de" #. username connecting too frequently msgid "" @@ -6019,9 +5985,9 @@ "and try again. If you continue to try, you will need to wait even longer." msgstr "" -#, fuzzy, c-format +#, c-format msgid "Error requesting " -msgstr "Eraro lan�ante %s" +msgstr "" msgid "AOL does not allow your screen name to authenticate here" msgstr "" @@ -6032,11 +5998,8 @@ msgid "Invalid chat room name" msgstr "Malvalida babilejo nomo" -#, fuzzy msgid "Received invalid data on connection with server" msgstr "" -"Perdis konekto kun prokura servilo\n" -"%s" #. *< type #. *< ui_requirement @@ -6083,11 +6046,8 @@ msgid "Received invalid data on connection with remote user." msgstr "" -#, fuzzy msgid "Unable to establish a connection with the remote user." msgstr "" -"Perdis konekto kun prokura servilo\n" -"%s" msgid "Direct IM established" msgstr "Rekta TM establi�is" @@ -6251,9 +6211,8 @@ msgid "Camera" msgstr "Kamerao" -#, fuzzy msgid "Screen Sharing" -msgstr "Ekrannomo" +msgstr "" msgid "Free For Chat" msgstr "" @@ -6279,19 +6238,15 @@ msgid "Buddy Comment" msgstr "Kunul Komento" -#, fuzzy, c-format msgid "Unable to connect to authentication server: %s" -msgstr "" -"Ne povis konekti al a鏑tentokontrolo servilo:\n" -"%s" - -#, fuzzy, c-format +msgstr "Ne povis konekti al a鏑tentokontrolo servilo: %s" + +#, c-format msgid "Unable to connect to BOS server: %s" -msgstr "Ne konekteblas al %s: %s" - -#, fuzzy +msgstr "Ne konekteblas al BOS servilo: %s" + msgid "Username sent" -msgstr "Neniu uzantonomo difinita" +msgstr "Uzantonomo sendita" msgid "Connection established, cookie sent" msgstr "Konekto estabilta, kuketo sendita" @@ -6323,19 +6278,18 @@ #. Unregistered username #. uid is not exist #. the username does not exist -#, fuzzy msgid "Username does not exist" -msgstr "Uzanto ne ekzistas" +msgstr "Uzantonomo ne ekzistas" #. Suspended account -#, fuzzy msgid "Your account is currently suspended" -msgstr "Pasporta konto ne jam kontrolita" +msgstr "Via konto estas nun tempe suspendita" #. service temporarily unavailable msgid "The AOL Instant Messenger service is temporarily unavailable." msgstr "La AOL Tujmesa�ilo servo estas provizore nedisponebla." +#. client too old #, c-format msgid "The client version you are using is too old. Please upgrade at %s" msgstr "" @@ -6346,9 +6300,8 @@ "try again. If you continue to try, you will need to wait even longer." msgstr "" -#, fuzzy msgid "The SecurID key entered is invalid" -msgstr "La nova formatumo malvalidas." +msgstr "La enigita SecurID malvalidas." msgid "Enter SecurID" msgstr "" @@ -6356,12 +6309,6 @@ msgid "Enter the 6 digit number from the digital display." msgstr "" -#. * -#. * A wrapper for purple_request_action() that uses @c OK and @c Cancel buttons. -#. -msgid "_OK" -msgstr "_Da鏑rigu" - msgid "Password sent" msgstr "Pasvorto sendita" @@ -6371,12 +6318,6 @@ msgid "Please authorize me so I can add you to my buddy list." msgstr "Bonvolu permesi min do mi povas aldoni vin al mia kunullisto." -msgid "Authorization Request Message:" -msgstr "Permeso Demando Mesa�o:" - -msgid "Please authorize me!" -msgstr "Bonvolu permesu min!" - msgid "No reason given." msgstr "Nenia kialo donita." @@ -6551,11 +6492,11 @@ msgid "Pop-Up Message" msgstr "�pruca Mesa�o" -#, fuzzy, c-format +#, c-format msgid "The following username is associated with %s" msgid_plural "The following usernames are associated with %s" -msgstr[0] "La jena ekrannomo estas kunligita kun %s" -msgstr[1] "La jenaj ekrannomoj estas kunligitaj kun %s" +msgstr[0] "La jena uzantnomo estas kunligita kun %s" +msgstr[1] "La jenaj uzantnomoj estas kunligitaj kun %s" #, c-format msgid "No results found for email address %s" @@ -6662,11 +6603,6 @@ "numbers and spaces, or contain only numbers." msgstr "" -#, fuzzy -msgid "Unable to Add" -msgstr "Ne eblas Aldoni" - -#, fuzzy msgid "Unable to Retrieve Buddy List" msgstr "Ne eblas Ricevi Kunulliston" @@ -6687,18 +6623,17 @@ msgid "(no name)" msgstr "(sen nomo)" -#, fuzzy, c-format +#, c-format msgid "Unable to add the buddy %s for an unknown reason." -msgstr "Ne povis aldoni kunulon %s pro nekonata kialo." - -#, fuzzy, c-format +msgstr "Ne povis aldoni la kunulon %s pro nekonata kialo." + +#, c-format msgid "" "The user %s has given you permission to add him or her to your buddy list. " "Do you want to add this user?" msgstr "" -"La uzanto %s ne koncedis vian demandon aldoni sin al via kunullisto pro la " -"jena kialo:\n" -"%s" +"La uzanto %s koncedis al vi permeson aldoni �lin al via kunullisto. �u vi " +"volas aldoni tiun uzanton?" msgid "Authorization Given" msgstr "Permeso Donita" @@ -6726,7 +6661,7 @@ msgstr "Permeso Rifuzita" msgid "_Exchange:" -msgstr "_Inter�an�o" +msgstr "_Inter�an�o:" msgid "Your IM Image was not sent. You cannot send IM Images in AIM chats." msgstr "" @@ -6814,18 +6749,15 @@ msgid "_Search" msgstr "_Ser�u" -#, fuzzy msgid "Set User Info (web)..." -msgstr "Difinu Uzanto-Informon (URL)..." +msgstr "Difinu Uzanto-Informon (ttt)..." #. This only happens when connecting with the old-style BUCP login -#, fuzzy msgid "Change Password (web)" -msgstr "�an�u Pasvorton (URL)" - -#, fuzzy +msgstr "�an�u Pasvorton (ttt)" + msgid "Configure IM Forwarding (web)" -msgstr "Agordu TM Plusendado (URL)" +msgstr "Agordi TM Plusendado (ttt)" #. ICQ actions msgid "Set Privacy Options..." @@ -6850,9 +6782,8 @@ msgid "Search for Buddy by Information" msgstr "Ser�u Kunulon la鏑 Informo..." -#, fuzzy msgid "Use clientLogin" -msgstr "Uzanto ne estas ensalutita" +msgstr "" msgid "" "Always use AIM/ICQ proxy server for\n" @@ -6962,16 +6893,14 @@ msgid "Other" msgstr "Alia" -#, fuzzy msgid "Visible" -msgstr "Nevidebla" +msgstr "Videbla" msgid "Friend Only" msgstr "" -#, fuzzy msgid "Private" -msgstr "Privataj aferoj" +msgstr "Privata" msgid "QQ Number" msgstr "QQ Nombro" @@ -6988,9 +6917,8 @@ msgid "Phone Number" msgstr "Telefonnumero" -#, fuzzy msgid "Authorize adding" -msgstr "Permesi kunulon?" +msgstr "Permesi aldoni" msgid "Cellphone Number" msgstr "Po�telefona Numero" @@ -6998,64 +6926,50 @@ msgid "Personal Introduction" msgstr "Persono Enkonduko" -#, fuzzy msgid "City/Area" -msgstr "Urbo" - -#, fuzzy +msgstr "Urbo/Loko" + msgid "Publish Mobile" -msgstr "Persona Po�telefono" - -#, fuzzy +msgstr "Montri Po�telefonon" + msgid "Publish Contact" -msgstr "Alinomo Kontakto" +msgstr "Alinomo Kontakton" msgid "College" msgstr "Kolegio" -#, fuzzy msgid "Horoscope" -msgstr "Horoskopa Simbolo" - -#, fuzzy +msgstr "Horoskopo" + msgid "Zodiac" -msgstr "Zodiaka Signo" - -#, fuzzy +msgstr "Zodiako" + msgid "Blood" -msgstr "Blokita" - -#, fuzzy +msgstr "Sango" + msgid "True" -msgstr "Bovo" - -#, fuzzy +msgstr "Prave" + msgid "False" -msgstr "Malsukcesita" - -#, fuzzy +msgstr "Malprave" + msgid "Modify Contact" -msgstr "�an�u Konton" - -#, fuzzy +msgstr "�an�i Kontakton" + msgid "Modify Address" -msgstr "Hejmo Adreso" - -#, fuzzy +msgstr "�an�i Adreson" + msgid "Modify Extended Information" -msgstr "�an�u mian informon" - -#, fuzzy +msgstr "�an�i Detalan Informon" + msgid "Modify Information" -msgstr "�an�u mian informon" - -#, fuzzy +msgstr "�an�u Informon" + msgid "Update" -msgstr "Lasta Aktualigo" - -#, fuzzy +msgstr "Aktualigi" + msgid "Could not change buddy information." -msgstr "Bonvolu enigi kunul informon." +msgstr "" msgid "Mobile" msgstr "Movante" @@ -7064,24 +6978,20 @@ msgstr "" #. callback -#, fuzzy msgid "Buddy Memo" -msgstr "Kunul Piktogramo" +msgstr "" msgid "Change his/her memo as you like" msgstr "" -#, fuzzy msgid "_Modify" -msgstr "�an�u" - -#, fuzzy +msgstr "�_an�u" + msgid "Memo Modify" -msgstr "�an�u" - -#, fuzzy +msgstr "" + msgid "Server says:" -msgstr "Servilo okupita" +msgstr "Servilo diras:" msgid "Your request was accepted." msgstr "" @@ -7089,24 +6999,21 @@ msgid "Your request was rejected." msgstr "" -#, fuzzy, c-format +#, c-format msgid "%u requires verification" -msgstr "Petu a鏑tentigon" - -#, fuzzy +msgstr "" + msgid "Add buddy question" msgstr "Aldonu kunulon al via listo?" -#, fuzzy msgid "Enter answer here" -msgstr "Enigu Uzanto Adreslibro" +msgstr "Enigu respondon �i-tie" msgid "Send" msgstr "Sendu" -#, fuzzy msgid "Invalid answer." -msgstr "Malvalida Uzantonomo" +msgstr "Malvalida respondo." msgid "Authorization denied message:" msgstr "Rifuzita permeso mesa�o:" @@ -7114,48 +7021,41 @@ msgid "Sorry, you're not my style." msgstr "" -#, fuzzy, c-format +#, c-format msgid "%u needs authorization" -msgstr "Uzanto %d bezonas a鏑tentokontrolon" - -#, fuzzy +msgstr "%u bezonas a鏑tentokontrolon" + msgid "Add buddy authorize" -msgstr "Aldonu kunulon al via listo?" - -#, fuzzy +msgstr "" + msgid "Enter request here" -msgstr "Enigu Konferencan Servilon" +msgstr "" msgid "Would you be my friend?" msgstr "�u vi estus mia amiko?" -#, fuzzy msgid "QQ Buddy" -msgstr "Kunul" - -#, fuzzy +msgstr "QQ Kunul" + msgid "Add buddy" -msgstr "Aldonu Kunulon" - -#, fuzzy +msgstr "Aldoni kunulon" + msgid "Invalid QQ Number" -msgstr "Malvalida QQ Aspekto" - -#, fuzzy +msgstr "Malvalida QQ Numero" + msgid "Failed sending authorize" -msgstr "Bonvolu permesu min!" - -#, fuzzy, c-format +msgstr "" + +#, c-format msgid "Failed removing buddy %u" -msgstr "Malsukcesis forigi kunulon" - -#, fuzzy, c-format +msgstr "Malsukcesis forigi kunulon %u" + +#, c-format msgid "Failed removing me from %d's buddy list" -msgstr "%s forigis vin el sia kunul listo." - -#, fuzzy +msgstr "" + msgid "No reason given" -msgstr "Nenia kialo donita." +msgstr "Nenia kialo donita" #. only need to get value #, c-format @@ -7165,9 +7065,9 @@ msgid "Would you like to add him?" msgstr "�u vi deziras aldoni �lin?" -#, fuzzy, c-format +#, c-format msgid "Rejected by %s" -msgstr "Malakceptu" +msgstr "" #, c-format msgid "Message: %s" @@ -7182,9 +7082,8 @@ msgid "QQ Qun" msgstr "QQ Qun" -#, fuzzy msgid "Please enter Qun number" -msgstr "Bonvolu enigi la novan nomon por %s" +msgstr "Bonvolu enigi Qun numeron" msgid "You can only search for permanent Qun\n" msgstr "" @@ -7192,58 +7091,48 @@ msgid "(Invalid UTF-8 string)" msgstr "" -#, fuzzy msgid "Not member" -msgstr "Mi ne estas membro" - -#, fuzzy +msgstr "Ne membro" + msgid "Member" -msgstr "Membro Ek De" - -#, fuzzy +msgstr "Membro" + msgid "Requesting" -msgstr "Peto Dialogujo" - -#, fuzzy +msgstr "" + msgid "Admin" -msgstr "Adium" - -#, fuzzy +msgstr "" + msgid "Notice" -msgstr "Notoj" - -#, fuzzy +msgstr "" + msgid "Detail" -msgstr "Apriora" +msgstr "Detalo" msgid "Creator" msgstr "Kreanto" -#, fuzzy msgid "About me" -msgstr "Pri %s" - -#, fuzzy +msgstr "Pri mi" + msgid "Category" -msgstr "Babileraro" +msgstr "Kategorio" msgid "The Qun does not allow others to join" msgstr "" -#, fuzzy msgid "Join QQ Qun" -msgstr "QQ Qun" +msgstr "Ali�u QQ Qun" msgid "Input request here" msgstr "" -#, fuzzy, c-format +#, c-format msgid "Successfully joined Qun %s (%u)" -msgstr "Vi sukcese �an�is Qun numeron" - -#, fuzzy +msgstr "Sukcese ali�is Qun %s (%u)" + msgid "Successfully joined Qun" -msgstr "Vi sukcese �an�is Qun numeron" +msgstr "Sukcese ali�is Qun" #, c-format msgid "Qun %u denied from joining" @@ -7252,16 +7141,14 @@ msgid "QQ Qun Operation" msgstr "QQ Qun Operacio" -#, fuzzy msgid "Failed:" -msgstr "Malsukcesita" +msgstr "Malsukcesita:" msgid "Join Qun, Unknown Reply" msgstr "" -#, fuzzy msgid "Quit Qun" -msgstr "QQ Qun" +msgstr "" msgid "" "Note, if you are the creator, \n" @@ -7271,47 +7158,44 @@ msgid "Sorry, you are not our style" msgstr "" -#, fuzzy msgid "Successfully changed Qun members" -msgstr "Vi sukcese �an�is Qun numeron" - -#, fuzzy +msgstr "Sukcese �an�is Qun membrojn" + msgid "Successfully changed Qun information" -msgstr "Vi sukcese �an�is Qun informon" +msgstr "Sukcese �an�is Qun informon" msgid "You have successfully created a Qun" msgstr "" -#, fuzzy msgid "Would you like to set up detailed information now?" -msgstr "�u vi deziras meti �in kiel la kunul piktogramo por tiu uzanto?" +msgstr "" msgid "Setup" msgstr "Agordo" -#, fuzzy, c-format +#, c-format msgid "%u requested to join Qun %u for %s" -msgstr "Uzanto %d petis ali�on al grupo %d" - -#, fuzzy, c-format +msgstr "" + +#, c-format msgid "%u request to join Qun %u" -msgstr "Uzanto %d petis ali�on al grupo %d" - -#, fuzzy, c-format +msgstr "" + +#, c-format msgid "Failed to join Qun %u, operated by admin %u" -msgstr "Malsukcesis kuni�i kunulon en babilejo" +msgstr "" #, c-format msgid "<b>Joining Qun %u is approved by admin %u for %s</b>" msgstr "" -#, fuzzy, c-format +#, c-format msgid "<b>Removed buddy %u.</b>" -msgstr "Forigu Kunulon" - -#, fuzzy, c-format +msgstr "<b>Forigu Kunulon %u.</b>" + +#, c-format msgid "<b>New buddy %u joined.</b>" -msgstr "Forigu Kunulon" +msgstr "" #, c-format msgid "Unknown-%d" @@ -7321,26 +7205,22 @@ msgstr "Nivelo" msgid " VIP" -msgstr "" +msgstr " VIP" msgid " TCP" -msgstr "" - -#, fuzzy +msgstr " TCP" + msgid " FromMobile" -msgstr "Movante" - -#, fuzzy +msgstr "" + msgid " BindMobile" -msgstr "Movante" - -#, fuzzy +msgstr "" + msgid " Video" -msgstr "Viva Video" - -#, fuzzy +msgstr "" + msgid " Zone" -msgstr "Nenio" +msgstr "" msgid "Flag" msgstr "" @@ -7351,9 +7231,8 @@ msgid "Invalid name" msgstr "Malvalida Uzantonomo" -#, fuzzy msgid "Select icon..." -msgstr "Elektu Dosierujon..." +msgstr "Elektu piktogramon..." #, c-format msgid "<b>Login time</b>: %d-%d-%d, %d:%d:%d<br>\n" @@ -7367,21 +7246,21 @@ msgid "<b>Last Refresh</b>: %d-%d-%d, %d:%d:%d<br>\n" msgstr "" -#, fuzzy, c-format +#, c-format msgid "<b>Server</b>: %s<br>\n" -msgstr "<b>Grupo Titolo:</b> %s<br>" - -#, fuzzy, c-format +msgstr "<b>Servilo</b>: %s<br>\n" + +#, c-format msgid "<b>Client Tag</b>: %s<br>\n" -msgstr "<b>Grupo Titolo:</b> %s<br>" +msgstr "" #, c-format msgid "<b>Connection Mode</b>: %s<br>\n" msgstr "" -#, fuzzy, c-format +#, c-format msgid "<b>My Internet IP</b>: %s:%d<br>\n" -msgstr "<b>Grupo Titolo:</b> %s<br>" +msgstr "" #, c-format msgid "<b>Sent</b>: %lu<br>\n" @@ -7391,9 +7270,9 @@ msgid "<b>Resend</b>: %lu<br>\n" msgstr "" -#, fuzzy, c-format +#, c-format msgid "<b>Lost</b>: %lu<br>\n" -msgstr "<b>Grupo Titolo:</b> %s<br>" +msgstr "" #, c-format msgid "<b>Received</b>: %lu<br>\n" @@ -7407,9 +7286,9 @@ msgid "<b>Time</b>: %d-%d-%d, %d:%d:%d<br>\n" msgstr "" -#, fuzzy, c-format +#, c-format msgid "<b>IP</b>: %s<br>\n" -msgstr "<b>Grupo Titolo:</b> %s<br>" +msgstr "" msgid "Login Information" msgstr "Ensaluta Informo" @@ -7426,9 +7305,8 @@ msgid "<p><b>Acknowledgement</b>:<br>\n" msgstr "" -#, fuzzy msgid "<p><b>Scrupulous Testers</b>:<br>\n" -msgstr "<b>Grupo Titolo:</b> %s<br>" +msgstr "" msgid "and more, please let me know... thank you!))" msgstr "" @@ -7439,31 +7317,27 @@ msgid "<i>Feel free to join us!</i> :)" msgstr "" -#, fuzzy, c-format +#, c-format msgid "About OpenQ %s" -msgstr "Pri %s" - -#, fuzzy +msgstr "Pri OpenQ %s" + msgid "Change Icon" -msgstr "Konservu Piktogramon" +msgstr "�an�i Piktogramon" msgid "Change Password" msgstr "" -#, fuzzy msgid "Account Information" -msgstr "Ensaluta Informo" +msgstr "Konto Informo" msgid "Update all QQ Quns" msgstr "" -#, fuzzy msgid "About OpenQ" -msgstr "Pri %s" - -#, fuzzy +msgstr "Pri OpenQ" + msgid "Modify Buddy Memo" -msgstr "Hejmo Adreso" +msgstr "" #. *< type #. *< ui_requirement @@ -7475,38 +7349,32 @@ #. *< version #. * summary #. * description -#, fuzzy msgid "QQ Protocol Plugin" -msgstr "QQ Protokolo\tKroma諜o" - -#, fuzzy +msgstr "QQ Protokolo tKroma諜o" + msgid "Auto" -msgstr "Permesi" - -#, fuzzy +msgstr "A鏑tomate" + msgid "Select Server" -msgstr "Konekto servilo" +msgstr "Elekti Servilon" msgid "QQ2005" -msgstr "" +msgstr "QQ2005" msgid "QQ2007" -msgstr "" +msgstr "QQ2007" msgid "QQ2008" -msgstr "" - -#, fuzzy +msgstr "QQ2008" + msgid "Connect by TCP" -msgstr "Konektu per TCP" - -#, fuzzy +msgstr "Konekti per TCP" + msgid "Show server notice" -msgstr "Servilo pordo" - -#, fuzzy +msgstr "" + msgid "Show server news" -msgstr "Servilo adreso" +msgstr "" msgid "Show chat room when msg comes" msgstr "" @@ -7514,21 +7382,19 @@ msgid "Keep alive interval (seconds)" msgstr "" -#, fuzzy msgid "Update interval (seconds)" -msgstr "Aktualigi mian informon" - -#, fuzzy +msgstr "" + msgid "Unable to decrypt server reply" -msgstr "Konekto servilo" +msgstr "" #, c-format msgid "Failed requesting token, 0x%02X" msgstr "" -#, fuzzy, c-format +#, c-format msgid "Invalid token len, %d" -msgstr "Malvalida titolo" +msgstr "" #. extend redirect used in QQ2006 msgid "Redirect_EX is not currently supported" @@ -7537,39 +7403,33 @@ #. need activation #. need activation #. need activation -#, fuzzy msgid "Activation required" -msgstr "Registrado Postulita" +msgstr "Registrado postulita" #, c-format msgid "Unknown reply code when logging in (0x%02X)" msgstr "" -#, fuzzy msgid "Requesting captcha" -msgstr "Peto Dialogujo" +msgstr "" msgid "Checking captcha" msgstr "" -#, fuzzy msgid "Failed captcha verification" -msgstr "Malsukcesis Yahoo! A鏑tentokontrolo" - -#, fuzzy +msgstr "" + msgid "Captcha Image" -msgstr "Konservu Bildon" - -#, fuzzy +msgstr "" + msgid "Enter code" -msgstr "Enigu Pasvorton" +msgstr "Enigu kodon" msgid "QQ Captcha Verification" msgstr "" -#, fuzzy msgid "Enter the text from the image" -msgstr "Bonvolu enigi la nomon de la grupo" +msgstr "" #, c-format msgid "Unknown reply when checking password (0x%02X)" @@ -7584,55 +7444,48 @@ msgid "Socket error" msgstr "" -#, fuzzy msgid "Getting server" -msgstr "Difinu Uzanto-Informon..." - -#, fuzzy +msgstr "" + msgid "Requesting token" -msgstr "Peto Dialogujo" - -#, fuzzy +msgstr "" + msgid "Unable to resolve hostname" -msgstr "Ne eblas alinomigi grupon" - -#, fuzzy +msgstr "" + msgid "Invalid server or port" -msgstr "Malvalida eraro" - -#, fuzzy +msgstr "" + msgid "Connecting to server" -msgstr "Konekto servilo" - -#, fuzzy +msgstr "Konekto al servilo" + msgid "QQ Error" -msgstr "QQid Eraro" - -#, fuzzy, c-format +msgstr "QQ Eraro" + +#, c-format msgid "" "Server News:\n" "%s\n" "%s\n" "%s" -msgstr "ICQ Servilo Reludo" - -#, fuzzy, c-format +msgstr "" + +#, c-format msgid "%s:%s" -msgstr "%s (%s)" - -#, fuzzy, c-format +msgstr "%s:%s" + +#, c-format msgid "From %s:" -msgstr "De" - -#, fuzzy, c-format +msgstr "De %s:" + +#, c-format msgid "" "Server notice From %s: \n" "%s" -msgstr "Servilo instrukcioj: %s" - -#, fuzzy +msgstr "" + msgid "Unknown SERVER CMD" -msgstr "Nekonata kialo" +msgstr "Nekonata SERVILO CMD" #, c-format msgid "" @@ -7640,21 +7493,17 @@ "Room %u, reply 0x%02X" msgstr "" -#, fuzzy msgid "QQ Qun Command" -msgstr "Komando" - -#, fuzzy +msgstr "QQ Qun Komando" + msgid "Unable to decrypt login reply" -msgstr "Konekto servilo" - -#, fuzzy +msgstr "" + msgid "Unknown LOGIN CMD" -msgstr "Nekonata kialo" - -#, fuzzy +msgstr "" + msgid "Unknown CLIENT CMD" -msgstr "Nekonata kialo" +msgstr "Nekonata KLIENTO CMD" #, c-format msgid "%d has declined the file %s" @@ -7838,7 +7687,7 @@ msgstr "" msgid "Unable to add user: user not found" -msgstr "" +msgstr "Ne eblas aldoni uzanton: uzanto ne trovita" #, c-format msgid "" @@ -8440,7 +8289,7 @@ msgstr "" msgid "_More..." -msgstr "" +msgstr "_Plia..." msgid "Detach From Server" msgstr "" @@ -8560,9 +8409,8 @@ msgid "Disconnected by server" msgstr "" -#, fuzzy msgid "Error connecting to SILC Server" -msgstr "Konekto servilo" +msgstr "" msgid "Key Exchange failed" msgstr "" @@ -8574,31 +8422,25 @@ msgid "Performing key exchange" msgstr "" -#, fuzzy msgid "Unable to load SILC key pair" -msgstr "Ne eblas �argi kroma諜on" +msgstr "" #. Progress msgid "Connecting to SILC Server" msgstr "" -#, fuzzy -msgid "Unable to not load SILC key pair" -msgstr "Ne eblas �argi kroma諜on" - msgid "Out of memory" msgstr "" -#, fuzzy msgid "Unable to initialize SILC protocol" -msgstr "Ne povas eki konekton" +msgstr "" msgid "Error loading SILC key pair" msgstr "" -#, fuzzy, c-format +#, c-format msgid "Download %s: %s" -msgstr "Uzantoj �e %s: %s" +msgstr "" msgid "Your Current Mood" msgstr "" @@ -8867,9 +8709,8 @@ msgid "Creating SILC key pair..." msgstr "" -#, fuzzy msgid "Unable to create SILC key pair" -msgstr "Ne eblas alinomigi grupon" +msgstr "" #. Hint for translators: Please check the tabulator width here and in #. the next strings (short strings: 2 tabs, longer strings 1 tab, @@ -9000,35 +8841,30 @@ msgid "Failure: Authentication failed" msgstr "" -#, fuzzy msgid "Unable to initialize SILC Client connection" -msgstr "Ne povas eki konekton" +msgstr "" msgid "John Noname" msgstr "Sennomulo" -#, fuzzy, c-format +#, c-format msgid "Unable to load SILC key pair: %s" -msgstr "Ne eblas �argi kroma諜on" +msgstr "" msgid "Unable to create connection" msgstr "" -#, fuzzy msgid "Unknown server response" -msgstr "Nekonata kialo" - -#, fuzzy +msgstr "" + msgid "Unable to create listen socket" -msgstr "Malsukcesis skribi reten" - -#, fuzzy +msgstr "" + msgid "SIP usernames may not contain whitespaces or @ symbols" -msgstr "SIP ekrannomoj ne enhaveblas blankan spacon a鏑 @ simbolon" - -#, fuzzy +msgstr "SIP uzantnomoj ne enhaveblas blankan spacon a鏑 @ simbolojn" + msgid "SIP connect server not specified" -msgstr "Servilo pordo" +msgstr "" #. *< type #. *< ui_requirement @@ -9072,9 +8908,8 @@ msgid "doodle: Request user to start a Doodle session" msgstr "" -#, fuzzy msgid "Yahoo ID..." -msgstr "Yahoo! ID" +msgstr "Yahoo ID..." #. *< type #. *< ui_requirement @@ -9086,9 +8921,8 @@ #. *< version #. * summary #. * description -#, fuzzy msgid "Yahoo! Protocol Plugin" -msgstr "Yahoo Protokol-Kroma諜o" +msgstr "Yahoo! Protokol-Kroma諜o" msgid "Pager server" msgstr "Pa�ila servilo" @@ -9117,9 +8951,8 @@ msgid "Yahoo Chat port" msgstr "Yahoo Babilo pordo" -#, fuzzy msgid "Yahoo JAPAN ID..." -msgstr "Yahoo! ID" +msgstr "Yahoo JAPANA ID..." #. *< type #. *< ui_requirement @@ -9131,9 +8964,8 @@ #. *< version #. * summary #. * description -#, fuzzy msgid "Yahoo! JAPAN Protocol Plugin" -msgstr "Yahoo Protokol-Kroma諜o" +msgstr "Yahoo! JAPANA Protokol-Kroma諜o" msgid "Your SMS was not delivered" msgstr "" @@ -9175,9 +9007,8 @@ msgstr "" #. username or password missing -#, fuzzy msgid "Username or password missing" -msgstr "Misa ekrannomo a鏑 pasvorto" +msgstr "Misa uzantnomo a鏑 pasvorto" #, c-format msgid "" @@ -9209,29 +9040,22 @@ msgid "Unable to add buddy %s to group %s to the server list on account %s." msgstr "" -#, fuzzy msgid "Unable to add buddy to server list" -msgstr "Al�utu kunulliston al Servilo" +msgstr "Ne eblas aldoni kunulon al servilolisto" #, c-format msgid "[ Audible %s/%s/%s.swf ] %s" msgstr "[ A鏑debla %s/%s/%s.swf ] %s" -#, fuzzy msgid "Received unexpected HTTP response from server" -msgstr "Ricevis neatendita HTTP respondo de servilo." - -#, fuzzy, c-format +msgstr "Ricevis neatenditan HTTP respondon de servilo" + msgid "Lost connection with %s: %s" -msgstr "" -"Perdis konekton kun %s:\n" -"%s" - -#, fuzzy, c-format +msgstr "Perdis konekton kun %s: %s" + +#, c-format msgid "Unable to establish a connection with %s: %s" -msgstr "" -"Perdis konekto kun prokura servilo\n" -"%s" +msgstr "Ne eblas konekti kun %s: %s" msgid "Not at Home" msgstr "Malhejme" @@ -9371,11 +9195,8 @@ msgstr "La uzanto profilo malplenas." #, c-format -msgid "%s declined your conference invitation to room \"%s\" because \"%s\"." -msgstr "" - -msgid "Invitation Rejected" -msgstr "Invito malakceptita" +msgid "%s has declined to join." +msgstr "" msgid "Failed to join chat" msgstr "Malsukcesis ali�i babilejon" @@ -9425,9 +9246,8 @@ msgid "User Rooms" msgstr "Uzanto Babilejoj" -#, fuzzy msgid "Connection problem with the YCHT server" -msgstr "Konektproblemo kun la YCHT servilo." +msgstr "Konektproblemo kun la YCHT servilo" msgid "" "(There was an error converting this message.\t Check the 'Encoding' option " @@ -9544,18 +9364,18 @@ msgid "Exposure" msgstr "Montreco" -#, fuzzy, c-format +#, c-format msgid "Unable to parse response from HTTP proxy: %s" -msgstr "Ne eblas sendi mesa�on al %s:" +msgstr "" #, c-format msgid "HTTP proxy connection error %d" msgstr "HTTP prokura konekteraro %d" -#, fuzzy, c-format +#, c-format msgid "Access denied: HTTP proxy server forbids port %d tunneling" msgstr "" -"Aliro nepermesita: HTTP prokura servilo malpermesas pordon %d tunelumadon." +"Aliro nepermesita: HTTP prokura servilo malpermesas pordon %d tunelumadon" #, c-format msgid "Error resolving %s" @@ -9613,17 +9433,15 @@ msgstr "�u akceptu babilinviton ?" #. Shortcut -#, fuzzy msgid "Shortcut" -msgstr "Ordigi" +msgstr "Ligilo" msgid "The text-shortcut for the smiley" msgstr "" #. Stored Image -#, fuzzy msgid "Stored Image" -msgstr "Konservu Bildon" +msgstr "Konservita Bildo" msgid "Stored Image. (that'll have to do for now)" msgstr "" @@ -9740,9 +9558,9 @@ msgid "Unable to connect to %s" msgstr "Ne konekteblas al %s" -#, fuzzy, c-format +#, c-format msgid "Error reading from %s: response too long (%d bytes limit)" -msgstr "Eraro legante de %s: %s" +msgstr "" #, c-format msgid "" @@ -9791,9 +9609,9 @@ msgstr "Konekto malakceptita." #. 10048 -#, fuzzy, c-format +#, c-format msgid "Address already in use." -msgstr "Tiu babil nomo jam estas uzata" +msgstr "Adreso jam uzata." #, c-format msgid "Error Reading %s" @@ -9847,8 +9665,8 @@ msgid "Use this buddy _icon for this account:" msgstr "Uzu tiun kunul p_iktogramon por tiu konto:" -msgid "_Advanced" -msgstr "_Kroma" +msgid "Ad_vanced" +msgstr "Pro_gresinta" msgid "Use GNOME Proxy Settings" msgstr "Uzu GNOME-ajn Prokurilo-Agordojn" @@ -9910,9 +9728,8 @@ msgid "Create _this new account on the server" msgstr "" -#, fuzzy -msgid "_Proxy" -msgstr "Prokurilo" +msgid "P_roxy" +msgstr "P_rokurilo" msgid "Enabled" msgstr "En�altita" @@ -9946,13 +9763,11 @@ "choosing 'Expand' from the contact's context menu" msgstr "" -#, fuzzy msgid "Please update the necessary fields." -msgstr "Bonvolu Aktualigi la necesajn kampojn." - -#, fuzzy +msgstr "Bonvolu aktualigi la necesajn kampojn." + msgid "A_ccount" -msgstr "_Konto:" +msgstr "_Konto" msgid "" "Please enter the appropriate information about the chat you would like to " @@ -9978,16 +9793,14 @@ msgid "I_M" msgstr "T_M" -#, fuzzy msgid "_Audio Call" -msgstr "_Aldonu Babilejon" +msgstr "_Sona Alvoko" msgid "Audio/_Video Call" msgstr "" -#, fuzzy msgid "_Video Call" -msgstr "Video Babilado" +msgstr "" msgid "_Send File..." msgstr "_Sendu Dosieron..." @@ -9998,13 +9811,11 @@ msgid "View _Log" msgstr "Montru Protoko_lon" -#, fuzzy msgid "Hide When Offline" -msgstr "Ka�u kiam senkonekta" - -#, fuzzy +msgstr "Ka�i Kiam Senkonekta" + msgid "Show When Offline" -msgstr "Montru kiam senkonekta" +msgstr "Montri Kiam Senkonekta" msgid "_Alias..." msgstr "_Alinomo..." @@ -10012,9 +9823,8 @@ msgid "_Remove" msgstr "Fo_rigu" -#, fuzzy msgid "Set Custom Icon" -msgstr "Difinu Propran Piktogramon..." +msgstr "Difinu Propran Piktogramon" msgid "Remove Custom Icon" msgstr "Forigu Propran Piktogramon" @@ -10041,9 +9851,8 @@ msgid "Persistent" msgstr "Da鏑ra" -#, fuzzy msgid "_Edit Settings..." -msgstr "Agordu" +msgstr "_Redakti Agordojn..." msgid "_Collapse" msgstr "_Maletendu" @@ -10117,9 +9926,8 @@ msgid "/_Accounts" msgstr "/_Kontoj" -#, fuzzy msgid "/Accounts/Manage Accounts" -msgstr "/Kontoj/Mastrumu" +msgstr "/Kontoj/Mastrumi Kontoj" #. Tools msgid "/_Tools" @@ -10131,9 +9939,8 @@ msgid "/Tools/_Certificates" msgstr "/Iloj/_Atestiloj" -#, fuzzy msgid "/Tools/Custom Smile_ys" -msgstr "/Iloj/Privateco" +msgstr "/Iloj/Propaj Pi_ktogramoj" msgid "/Tools/Plu_gins" msgstr "/Iloj/Kroma諜o_j" @@ -10173,11 +9980,13 @@ msgid "<b>Account:</b> %s" msgstr "<b>Konto:</b> %s" -#, fuzzy, c-format +#, c-format msgid "" "\n" "<b>Occupants:</b> %d" -msgstr "<b>Konto:</b> %s" +msgstr "" +"\n" +"<b>Okupantoj:</b> %d" #, c-format msgid "" @@ -10302,7 +10111,7 @@ msgstr "/Kontoj" #. Translators: Please maintain the use of -> and <- to refer to menu heirarchy -#, fuzzy, c-format +#, c-format msgid "" "<span weight='bold' size='larger'>Welcome to %s!</span>\n" "\n" @@ -10313,8 +10122,8 @@ "<span weight='bold' size='larger'>Bonvenon en %s!</span>\n" "\n" "Vi havas neniun konton �altitan. �altu viajn TM kontojn per la <b>Kontoj</b> " -"fenestro �e <b>Kontoj->Mastrumi</b>. Post la �alto de kontoj, vi povos " -"ensaluti, difini vian staton, kaj babiladi kun viaj amikoj." +"fenestro �e <b>Kontoj->Mastrumi Kontojn</b>. Post la �alto de kontoj, vi " +"povos ensaluti, difini vian staton, kaj babiladi kun viaj amikoj." #. set the Show Offline Buddies option. must be done #. * after the treeview or faceprint gets mad. -Robot101 @@ -10334,21 +10143,17 @@ msgid "/Buddies/Show/Protocol Icons" msgstr "/Kunuloj/Montru/Malplenajn Grupojn" -#, fuzzy msgid "Add a buddy.\n" -msgstr "Aldonu Kunulon" - -#, fuzzy +msgstr "Aldoni Kunulon.\n" + msgid "Buddy's _username:" -msgstr "Kunul nomo:" - -#, fuzzy +msgstr "Kunul _uzantnomo:" + msgid "(Optional) A_lias:" -msgstr "Opcia informo:" - -#, fuzzy +msgstr "(Opcia) A_linomo:" + msgid "Add buddy to _group:" -msgstr "Aldonu kunulon al via listo?" +msgstr "Aldoni kunulon al _grupo:" msgid "This protocol does not support chat rooms." msgstr "" @@ -10390,7 +10195,7 @@ msgstr "<PurpleMain>/Kontoj/" msgid "_Edit Account" -msgstr "_Redaktu Konton" +msgstr "_Redakti Konton" msgid "No actions available" msgstr "Neniu ago disponebla" @@ -10411,88 +10216,76 @@ msgid "The background color for the buddy list" msgstr "" -#, fuzzy msgid "Layout" -msgstr "La鏑a" +msgstr "" msgid "The layout of icons, name, and status of the blist" msgstr "" #. Group -#, fuzzy msgid "Expanded Background Color" -msgstr "Malanta鏑a Koloro" +msgstr "" msgid "The background color of an expanded group" msgstr "" -#, fuzzy msgid "Expanded Text" -msgstr "_Etendu" +msgstr "" msgid "The text information for when a group is expanded" msgstr "" -#, fuzzy msgid "Collapsed Background Color" -msgstr "Elektu Malanta鏑an Koloron" +msgstr "" msgid "The background color of a collapsed group" msgstr "" -#, fuzzy msgid "Collapsed Text" -msgstr "_Maletendu" +msgstr "" msgid "The text information for when a group is collapsed" msgstr "" #. Buddy -#, fuzzy msgid "Contact/Chat Background Color" -msgstr "Elektu Malanta鏑an Koloron" +msgstr "Kontakt/Babilan Malanta鏑an Koloron" msgid "The background color of a contact or chat" msgstr "" -#, fuzzy msgid "Contact Text" -msgstr "Ordigi" +msgstr "Kontakt-Teksto" msgid "The text information for when a contact is expanded" msgstr "" -#, fuzzy msgid "On-line Text" -msgstr "Enrete" +msgstr "Konektita Teksto" msgid "The text information for when a buddy is online" msgstr "" -#, fuzzy msgid "Away Text" -msgstr "Fora" +msgstr "Fora Teksto" msgid "The text information for when a buddy is away" msgstr "" -#, fuzzy msgid "Off-line Text" -msgstr "Senkonekta" +msgstr "Senkonekta Teksto" msgid "The text information for when a buddy is off-line" msgstr "" -#, fuzzy msgid "Idle Text" -msgstr "Agorda Teksto" +msgstr "Senfara Teksto" msgid "The text information for when a buddy is idle" msgstr "" -#, fuzzy msgid "Message Text" -msgstr "Mesa�o sendita" +msgstr "Mesa�o Teksto" msgid "The text information for when a buddy has an unread message" msgstr "" @@ -10505,9 +10298,8 @@ "your nick" msgstr "" -#, fuzzy msgid "The text information for a buddy's status" -msgstr "�an�u uzanto-informon de %s" +msgstr "" msgid "Type the host name for this certificate." msgstr "" @@ -10557,9 +10349,8 @@ msgid "Get Away Message" msgstr "Montru Formesa�on" -#, fuzzy msgid "Last Said" -msgstr "Laste diris" +msgstr "Laste Diris" msgid "Unable to save icon file to disk." msgstr "Ne eblas konservi piktogramodosieron al disko." @@ -10579,9 +10370,8 @@ msgid "Set Custom Icon..." msgstr "Difinu Propran Piktogramon..." -#, fuzzy msgid "Change Size" -msgstr "�an�u staton" +msgstr "�an�u Grandecon" msgid "Show All" msgstr "Montru �iujn" @@ -10605,21 +10395,17 @@ msgid "/Conversation/Clea_r Scrollback" msgstr "/Konversacio/Fo_rvi�u Dialogon" -#, fuzzy msgid "/Conversation/M_edia" -msgstr "/Konversacio/_Pli" - -#, fuzzy +msgstr "/Konversacio/M_edio" + msgid "/Conversation/Media/_Audio Call" -msgstr "/Konversacio/_Pli" - -#, fuzzy +msgstr "/Konversacio/Medio/_A鏑da Alvoko" + msgid "/Conversation/Media/_Video Call" -msgstr "/Konversacio/_Pli" - -#, fuzzy +msgstr "/Konversacio/Medio/_Vida Alvoko" + msgid "/Conversation/Media/Audio\\/Video _Call" -msgstr "/Konversacio/Montru _Protokolon" +msgstr "/Konversacio/Medio/A鏑da\\/Vida Alvo_ko" msgid "/Conversation/Se_nd File..." msgstr "/Konversacio/Se_ndu Dosieron..." @@ -10693,17 +10479,14 @@ msgid "/Conversation/View Log" msgstr "/Konversacio/Montru Protokoladon" -#, fuzzy msgid "/Conversation/Media/Audio Call" -msgstr "/Konversacio/Pli" - -#, fuzzy +msgstr "/Konversacio/Medio/A鏑da Alvoko" + msgid "/Conversation/Media/Video Call" -msgstr "/Konversacio/Montru Protokoladon" - -#, fuzzy +msgstr "/Konversacio/Medio/Vida Alvoko" + msgid "/Conversation/Media/Audio\\/Video Call" -msgstr "/Konversacio/Pli" +msgstr "/Konversacio/Medio/A鏑da\\/Vida Alvoko" msgid "/Conversation/Send File..." msgstr "/Konversacio/Sendu Dosieron..." @@ -10881,9 +10664,8 @@ msgid "bug master" msgstr "" -#, fuzzy msgid "artist" -msgstr "Artisto" +msgstr "artisto" #. feel free to not translate this msgid "Ka-Hing Cheung" @@ -10895,9 +10677,8 @@ msgid "support" msgstr "subteno" -#, fuzzy msgid "webmaster" -msgstr "programisto kaj retestro" +msgstr "retestro" msgid "Senior Contributor/QA" msgstr "" @@ -10919,7 +10700,7 @@ msgstr "subteno/Kvalitkontrolo" msgid "XMPP" -msgstr "" +msgstr "XMPP" msgid "original author" msgstr "originala a鏑toro" @@ -10996,9 +10777,8 @@ msgid "French" msgstr "Franca" -#, fuzzy msgid "Irish" -msgstr "Kurda" +msgstr "Irlanda" msgid "Galician" msgstr "Galega" @@ -11018,9 +10798,8 @@ msgid "Hungarian" msgstr "Hungara" -#, fuzzy msgid "Armenian" -msgstr "Rumana" +msgstr "Armena" msgid "Indonesian" msgstr "Indonezia" @@ -11037,9 +10816,8 @@ msgid "Ubuntu Georgian Translators" msgstr "Ubuntaj Kartvelaj Tradukantoj" -#, fuzzy msgid "Khmer" -msgstr "Alia" +msgstr "弔mera" msgid "Kannada" msgstr "Kanara" @@ -11062,9 +10840,8 @@ msgid "Macedonian" msgstr "Makedona" -#, fuzzy msgid "Mongolian" -msgstr "Makedona" +msgstr "Mongola" msgid "Bokm奪l Norwegian" msgstr "Bokm奪l Norvega" @@ -11079,7 +10856,7 @@ msgstr "Norvega Ninorska" msgid "Occitan" -msgstr "" +msgstr "Okcitana" msgid "Punjabi" msgstr "Pan�aba" @@ -11115,13 +10892,13 @@ msgstr "Serba" msgid "Sinhala" -msgstr "" +msgstr "Sinhala" msgid "Swedish" msgstr "Sveda" msgid "Swahili" -msgstr "" +msgstr "Svahila" msgid "Tamil" msgstr "Tamila" @@ -11136,7 +10913,7 @@ msgstr "Turka" msgid "Urdu" -msgstr "" +msgstr "Urdua" msgid "Vietnamese" msgstr "Vjetnama" @@ -11194,14 +10971,15 @@ "\">support@pidgin.im</A><BR/><BR/>" msgstr "" -#, fuzzy, c-format +#, c-format msgid "" "<FONT SIZE=\"4\">IRC Channel:</FONT> #pidgin on irc.freenode.net<BR><BR>" -msgstr "<FONT SIZE=\"4\">IRC:</FONT> #pidgin �e irc.freenode.net<BR><BR>" - -#, fuzzy, c-format +msgstr "" +"<FONT SIZE=\"4\">IRC kanalo:</FONT> #pidgin �e irc.freenode.net<BR><BR>" + +#, c-format msgid "<FONT SIZE=\"4\">XMPP MUC:</FONT> devel@conference.pidgin.im<BR><BR>" -msgstr "<FONT SIZE=\"4\">IRC:</FONT> #pidgin �e irc.freenode.net<BR><BR>" +msgstr "<FONT SIZE=\"4\">XMPP MUC:</FONT> devel@conference.pidgin.im<BR><BR>" msgid "Current Developers" msgstr "Aktualaj Programistoj" @@ -11233,13 +11011,12 @@ msgid "Get User Info" msgstr "Ricevu Uzanto-Informon" -#, fuzzy msgid "" "Please enter the username or alias of the person whose info you would like " "to view." msgstr "" -"Bonvolu enigi la ekrannomon a鏑 alinomon de persono kiesn informon vi dezrias " -"rigardi." +"Bonvolu enigi la uzantnomon a鏑 alinomon de persono kiesan informon vi " +"deziras rigardi." msgid "View User Log" msgstr "Rigardu Uzanto-Protokolon" @@ -11337,45 +11114,35 @@ msgid "Right-click for more unread messages...\n" msgstr "Dektre-klaku por pliaj nelegitaj mesa�oj...\n" -#, fuzzy msgid "_Change Status" -msgstr "�an�u staton" - -#, fuzzy +msgstr "�_an�u staton" + msgid "Show Buddy _List" -msgstr "Montru kunulliston" - -#, fuzzy +msgstr "Montru Kunul_liston" + msgid "_Unread Messages" -msgstr "Nelegitaj mesa�oj" - -#, fuzzy +msgstr "_Nelegitaj Mesa�oj" + msgid "New _Message..." -msgstr "Nova mesa�o..." - -#, fuzzy +msgstr "Nova _Mesa�o..." + msgid "_Accounts" -msgstr "/_Kontoj" - -#, fuzzy +msgstr "_Kontoj" + msgid "Plu_gins" -msgstr "Kroma諜oj" - -#, fuzzy +msgstr "K_roma諜oj" + msgid "Pr_eferences" -msgstr "Agordo" - -#, fuzzy +msgstr "Ag_ordoj" + msgid "Mute _Sounds" -msgstr "Malsonorigu" - -#, fuzzy +msgstr "Mal_sonorigu" + msgid "_Blink on New Message" -msgstr "Flagri je Nova Mesa�o" - -#, fuzzy +msgstr "_Flagri je Nova Mesa�o" + msgid "_Quit" -msgstr "Finu" +msgstr "_Finu" msgid "Not started" msgstr "Malkomencita" @@ -11435,14 +11202,6 @@ msgid "File transfer _details" msgstr "Dosiero-transmeto _detaloj" -#. Pause button -msgid "_Pause" -msgstr "_Pa鏑zo" - -#. Resume button -msgid "_Resume" -msgstr "_Rekomenci" - msgid "Paste as Plain _Text" msgstr "Enmetu keil Plena _Teksto" @@ -11458,9 +11217,8 @@ msgid "Color to draw hyperlinks." msgstr "Koloro ligila." -#, fuzzy msgid "Hyperlink visited color" -msgstr "Ligila koloro" +msgstr "Vizitita ligilo koloro" msgid "Color to draw hyperlink after it has been visited (or activated)." msgstr "" @@ -11501,31 +11259,26 @@ msgid "Color to draw the name of a whispered action message." msgstr "" -#, fuzzy msgid "Whisper Message Name Color" -msgstr "Senditaj Mesa�oj Nomoj Koloro" +msgstr "" msgid "Color to draw the name of a whispered message." msgstr "" -#, fuzzy msgid "Typing notification color" -msgstr "Avizo Forigo" - -#, fuzzy +msgstr "" + msgid "The color to use for the typing notification" -msgstr "Nova retpo�t-avizoj" - -#, fuzzy +msgstr "" + msgid "Typing notification font" -msgstr "�prucigu avizon" +msgstr "" msgid "The font to use for the typing notification" msgstr "" -#, fuzzy msgid "Enable typing notification" -msgstr "Nova retpo�t-avizoj" +msgstr "" msgid "" "<span size='larger' weight='bold'>Unrecognized file type</span>\n" @@ -11571,9 +11324,8 @@ msgid "_Save Image..." msgstr "_Konservi Bildon..." -#, fuzzy msgid "_Add Custom Smiley..." -msgstr "Montru personajn ridmienojn" +msgstr "_Aldoni Propajn Ridmienojn..." msgid "Select Font" msgstr "Elektu Tiparon" @@ -11622,9 +11374,8 @@ msgid "Smile!" msgstr "Ridetu!" -#, fuzzy msgid "_Manage custom smileys" -msgstr "Montru personajn ridmienojn" +msgstr "_Mastumi proprajn ridmienojn" msgid "This theme has no available smileys." msgstr "Tiu temo havas neniujn disponeblajn ridmienojn" @@ -11758,13 +11509,13 @@ #. Steal the "HELP" response and use it to trigger browsing to the logs folder msgid "_Browse logs folder" -msgstr "" +msgstr "_Foliumi protokolujon" #, c-format msgid "%s %s. Try `%s -h' for more information.\n" msgstr "%s %s. Provu `%s -h' por pli da informo.\n" -#, fuzzy, c-format +#, c-format msgid "" "%s %s\n" "Usage: %s [OPTION]...\n" @@ -11786,15 +11537,18 @@ "\n" " -c, --config=UJO uzu UJOn por agordo dosieroj\n" " -d, --debug montru sencimigajn mesa�ojn al stdout\n" +" -f, --force-online devigu konektita, sendistinge je reta stato\n" " -h, --help vidigu tiun helpon kaj finu\n" -" -m, --multiple ne devigu unuopa ruli�o\n" +" -m, --multiple ne devigu unuopa ruli�o\n" " -n, --nologin ne a鏑tomate ensalutu\n" " -l, --login[=NOMO] a鏑tomate ensalutu (fakultativa argumento NOMO " "specifas\n" -" konto(j)n uzendajn, disigitajn per komoj)\n" +" konto(j)n uzendajn, disigitajn per komoj.\n" +" Sen tio, nur la unua konto estos ensalutita).\n" +" --display=DISPLAY X vidilo uzenda\n" " -v, --version vidigu la aktualan version kaj finu\n" -#, fuzzy, c-format +#, c-format msgid "" "%s %s\n" "Usage: %s [OPTION]...\n" @@ -11815,12 +11569,15 @@ "\n" " -c, --config=UJO uzu UJOn por agordo dosieroj\n" " -d, --debug montru sencimigajn mesa�ojn al stdout\n" +" -f, --force-online devigu konektita, sendistinge je reta stato\n" " -h, --help vidigu tiun helpon kaj finu\n" " -m, --multiple ne devigu unuopa ruli�o\n" " -n, --nologin ne a鏑tomate ensalutu\n" " -l, --login[=NOMO] a鏑tomate ensalutu (fakultativa argumento NOMO " "specifas\n" -" konto(j)n uzendajn, disigitajn per komoj)\n" +" konto(j)n uzendajn, disigitajn per komoj.\n" +" Sen tio, nur la unua konto estos ensalutita).\n" +" --display=DISPLAY X vidilo uzenda\n" " -v, --version vidigu la aktualan version kaj finu\n" #, c-format @@ -11849,14 +11606,13 @@ msgstr "" msgid "/_Media" -msgstr "" +msgstr "/_Medio" msgid "/Media/_Hangup" -msgstr "" - -#, fuzzy +msgstr "/Medio/_Rekro�i" + msgid "Calling..." -msgstr "Kalkulante..." +msgstr "Alvokante..." #, c-format msgid "%s wishes to start an audio/video session with you." @@ -11866,6 +11622,12 @@ msgid "%s wishes to start a video session with you." msgstr "" +msgid "Incoming Call" +msgstr "" + +msgid "_Pause" +msgstr "_Pa鏑zo" + #, c-format msgid "%s has %d new message." msgid_plural "%s has %d new messages." @@ -11894,9 +11656,8 @@ msgstr "" "La 'Mana' foliumilo komando estis elektita, sed nenia komando estis difinita." -#, fuzzy msgid "No message" -msgstr "Nekonata mesa�o" +msgstr "Neniu mesa�o" msgid "Open All Messages" msgstr "Malfermu �iujn Mesa�ojn" @@ -11904,16 +11665,14 @@ msgid "<span weight=\"bold\" size=\"larger\">You have mail!</span>" msgstr "<span weight=\"bold\" size=\"larger\">Vi ricevis retmesa�on!</span>" -#, fuzzy msgid "New Pounces" -msgstr "Nova Kunul Atentigo" +msgstr "" msgid "Dismiss" msgstr "" -#, fuzzy msgid "<span weight=\"bold\" size=\"larger\">You have pounced!</span>" -msgstr "<span weight=\"bold\" size=\"larger\">Vi ricevis retmesa�on!</span>" +msgstr "" msgid "The following plugins will be unloaded." msgstr "La jenajn kroma諜oj estos mal�ar�itaj." @@ -11932,30 +11691,25 @@ "startup." msgstr "" -#, fuzzy, c-format +#, c-format msgid "" "<span foreground=\"red\" weight=\"bold\">Error: %s\n" "Check the plugin website for an update.</span>" msgstr "" -"%s\n" -"<span foreground=\"#ff0000\" weight=\"bold\">Eraro: %s\n" -"Kontrolu kroma諜an retsituon por �isdatigo .</span>" - -#, fuzzy +"<span foreground=\"red\" weight=\"bold\">Eraro: %s\n" +"Kontrolu kroma諜an retsituon por �isdatigo.</span>" + msgid "Author" -msgstr "Permesu" - -#, fuzzy +msgstr "A鏑toro" + msgid "<b>Written by:</b>" -msgstr "<b>Sendante Al:</b>" - -#, fuzzy +msgstr "<b>Verkita de::</b>" + msgid "<b>Web site:</b>" -msgstr "<b>Sendante Kiel:</b>" - -#, fuzzy +msgstr "<b>Retejo:</b>" + msgid "<b>Filename:</b>" -msgstr "<b>Uzantonomo:</b>" +msgstr "<b>Dosiernomo:</b>" msgid "Configure Pl_ugin" msgstr "Agrod_u Kroma諜on" @@ -11966,9 +11720,8 @@ msgid "Select a file" msgstr "Elektu dosieron" -#, fuzzy msgid "Modify Buddy Pounce" -msgstr "Redaktu Kunul Atentigo" +msgstr "" #. Create the "Pounce on Whom" frame. msgid "Pounce on Whom" @@ -12043,57 +11796,55 @@ msgid "Pounce Target" msgstr "" -#, fuzzy, c-format +#, c-format msgid "Started typing" msgstr "Ektajpas" -#, fuzzy, c-format +#, c-format msgid "Paused while typing" msgstr "Pa鏑zas tajpante" -#, fuzzy, c-format +#, c-format msgid "Signed on" msgstr "Ensalutas" -#, fuzzy, c-format +#, c-format msgid "Returned from being idle" -msgstr "%s revenis el senfarado (%s)" - -#, fuzzy, c-format +msgstr "Revenis el senfarado" + +#, c-format msgid "Returned from being away" msgstr "Ekmalfori�as" -#, fuzzy, c-format +#, c-format msgid "Stopped typing" msgstr "Ekmaltajpas" -#, fuzzy, c-format +#, c-format msgid "Signed off" msgstr "Audia鏑as" -#, fuzzy, c-format +#, c-format msgid "Became idle" msgstr "Eksenfaras" -#, fuzzy, c-format +#, c-format msgid "Went away" msgstr "Kiam fora" -#, fuzzy, c-format +#, c-format msgid "Sent a message" -msgstr "Sendu mesa�on" +msgstr "Sendis mesa�on" #, c-format msgid "Unknown.... Please report this!" msgstr "" -#, fuzzy msgid "Theme failed to unpack." -msgstr "GStreamer malsukcesis ekon." - -#, fuzzy +msgstr "" + msgid "Theme failed to load." -msgstr "Malsukcesis �argi bildon" +msgstr "" msgid "Theme failed to copy." msgstr "" @@ -12114,14 +11865,12 @@ msgid "Keyboard Shortcuts" msgstr "" -#, fuzzy msgid "Cl_ose conversations with the Escape key" -msgstr "Konversacioj kun %s" +msgstr "" #. Buddy List Themes -#, fuzzy msgid "Buddy List Theme" -msgstr "Kunullisto" +msgstr "" #. System Tray msgid "System Tray Icon" @@ -12133,9 +11882,8 @@ msgid "On unread messages" msgstr "Je nelegitaj mesa�oj" -#, fuzzy msgid "Conversation Window" -msgstr "TM Konversacio Fenestroj" +msgstr "Konversacio Fenestroj" msgid "_Hide new IM conversations:" msgstr "_Ka�u novajn TM-ajn konversaciojn:" @@ -12238,9 +11986,9 @@ msgid "<span style=\"italic\">Example: stunserver.org</span>" msgstr "<span style=\"italic\">Ekzemplo: stunserver.org</span>" -#, fuzzy, c-format +#, c-format msgid "Use _automatically detected IP address: %s" -msgstr "_A鏑todetekti IP adreson" +msgstr "Uzi _a鏑todetektitan IP adreson: %s" msgid "Public _IP:" msgstr "Publika _IP:" @@ -12279,10 +12027,10 @@ msgstr "" msgid "Configure _Proxy" -msgstr "Agordu _Prokurilon" +msgstr "Agordi _Prokurilon" msgid "Configure _Browser" -msgstr "Agordu _Retumilon" +msgstr "Agordi _Retumilon" msgid "Proxy Server" msgstr "Prokura Servilo" @@ -12415,31 +12163,26 @@ "Sono k_omando:\n" "(%s por dosiernomo)" -#, fuzzy msgid "M_ute sounds" -msgstr "Malsonorigu" +msgstr "_Malsonorigu" msgid "Sounds when conversation has _focus" msgstr "Sonu kiam konversacio _fokusas" -#, fuzzy msgid "_Enable sounds:" -msgstr "�altu Sonojn:" - -#, fuzzy +msgstr "�_altu sonojn:" + msgid "V_olume:" -msgstr "La鏑teco:" +msgstr "La鏑tec_o:" msgid "Play" msgstr "Ludu" -#, fuzzy msgid "_Browse..." msgstr "Fol_iumi..." -#, fuzzy msgid "_Reset" -msgstr "Restarigu" +msgstr "_Restarigu" msgid "_Report idle time:" msgstr "_Raportu senfaran tempon:" @@ -12615,53 +12358,42 @@ "A custom smiley for '%s' already exists. Please use a different shortcut." msgstr "" -#, fuzzy msgid "Custom Smiley" -msgstr "Enmetu Ridmienon" - -#, fuzzy +msgstr "Propra Ridmieno" + msgid "Duplicate Shortcut" -msgstr "Duobligo Korekto" - -#, fuzzy +msgstr "Duobliga Ligilo" + msgid "Edit Smiley" -msgstr "Enmetu Ridmienon" - -#, fuzzy +msgstr "Redakti Ridmienon" + msgid "Add Smiley" -msgstr "Ridetu!" - -#, fuzzy +msgstr "Aldoni Ridmienon" + msgid "_Image:" -msgstr "B_ildon" +msgstr "B_ildon:" #. Shortcut text -#, fuzzy msgid "S_hortcut text:" -msgstr "Ordigi" - -#, fuzzy +msgstr "L_igilo teksto:" + msgid "Smiley" -msgstr "Ridetu!" - -#, fuzzy +msgstr "Ridmieno" + msgid "Shortcut Text" -msgstr "Ordigi" +msgstr "Ligilo teksto" msgid "Custom Smiley Manager" msgstr "" -#, fuzzy msgid "Select Buddy Icon" -msgstr "Elektu Kunulon" - -#, fuzzy +msgstr "Elektu Kunulan Piktogramon" + msgid "Click to change your buddyicon for this account." -msgstr "Uzu tiun kunul p_iktogramon por tiu konto:" - -#, fuzzy +msgstr "Klaku por �an�i vian kunul-piktogramon por tiu konto." + msgid "Click to change your buddyicon for all accounts." -msgstr "Uzu tiun kunul p_iktogramon por tiu konto:" +msgstr "Klaku por �an�i vian kunul-piktogramon por �iuj kontoj." msgid "Waiting for network connection" msgstr "Atendante retkonekto" @@ -12672,9 +12404,8 @@ msgid "Saved statuses..." msgstr "Konservitaj statoj..." -#, fuzzy msgid "Status Selector" -msgstr "Sono Elekto" +msgstr "Stato Elektilo" msgid "Google Talk" msgstr "Gogla Babilado" @@ -12770,9 +12501,8 @@ "Failed to load image '%s': reason not known, probably a corrupt image file" msgstr "" -#, fuzzy msgid "_Open Link" -msgstr "_Malfermu ligilon per:" +msgstr "_Malfermu ligilon" msgid "_Copy Link Location" msgstr "_Kopiu Ligilo-Lokon" @@ -12780,9 +12510,21 @@ msgid "_Copy Email Address" msgstr "_Kopiu Retadreson" +msgid "_Open File" +msgstr "Malfermu _Dosieron" + +msgid "Open _Containing Directory" +msgstr "" + msgid "Save File" msgstr "Konservu Dosieron" +msgid "_Play Sound" +msgstr "_Ludu sonon" + +msgid "_Save File" +msgstr "_Konservu Dosieron" + msgid "Select color" msgstr "Elektu koloron" @@ -12798,20 +12540,17 @@ msgid "_Invite" msgstr "_Ivitu" -#, fuzzy msgid "_Modify..." msgstr "�_an�u..." -#, fuzzy msgid "_Add..." -msgstr "_Aldonu" +msgstr "_Aldonu.." msgid "_Open Mail" msgstr "_Malfermu retmesa�on" -#, fuzzy msgid "_Edit" -msgstr "Redaktu" +msgstr "_Redaktu" msgid "Pidgin Tooltip" msgstr "" @@ -12828,9 +12567,8 @@ msgid "none" msgstr "neniu" -#, fuzzy msgid "Small" -msgstr "Retadreso" +msgstr "Malgranda" msgid "Smaller versions of the default smilies" msgstr "" @@ -12874,66 +12612,55 @@ msgid "Displays statistical information about your buddies' availability" msgstr "" -#, fuzzy msgid "Server name request" -msgstr "Servilo adreso" - -#, fuzzy +msgstr "" + msgid "Enter an XMPP Server" -msgstr "Enigu Konferencan Servilon" - -#, fuzzy +msgstr "Enigu XMPP Servilon" + msgid "Select an XMPP server to query" -msgstr "Elektu konferencan servilon petendan" - -#, fuzzy +msgstr "Elektu XMPP servilon petendan" + msgid "Find Services" -msgstr "Trovu kunulojn" - -#, fuzzy +msgstr "Trovu Servojn" + msgid "Add to Buddy List" -msgstr "Sendu Kunulliston" - -#, fuzzy +msgstr "Aldoni al Kunulliston" + msgid "Gateway" -msgstr "Fori�as" - -#, fuzzy +msgstr "" + msgid "Directory" -msgstr "Protokolo Dosierujo" - -#, fuzzy +msgstr "Dosierujo" + msgid "PubSub Collection" -msgstr "Sono Elekto" +msgstr "" msgid "PubSub Leaf" msgstr "" -#, fuzzy msgid "" "\n" "<b>Description:</b> " -msgstr "Priskibo" +msgstr "" +"\n" +"<b>Priskibo:</b> " #. Create the window. -#, fuzzy msgid "Service Discovery" -msgstr "Servico Malkovrado Informo" - -#, fuzzy +msgstr "Servo Malkovrado" + msgid "_Browse" -msgstr "_Retumilo:" - -#, fuzzy +msgstr "_Retumilo" + msgid "Server does not exist" -msgstr "Uzanto ne ekzistas" +msgstr "Servilo ne ekzistas" msgid "Server does not support service discovery" msgstr "" -#, fuzzy msgid "XMPP Service Discovery" -msgstr "Servico Malkovrado Informo" +msgstr "XMPP Servo Malkovrado" msgid "Allows browsing and registering services." msgstr "" @@ -13184,9 +12911,8 @@ msgid "Please enter the person's information below." msgstr "" -#, fuzzy msgid "Please enter the buddy's username and account type below." -msgstr "Bonvolu enigi la kunul ekrannomo kaj kontotipo sube." +msgstr "Bonvolu enigi la kunul uzantnomon kaj kontotipon sube." msgid "Account type:" msgstr "Konto tipo:" @@ -13316,7 +13042,6 @@ msgstr "Muzika Mesa�ilo Kroma諜o por kunlaboranta verkado." #. * summary -#, fuzzy msgid "" "The Music Messaging Plugin allows a number of users to simultaneously work " "on a piece of music by editing a common score in real-time." @@ -13328,9 +13053,8 @@ msgid "Notify For" msgstr "Avizu Por" -#, fuzzy msgid "\t_Only when someone says your username" -msgstr "\t_Nur kiam iun diras vian ekran nomon" +msgstr "\t_Nur kiam iun diras vian uzantnomon" msgid "_Focused windows" msgstr "_Fokusitaj fenestoj" @@ -13354,18 +13078,16 @@ msgid "Set window manager \"_URGENT\" hint" msgstr "Dinifu fenestrtraktilan \"_UR�ANTA\" indikon" -#, fuzzy msgid "_Flash window" -msgstr "B_abilfenestroj" +msgstr "" #. Raise window method button msgid "R_aise conversation window" msgstr "Startigu konversacio-fenestron" #. Present conversation method button -#, fuzzy msgid "_Present conversation window" -msgstr "Startigu konversacio-fenestron" +msgstr "_Nuna konversacio-fenestro" #. ---------- "Notification Removals" ---------- msgid "Notification Removal" @@ -13437,16 +13159,14 @@ msgid "Hyperlink Color" msgstr "Ligilo Koloro" -#, fuzzy msgid "Visited Hyperlink Color" -msgstr "Ligilo Koloro" +msgstr "Vizitita Ligilo Koloro" msgid "Highlighted Message Name Color" msgstr "Emfazitaj Mesa�oj Nomo Koloro" -#, fuzzy msgid "Typing Notification Color" -msgstr "Avizo Forigo" +msgstr "" msgid "GtkTreeView Horizontal Separation" msgstr "" @@ -13477,17 +13197,14 @@ msgid "GTK+ Text Shortcut Theme" msgstr "" -#, fuzzy msgid "Disable Typing Notification Text" -msgstr "Nova retpo�t-avizoj" - -#, fuzzy +msgstr "" + msgid "GTK+ Theme Control Settings" -msgstr "Pi�in GTK+ Etoso Kontrolo" - -#, fuzzy +msgstr "GTK+ Etoso Kontrolo Agordoj" + msgid "Colors" -msgstr "Fermu" +msgstr "Koloroj" msgid "Fonts" msgstr "Tiparoj" @@ -13529,13 +13246,11 @@ msgid "New Version Available" msgstr "Nova Versio Disponebla" -#, fuzzy msgid "Later" -msgstr "Dato" - -#, fuzzy +msgstr "Poste" + msgid "Download Now" -msgstr "Uzantoj �e %s: %s" +msgstr "El�uti Nun" #. *< type #. *< ui_requirement @@ -13567,15 +13282,13 @@ #. *< dependencies #. *< priority #. *< id -#, fuzzy msgid "Send Button" -msgstr "Sendu Al" +msgstr "Send-Butono" #. *< name #. *< version -#, fuzzy msgid "Conversation Window Send Button." -msgstr "Konversacio Fenestroj Ka�eco" +msgstr "Konversacio Fenestro Sendo Butono." #. *< summary msgid "" @@ -13632,91 +13345,76 @@ msgid "Replaces text in outgoing messages according to user-defined rules." msgstr "Anstata鏑igu tekston en elirantaj mesa�oj la鏑 uzantodfinitaj reguloj." -#, fuzzy msgid "Just logged in" -msgstr "Ne ensalutita" - -#, fuzzy +msgstr "調us ensalutita" + msgid "Just logged out" -msgstr "Ne ensalutita" +msgstr "調us elsalutita" msgid "" "Icon for Contact/\n" "Icon for Unknown person" msgstr "" -#, fuzzy msgid "Icon for Chat" -msgstr "Ali�u Babilejon" - -#, fuzzy +msgstr "Piktogramo por Babilejo" + msgid "Ignored" -msgstr "Ignoru" - -#, fuzzy +msgstr "Ignorita" + msgid "Founder" -msgstr "Pli La鏑te" - -#, fuzzy +msgstr "" + +#. A user in a chat room who has special privileges. msgid "Operator" -msgstr "Opero" - +msgstr "" + +#. A half operator is someone who has a subset of the privileges +#. that an operator has. msgid "Half Operator" msgstr "" -#, fuzzy msgid "Authorization dialog" -msgstr "Permeso Donita" - -#, fuzzy +msgstr "" + msgid "Error dialog" -msgstr "Eraro " - -#, fuzzy +msgstr "" + msgid "Information dialog" -msgstr "Informo" +msgstr "" msgid "Mail dialog" msgstr "" -#, fuzzy msgid "Question dialog" -msgstr "Peto Dialogujo" - -#, fuzzy +msgstr "" + msgid "Warning dialog" -msgstr "Averto" +msgstr "" msgid "What kind of dialog is this?" msgstr "" -#, fuzzy msgid "Status Icons" -msgstr "Stato por %s" - -#, fuzzy +msgstr "" + msgid "Chatroom Emblems" -msgstr "Babilejo loka諜aro" - -#, fuzzy +msgstr "" + msgid "Dialog Icons" -msgstr "Konservu Piktogramon" - -#, fuzzy +msgstr "" + msgid "Pidgin Icon Theme Editor" -msgstr "Pi�in GTK+ Etoso Kontrolo" - -#, fuzzy +msgstr "Pi�in Piktogramo Etoso Redaktilo" + msgid "Contact" -msgstr "Kontakto Informo" - -#, fuzzy +msgstr "Kontakto" + msgid "Pidgin Buddylist Theme Editor" -msgstr "Kunullisto" - -#, fuzzy +msgstr "" + msgid "Edit Buddylist Theme" -msgstr "Kunullisto" +msgstr "" msgid "Edit Icon Theme" msgstr "" @@ -13728,16 +13426,14 @@ #. *< priority #. *< id #. * description -#, fuzzy msgid "Pidgin Theme Editor" -msgstr "Pi�in GTK+ Etoso Kontrolo" +msgstr "Pi�in Etoso Redaktilo" #. *< name #. *< version #. * summary -#, fuzzy msgid "Pidgin Theme Editor." -msgstr "Pi�in GTK+ Etoso Kontrolo" +msgstr "Pi�in Etoso Redaktilo." #. *< type #. *< ui_requirement @@ -13902,10 +13598,9 @@ msgid "Options specific to Pidgin for Windows." msgstr "Opcioj apartaj al Pi�in Vindoza." -#, fuzzy msgid "" "Provides options specific to Pidgin for Windows, such as buddy list docking." -msgstr "Opcioj apartaj al Pi�in Vindoza." +msgstr "" msgid "<font color='#777777'>Logged out.</font>" msgstr "" @@ -13944,6 +13639,12 @@ msgid "This plugin is useful for debbuging XMPP servers or clients." msgstr "" +#~ msgid "Invitation Rejected" +#~ msgstr "Invito malakceptita" + +#~ msgid "_Resume" +#~ msgstr "_Rekomenci" + #~ msgid "Connection failed." #~ msgstr "Konekto malsukcesis." @@ -14038,24 +13739,12 @@ #~ msgid "Could Not Connect" #~ msgstr "Ne Povas Konekti" -#, fuzzy -#~ msgid "Invalid username." -#~ msgstr "Malvalida Uzantonomo" - -#, fuzzy -#~ msgid "Could not decrypt server reply" -#~ msgstr "Konekto servilo" - #~ msgid "Connection lost" #~ msgstr "Konekto perdita" #~ msgid "Connection closed (writing)" #~ msgstr "Koneto fermita (skribante)" -#, fuzzy -#~ msgid "Incorrect Password" -#~ msgstr "Misa pasvorto" - #~ msgid "Yahoo Japan" #~ msgstr "Yahoo Japanio" @@ -14075,10 +13764,6 @@ #~ msgid "Conversation Window Hiding" #~ msgstr "Konversacio Fenestroj Ka�eco" -#, fuzzy -#~ msgid "Please select an image for the smiley." -#~ msgstr "Bonvolu enigi novan nomon por vi." - #~ msgid "Activate which ID?" #~ msgstr "�altu kiun ID?" @@ -14094,33 +13779,9 @@ #~ msgid "Widget Sizes" #~ msgstr "Fenestra諜o Grandecoj" -#, fuzzy -#~ msgid "Invite message" -#~ msgstr "Enmetu en mesa�on" - -#, fuzzy -#~ msgid "" -#~ "Please enter the name of the user you wish to invite,\n" -#~ "along with an optional invite message." -#~ msgstr "" -#~ "Bonvolu enigi la nomon de uzanto kiun vi deziras inviti, kun fakultativan " -#~ "invitmesa�on." - #~ msgid "Unable to retrieve MSN Address Book" #~ msgstr "Ne eblas ricevi MSN Adresaron" -#, fuzzy -#~ msgid "Add buddy Q&A" -#~ msgstr "Aldonu Kunulon" - -#, fuzzy -#~ msgid "" -#~ "Lost connection with server:\n" -#~ "%d, %s" -#~ msgstr "" -#~ "Perdis konekton kun servilo:\n" -#~ "%s" - #~ msgid "Failed to send IM." #~ msgstr "Malsukcesis sendi tujmesa�on." @@ -14130,10 +13791,6 @@ #~ msgid "Country not supported." #~ msgstr "Lando ne subtenita." -#, fuzzy -#~ msgid "Incorrect username or password." -#~ msgstr "Misa ekrannomo a鏑 pasvorto." - #~ msgid "An unknown signon error has occurred: %s." #~ msgstr "Nekonata ensaluteraro okazis: %s." @@ -14185,10 +13842,6 @@ #~ msgid "ST_UN server:" #~ msgstr "ST_UN servilo:" -#, fuzzy -#~ msgid "Smiley _Image" -#~ msgstr "Konservu Bildon" - #~ msgid "A group with the name already exists." #~ msgstr "Samnomita grupo jam ekzistas." @@ -14198,17 +13851,9 @@ #~ msgid "Blood Type" #~ msgstr "Sanga Tipo" -#, fuzzy -#~ msgid "Successed:" -#~ msgstr "Rapideco:" - #~ msgid "Invalid QQ Face" #~ msgstr "Malvalida QQ Aspekto" -#, fuzzy -#~ msgid "QQ Number Error" -#~ msgstr "QQ Nombro" - #~ msgid "Group Description" #~ msgstr "Grupo Priskribo" @@ -14221,31 +13866,15 @@ #~ msgid "I am a member" #~ msgstr "Mi estas membro" -#, fuzzy -#~ msgid "I am requesting" -#~ msgstr "Malbona Demando" - #~ msgid "Unknown status" #~ msgstr "Nekonata stato" -#, fuzzy -#~ msgid "Remove from Qun" -#~ msgstr "Forigu Grupon" - #~ msgid "Are you sure you want to leave this Qun?" #~ msgstr "�u vi certas vi volas forigi tiun Qun?" #~ msgid "Do you want to approve the request?" #~ msgstr "�u vi volas jesi tiun demandon?" -#, fuzzy -#~ msgid "Change Qun member" -#~ msgstr "Telefonnumero" - -#, fuzzy -#~ msgid "Change Qun information" -#~ msgstr "�an�u uzanto-informon de %s" - #~ msgid "System Message" #~ msgstr "Sistema Mesa�o" @@ -14255,50 +13884,6 @@ #~ msgid "Block this buddy" #~ msgstr "Bloku tiun kunulon" -#, fuzzy -#~ msgid "Error password: %s" -#~ msgstr "Erara �an�ante pasvorton" - -#, fuzzy -#~ msgid "Failed to connect all servers" -#~ msgstr "Malsukcesis konekti servilon." - -#, fuzzy -#~ msgid "Connecting server %s, retries %d" -#~ msgstr "Konekto servilo" - -#, fuzzy -#~ msgid "Do you approve the requestion?" -#~ msgstr "�u vi volas jesi tiun demandon?" - -#, fuzzy -#~ msgid "Do you add the buddy?" -#~ msgstr "�u vi volas aldoni tiun kunul?" - -#, fuzzy -#~ msgid "%s added you [%s] to buddy list" -#~ msgstr "%s aldonis vin [%s] en sia kunul listo" - -#, fuzzy -#~ msgid "QQ Budy" -#~ msgstr "Kunul" - -#, fuzzy -#~ msgid "%s is not in buddy list" -#~ msgstr "%s aldonis vin en sia kunul listo." - -#, fuzzy -#~ msgid "Would you add?" -#~ msgstr "�u vi deziras aldoni �lin?" - -#, fuzzy -#~ msgid "QQ Server Notice" -#~ msgstr "Servilo pordo" - -#, fuzzy -#~ msgid "Network disconnected" -#~ msgstr "%s malkontaktita" - #~ msgid "developer" #~ msgstr "programisto"
--- a/po/he.po Thu Aug 13 17:40:00 2009 +0000 +++ b/po/he.po Mon Aug 24 19:21:21 2009 +0000 @@ -8,8 +8,8 @@ msgstr "" "Project-Id-Version: he\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-07-27 19:57-0700\n" -"PO-Revision-Date: 2009-07-27 16:21+0200\n" +"POT-Creation-Date: 2009-08-15 09:57-0400\n" +"PO-Revision-Date: 2009-08-16 08:51+0200\n" "Last-Translator: Shalom Craimer <scraimer at g mail dot com>\n" "Language-Team: Hebrew <he@li.org>\n" "MIME-Version: 1.0\n" @@ -47,13 +47,8 @@ " -v, --version �廢� �廬 ���廨廖� 廩� �廬���� �廢�\n" #, c-format -msgid "" -"%s encountered errors migrating your settings from %s to %s. Please " -"investigate and complete the migration by hand. Please report this error at " -"http://developer.pidgin.im" -msgstr "" -"%s �廬廡� �廩����廬 �廣廬 ��廨廬 ���廨�廬�� �- %s �- %s. �廩 ��廡�廨 �廬 �廣����, ��廖��� �廬 " -"��廣�廨� ����廬. �廩�� �� ��廚廩�廨廬� ����� 廣� 廬廡�� �� �- http://developer.pidgin.im" +msgid "%s encountered errors migrating your settings from %s to %s. Please investigate and complete the migration by hand. Please report this error at http://developer.pidgin.im" +msgstr "%s �廬廡� �廩����廬 �廣廬 ��廨廬 ���廨�廬�� �- %s �- %s. �廩 ��廡�廨 �廬 �廣����, ��廖��� �廬 ��廣�廨� ����廬. �廩�� �� ��廚廩�廨廬� ����� 廣� 廬廡�� �� �- http://developer.pidgin.im" msgid "Error" msgstr "廩����" @@ -349,11 +344,8 @@ msgid "Unblock" msgstr "�廖廨 �廖���" -msgid "" -"Please enter the username or alias of the person you would like to Block/" -"Unblock." -msgstr "" -"�廩 ����� �廬 廩� ��廩廬�廩 �� ������ 廩� ���� ��廬� �廨廢��� ��廖��/���廢�� ��廖���." +msgid "Please enter the username or alias of the person you would like to Block/Unblock." +msgstr "�廩 ����� �廬 廩� ��廩廬�廩 �� ������ 廩� ���� ��廬� �廨廢��� ��廖��/���廢�� ��廖���." #. Not multiline #. Not masked? @@ -379,11 +371,8 @@ msgid "Join" msgstr "�廢�廨廝" -msgid "" -"Please enter the username or alias of the person whose log you would like to " -"view." -msgstr "" -"�廩 ����� �廬 廩� ��廩廬�廩 �� ������ 廩� ���� 廩�廬 ����-�廩���廬 廩�� �廨廢��� �廡廨��." +msgid "Please enter the username or alias of the person whose log you would like to view." +msgstr "�廩 ����� �廬 廩� ��廩廬�廩 �� ������ 廩� ���� 廩�廬 ����-�廩���廬 廩�� �廨廢��� �廡廨��." #. Create the "Options" frame. msgid "Options" @@ -529,8 +518,7 @@ msgid "" "%s\n" "\n" -"Finch will not attempt to reconnect the account until you correct the error " -"and re-enable the account." +"Finch will not attempt to reconnect the account until you correct the error and re-enable the account." msgstr "" "%s\n" "\n" @@ -539,12 +527,8 @@ msgid "Re-enable Account" msgstr "�廚廣� ���廩 �廩���" -msgid "" -"The account has disconnected and you are no longer in this chat. You will be " -"automatically rejoined in the chat when the account reconnects." -msgstr "" -"��廩��� ��廬廡 ���廨 ���� �廢�'� ��. ���廨� �廢'�� 廬�廣廩� ���廚� ������� �廨�廣 廩��廩��� " -"�廬��廨 ���廩." +msgid "The account has disconnected and you are no longer in this chat. You will be automatically rejoined in the chat when the account reconnects." +msgstr "��廩��� ��廬廡 ���廨 ���� �廢�'� ��. ���廨� �廢'�� 廬�廣廩� ���廚� ������� �廨�廣 廩��廩��� �廬��廨 ���廩." msgid "No such command." msgstr "��� 廚廡��� ���." @@ -589,8 +573,7 @@ msgid "Logging started. Future messages in this conversation will be logged." msgstr "廨�廩�� ����. ���廣�廬 �廩��� �� ��廨廩�� �廣廬�." -msgid "" -"Logging stopped. Future messages in this conversation will not be logged." +msgid "Logging stopped. Future messages in this conversation will not be logged." msgstr "廨�廩�� ��廚廖廡. ���廣�廬 �廩��� �� �� ��廨廩�� �廣廬�." msgid "Send To" @@ -640,28 +623,20 @@ "���� �廚廡���廬 廩�廚廩廨��� ��廡廩廨 ������:\n" #, c-format -msgid "" -"%s is not a valid message class. See '/help msgcolor' for valid message " -"classes." -msgstr "" -"%s ���� ���廡廬 �廖廨�� 廬廡廚�. �廩 �廨��廬 �廬 ����廣 �廬�� '/help msgcolor' �廨廩��� 廩� " -"���廡�廬-�廖廨�� 廬廡廚�廬." +msgid "%s is not a valid message class. See '/help msgcolor' for valid message classes." +msgstr "%s ���� ���廡廬 �廖廨�� 廬廡廚�. �廩 �廨��廬 �廬 ����廣 �廬�� '/help msgcolor' �廨廩��� 廩� ���廡�廬-�廖廨�� 廬廡廚�廬." #, c-format msgid "%s is not a valid color. See '/help msgcolor' for valid colors." msgstr "%s ���� 廢�廣 廬廡廝. �廩 �廨��廬 �廬 '/help msgcolor' �廢�廣�� 廬廡廚��." -msgid "" -"say <message>: Send a message normally as if you weren't using a " -"command." +msgid "say <message>: Send a message normally as if you weren't using a command." msgstr "say <message>: 廩�� ���廣� �廨���, ����� �� �廨� 廚廡���." msgid "me <action>: Send an IRC style action to a buddy or chat." msgstr "me <action>: 廩�� ��廩廬�廩 �� 廢'�� 廚廣��� ��廖� IRC." -msgid "" -"debug <option>: Send various debug information to the current " -"conversation." +msgid "debug <option>: Send various debug information to the current conversation." msgstr "debug <option>: 廩�� �� ���� 廨廖�廖� ���廣 ����� 廩��� ������." msgid "clear: Clears the conversation scrollback." @@ -691,18 +666,8 @@ msgid "statuses: Show the savedstatuses window." msgstr "statuses: �廢� �廬 ���� ��廢���-�廩��廨��." -msgid "" -"msgcolor <class> <foreground> <background>: Set the color " -"for different classes of messages in the conversation window.<br> <" -"class>: receive, send, highlight, action, timestamp<br> <foreground/" -"background>: black, red, green, blue, white, gray, darkgray, magenta, " -"cyan, default<br><br>EXAMPLE:<br> msgcolor send cyan default" -msgstr "" -"msgcolor <���廡�> <廢�廣-廬���> <廨廡廣>: 廡�廣 廢�廣 廣��廨 ���廡�廬 " -"廩���廬 廩� ���廣�廬 ����� �廩���.<br> <���廡�>: receive, send, highlight, " -"action, timestamp<br> <廢�廣-廬���/廨廡廣>: black, red, green, blue, " -"white, gray, darkgray, magenta, cyan, default<br><br>������:<br> msgcolor " -"send cyan default" +msgid "msgcolor <class> <foreground> <background>: Set the color for different classes of messages in the conversation window.<br> <class>: receive, send, highlight, action, timestamp<br> <foreground/background>: black, red, green, blue, white, gray, darkgray, magenta, cyan, default<br><br>EXAMPLE:<br> msgcolor send cyan default" +msgstr "msgcolor <���廡�> <廢�廣-廬���> <廨廡廣>: 廡�廣 廢�廣 廣��廨 ���廡�廬 廩���廬 廩� ���廣�廬 ����� �廩���.<br> <���廡�>: receive, send, highlight, action, timestamp<br> <廢�廣-廬���/廨廡廣>: black, red, green, blue, white, gray, darkgray, magenta, cyan, default<br><br>������:<br> msgcolor send cyan default" msgid "Unable to open file." msgstr "��� �廚廩廨�廬 �廚廬�� �廬 �廡��廛." @@ -804,18 +769,13 @@ msgid "%B %Y" msgstr "%B %Y" -msgid "" -"System events will only be logged if the \"Log all status changes to system " -"log\" preference is enabled." +msgid "System events will only be logged if the \"Log all status changes to system log\" preference is enabled." msgstr "��廨�廣� �廣廨�廬 廨廡 ��廨廩�� �� 廖��� \"廨廩�� �� 廩����� 廖���廖 ����� ��廣廨�廬\"." -msgid "" -"Instant messages will only be logged if the \"Log all instant messages\" " -"preference is enabled." +msgid "Instant messages will only be logged if the \"Log all instant messages\" preference is enabled." msgstr "���廣�廬 廨廡 ��廨廩�� �� 廖��� \"廨廩�� �廬 �� ����廣�廬\"." -msgid "" -"Chats will only be logged if the \"Log all chats\" preference is enabled." +msgid "Chats will only be logged if the \"Log all chats\" preference is enabled." msgstr "廢'���� 廨廡 ��廨廩�� �� 廖��� \"廨廩�� �廬 �� �廢'����\"." msgid "No logs were found" @@ -955,11 +915,8 @@ msgid "The selected file is not a valid plugin." msgstr "�廡��廛 廩���廨 ���� 廬�廖廝." -msgid "" -"Please open the debug window and try again to see the exact error message." -msgstr "" -"�廩 �廚廬�� �廬 ���� ��廚�� ������ ���廖�廬 廩�� 廣� ��廬 �廨��廬 �廬 ���廣廬 �廩���� " -"������廡廬." +msgid "Please open the debug window and try again to see the exact error message." +msgstr "�廩 �廚廬�� �廬 ���� ��廚�� ������ ���廖�廬 廩�� 廣� ��廬 �廨��廬 �廬 ���廣廬 �廩���� ������廡廬." msgid "Select plugin to install" msgstr "�廩 ����廨 廬�廖廝 ��廬廡��" @@ -1395,9 +1352,7 @@ msgid "Clipboard plugin" msgstr "廬�廖廝 ��� ��廣廬廡�" -msgid "" -"When the gnt clipboard contents change, the contents are made available to " -"X, if possible." +msgid "When the gnt clipboard contents change, the contents are made available to X, if possible." msgstr "��廩廨 廬��� ��� ��廣廬廡� 廩� gnt �廩廬��, �廬��� �� �廣廩� ���� 廣��廨 X, �� ��廬�." #, c-format @@ -1457,8 +1412,7 @@ msgid "" "Logging can be enabled from Tools -> Preferences -> Logging.\n" "\n" -"Enabling logs for instant messages and/or chats will activate history for " -"the same conversation type(s)." +"Enabling logs for instant messages and/or chats will activate history for the same conversation type(s)." msgstr "" "��廬� ��廚廩廨 廨�廩�� �廬�� ���� -> �廣�廚�廬 -> 廨�廩��.\n" "\n" @@ -1470,9 +1424,7 @@ msgid "Shows recently logged conversations in new conversations." msgstr "�廢�� 廩���廬 ��廨���廬 ������廬 廩��� ��廩�廬." -msgid "" -"When a new conversation is opened this plugin will insert the last " -"conversation into the current conversation." +msgid "When a new conversation is opened this plugin will insert the last conversation into the current conversation." msgstr "��廩廨 ���� 廩��� ��廩 �廚廬�, 廬�廖廝 �� ����廖 �廬 �廩��� ���廨��� �廨�廩 �����." msgid "Online" @@ -1644,20 +1596,16 @@ msgid "_View Certificate..." msgstr "�廢� 廬廣���..." -#. Prompt the user to authenticate the certificate -#. vrq will be completed by user_auth -#, c-format -msgid "" -"The certificate presented by \"%s\" is self-signed. It cannot be " -"automatically checked." -msgstr "" -"�廬廣��� 廩��廢�� 廣� ��� \"%s\" ��廬�� 廣� ��� 廣廢��. �� ��廬� ��廢廣 ���廡� �������廬." - -#. FIXME 2.6.1 -#, c-format -msgid "The certificate chain presented for %s is not valid." -msgstr "廩廨廩廨廬 廨廩���廬 ��廚廡廬 �廬廣��� 廣��廨 %s ���� 廬廡廚�." - +#, c-format +msgid "The certificate presented by \"%s\" claims to be from \"%s\" instead. This could mean that you are not connecting to the service you believe you are." +msgstr "廬廣��� 廩��廢�� 廣� ��� \"%s\" ��廣�廬 廩��� ��� �廣廢� �廬�� \"%s\". ��廬�� ��� ���廨 廩�廩�廨�廬 ���� �廬��廨廬 ���� �廩�廨�廬 廩�廩�廬." + +#. Had no CA pool, so couldn't verify the chain *and* +#. * the subject name isn't valid. +#. * I think this is bad enough to warrant a fatal error. It's +#. * not likely anyway... +#. +#. TODO: Probably wrong. #. TODO: Make this error either block the ensuing SSL #. connection error until the user dismisses this one, or #. stifle it. @@ -1670,41 +1618,36 @@ msgid "Invalid certificate chain" msgstr "廩廨廩廨廬 廬廣���廬 ��-廬廡廚�" +#. The subject name is correct, but we weren't able to verify the +#. * chain because there was no pool of root CAs found. Prompt the user +#. * to validate it. +#. #. vrq will be completed by user_auth -msgid "" -"You have no database of root certificates, so this certificate cannot be " -"validated." +msgid "You have no database of root certificates, so this certificate cannot be validated." msgstr "��� �� �廖�-�廬���� 廩� 廬廣���廬 廩�廨廩, �� �� ��廬� ��廩廨廨 廬廣��� ��." +#. Prompt the user to authenticate the certificate +#. vrq will be completed by user_auth +#, c-format +msgid "The certificate presented by \"%s\" is self-signed. It cannot be automatically checked." +msgstr "�廬廣��� 廩��廢�� 廣� ��� \"%s\" ��廬�� 廣� ��� 廣廢��. �� ��廬� ��廢廣 ���廡� �������廬." + +#. FIXME 2.6.1 +#, c-format +msgid "The certificate chain presented for %s is not valid." +msgstr "廩廨廩廨廬 廨廩���廬 ��廚廡廬 �廬廣��� 廣��廨 %s ���� 廬廡廚�." + #. vrq will be completed by user_auth -msgid "" -"The root certificate this one claims to be issued by is unknown to Pidgin." +msgid "The root certificate this one claims to be issued by is unknown to Pidgin." msgstr "廬廣��廬-�廩�廨廩 廩����廨� ��廚�廡� �廬 �廬廣��� ���� ���廨廬 �廚���'��." #, c-format -msgid "" -"The certificate chain presented by %s does not have a valid digital " -"signature from the Certificate Authority from which it claims to have a " -"signature." -msgstr "" -"廩廨廩廨廬 �廬廣���廬 廩��廢�� 廣� ��� %s �� ����� �廬��� 廬廡廚� �廨廩���廬 ���廚廡� 廩��� ��� " -"��廣�廬 廩�廩 �� �廬���." +msgid "The certificate chain presented by %s does not have a valid digital signature from the Certificate Authority from which it claims to have a signature." +msgstr "廩廨廩廨廬 �廬廣���廬 廩��廢�� 廣� ��� %s �� ����� �廬��� 廬廡廚� �廨廩���廬 ���廚廡� 廩��� ��� ��廣�廬 廩�廩 �� �廬���." msgid "Invalid certificate authority signature" msgstr "�廬��廬 廨廩�廬 ��廚廡�廬 �� 廬廡廚�" -#. Prompt the user to authenticate the certificate -#. TODO: Provide the user with more guidance about why he is -#. being prompted -#. vrq will be completed by user_auth -#, c-format -msgid "" -"The certificate presented by \"%s\" claims to be from \"%s\" instead. This " -"could mean that you are not connecting to the service you believe you are." -msgstr "" -"廬廣��� 廩��廢�� 廣� ��� \"%s\" ��廣�廬 廩��� ��� �廣廢� �廬�� \"%s\". ��廬�� ��� ���廨 " -"廩�廩�廨�廬 ���� �廬��廨廬 ���� �廩�廨�廬 廩�廩�廬." - #. Make messages #, c-format msgid "" @@ -1741,6 +1684,7 @@ msgstr "+++ %s �廬�廬廡" #. Unknown error +#, c-format msgid "Unknown error" msgstr "廩���� �� ���廨廬" @@ -1791,9 +1735,7 @@ msgstr "���� �廢'��" #. Put our happy label in it. -msgid "" -"Please enter the name of the user you wish to invite, along with an optional " -"invite message." +msgid "Please enter the name of the user you wish to invite, along with an optional invite message." msgstr "�廩 ����� �廬 廩� ��廩廬�廩 廩�廨廢��� ������, ��� 廣� ���廣廬 ����� ��廚廢�����廬." #, c-format @@ -2011,49 +1953,31 @@ msgid "The handler for \"ymsgr\" URLs" msgstr "���廚� ��廬���廬 \"ymsgr\"" -msgid "" -"True if the command specified in the \"command\" key should handle \"aim\" " -"URLs." +msgid "True if the command specified in the \"command\" key should handle \"aim\" URLs." msgstr "��廬 �� �廚廡��� 廩����廨廬 ��廚廬�廨 \"廚廡���\" 廢廨�� ��廚� ��廬���廬 \"aim\"." -msgid "" -"True if the command specified in the \"command\" key should handle \"gg\" " -"URLs." +msgid "True if the command specified in the \"command\" key should handle \"gg\" URLs." msgstr "��廬 �� �廚廡��� 廩����廨廬 ��廚廬�廨 \"廚廡���\" 廢廨�� ��廚� ��廬���廬 \"gg\"." -msgid "" -"True if the command specified in the \"command\" key should handle \"icq\" " -"URLs." +msgid "True if the command specified in the \"command\" key should handle \"icq\" URLs." msgstr "��廬 �� �廚廡��� 廩����廨廬 ��廚廬�廨 \"廚廡���\" 廢廨�� ��廚� ��廬���廬 \"icq\"." -msgid "" -"True if the command specified in the \"command\" key should handle \"irc\" " -"URLs." +msgid "True if the command specified in the \"command\" key should handle \"irc\" URLs." msgstr "��廬 �� �廚廡��� 廩����廨廬 ��廚廬�廨 \"廚廡���\" 廢廨�� ��廚� ��廬���廬 \"irc\"." -msgid "" -"True if the command specified in the \"command\" key should handle \"msnim\" " -"URLs." +msgid "True if the command specified in the \"command\" key should handle \"msnim\" URLs." msgstr "��廬 �� �廚廡��� 廩����廨廬 ��廚廬�廨 \"廚廡���\" 廢廨�� ��廚� ��廬���廬 \"msnim\"." -msgid "" -"True if the command specified in the \"command\" key should handle \"sip\" " -"URLs." +msgid "True if the command specified in the \"command\" key should handle \"sip\" URLs." msgstr "��廬 �� �廚廡��� 廩����廨廬 ��廚廬�廨 \"廚廡���\" 廢廨�� ��廚� ��廬���廬 \"aim\"." -msgid "" -"True if the command specified in the \"command\" key should handle \"xmpp\" " -"URLs." +msgid "True if the command specified in the \"command\" key should handle \"xmpp\" URLs." msgstr "��廬 �� �廚廡��� 廩����廨廬 ��廚廬�廨 \"廚廡���\" 廢廨�� ��廚� ��廬���廬 \"xmpp\"." -msgid "" -"True if the command specified in the \"command\" key should handle \"ymsgr\" " -"URLs." +msgid "True if the command specified in the \"command\" key should handle \"ymsgr\" URLs." msgstr "��廬 �� �廚廡��� 廩����廨廬 ��廚廬�廨 \"廚廡���\" 廢廨�� ��廚� ��廬���廬 \"ymsgr\"." -msgid "" -"True if the command used to handle this type of URL should be run in a " -"terminal." +msgid "True if the command used to handle this type of URL should be run in a terminal." msgstr "��廬 �� �廚廡��� ���廚�� �廖�� �� 廩� �廬��廬 廢廨��� �廨�廛 ��廨����." msgid "Whether the specified command should handle \"aim\" URLs" @@ -2099,20 +2023,12 @@ msgstr "XML" #, c-format -msgid "" -"<font color=\"#16569E\"><font size=\"2\">(%s)</font> <b>%s <AUTO-" -"REPLY>:</b></font> %s<br/>\n" -msgstr "" -"<font color=\"#16569E\"><font size=\"2\">(%s)</font> <b>%s <�廣�� " -"�������>:</b></font> %s<br/>\n" - -#, c-format -msgid "" -"<font color=\"#A82F2F\"><font size=\"2\">(%s)</font> <b>%s <AUTO-" -"REPLY>:</b></font> %s<br/>\n" -msgstr "" -"<font color=\"#A82F2F\"><font size=\"2\">(%s)</font> <b>%s <�廣�� " -"�������>:</b></font> %s<br/>\n" +msgid "<font color=\"#16569E\"><font size=\"2\">(%s)</font> <b>%s <AUTO-REPLY>:</b></font> %s<br/>\n" +msgstr "<font color=\"#16569E\"><font size=\"2\">(%s)</font> <b>%s <�廣�� �������>:</b></font> %s<br/>\n" + +#, c-format +msgid "<font color=\"#A82F2F\"><font size=\"2\">(%s)</font> <b>%s <AUTO-REPLY>:</b></font> %s<br/>\n" +msgstr "<font color=\"#A82F2F\"><font size=\"2\">(%s)</font> <b>%s <�廣�� �������>:</b></font> %s<br/>\n" msgid "<font color=\"red\"><b>Unable to find log path!</b></font>" msgstr "<font color=\"red\"><b>�� ��廬� ��廢�� �廬 �廬�� �廨�廩��!</b></font>" @@ -2143,14 +2059,11 @@ msgid "ABI version mismatch %d.%d.x (need %d.%d.x)" msgstr "��-�廬��� ���廨廖廬 ABI %d.%d.x (廢廨�� %d.%d.x)" -msgid "" -"Plugin does not implement all required functions (list_icon, login and close)" +msgid "Plugin does not implement all required functions (list_icon, login and close)" msgstr "�廬�廖廝 �� ���廩� �廬 �� �廚��廡廢��廬 ��廨�廩�廬 (list_icon, login ��� close)" #, c-format -msgid "" -"The required plugin %s was not found. Please install this plugin and try " -"again." +msgid "The required plugin %s was not found. Please install this plugin and try again." msgstr "�廖廨 廬�廖廝 %s. ����廛 ��廬廡�� �廬 �廬�廖廝 ���廩 ���廖�廬 廩��廬." msgid "Unable to load the plugin" @@ -2351,12 +2264,8 @@ msgstr "���廡 廬���� �-IPC, ��廡��." #. * description -msgid "" -"Test plugin IPC support, as a client. This locates the server plugin and " -"calls the commands registered." -msgstr "" -"���廡 �廬 廬�廖廝 �廬���� �-IPC, ��廡��. �� ��廬廨 �廬 �廩廨廬 廩� �廬�廖廝 �廡�廨� �廚廡���廬 " -"�廨廩���廬." +msgid "Test plugin IPC support, as a client. This locates the server plugin and calls the commands registered." +msgstr "���廡 �廬 廬�廖廝 �廬���� �-IPC, ��廡��. �� ��廬廨 �廬 �廩廨廬 廩� �廬�廖廝 �廡�廨� �廚廡���廬 �廨廩���廬." #. *< type #. *< ui_requirement @@ -2405,12 +2314,8 @@ msgstr "�廖廬�廨 ���廣�廬 �廢�廨廚�廬/廣���� �� ���廢�廬." #. * description -msgid "" -"This plugin hides join/part messages in large rooms, except for those users " -"actively taking part in a conversation." -msgstr "" -"廬�廖廝 �� �廖廬�廨 ���廣�廬 �廢�廨廚�廬/廣���� ���廨�-廢'�� ������, ���� 廣��廨 ��廬� �廩廬�廩�� " -"廩��廡��� ��廡 廚廣�� �廩���." +msgid "This plugin hides join/part messages in large rooms, except for those users actively taking part in a conversation." +msgstr "廬�廖廝 �� �廖廬�廨 ���廣�廬 �廢�廨廚�廬/廣���� ���廨�-廢'�� ������, ���� 廣��廨 ��廬� �廩廬�廩�� 廩��廡��� ��廡 廚廣�� �廩���." #. This is used in the place of a timezone abbreviation if the #. * offset is way off. The user should never really see it, but @@ -2435,9 +2340,7 @@ msgid "You were disconnected from the server." msgstr "��廬廡廬 ��廩廨廬." -msgid "" -"You are currently disconnected. Messages will not be received unless you are " -"logged in." +msgid "You are currently disconnected. Messages will not be received unless you are logged in." msgstr "�廬/� �廨�廣 ���廬廡/廬. ���廣�廬 �� �廬廡��� ��� 廨廡 ���� 廩�廬/� ����廨/廬." msgid "Message could not be sent because the maximum length was exceeded." @@ -2519,17 +2422,13 @@ #. * description msgid "" -"When viewing logs, this plugin will include logs from other IM clients. " -"Currently, this includes Adium, MSN Messenger, aMSN, and Trillian.\n" +"When viewing logs, this plugin will include logs from other IM clients. Currently, this includes Adium, MSN Messenger, aMSN, and Trillian.\n" "\n" -"WARNING: This plugin is still alpha code and may crash frequently. Use it " -"at your own risk!" +"WARNING: This plugin is still alpha code and may crash frequently. Use it at your own risk!" msgstr "" -"�廣廬 廢廚��� ������-廩���, 廬�廖廝 �� ����� ������ �廬����廬 廢'�� ��廨�廬. �廨�廣, �� " -"���� Adium, MSN Messenger, aMSN, Trillian.\n" +"�廣廬 廢廚��� ������-廩���, 廬�廖廝 �� ����� ������ �廬����廬 廢'�� ��廨�廬. �廨�廣, �� ���� Adium, MSN Messenger, aMSN, Trillian.\n" "\n" -"���廨�: 廬�廖廝 �� 廣���� �廩��� 廚�廬�� ��廡���� ���廬�� ��廡廨�廖 �廣�廬�� 廡廨���廬. �廩 " -"��廩廬�廩 �� 廣� �廩��� 廖����� ���廩� ����!" +"���廨�: 廬�廖廝 �� 廣���� �廩��� 廚�廬�� ��廡���� ���廬�� ��廡廨�廖 �廣�廬�� 廡廨���廬. �廩 ��廩廬�廩 �� 廣� �廩��� 廖����� ���廩� ����!" msgid "Mono Plugin Loader" msgstr "�廩廝 ��廣�廬 廬�廖廚� Mono" @@ -2561,12 +2460,8 @@ msgstr "��廖�廝 廩�廨� ��廩� �廚�� ���廣� ��廢�廬." #. *< summary -msgid "" -"Prepends a newline to messages so that the rest of the message appears below " -"the username in the conversation window." -msgstr "" -"��廖�廝 廬� 廩�廨� ��廩� �廬���廬 ���廣�廬 ��� 廩廩�廨 ����廣� 廬�廚�廣 �廬�廬 �廩� ��廩廬�廩 ����� " -"�廩���." +msgid "Prepends a newline to messages so that the rest of the message appears below the username in the conversation window." +msgstr "��廖�廝 廬� 廩�廨� ��廩� �廬���廬 ���廣�廬 ��� 廩廩�廨 ����廣� 廬�廚�廣 �廬�廬 �廩� ��廩廬�廩 ����� �廩���." msgid "Offline Message Emulation" msgstr "����廢�� 廩� ���廣�廬 ��-�廡����廬" @@ -2574,20 +2469,12 @@ msgid "Save messages sent to an offline user as pounce." msgstr "廩��廨 ���廣�廬 廩�廩��� ��廩廬�廩 ��-����廨 �廬�廨 廬���廬-廚廣���廬." -msgid "" -"The rest of the messages will be saved as pounces. You can edit/delete the " -"pounce from the `Buddy Pounce' dialog." -msgstr "" -"廩�廨 ����廣廬 ��廩�廨� �廬�廨 廬���廬-廚廣���廬. ��廬� �廣廨��/����廡 �廬 �廬���� �廬�� ���� " -"廬����廬-�廚廣���廬." - -#, c-format -msgid "" -"\"%s\" is currently offline. Do you want to save the rest of the messages in " -"a pounce and automatically send them when \"%s\" logs back in?" -msgstr "" -"\"%s\" �� ����廨 �廨�廣. ��� �廨廢��� �廩��廨 �廬 廩�廨 ����廣�廬 �廬���廬-廚廣���廬 廣� ��廬 " -"廩�� ��廩��� ���� �������� ��廩廨 \"%s\" �廬��廨 ���廩?" +msgid "The rest of the messages will be saved as pounces. You can edit/delete the pounce from the `Buddy Pounce' dialog." +msgstr "廩�廨 ����廣廬 ��廩�廨� �廬�廨 廬���廬-廚廣���廬. ��廬� �廣廨��/����廡 �廬 �廬���� �廬�� ���� 廬����廬-�廚廣���廬." + +#, c-format +msgid "\"%s\" is currently offline. Do you want to save the rest of the messages in a pounce and automatically send them when \"%s\" logs back in?" +msgstr "\"%s\" �� ����廨 �廨�廣. ��� �廨廢��� �廩��廨 �廬 廩�廨 ����廣�廬 �廬���廬-廚廣���廬 廣� ��廬 廩�� ��廩��� ���� �������� ��廩廨 \"%s\" �廬��廨 ���廩?" msgid "Offline Message" msgstr "���廣�廬 ��-�廡����廬" @@ -2627,12 +2514,10 @@ #. * description msgid "" -"Allows you to enforce on a per-account basis that passwords not being saved " -"are only used in a single successful connection.\n" +"Allows you to enforce on a per-account basis that passwords not being saved are only used in a single successful connection.\n" "Note: The account password must not be saved for this to work." msgstr "" -"��廚廩廨 �� ����廝 ��� �廩��� �廩廬�廩 廩廖�廖���廬 廩���� �廩�廨�廬 �廩��廩� 廨廡 �����廨 ���� " -"廩�廢���.\n" +"��廚廩廨 �� ����廝 ��� �廩��� �廩廬�廩 廩廖�廖���廬 廩���� �廩�廨�廬 �廩��廩� 廨廡 �����廨 ���� 廩�廢���.\n" "�廣廨�: 廣� ��廬 廩�� �廣��� ��� �廩��廨 �廬 廖�廖�廬 ��廩���." #. *< type @@ -2656,12 +2541,8 @@ msgid "Psychic mode for incoming conversation" msgstr "�廢� ����-廣廬���廬 �廩���廬 ���廖�廬" -msgid "" -"Causes conversation windows to appear as other users begin to message you. " -"This works for AIM, ICQ, XMPP, Sametime, and Yahoo!" -msgstr "" -"��廨� ������廬-廩��� ���廚�廣 ��廨 ��廩廨 ��廩� 廡廩廨 �廬����� ��廬�� ���廣�. �� 廣��� " -"廣��廨 AIM, ICQ, XMPP, Sametime, Yahoo!" +msgid "Causes conversation windows to appear as other users begin to message you. This works for AIM, ICQ, XMPP, Sametime, and Yahoo!" +msgstr "��廨� ������廬-廩��� ���廚�廣 ��廨 ��廩廨 ��廩� 廡廩廨 �廬����� ��廬�� ���廣�. �� 廣��� 廣��廨 AIM, ICQ, XMPP, Sametime, Yahoo!" msgid "You feel a disturbance in the force..." msgstr "�廬� �廨��廩 �廚廨廣� ����..." @@ -2807,12 +2688,8 @@ #. *< version #. * summary #. * description -msgid "" -"Notifies in a conversation window when a buddy goes or returns from away or " -"idle." -msgstr "" -"����廣 ����� �廩��� ��廩廨 ��廩 �廡廩廨 �廬廨�廡 ���廬�廩�, 廣��廨 ��廢� 廩� ���廨 廚廣���廬, �� " -"���廨." +msgid "Notifies in a conversation window when a buddy goes or returns from away or idle." +msgstr "����廣 ����� �廩��� ��廩廨 ��廩 �廡廩廨 �廬廨�廡 ���廬�廩�, 廣��廨 ��廢� 廩� ���廨 廚廣���廬, �� ���廨." msgid "Tcl Plugin Loader" msgstr "��廣�� �廬�廖廚� Tcl" @@ -2820,25 +2697,16 @@ msgid "Provides support for loading Tcl plugins" msgstr "�廖廚廡 廬���� ��廣��廬 廬�廖廚� Tcl" -msgid "" -"Unable to detect ActiveTCL installation. If you wish to use TCL plugins, " -"install ActiveTCL from http://www.activestate.com\n" -msgstr "" -"�� ��� ��廬� ����廬 ActiveTCL �廬�廡�. �� �廨廢��� ��廩廬�廩 �廬�廖廚� TCL, �廩 ��廬廡�� " -"ActiveTCL �廬�� http://www.activestate.com\n" - -msgid "" -"Unable to find Apple's \"Bonjour for Windows\" toolkit, see http://d.pidgin." -"im/BonjourWindows for more information." -msgstr "" -"����廬 \"����'�廨\" 廩� �廚� 廣��廨 �����廬 �� ��廢��, 廨�� �廬 �廩�\"廬 ��廬廨: http://d." -"pidgin.im/BonjourWindows ����廣 ��廖廝." +msgid "Unable to detect ActiveTCL installation. If you wish to use TCL plugins, install ActiveTCL from http://www.activestate.com\n" +msgstr "�� ��� ��廬� ����廬 ActiveTCL �廬�廡�. �� �廨廢��� ��廩廬�廩 �廬�廖廚� TCL, �廩 ��廬廡�� ActiveTCL �廬�� http://www.activestate.com\n" + +msgid "Unable to find Apple's \"Bonjour for Windows\" toolkit, see http://d.pidgin.im/BonjourWindows for more information." +msgstr "����廬 \"����'�廨\" 廩� �廚� 廣��廨 �����廬 �� ��廢��, 廨�� �廬 �廩�\"廬 ��廬廨: http://d.pidgin.im/BonjourWindows ����廣 ��廖廝." msgid "Unable to listen for incoming IM connections" msgstr "�� ��廬� ��廡廩�� �����廨� ���廣�廬 ���廖廬" -msgid "" -"Unable to establish connection with the local mDNS server. Is it running?" +msgid "Unable to establish connection with the local mDNS server. Is it running?" msgstr "�� �廢��� �廬廡廩廨 廣� 廩廨廬 �-mDNS ��廡���. ��� ��� ��廨 廨廛?" msgid "First name" @@ -2904,9 +2772,7 @@ msgid "Invalid proxy settings" msgstr "���廨�廬 �� 廬廡廚�廬 廩� �廬�����" -msgid "" -"Either the host name or port number specified for your given proxy type is " -"invalid." +msgid "Either the host name or port number specified for your given proxy type is invalid." msgstr "�� �廬��廬 �廩廨廬 �� �廢��廬 �廩廨廬 廩��廬�� 廣��廨 廖�� ��廬��� 廩����廨�� 廬廡廚��." msgid "Token Error" @@ -3400,14 +3266,10 @@ msgid "Invalid nickname" msgstr "廩� ��廩廬�廩 �� ��廡�" -msgid "" -"Your selected nickname was rejected by the server. It probably contains " -"invalid characters." +msgid "Your selected nickname was rejected by the server. It probably contains invalid characters." msgstr "������ 廩��廨廬 ���� 廣\"� �廩廨廬. ��廨�� ��� ���� ��廬��廬 �� ��廡��廬." -msgid "" -"Your selected account name was rejected by the server. It probably contains " -"invalid characters." +msgid "Your selected account name was rejected by the server. It probably contains invalid characters." msgstr "廩� ��廩��� 廩��廨廬 ���� 廣\"� �廩廨廬. ��廨�� ��� ���� ��廬��廬 �� ��廡��廬." #. We only want to do the following dance if the connection @@ -3454,11 +3316,8 @@ msgid "action <action to perform>: Perform an action." msgstr "action <廚廣��� ���廢�廣>: 廚廣� 廚廣��� ." -msgid "" -"away [message]: Set an away message, or use no message to return from being " -"away." -msgstr "" -"away [���廣�]: 廡�廣 ���廣廬 廨���廡 ����廩�, �� �廩廬�廩 ��� ���廣� ����廨 ������廬." +msgid "away [message]: Set an away message, or use no message to return from being away." +msgstr "away [���廣�]: 廡�廣 ���廣廬 廨���廡 ����廩�, �� �廩廬�廩 ��� ���廣� ����廨 ������廬." msgid "ctcp <nick> <msg>: sends ctcp msg to nick." msgstr "ctcp <廩�> <���廣�>: 廩�� ���廣廬 ctcp ���廬� �����." @@ -3466,56 +3325,26 @@ msgid "chanserv: Send a command to chanserv" msgstr "chanserv: 廩�� 廚廡��� �� chanserv" -msgid "" -"deop <nick1> [nick2] ...: Remove channel operator status from " -"someone. You must be a channel operator to do this." -msgstr "" -"deop <廩�1>1; [廩�2] ...: �廖廨 廖���廖 廩� �廚廣�� �廣廨�廛 ���廩��. ���� ����廬 " -"�廚廣�� 廣廨�廛 ��� ��廢廣 廚廣��� ��." - -msgid "" -"devoice <nick1> [nick2] ...: Remove channel voice status from " -"someone, preventing them from speaking if the channel is moderated (+m). You " -"must be a channel operator to do this." -msgstr "" -"devoice <廩�1> [廩�2] ...: �廖廨 ����廬 ����廨 �廣廨�廛 ���廩��, �廩廨 廨廡 ���廣 " -"��� ���廨 �� �廣廨�廛 ��廢� 廩� 廬���� (+m). ���� ����廬 �廚廣�� 廣廨�廛 ��� ��廢廣 廚廣��� " -"��." - -msgid "" -"invite <nick> [room]: Invite someone to join you in the specified " -"channel, or the current channel." -msgstr "" -"invite <廩�> [��廨]: ���� ��廩�� ��廢�廨廝 ���� �廣廨�廛 ��廬��, �� �廣廨�廛 " -"������." - -msgid "" -"j <room1>[,room2][,...] [key1[,key2][,...]]: Enter one or more " -"channels, optionally providing a channel key for each if needed." -msgstr "" -"j <��廨1>[,��廨2][...] [�廚廬�1[,�廚廬�2][,...]]: ��� 廣廨�廛 ��� �� ��廬廨, 廣� " -"�廚廩廨�廬 ����� �廚廬� ��� ��� �� ���廨��, �廩廣廬 �廢�廨�." - -msgid "" -"join <room1>[,room2][,...] [key1[,key2][,...]]: Enter one or more " -"channels, optionally providing a channel key for each if needed." -msgstr "" -"join <��廨1>[,��廨2][...] [�廚廬�1[,�廚廬�2][,...]]: ��� 廣廨�廛 ��� �� ��廬廨, " -"廣� �廚廩廨�廬 ����� �廚廬� ��� ��� �� ���廨��, �廩廣廬 �廢�廨�." - -msgid "" -"kick <nick> [message]: Remove someone from a channel. You must be a " -"channel operator to do this." -msgstr "" -"kick <廩� �����> [���廣�]: �廖廨 ��廩�� ��廣廨�廛. 廢廨�� ����廬 �廚廣�� �廣廨�廛 ��� " -"�廣廩�廬 ��廬." - -msgid "" -"list: Display a list of chat rooms on the network. <i>Warning, some servers " -"may disconnect you upon doing this.</i>" -msgstr "" -"list: �廢� 廨廩��� 廩� ��廨� 廢'�� �廨廩廬. <i>���廨�, �廩 廩廨廬�� 廩��廬廡� ��廬� �廨�廣 ��廢�廣 " -"廚廣��� ��.</i>" +msgid "deop <nick1> [nick2] ...: Remove channel operator status from someone. You must be a channel operator to do this." +msgstr "deop <廩�1>1; [廩�2] ...: �廖廨 廖���廖 廩� �廚廣�� �廣廨�廛 ���廩��. ���� ����廬 �廚廣�� 廣廨�廛 ��� ��廢廣 廚廣��� ��." + +msgid "devoice <nick1> [nick2] ...: Remove channel voice status from someone, preventing them from speaking if the channel is moderated (+m). You must be a channel operator to do this." +msgstr "devoice <廩�1> [廩�2] ...: �廖廨 ����廬 ����廨 �廣廨�廛 ���廩��, �廩廨 廨廡 ���廣 ��� ���廨 �� �廣廨�廛 ��廢� 廩� 廬���� (+m). ���� ����廬 �廚廣�� 廣廨�廛 ��� ��廢廣 廚廣��� ��." + +msgid "invite <nick> [room]: Invite someone to join you in the specified channel, or the current channel." +msgstr "invite <廩�> [��廨]: ���� ��廩�� ��廢�廨廝 ���� �廣廨�廛 ��廬��, �� �廣廨�廛 ������." + +msgid "j <room1>[,room2][,...] [key1[,key2][,...]]: Enter one or more channels, optionally providing a channel key for each if needed." +msgstr "j <��廨1>[,��廨2][...] [�廚廬�1[,�廚廬�2][,...]]: ��� 廣廨�廛 ��� �� ��廬廨, 廣� �廚廩廨�廬 ����� �廚廬� ��� ��� �� ���廨��, �廩廣廬 �廢�廨�." + +msgid "join <room1>[,room2][,...] [key1[,key2][,...]]: Enter one or more channels, optionally providing a channel key for each if needed." +msgstr "join <��廨1>[,��廨2][...] [�廚廬�1[,�廚廬�2][,...]]: ��� 廣廨�廛 ��� �� ��廬廨, 廣� �廚廩廨�廬 ����� �廚廬� ��� ��� �� ���廨��, �廩廣廬 �廢�廨�." + +msgid "kick <nick> [message]: Remove someone from a channel. You must be a channel operator to do this." +msgstr "kick <廩� �����> [���廣�]: �廖廨 ��廩�� ��廣廨�廛. 廢廨�� ����廬 �廚廣�� �廣廨�廛 ��� �廣廩�廬 ��廬." + +msgid "list: Display a list of chat rooms on the network. <i>Warning, some servers may disconnect you upon doing this.</i>" +msgstr "list: �廢� 廨廩��� 廩� ��廨� 廢'�� �廨廩廬. <i>���廨�, �廩 廩廨廬�� 廩��廬廡� ��廬� �廨�廣 ��廢�廣 廚廣��� ��.</i>" msgid "me <action to perform>: Perform an action." msgstr "me <廚廣��� ���廢�廣>: �廢廣 廚廣���" @@ -3523,18 +3352,11 @@ msgid "memoserv: Send a command to memoserv" msgstr "memoserv: 廩�� 廚廡��� �� memoserv" -msgid "" -"mode <+|-><A-Za-z> <nick|channel>: Set or unset a channel " -"or user mode." -msgstr "" -"mode <+|-><A-Za-z> <廩� �����|廣廨�廛>: 廡�廣 �� �廖廨 �廢�� 廣廨�廛 " -"�� �廩廬�廩." - -msgid "" -"msg <nick> <message>: Send a private message to a user (as " -"opposed to a channel)." -msgstr "" -"msg <廩� �����> <���廣�>: 廩�� ���廣� 廚廨��廬 ��廩廬�廩 (������ �廣廨�廛)." +msgid "mode <+|-><A-Za-z> <nick|channel>: Set or unset a channel or user mode." +msgstr "mode <+|-><A-Za-z> <廩� �����|廣廨�廛>: 廡�廣 �� �廖廨 �廢�� 廣廨�廛 �� �廩廬�廩." + +msgid "msg <nick> <message>: Send a private message to a user (as opposed to a channel)." +msgstr "msg <廩� �����> <���廣�>: 廩�� ���廣� 廚廨��廬 ��廩廬�廩 (������ �廣廨�廛)." msgid "names [channel]: List the users currently in a channel." msgstr "names [廣廨�廛]: �廢� �廬 廨廩��廬 ��廩廬�廩�� 廩�廨�廣 �廣廨�廛." @@ -3548,41 +3370,23 @@ msgid "notice <target<: Send a notice to a user or channel." msgstr "me <action>: 廩�� ��廩廬�廩 �� 廢'�� �廬廨��." -msgid "" -"op <nick1> [nick2] ...: Grant channel operator status to someone. You " -"must be a channel operator to do this." -msgstr "" -"op <廩� �����1> [廩� �����2] ...: ��廬� 廖���廖 廩� �廚廣�� 廣廨�廛 ���廩��. 廣��� " -"����廬 �廚廣�� 廣廨�廛 ��廢廣 廚廣��� ��." - -msgid "" -"operwall <message>: If you don't know what this is, you probably " -"can't use it." -msgstr "" -"operwall <���廣�>: �� ���� ���廣/廬 �� �� 廣�廩�, ��廨�� �廬/� �� ����/� " -"��廩廬�廩 ���." +msgid "op <nick1> [nick2] ...: Grant channel operator status to someone. You must be a channel operator to do this." +msgstr "op <廩� �����1> [廩� �����2] ...: ��廬� 廖���廖 廩� �廚廣�� 廣廨�廛 ���廩��. 廣��� ����廬 �廚廣�� 廣廨�廛 ��廢廣 廚廣��� ��." + +msgid "operwall <message>: If you don't know what this is, you probably can't use it." +msgstr "operwall <���廣�>: �� ���� ���廣/廬 �� �� 廣�廩�, ��廨�� �廬/� �� ����/� ��廩廬�廩 ���." msgid "operserv: Send a command to operserv" msgstr " operserv: 廩�� 廚廡��� �� operserv" -msgid "" -"part [room] [message]: Leave the current channel, or a specified channel, " -"with an optional message." -msgstr "" -"part [��廨] [���廣�]: 廣��� �廬 ���廨 ������, �� ��廨 �廖����, 廣� �廚廩廨�廬 ����廣�." - -msgid "" -"ping [nick]: Asks how much lag a user (or the server if no user specified) " -"has." -msgstr "" -"ping [廩� �����]: 廩��� ��� ����廬 �廬���� 廩� �廩廬�廩 (�� 廩� �廩廨廬 �� �� 廢���� " -"�廩廬�廩." - -msgid "" -"query <nick> <message>: Send a private message to a user (as " -"opposed to a channel)." -msgstr "" -"query <廩� �廩廬�廩> <���廣�>: 廩�� ���廣� 廚廨��廬 ��廩廬�廩 (������ �廣廨�廛)." +msgid "part [room] [message]: Leave the current channel, or a specified channel, with an optional message." +msgstr "part [��廨] [���廣�]: 廣��� �廬 ���廨 ������, �� ��廨 �廖����, 廣� �廚廩廨�廬 ����廣�." + +msgid "ping [nick]: Asks how much lag a user (or the server if no user specified) has." +msgstr "ping [廩� �����]: 廩��� ��� ����廬 �廬���� 廩� �廩廬�廩 (�� 廩� �廩廨廬 �� �� 廢���� �廩廬�廩." + +msgid "query <nick> <message>: Send a private message to a user (as opposed to a channel)." +msgstr "query <廩� �廩廬�廩> <���廣�>: 廩�� ���廣� 廚廨��廬 ��廩廬�廩 (������ �廣廨�廛)." msgid "quit [message]: Disconnect from the server, with an optional message." msgstr "quit [���廣�]: �廬�廬廡�廬 ��廩廨廬, 廣� �廚廩廨�廬 ����廣�." @@ -3590,12 +3394,8 @@ msgid "quote [...]: Send a raw command to the server." msgstr "quote [...]: 廩�� 廚廡��� �廩�廨�廬 �廩廨廬." -msgid "" -"remove <nick> [message]: Remove someone from a room. You must be a " -"channel operator to do this." -msgstr "" -"remove <廩� �����> [���廣�]: �廖廨 ��廩�� ���廨. 廢廨�� ����廬 �廚廣�� �廣廨�廛 " -"��廢廣 廚廣��� ��." +msgid "remove <nick> [message]: Remove someone from a room. You must be a channel operator to do this." +msgstr "remove <廩� �����> [���廣�]: �廖廨 ��廩�� ���廨. 廢廨�� ����廬 �廚廣�� �廣廨�廛 ��廢廣 廚廣��� ��." msgid "time: Displays the current local time at the IRC server." msgstr "time: �廢�� �廬 �廩廣� ��廡���廬 �廩廨廬 �-IRC." @@ -3609,18 +3409,11 @@ msgid "version [nick]: send CTCP VERSION request to a user" msgstr "version [廩� �����]: 廩�� �廡廩� CTCP VERSION ��廩廬�廩" -msgid "" -"voice <nick1> [nick2] ...: Grant channel voice status to someone. You " -"must be a channel operator to do this." -msgstr "" -"voice <廩� �����1> [廩� �����2] ...: 廬� 廖���廖 ����廨 ���廩��. ���� ����廬 " -"�廚廣�� �廣廨�廛 ��廢廣 廚廣��� ��." - -msgid "" -"wallops <message>: If you don't know what this is, you probably can't " -"use it." -msgstr "" -"wallops <���廣�>: �� ���� ���廣/廬 �� ��, �廬/� ��廨�� �� ���� ��廩廬�廩 ���." +msgid "voice <nick1> [nick2] ...: Grant channel voice status to someone. You must be a channel operator to do this." +msgstr "voice <廩� �����1> [廩� �����2] ...: 廬� 廖���廖 ����廨 ���廩��. ���� ����廬 �廚廣�� �廣廨�廛 ��廢廣 廚廣��� ��." + +msgid "wallops <message>: If you don't know what this is, you probably can't use it." +msgstr "wallops <���廣�>: �� ���� ���廣/廬 �� ��, �廬/� ��廨�� �� ���� ��廩廬�廩 ���." msgid "whois [server] <nick>: Get information on a user." msgstr "whois [廩廨廬] <廩� �����>: �廩� ���廣 廣� �廩廬�廩." @@ -3660,9 +3453,7 @@ msgstr "�廩廨廬 ��廨廩 ����廬 �� ��廢廚� �廣� 廬廡廩�廨廬 �� ��廢廚�廬" #, c-format -msgid "" -"%s requires plaintext authentication over an unencrypted connection. Allow " -"this and continue authentication?" +msgid "%s requires plaintext authentication over an unencrypted connection. Allow this and continue authentication?" msgstr "%s ��廨廩 ����廬 �� ��廢廚� �廣� 廬廡廩�廨廬 �� ��廢廚�廬. ��廚廩廨 ����廩�� ��� ��廬?" msgid "Plaintext Authentication" @@ -3721,6 +3512,11 @@ msgid "Street Address" msgstr "�廬��廬" +#. +#. * EXTADD is correct, EXTADR is generated by other +#. * clients. The next time someone reads this, remove +#. * EXTADR. +#. msgid "Extended Address" msgstr "���廣 �廬��廬 ��廨��" @@ -3759,9 +3555,7 @@ msgid "Edit XMPP vCard" msgstr "廣廨�� �廬 �- XMPP vCard" -msgid "" -"All items below are optional. Enter only the information with which you feel " -"comfortable." +msgid "All items below are optional. Enter only the information with which you feel comfortable." msgstr "�� �廚廨���� ���� �� ���廨�. �廩 ����� 廨廡 �廬 ����廣 廩�廬/� �廨��廩/� ��� �廬廬." msgid "Client" @@ -3807,14 +3601,12 @@ msgid "Temporarily Hide From" msgstr "�廖廬廨 �廬 �廬���廬 ����廬" -#. && NOT ME msgid "Cancel Presence Notification" msgstr "��� �廬廨廣廬 �����廬" msgid "(Re-)Request authorization" msgstr "�廡廩 ����廬 (���廩)" -#. if(NOT ME) #. shouldn't this just happen automatically when the buddy is #. removed? msgid "Unsubscribe" @@ -3845,12 +3637,8 @@ msgstr "���� 廬�廢��廬 ���廚�廩 廩��" #. current comment from Jabber User Directory users.jabber.org -msgid "" -"Find a contact by entering the search criteria in the given fields. Note: " -"Each field supports wild card searches (%)" -msgstr "" -"�廢� ��廩 廡廩廨 廣� ��� ���� 廡廨��廨����� ���廚�廩 �廩��廬 ��廬����. �廣廨�: �� 廩�� 廬��� " -"���廚�廩�� 廣� ��廬��廬 ���廚��廬 (%)" +msgid "Find a contact by entering the search criteria in the given fields. Note: Each field supports wild card searches (%)" +msgstr "�廢� ��廩 廡廩廨 廣� ��� ���� 廡廨��廨����� ���廚�廩 �廩��廬 ��廬����. �廣廨�: �� 廩�� 廬��� ���廚�廩�� 廣� ��廬��廬 ���廚��廬 (%)" msgid "Directory Query Failed" msgstr "廩���� �廩���廬廬 �廖廚廨���" @@ -3964,9 +3752,7 @@ msgid "Ping timed out" msgstr "廚��� �� ��廨 ����" -msgid "" -"Unable to find alternative XMPP connection methods after failing to connect " -"directly." +msgid "Unable to find alternative XMPP connection methods after failing to connect directly." msgstr "�� ���� ��廢�� 廢�廨�廬 ����廨 XMPP ���廚��廬 ��廨� ��廩��� �����廨 �廩�廨�廬." msgid "Invalid XMPP ID" @@ -4020,8 +3806,7 @@ msgid "Unregister" msgstr "�廖廨 廨�廩��" -msgid "" -"Please fill out the information below to change your account registration." +msgid "Please fill out the information below to change your account registration." msgstr ".�廩 ����� �廬 ����廣 ���� ��� �廩��廬 �廬 廨�廩�� ��廩��� 廩��" msgid "Please fill out the information below to register your new account." @@ -4338,9 +4123,7 @@ msgstr "�� ��廬� �����, ������ 廩��廬�� ��%s �� ����廨." #, c-format -msgid "" -"Unable to buzz, because %s does not support it or does not wish to receive " -"buzzes now." +msgid "Unable to buzz, because %s does not support it or does not wish to receive buzzes now." msgstr "�� ��廬� �����, �� %s �� 廬��� ��� �� �� 廨�廢� �廡�� �������� �廨�廣." #, c-format @@ -4372,9 +4155,7 @@ msgstr "����� ���� ��廩�" #, c-format -msgid "" -"Please select the resource of %s with which you would like to start a media " -"session." +msgid "Please select the resource of %s with which you would like to start a media session." msgstr "�廩 ����廨 �廬 ��廩�� 廩� %s ��廬� �廨廢��� ��廬��� 廬廡廩�廨廬 ����." msgid "Select a Resource" @@ -4401,19 +4182,11 @@ msgid "ban <user> [reason]: Ban a user from the room." msgstr "ban <�廩廬�廩> [廖���]: �廖�� �廩廬�廩 �� ���廨." -msgid "" -"affiliate <owner|admin|member|outcast|none> [nick1] [nick2] ...: Get " -"the users with an affiliation or set users' affiliation with the room." -msgstr "" -"affiliate <�廩廬�廩> <�廣���|�廚廣��|��廨|����廬|���> [廩�1][廩�2]...: " -"廩��廝 �� 廡�廣 �廬 ����廖� 廩� �廩廬�廩�� 廣� ���廨." - -msgid "" -"role <moderator|participant|visitor|none> [nick1] [nick2] ...: Get the " -"users with an role or set users' role with the room." -msgstr "" -"role <�廩廬�廩> <�廣���|�廚廣��|��廨|����廬|���> [廩�1][廩�2]...: 廩��廝 �� " -"廡�廣 �廬 ����廖� 廩� �廩廬�廩�� 廣� ���廨." +msgid "affiliate <owner|admin|member|outcast|none> [nick1] [nick2] ...: Get the users with an affiliation or set users' affiliation with the room." +msgstr "affiliate <�廩廬�廩> <�廣���|�廚廣��|��廨|����廬|���> [廩�1][廩�2]...: 廩��廝 �� 廡�廣 �廬 ����廖� 廩� �廩廬�廩�� 廣� ���廨." + +msgid "role <moderator|participant|visitor|none> [nick1] [nick2] ...: Get the users with an role or set users' role with the room." +msgstr "role <�廩廬�廩> <�廣���|�廚廣��|��廨|����廬|���> [廩�1][廩�2]...: 廩��廝 �� 廡�廣 �廬 ����廖� 廩� �廩廬�廩�� 廣� ���廨." msgid "invite <user> [message]: Invite a user to the room." msgstr "invite <�廩廬�廩> [��廨]: ���� �廩廬�廩 ���廨." @@ -4424,8 +4197,7 @@ msgid "kick <user> [reason]: Kick a user from the room." msgstr "kick <�廩廬�廩> [廖���]: �廣� �廩廬�廩 ����廨." -msgid "" -"msg <user> <message>: Send a private message to another user." +msgid "msg <user> <message>: Send a private message to another user." msgstr "msg <�廩廬�廩> <���廣�>: 廩�� ���廣� 廚廨��廬 ��廩廬�廩 ��廨." msgid "ping <jid>:\tPing a user/component/server." @@ -4524,11 +4296,8 @@ msgid "Create New Room" msgstr "廢�廨 ��廨 ��廩" -msgid "" -"You are creating a new room. Would you like to configure it, or accept the " -"default settings?" -msgstr "" -"���廨 ���廩 廩�廢廨廬. ��� �廨廢��� �廩��廬 �廬 ����廨�廬 廩��, �� �廡�� �廬 �廨�廨�廬 �����?" +msgid "You are creating a new room. Would you like to configure it, or accept the default settings?" +msgstr "���廨 ���廩 廩�廢廨廬. ��� �廨廢��� �廩��廬 �廬 ����廨�廬 廩��, �� �廡�� �廬 �廨�廨�廬 �����?" msgid "_Configure Room" msgstr "���廨�廬 ���廨" @@ -4553,9 +4322,6 @@ msgid "Transfer was closed." msgstr "�廣�廨廬 �廡��廛 �廖�廨�." -msgid "Failed to open the file" -msgstr "��廩��� �廣廬 廚廬��廬 �廡��廛" - msgid "Failed to open in-band bytestream" msgstr "��廩��� �廚廬��廬 廬�廨�� ���廣 �廬���" @@ -4600,11 +4366,8 @@ msgid "Please specify a new nickname for you." msgstr "��� ��� ����� ��廩 廣��廨�." -msgid "" -"This information is visible to all contacts on your contact list, so choose " -"something appropriate." -msgstr "" -"����廣 ��� ���廩 ��� ��廩�-�廡廩廨 �廨廩��廬 ��廩� �廡廩廨 廩��, �� �廩 ����廨 �廩�� �廬���." +msgid "This information is visible to all contacts on your contact list, so choose something appropriate." +msgstr "����廣 ��� ���廩 ��� ��廩�-�廡廩廨 �廨廩��廬 ��廩� �廡廩廨 廩��, �� �廩 ����廨 �廩�� �廬���." msgid "Set Nickname..." msgstr "廡�廣 �����..." @@ -4633,17 +4396,11 @@ msgstr "��廨�廣 廖���廨�� 廨廩��廬 ��廩� �廡廩廨 �-%s (%s)" #, c-format -msgid "" -"%s on the local list is inside the group \"%s\" but not on the server list. " -"Do you want this buddy to be added?" -msgstr "" -"%s �廨廩��� ��廡���廬 ��� �廬�� �廡��廢� \"%s\" �� �� �廨廩��� 廩廣� �廩廨廬. ��� �廨廢��� " -"���廖�廝 ��廩 廡廩廨 ��?" - -#, c-format -msgid "" -"%s is on the local list but not on the server list. Do you want this buddy " -"to be added?" +msgid "%s on the local list is inside the group \"%s\" but not on the server list. Do you want this buddy to be added?" +msgstr "%s �廨廩��� ��廡���廬 ��� �廬�� �廡��廢� \"%s\" �� �� �廨廩��� 廩廣� �廩廨廬. ��� �廨廢��� ���廖�廝 ��廩 廡廩廨 ��?" + +#, c-format +msgid "%s is on the local list but not on the server list. Do you want this buddy to be added?" msgstr "%s �廨廩��� ��廡���廬 �� �� �廨廩��� 廩廣� �廩廨廬. ��� �廨廢��� ���廖�廝 ��廩 廡廩廨 ��?" #, c-format @@ -4930,12 +4687,8 @@ msgid "Allow MSN Mobile pages?" msgstr "�廚廩廨 ���廣�廬 ����� �-MSN?" -msgid "" -"Do you want to allow or disallow people on your buddy list to send you MSN " -"Mobile pages to your cell phone or other mobile device?" -msgstr "" -"��� �廨廢��� ��廚廩廨 �� �� ��廚廩廨 ���廩�� �廨廩��廬 ��廩� �廡廩廨 廩�� �廩��� �� ���廣�廬 " -"���廚�� ����� �� 廩�廨 ��廩�廨�� ������?" +msgid "Do you want to allow or disallow people on your buddy list to send you MSN Mobile pages to your cell phone or other mobile device?" +msgstr "��� �廨廢��� ��廚廩廨 �� �� ��廚廩廨 ���廩�� �廨廩��廬 ��廩� �廡廩廨 廩�� �廩��� �� ���廣�廬 ���廚�� ����� �� 廩�廨 ��廩�廨�� ������?" msgid "Allow" msgstr "�廚廩廨" @@ -4951,8 +4704,7 @@ msgstr "��� �廡廖� �廖�� 廣��廨 �廩��� ��." #, c-format -msgid "" -"MSN servers are currently blocking the following regular expressions:<br/>%s" +msgid "MSN servers are currently blocking the following regular expressions:<br/>%s" msgstr "廩廨廬� MSN �廨�廣 ��廖��� �廬 ������ �廨������ �����:<br/>%s" msgid "This account does not have email enabled." @@ -5046,12 +4798,8 @@ msgstr "��廨廩廬 廬���� �-SSL 廣��廨 MSN. �� ��廬廡�� 廖廚廨��廬 SSL �廬��廬." #, c-format -msgid "" -"Unable to add the buddy %s because the username is invalid. Usernames must " -"be a valid email address." -msgstr "" -"�� ��廬� ���廖�廝 �廬 ���廨 %s ������ 廩廩� ��廩廬�廩 ���� ��廡�. 廩��廬 �廩廬�廩�� ���廨��� " -"����廬 �廬���廬 ������ 廬廡廚�廬." +msgid "Unable to add the buddy %s because the username is invalid. Usernames must be a valid email address." +msgstr "�� ��廬� ���廖�廝 �廬 ���廨 %s ������ 廩廩� ��廩廬�廩 ���� ��廡�. 廩��廬 �廩廬�廩�� ���廨��� ����廬 �廬���廬 ������ 廬廡廚�廬." msgid "Unable to Add" msgstr "�� ��廬� ���廖�廝" @@ -5207,17 +4955,10 @@ msgid "The user has not created a public profile." msgstr "��廩廬�廩 �� �廢廨 廚廨�廚�� 廢���廨�." -msgid "" -"MSN reported not being able to find the user's profile. This either means " -"that the user does not exist, or that the user exists but has not created a " -"public profile." -msgstr "" -"MSN ������ 廩�� ���� ��廢�� �廬 廚廨�廚�� ��廩廬�廩. ��廬 ���廨廬 廩��廩廬�廩 �� 廡���, �� " -"廩��廩廬�廩 廡��� �� �� �廢廨 廚廨�廚�� 廢���廨�." - -msgid "" -"Could not find any information in the user's profile. The user most likely " -"does not exist." +msgid "MSN reported not being able to find the user's profile. This either means that the user does not exist, or that the user exists but has not created a public profile." +msgstr "MSN ������ 廩�� ���� ��廢�� �廬 廚廨�廚�� ��廩廬�廩. ��廬 ���廨廬 廩��廩廬�廩 �� 廡���, �� 廩��廩廬�廩 廡��� �� �� �廢廨 廚廨�廚�� 廢���廨�." + +msgid "Could not find any information in the user's profile. The user most likely does not exist." msgstr "�� ���� ��廢�� ���廣 �廬�� 廚廨�廚�� ��廩廬�廩. ��� ��廨�� ��廩廬�廩 �� 廡���." msgid "View web profile" @@ -5277,36 +5018,24 @@ #, c-format msgid "" -"The MSN server will shut down for maintenance in %d minute. You will " -"automatically be signed out at that time. Please finish any conversations " -"in progress.\n" +"The MSN server will shut down for maintenance in %d minute. You will automatically be signed out at that time. Please finish any conversations in progress.\n" "\n" -"After the maintenance has been completed, you will be able to successfully " -"sign in." +"After the maintenance has been completed, you will be able to successfully sign in." msgid_plural "" -"The MSN server will shut down for maintenance in %d minutes. You will " -"automatically be signed out at that time. Please finish any conversations " -"in progress.\n" +"The MSN server will shut down for maintenance in %d minutes. You will automatically be signed out at that time. Please finish any conversations in progress.\n" "\n" -"After the maintenance has been completed, you will be able to successfully " -"sign in." +"After the maintenance has been completed, you will be able to successfully sign in." msgstr[0] "" -"廩廨廬 �-MSN ���� �廬���廡� �廣�� %d �廡�. �廬/� 廬��廬廡/� �������廬.��� 廖���/� �廬 " -"�廩���廬 廩�� ��廡��.\n" +"廩廨廬 �-MSN ���� �廬���廡� �廣�� %d �廡�. �廬/� 廬��廬廡/� �������廬.��� 廖���/� �廬 �廩���廬 廩�� ��廡��.\n" "\n" "���廨 廩�廬���廡� ��廩���, 廬���/� ��廬��廨 ���廩." msgstr[1] "" -"廩廨廬 �-MSN ���� �廬���廡� �廣�� %d �廡�廬. �廬/� 廬��廬廡/� �������廬.��� 廖���/� �廬 " -"�廩���廬 廩�� ��廡��.\n" +"廩廨廬 �-MSN ���� �廬���廡� �廣�� %d �廡�廬. �廬/� 廬��廬廡/� �������廬.��� 廖���/� �廬 �廩���廬 廩�� ��廡��.\n" "\n" "���廨 廩�廬���廡� ��廩���, 廬���/� ��廬��廨 ���廩." -msgid "" -"Message was not sent because the system is unavailable. This normally " -"happens when the user is blocked or does not exist." -msgstr "" -"����廣� �� �廩��� �廩�� 廩��廣廨�廬 �� �����. ��廨�-��� �� 廡�廨� �廩��廩廬�廩 �廖�� �� �� " -"廡���." +msgid "Message was not sent because the system is unavailable. This normally happens when the user is blocked or does not exist." +msgstr "����廣� �� �廩��� �廩�� 廩��廣廨�廬 �� �����. ��廨�-��� �� 廡�廨� �廩��廩廬�廩 �廖�� �� �� 廡���." msgid "Message was not sent because messages are being sent too quickly." msgstr "����廣� �� �廩��� ������ 廩����廣�廬 �廩���廬 ��廨 ���." @@ -5350,8 +5079,7 @@ msgid "Unable to authenticate: %s" msgstr "�� ��廬� ���廬: %s" -msgid "" -"Your MSN buddy list is temporarily unavailable. Please wait and try again." +msgid "Your MSN buddy list is temporarily unavailable. Please wait and try again." msgstr "廨廩��廬 ��廩� �廡廩廨 廩�� �-MSN ���� ����� �廨�廣. �廩 ��廖�廬 廩��廬 ����廨 ��廬廨." msgid "Handshaking" @@ -5374,8 +5102,7 @@ #, c-format msgid "%s requests to view your webcam, but this request is not yet supported." -msgstr "" -"�廩��� �廡廩� ��廬 %s �廢廚�廬 ��廢��廬 �����廨�� 廩��, ��� �廡廩� �� ���� �廬��廬 �廨�廣." +msgstr "�廩��� �廡廩� ��廬 %s �廢廚�廬 ��廢��廬 �����廨�� 廩��, ��� �廡廩� �� ���� �廬��廬 �廨�廣." #, c-format msgid "%s has sent you a webcam invite, which is not yet supported." @@ -5405,15 +5132,10 @@ msgid "Message could not be sent because we are sending too quickly:" msgstr "�� ��廬� �廩��� �廬 ����廣� ����� 廩��� 廩����� ��廨 ���:" -msgid "" -"Message could not be sent because we were unable to establish a session with " -"the server. This is likely a server problem, try again in a few minutes:" -msgstr "" -"�� ��� ��廬� �廩��� �廬 ����廣�, ������ 廩�� ������ ��廢廣 �廬廡廩廨�廬 廣� �廩廨廬. ��� " -"��廨�� �� �廣��� 廣� �廩廨廬, �廩 ��廖�廬 廩�� �廣�� �廖廚廨 �廡�廬:" - -msgid "" -"Message could not be sent because an error with the switchboard occurred:" +msgid "Message could not be sent because we were unable to establish a session with the server. This is likely a server problem, try again in a few minutes:" +msgstr "�� ��� ��廬� �廩��� �廬 ����廣�, ������ 廩�� ������ ��廢廣 �廬廡廩廨�廬 廣� �廩廨廬. ��� ��廨�� �� �廣��� 廣� �廩廨廬, �廩 ��廖�廬 廩�� �廣�� �廖廚廨 �廡�廬:" + +msgid "Message could not be sent because an error with the switchboard occurred:" msgstr "�� ��廬� �廩��� �廬 ����廣� ����� 廩��廨廣� 廩���� 廣� ��廨�����:" msgid "Message may have not been sent because an unknown error occurred:" @@ -5548,16 +5270,10 @@ msgstr "��廨� ����廣�廬 �����廬" #, c-format -msgid "" -"%d buddy was added or updated from the server (including buddies already on " -"the server-side list)" -msgid_plural "" -"%d buddies were added or updated from the server (including buddies already " -"on the server-side list)" -msgstr[0] "" -"%d ��廩-廡廩廨 ��廖廝 �� 廣���� ��廩廨廬 (���� ��廩�-廡廩廨 廩��廨 ��� 廣� �廨廩��� �廩廨廬)" -msgstr[1] "" -"%d ��廩�-廡廩廨 ��廖廚� �� 廣����� ��廩廨廬 (���� ��廩�-廡廩廨 廩��廨 ��� 廣� �廨廩��� �廩廨廬)" +msgid "%d buddy was added or updated from the server (including buddies already on the server-side list)" +msgid_plural "%d buddies were added or updated from the server (including buddies already on the server-side list)" +msgstr[0] "%d ��廩-廡廩廨 ��廖廝 �� 廣���� ��廩廨廬 (���� ��廩�-廡廩廨 廩��廨 ��� 廣� �廨廩��� �廩廨廬)" +msgstr[1] "%d ��廩�-廡廩廨 ��廖廚� �� 廣����� ��廩廨廬 (���� ��廩�-廡廩廨 廩��廨 ��� 廣� �廨廩��� �廩廨廬)" msgid "Add contacts from server" msgstr "��廖廝 ��廩�-廡廩廨 ��廩廨廬" @@ -5567,14 +5283,8 @@ msgstr "廩���廬 廚廨���廡��, 廡�� %d: %s" #, c-format -msgid "" -"%s Your password is %zu characters, which is longer than the maximum length " -"of %d. Please shorten your password at http://profileedit.myspace.com/index." -"cfm?fuseaction=accountSettings.changePassword and try again." -msgstr "" -"%s 廖�廖�廬� ���� ���廨� %zu 廬���, ��廬廨 ����廨� ��廢�廚� 廩� %d. �廩 �廡廢廨 �廬 �廖�廖�� " -"��廬廨 http://profileedit.myspace.com/index.cfm?fuseaction=accountSettings." -"changePassword ���廖�廬 廩��廬." +msgid "%s Your password is %zu characters, which is longer than the maximum length of %d. Please shorten your password at http://profileedit.myspace.com/index.cfm?fuseaction=accountSettings.changePassword and try again." +msgstr "%s 廖�廖�廬� ���� ���廨� %zu 廬���, ��廬廨 ����廨� ��廢�廚� 廩� %d. �廩 �廡廢廨 �廬 �廖�廖�� ��廬廨 http://profileedit.myspace.com/index.cfm?fuseaction=accountSettings.changePassword ���廖�廬 廩��廬." msgid "Incorrect username or password" msgstr "廩� �廩廬�廩 �� 廖�廖�� 廩�����" @@ -5609,11 +5319,8 @@ msgid "The RC4 cipher could not be found" msgstr "廢�廚� �- RC4 �� ��廢�" -msgid "" -"Upgrade to a libpurple with RC4 support (>= 2.0.1). MySpaceIM plugin will " -"not be loaded." -msgstr "" -"�廩 �廩�廨� ���廨廖� 廩� libpurple 廣� 廬���廬 RC4 (>= 2.0.1). 廬�廖廝 MySpaceIM �� ��廣�." +msgid "Upgrade to a libpurple with RC4 support (>= 2.0.1). MySpaceIM plugin will not be loaded." +msgstr "�廩 �廩�廨� ���廨廖� 廩� libpurple 廣� 廬���廬 RC4 (>= 2.0.1). 廬�廖廝 MySpaceIM �� ��廣�." msgid "Add friends from MySpace.com" msgstr "��廖廝 ��廨�� �廬�� MySpace.com" @@ -5667,14 +5374,8 @@ msgid "Client Version" msgstr "��廨廖廬 �廡��" -msgid "" -"An error occurred while trying to set the username. Please try again, or " -"visit http://editprofile.myspace.com/index.cfm?fuseaction=profile.username " -"to set your username." -msgstr "" -"廡廨廬� 廩���� �廣廬 廡��廣廬 廩� ��廩廬�廩. �廩 ��廖�廬 廩��廬, �� ��廩廬 �� http://editprofile." -"myspace.com/index.cfm?fuseaction=profile.username 廣� ��廬 �廡��廣 �廬 廩� ��廩廬�廩 " -"廩��." +msgid "An error occurred while trying to set the username. Please try again, or visit http://editprofile.myspace.com/index.cfm?fuseaction=profile.username to set your username." +msgstr "廡廨廬� 廩���� �廣廬 廡��廣廬 廩� ��廩廬�廩. �廩 ��廖�廬 廩��廬, �� ��廩廬 �� http://editprofile.myspace.com/index.cfm?fuseaction=profile.username 廣� ��廬 �廡��廣 �廬 廩� ��廩廬�廩 廩��." msgid "MySpaceIM - Username Available" msgstr "MySpaceIM - 廩� ��廩廬�廩 ����" @@ -5895,9 +5596,7 @@ msgid "Could not recognize the host of the username you entered" msgstr "�� ��廬� ����廬 �廬 �廩廨廬 ��廬� ���廬" -msgid "" -"Your account has been disabled because too many incorrect passwords were " -"entered" +msgid "Your account has been disabled because too many incorrect passwords were entered" msgstr "�廩���� ��廩廣� 廣廡� 廨���� ���廬 廖�廖���廬 廩����廬" msgid "You cannot add the same person twice to a conversation" @@ -5918,9 +5617,7 @@ msgid "The user has blocked you" msgstr "�廩廬�廩 �� �廖� ��廬�" -msgid "" -"This evaluation version does not allow more than ten users to log in at one " -"time" +msgid "This evaluation version does not allow more than ten users to log in at one time" msgstr "��廨廖廬 ���廖�� ��� ���� ��廚廩廨廬 ���廬廨 �-10 �廩廬�廩�� ��廬��廨 �� ����廬" msgid "The user is either offline or you are blocked" @@ -5960,20 +5657,12 @@ msgstr "�� ��廬� �廩��� ���廣�. �� ���� ��廢�廨 �廬 ��廣��� (%s)." #, c-format -msgid "" -"Unable to move user %s to folder %s in the server side list. Error while " -"creating folder (%s)." -msgstr "" -"�� ��廬� ��廣��廨 �廬 ��廩廬�廩 %s �廬�廡��� %s �廨廩��� �廢� �廩廨廬.廩���� �廣廬 �廢�廨廬 " -"�廬�廡��� (%s)." - -#, c-format -msgid "" -"Unable to add %s to your buddy list. Error creating folder in server side " -"list (%s)." -msgstr "" -"�� ��廬� ���廖�廝 �廬 %s �廨廩��廬 ��廩� �廡廩廨 廩��.廩���� ��廢�廨廬 廬�廡��� �廨廩��廬 廩� �廩廨廬 " -"(%s)." +msgid "Unable to move user %s to folder %s in the server side list. Error while creating folder (%s)." +msgstr "�� ��廬� ��廣��廨 �廬 ��廩廬�廩 %s �廬�廡��� %s �廨廩��� �廢� �廩廨廬.廩���� �廣廬 �廢�廨廬 �廬�廡��� (%s)." + +#, c-format +msgid "Unable to add %s to your buddy list. Error creating folder in server side list (%s)." +msgstr "�� ��廬� ���廖�廝 �廬 %s �廨廩��廬 ��廩� �廡廩廨 廩��.廩���� ��廢�廨廬 廬�廡��� �廨廩��廬 廩� �廩廨廬 (%s)." #, c-format msgid "Could not get details for user %s (%s)." @@ -6058,13 +5747,10 @@ msgstr "��� �廨廢��� ��廢�廨廝 �廩���?" #, c-format -msgid "" -"%s appears to be offline and did not receive the message that you just sent." +msgid "%s appears to be offline and did not receive the message that you just sent." msgstr "��� ��廨��, %s ���� ����廨 ��� 廡��� �廬 ����廣� 廩廩��廬 �廨�廣." -msgid "" -"Unable to connect to server. Please enter the address of the server to which " -"you wish to connect." +msgid "Unable to connect to server. Please enter the address of the server to which you wish to connect." msgstr "�� ��廬� ��廬��廨 �廩廨廬. �廩 ����� �廬 �廬��廬 �廩廨廬 ���� �廨廢��� ��廬��廨." msgid "This conference has been closed. No more messages can be sent." @@ -6093,12 +5779,8 @@ msgstr "�廬廡��� 廬���� ��-廢廚��� ��廬" #. username connecting too frequently -msgid "" -"You have been connecting and disconnecting too frequently. Wait ten minutes " -"and try again. If you continue to try, you will need to wait even longer." -msgstr "" -"�廬��廨廬 ��廬�廬廡廬 �廬��廨�廬 ����� ����. ��廬� 10 �廡�廬 ��廖� 廩��廬. �� 廬�廩�� ��廖�廬, " -"廬���廛 ���廬�� �廚��� ��廬廨." +msgid "You have been connecting and disconnecting too frequently. Wait ten minutes and try again. If you continue to try, you will need to wait even longer." +msgstr "�廬��廨廬 ��廬�廬廡廬 �廬��廨�廬 ����� ����. ��廬� 10 �廡�廬 ��廖� 廩��廬. �� 廬�廩�� ��廖�廬, 廬���廛 ���廬�� �廚��� ��廬廨." #, c-format msgid "Error requesting " @@ -6168,12 +5850,8 @@ msgstr "��廢廣 ����廨 �廩�廨" #, c-format -msgid "" -"%s tried to send you a %s file, but we only allow files up to %s over Direct " -"IM. Try using file transfer instead.\n" -msgstr "" -"%s ��廖� �廩��� 廡��廛 %s ����, ��� ��� ��廚廩廨�� 廨廡 廡�廢�� 廣� %s �廣� Direct IM. " -"��廡�� ��廬, �廩 ��廖�廬 ��廣��廨 �廬 �廡��廛 �廣�廨廬 ������ �廣�廨廬 �廡�廢��.\n" +msgid "%s tried to send you a %s file, but we only allow files up to %s over Direct IM. Try using file transfer instead.\n" +msgstr "%s ��廖� �廩��� 廡��廛 %s ����, ��� ��� ��廚廩廨�� 廨廡 廡�廢�� 廣� %s �廣� Direct IM. ��廡�� ��廬, �廩 ��廖�廬 ��廣��廨 �廬 �廡��廛 �廣�廨廬 ������ �廣�廨廬 �廡�廢��.\n" #, c-format msgid "File %s is %s, which is larger than the maximum size of %s." @@ -6251,23 +5929,12 @@ msgid "Not while on AOL" msgstr "�� ���� 廩��廬 �-AOL" -msgid "" -"(There was an error receiving this message. The buddy you are speaking with " -"is probably using a different encoding than expected. If you know what " -"encoding he is using, you can specify it in the advanced account options for " -"your AIM/ICQ account.)" -msgstr "" -"(���廬� 廩���� �廣廬 廡��廬 ���廣� ��. ��廩-�廡廩廨 ��廬� �廩��� ��廨�� �廩廬�廩 �廡���� 廩��� " -"�� ��廢�廚�. �� ���� ���廣/廬 ����� 廡���� ��� �廩廬�廩, ��廬� �����廨 ��廬 ����廨�廬 " -"��廬廡���廬 廩� ��廩��� 廣��廨 ��廩��� ��� 廩� AIM/ICQ.)" - -#, c-format -msgid "" -"(There was an error receiving this message. Either you and %s have " -"different encodings selected, or %s has a buggy client.)" -msgstr "" -"(���廬� 廬廡�� �廡��廬 ���廣� ��. �� 廩�� ���廩廬�廩 %s �廩 廡������ 廩����,�� 廩��廩廬�廩 %s " -"�廩 廬���� 廣� �����.)" +msgid "(There was an error receiving this message. The buddy you are speaking with is probably using a different encoding than expected. If you know what encoding he is using, you can specify it in the advanced account options for your AIM/ICQ account.)" +msgstr "(���廬� 廩���� �廣廬 廡��廬 ���廣� ��. ��廩-�廡廩廨 ��廬� �廩��� ��廨�� �廩廬�廩 �廡���� 廩��� �� ��廢�廚�. �� ���� ���廣/廬 ����� 廡���� ��� �廩廬�廩, ��廬� �����廨 ��廬 ����廨�廬 ��廬廡���廬 廩� ��廩��� 廣��廨 ��廩��� ��� 廩� AIM/ICQ.)" + +#, c-format +msgid "(There was an error receiving this message. Either you and %s have different encodings selected, or %s has a buggy client.)" +msgstr "(���廬� 廬廡�� �廡��廬 ���廣� ��. �� 廩�� ���廩廬�廩 %s �廩 廡������ 廩����,�� 廩��廩廬�廩 %s �廩 廬���� 廣� �����.)" #. Label msgid "Buddy Icon" @@ -6379,14 +6046,8 @@ msgstr "��廢廣 ����廨 �����廨" #, c-format -msgid "" -"Unable to sign on as %s because the username is invalid. Usernames must be " -"a valid email address, or start with a letter and contain only letters, " -"numbers and spaces, or contain only numbers." -msgstr "" -"�� ��廬� ��廬��廨 �廬�廨 %s ����� 廩廩� �廩廬�廩 �� ���� 廬廡廝. 廩��廬 �廩廬�廩�� ������ " -"����廬 �廬���廬 ������ ��廡��廬, �� �����廚�� ��廬��� ���廬 ������ 廨廡 ��廬��廬 �廖廚廨�� " -"�廨�����, �� �����廚�� ����� �� �廨廡 �廖廚廨��." +msgid "Unable to sign on as %s because the username is invalid. Usernames must be a valid email address, or start with a letter and contain only letters, numbers and spaces, or contain only numbers." +msgstr "�� ��廬� ��廬��廨 �廬�廨 %s ����� 廩廩� �廩廬�廩 �� ���� 廬廡廝. 廩��廬 �廩廬�廩�� ������ ����廬 �廬���廬 ������ ��廡��廬, �� �����廚�� ��廬��� ���廬 ������ 廨廡 ��廬��廬 �廖廚廨�� �廨�����, �� �����廚�� ����� �� �廨廡 �廖廚廨��." #, c-format msgid "You may be disconnected shortly. If so, check %s for updates." @@ -6421,12 +6082,8 @@ msgstr "��廨廖廬 廬���廬 ��廡�� �� �廬/� �廩廬�廩/廬 �廩�� ���. ��� 廩�廨�/� �-%s" #. IP address connecting too frequently -msgid "" -"You have been connecting and disconnecting too frequently. Wait a minute and " -"try again. If you continue to try, you will need to wait even longer." -msgstr "" -"�廬��廨廬 ��廬�廬廡廬 �廬��廨�廬 ����� ����. �廩 ���廬�� �廡� ���廖�廬 廩��廬. �� 廬�廩��/� " -"��廖�廬, 廬���廢/� ���廬�� �廚��� ��廬廨." +msgid "You have been connecting and disconnecting too frequently. Wait a minute and try again. If you continue to try, you will need to wait even longer." +msgstr "�廬��廨廬 ��廬�廬廡廬 �廬��廨�廬 ����� ����. �廩 ���廬�� �廡� ���廖�廬 廩��廬. �� 廬�廩��/� ��廖�廬, 廬���廢/� ���廬�� �廚��� ��廬廨." msgid "The SecurID key entered is invalid" msgstr "��廚廬� SecurID 廩���� ���� 廬廡廝." @@ -6454,8 +6111,7 @@ #, c-format msgid "" -"The user %u has denied your request to add them to your buddy list for the " -"following reason:\n" +"The user %u has denied your request to add them to your buddy list for the following reason:\n" "%s" msgstr "" "��廩廬�廩 %u ��� �廬 �廡廩廬� ���廖�廝 ��廬� �廨廩��廬 ��廩� �廡廩廨 廩��� ��廖��� ����:\n" @@ -6531,25 +6187,20 @@ msgstr[1] "廚廖廚廖廬 %hu ���廣�廬 ��廬 %s ������ 廩�� ��� �����廬 ���." #, c-format -msgid "" -"You missed %hu message from %s because the rate limit has been exceeded." -msgid_plural "" -"You missed %hu messages from %s because the rate limit has been exceeded." +msgid "You missed %hu message from %s because the rate limit has been exceeded." +msgid_plural "You missed %hu messages from %s because the rate limit has been exceeded." msgstr[0] "廚廖廚廖廬 %hu ���廣� ��廬 %s ������ 廩���廨�廬 �廩���� ��廚廨�廬." msgstr[1] "廚廖廚廖廬 %hu ���廣�廬 ��廬 %s ������ 廩���廨�廬 �廩���� ��廚廨�廬." #, c-format -msgid "" -"You missed %hu message from %s because his/her warning level is too high." -msgid_plural "" -"You missed %hu messages from %s because his/her warning level is too high." +msgid "You missed %hu message from %s because his/her warning level is too high." +msgid_plural "You missed %hu messages from %s because his/her warning level is too high." msgstr[0] "�� 廡���廬 %hu ���廣� ��廬 %s ���� 廩廨�廬 ����廨� 廩� �廩��� ����� ���." msgstr[1] "�� 廡���廬 %hu ���廣�廬 ��廬 %s ���� 廩廨�廬 ����廨� 廩� �廩��� ����� ���." #, c-format msgid "You missed %hu message from %s because your warning level is too high." -msgid_plural "" -"You missed %hu messages from %s because your warning level is too high." +msgid_plural "You missed %hu messages from %s because your warning level is too high." msgstr[0] "�� 廡���廬 %hu ���廣� ��廬 %s ���� 廩廨�廬-����廨� 廩�� ����� ���." msgstr[1] "�� 廡���廬 %hu ���廣�廬 ��廬 %s ���� 廩廨�廬-����廨� 廩�� ����� ���." @@ -6591,17 +6242,11 @@ msgstr "�����廨 AIM 廩�� ���� �廬�廬廡." #. The conversion failed! -msgid "" -"[Unable to display a message from this user because it contained invalid " -"characters.]" +msgid "[Unable to display a message from this user because it contained invalid characters.]" msgstr "[�� ��廬� ��廢�� ���廣� ��廩廬�廩 �� ����� 廩��� ����� 廬���� �� ��廡���.]" -msgid "" -"The last action you attempted could not be performed because you are over " -"the rate limit. Please wait 10 seconds and try again." -msgstr "" -"�廚廣��� ���廨��� 廩��廖�廬 ��廢廣 �� �廬�廢廣� ����� 廩�廬� �廚廨�廬 ����廨�廬 廩���廬 ����廣廬 " -"�廩 ����廬 10 廩���廬 ���廖�廬 廩��廬." +msgid "The last action you attempted could not be performed because you are over the rate limit. Please wait 10 seconds and try again." +msgstr "�廚廣��� ���廨��� 廩��廖�廬 ��廢廣 �� �廬�廢廣� ����� 廩�廬� �廚廨�廬 ����廨�廬 廩���廬 ����廣廬 �廩 ����廬 10 廩���廬 ���廖�廬 廩��廬." #, c-format msgid "You have been disconnected from chat room %s." @@ -6654,44 +6299,28 @@ msgstr "�廬廡��� �廡廩� ���廩�廨 ��廩���" #, c-format -msgid "" -"Error 0x%04x: Unable to format username because the requested name differs " -"from the original." -msgstr "" -"廩���� 0x%04x: �� ��廬� �廚廨�� �廬 廩� ��廩廬�廩, ���� 廩廩� ��廩廬�廩 廩��� ��廩� ��廡�廨�." +msgid "Error 0x%04x: Unable to format username because the requested name differs from the original." +msgstr "廩���� 0x%04x: �� ��廬� �廚廨�� �廬 廩� ��廩廬�廩, ���� 廩廩� ��廩廬�廩 廩��� ��廩� ��廡�廨�." #, c-format msgid "Error 0x%04x: Unable to format username because it is invalid." msgstr "廩���� 0x%04x: �� ��廬� �廚廨�� �廬 廩� ��廩廬�廩, ���� 廩廩� ��廩廬�廩 �� 廬廡��." #, c-format -msgid "" -"Error 0x%04x: Unable to format username because the requested name is too " -"long." +msgid "Error 0x%04x: Unable to format username because the requested name is too long." msgstr "廩���� 0x%04x: �� ��廬� �廚廨�� �廬 廩� ��廩廬�廩, ���� 廩廩� ��廩廬�廩 �廨�� ���." #, c-format -msgid "" -"Error 0x%04x: Unable to change email address because there is already a " -"request pending for this username." -msgstr "" -"廩���� 0x%04x: �� ��廬� �廩��廬 �廬 �廬��廬 ����\"� ����� 廩�廩 ��廨 �廡廩� ���� 廣��廨 " -"�廩廬�廩 ��." - -#, c-format -msgid "" -"Error 0x%04x: Unable to change email address because the given address has " -"too many usernames associated with it." -msgstr "" -"廩���� 0x%04x: �� ��廬� �廩��廬 �廬 �廬��廬 ����\"� ����� 廩��廬��廬 ��廬��� ����廖廬 " -"���廬廨 ��� 廩��廬 �廩廬�廩��." - -#, c-format -msgid "" -"Error 0x%04x: Unable to change email address because the given address is " -"invalid." -msgstr "" -"廩���� 0x%04x: �� ��廬� �廩��廬 �廬 �廬��廬 ����\"� ����� 廩��廬��廬 廩��廬�� �� ��廡�廬." +msgid "Error 0x%04x: Unable to change email address because there is already a request pending for this username." +msgstr "廩���� 0x%04x: �� ��廬� �廩��廬 �廬 �廬��廬 ����\"� ����� 廩�廩 ��廨 �廡廩� ���� 廣��廨 �廩廬�廩 ��." + +#, c-format +msgid "Error 0x%04x: Unable to change email address because the given address has too many usernames associated with it." +msgstr "廩���� 0x%04x: �� ��廬� �廩��廬 �廬 �廬��廬 ����\"� ����� 廩��廬��廬 ��廬��� ����廖廬 ���廬廨 ��� 廩��廬 �廩廬�廩��." + +#, c-format +msgid "Error 0x%04x: Unable to change email address because the given address is invalid." +msgstr "廩���� 0x%04x: �� ��廬� �廩��廬 �廬 �廬��廬 ����\"� ����� 廩��廬��廬 廩��廬�� �� ��廡�廬." #, c-format msgid "Error 0x%04x: Unknown error." @@ -6707,28 +6336,18 @@ msgid "Account Info" msgstr "���廣 廣� ��廩���" -msgid "" -"Your IM Image was not sent. You must be Direct Connected to send IM Images." +msgid "Your IM Image was not sent. You must be Direct Connected to send IM Images." msgstr "���廣廬-�廬���� �� �廩���. 廣��� ����廬 ����廨/廬 �廬廡廩�廨廬 �廩�廨� �廩��� 廬����廬." msgid "Unable to set AIM profile." msgstr "��� �廚廩廨�廬 �廡��廣 �廬 廚廨�廚�� �-AIM." -msgid "" -"You have probably requested to set your profile before the login procedure " -"completed. Your profile remains unset; try setting it again when you are " -"fully connected." -msgstr "" -"��� ��廨�� ��廖�廬 �廡��廣 �廬 廚廨�廚�� ��廩廬�廩 廩�� �廚�� 廖��� 廬���� �����廬. �廚廨�廚�� " -"�� �廩廬��; �廩 ��廖�廬 廩��廬 ���廨 廖��� 廬���� �����廬." - -#, c-format -msgid "" -"The maximum profile length of %d byte has been exceeded. It has been " -"truncated for you." -msgid_plural "" -"The maximum profile length of %d bytes has been exceeded. It has been " -"truncated for you." +msgid "You have probably requested to set your profile before the login procedure completed. Your profile remains unset; try setting it again when you are fully connected." +msgstr "��� ��廨�� ��廖�廬 �廡��廣 �廬 廚廨�廚�� ��廩廬�廩 廩�� �廚�� 廖��� 廬���� �����廬. �廚廨�廚�� �� �廩廬��; �廩 ��廖�廬 廩��廬 ���廨 廖��� 廬���� �����廬." + +#, c-format +msgid "The maximum profile length of %d byte has been exceeded. It has been truncated for you." +msgid_plural "The maximum profile length of %d bytes has been exceeded. It has been truncated for you." msgstr[0] "廣�廨廬 �廬 ��廨� �廚廨�廚�� ��廡廖���� 廩� %d ����. �廚廨�廚�� 廡�廢廨 廣��廨�." msgstr[1] "廣�廨廬 �廬 ��廨� �廚廨�廚�� ��廡廖���� 廩� %d ������. �廚廨�廚�� 廡�廢廨 廣��廨�." @@ -6736,12 +6355,8 @@ msgstr "�廚廨�廚�� �廨�� ���." #, c-format -msgid "" -"The maximum away message length of %d byte has been exceeded. It has been " -"truncated for you." -msgid_plural "" -"The maximum away message length of %d bytes has been exceeded. It has been " -"truncated for you." +msgid "The maximum away message length of %d byte has been exceeded. It has been truncated for you." +msgid_plural "The maximum away message length of %d bytes has been exceeded. It has been truncated for you." msgstr[0] "廣�廨廬 �廬 ��廨� ���廣廬 �廨���廡 ��廡廖���� 廩� %d ����. ��� 廡�廢廨 廣��廨�." msgstr[1] "廣�廨廬 �廬 ��廨� ���廣廬 �廨���廡 ��廡廖���� 廩� %d ������. ��� 廡�廢廨 廣��廨�." @@ -6749,35 +6364,21 @@ msgstr "���廣廬 �廨���廡 ����廩� �廨��� ���." #, c-format -msgid "" -"Unable to add the buddy %s because the username is invalid. Usernames must " -"be a valid email address, or start with a letter and contain only letters, " -"numbers and spaces, or contain only numbers." -msgstr "" -"�� ��廬� ���廖�廝 �廬 ���廨 %s ������ 廩廩� ��廩廬�廩 廩�� �� ��廡�. 廩��廬-�廩廬�廩�� " -"���廨��� ����廬 �廬���廬 ������ 廬廡廚�廬, �� �����廚�� ��廬��� ���廬 ������ 廨廡 ��廬��廬, " -"�廖廚廨�� �廨�����, �� �����廚�� ����� 廨廡 �廖廚廨��." +msgid "Unable to add the buddy %s because the username is invalid. Usernames must be a valid email address, or start with a letter and contain only letters, numbers and spaces, or contain only numbers." +msgstr "�� ��廬� ���廖�廝 �廬 ���廨 %s ������ 廩廩� ��廩廬�廩 廩�� �� ��廡�. 廩��廬-�廩廬�廩�� ���廨��� ����廬 �廬���廬 ������ 廬廡廚�廬, �� �����廚�� ��廬��� ���廬 ������ 廨廡 ��廬��廬, �廖廚廨�� �廨�����, �� �����廚�� ����� 廨廡 �廖廚廨��." msgid "Unable to Retrieve Buddy List" msgstr "�� ��廬� �廩��廝 �廬 廨廩��廬 ���廨��" -msgid "" -"The AIM servers were temporarily unable to send your buddy list. Your buddy " -"list is not lost, and will probably become available in a few minutes." -msgstr "" -"廩廨廬� �-AIM ����廬 �� ���� �廩��� �廬 廨廩��廬 ��廩� �廡廩廨 廩��. �廨廩��� �� ����, ���� " -"��廨�� 廬���� ����� ��廡�廬 �廡廨���廬." +msgid "The AIM servers were temporarily unable to send your buddy list. Your buddy list is not lost, and will probably become available in a few minutes." +msgstr "廩廨廬� �-AIM ����廬 �� ���� �廩��� �廬 廨廩��廬 ��廩� �廡廩廨 廩��. �廨廩��� �� ����, ���� ��廨�� 廬���� ����� ��廡�廬 �廡廨���廬." msgid "Orphans" msgstr "�廬����" #, c-format -msgid "" -"Unable to add the buddy %s because you have too many buddies in your buddy " -"list. Please remove one and try again." -msgstr "" -"�� ��廬� ���廖�廝 �廬 %s �廨廩��廬 ���廨�� 廩��, ����� 廩�廩 ��廬廨 ��� ��廨�� �廨廩���. �廩 " -"��廖�廨 ��� ���廖�廬 廩��廬." +msgid "Unable to add the buddy %s because you have too many buddies in your buddy list. Please remove one and try again." +msgstr "�� ��廬� ���廖�廝 �廬 %s �廨廩��廬 ���廨�� 廩��, ����� 廩�廩 ��廬廨 ��� ��廨�� �廨廩���. �廩 ��廖�廨 ��� ���廖�廬 廩��廬." msgid "(no name)" msgstr "(��� 廩�)" @@ -6787,11 +6388,8 @@ msgstr "�� ��廬� ���廖�廝 �廬 ���廨%s �廖��� �� ���廣�." #, c-format -msgid "" -"The user %s has given you permission to add him or her to your buddy list. " -"Do you want to add this user?" -msgstr "" -"��廩廬�廩 %s �廬�廨/� �� ���廖�廝 ��廬�/� �廨廩��廬 ��廩� �廡廩廨 廩��. ��� �廨廢��� ���廖�廚�/�?" +msgid "The user %s has given you permission to add him or her to your buddy list. Do you want to add this user?" +msgstr "��廩廬�廩 %s �廬�廨/� �� ���廖�廝 ��廬�/� �廨廩��廬 ��廩� �廡廩廨 廩��. ��� �廨廢��� ���廖�廚�/�?" msgid "Authorization Given" msgstr "��廨廩�� ��廬��" @@ -6807,8 +6405,7 @@ #. Denied #, c-format msgid "" -"The user %s has denied your request to add them to your buddy list for the " -"following reason:\n" +"The user %s has denied your request to add them to your buddy list for the following reason:\n" "%s" msgstr "" "��廩廬�廩 %s ��� �廬 �廡廩廬� ���廖�廝 ��廬� �廨廩��廬 ��廩� �廡廩廨 廩�� ��廖��� ����:\n" @@ -6837,12 +6434,8 @@ msgid "You have selected to open a Direct IM connection with %s." msgstr "��廨廬 �廚廬�� �廬廡廩�廨廬 �廩�廨� ����廣�廬 廣� %s." -msgid "" -"Because this reveals your IP address, it may be considered a security risk. " -"Do you wish to continue?" -msgstr "" -"�廩�� 廩廚廣��� �� ��廩廚廬 �廬 �廬��廬 �-IP 廩��, �廬�� ���� ����� 廖���� ��������. " -"���廩�� ��� ��廬?" +msgid "Because this reveals your IP address, it may be considered a security risk. Do you wish to continue?" +msgstr "�廩�� 廩廚廣��� �� ��廩廚廬 �廬 �廬��廬 �-IP 廩��, �廬�� ���� ����� 廖���� ��������. ���廩�� ��� ��廬?" msgid "C_onnect" msgstr "�廬��廨" @@ -6887,12 +6480,8 @@ msgid "You are awaiting authorization from the following buddies" msgstr "�廬� ���� ��廨廩�� ���廩� �廡廩廨 ����" -msgid "" -"You can re-request authorization from these buddies by right-clicking on " -"them and selecting \"Re-request Authorization.\"" -msgstr "" -"�廩 ��廚廩廨�廬� ��廡廩 廩�� �廨廩�� ���廩� 廡廩廨 ��� 廣\"� ���廢� ����廬 廣� �廣��廨 廣���� " -"�����廨 \"�廡廩 �廨廩�� 廩��\"." +msgid "You can re-request authorization from these buddies by right-clicking on them and selecting \"Re-request Authorization.\"" +msgstr "�廩 ��廚廩廨�廬� ��廡廩 廩�� �廨廩�� ���廩� 廡廩廨 ��� 廣\"� ���廢� ����廬 廣� �廣��廨 廣���� �����廨 \"�廡廩 �廨廩�� 廩��\"." msgid "Find Buddy by Email" msgstr "�廢� ��廩 廡廩廨 �廚� ���\"�" @@ -6970,13 +6559,8 @@ msgid "%s has just asked to directly connect to %s" msgstr "%s ��廡廩 �廣廬 ��廬��廨 �廩�廨�廬 �� %s" -msgid "" -"This requires a direct connection between the two computers and is necessary " -"for IM Images. Because your IP address will be revealed, this may be " -"considered a privacy risk." -msgstr "" -"�� ��廨廩 ����廨 �廩�廨 ��� 廩�� ���廩���, ����廛 廣��廨 廬����廬 ����廣�廬. ������ 廩�廬��廬 " -"�-IP 廩�� 廬��廩廝, ��廬�� ��� ���廩� �廖���� �廚廨���廬�." +msgid "This requires a direct connection between the two computers and is necessary for IM Images. Because your IP address will be revealed, this may be considered a privacy risk." +msgstr "�� ��廨廩 ����廨 �廩�廨 ��� 廩�� ���廩���, ����廛 廣��廨 廬����廬 ����廣�廬. ������ 廩�廬��廬 �-IP 廩�� 廬��廩廝, ��廬�� ��� ���廩� �廖���� �廚廨���廬�." msgid "Aquarius" msgstr "���" @@ -7734,8 +7318,7 @@ msgstr "�廚廣�� 廩�廨�廬��" #, c-format -msgid "" -"A Sametime administrator has issued the following announcement on server %s" +msgid "A Sametime administrator has issued the following announcement on server %s" msgstr "������廖�廨��廨 Sametime 廩� �廬 ����廣� ���� 廣� �廩廨廬 %s" msgid "Sametime Administrator Announcement" @@ -7776,9 +7359,7 @@ msgstr "廢�廨 廩��廬 �廣��� 廣� ��廩廬�廩" #, c-format -msgid "" -"Please enter a topic for the new conference, and an invitation message to be " -"sent to %s" +msgid "Please enter a topic for the new conference, and an invitation message to be sent to %s" msgstr "�廩 ����� ��廩� 廣��� 廩��廬 ��廣���, ����廣廬 ����� 廩廬�廩�� �� %s" msgid "New Conference" @@ -7797,13 +7378,8 @@ msgstr "���� �廩廬�廩 �� �廣���" #, c-format -msgid "" -"Select a conference from the list below to send an invite to user %s. Select " -"\"Create New Conference\" if you'd like to create a new conference to invite " -"this user to." -msgstr "" -"��廨 廩��廬 �廣��� ��廨廩��� ���� �廩��� ����� ��廩廬�廩 %s.��廨 \"廢�廨 �廣��� ��廩�\" �� " -"�廨廢��� ��廢�廨 �廣��� ��廩� ������ ���� �廩廬�廩 ��." +msgid "Select a conference from the list below to send an invite to user %s. Select \"Create New Conference\" if you'd like to create a new conference to invite this user to." +msgstr "��廨 廩��廬 �廣��� ��廨廩��� ���� �廩��� ����� ��廩廬�廩 %s.��廨 \"廢�廨 �廣��� ��廩�\" �� �廨廢��� ��廢�廨 �廣��� ��廩� ������ ���� �廩廬�廩 ��." msgid "Invite to Conference" msgstr "���� ��廣���" @@ -7821,12 +7397,8 @@ msgstr "�� ��廬� 廩廨廬 廡���� 廩� Sametime" #, c-format -msgid "" -"No host or IP address has been configured for the Meanwhile account %s. " -"Please enter one below to continue logging in." -msgstr "" -"�� ����廨 廩� �� �廬��廬 IP 廣��廨 �廩��� �-Meanwhile %s. �廩 ����� ��廬 ���� ��� " -"���廩�� ����廖� ��廣廨�廬." +msgid "No host or IP address has been configured for the Meanwhile account %s. Please enter one below to continue logging in." +msgstr "�� ����廨 廩� �� �廬��廬 IP 廣��廨 �廩��� �-Meanwhile %s. �廩 ����� ��廬 ���� ��� ���廩�� ����廖� ��廣廨�廬." msgid "Meanwhile Connection Setup" msgstr "���廨�廬 廬廡廩�廨廬 Meanwhile" @@ -7854,12 +7426,8 @@ msgstr "廩� �廩廬�廩 ��-�廩�廣� ����" #, c-format -msgid "" -"The identifier '%s' may possibly refer to any of the following users. Please " -"select the correct user from the list below to add them to your buddy list." -msgstr "" -"����� '%s' ���� ��廬���� �� �� ��� �� ��廩廬�廩�� ����. ��� ��廨/� �廬 ��廩廬�廩����� " -"�� �廨廩��� ��� ���廖�廝 ��廬� �廨廩��廬 ��廩� �廡廩廨 廩��." +msgid "The identifier '%s' may possibly refer to any of the following users. Please select the correct user from the list below to add them to your buddy list." +msgstr "����� '%s' ���� ��廬���� �� �� ��� �� ��廩廬�廩�� ����. ��� ��廨/� �廬 ��廩廬�廩����� �� �廨廩��� ��� ���廖�廝 ��廬� �廨廩��廬 ��廩� �廡廩廨 廩��." msgid "Select User" msgstr "��廨 �廩廬�廩" @@ -7868,12 +7436,8 @@ msgstr "��� �廚廩廨�廬 ���廖�廝 �廩廬�廩: ��廩廬�廩 �� ��廢�" #, c-format -msgid "" -"The identifier '%s' did not match any users in your Sametime community. This " -"entry has been removed from your buddy list." -msgstr "" -"����� '%s' �� 廬��� ��廝 �廩廬�廩 �廡���� �-Sametime 廩��.���� ��廖廨 �廨廩��廬 ��廩� " -"�廡廩廨 廩��." +msgid "The identifier '%s' did not match any users in your Sametime community. This entry has been removed from your buddy list." +msgstr "����� '%s' �� 廬��� ��廝 �廩廬�廩 �廡���� �-Sametime 廩��.���� ��廖廨 �廨廩��廬 ��廩� �廡廩廨 廩��." #, c-format msgid "" @@ -7926,13 +7490,8 @@ msgstr "廬�廢��廬 �廬�� 廨廩��廬 ��廬���廬 廩� Notes" #, c-format -msgid "" -"The identifier '%s' may possibly refer to any of the following Notes Address " -"Book groups. Please select the correct group from the list below to add it " -"to your buddy list." -msgstr "" -"����� '%s' ���� ��廬���� ��� ��� �廡��廢�廬 廖廚廨� ��廬���廬 廩� Notes 廩����.��� ��廨 " -"� �廬 �廡��廢� ������ �廬�� �廨廩��� ��� ���廖�廝 ��廬� �廨廩��廬 ��廩� �廡廩廨 廩��." +msgid "The identifier '%s' may possibly refer to any of the following Notes Address Book groups. Please select the correct group from the list below to add it to your buddy list." +msgstr "����� '%s' ���� ��廬���� ��� ��� �廡��廢�廬 廖廚廨� ��廬���廬 廩� Notes 廩����.��� ��廨 � �廬 �廡��廢� ������ �廬�� �廨廩��� ��� ���廖�廝 ��廬� �廨廩��廬 ��廩� �廡廩廨 廩��." msgid "Select Notes Address Book" msgstr "��廨 廖廚廨 �廬���廬 廩� Notes" @@ -7941,33 +7500,22 @@ msgstr "�� ��廬� ���廖�廝 廡��廢�: �廡��廢� �� ��廢��" #, c-format -msgid "" -"The identifier '%s' did not match any Notes Address Book groups in your " -"Sametime community." +msgid "The identifier '%s' did not match any Notes Address Book groups in your Sametime community." msgstr "����� '%s' �� 廬��� ��廝 廡��廢廬 廖廚廨� ��廬���廬 廩� Notes �廡���� 廩��." msgid "Notes Address Book Group" msgstr "廡��廢� �廖廚廨 �廬���廬 廩� Notes" -msgid "" -"Enter the name of a Notes Address Book group in the field below to add the " -"group and its members to your buddy list." -msgstr "" -"�廩 ����� 廩� 廩�廡��廢� �廖廚廨 �廬���廬 廩� Notes �廩�� ���� 廣�-��廬 ���廖�廝 �廬 �廡��廢� " -"���廨�� �廨廩��廬 ��廩� �廡廩廨 廩��." +msgid "Enter the name of a Notes Address Book group in the field below to add the group and its members to your buddy list." +msgstr "�廩 ����� 廩� 廩�廡��廢� �廖廚廨 �廬���廬 廩� Notes �廩�� ���� 廣�-��廬 ���廖�廝 �廬 �廡��廢� ���廨�� �廨廩��廬 ��廩� �廡廩廨 廩��." #, c-format msgid "Search results for '%s'" msgstr "廬�廢��廬 ��廚�廩 廣��廨 %s" #, c-format -msgid "" -"The identifier '%s' may possibly refer to any of the following users. You " -"may add these users to your buddy list or send them messages with the action " -"buttons below." -msgstr "" -"����� '%s' ���� ��廬���� ��� ��廨 �� ��廩廬�廩�� 廩����. �廩 ��廚廩廨�廬� ���廖�廝 ��廬� " -"�� 廨廩��廬 ��廩� �廡廩廨 廩�� �� �廩��� ��� ���廣�廬 �廣�廨廬 �廚廬�廨� �廚廣��� 廩����." +msgid "The identifier '%s' may possibly refer to any of the following users. You may add these users to your buddy list or send them messages with the action buttons below." +msgstr "����� '%s' ���� ��廬���� ��� ��廨 �� ��廩廬�廩�� 廩����. �廩 ��廚廩廨�廬� ���廖�廝 ��廬� �� 廨廩��廬 ��廩� �廡廩廨 廩�� �� �廩��� ��� ���廣�廬 �廣�廨廬 �廚廬�廨� �廚廣��� 廩����." msgid "Search Results" msgstr "廬�廢��廬 ��廚�廩" @@ -7985,12 +7533,8 @@ msgid "Search for a user" msgstr "��廚�廩 �廩廬�廩" -msgid "" -"Enter a name or partial ID in the field below to search for matching users " -"in your Sametime community." -msgstr "" -"�廩 ����� 廩� �� ���� ��廡� �廩�� ���� ��� ��廚廩 �廩廬�廩�� 廬����� �廡���廬 � Sametime " -"廩��." +msgid "Enter a name or partial ID in the field below to search for matching users in your Sametime community." +msgstr "�廩 ����� 廩� �� ���� ��廡� �廩�� ���� ��� ��廚廩 �廩廬�廩�� 廬����� �廡���廬 � Sametime 廩��." msgid "User Search" msgstr "��廚�廩 �廩廬�廩" @@ -8046,11 +7590,8 @@ msgstr "��廩廬�廩 ��廨��廡 ��廨 �� ���� �廨廩廬" #, c-format -msgid "" -"Key agreement request received from %s. Would you like to perform the key " -"agreement?" -msgstr "" -"�廡廩� ��廖��� 廣� �廚廬��廬 �廬廡��� ��廬 %s. ��� �廨廢��� ��廢廣 �廬 ��廖��� 廣� �廚廬��廬?" +msgid "Key agreement request received from %s. Would you like to perform the key agreement?" +msgstr "�廡廩� ��廖��� 廣� �廚廬��廬 �廬廡��� ��廬 %s. ��� �廨廢��� ��廢廣 �廬 ��廖��� 廣� �廚廬��廬?" #, c-format msgid "" @@ -8096,12 +7637,8 @@ msgid "The %s buddy is not trusted" msgstr "��廩 �廡廩廨 %s ���� ����" -msgid "" -"You cannot receive buddy notifications until you import his/her public key. " -"You can use the Get Public Key command to get the public key." -msgstr "" -"���� ����/� �廡�� �廬廨廣�廬 廣� ��廩 廡廩廨 廣� �廩廨 廬����/� �廬 ��廚廬� �廢���廨� 廩��. " -"��廬� ��廩廬�廩 �廚廡��廬 �廩� �廚廬� 廢���廨� 廣�-��廬 ��廩�� �廬 ��廚廬� �廢���廨�." +msgid "You cannot receive buddy notifications until you import his/her public key. You can use the Get Public Key command to get the public key." +msgstr "���� ����/� �廡�� �廬廨廣�廬 廣� ��廩 廡廩廨 廣� �廩廨 廬����/� �廬 ��廚廬� �廢���廨� 廩��. ��廬� ��廩廬�廩 �廚廡��廬 �廩� �廚廬� 廢���廨� 廣�-��廬 ��廩�� �廬 ��廚廬� �廢���廨�." #. Open file selector to select the public key. msgid "Open..." @@ -8111,12 +7648,8 @@ msgid "The %s buddy is not present in the network" msgstr "��廩廬�廩 %s �� ���� �廨廩廬" -msgid "" -"To add the buddy you must import his/her public key. Press Import to import " -"a public key." -msgstr "" -"���廖�廝 �廬 ��廩 �廡廩廨, 廣��� ����� �廬 ��廚廬� �廢���廨� 廩��.��廬� ����廛 廣� \"����\" " -"����� �廚廬� 廢���廨�." +msgid "To add the buddy you must import his/her public key. Press Import to import a public key." +msgstr "���廖�廝 �廬 ��廩 �廡廩廨, 廣��� ����� �廬 ��廚廬� �廢���廨� 廩��.��廬� ����廛 廣� \"����\" ����� �廚廬� 廢���廨�." msgid "_Import..." msgstr "����..." @@ -8124,19 +7657,11 @@ msgid "Select correct user" msgstr "��廨/� �廩廬�廩 ����" -msgid "" -"More than one user was found with the same public key. Select the correct " -"user from the list to add to the buddy list." -msgstr "" -"��廬廨 ��廩廬�廩 ��� ��廢� 廣� ��廬� �廚廬� 廢���廨�. �廩 ����廨 ��廨廩��� �廬 ��廩廬�廩 ����� " -"���廖�廝 �廨廩��廬 ��廩� �廡廩廨." - -msgid "" -"More than one user was found with the same name. Select the correct user " -"from the list to add to the buddy list." -msgstr "" -"��廬廨 ��廩廬�廩 ��� ��廢� 廣� ��廬� 廩�. �廩 ����廨 ��廨廩��� �廬 ��廩廬�廩 ����� ���廖�廝 " -"�廨廩��廬 ��廩� �廡廩廨." +msgid "More than one user was found with the same public key. Select the correct user from the list to add to the buddy list." +msgstr "��廬廨 ��廩廬�廩 ��� ��廢� 廣� ��廬� �廚廬� 廢���廨�. �廩 ����廨 ��廨廩��� �廬 ��廩廬�廩 ����� ���廖�廝 �廨廩��廬 ��廩� �廡廩廨." + +msgid "More than one user was found with the same name. Select the correct user from the list to add to the buddy list." +msgstr "��廬廨 ��廩廬�廩 ��� ��廢� 廣� ��廬� 廩�. �廩 ����廨 ��廨廩��� �廬 ��廩廬�廩 ����� ���廖�廝 �廨廩��廬 ��廩� �廡廩廨." msgid "Detached" msgstr "���廬廡" @@ -8286,17 +7811,8 @@ msgstr "廨廩��廬 ��廚廬��廬 �廢���廨��� 廩� �廣廨�廛" #, c-format -msgid "" -"Channel authentication is used to secure the channel from unauthorized " -"access. The authentication may be based on passphrase and digital " -"signatures. If passphrase is set, it is required to be able to join. If " -"channel public keys are set then only users whose public keys are listed are " -"able to join." -msgstr "" -"����廬 �廣廨�廛 ��� �廢�廨� ������ �廣廨�廛 ���廩� �� ��廨廩�廬. ��廬�� ������廬 ���� 廣� " -"�廖�廖 廖�廖�� ��廬��� �������廬. �� �廖�廖�� �廡�廣�, ���� �廬廬 ��廬� ��� ��廢�廨廝. �� " -"�廡�廣� �廚廬��廬 廢���廨��� �廣廨�廛, �� 廨廡 �廩廬�廩�� 廩��廚廬� �廢���廨� 廩��� �廨廩��� ����� " -"��廢�廨廝." +msgid "Channel authentication is used to secure the channel from unauthorized access. The authentication may be based on passphrase and digital signatures. If passphrase is set, it is required to be able to join. If channel public keys are set then only users whose public keys are listed are able to join." +msgstr "����廬 �廣廨�廛 ��� �廢�廨� ������ �廣廨�廛 ���廩� �� ��廨廩�廬. ��廬�� ������廬 ���� 廣� �廖�廖 廖�廖�� ��廬��� �������廬. �� �廖�廖�� �廡�廣�, ���� �廬廬 ��廬� ��� ��廢�廨廝. �� �廡�廣� �廚廬��廬 廢���廨��� �廣廨�廛, �� 廨廡 �廩廬�廩�� 廩��廚廬� �廢���廨� 廩��� �廨廩��� ����� ��廢�廨廝." msgid "Channel Authentication" msgstr "����廬 �廣廨�廛" @@ -8360,8 +7876,7 @@ msgstr "廡��廣廬 廖����廬 廣廨�廛" #, c-format -msgid "" -"You have to join the %s channel before you are able to join the private group" +msgid "You have to join the %s channel before you are able to join the private group" msgstr "���� ��廢�廨廝 �廣廨�廛 %s �廚�� �廢�廨廚�廬 �廡��廢� �廚廨��廬" msgid "Join Private Group" @@ -8601,12 +8116,8 @@ msgstr "��廨廩廬 廖�廖��" #, c-format -msgid "" -"Received %s's public key. Your local copy does not match this key. Would you " -"still like to accept this public key?" -msgstr "" -"��廚廬� �廢���廨� 廩� %s �廬廡��. ��廣廬廡 ��廡��� ���� 廬��� ��廚廬� ��. ��� �廨廢��� " -"���廩�� ��廡�� �廬 ��廚廬� �廢���廨�?" +msgid "Received %s's public key. Your local copy does not match this key. Would you still like to accept this public key?" +msgstr "��廚廬� �廢���廨� 廩� %s �廬廡��. ��廣廬廡 ��廡��� ���� 廬��� ��廚廬� ��. ��� �廨廢��� ���廩�� ��廡�� �廬 ��廚廬� �廢���廨�?" #, c-format msgid "Received %s's public key. Would you like to accept this public key?" @@ -8642,8 +8153,7 @@ msgid "Key Exchange failed" msgstr "���廚廬 ��廚廬��廬 ��廩��" -msgid "" -"Resuming detached session failed. Press Reconnect to create new connection." +msgid "Resuming detached session failed. Press Reconnect to create new connection." msgstr "��廩� 廬���� 廚廣��� 廩��廬廡, ��廩�. ��廢/� 廣� ����廨 ���廩 ��廢�廨 ����廨 ��廩." msgid "Performing key exchange" @@ -8716,13 +8226,8 @@ msgid "User Online Status Attributes" msgstr "��廚���� �廢� �廩廬�廩 ���� �����廨" -msgid "" -"You can let other users see your online status information and your personal " -"information. Please fill the information you would like other users to see " -"about yourself." -msgstr "" -"��廬� ��廚廩廨 ��廩廬�廩�� ��廨�� �廨��廬 �廬 �廢� �����廨 廩�� ����廣 ��廩�. �廩 ���� �廬 " -"����廣 廩�廨廢��� ��廚廩廨 ��廩廬�廩�� ��廨�� �廨��廬 廣���." +msgid "You can let other users see your online status information and your personal information. Please fill the information you would like other users to see about yourself." +msgstr "��廬� ��廚廩廨 ��廩廬�廩�� ��廨�� �廨��廬 �廬 �廢� �����廨 廩�� ����廣 ��廩�. �廩 ���� �廬 ����廣 廩�廨廢��� ��廚廩廨 ��廩廬�廩�� ��廨�� �廨��廬 廣���." msgid "Message of the Day" msgstr "����廣� �����" @@ -8841,17 +8346,11 @@ msgid "whowas <nick>: View nick's information" msgstr "whowas <廩� �����>: �廢� ���廣 廣� �廩廬�廩" -msgid "" -"cmode <channel> [+|-<modes>] [arguments]: Change or display " -"channel modes" -msgstr "" -"cmode <廣廨�廛> [+|-<�廢���>] [廚廨��廨��]: 廩�� �� �廢� �廬 �廢�� �廣廨�廛" - -msgid "" -"cumode <channel> +|-<modes> <nick>: Change nick's modes " -"on channel" -msgstr "" -"cumode <廣廨�廛> +|-<�廢���> <廩� �����>: 廩�� �廢�� �廩廬�廩 �廣廨�廛" +msgid "cmode <channel> [+|-<modes>] [arguments]: Change or display channel modes" +msgstr "cmode <廣廨�廛> [+|-<�廢���>] [廚廨��廨��]: 廩�� �� �廢� �廬 �廢�� �廣廨�廛" + +msgid "cumode <channel> +|-<modes> <nick>: Change nick's modes on channel" +msgstr "cumode <廣廨�廛> +|-<�廢���> <廩� �����>: 廩�� �廢�� �廩廬�廩 �廣廨�廛" msgid "umode <usermodes>: Set your modes in the network" msgstr "umode <�廢�� �廩廬�廩>: 廡��廣廬 �廢�� ��廩廬�廩 廩�� �廨廩廬" @@ -8859,12 +8358,8 @@ msgid "oper <nick> [-pubkey]: Get server operator privileges" msgstr "oper <廩� �����> [-pubkey]: �廩� �廨廩��廬 �廚廣�� 廩廨廬" -msgid "" -"invite <channel> [-|+]<nick>: invite nick or add/remove from " -"channel invite list" -msgstr "" -"invite <廣廨�廛> [-|+]<廩� �����>: ���� �廩廬�廩 �� ��廖廝/�廖廨 �廨廩��廬 " -"������廬 廩� �廣廨�廛" +msgid "invite <channel> [-|+]<nick>: invite nick or add/remove from channel invite list" +msgstr "invite <廣廨�廛> [-|+]<廩� �����>: ���� �廩廬�廩 �� ��廖廝/�廖廨 �廨廩��廬 ������廬 廩� �廣廨�廛" msgid "kick <channel> <nick> [comment]: Kick client from channel" msgstr "kick <廣廨�廛> <廩� �����> [�廣廨�]: �廣� �廩廬�廩 �� �廣廨�廛" @@ -8887,12 +8382,8 @@ msgid "users <channel>: List users in channel" msgstr "users <廣廨�廛>: �廢� �廬 廨廩��廬 �廣廨�廢��" -msgid "" -"names [-count|-ops|-halfops|-voices|-normal] <channel(s)>: List " -"specific users in channel(s)" -msgstr "" -"names [-count|-ops|-halfops|-voices|-normal] <廣廨�廢(��)>: �廢� 廨廩��廬 " -"��廩�� �廖�� �廖���� �廣廨�廢(��)" +msgid "names [-count|-ops|-halfops|-voices|-normal] <channel(s)>: List specific users in channel(s)" +msgstr "names [-count|-ops|-halfops|-voices|-normal] <廣廨�廢(��)>: �廢� 廨廩��廬 ��廩�� �廖�� �廖���� �廣廨�廢(��)" #. *< type #. *< ui_requirement @@ -9029,9 +8520,7 @@ msgstr "%s 廩�� ���廣� �� ���� ����. ��� �廨廢��� �廚廬�� �廬 ���� ����?" #, c-format -msgid "" -"%s sent message to whiteboard on %s channel. Would you like to open the " -"whiteboard?" +msgid "%s sent message to whiteboard on %s channel. Would you like to open the whiteboard?" msgstr "%s 廩�� ���廣� �� ���� ���� �廣廨�廛 %s.��� �廨廢��� �廚廬�� �廬 ���� ����?" msgid "Whiteboard" @@ -9220,12 +8709,8 @@ msgstr "���廣廬 �廣廨�廬 廣��廨 %s �-Yahoo!:" #, c-format -msgid "" -"%s has (retroactively) denied your request to add them to your list for the " -"following reason: %s." -msgstr "" -"%s )廨�廨��廡����廬( ��� �廬 �廡廩廬� ���廖�廝 ��廬� �廨廩��廬 ��廩� �廡廩廨 廩��. ��廖��� ����: " -"%s." +msgid "%s has (retroactively) denied your request to add them to your list for the following reason: %s." +msgstr "%s )廨�廨��廡����廬( ��� �廬 �廡廩廬� ���廖�廝 ��廬� �廨廩��廬 ��廩� �廡廩廨 廩��. ��廖��� ����: %s." #, c-format msgid "%s has (retroactively) denied your request to add them to your list." @@ -9239,17 +8724,11 @@ msgstr "�廬廡�� ���廣 廩���" #. security lock from too many failed login attempts -msgid "" -"Account locked: Too many failed login attempts. Logging into the Yahoo! " -"website may fix this." -msgstr "" -"��廩��� �廣��: ��廬廨 ��� ��廖��� �廬��廨�廬 ��廩���. �廬��廨�廬 ��廬廨 Yahoo! ���� 廬廬廡� " -"�廬 ��." +msgid "Account locked: Too many failed login attempts. Logging into the Yahoo! website may fix this." +msgstr "��廩��� �廣��: ��廬廨 ��� ��廖��� �廬��廨�廬 ��廩���. �廬��廨�廬 ��廬廨 Yahoo! ���� 廬廬廡� �廬 ��." #. indicates a lock of some description -msgid "" -"Account locked: Unknown reason. Logging into the Yahoo! website may fix " -"this." +msgid "Account locked: Unknown reason. Logging into the Yahoo! website may fix this." msgstr "��廩��� �廣��: 廖��� �� ���廣�. �廬��廨�廬 ��廬廨 Yahoo! ���� 廬廬廡� �廬 ��." #. username or password missing @@ -9257,24 +8736,15 @@ msgstr "廩� �廩廬�廩 �� 廖�廖�� �廖廨��" #, c-format -msgid "" -"The Yahoo server has requested the use of an unrecognized authentication " -"method. You will probably not be able to successfully sign on to Yahoo. " -"Check %s for updates." -msgstr "" -"��廡廩 廬廢�廨廬 ����廬 �� ���廨廬. 廡廨�� ������ 廩�� 廬��� ��廬��廨 ��廢��� �廩廨廬 �-Yahoo. " -"���廡 �-%s �廣�������." +msgid "The Yahoo server has requested the use of an unrecognized authentication method. You will probably not be able to successfully sign on to Yahoo. Check %s for updates." +msgstr "��廡廩 廬廢�廨廬 ����廬 �� ���廨廬. 廡廨�� ������ 廩�� 廬��� ��廬��廨 ��廢��� �廩廨廬 �-Yahoo. ���廡 �-%s �廣�������." msgid "Failed Yahoo! Authentication" msgstr "��廩��� �����廬 ��� Yahoo!" #, c-format -msgid "" -"You have tried to ignore %s, but the user is on your buddy list. Clicking " -"\"Yes\" will remove and ignore the buddy." -msgstr "" -"��廖�廬 ��廬廣�� �-%s, �� �廩廬�廩 �� ��廢� �廨廩��廬 ��廩� �廡廩廨 廩��. ���廢� 廣� \"��\" " -"廬廖�廨 �廬廬廣�� �� ��廩廬�廩." +msgid "You have tried to ignore %s, but the user is on your buddy list. Clicking \"Yes\" will remove and ignore the buddy." +msgstr "��廖�廬 ��廬廣�� �-%s, �� �廩廬�廩 �� ��廢� �廨廩��廬 ��廩� �廡廩廨 廩��. ���廢� 廣� \"��\" 廬廖�廨 �廬廬廣�� �� ��廩廬�廩." msgid "Ignore buddy?" msgstr "�廬廣�� ��廩廬�廩?" @@ -9393,14 +8863,10 @@ msgid "Yahoo! Profile" msgstr "廚廨�廚�� Yahoo!" -msgid "" -"Sorry, profiles marked as containing adult content are not supported at this " -"time." +msgid "Sorry, profiles marked as containing adult content are not supported at this time." msgstr "廖����, �� 廚廨�廚���� ��廖����� ������� ���廣 �����廨�� ���� �� �廬���� �廨�廣." -msgid "" -"If you wish to view this profile, you will need to visit this link in your " -"web browser:" +msgid "If you wish to view this profile, you will need to visit this link in your web browser:" msgstr "�� �廨廢��� �廨��廬 廚廨�廚�� ��, �廩 ��廩廬�廩 �廡�廩�廨 ��� ��廚�廚� �����廨�� 廩��:" msgid "Yahoo! ID" @@ -9427,32 +8893,21 @@ msgid "Last Update" msgstr "廣���� ���廨���" -msgid "" -"This profile is in a language or format that is not supported at this time." +msgid "This profile is in a language or format that is not supported at this time." msgstr "廚廨�廚�� �� ���� �廩廚� �� 廚�廨�� �廩廨 ���� �廬���� �廨�廣." -msgid "" -"Could not retrieve the user's profile. This most likely is a temporary " -"server-side problem. Please try again later." -msgstr "" -"�� ��廬� �廩��廝 �廬 廚廨�廚�� ��廩廬�廩. ��� ��廨�� ���� 廬廡�� ����廬 �廩廨廬. �廩 ��廖�廬 " -"廩��廬 ����廨 ��廬廨." - -msgid "" -"Could not retrieve the user's profile. This most likely means that the user " -"does not exist; however, Yahoo! sometimes does fail to find a user's " -"profile. If you know that the user exists, please try again later." -msgstr "" -"�� ��廬� �廩��廝 �廬 廚廨�廚�� ��廩廬�廩. ��� ��廨�� �� ���廨 廩��廩廬�廩 �� 廡���; �廨�, " -"�廣�廬�� Yahoo! �� �廢��� ��廢�� 廚廨�廚�� �廩廬�廩. �� �廬/� ����/� 廩��廩廬�廩 廡���, �廖/� " -"廩��廬 ����廨 ��廬廨." +msgid "Could not retrieve the user's profile. This most likely is a temporary server-side problem. Please try again later." +msgstr "�� ��廬� �廩��廝 �廬 廚廨�廚�� ��廩廬�廩. ��� ��廨�� ���� 廬廡�� ����廬 �廩廨廬. �廩 ��廖�廬 廩��廬 ����廨 ��廬廨." + +msgid "Could not retrieve the user's profile. This most likely means that the user does not exist; however, Yahoo! sometimes does fail to find a user's profile. If you know that the user exists, please try again later." +msgstr "�� ��廬� �廩��廝 �廬 廚廨�廚�� ��廩廬�廩. ��� ��廨�� �� ���廨 廩��廩廬�廩 �� 廡���; �廨�, �廣�廬�� Yahoo! �� �廢��� ��廢�� 廚廨�廚�� �廩廬�廩. �� �廬/� ����/� 廩��廩廬�廩 廡���, �廖/� 廩��廬 ����廨 ��廬廨." msgid "The user's profile is empty." msgstr "廚廨�廚�� ��廩廬�廩 廨�廡." -#, fuzzy, c-format +#, c-format msgid "%s has declined to join." -msgstr "%s �廬��廨." +msgstr "%s �� 廨�廢� ��廢�廨廝." msgid "Failed to join chat" msgstr "�� ��廬� ��廢�廨廝 �廩���" @@ -9469,12 +8924,8 @@ msgid "Not available" msgstr "�� ����" -msgid "" -"Unknown error. You may need to logout and wait five minutes before being " -"able to rejoin a chatroom" -msgstr "" -"廩���� �� ���廨廬. 廣��� ��廬�廬廡 �����廬 ���廩 �廡�廬 �廚�� 廩���� �廚廩廨 ��廢�廨廝 廩�� ���廨 " -"廢'��" +msgid "Unknown error. You may need to logout and wait five minutes before being able to rejoin a chatroom" +msgstr "廩���� �� ���廨廬. 廣��� ��廬�廬廡 �����廬 ���廩 �廡�廬 �廚�� 廩���� �廚廩廨 ��廢�廨廝 廩�� ���廨 廢'��" #, c-format msgid "You are now chatting in %s." @@ -9507,9 +8958,7 @@ msgid "Connection problem with the YCHT server" msgstr "廩���� 廣� �����廨 �� 廩廨廬 �-YCHT." -msgid "" -"(There was an error converting this message.\t Check the 'Encoding' option " -"in the Account Editor)" +msgid "(There was an error converting this message.\t Check the 'Encoding' option in the Account Editor)" msgstr "(���廬� 廩���� ���廨廬 ����廣�.\t ���廡 �廬 ���廨�廬 �'廡����' �廣�廨� ��廩����廬)" #, c-format @@ -9557,29 +9006,17 @@ msgid "sub <class> <instance> <recipient>: Join a new chat" msgstr "sub <���廡�> <�廩�廬> <��廣�>: �廢�廨廝 �廢'�� ��廩" -msgid "" -"zi <instance>: Send a message to <message,<i>instance</i>,*>" +msgid "zi <instance>: Send a message to <message,<i>instance</i>,*>" msgstr "zi <�廩�廬>: 廩�� ���廣� �-<���廣�, <i>�廩�廬</i>,*>" -msgid "" -"zci <class> <instance>: Send a message to <<i>class</i>," -"<i>instance</i>,*>" -msgstr "" -"zci <���廡�> <�廩�廬>: 廩�� ���廣� �-<<i>���廡�</i>,<i>�廩�廬</i>*>" - -msgid "" -"zcir <class> <instance> <recipient>: Send a message to <" -"<i>class</i>,<i>instance</i>,<i>recipient</i>>" -msgstr "" -"zcir <���廡�> <�廩�廬> <��廣�>: 廩�� ���廣� �� <<i>���廡�</i>," -"<i>�廩�廬</i>,<i>��廣�</i>>" - -msgid "" -"zir <instance> <recipient>: Send a message to <MESSAGE," -"<i>instance</i>,<i>recipient</i>>" -msgstr "" -"zir <�廩�廬> <��廣�>: 廩�� ���廣� �� <���廣�,<i>�廩�廬</i>,<i>��廣�</" -"i>>" +msgid "zci <class> <instance>: Send a message to <<i>class</i>,<i>instance</i>,*>" +msgstr "zci <���廡�> <�廩�廬>: 廩�� ���廣� �-<<i>���廡�</i>,<i>�廩�廬</i>*>" + +msgid "zcir <class> <instance> <recipient>: Send a message to <<i>class</i>,<i>instance</i>,<i>recipient</i>>" +msgstr "zcir <���廡�> <�廩�廬> <��廣�>: 廩�� ���廣� �� <<i>���廡�</i>,<i>�廩�廬</i>,<i>��廣�</i>>" + +msgid "zir <instance> <recipient>: Send a message to <MESSAGE,<i>instance</i>,<i>recipient</i>>" +msgstr "zir <�廩�廬> <��廣�>: 廩�� ���廣� �� <���廣�,<i>�廩�廬</i>,<i>��廣�</i>>" msgid "zc <class>: Send a message to <<i>class</i>,PERSONAL,*>" msgstr "zc <���廡�>: 廩�� ���廣� �� <<i>���廡�</i>,��廩�,*>" @@ -9825,12 +9262,8 @@ msgstr "廩���� �廡廨��� �廬�� %s: ��廨� ��廩�� �廨�� ��� (����� 廣� %d ����)" #, c-format -msgid "" -"Unable to allocate enough memory to hold the contents from %s. The web " -"server may be trying something malicious." -msgstr "" -"�� ��廬� ��廡廢�廬 �廖廚�廡 ���廨�� �����廡 �廬 �廬��� �-%s. 廩廨廬 ��廬廨 ���� ��廖� �廣廩�廬 " -"�廩�� ���廡." +msgid "Unable to allocate enough memory to hold the contents from %s. The web server may be trying something malicious." +msgstr "�� ��廬� ��廡廢�廬 �廖廚�廡 ���廨�� �����廡 �廬 �廬��� �-%s. 廩廨廬 ��廬廨 ���� ��廖� �廣廩�廬 �廩�� ���廡." #, c-format msgid "Error reading from %s: %s" @@ -9882,11 +9315,8 @@ msgstr "廩���� �廡廨��廬 %s" #, c-format -msgid "" -"An error was encountered reading your %s. The file has not been loaded, and " -"the old file has been renamed to %s~." -msgstr "" -"��� 廩���� �廣廬 廡廨��廬 �-%s 廩��. �廡��廛 �� ��廣�, �廩� ����廛 ��廩� 廩��� �-%s~." +msgid "An error was encountered reading your %s. The file has not been loaded, and the old file has been renamed to %s~." +msgstr "��� 廩���� �廣廬 廡廨��廬 �-%s 廩��. �廡��廛 �� ��廣�, �廩� ����廛 ��廩� 廩��� �-%s~." msgid "Internet Messenger" msgstr "��廖廨�� �����廨��" @@ -10006,38 +9436,24 @@ msgid "" "<span size='larger' weight='bold'>Welcome to %s!</span>\n" "\n" -"You have no IM accounts configured. To start connecting with %s press the " -"<b>Add...</b> button below and configure your first account. If you want %s " -"to connect to multiple IM accounts, press <b>Add...</b> again to configure " -"them all.\n" +"You have no IM accounts configured. To start connecting with %s press the <b>Add...</b> button below and configure your first account. If you want %s to connect to multiple IM accounts, press <b>Add...</b> again to configure them all.\n" "\n" -"You can come back to this window to add, edit, or remove accounts from " -"<b>Accounts->Manage Accounts</b> in the Buddy List window" +"You can come back to this window to add, edit, or remove accounts from <b>Accounts->Manage Accounts</b> in the Buddy List window" msgstr "" "<span size='larger' weight='bold'>�廨���� ����� ��%s!</span>\n" "\n" -"��� �廨廩�廬� 廩� �廩����廬 ����廨��. 廣� ��廬 ��廬��廨 廣� %s �廩 ����廛 廣� ��廚廬�廨 " -"<b>��廖廝...</b> 廩���� �����廨 �廬 �廩���� �廨�廩��. �� �廨廢��� 廩-%s �廬��廨 ���� " -"�廩����廬, �廩 ����廛 廣� <b>��廖廝...</b> 廩�� 廣� ��廬 �����廨 �廬 ����.\n" +"��� �廨廩�廬� 廩� �廩����廬 ����廨��. 廣� ��廬 ��廬��廨 廣� %s �廩 ����廛 廣� ��廚廬�廨 <b>��廖廝...</b> 廩���� �����廨 �廬 �廩���� �廨�廩��. �� �廨廢��� 廩-%s �廬��廨 ���� �廩����廬, �廩 ����廛 廣� <b>��廖廝...</b> 廩�� 廣� ��廬 �����廨 �廬 ����.\n" "\n" -"��廬� �� ����廨 ����� �� 廣� ��廬 ���廖�廝, �廣廨��, �� ��廖�廨 �廩����廬 廣�-��� " -"<b>�廩����廬->��� �廩����廬</b> 廩����� 廨廩��廬 ���廨��" +"��廬� �� ����廨 ����� �� 廣� ��廬 ���廖�廝, �廣廨��, �� ��廖�廨 �廩����廬 廣�-��� <b>�廩����廬->��� �廩����廬</b> 廩����� 廨廩��廬 ���廨��" #, c-format msgid "You have %d contact named %s. Would you like to merge them?" -msgid_plural "" -"You currently have %d contacts named %s. Would you like to merge them?" +msgid_plural "You currently have %d contacts named %s. Would you like to merge them?" msgstr[0] "�廩 �� %d ��廩-廡廩廨 �廩� %s. ��� �廨廢��� ���� ��廬�?" msgstr[1] "�廩 �� �廣廬 %d ��廩�-廡廩廨 �廩� %s. ��� �廨廢��� ���� ��廬�?" -msgid "" -"Merging these contacts will cause them to share a single entry on the buddy " -"list and use a single conversation window. You can separate them again by " -"choosing 'Expand' from the contact's context menu" -msgstr "" -"����� ��廩�-廡廩廨 ��� ��廨�� ��� ����廬 廬�廬 廚廨�� ���� �廨廩��廬 ��廩� �廡廩廨, ���廩廬�廩 " -"����� 廩��� ����. ��廬� ��廚廨�� ��廬� ��\"� 廣� ��� ���廨廬 '�廨��' ��廬廚廨�� 廣��廨 ��廩 " -"�廡廩廨" +msgid "Merging these contacts will cause them to share a single entry on the buddy list and use a single conversation window. You can separate them again by choosing 'Expand' from the contact's context menu" +msgstr "����� ��廩�-廡廩廨 ��� ��廨�� ��� ����廬 廬�廬 廚廨�� ���� �廨廩��廬 ��廩� �廡廩廨, ���廩廬�廩 ����� 廩��� ����. ��廬� ��廚廨�� ��廬� ��\"� 廣� ��� ���廨廬 '�廨��' ��廬廚廨�� 廣��廨 ��廩 �廡廩廨" msgid "Please update the necessary fields." msgstr "�廩 �廣��� �廬 �廩��廬 ����廢��." @@ -10045,9 +9461,7 @@ msgid "A_ccount" msgstr "�_廩���" -msgid "" -"Please enter the appropriate information about the chat you would like to " -"join.\n" +msgid "Please enter the appropriate information about the chat you would like to join.\n" msgstr "�廩 ����� �廬 ����廣 ��廬��� 廣� �廢'�� 廩�廨廢��� ��廢�廨廝 ����.\n" msgid "Room _List" @@ -10138,8 +9552,7 @@ msgid "/Tools/Mute Sounds" msgstr "/����/�廩廬廡 廢�����" -msgid "" -"You are not currently signed on with an account that can add that buddy." +msgid "You are not currently signed on with an account that can add that buddy." msgstr "���� ����廨/廬 �廨�廣 廣� ��廩��� 廩�廖��� ���廖�廝 ��廩 廡廩廨 ��." #. I don't believe this can happen currently, I think @@ -10368,8 +9781,7 @@ #, c-format msgid "%d account was disabled because you signed on from another location:" -msgid_plural "" -"%d accounts were disabled because you signed on from another location:" +msgid_plural "%d accounts were disabled because you signed on from another location:" msgstr[0] "�廩��� %d 廖��� ���-廚廣�� �� �廬��廨廬 ���廡�� ��廖廝:" msgstr[1] "%d �廩����廬 廖���� ���-廚廣���� �� �廬��廨廬 ���廡�� ��廖廝:" @@ -10390,15 +9802,11 @@ msgid "" "<span weight='bold' size='larger'>Welcome to %s!</span>\n" "\n" -"You have no accounts enabled. Enable your IM accounts from the <b>Accounts</" -"b> window at <b>Accounts->Manage Accounts</b>. Once you enable accounts, " -"you'll be able to sign on, set your status, and talk to your friends." +"You have no accounts enabled. Enable your IM accounts from the <b>Accounts</b> window at <b>Accounts->Manage Accounts</b>. Once you enable accounts, you'll be able to sign on, set your status, and talk to your friends." msgstr "" "<span weight='bold' size='larger'>�廨���� ����� �-%s!</span>\n" "\n" -"��� �廨廩�廬� �廩����廬 ��廚廣���. ��廬� ��廚廣�� �廬 ��廩����廬 廩�� �廬�� ���� " -"<b>�廩����廬</b> �廨� <b>�廩����廬->���</b>. �廨�廣 廩���� �廩����廬 廚廣����, 廬��� �� " -"�廚廩廨�廬 ��廬��廨, �廡��廣 �廬 ��廢� 廩��, ����廨 廣� ��廨��." +"��� �廨廩�廬� �廩����廬 ��廚廣���. ��廬� ��廚廣�� �廬 ��廩����廬 廩�� �廬�� ���� <b>�廩����廬</b> �廨� <b>�廩����廬->���</b>. �廨�廣 廩���� �廩����廬 廚廣����, 廬��� �� �廚廩廨�廬 ��廬��廨, �廡��廣 �廬 ��廢� 廩��, ����廨 廣� ��廨��." #. set the Show Offline Buddies option. must be done #. * after the treeview or faceprint gets mad. -Robot101 @@ -10433,16 +9841,11 @@ msgid "This protocol does not support chat rooms." msgstr "廚廨���廡�� �� ���� 廬��� ���廨� 廢'��" -msgid "" -"You are not currently signed on with any protocols that have the ability to " -"chat." +msgid "You are not currently signed on with any protocols that have the ability to chat." msgstr "���� ����廨/廬 �廚廨���廡�� ��廩�� ���廚廩廨 廩���廩 �廢'��." -msgid "" -"Please enter an alias, and the appropriate information about the chat you " -"would like to add to your buddy list.\n" -msgstr "" -"�廩 ����� 廩� ��廖廝, ����廣 �廬��� 廣� �廢'�� 廩�廨廢��� ���廖�廝 �廨廩��廬 ��廩� �廡廩廨 廩��.\n" +msgid "Please enter an alias, and the appropriate information about the chat you would like to add to your buddy list.\n" +msgstr "�廩 ����� 廩� ��廖廝, ����廣 �廬��� 廣� �廢'�� 廩�廨廢��� ���廖�廝 �廨廩��廬 ��廩� �廡廩廨 廩��.\n" msgid "A_lias:" msgstr "廩�:" @@ -10567,9 +9970,7 @@ msgid "Message (Nick Said) Text" msgstr "�廡廖� ���廣�廬 (��廩�� ��廨)" -msgid "" -"The text information for when a chat has an unread message that mentions " -"your nick" +msgid "The text information for when a chat has an unread message that mentions your nick" msgstr "�廡廖� ��廢�� �廩廢'�� ���� ���廣� 廩��-�廡廨�� 廩����廨� �廬 ������ 廩��" msgid "The text information for a buddy's status" @@ -10588,8 +9989,7 @@ msgid "That buddy is not on the same protocol as this chat." msgstr "��廩 廡廩廨 �� ���� ���廬� 廚廨���廡�� 廩� 廢'�� ��" -msgid "" -"You are not currently signed on with an account that can invite that buddy." +msgid "You are not currently signed on with an account that can invite that buddy." msgstr "���� ����廨/廬 ��廩��� 廩���� ������ �廬 ��廩 �廡廩廨 ���." msgid "Invite Buddy Into Chat Room" @@ -11211,45 +10611,19 @@ msgstr "����廬 %s" #, c-format -msgid "" -"%s is a graphical modular messaging client based on libpurple which is " -"capable of connecting to AIM, MSN, Yahoo!, XMPP, ICQ, IRC, SILC, SIP/SIMPLE, " -"Novell GroupWise, Lotus Sametime, Bonjour, Zephyr, MySpaceIM, Gadu-Gadu, and " -"QQ all at once. It is written using GTK+.<BR><BR>You may modify and " -"redistribute the program under the terms of the GPL (version 2 or later). A " -"copy of the GPL is contained in the 'COPYING' file distributed with %s. %s " -"is copyrighted by its contributors. See the 'COPYRIGHT' file for the " -"complete list of contributors. We provide no warranty for this program." -"<BR><BR>" -msgstr "" -"%s ���� 廬���廬 廩���廬 ���廣�廬 ������廬 �廨廚�廬 �����廨�廬 ���廖廖廬 libpurple �廩廨 ��廢廣 " -"����廨�� �� AIM, MSN, Yahoo!, XMPP, ICQ, IRC, SILC, SIP/SIMPLE, Novel " -"GroupWise, Lotus Sametime, Bonjour, Zephyr, MySpaceIM, Gadu-Gadu, QQ ������ " -"��- ����廬. �廬���� ��廬�� �廣�廨廬 GTK+.<BR><BR>��廬廨 �廣廨�� 廩������ ���廚�廛 �廬 " -"�廬���� 廬�廬 �����廬 廨�廩��� �GPL (�廨廖� 2 �����). ��廬廨). �廣廬廡 廩� �-GPL ���� �廬�� " -"�廡��廛 'COPYING' ���廚廛 廣� %s. %s ��� 廬�廬 �����廬 ��廚廬��� ��廬�廨��� �廚�廬��. 廨�� " -"�廬 �廡��廛 'COPYRIGHT' �廨廩��� ���� 廩� �廬�廨���. ����� �廖廚廡�� 廩�� ��廨��廬 �廬���� " -"��.<BR><BR>" - -#, c-format -msgid "" -"<FONT SIZE=\"4\">FAQ:</FONT> <A HREF=\"http://developer.pidgin.im/wiki/FAQ" -"\">http://developer.pidgin.im/wiki/FAQ</A><BR/><BR/>" -msgstr "" -"<FONT SIZE=\"4\">廩�\"廬:</FONT> <A HREF=\"http://developer.pidgin.im/wiki/FAQ" -"\">http://developer.pidgin.im/wiki/FAQ</A><BR/><BR/>" - -#, c-format -msgid "" -"<FONT SIZE=\"4\">Help via e-mail:</FONT> <A HREF=\"mailto:support@pidgin.im" -"\">support@pidgin.im</A><BR/><BR/>" -msgstr "" -"<FONT SIZE=\"4\">廣�廨� �廨� �������:</FONT> <A HREF=\"mailto:support@pidgin.im" -"\">support@pidgin.im</A><BR/><BR/>" - -#, c-format -msgid "" -"<FONT SIZE=\"4\">IRC Channel:</FONT> #pidgin on irc.freenode.net<BR><BR>" +msgid "%s is a graphical modular messaging client based on libpurple which is capable of connecting to AIM, MSN, Yahoo!, XMPP, ICQ, IRC, SILC, SIP/SIMPLE, Novell GroupWise, Lotus Sametime, Bonjour, Zephyr, MySpaceIM, Gadu-Gadu, and QQ all at once. It is written using GTK+.<BR><BR>You may modify and redistribute the program under the terms of the GPL (version 2 or later). A copy of the GPL is contained in the 'COPYING' file distributed with %s. %s is copyrighted by its contributors. See the 'COPYRIGHT' file for the complete list of contributors. We provide no warranty for this program.<BR><BR>" +msgstr "%s ���� 廬���廬 廩���廬 ���廣�廬 ������廬 �廨廚�廬 �����廨�廬 ���廖廖廬 libpurple �廩廨 ��廢廣 ����廨�� �� AIM, MSN, Yahoo!, XMPP, ICQ, IRC, SILC, SIP/SIMPLE, Novel GroupWise, Lotus Sametime, Bonjour, Zephyr, MySpaceIM, Gadu-Gadu, QQ ������ ��- ����廬. �廬���� ��廬�� �廣�廨廬 GTK+.<BR><BR>��廬廨 �廣廨�� 廩������ ���廚�廛 �廬 �廬���� 廬�廬 �����廬 廨�廩��� �GPL (�廨廖� 2 �����). ��廬廨). �廣廬廡 廩� �-GPL ���� �廬�� �廡��廛 'COPYING' ���廚廛 廣� %s. %s ��� 廬�廬 �����廬 ��廚廬��� ��廬�廨��� �廚�廬��. 廨�� �廬 �廡��廛 'COPYRIGHT' �廨廩��� ���� 廩� �廬�廨���. ����� �廖廚廡�� 廩�� ��廨��廬 �廬���� ��.<BR><BR>" + +#, c-format +msgid "<FONT SIZE=\"4\">FAQ:</FONT> <A HREF=\"http://developer.pidgin.im/wiki/FAQ\">http://developer.pidgin.im/wiki/FAQ</A><BR/><BR/>" +msgstr "<FONT SIZE=\"4\">廩�\"廬:</FONT> <A HREF=\"http://developer.pidgin.im/wiki/FAQ\">http://developer.pidgin.im/wiki/FAQ</A><BR/><BR/>" + +#, c-format +msgid "<FONT SIZE=\"4\">Help via e-mail:</FONT> <A HREF=\"mailto:support@pidgin.im\">support@pidgin.im</A><BR/><BR/>" +msgstr "<FONT SIZE=\"4\">廣�廨� �廨� �������:</FONT> <A HREF=\"mailto:support@pidgin.im\">support@pidgin.im</A><BR/><BR/>" + +#, c-format +msgid "<FONT SIZE=\"4\">IRC Channel:</FONT> #pidgin on irc.freenode.net<BR><BR>" msgstr "<FONT SIZE=\"4\">廣廨�廛 IRC:</FONT> #pidgin 廣� irc.freenode.net<BR><BR>" #, c-format @@ -11286,9 +10660,7 @@ msgid "Get User Info" msgstr "���廣 ���� 廣� ��廩廬�廩" -msgid "" -"Please enter the username or alias of the person whose info you would like " -"to view." +msgid "Please enter the username or alias of the person whose info you would like to view." msgstr "�廩 ����� �廬 廩� ��廩廬�廩 �� ������ 廩� ���� 廣��� 廬廨廢� �廡廨�� ���廣." msgid "View User Log" @@ -11314,18 +10686,10 @@ msgstr "��� 廩� ��廖廝 �廩��� ��." #, c-format -msgid "" -"You are about to remove the contact containing %s and %d other buddy from " -"your buddy list. Do you want to continue?" -msgid_plural "" -"You are about to remove the contact containing %s and %d other buddies from " -"your buddy list. Do you want to continue?" -msgstr[0] "" -"��� �廨廢��� ���廩�� ���廖�廨 �廬 ��廩 �廡廩廨 ����� �廬 %s �廣�� %d ��廩 廡廩廨 ��廨 �廬��� " -"�廬�� 廨廩��廬 ��廩� �廡廩廨 廩��?" -msgstr[1] "" -"��� �廨廢��� ���廩�� ���廖�廨 �廬 ��廩 �廡廩廨 ����� �廬 %s �廣�� %d ��廩� 廡廩廨 ��廨�� " -"�廬��� �廬�� 廨廩��廬 ��廩� �廡廩廨 廩��?" +msgid "You are about to remove the contact containing %s and %d other buddy from your buddy list. Do you want to continue?" +msgid_plural "You are about to remove the contact containing %s and %d other buddies from your buddy list. Do you want to continue?" +msgstr[0] "��� �廨廢��� ���廩�� ���廖�廨 �廬 ��廩 �廡廩廨 ����� �廬 %s �廣�� %d ��廩 廡廩廨 ��廨 �廬��� �廬�� 廨廩��廬 ��廩� �廡廩廨 廩��?" +msgstr[1] "��� �廨廢��� ���廩�� ���廖�廨 �廬 ��廩 �廡廩廨 ����� �廬 %s �廣�� %d ��廩� 廡廩廨 ��廨�� �廬��� �廬�� 廨廩��廬 ��廩� �廡廩廨 廩��?" msgid "Remove Contact" msgstr "�廖廨 ��廩 廡廩廨" @@ -11334,9 +10698,7 @@ msgstr "�_廖廨 ��廩 廡廩廨" #, c-format -msgid "" -"You are about to merge the group called %s into the group called %s. Do you " -"want to continue?" +msgid "You are about to merge the group called %s into the group called %s. Do you want to continue?" msgstr "��� ��� ����/� 廩�廨廢��� ���� �廬 �廡��廢� %s �廬�� �廡��廢� %s?" msgid "Merge Groups" @@ -11346,9 +10708,7 @@ msgstr "��� 廡��廢�廬" #, c-format -msgid "" -"You are about to remove the group %s and all its members from your buddy " -"list. Do you want to continue?" +msgid "You are about to remove the group %s and all its members from your buddy list. Do you want to continue?" msgstr "��� �廨廢��� ���廩�� ���廖�廨 �廬 �廡��廢� %s ��� ��廨�� �廨廩��廬 ��廩� �廡廩廨 廩��?" msgid "Remove Group" @@ -11358,8 +10718,7 @@ msgstr "�廖廨 _廡��廢�" #, c-format -msgid "" -"You are about to remove %s from your buddy list. Do you want to continue?" +msgid "You are about to remove %s from your buddy list. Do you want to continue?" msgstr "��� �廨廢��� ���廩�� ���廖�廨 �廬 %s �廨廩��廬 ��廩� �廡廩廨 廩��?" msgid "Remove Buddy" @@ -11369,9 +10728,7 @@ msgstr "�廖廨 ��廩 廡廩廨" #, c-format -msgid "" -"You are about to remove the chat %s from your buddy list. Do you want to " -"continue?" +msgid "You are about to remove the chat %s from your buddy list. Do you want to continue?" msgstr "��� �廨廢��� ���廩�� ���廖�廨 �廬 �廢'�� %s �廨廩��廬 ��廩� �廡廩廨 廩��?" msgid "Remove Chat" @@ -11471,14 +10828,6 @@ msgid "File transfer _details" msgstr "廚廨�� �廣�廨�廬 廡�廢��" -#. Pause button -msgid "_Pause" -msgstr "�廩����" - -#. Resume button -msgid "_Resume" -msgstr "�_�廩�" - msgid "Paste as Plain _Text" msgstr "���廡 �廬�廨 _�廡廖� 廨���" @@ -11619,9 +10968,7 @@ msgid "_Description" msgstr "_廬���廨" -msgid "" -"Please enter the URL and description of the link that you want to insert. " -"The description is optional." +msgid "Please enter the URL and description of the link that you want to insert. The description is optional." msgstr "�廩 ����� �廬��廬 �廬���廨 廣��廨 �廡�廩�廨 �廨廢��� �����廖. �� ���� ����� 廬���廨." msgid "Please enter the URL of the link that you want to insert." @@ -11751,21 +11098,15 @@ msgstr "�廩 ����廡 �廨廩��廬 ���廖�廬 �廩��廬." #, c-format -msgid "" -"Are you sure you want to permanently delete the log of the conversation with " -"%s which started at %s?" +msgid "Are you sure you want to permanently delete the log of the conversation with %s which started at %s?" msgstr "��� �廨廢��� ����廡 �廬 廨�廩�� �廩��� 廣� %s 廩�廬��廬 �- %s?" #, c-format -msgid "" -"Are you sure you want to permanently delete the log of the conversation in %" -"s which started at %s?" +msgid "Are you sure you want to permanently delete the log of the conversation in %s which started at %s?" msgstr "��� �廨廢��� ����廡 �廬 廨�廩�� �廩��� �- %s 廩�廬��� �- %s?" #, c-format -msgid "" -"Are you sure you want to permanently delete the system log which started at %" -"s?" +msgid "Are you sure you want to permanently delete the system log which started at %s?" msgstr "��� �廨廢��� ����廡 �廬 廨�廩�� ���� ��廣廨�廬 廩��� �- %s?" msgid "Delete Log?" @@ -11873,8 +11214,7 @@ "廣� ��� ����� ��� ��廬廨:\n" "%ssimpleticket/\n" "\n" -"�廩 �廚廨� ����廡 �� 廣廩�廬 ���� ��廚���, ��廩��� �廬 ���廣�廬 �-backtrace ��廡��廛 " -"core.\n" +"�廩 �廚廨� ����廡 �� 廣廩�廬 ���� ��廚���, ��廩��� �廬 ���廣�廬 �-backtrace ��廡��廛 core.\n" "�� ���� ���廣/廬 ���廢�� �廬 �-backtrace, ��� 廡廨� �廬 ���廨��廬 �:\n" "%swiki/GetABacktrace\n" @@ -11904,6 +11244,12 @@ msgid "%s wishes to start a video session with you." msgstr "�廬廡��� �廡廩� ��廬 %s ��廬��� �廬廡廩廨�廬 ����� ��廬�." +msgid "Incoming Call" +msgstr "廩��� ���廖廬" + +msgid "_Pause" +msgstr "�廩����" + #, c-format msgid "%s has %d new message." msgid_plural "%s has %d new messages." @@ -11927,8 +11273,7 @@ msgid "Error launching \"%s\": %s" msgstr "廩���� ��廚廣�廬 �廚廡��� \"%s\": %s" -msgid "" -"The 'Manual' browser command has been chosen, but no command has been set." +msgid "The 'Manual' browser command has been chosen, but no command has been set." msgstr "���廨� ���廢�廣 �廚廡��� '�����廬' 廩� ��廚�廚�, ��� �� �廡�廣� ��廨�� ���廢�廣." msgid "No message" @@ -11961,9 +11306,7 @@ msgid "Could not unload plugin" msgstr "�� ��廬� ��廚廖�廡 �廬 廚廣��廬 �廬�廖廝" -msgid "" -"The plugin could not be unloaded now, but will be disabled at the next " -"startup." +msgid "The plugin could not be unloaded now, but will be disabled at the next startup." msgstr "�� ��廬� ����廬 �廬 �廬�廖廝 �廨�廣, ��� ��� ����� ��廚廣�� ���� 廩� �廬����." #, c-format @@ -12127,12 +11470,8 @@ msgid "Install Theme" msgstr "�廬廡� 廣�廢��" -msgid "" -"Select a smiley theme that you would like to use from the list below. New " -"themes can be installed by dragging and dropping them onto the theme list." -msgstr "" -"��廨 廣廨�廬 ������� �廨廩��� ����. 廣廨��廬 ��廩�廬 ��廬� ��廬廡�� 廣\"� �廨�廨廬� 廣� 廨廩��廬 " -"�廣廨��廬." +msgid "Select a smiley theme that you would like to use from the list below. New themes can be installed by dragging and dropping them onto the theme list." +msgstr "��廨 廣廨�廬 ������� �廨廩��� ����. 廣廨��廬 ��廩�廬 ��廬� ��廬廡�� 廣\"� �廨�廨廬� 廣� 廨廩��廬 �廣廨��廬." msgid "Icon" msgstr "廖��" @@ -12245,12 +11584,8 @@ msgid "Default Formatting" msgstr "廚�廨�� �廨�廨廬 �����" -msgid "" -"This is how your outgoing message text will appear when you use protocols " -"that support formatting." -msgstr "" -"��� ��廨�� ��廡廖� 廩� ���廣�廬 ��廢��廬 ��廩廨 廬廩廬�廩/� �廚廨���廡���� 廩廬����� �廚�廨��� " -"�廡廖�." +msgid "This is how your outgoing message text will appear when you use protocols that support formatting." +msgstr "��� ��廨�� ��廡廖� 廩� ���廣�廬 ��廢��廬 ��廩廨 廬廩廬�廩/� �廚廨���廡���� 廩廬����� �廚�廨��� �廡廖�." msgid "Cannot start proxy configuration program." msgstr "�� ���� ��廚廣�� �廬 廬���廬 ���廨廬 廩廨廬 �廬����." @@ -12631,8 +11966,7 @@ msgstr "�廢� 廣��廨 %s" #, c-format -msgid "" -"A custom smiley for '%s' already exists. Please use a different shortcut." +msgid "A custom smiley for '%s' already exists. Please use a different shortcut." msgstr "��廨 廡��� ����� �廩�� 廣��廨 '%s'. �廩 ��廖�廬 廡�廢�廨-�廨� ��廨." msgid "Custom Smiley" @@ -12699,20 +12033,14 @@ msgstr "�� ��廬� �廩��� �廬 �廖廚廨�� %s." #, c-format -msgid "" -"%s cannot transfer a folder. You will need to send the files within " -"individually." +msgid "%s cannot transfer a folder. You will need to send the files within individually." msgstr "%s �� ���� ��廣��廨 廖廚廨��. 廬���廢/� �廩��� �廬 �廡�廢�� �廬�� �廖廚廨�� ���-���." msgid "You have dragged an image" msgstr "�廨廨廬 廬����" -msgid "" -"You can send this image as a file transfer, embed it into this message, or " -"use it as the buddy icon for this user." -msgstr "" -"��廬� �廩��� 廬���� �� �廡��廛 ��廣�廨, �廩�� ��廬� ����廣� ��, �� ��廩廬�廩 �� �廬�廨 廖�� " -"廣��廨 ��廩 �廡廩廨 ���." +msgid "You can send this image as a file transfer, embed it into this message, or use it as the buddy icon for this user." +msgstr "��廬� �廩��� 廬���� �� �廡��廛 ��廣�廨, �廩�� ��廬� ����廣� ��, �� ��廩廬�廩 �� �廬�廨 廖�� 廣��廨 ��廩 �廡廩廨 ���." msgid "Set as buddy icon" msgstr "廡�廣 ����廬 廖�� ��廩 �廡廩廨" @@ -12726,14 +12054,10 @@ msgid "Would you like to set it as the buddy icon for this user?" msgstr "��� �廨廢��� �廡��廣 �廬 �� ����廬 �廖�� 廩� ��廩 廡廩廨 ��?" -msgid "" -"You can send this image as a file transfer, or use it as the buddy icon for " -"this user." +msgid "You can send this image as a file transfer, or use it as the buddy icon for this user." msgstr "��廬� �廩��� 廬���� �� �廡��廛 ��廣�廨, �� ��廩廬�廩 �� �廬�廨 廖�� 廣��廨 �廩廬�廩 ��." -msgid "" -"You can insert this image into this message, or use it as the buddy icon for " -"this user" +msgid "You can insert this image into this message, or use it as the buddy icon for this user" msgstr "��廬� �����廖 廬���� �� �廬�� ����廣�, �� ��廩廬�廩 �� �廖�� ��廩 �廡廩廨 ���." #. I don't know if we really want to do anything here. Most of the desktop item types are crap like @@ -12744,12 +12068,8 @@ msgid "Cannot send launcher" msgstr "�� ��廬� �廩��� �廬 廡��廛 ��廚廣��" -msgid "" -"You dragged a desktop launcher. Most likely you wanted to send the target of " -"this launcher instead of this launcher itself." -msgstr "" -"�廨廨廬 廡��廛 �廚廣�� 廩� 廩���� �廣����. 廡廨�� ����� 廩廨廢�廬 �廩��� �廬 �� 廩��廚廣�� �廢��廣 " -"廣���, ��� �廬 ��廚廣�� 廣廢��." +msgid "You dragged a desktop launcher. Most likely you wanted to send the target of this launcher instead of this launcher itself." +msgstr "�廨廨廬 廡��廛 �廚廣�� 廩� 廩���� �廣����. 廡廨�� ����� 廩廨廢�廬 �廩��� �廬 �� 廩��廚廣�� �廢��廣 廣���, ��� �廬 ��廚廣�� 廣廢��." #, c-format msgid "" @@ -12776,8 +12096,7 @@ msgstr "��廩��� �廣廬 廚廬��廬 �廡��廛 '%s': %s" #, c-format -msgid "" -"Failed to load image '%s': reason not known, probably a corrupt image file" +msgid "Failed to load image '%s': reason not known, probably a corrupt image file" msgstr "��廩��� �廣廬 �廣��廬 �廬���� '%s': 廖��� �� ���廣�, ��廨�� 廡��廛 廬���� 廚���" msgid "_Open Link" @@ -12944,11 +12263,8 @@ msgid "Allows browsing and registering services." msgstr "��廚廩廨 廨�廩�� �廣��� �廨廩��廬 �廩�廨�廬��" -msgid "" -"This plugin is useful for registering with legacy transports or other XMPP " -"services." -msgstr "" -"廬�廖廝 �� 廩���廩� ����廬 廨�廩�� 廣� 廚廨���廡��� 廬廡廩�廨廬 �廩��� �� 廩�廨�廬� XMPP ��廨��." +msgid "This plugin is useful for registering with legacy transports or other XMPP services." +msgstr "廬�廖廝 �� 廩���廩� ����廬 廨�廩�� 廣� 廚廨���廡��� 廬廡廩�廨廬 �廩��� �� 廩�廨�廬� XMPP ��廨��." msgid "Buddy is idle" msgstr "��廩 �廡廩廨 ������" @@ -12969,9 +12285,7 @@ msgid "Point values to use when..." msgstr "廣廨�� ��廡�� 廩�廩 ��廩廬�廩 ��� ��廩廨..." -msgid "" -"The buddy with the <i>largest score</i> is the buddy who will have priority " -"in the contact.\n" +msgid "The buddy with the <i>largest score</i> is the buddy who will have priority in the contact.\n" msgstr "��廩 �廡廩廨 廣� ���廡�� <i>�����</i> ���� ��廩 �廡廩廨 廣� �廣��廚�廬.\n" msgid "Use last buddy when scores are equal" @@ -12992,17 +12306,12 @@ #. *< name #. *< version #. *< summary -msgid "" -"Allows for controlling the values associated with different buddy states." +msgid "Allows for controlling the values associated with different buddy states." msgstr "��廚廩廨 廩���� 廣� �廣廨��� �����廖�� ��廢��� �廩���� 廩� ��廩� �廡廩廨." #. *< description -msgid "" -"Allows for changing the point values of idle/away/offline states for buddies " -"in contact priority computations." -msgstr "" -"��廚廩廨 �廩��廬 �廬 廣廨�� ���廡�� ���廖廨 廚廣���廬/廨���廡/��廬�廡 �廩廨 �廣廩� �� 廩���廩 " -"���廩��� ���廨�� 廩� ��廩� �廡廩廨." +msgid "Allows for changing the point values of idle/away/offline states for buddies in contact priority computations." +msgstr "��廚廩廨 �廩��廬 �廬 廣廨�� ���廡�� ���廖廨 廚廣���廬/廨���廡/��廬�廡 �廩廨 �廣廩� �� 廩���廩 ���廩��� ���廨�� 廩� ��廩� �廡廩廨." msgid "Conversation Colors" msgstr "廢�廣� 廩���" @@ -13046,11 +12355,8 @@ msgstr "��廡�� ���� 廩���" #. Translators: "New conversations" should match the text in the preferences dialog and "By conversation count" should be the same text used above -msgid "" -"Note: The preference for \"New conversations\" must be set to \"By " -"conversation count\"." -msgstr "" -"�廣廨�: ��廣�廚� 廣��廨 \"廩���廬 ��廩�廬\" ����廬 ��廡�廣 ����廬 \"廣� 廚� �廖廚廨 �廩���廬\"." +msgid "Note: The preference for \"New conversations\" must be set to \"By conversation count\"." +msgstr "�廣廨�: ��廣�廚� 廣��廨 \"廩���廬 ��廩�廬\" ����廬 ��廡�廣 ����廬 \"廣� 廚� �廖廚廨 �廩���廬\"." msgid "Number of conversations per window" msgstr "�廖廚廨 廩���廬 ��� ����" @@ -13074,9 +12380,7 @@ #. *< summary #. * description -msgid "" -"Restrict the number of conversations per windows, optionally separating IMs " -"and Chats" +msgid "Restrict the number of conversations per windows, optionally separating IMs and Chats" msgstr "���� �廬 �廖廚廨 �廩���廬 ��� ����-廩���, 廣� �廚廩廨�廬 ��廚廨�� ��� ���廣�廬 �廢'����" #. Configuration frame @@ -13110,14 +12414,12 @@ #. * description msgid "" -"Allows support for mouse gestures in conversation windows. Drag the middle " -"mouse button to perform certain actions:\n" +"Allows support for mouse gestures in conversation windows. Drag the middle mouse button to perform certain actions:\n" " �� Drag down and then to the right to close a conversation.\n" " �� Drag up and then to the left to switch to the previous conversation.\n" " �� Drag up and then to the right to switch to the next conversation." msgstr "" -"��廚廩廨 廬���� �廚廣���廬 廣��廨 ������廬 廩���. �廨�廨/� 廣� ��廚廬�廨 ���廢廣� ��� ��廢廣 " -"廚廣���廬 �廖����廬:\n" +"��廚廩廨 廬���� �廚廣���廬 廣��廨 ������廬 廩���. �廨�廨/� 廣� ��廚廬�廨 ���廢廣� ��� ��廢廣 廚廣���廬 �廖����廬:\n" " �� �廨�廨/� ��� ��� ����� �廖��廨 ����.\n" " �� �廨�廨/� �廣�� ��� 廩���� �廣��廨 �廩��� �廡���廬.\n" " �� �廨�廨/� �廣�� ��� ����� �廣��廨 �廩��� ����." @@ -13141,12 +12443,8 @@ msgstr "��廨 ��廩 廡廩廨" #. Add the label. -msgid "" -"Select a person from your address book to add this buddy to, or create a new " -"person." -msgstr "" -"�廩 ����廨 �廩廬�廩 �廨廩��廬 ��廬���廬 廩�� ��� ���廖�廝 ���� �廬 ��廩 �廡廩廨 ���, �� ��廢�廨 " -"��廩" +msgid "Select a person from your address book to add this buddy to, or create a new person." +msgstr "�廩 ����廨 �廩廬�廩 �廨廩��廬 ��廬���廬 廩�� ��� ���廖�廝 ���� �廬 ��廩 �廡廩廨 ���, �� ��廢�廨 ��廩" #. Add the expander msgid "User _details" @@ -13287,9 +12585,7 @@ msgid "C_hat windows" msgstr "�����廬 _廩���" -msgid "" -"A music messaging session has been requested. Please click the MM icon to " -"accept." +msgid "A music messaging session has been requested. Please click the MM icon to accept." msgstr "�廬廡��� �廡廩� �廩��廬 ����廡�. �� ����廛 廣� �廚廬�廨 �-MM ��廖���." msgid "Music messaging session confirmed." @@ -13329,12 +12625,8 @@ msgstr "廬�廖廝 ����廣�廬 ����廡� ������ �廩�廬廚廬." #. * summary -msgid "" -"The Music Messaging Plugin allows a number of users to simultaneously work " -"on a piece of music by editing a common score in real-time." -msgstr "" -"�廬�廖廝 ����廣�廬 ����廡� ��廚廩廨 ��廖廚廨 �廩廬�廩�� �廣��� ��� 廣� �廢�廨� ����廡��廬 廣� ��� " -"廣廨��� 廩� ��� �廩�廬廝 ���� ��廬." +msgid "The Music Messaging Plugin allows a number of users to simultaneously work on a piece of music by editing a common score in real-time." +msgstr "�廬�廖廝 ����廣�廬 ����廡� ��廚廩廨 ��廖廚廨 �廩廬�廩�� �廣��� ��� 廣� �廢�廨� ����廡��廬 廣� ��� 廣廨��� 廩� ��� �廩�廬廝 ���� ��廬." #. ---------- "Notify For" ---------- msgid "Notify For" @@ -13521,12 +12813,8 @@ msgid "Lets you send raw input to text-based protocols." msgstr "��廚廩廨 �� �廩��� ���廣 ����� �廚廨���廡���� 廣� �廖�廖 �廡廖�." -msgid "" -"Lets you send raw input to text-based protocols (XMPP, MSN, IRC, TOC). Hit " -"'Enter' in the entry box to send. Watch the debug window." -msgstr "" -"��廚廩廨 �� �廩��� ���廣 ����� �廚廨���廡���� 廣� �廖�廖 �廡廖� (XMPP, MSN, IRC, TOC).��廛 " -"'Enter' �廬��廬 ����� �廩���. 廢廚� ����� ��廚�� ������." +msgid "Lets you send raw input to text-based protocols (XMPP, MSN, IRC, TOC). Hit 'Enter' in the entry box to send. Watch the debug window." +msgstr "��廚廩廨 �� �廩��� ���廣 ����� �廚廨���廡���� 廣� �廖�廖 �廡廖� (XMPP, MSN, IRC, TOC).��廛 'Enter' �廬��廬 ����� �廩���. 廢廚� ����� ��廚�� ������." #, c-format msgid "You can upgrade to %s %s today." @@ -13557,11 +12845,8 @@ msgstr "���廡 ���-廚廣� �� �廢�� �廨廖��廬 ��廩�廬." #. * description -msgid "" -"Checks periodically for new releases and notifies the user with the " -"ChangeLog." -msgstr "" -"���廡 ��� 廚廣� �� �廢�� �廨廖��廬 ��廩�廬 �����廣 ��廩廬�廩, �廢�廨�廝 廨廩��廬 �廩������." +msgid "Checks periodically for new releases and notifies the user with the ChangeLog." +msgstr "���廡 ��� 廚廣� �� �廢�� �廨廖��廬 ��廩�廬 �����廣 ��廩廬�廩, �廢�廨�廝 廨廩��廬 �廩������." #. *< major version #. *< minor version @@ -13580,12 +12865,8 @@ msgstr "�廚廬�廨 廩���� ����� 廩���." #. *< summary -msgid "" -"Adds a Send button to the entry area of the conversation window. Intended " -"for use when no physical keyboard is present." -msgstr "" -"��廖�廝 �廚廬�廨 廩���� �����廨 �廡�� 廩� ���� �廩���. ��廣� �廬廨��廩 廩��� ���廢� �廡��廬 " -"廚���廬." +msgid "Adds a Send button to the entry area of the conversation window. Intended for use when no physical keyboard is present." +msgstr "��廖�廝 �廚廬�廨 廩���� �����廨 �廡�� 廩� ���� �廩���. ��廣� �廬廨��廩 廩��� ���廢� �廡��廬 廚���廬." msgid "Duplicate Correction" msgstr "�廚���廬 �廬�廡����" @@ -13658,9 +12939,12 @@ msgid "Founder" msgstr "���廖�" +#. A user in a chat room who has special privileges. msgid "Operator" msgstr "�廚廣��" +#. A half operator is someone who has a subset of the privileges +#. that an operator has. msgid "Half Operator" msgstr "�廢�-�廚廣��" @@ -13801,9 +13085,7 @@ msgstr "����廨 �廬 廚�廨�� ��廬��廬-���� ����廣�廬." #. * description -msgid "" -"This plugin allows the user to customize conversation and logging message " -"timestamp formats." +msgid "This plugin allows the user to customize conversation and logging message timestamp formats." msgstr "廬�廖廝 �� ��廚廩廨 ��廩廬�廩 �廡��廣 �廚廩廨���廬 廩��� ���廬��廬-��� ������ 廩���." msgid "Opacity:" @@ -13852,8 +13134,7 @@ #. * description msgid "" -"This plugin enables variable alpha transparency on conversation windows and " -"the buddy list.\n" +"This plugin enables variable alpha transparency on conversation windows and the buddy list.\n" "\n" "* Note: This plugin requires Win2000 or greater." msgstr "" @@ -13889,11 +13170,8 @@ msgid "Options specific to Pidgin for Windows." msgstr "�廚廩廨���廬 �廚���'�� �������廬 ������廬." -msgid "" -"Provides options specific to Pidgin for Windows, such as buddy list docking." -msgstr "" -"��廚廩廨 ��廩� ��廚廩廨���廬 ��������廬 �廚���'�� ������廬, ���� 廣���� 廩� 廨廩��廬 ��廩� " -"�廡廩廨." +msgid "Provides options specific to Pidgin for Windows, such as buddy list docking." +msgstr "��廚廩廨 ��廩� ��廚廩廨���廬 ��������廬 �廚���'�� ������廬, ���� 廣���� 廩� 廨廩��廬 ��廩� �廡廩廨." msgid "<font color='#777777'>Logged out.</font>" msgstr "<font color='#777777'>�廬�廬廡.</font>" @@ -13932,306 +13210,220 @@ msgid "This plugin is useful for debbuging XMPP servers or clients." msgstr "廬�廖廝 �� 廩���廩� ���廚�� ����� �廩廨廬�� ��廡���廬 廩� XMPP." +#~ msgid "Failed to open the file" +#~ msgstr "��廩��� �廣廬 廚廬��廬 �廡��廛" +#~ msgid "_Resume" +#~ msgstr "�_�廩�" #~ msgid "Malformed BOSH Connect Server" #~ msgstr "廩廨廬 ����廨 BOSH �廩��廩" - #~ msgid "Unable to not load SILC key pair" #~ msgstr "�� ��廬� 廩�� ��廣�� �廬 ��� �廚廬��廬 �-SILC" - #~ msgid "" #~ "%s declined your conference invitation to room \"%s\" because \"%s\"." #~ msgstr "%s 廖廨� �廬 ������ 廩�� ��廣��� ���廨 \"%s\" ����� 廩-\"%s\"." - #~ msgid "Invitation Rejected" #~ msgstr "������ ���廬�" #, fuzzy #~ msgid "_Proxy" #~ msgstr "�廬���" - #~ msgid "Cannot open socket" #~ msgstr "��� �廚廩廨�廬 �廚廬�� 廩廡廣" - #~ msgid "Could not listen on socket" #~ msgstr "��� �廚廩廨�廬 ��廡廩�� �廩廡廣 ��" - #~ msgid "Unable to read socket" #~ msgstr "��� �廚廩廨�廬 �廡廨�� �廬 �廩廡廣" - #~ msgid "Connection failed." #~ msgstr "��廬��廨�廬 ��廩��." - #~ msgid "Server has disconnected" #~ msgstr "�廩廨廬 �廬�廬廡" - #~ msgid "Couldn't create socket" #~ msgstr "��� �廚廩廨�廬 ��廢�廨 廩廡廣" - #~ msgid "Couldn't connect to host" #~ msgstr "�� ��廬� ��廬��廨 �廩廨廬" - #~ msgid "Read error" #~ msgstr "廩���� �廡廨���" - #~ msgid "" #~ "Could not establish a connection with the server:\n" #~ "%s" #~ msgstr "" #~ "�� ��廬� ��廢�廨 ����廨 廣� �廩廨廬:\n" #~ "%s" - #~ msgid "Write error" #~ msgstr "廩���� ��廬���" - #~ msgid "Last Activity" #~ msgstr "廚廣���廬 ��廨���" - #~ msgid "Service Discovery Info" #~ msgstr "���廣 廩� 廩�廨�廬 廬���廬" - #~ msgid "Service Discovery Items" #~ msgstr "廚廨��� 廩�廨�廬 廬���廬" - #~ msgid "Extended Stanza Addressing" #~ msgstr "�廬���廬 ��廨���廬 �廖�����廬" - #~ msgid "Multi-User Chat" #~ msgstr "廢'�� �廨��� �廩廬�廩��" - #~ msgid "Multi-User Chat Extended Presence Information" #~ msgstr "���廣 �����廬� �廢'�� �廨��� �廩廬�廩��" - #~ msgid "In-Band Bytestreams" #~ msgstr "�廨��-�廬���� �廚� �廖�廨" - #~ msgid "Ad-Hoc Commands" #~ msgstr "廚廡���廬 �����廬" - #~ msgid "PubSub Service" #~ msgstr "廩�廨�廬 PubSub" - #~ msgid "SOCKS5 Bytestreams" #~ msgstr "�廨��-�廬���� 廩� SOCKS5" - #~ msgid "Out of Band Data" #~ msgstr "���廣 廩�� �廚� 廖�廨" - #~ msgid "XHTML-IM" #~ msgstr "XHTML-IM" - #~ msgid "In-Band Registration" #~ msgstr "廨�廩�� �廨� �廬�廨" - #~ msgid "User Location" #~ msgstr "��廡�� �廩廬�廩" - #~ msgid "User Avatar" #~ msgstr "廬���廬 �廩廬�廩" - #~ msgid "Chat State Notifications" #~ msgstr "�廬廨廣�廬 廣� �廢�� 廢'��" - #~ msgid "Software Version" #~ msgstr "��廨廖廬 廬����" - #~ msgid "Stream Initiation" #~ msgstr "��廬��� �廨�" - #~ msgid "User Mood" #~ msgstr "�廢�-廨�� ��廩廬�廩" - #~ msgid "User Activity" #~ msgstr "廚廣���廬 �廩廬�廩" - #~ msgid "Entity Capabilities" #~ msgstr "�����廬 �廩�廬" - #~ msgid "Encrypted Session Negotiations" #~ msgstr "��廡���� �����廨 ��廢廚�" - #~ msgid "User Tune" #~ msgstr "廩�廨 �廩廬�廩" - #~ msgid "Roster Item Exchange" #~ msgstr "���廚廬 廚廨��� 廨廩���" - #~ msgid "Reachability Address" #~ msgstr "�廬��廬 �����廬" - #~ msgid "User Profile" #~ msgstr "廚廨�廚�� �廩廬�廩" - #~ msgid "Jingle" #~ msgstr "�'����" - #~ msgid "Jingle Audio" #~ msgstr "廢��� �'����" - #~ msgid "User Nickname" #~ msgstr "����� �廩廬�廩" - #~ msgid "Jingle ICE UDP" #~ msgstr "�'���� ICE UDP" - #~ msgid "Jingle ICE TCP" #~ msgstr "�'���� ICE TCP" - #~ msgid "Jingle Raw UDP" #~ msgstr "�'���� UDP ��-�廣���" - #~ msgid "Jingle Video" #~ msgstr "�'���� �����" - #~ msgid "Jingle DTMF" #~ msgstr "�'���� DTMF" - #~ msgid "Message Receipts" #~ msgstr "廡���廬 ���廣�廬" - #~ msgid "Public Key Publishing" #~ msgstr "廚�廨廖�� �廚廬� 廢���廨�" - #~ msgid "User Chatting" #~ msgstr "�廩廬�廩 �廢'���" - #~ msgid "User Browsing" #~ msgstr "�廩廬�廩 ���廩" - #~ msgid "User Gaming" #~ msgstr "�廩廬�廩 �廩�廡" - #~ msgid "User Viewing" #~ msgstr "�廩廬�廩 廢�廚�" - #~ msgid "Stanza Encryption" #~ msgstr "�廢廚�廬 廖����" - #~ msgid "Entity Time" #~ msgstr "��� �廩�廬" - #~ msgid "Delayed Delivery" #~ msgstr "�廩��� �廣���" - #~ msgid "Collaborative Data Objects" #~ msgstr "�����廡�� ���廣 廩�廬�廚���" - #~ msgid "File Repository and Sharing" #~ msgstr "廖廚廨��廬 廡�廢�� �廩�廬�廝" - #~ msgid "STUN Service Discovery for Jingle" #~ msgstr "廩�廨�廬 廬���廬 STUN 廣��廨 �'����" - #~ msgid "Simplified Encrypted Session Negotiation" #~ msgstr "��廡�� 廚廩�� �����廨 ���廢廚�" - #~ msgid "Hop Check" #~ msgstr "���廡廬 廡廚�廢�廬" - #~ msgid "Read Error" #~ msgstr "廩���� �廡廨���" - #~ msgid "Failed to connect to server." #~ msgstr "�廩� ��廬��廨�廬 �廩廨廬" - #~ msgid "Read buffer full (2)" #~ msgstr "廬�廨-�廡廨��� ��� (2)" - #~ msgid "Unparseable message" #~ msgstr "���廣廬 廩�� ��廬�廬 �廚�廣���" - #~ msgid "Couldn't connect to host: %s (%d)" #~ msgstr "�� ��廬� ��廬��廨 �廩廨廬: %s (%d)" - #~ msgid "Login failed (%s)." #~ msgstr "�� ��廬� ��廬��廨 (%s)." - #~ msgid "" #~ "You have been logged out because you logged in at another workstation." #~ msgstr "��廬廡廬 ����� 廩�廬��廨廬 ���廩� ��廨." - #~ msgid "Error. SSL support is not installed." #~ msgstr "廩����. �� ��廬廡�廬 廬���� �-SSL." - #~ msgid "Incorrect password." #~ msgstr "廖�廖�� �� �����." - #~ msgid "" #~ "Could not connect to BOS server:\n" #~ "%s" #~ msgstr "" #~ "�� ��廬� ��廬��廨 �廩廨廬 �-BOS:\n" #~ "%s" - #~ msgid "You may be disconnected shortly. Check %s for updates." #~ msgstr "��廬�� �廬��廬廡/� �廡廨��. �廩 ����廡 �廬 %s �廣�������." - #~ msgid "Could Not Connect" #~ msgstr "�� ��廬� ��廬��廨" - #~ msgid "Invalid username." #~ msgstr "廩� �廩廬�廩 �� 廬廡廝." #, fuzzy #~ msgid "Could not decrypt server reply" #~ msgstr "��� �廚廩廨�廬 �廚�廣��� ��廩�� �廣廬 ����廬 �廩廬�廩" - #~ msgid "Connection lost" #~ msgstr "�����廨 ���" - #~ msgid "Couldn't resolve host" #~ msgstr "�� ��廬� ��廢�� �廬��廬 廩廨廬" - #~ msgid "Connection closed (writing)" #~ msgstr "�����廨 �廖�廨 (�廬���)" - #~ msgid "Connection reset" #~ msgstr "�����廨 ��廬��" - #~ msgid "Error reading from socket: %s" #~ msgstr "廩���� �廡廨��廬 �廬���� ��廩廡廣: %s" - #~ msgid "Unable to connect to host" #~ msgstr "�� ��廬� ��廬��廨 �廩廨廬" - #~ msgid "Could not write" #~ msgstr "�� ��廬� ��廬��" - #~ msgid "Could not connect" #~ msgstr "�� ��廬� ��廬��廨" - #~ msgid "Could not create listen socket" #~ msgstr "��� �廚廩廨�廬 ��廢�廨 廩廡廣-廡廩�" - #~ msgid "Could not resolve hostname" #~ msgstr "�� ��廬� ��廢�� �廬��廬 廩廨廬" #, fuzzy #~ msgid "Incorrect Password" #~ msgstr "廖�廖�� �� �����" - #~ msgid "" #~ "Could not establish a connection with %s:\n" #~ "%s" #~ msgstr "" #~ "�� ��� ��廬� ��廢�廨 ����廨 廣� %s:\n" #~ "%s" - #~ msgid "Yahoo Japan" #~ msgstr "Yahoo �廚�" - #~ msgid "Japan Pager server" #~ msgstr "廩廨廬 �-Pager ��廚�" - #~ msgid "Japan file transfer server" #~ msgstr "廩廨廬 �廚�� ��廣�廨廬 廡�廢��" - #~ msgid "" #~ "Lost connection with server\n" #~ "%s" #~ msgstr "" #~ "��� �����廨 廣� �廩廨廬\n" #~ "%s" - #~ msgid "Could not resolve host name" #~ msgstr "�� ��廬� ��廢�� �廬��廬 廩廨廬" @@ -14240,53 +13432,39 @@ #~ "Unable to connect to %s: Server requires TLS/SSL, but no TLS/SSL support " #~ "was found." #~ msgstr "�廩廨廬 ��廨廩 TLS/SSL ��廬��廨�廬. �� ��廢�� 廬���� �-TLS/SSL." - #~ msgid "Conversation Window Hiding" #~ msgstr "�廖廬廨廬 �����廬 廩���" - #~ msgid "More Data needed" #~ msgstr "���廛 ���廣 ��廖廝" - #~ msgid "Please provide a shortcut to associate with the smiley." #~ msgstr "�� ����� 廡�廢�廨-�廨� �廡廩廨 廣� ������." - #~ msgid "Please select an image for the smiley." #~ msgstr "�廩 ����廨 廬���� 廣��廨 ������." - #~ msgid "Activate which ID?" #~ msgstr "���� ID ��廚廣��?" - #~ msgid "Cursor Color" #~ msgstr "廢�廣 �廖��" - #~ msgid "Secondary Cursor Color" #~ msgstr "廢�廣 �廩�� 廩� �廖��" - #~ msgid "Interface colors" #~ msgstr "廢�廣� ��廩廡" - #~ msgid "Widget Sizes" #~ msgstr "���� 廚廨��� ��廩廡" - #~ msgid "Invite message" #~ msgstr "���廣廬 �����" - #~ msgid "" #~ "Please enter the name of the user you wish to invite,\n" #~ "along with an optional invite message." #~ msgstr "" #~ "�廩 ����� �廬 廩� ��廩廬�廩 廩�廨廢��� ������,\n" #~ "��� 廣� ���廣廬 ����� ��廚廢�����廬." - #~ msgid "Unable to retrieve MSN Address Book" #~ msgstr "�� ���� ����廨 �廬 廨廩��廬 ��廬���廬 廩� MSN" - #~ msgid "Connection to server lost (no data received within %d second)" #~ msgid_plural "" #~ "Connection to server lost (no data received within %d seconds)" #~ msgstr[0] "��� �����廨 �� �廩廨廬 (�� �廬廡�� ���廣 廬�� %d 廩���)" #~ msgstr[1] "��� �����廨 �� �廩廨廬 (�� �廬廡�� ���廣 廬�� %d 廩���廬)" - #~ msgid "" #~ "You may be disconnected shortly. You may want to use TOC until this is " #~ "fixed. Check %s for updates." @@ -14301,10 +13479,8 @@ #, fuzzy #~ msgid "Can not decrypt get server reply" #~ msgstr "��� �廚廩廨�廬 �廚�廣��� ��廩�� �廣廬 ����廬 �廩廬�廩" - #~ msgid "Keep alive error" #~ msgstr "廩���� ��廩�廨-��" - #~ msgid "" #~ "Lost connection with server:\n" #~ "%d, %s" @@ -14315,93 +13491,65 @@ #, fuzzy #~ msgid "Connecting server ..." #~ msgstr "廩廨廬 ��廬��廨�廬" - #~ msgid "Failed to send IM." #~ msgstr "��廩��� �廩���廬 ���廣�." #, fuzzy #~ msgid "Not a member of room \"%s\"\n" #~ msgstr "���� ��廨/� �廡��廢� \"%s\"\n" - #~ msgid "Looking up %s" #~ msgstr "��廚廩 �廬 %s..." - #~ msgid "Connect to %s failed" #~ msgstr "��廬��廨�廬 �� %s �� �廢����." - #~ msgid "Signon: %s" #~ msgstr "�廬��廨: %s" - #~ msgid "Unable to write file %s." #~ msgstr "��� �廚廩廨�廬 ��廬�� �� �廡��廛 %s" - #~ msgid "Unable to read file %s." #~ msgstr "��� �廚廩廨�廬 �廡廨�� �廬 �廡��廛 %s." - #~ msgid "Message too long, last %s bytes truncated." #~ msgstr "���廣� �廨��� ���, %s ������� ���廨���� �廡���." - #~ msgid "%s not currently logged in." #~ msgstr "%s ���� ����廨 �廨�廣." - #~ msgid "Warning of %s not allowed." #~ msgstr "���廨� 廩� %s ���� ��廬廨廬." - #~ msgid "" #~ "A message has been dropped, you are exceeding the server speed limit." #~ msgstr "���� ���廣�; �廬� 廣��廨 廣� ����廬 ����廨�廬 廩� �廩廨廬." - #~ msgid "Chat in %s is not available." #~ msgstr "廢'�� �-%s ���� ����." - #~ msgid "You are sending messages too fast to %s." #~ msgstr "�廬� 廩��� ���廣�廬 �� %s ��廨 ����." - #~ msgid "You missed an IM from %s because it was too big." #~ msgstr "廚廖廚廖廬 ���廣� �-%s ����� 廩��� ���廬� �廨��� ���." - #~ msgid "You missed an IM from %s because it was sent too fast." #~ msgstr "廚廖廚廖廬 ���廣� �-%s ����� 廩��� �廩��� ��廨 ���." - #~ msgid "Failure." #~ msgstr "��廩���." - #~ msgid "Too many matches." #~ msgstr "��廬廨 ���� 廬�廢��廬" - #~ msgid "Need more qualifiers." #~ msgstr "���廚�廩 �廡�廡 ���廬廨 ����廨��." - #~ msgid "Dir service temporarily unavailable." #~ msgstr "廩�廨�廬 ���廨�� ���� ���� ����廬." - #~ msgid "Email lookup restricted." #~ msgstr "��廚�廩 ����\"� �����." - #~ msgid "Keyword ignored." #~ msgstr "�廬廣�� ����廬 ��廚廬�." - #~ msgid "No keywords." #~ msgstr "��� ����廬 �廚廬�." - #~ msgid "User has no directory information." #~ msgstr "��� ���廣 廣��廨 �廩廬�廩 ��" - #~ msgid "Country not supported." #~ msgstr "������ ���� �廬��廬." - #~ msgid "Failure unknown: %s." #~ msgstr "�廩� ���廨: %s" - #~ msgid "Incorrect username or password." #~ msgstr "廩� �廩廬�廩 �� 廖�廖�� 廩�����." - #~ msgid "The service is temporarily unavailable." #~ msgstr "�廩�廨�廬 ���� ���� ����廬." - #~ msgid "Your warning level is currently too high to log in." #~ msgstr "廨�廬 ����廨� 廩�� ����� ���� �廨�廣 ���� �����廖 ��廣廨�廬." - #~ msgid "" #~ "You have been connecting and disconnecting too frequently. Wait ten " #~ "minutes and try again. If you continue to try, you will need to wait " @@ -14409,93 +13557,64 @@ #~ msgstr "" #~ "�廬��廨廬 ��廬�廬廡廬 �廬��廨�廬 ����� ����. ��廬� 10 �廡�廬 ��廖� 廩��廬. �� 廬�廩�� " #~ "��廖�廬, 廬���廛 ���廬�� �廚��� ��廬廨." - #~ msgid "An unknown signon error has occurred: %s." #~ msgstr "�廨廣� 廩���� �� ���廣� ���� ��廖��� �廚廬��廬 %s" - #~ msgid "An unknown error, %d, has occurred. Info: %s" #~ msgstr "�廨廣� 廩���� �� ���廨廬, %d, ���廣: %s" - #~ msgid "Invalid Groupname" #~ msgstr "廩� �廡��廢� 廩���" - #~ msgid "Connection Closed" #~ msgstr "�����廨 �廖�廨." - #~ msgid "Waiting for reply..." #~ msgstr "��廬�� �廬廩���..." - #~ msgid "TOC has come back from its pause. You may now send messages again." #~ msgstr "TOC ��廨 �� �-pause 廩��. ��廬� �廩��� ���廣�廬 廩��." - #~ msgid "Password Change Successful" #~ msgstr "�廖�廖�� 廩�� 廩��廬� ��廢���." - #~ msgid "Get Dir Info" #~ msgstr "�廩� ���廣 廣� ��廩廬�廩" - #~ msgid "Set Dir Info" #~ msgstr "廡�廣 ���廣 廣� ��廩廬�廩" - #~ msgid "Could not open %s for writing!" #~ msgstr "�� ��廬� �廚廬�� %s ��廬���" - #~ msgid "File transfer failed; other side probably canceled." #~ msgstr "�廩� ��廣�廨廬 �廡��廛, ��廨�� 廢� 廩�� ����" - #~ msgid "Could not connect for transfer." #~ msgstr "�� ��廬� ���廨 �廬 ��廣�廨�." - #~ msgid "Could not write file header. The file will not be transferred." #~ msgstr "�� ��廬� ��廬�� �廬 廨�廩廬 �廡��廛. �廡��廛 �� ��廣�廨." - #~ msgid "Save As..." #~ msgstr "廩��廨 �廩�..." - #~ msgid "%s requests %s to accept %d file: %s (%.2f %s)%s%s" #~ msgid_plural "%s requests %s to accept %d files: %s (%.2f %s)%s%s" #~ msgstr[0] "%s ��廡廩 �-%s �廡�� %d 廡��廛: %s (%.2f %s)%s%s" #~ msgstr[1] "%s ��廡廩 �-%s �廡�� %d 廡�廢��: %s (%.2f %s)%s%s" - #~ msgid "%s requests you to send them a file" #~ msgstr "%s ��廡廩/廬 ��� �廩��� ��/�� 廡��廛" - #~ msgid "TOC Protocol Plugin" #~ msgstr "廬�廖廝 廚廨���廡�� TOC" - #~ msgid "User information for %s unavailable" #~ msgstr "廚廨�� ��廩廬�廩 %s ���� ������" - #~ msgid "%s Options" #~ msgstr "%s �廚廩廨���廬" - #~ msgid "Proxy Options" #~ msgstr "�廚廩廨���廬 廚廨�廡廖�" - #~ msgid "By log size" #~ msgstr "�廚� ���� ���� �廩���廬" - #~ msgid "_Open Link in Browser" #~ msgstr "_廚廬� �廬 �廡�廩�廨 ��廚�廚�" - #~ msgid "ST_UN server:" #~ msgstr "廩廨廬 STUN:" - #~ msgid "Smiley _Image" #~ msgstr "_廬���廬 �����" - #~ msgid "Smiley S_hortcut" #~ msgstr "廡�廢�廨�� �_�������" - #~ msgid "_Flash window when chat messages are received" #~ msgstr "_���� �廬 ���� �廩��� �廣廬 廡��廬 ���廣�廬 廢'��" - #~ msgid "A group with the name already exists." #~ msgstr "廡��廢� �廩� �� ��廨 廡���廬." - #~ msgid "Primary Information" #~ msgstr "���廣 廨�廩�" - #~ msgid "Blood Type" #~ msgstr "廖�� ��" @@ -14506,21 +13625,16 @@ #, fuzzy #~ msgid "Successed:" #~ msgstr "���廨�廬:" - #~ msgid "" #~ "Setting custom faces is not currently supported. Please choose an image " #~ "from %s." #~ msgstr "��� �廨�廣 廬���� ��廬��� ��廩�廬 廩� 廚廨廢�廚��. �廩 ����廨 �廬���� �廬�� %s." - #~ msgid "Invalid QQ Face" #~ msgstr "廚廨廢�廝 QQ �� 廬廡廝" - #~ msgid "You rejected %d's request" #~ msgstr "���廬 �廬 �廡廩廬 %d" - #~ msgid "Reject request" #~ msgstr "��� �廡廩�" - #~ msgid "Add buddy with auth request failed" #~ msgstr "��廩��� ���廖廚廬 ��廩-廡廩廨 廣� �廡廩廬 ����廬" @@ -14531,13 +13645,10 @@ #, fuzzy #~ msgid "QQ Number Error" #~ msgstr "�廖廚廨 QQ" - #~ msgid "Group Description" #~ msgstr "廬���廨 �廡��廢�" - #~ msgid "Auth" #~ msgstr "����廬" - #~ msgid "Approve" #~ msgstr "�廩廨" @@ -14552,30 +13663,24 @@ #, fuzzy #~ msgid "[%d] added to Qun \"%d\"" #~ msgstr "�廬/� [%d] ��廖廚廬 �� �廡��廢� \"%d\"" - #~ msgid "I am a member" #~ msgstr "��� ���� ��廨/�" #, fuzzy #~ msgid "I am requesting" #~ msgstr "�廡廩� 廩����" - #~ msgid "I am the admin" #~ msgstr "��� �����/廬" - #~ msgid "Unknown status" #~ msgstr "�廢� �� ���廣" #, fuzzy #~ msgid "Remove from Qun" #~ msgstr "�廖廨 廡��廢�" - #~ msgid "You entered a group ID outside the acceptable range" #~ msgstr "���廬 ����-廡��廢� ���廛 ����� �廬廡廝" - #~ msgid "Are you sure you want to leave this Qun?" #~ msgstr "��� �廨廢��� �廣��� �廬 Qun ��?" - #~ msgid "Do you want to approve the request?" #~ msgstr "��� �廨廢��� ��廩廨 �廬 ��廡廩�?" @@ -14586,26 +13691,20 @@ #, fuzzy #~ msgid "Change Qun information" #~ msgstr "���廣 廣� �廣廨�廛" - #~ msgid "System Message" #~ msgstr "���廣廬 �廣廨�廬" - #~ msgid "<b>Last Login IP</b>: %s<br>\n" #~ msgstr "<b>�廬��廬 ����廨 ��廨���</b>: %s<br>\n" - #~ msgid "<b>Last Login Time</b>: %s\n" #~ msgstr "<b>��� ����廨 ��廨��</b>: %s\n" - #~ msgid "Set My Information" #~ msgstr "廡�廣 �廬 ����廣 廩��" #, fuzzy #~ msgid "Leave the QQ Qun" #~ msgstr "廣��� QQ Qun ��" - #~ msgid "Block this buddy" #~ msgstr "�廖�� �廩廬�廩 ��" - #~ msgid "Invalid token reply code, 0x%02X" #~ msgstr "廡��-廬���� 廩���, 0x%02X" @@ -14616,7 +13715,6 @@ #, fuzzy #~ msgid "Failed to connect all servers" #~ msgstr "��廩��� ��廬��廨�廬 �廩廨廬" - #~ msgid "Connecting server %s, retries %d" #~ msgstr "�廬��廨 廣� 廩廨廬 %s, ��廖����廬 %d" @@ -14635,7 +13733,6 @@ #, fuzzy #~ msgid "QQ Budy" #~ msgstr "��廩 �廡廩廨" - #~ msgid "%s wants to add you [%s] as a friend" #~ msgstr "%s 廨�廢� ���廖�廝 ��廬� [%s] ���廨" @@ -14646,7 +13743,6 @@ #, fuzzy #~ msgid "Would you add?" #~ msgstr "��� �廨廢��� ���廖�廝 ��廬�?" - #~ msgid "%s" #~ msgstr "%s" @@ -14657,166 +13753,116 @@ #, fuzzy #~ msgid "Network disconnected" #~ msgstr "�廢� ��廨��廡 ���廬廡" - #~ msgid "developer" #~ msgstr "�廚廬�" - #~ msgid "XMPP developer" #~ msgstr "�廚廬� XMPP" - #~ msgid "Artists" #~ msgstr "�����" - #~ msgid "" #~ "You are using %s version %s. The current version is %s. You can get it " #~ "from <a href=\"%s\">%s</a><hr>" #~ msgstr "" #~ "%s 廩�廩���廩 ��� ��廨廖� %s. ���廨廖� ������廬 ��� %s. ��廬� ��廩�� ��廬� �-<a " #~ "href=\"%s\">%s</a><hr>" - #~ msgid "<b>ChangeLog:</b><br>%s" #~ msgstr "<b>廨廩��廬 廩������:</b><br>%s" - #~ msgid "EOF while reading from resolver process" #~ msgstr "廡��廬 廖���-廡��廛 �廣廬 廡廨��� �廬���� �-resolver" - #~ msgid "Your information has been updated" #~ msgstr "����廣 廩�� 廣����" - #~ msgid "Input your reason:" #~ msgstr "���/� �廬 廖��廬�:" - #~ msgid "You have successfully removed a buddy" #~ msgstr "�廖廨廬 ��廩-廡廩廨 ��廢���" - #~ msgid "You have successfully removed yourself from your friend's buddy list" #~ msgstr "�廖廨廬 �廬 廣廢�� ��廢��� �廨廩��廬 ��廩� �廡廩廨 廩� ��廨�" - #~ msgid "You have added %d to buddy list" #~ msgstr "��廖廚廬 �廬 %d �廨廩��廬 ��廩�-廡廩廨" - #~ msgid "Invalid QQid" #~ msgstr "QQid �� 廬廡廝" - #~ msgid "Please enter external group ID" #~ msgstr "�廩 ����� ID 廩� �廡��廢� ���廢���廬" - #~ msgid "Reason: %s" #~ msgstr "廖���: %s" - #~ msgid "Your request to join group %d has been approved by admin %d" #~ msgstr "�廡廩廬� ��廢�廨廝 �廡��廢� %d ��廩廨� 廣� ��� ����� %d" - #~ msgid "I am applying to join" #~ msgstr "��� ��廡廩/廬 ��廢�廨廝" - #~ msgid "You have successfully left the group" #~ msgstr "廣�廬 �廬 �廡��廢� ��廢��� " - #~ msgid "QQ Group Auth" #~ msgstr "����廬 �廡��廢廬 QQ" - #~ msgid "Your authorization request has been accepted by the QQ server" #~ msgstr "�廡廩廬 �����廬 廩�� �廬廡��� ����� 廣� ��� 廩廨廬 �-QQ" - #~ msgid "Enter your reason:" #~ msgstr "���/� �廬 廖��廬�:" - #~ msgid " Space" #~ msgstr " 廖廚��廖" - #~ msgid "<b>Real hostname</b>: %s: %d<br>\n" #~ msgstr "<b>廩� ��廩� ���廬�</b>: %s: %d<br>\n" - #~ msgid "Show Login Information" #~ msgstr "�廢� ���廣 廣� �����廨" - #~ msgid "resend interval(s)" #~ msgstr "廚廨廡 ��� ��� 廩����廬 ���廨�廬" - #~ msgid "hostname is NULL or port is 0" #~ msgstr "廩� ���廩� 廨�廡, �� �廖廚廨 �廩廡廣 0" - #~ msgid "Unable to login. Check debug log." #~ msgstr "�� ��廬� �����廖. �廩 ����廡 ����� 廨�廩�� ������" - #~ msgid "Failed room reply" #~ msgstr "�廩� ��廩�� ����廨" - #~ msgid "User %s rejected your request" #~ msgstr "��廩廬�廩 %s 廖廨� ��廡廩廬�" - #~ msgid "User %s approved your request" #~ msgstr "��廩廬�廩 %s ��廩廨 �廬 �廡廩廬�" - #~ msgid "Notice from: %s" #~ msgstr "���廣� ��廬: %s" - #~ msgid "Code [0x%02X]: %s" #~ msgstr "廡�� [0x%02X]: %s" - #~ msgid "Group Operation Error" #~ msgstr "廩���� �廚廣��廬-廡��廢�" - #~ msgid "Error setting socket options" #~ msgstr "廩���� �廡��廣廬 ���廨�廬 �廩廡廣" - #~ msgid "" #~ "Windows Live ID authentication: cannot find authenticate token in server " #~ "response" #~ msgstr "����廬 ���� Windows Live: �� ��廬� ��廢�� 廖�� ����廬 �廬���廬 �廩廨廬" - #~ msgid "Windows Live ID authentication Failed" #~ msgstr "����廬 ���� Windows Live ��廩��" - #~ msgid "Too evil (sender)" #~ msgstr "�廩��� �廨�廩廣 ���" - #~ msgid "Too evil (receiver)" #~ msgstr "��廡�� �廨�廩廣 ���" - #~ msgid "Available Message" #~ msgstr "���廣廬 �����廬" - #~ msgid "Away Message" #~ msgstr "���廣廬 廨���廡 ����廩�" - #~ msgid "<i>(retrieving)</i>" #~ msgstr " <i>(廩��廝)</i>" - #~ msgid "TCP Address" #~ msgstr "�廬��廬 TCP" - #~ msgid "UDP Address" #~ msgstr "�廬��廬 UDP" #, fuzzy #~ msgid "Display Statistics" #~ msgstr "廖���廖��廡�廬 廩� �廩廨廬" - #~ msgid "Screen name:" #~ msgstr "廩� �廬廢���:" - #~ msgid "Someone says your screen name in chat" #~ msgstr "��廩�� ����廨 �廬 廩�� �廢'��" - #~ msgid "" #~ "This server requires plaintext authentication over an unencrypted " #~ "connection. Allow this and continue authentication?" #~ msgstr "�廩廨廬 ��廨廩 ����廬 �� ��廢廚� �廣� 廬廡廩�廨廬 �� ��廢廚�廬.���廩�� ��� ��廬?" - #~ msgid "Use GSSAPI (Kerberos v5) for authentication" #~ msgstr "�廩廬�廩 �GSSAPI (廡廨�廨�廖 ��廨廖� 5) �廢�廨� ����廬" - #~ msgid "Invalid screen name" #~ msgstr "廩� �廬廢��� �� 廬廡��" - #~ msgid "Invalid screen name." #~ msgstr "廩�-廬廢��� �� 廬廡��." - #~ msgid "Screen _name:" #~ msgstr "廩� �廬廢���:" - #~ msgid "" #~ "%s%s<span weight=\"bold\">Written by:</span>\t%s\n" #~ "<span weight=\"bold\">Website:</span>\t\t%s\n" @@ -14825,10 +13871,10 @@ #~ "%s%s<span weight=\"bold\">��廬� 廣\"�:</span>\t%s\n" #~ "<span weight=\"bold\">�廬廨:</span>\t\t%s\n" #~ "<span weight=\"bold\">廩� 廡��廛:</span>\t\t%s" - #~ msgid "" #~ "The contact availability plugin (cap) is used to display statistical " #~ "information about buddies in a users contact list." #~ msgstr "" #~ "�廬�廖廝 ������ �����廬 ��廩�-廡廩廨 �廢�� ���廣 廖���廖�� 廣� ���廨�� �廨廩��廬 ��廩� �廡廩廨 " #~ "廩� ��廩廬�廩." +
--- a/po/hu.po Thu Aug 13 17:40:00 2009 +0000 +++ b/po/hu.po Mon Aug 24 19:21:21 2009 +0000 @@ -10,10 +10,10 @@ msgstr "" "Project-Id-Version: pidgin 2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-07-31 12:01+0200\n" -"PO-Revision-Date: 2009-07-31 11:58+0200\n" +"POT-Creation-Date: 2009-08-21 17:54+0200\n" +"PO-Revision-Date: 2009-08-21 17:54+0200\n" "Last-Translator: Gabor Kelemen <kelemeng at gnome dot hu>\n" -"Language-Team: Hungarian <gnome at gnome dot hu>\n" +"Language-Team: Hungarian <gnome at fsf dot hu>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -869,7 +869,7 @@ msgid "System Log" msgstr "Rendszernapl坦" -msgid "Calling ... " +msgid "Calling..." msgstr "H鱈v叩s��" msgid "Hangup" @@ -1508,6 +1508,31 @@ "Ez a b�v鱈tm辿ny 炭j t叩rsalg叩s megnyit叩sakor besz炭rja az utols坦 t叩rsalg叩st az " "aktu叩lis t叩rsalg叩sba." +#, c-format +msgid "" +"\n" +"Fetching TinyURL..." +msgstr "" +"\n" +"TinyURL lek辿r辿se��" + +msgid "Only create TinyURL for URLs of this length or greater" +msgstr "TinyURL k辿sz鱈t辿se csak a legal叩bb ilyen hossz炭 URL-c鱈mekhez" + +msgid "TinyURL (or other) address prefix" +msgstr "TinyURL (vagy m叩s) c鱈mel�tag" + +msgid "TinyURL" +msgstr "TinyURL" + +msgid "TinyURL plugin" +msgstr "TinyURL b�v鱈tm辿ny" + +msgid "When receiving a message with URL(s), use TinyURL for easier copying" +msgstr "" +"URL-c鱈meket tartalmaz坦 端zenet fogad叩sakor TinyURL haszn叩lata a m叩sol叩s " +"megk旦nny鱈t辿s辿hez" + msgid "Online" msgstr "El辿rhet�" @@ -1551,31 +1576,6 @@ msgid "Lastlog plugin." msgstr "Lastlog b�v鱈tm辿ny." -#, c-format -msgid "" -"\n" -"Fetching TinyURL..." -msgstr "" -"\n" -"TinyURL lek辿r辿se��" - -msgid "Only create TinyURL for urls of this length or greater" -msgstr "TinyURL k辿sz鱈t辿se csak a legal叩bb ilyen hossz炭 URL-c鱈mekhez" - -msgid "TinyURL (or other) address prefix" -msgstr "TinyURL (vagy m叩s) c鱈mel�tag" - -msgid "TinyURL" -msgstr "TinyURL" - -msgid "TinyURL plugin" -msgstr "TinyURL b�v鱈tm辿ny" - -msgid "When receiving a message with URL(s), TinyURL for easier copying" -msgstr "" -"URL-c鱈meket tartalmaz坦 端zenetek fogad叩sakor URL-r旦vid鱈t辿s a m叩sol叩s " -"megk旦nny鱈t辿s辿hez" - msgid "accounts" msgstr "fi坦kok" @@ -1728,7 +1728,6 @@ "A(z) ��%s�� 叩ltal bemutatott tan炭s鱈tv叩ny saj叩t al叩鱈r叩s炭. Nem ellen�rizhet� " "automatikusan." -#. FIXME 2.6.1 #, c-format msgid "The certificate chain presented for %s is not valid." msgstr "A k旦vetkez�h旦z bemutatott tan炭s鱈tv叩nyl叩nc nem 辿rv辿nyes: %s." @@ -1751,6 +1750,18 @@ msgid "Invalid certificate authority signature" msgstr "A hiteles鱈t辿sszolg叩ltat坦 al叩鱈r叩sa 辿rv辿nytelen" +#, c-format +msgid "Failed to validate expiration time for %s" +msgstr "Nem siker端lt ellen�rizni a k旦vetkez� lej叩rati idej辿t: %s" + +#, c-format +msgid "The certificate for %s is expired." +msgstr "%s tan炭s鱈tv叩nya lej叩rt." + +#, c-format +msgid "The certificate for %s should not yet be in use." +msgstr "A k旦vetkez� tan炭s鱈tv叩ny叩t m辿g nem lenne szabad haszn叩lni: %s." + #. Make messages #, c-format msgid "" @@ -1986,18 +1997,18 @@ msgstr "A f叩jl叩tvitel befejez�d旦tt" #, c-format -msgid "You canceled the transfer of %s" +msgid "You cancelled the transfer of %s" msgstr "Megszak鱈totta %s 叩tvitel辿t" msgid "File transfer cancelled" msgstr "F叩jl叩tvitel megszak鱈tva" #, c-format -msgid "%s canceled the transfer of %s" +msgid "%s cancelled the transfer of %s" msgstr "%s megszak鱈totta %s 叩tvitel辿t" #, c-format -msgid "%s canceled the file transfer" +msgid "%s cancelled the file transfer" msgstr "%s megszak鱈totta a f叩jl叩tvitelt" #, c-format @@ -2455,14 +2466,15 @@ "B�v鱈tm辿nyek IPC t叩mogat叩s叩nak tesztel辿se kiszolg叩l坦k辿nt. Ez regisztr叩lja az " "IPC parancsokat." -msgid "Join/Part Hiding Configuration" -msgstr "Bel辿p辿s/kil辿p辿s rejt辿s辿nek be叩ll鱈t叩sa" - -msgid "Minimum Room Size" -msgstr "Szoba legkisebb m辿rete" - -msgid "User Inactivity Timeout (in minutes)" -msgstr "Felhaszn叩l坦 inaktivit叩si id�tartama (perc)" +msgid "Hide Joins/Parts" +msgstr "Bel辿p辿s/kil辿p辿s elrejt辿se" + +#. Translators: Followed by an input request a number of people +msgid "For rooms with more than this many people" +msgstr "Enn辿l t旦bb jelenl辿v�vel rendelkez� szob叩khoz:" + +msgid "If user has not spoken in this many minutes" +msgstr "Ha a felhaszn叩l坦 nem sz坦lalt meg ennyi percig" msgid "Apply hiding rules to buddies" msgstr "Elrejt辿si szab叩lyok alkalmaz叩sa partnerekre" @@ -3916,20 +3928,24 @@ msgid "Logo" msgstr "Log坦" +#, c-format +msgid "" +"%s will no longer be able to see your status updates. Do you want to " +"continue?" +msgstr "%s nem fogja t旦bb辿 l叩tni az �n 叩llapotfriss鱈t辿seit. Folytatni akarja?" + +msgid "Cancel Presence Notification" +msgstr "Jelenl辿t-辿rtes鱈t辿s t旦rl辿se" + msgid "Un-hide From" msgstr "Rejtetts辿g visszavon叩sa" msgid "Temporarily Hide From" msgstr "Ideiglenesen elrejt" -#. && NOT ME -msgid "Cancel Presence Notification" -msgstr "Jelenl辿t-辿rtes鱈t辿s t旦rl辿se" - msgid "(Re-)Request authorization" msgstr "Enged辿lyez辿s (炭jra)k辿r辿se" -#. if(NOT ME) #. shouldn't this just happen automatically when the buddy is #. removed? msgid "Unsubscribe" @@ -4538,11 +4554,11 @@ msgid "" "role <moderator|participant|visitor|none> [nick1] [nick2] ...: Get the " -"users with an role or set users' role with the room." -msgstr "" -"role <moderator|participant|visitor|none>: [1. becen辿v] [2. becen辿v]" -"�� : Adott szereppel rendelkez� felhaszn叩l坦k lek辿r辿se vagy a felhaszn叩l坦k " -"szerep辿nek be叩ll鱈t叩sa a szob叩val." +"users with a role or set users' role with the room." +msgstr "" +"role <moderator|participant|visitor|none> [1. becen辿v] [2. becen辿v] ��: " +"Adott szerep撤 felhaszn叩l坦k lek辿r辿se vagy a felhaszn叩l坦k szerep辿nek " +"be叩ll鱈t叩sa a szob叩val." msgid "invite <user> [message]: Invite a user to the room." msgstr "invite <felhaszn叩l坦> [端zenet]: Felhaszn叩l坦 megh鱈v叩sa a szob叩ba." @@ -4685,9 +4701,6 @@ msgid "Transfer was closed." msgstr "Az 叩tvitel lez叩rva." -msgid "Failed to open the file" -msgstr "Nem siker端lt megnyitni a f叩jlt" - msgid "Failed to open in-band bytestream" msgstr "A bej旦v� adatfolyam megnyit叩sa meghi炭sult" @@ -4965,8 +4978,7 @@ msgid "Not expected" msgstr "V叩ratlan" -#, c-format -msgid "Friendly name changes too rapidly" +msgid "Friendly name is changing too rapidly" msgstr "A felhaszn叩l坦n辿v t炭l gyorsan v叩ltozik" #, c-format @@ -5535,8 +5547,9 @@ "%s meg szeretn辿 tekinteni az �n webkamer叩j叩t, de ez m辿g nem t叩mogatott." #, c-format -msgid "%s has sent you a webcam invite, which is not yet supported." -msgstr "%s webkamera-megh鱈v叩st k端ld旦tt, ami m辿g nem t叩mogatott." +msgid "%s invited you to view his/her webcam, but this is not yet supported." +msgstr "" +"%s megh鱈vta �nt a webkamer叩j叩nak megn辿z辿s辿re, de ez m辿g nem t叩mogatott." msgid "Away From Computer" msgstr "Nem vagyok a g辿pn辿l" @@ -5587,6 +5600,10 @@ msgid "The username specified is invalid." msgstr "A megadott felhaszn叩l坦n辿v 辿rv辿nytelen." +#, c-format +msgid "Friendly name changes too rapidly" +msgstr "A felhaszn叩l坦n辿v t炭l gyorsan v叩ltozik" + msgid "This Hotmail account may not be active." msgstr "Lehets辿ges, hogy ez a Hotmail fi坦k nem akt鱈v." @@ -5945,18 +5962,17 @@ msgid "Slapping %s..." msgstr "%s pofoz叩sa��" -# fixme: h叩t ez ezt jelenti ;) #. Goose means "to pinch someone on their butt" msgid "Goose" -msgstr "Seggber炭g叩s" +msgstr "Megcs鱈p辿s" #, c-format msgid "%s has goosed you!" -msgstr "%s seggber炭gta!" +msgstr "%s megcs鱈pte!" #, c-format msgid "Goosing %s..." -msgstr "%s seggber炭g叩sa��" +msgstr "%s megcs鱈p辿se��" #. A high-five is when two people's hands slap each other #. * in the air above their heads. It is done to celebrate @@ -6265,8 +6281,10 @@ msgid "Server port" msgstr "Kiszolg叩l坦 portja" -msgid "Received unexpected response from " -msgstr "V叩ratlan v叩lasz 辿rkezett a k旦vetkez�t�l: " +#. Note to translators: %s in this string is a URL +#, c-format +msgid "Received unexpected response from %s" +msgstr "V叩ratlan v叩lasz 辿rkezett innen: %s" #. username connecting too frequently msgid "" @@ -6276,9 +6294,11 @@ "�n t炭l gyakran jelentkezik ki/be. V叩rjon t鱈z percet 辿s pr坦b叩lja meg 炭jra. Ha " "tov叩bb folytatja, m辿g t旦bbet kell majd v叩rnia." -#, c-format -msgid "Error requesting " -msgstr "Hiba a k辿r辿skor: " +#. Note to translators: The first %s is a URL, the second is an +#. error message. +#, c-format +msgid "Error requesting %s: %s" +msgstr "Hiba %s lek辿r辿sekor: %s" msgid "AOL does not allow your screen name to authenticate here" msgstr "Az AOL nem enged辿lyezi ezen megjelen� n辿v hiteles鱈t辿s辿t" @@ -7072,6 +7092,9 @@ msgid "C_onnect" msgstr "Kapcs_ol坦d叩s" +msgid "You closed the connection." +msgstr "Lez叩rta a kapcsolatot." + msgid "Get AIM Info" msgstr "AIM inform叩ci坦k lek辿r辿se" @@ -7082,6 +7105,9 @@ msgid "Get Status Msg" msgstr "�llapot端zenet lek辿r辿se" +msgid "End Direct IM Session" +msgstr "A k旦zvetlen kapcsolat befejez辿se" + msgid "Direct IM" msgstr "K旦zvetlen IM" @@ -7913,7 +7939,7 @@ msgstr "F叩jlk端ld辿s" #, c-format -msgid "%d canceled the transfer of %s" +msgid "%d cancelled the transfer of %s" msgstr "%d megszak鱈totta a(z) %s 叩tvitel辿t" #, c-format @@ -9488,6 +9514,10 @@ msgid "Yahoo! JAPAN Protocol Plugin" msgstr "Yahoo! Jap叩n protokollb�v鱈tm辿ny" +#, c-format +msgid "%s has sent you a webcam invite, which is not yet supported." +msgstr "%s webkamera-megh鱈v叩st k端ld旦tt, ami m辿g nem t叩mogatott." + msgid "Your SMS was not delivered" msgstr "Az SMS nem lett k辿zbes鱈tve" @@ -9564,8 +9594,26 @@ msgid "Ignore buddy?" msgstr "Mell�zi a partnert?" -msgid "Your account is locked, please log in to the Yahoo! website." -msgstr "A fi坦kja z叩rolva van, k辿rem jelentkezzen be a Yahoo! weboldal叩ra." +msgid "Invalid username or password" +msgstr "�rv辿nytelen felhaszn叩l坦n辿v vagy jelsz坦" + +msgid "" +"Your account has been locked due to too many failed login attempts. Please " +"try logging into the Yahoo! website." +msgstr "" +"A fi坦k z叩rolva, mert t炭l sok bejelentkez辿si k鱈s辿rlet hi炭sult meg. Pr坦b叩ljon " +"meg bejelentkezni a Yahoo! weboldal叩ra." + +#, c-format +msgid "Unknown error 52. Reconnecting should fix this." +msgstr "Ismeretlen hiba: 52. Pr坦b叩ljon 炭jracsatlakozni." + +msgid "" +"Error 1013: The username you have entered is invalid. The most common cause " +"of this error is entering your e-mail address instead of your Yahoo! ID." +msgstr "" +"1013-as hiba: A megadott felhaszn叩l坦n辿v 辿rv辿nytelen. Ennek leggyakoribb oka, " +"hogy az e-mail c鱈m辿t adta meg a Yahoo! azonos鱈t坦ja helyett." #, c-format msgid "Unknown error number %d. Logging into the Yahoo! website may fix this." @@ -10332,6 +10380,124 @@ "seg鱈ts辿g辿vel visszat辿rhet ehhez az ablakhoz fi坦kok hozz叩ad叩s叩hoz, " "szerkeszt辿s辿hez vagy elt叩vol鱈t叩s叩hoz." +#. Buddy List +msgid "Background Color" +msgstr "H叩tt辿rsz鱈n" + +msgid "The background color for the buddy list" +msgstr "A partnerlista h叩tt辿rsz鱈ne" + +msgid "Layout" +msgstr "Elrendez辿s" + +msgid "The layout of icons, name, and status of the buddy list" +msgstr "A partnerlista ikonjainak, nev辿nek 辿s 叩llapot叩nak elrendez辿se" + +#. Group +#. Note to translators: These two strings refer to the background color +#. of a buddy list group when in its expanded state +msgid "Expanded Background Color" +msgstr "Kibontott h叩tt辿rsz鱈n" + +msgid "The background color of an expanded group" +msgstr "Kibontott csoport h叩tt辿rsz鱈ne" + +#. Note to translators: These two strings refer to the font and color +#. of a buddy list group when in its expanded state +msgid "Expanded Text" +msgstr "Kibontott sz旦veg" + +msgid "The text information for when a group is expanded" +msgstr "Sz旦veges inform叩ci坦k kibontott csoport eset辿n" + +#. Note to translators: These two strings refer to the background color +#. of a buddy list group when in its collapsed state +msgid "Collapsed Background Color" +msgstr "�sszecsukott h叩tt辿rsz鱈n" + +msgid "The background color of a collapsed group" +msgstr "�sszecsukott csoport h叩tt辿rsz鱈ne" + +#. Note to translators: These two strings refer to the font and color +#. of a buddy list group when in its collapsed state +msgid "Collapsed Text" +msgstr "�sszecsukott sz旦veg" + +msgid "The text information for when a group is collapsed" +msgstr "A sz旦veges inform叩ci坦k 旦sszecsukott csoport eset辿n" + +#. Buddy +#. Note to translators: These two strings refer to the background color +#. of a buddy list contact or chat room +msgid "Contact/Chat Background Color" +msgstr "Partner/cseveg辿s h叩tt辿rsz鱈ne" + +msgid "The background color of a contact or chat" +msgstr "Partner vagy cseveg辿s h叩tt辿rsz鱈ne" + +#. Note to translators: These two strings refer to the font and color +#. of a buddy list contact when in its expanded state +msgid "Contact Text" +msgstr "Partnersz旦veg" + +msgid "The text information for when a contact is expanded" +msgstr "Kibontott partner sz旦veges inform叩ci坦i" + +#. Note to translators: These two strings refer to the font and color +#. of a buddy list buddy when it is online +msgid "Online Text" +msgstr "El辿rhet� sz旦veg" + +msgid "The text information for when a buddy is online" +msgstr "El辿rhet� partner sz旦veges inform叩ci坦i" + +#. Note to translators: These two strings refer to the font and color +#. of a buddy list buddy when it is away +msgid "Away Text" +msgstr "T叩vol sz旦veg" + +msgid "The text information for when a buddy is away" +msgstr "T叩vol l辿v� partner sz旦veges inform叩ci坦i" + +#. Note to translators: These two strings refer to the font and color +#. of a buddy list buddy when it is offline +msgid "Offline Text" +msgstr "Kil辿pett sz旦veg" + +msgid "The text information for when a buddy is offline" +msgstr "Kil辿pett partner sz旦veges inform叩ci坦i" + +#. Note to translators: These two strings refer to the font and color +#. of a buddy list buddy when it is idle +msgid "Idle Text" +msgstr "R叩辿r� sz旦veg" + +msgid "The text information for when a buddy is idle" +msgstr "R叩辿r� partner sz旦veges inform叩ci坦i" + +#. Note to translators: These two strings refer to the font and color +#. of a buddy list buddy when they have sent you a new message +msgid "Message Text" +msgstr "�zenetsz旦veg" + +msgid "The text information for when a buddy has an unread message" +msgstr "Olvasatlan 端zenetekkel rendelkez� partner sz旦veges inform叩ci坦i" + +#. Note to translators: These two strings refer to the font and color +#. of a buddy list buddy when they have sent you a new message +msgid "Message (Nick Said) Text" +msgstr "�zenetsz旦veg (becen辿v eml鱈tve)" + +msgid "" +"The text information for when a chat has an unread message that mentions " +"your nickname" +msgstr "" +"Sz旦veges inform叩ci坦k, ha a cseveg辿s olvasatlan 端zeneteket tartalmaz, amelyek " +"az �n becenev辿t eml鱈tik" + +msgid "The text information for a buddy's status" +msgstr "Partner 叩llapot叩nak sz旦veges inform叩ci坦i" + #, c-format msgid "You have %d contact named %s. Would you like to merge them?" msgid_plural "" @@ -10767,8 +10933,8 @@ msgid "_Group:" msgstr "_Csoport:" -msgid "Auto_join when account becomes online." -msgstr "Automatikus _csatlakoz叩s a fi坦k el辿rhet�v辿 v叩l叩sakor." +msgid "Auto_join when account connects." +msgstr "Automatikus _csatlakoz叩s a fi坦k csatlakoz叩sakor." msgid "_Remain in chat after window is closed." msgstr "Cseveg辿sben mara_d叩s az ablak bez叩r叩sakor." @@ -10800,100 +10966,6 @@ msgid "/Buddies/Sort Buddies" msgstr "/Partnerek/Partnerek rendez辿se" -#. Buddy List -msgid "Background Color" -msgstr "H叩tt辿rsz鱈n" - -msgid "The background color for the buddy list" -msgstr "A partnerlista h叩tt辿rsz鱈ne" - -msgid "Layout" -msgstr "Elrendez辿s" - -msgid "The layout of icons, name, and status of the blist" -msgstr "A partnerlista ikonjainak, nev辿nek 辿s 叩llapot叩nak elrendez辿se" - -#. Group -msgid "Expanded Background Color" -msgstr "Kibontott h叩tt辿rsz鱈n" - -msgid "The background color of an expanded group" -msgstr "Kibontott csoport h叩tt辿rsz鱈ne" - -msgid "Expanded Text" -msgstr "Kibontott sz旦veg" - -msgid "The text information for when a group is expanded" -msgstr "Sz旦veges inform叩ci坦k kibontott csoport eset辿n" - -msgid "Collapsed Background Color" -msgstr "�sszecsukott h叩tt辿rsz鱈n" - -msgid "The background color of a collapsed group" -msgstr "�sszecsukott csoport h叩tt辿rsz鱈ne" - -msgid "Collapsed Text" -msgstr "�sszecsukott sz旦veg" - -msgid "The text information for when a group is collapsed" -msgstr "A sz旦veges inform叩ci坦k 旦sszecsukott csoport eset辿n" - -#. Buddy -msgid "Contact/Chat Background Color" -msgstr "Partner/cseveg辿s h叩tt辿rsz鱈ne" - -msgid "The background color of a contact or chat" -msgstr "Partner vagy cseveg辿s h叩tt辿rsz鱈ne" - -msgid "Contact Text" -msgstr "Partnersz旦veg" - -msgid "The text information for when a contact is expanded" -msgstr "Kibontott partner sz旦veges inform叩ci坦i" - -msgid "On-line Text" -msgstr "El辿rhet� sz旦veg" - -msgid "The text information for when a buddy is online" -msgstr "El辿rhet� partner sz旦veges inform叩ci坦i" - -msgid "Away Text" -msgstr "T叩vol sz旦veg" - -msgid "The text information for when a buddy is away" -msgstr "T叩vol l辿v� partner sz旦veges inform叩ci坦i" - -msgid "Off-line Text" -msgstr "Kil辿pett sz旦veg" - -msgid "The text information for when a buddy is off-line" -msgstr "Kil辿pett partner sz旦veges inform叩ci坦i" - -msgid "Idle Text" -msgstr "R叩辿r� sz旦veg" - -msgid "The text information for when a buddy is idle" -msgstr "R叩辿r� partner sz旦veges inform叩ci坦i" - -msgid "Message Text" -msgstr "�zenetsz旦veg" - -msgid "The text information for when a buddy has an unread message" -msgstr "Olvasatlan 端zenetekkel rendelkez� partner sz旦veges inform叩ci坦i" - -msgid "Message (Nick Said) Text" -msgstr "�zenetsz旦veg (becen辿v eml鱈tve)" - -msgid "" -"The text information for when a chat has an unread message that mentions " -"your nick" -msgstr "" -"Sz旦veges inform叩ci坦k, ha a cseveg辿s olvasatlan 端zeneteket tartalmaz, amelyek " -"az �n becenev辿t eml鱈tik" - -msgid "The text information for a buddy's status" -msgstr "Partner 叩llapot叩nak sz旦veges inform叩ci坦i" - msgid "Type the host name for this certificate." msgstr "�rja be a tan炭s鱈tv叩nyt birtokl坦 g辿p nev辿t." @@ -10978,6 +11050,9 @@ msgid "/Conversation/New Instant _Message..." msgstr "/T叩rsalg叩s/�j azonnali 端_zenet��" +msgid "/Conversation/Join a _Chat..." +msgstr "/T叩rsalg叩s/Csatlakoz叩s _cseveg辿shez��" + msgid "/Conversation/_Find..." msgstr "/T叩rsalg叩s/Ker_es辿s��" @@ -11360,7 +11435,7 @@ msgid "Estonian" msgstr "辿szt" -msgid "Euskera(Basque)" +msgid "Basque" msgstr "Baszk" msgid "Persian" @@ -11565,10 +11640,19 @@ #, c-format msgid "" "<FONT SIZE=\"4\">Help via e-mail:</FONT> <A HREF=\"mailto:support@pidgin.im" -"\">support@pidgin.im</A><BR/><BR/>" -msgstr "" -"<FONT SIZE=\"4\">Seg鱈ts辿g e-mailben (angol):</FONT> <A HREF=\"mailto:" -"support@pidgin.im\">support@pidgin.im</A><BR/><BR/>" +"\">support@pidgin.im</A> (This is a <A HREF=\"http://pidgin.im/cgi-bin/" +"mailman/listinfo/support\">mailing list</A>, and messages sent here are <A " +"HREF=\"http://pidgin.im/pipermail/support/\">publicly archived!</A> " +"Furthermore, we do <I><B>not</B></I> support MXit, Facebook, Skype, or any " +"other third-party plugins on this list.<BR/><BR/>" +msgstr "" +"<FONT SIZE=\"4\">Seg鱈ts辿g e-mailben:</FONT> <A HREF=\"mailto:support@pidgin." +"im\">support@pidgin.im</A> (Ez egy angol nyelv撤 <A HREF=\"http://pidgin.im/" +"cgi-bin/mailman/listinfo/support\">levelez�lista</A>, az ide k端ld旦tt levelek " +"<A HREF=\"http://pidgin.im/pipermail/support/\">nyilv叩nosan el辿rhet�k " +"lesznek!</A> Tov叩bb叩, ezen a list叩n <I><B>nem</B></I> t叩mogatjuk az MXit, " +"Facebook, Skype, vagy b叩rmely m叩s harmadik f辿lt�l sz叩rmaz坦 b�v鱈tm辿nyt.<BR/" +"><BR/>" #, c-format msgid "" @@ -12125,65 +12209,45 @@ #, c-format msgid "" -"%s %s\n" "Usage: %s [OPTION]...\n" "\n" -" -c, --config=DIR use DIR for config files\n" -" -d, --debug print debugging messages to stdout\n" -" -f, --force-online force online, regardless of network status\n" -" -h, --help display this help and exit\n" -" -m, --multiple do not ensure single instance\n" -" -n, --nologin don't automatically login\n" -" -l, --login[=NAME] enable specified account(s) (optional argument NAME\n" -" specifies account(s) to use, separated by commas.\n" -" Without this only the first account will be enabled).\n" -" --display=DISPLAY X display to use\n" -" -v, --version display the current version and exit\n" -msgstr "" -"%s %s\n" +msgstr "" "Haszn叩lat: %s [KAPCSOL�]��\n" "\n" -" -c, --config=K�NYVT�R A K�NYVT�R haszn叩lata a be叩ll鱈t坦f叩jlokhoz\n" -" -d, --debug hibakeres� 端zenetek ki鱈r叩sa a szabv叩nyos kimenetre\n" -" -f, --force-online el辿rhet� 叩llapot k辿nyszer鱈t辿se, a h叩l坦zat 叩llapot叩t坦l\n" -" f端ggetlen端l\n" -" -h, --help ezen s炭g坦 megjelen鱈t辿se 辿s kil辿p辿s\n" -" -m, --multiple ne csak egy p辿ld叩ny futhasson\n" -" -n, --nologin ne jelentkezzen be automatikusan\n" -" -l, --login[=N�V] automatikus bejelentkez辿s (a N�V param辿ter megadja a\n" -" haszn叩land坦 fi坦kok vessz�kkel tagolt list叩j叩t)\n" -" --display=K�PERNY� a haszn叩land坦 X megjelen鱈t�\n" -" -v, --version az aktu叩lis verzi坦 megjelen鱈t辿se 辿s kil辿p辿s\n" - -#, c-format -msgid "" -"%s %s\n" -"Usage: %s [OPTION]...\n" -"\n" -" -c, --config=DIR use DIR for config files\n" -" -d, --debug print debugging messages to stdout\n" -" -f, --force-online force online, regardless of network status\n" -" -h, --help display this help and exit\n" -" -m, --multiple do not ensure single instance\n" -" -n, --nologin don't automatically login\n" -" -l, --login[=NAME] enable specified account(s) (optional argument NAME\n" -" specifies account(s) to use, separated by commas.\n" -" Without this only the first account will be enabled).\n" -" -v, --version display the current version and exit\n" -msgstr "" -"%s %s\n" -"Haszn叩lat: %s [KAPCSOL�]��\n" -"\n" -" -c, --config=K�NYVT�R A K�NYVT�R haszn叩lata a be叩ll鱈t坦f叩jlokhoz\n" -" -d, --debug hibakeres� 端zenetek ki鱈r叩sa a szabv叩nyos kimenetre\n" -" -f, --force-online el辿rhet� 叩llapot k辿nyszer鱈t辿se, a h叩l坦zat 叩llapot叩t坦l\n" -" f端ggetlen端l\n" -" -h, --help ezen s炭g坦 megjelen鱈t辿se 辿s kil辿p辿s\n" -" -m, --multiple ne csak egy p辿ld叩ny futhasson\n" -" -n, --nologin ne jelentkezzen be automatikusan\n" -" -l, --login[=N�V] automatikus bejelentkez辿s (a N�V param辿ter megadja a\n" -" haszn叩land坦 fi坦kok vessz�kkel tagolt list叩j叩t)\n" -" -v, --version az aktu叩lis verzi坦 megjelen鱈t辿se 辿s kil辿p辿s\n" + +msgid "use DIR for config files" +msgstr "a K�NYVT�R haszn叩lata a be叩ll鱈t坦f叩jlokhoz" + +msgid "print debugging messages to stdout" +msgstr "hibakeres� 端zenetek ki鱈r叩sa a szabv叩nyos kimenetre" + +msgid "force online, regardless of network status" +msgstr "el辿rhet� k辿nyszer鱈t辿se a h叩l坦zat 叩llapot叩t坦l f端ggetlen端l" + +msgid "display this help and exit" +msgstr "ezen s炭g坦 megjelen鱈t辿se 辿s kil辿p辿s" + +msgid "allow multiple instances" +msgstr "t旦bb p辿ld叩ny enged辿lyez辿se" + +msgid "don't automatically login" +msgstr "ne jelentkezzen be automatikusan" + +msgid "" +"enable specified account(s) (optional argument NAME\n" +" specifies account(s) to use, separated by commas." +msgstr "" +"automatikus bejelentkez辿s (a N�V param辿ter megadja a\n" +" haszn叩land坦 fi坦kok vessz�kkel tagolt list叩j叩t." + +msgid "Without this only the first account will be enabled)." +msgstr "En辿lk端l csak az els� fi坦k lesz enged辿lyezve)." + +msgid "X display to use" +msgstr "Haszn叩land坦 X-megjelen鱈t�" + +msgid "display the current version and exit" +msgstr "az aktu叩lis verzi坦 megjelen鱈t辿se 辿s kil辿p辿s" #, c-format msgid "" @@ -12201,7 +12265,7 @@ "%swiki/GetABacktrace\n" msgstr "" "A %s %s 旦sszeomlott 辿s megpr坦b叩lt ki鱈rni egy magf叩jlt.\n" -"Ez a szoftver 辿s nem az �n hib叩ja miatt t旦rt辿nt.\n" +"Ez a szoftver, 辿s nem az �n hib叩ja miatt t旦rt辿nt.\n" "\n" "Ha ism辿telten el� tudja 叩ll鱈tani az 旦sszeoml叩st, akkor\n" "辿rtes鱈tse a Pidgin fejleszt�it a k旦vetkez� c鱈men:\n" @@ -12228,9 +12292,6 @@ msgid "/Media/_Hangup" msgstr "/M辿dia/_Lerak叩s" -msgid "Calling..." -msgstr "H鱈v叩s��" - #, c-format msgid "%s wishes to start an audio/video session with you." msgstr "%s hang/vide坦kapcsolatot szeretne ind鱈tani." @@ -12239,6 +12300,12 @@ msgid "%s wishes to start a video session with you." msgstr "%s vide坦kapcsolatot szeretne ind鱈tani." +msgid "Incoming Call" +msgstr "Bej旦v� h鱈v叩s" + +msgid "_Pause" +msgstr "_Sz端net" + #, c-format msgid "%s has %d new message." msgid_plural "%s has %d new messages." @@ -13178,9 +13245,6 @@ msgid "_Open Mail" msgstr "_Lev辿l megnyit叩sa" -msgid "_Pause" -msgstr "_Sz端net" - msgid "_Edit" msgstr "S_zerkeszt辿s" @@ -13244,66 +13308,6 @@ msgid "Displays statistical information about your buddies' availability" msgstr "Statisztikai inform叩ci坦k megjelen鱈t辿se a partnerek el辿rhet�s辿g辿r�l" -msgid "Server name request" -msgstr "Kiszolg叩l坦n辿v-k辿r辿s" - -msgid "Enter an XMPP Server" -msgstr "Adjon meg egy XMPP kiszolg叩l坦t" - -msgid "Select an XMPP server to query" -msgstr "V叩lassza ki a lek辿rdezend� XMPP kiszolg叩l坦t" - -msgid "Find Services" -msgstr "Szolg叩ltat叩sok keres辿se" - -msgid "Add to Buddy List" -msgstr "Felv辿tel a partnerlist叩ra" - -msgid "Gateway" -msgstr "�tj叩r坦" - -msgid "Directory" -msgstr "C鱈mt叩r" - -msgid "PubSub Collection" -msgstr "PubSub gy撤jtem辿ny" - -msgid "PubSub Leaf" -msgstr "PubSub lev辿l" - -msgid "" -"\n" -"<b>Description:</b> " -msgstr "" -"\n" -"<b>Le鱈r叩s:</b>" - -#. Create the window. -msgid "Service Discovery" -msgstr "Szolg叩ltat叩sfelt辿rk辿pez辿s" - -msgid "_Browse" -msgstr "_Tall坦z叩s" - -msgid "Server does not exist" -msgstr "A kiszolg叩l坦 nem l辿tezik" - -msgid "Server does not support service discovery" -msgstr "A kiszolg叩l坦 nem t叩mogatja a szolg叩ltat叩sfelt辿rk辿pez辿st" - -msgid "XMPP Service Discovery" -msgstr "XMPP szolg叩ltat叩sfelt辿rk辿pez辿s" - -msgid "Allows browsing and registering services." -msgstr "Lehet�v辿 teszi szolg叩ltat叩sok tall坦z叩s叩t 辿s regisztr叩l叩s叩t." - -msgid "" -"This plugin is useful for registering with legacy transports or other XMPP " -"services." -msgstr "" -"Ez a b�v鱈tm辿ny 旦r旦k旦lt 叩tvitelekkel t旦rt辿n�, vagy m叩s XMPP szolg叩ltat叩sokhoz " -"val坦 regisztr叩l叩shoz hasznos." - msgid "Buddy is idle" msgstr "A partner inakt鱈v" @@ -13396,6 +13400,68 @@ msgid "Apply in IMs" msgstr "Alkalmaz叩s 端zenetv叩lt叩sokban" +#. Note to translators: The string "Enter an XMPP Server" is asking the +#. user to type the name of an XMPP server which will then be queried +msgid "Server name request" +msgstr "Kiszolg叩l坦n辿v-k辿r辿s" + +msgid "Enter an XMPP Server" +msgstr "Adjon meg egy XMPP kiszolg叩l坦t" + +msgid "Select an XMPP server to query" +msgstr "V叩lassza ki a lek辿rdezend� XMPP kiszolg叩l坦t" + +msgid "Find Services" +msgstr "Szolg叩ltat叩sok keres辿se" + +msgid "Add to Buddy List" +msgstr "Felv辿tel a partnerlist叩ra" + +msgid "Gateway" +msgstr "�tj叩r坦" + +msgid "Directory" +msgstr "C鱈mt叩r" + +msgid "PubSub Collection" +msgstr "PubSub gy撤jtem辿ny" + +msgid "PubSub Leaf" +msgstr "PubSub lev辿l" + +msgid "" +"\n" +"<b>Description:</b> " +msgstr "" +"\n" +"<b>Le鱈r叩s:</b>" + +#. Create the window. +msgid "Service Discovery" +msgstr "Szolg叩ltat叩sfelt辿rk辿pez辿s" + +msgid "_Browse" +msgstr "_Tall坦z叩s" + +msgid "Server does not exist" +msgstr "A kiszolg叩l坦 nem l辿tezik" + +msgid "Server does not support service discovery" +msgstr "A kiszolg叩l坦 nem t叩mogatja a szolg叩ltat叩sfelt辿rk辿pez辿st" + +msgid "XMPP Service Discovery" +msgstr "XMPP szolg叩ltat叩sfelt辿rk辿pez辿s" + +msgid "Allows browsing and registering services." +msgstr "Lehet�v辿 teszi szolg叩ltat叩sok tall坦z叩s叩t 辿s regisztr叩l叩s叩t." + +msgid "" +"This plugin is useful for registering with legacy transports or other XMPP " +"services." +msgstr "" +"Ez a b�v鱈tm辿ny 旦r旦k旦lt 叩tvitelekkel t旦rt辿n�, vagy m叩s XMPP szolg叩ltat叩sokhoz " +"val坦 regisztr叩l叩shoz hasznos." + msgid "By conversation count" msgstr "T叩rsalg叩sok sz叩ma szerint" @@ -14316,6 +14382,3 @@ msgstr "" "Ez a b�v鱈tm辿ny XMPP kiszolg叩l坦kban vagy kliensekben v辿gzett hibakeres辿shez " "hasznos." - -#~ msgid "_Resume" -#~ msgstr "_Folytat叩s"