linuxmint / cinnamon

A Linux desktop featuring a traditional layout, built from modern technology and introducing brand new innovative features.
GNU General Public License v2.0
4.4k stars 726 forks source link

Pidgin status icon. #3223

Closed SkyMaverick closed 9 years ago

SkyMaverick commented 10 years ago

Pidgin status icon is not showing even if in the settings it’s set to always show. Workaround: open Settings - set "never show" and "show always" again. Using: Mint 17 cinnamon (32bit).

zwieberl commented 10 years ago

Same here with Fedora 20 (64bit). The problem affects not only the Pidgin status icon, but also the Dropbox-Icon (Nautilus, not Nemo) and probably all other external status icons as well (I only have those two). Switching to panel-edit-mode and moving the status-icon-applet around also lets the icons appear, but as soon as there is a change in the icons (blink on new message in pidgin or refreshing Dropbox) they disappear.

mtwebster commented 9 years ago

referencing lp bug: https://bugs.launchpad.net/linuxmint/+bug/1325103

alienos commented 9 years ago

I confirm this bug Using: Linux Mint 17 Cinnamon (64bit)

chakko17 commented 9 years ago

Has this been fixed in Linux Mint 17 Cinnamon (32-bit)? The Pidgin tray icon doesn't seem to disappear anymore on a status change. Also no problem with Mint Updater icon.

Edit: Ok, spoke to soon... the tray icon symbol still disappears. Shame, i really hope this gets fixed soon, as it's pretty severe, and it affects some of the pre installed applications.

chakko17 commented 9 years ago

Okn, now the Mint-Updater icon disappeared. Seriously, this is getting a bit silly that stuff like this isn't high on the dev's agenda.

tray_bug

mtwebster commented 9 years ago

It may seem a bit silly, but it's a bit hard to fix things like this that can't be reproduced.

chakko17 commented 9 years ago

I see, nevermind the "silly" comment then, i'm convinced you guys give it your best.

mtwebster commented 9 years ago

It's ok :) Issues with this between distros I expect, what isn't expected is differences within the same distro, it makes me start to suspect lower level things like drivers, etc.. unfortunately.

chakko17 commented 9 years ago

Just let me know if you need some hardware related infos maybe. On a Lenovo Thinkpad T61 here, if that helps.

Btw, a little workaround for those who closed Pidgin while it was minimized, and, when starting it again, the tray icon doesn't show up: Click the Pidgin launcher to bring up the contact list again, then, as described above, go into the preferences, and set tray icon visibility to "never show", and then "show always" again. I fiddled in the Pidgin prefs, and set list_visible string to 1, because i didn't know clicking on the launcher makes the list visible again...

imarkskinner commented 9 years ago

I keep noticing gaps between applets and have only just figured out this is what is causing it, some of them are disappearing, pidgin almost all the time.

aPollO2k commented 9 years ago

I can confirm the bug. Another workaround is to co to the pnael settings and change the panelsize a bit, then the icon appears and you can switch back to default size.

If some more informations needed: i can provide logs or futher informations.

Btw: ~ $ cinnamon --version Cinnamon 2.2.13

anandrkris commented 9 years ago

https://github.com/linuxmint/Cinnamon/issues/481 > System tray icon issues are discussed here as well. Referencing it.

Tolaris commented 9 years ago

The problem seems to be related to the Panel setting "Allow Cinnamon to scale panel text and icons according to the panel heights". Setting "Use customised panel size" and unchecking the above fixes this issue.

screenshot from 2014-08-07 12 20 31

swarnendubiswas commented 9 years ago

I have a similar problem with Ubuntu Gnome 14.04.1, and Cinnamon 2.3 from the daily ppa. The suggestion from Tolaris doesn't work for me. There is a Ubuntu Indicator plugin for Pidgin for Unity, enabling that shows the icon in the system panel, but there is still the blank whitespace corresponding to the original icon. This is easily reproducible.

Tolaris commented 9 years ago

I retract my "fix". Changing the scaling just causes the panel to reload or redraw, which seems to fix the issue. But starting with the recommended settings does not reliably fix it.

marcopfs commented 9 years ago

I noticed that on the systray applet there's an exception for pidgin and thunderbird's icons. After remove that exception it seems to work!

From a cold boot, the first time I open pidgin, the trayicon is garbled but it get fixed closing and open it again.

The changes in my test:

numian@x3c:~/.local/share/cinnamon/applets/systray-fix@marcosantos.me@test-fix>git diff master 
diff --git a/applet.js b/applet.js
index 1284717..dffea78 100644
--- a/applet.js
+++ b/applet.js
@@ -73,8 +73,6 @@ MyApplet.prototype = {
                 return;
             }

-            let buggyIcons = ["pidgin", "thunderbird"];
-
             global.log("Adding systray: " + role + " (" + icon.get_width() + "x" + icon.get_height() + "px)");            

             if (icon.get_parent())
@@ -82,7 +80,7 @@ MyApplet.prototype = {

             if (global.settings.get_boolean('panel-scale-text-icons')) {
                 let disp_size = this._panelHeight * ICON_SCALE_FACTOR;
-                if (icon.get_width() == 1 || icon.get_height() == 1 || buggyIcons.indexOf(role) != -1) {
+                if (icon.get_width() == 1 || icon.get_height() == 1) {
                     icon.set_height(disp_size);
                 }
                 else {
aPollO2k commented 9 years ago

the solution with close and restart pidgin works for me too without the fix

aPollO2k commented 9 years ago

@numian since i tried your fix, thunderbird icon is buggy, too

swarnendubiswas commented 9 years ago

Here is a possible workaround, just for Pidgin. We can use Unity Indicator plugin, and disable showing Pidgin systray icon from Preferences. That seems to work.

pepinoogorino commented 9 years ago

Cinnamon 2.2.16 was relased, so we will test again...

mezaway commented 9 years ago

I've just updated to Cinnamon 2.2.16 and this issue is still happening. What I do is launch pidgin, wait for it to actually show up on the screen, then launch it again (won't run two copies) and then the indicator appears.

pepinoogorino commented 9 years ago

Yap. Unfortunately, the problem still exists...

calestyo commented 9 years ago

I have a similar problem, described here #3515 for the reference.

clefebvre commented 9 years ago

https://github.com/linuxmint/Cinnamon/commit/4aabc5a4944d9d7c864e47b971ca252431781ac0 and https://github.com/linuxmint/Cinnamon/commit/d1a9cbd8dba2187230b0949b9b6d1e19cefe17e9 were added to master to tackle this issue (might also fix #3515)

maedox commented 9 years ago

Applying 4aabc5a and d1a9cbd to my Mint 17 installation seems to have fixed the Pidgin problem. The icon used to disappear all the time. Thank you! :D

maedox commented 9 years ago

Nope, I spoke too soon. It still disappears. :-/

calestyo commented 9 years ago

I also have the issue (still running on Cinnamon 2.2.16) that sometimes the icon is actually rendered correctly, but I cannot right/left click to it (or rather said, nothing happens when I do).

Maybe somehow related.

collinss commented 9 years ago

@calestyo https://github.com/linuxmint/Cinnamon/issues/2371

mormegil6 commented 9 years ago

I think I found the easiest workaround of this issue. My configuration: Linux Mint 17 64bit, Cinnamon 2.2.16, Pidgin 2.10.9 Pidgin launching at startup, "Allow Cinnamon to scale panel.." enabled Using 'looking glass' I have noticed, that there are 20x20px icons loaded. In location /usr/share/pixmaps/pidgin/tray/Mint-X/status (from where my icon is loaded) are folders with icons in sizes: 16, 22, 32 and 48 pixels. So I just added links: sudo ln -s 22 20 (to be sure, I also linked 17 18 19 21). And... it works! Also I have noticed, that if we'll add any delay in launching Pidgin at startup, the icon will not show despite this trick with links.

calestyo commented 9 years ago

The problem with with scaling is, that it also scales the fonts without giving the user separate control over how much they're scaled. So in the end it not only looks ugly, but also wastes far to much space for text.

See #3348.

kenden commented 9 years ago

Incorrect initial comment: Looks good in Cinnamon 2.4

Updated comment: On Cinnamon 2.4.5, it only looks good where resuming the computer from Sleep. But after rebooting the machine, the problem is still present, and the workaround must be applied (open Settings - set "never show" and "show always" again).

drfragment commented 9 years ago

Still persists in Cinnamon 2.4

jjcale commented 9 years ago

Yes, the above workaround works for me: sudo ln - s 22 20 and 0 start-up delay

Linux Mint 17 Qiana Linux beetle 3.13.0-24-generic #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux Cinnamon 2.2.16

tisma commented 9 years ago

I confirm this issue with pidgin system tray icon.

Linux Mint 17 64bit Cinnamon 2.2.16

sergioad commented 9 years ago

Hello same thing here with Steam on Cinnamon 2.2 and 2.4 on Antergos

Fishbowler commented 9 years ago

Pidgin still problematic with no workarounds. Mint 17.1 64bit, Cinnamon 2.4.5

romario74 commented 9 years ago

Can confirm the problem on Mint 17.1 32bit, Cinnamon 2.4.5 - Icon disappears.

luisfpg commented 9 years ago

To me the Google Chrome icon always disappears too. I've got the hangouts extension, and curiously, I've never seen the hangouts icon missing, only the main chrome icon. The shutter icon also disappears sometimes. The workaround I use is to go to panel settings and change the panel size. But is annoying to do it every day. I'm on Arch 64 bit, using Cinnamon 2.4.6. Maybe it is a race condition? Thinking as a workaround, forcing a refresh on icons just after they show up wouldn't be better than having a (small) blacklist of buggy icons?

ntarocco commented 9 years ago

I am on Mint 17.1 64bit Cinnamon 2.4.6 and I have the same problem.

lduboeuf commented 9 years ago

+1

masac commented 9 years ago

+1 Linux Mint 17.1 Cinnamon 32

dmadiedo commented 8 years ago

I don't understand why this is closed. Item persists in Linux Mint 17.1

calestyo commented 8 years ago

It does seem to work since 2.6.7 on Debian sid.

aPollO2k commented 8 years ago

Pidgin and Thunderbird seems to work. But KeePass2 (with mono-complete) have the same issue for me on Linux Mint 17.2 and Cinnamon 2.6.13

brouillon commented 8 years ago

+1 This bug is still here in Linux Mint 17.2 64bits - Cinnamon 2.6.13. First launch == blank space restart pidgin icon is displayed.

Same for Shutter's tray icon. and some times bad scaling for update manager but it's another issue.

Please reoppen this.

kmdm commented 8 years ago

This bug can also be resolved (probably obviously given the above workaround) in looking glass by inspecting the height (16 in my case) and setting it to 20 then back to 16.

E.g:-

r(0).set_height(20); r(0).set_height(16);

Interestingly those have to be two separate commands "r(0).set_height(20); r(0).set_height(16);" on one line does not work to show the icon (but will work once the icon has been shown...)

brouillon commented 8 years ago

@kmdm : your comment is so useful, I found a fix, you can modify function resize_icon in '/usr/share/cinnamon/applets/systray@cinnamon.org/applet.js' with this one :

resize_icon: function(icon, role) {
        if (this._scaleMode) {
            let disp_size = this._panelHeight * ICON_SCALE_FACTOR;
            let size;
            if (icon.get_height() != disp_size) {
                size = disp_size;
            }
            else {
                // Force a resize with a slightly different size
                size = disp_size - 1;
            }

            // Don't try to scale buggy icons, give them predefined sizes
            // This, in the case of pidgin, fixes the icon being cropped in the systray
            if (["pidgin", "thunderbird", "shutter"].indexOf(role) != -1) {
                if (disp_size < 22) {
                    size = 16;
                }
                else if (disp_size < 32) {
                    size = 22;
                }
                else if (disp_size < 48) {
                    size = 32;
                }
                else {
                    size = 48;
                }
            }
            let timerId = 0;
            let i = 0;
            Mainloop.timeout_add(500, Lang.bind(this, function() { 
                icon.set_size(size, size);
                global.log("Resized " + role + " (" + icon.get_width() + "x" + icon.get_height() + "px)");
                i++;
                if (i == 2) {
                    Mainloop.source_remove(timerId);
                }
            }));
            //icon.set_size(size, size);
            //global.log("Resized " + role + " (" + icon.get_width() + "x" + icon.get_height() + "px)");
        }
        else {
            // Force buggy icon size when not in scale mode
            if (["pidgin", "thunderbird", "shutter"].indexOf(role) != -1) {
                let timerId = 0;
                let i = 0;
                timerId = Mainloop.timeout_add(500, Lang.bind(this, function() { 
                    icon.set_size(16, 16);
                    global.log("Resized " + role + " (" + icon.get_width() + "x" + icon.get_height() + "px)");
                    i++;
                    if (i == 2) {
                        Mainloop.source_remove(timerId);
                    }
                }));
                //icon.set_size(16, 16);
                //global.log("Resized " + role + " (" + icon.get_width() + "x" + icon.get_height() + "px)");
            }
        }
    },

I added 'shutter' to the array of bugged icons and put a delay of 500ms before applying resizing.

kenden commented 8 years ago

@brouillon Cool! Would you mind submitting a pull request for this?

pepinoogorino commented 8 years ago

@brouillon @kenden This is not the correct solution. Icon pidgin has been fixed, but... mint update icon has been broken (empty area) and "probably" is not "buggy icon" ;)

brouillon commented 8 years ago

In my case pidgin icon is not fixed with Linux Mint 17.2 64bits - Cinnamon 2.6.13, first launch == blank space. It's ok for you ?