lyricat / Hotot

A Twitter Client
http://hotot.org
GNU Lesser General Public License v3.0
485 stars 130 forks source link

No 'systray' icon: Ubuntu Lucid #72

Open ottadini opened 12 years ago

ottadini commented 12 years ago

When I start hotot, I am apparently supposed to have a panel icon appear. I don't. I have the gnome notification area applet on my top panel, and I do get other notification icons.

lyricat commented 12 years ago

You can try to run it in the terminal, and tell me what it print out.

ottadini commented 12 years ago

Hi, this is the output from my shell. I quit hotot using ctrl+q.

Ben.

harb@joan:~$ hotot [init] overlay_variables() [init] on_load_finish() [init] on_load_finish() -> ext.load_builtin_exts(); [Load Extension] ./ext/org.hotot.cfw/entry.js [Load Extension] ./ext/org.hotot.gmap/entry.js [Load Extension] ./ext/org.hotot.imageupload/entry.js [Load Extension] ./ext/org.hotot.instapaper/entry.js [Load Extension] ./ext/org.hotot.sample/entry.js [Load Extension] ./ext/org.hotot.shorturl/entry.js [Load Extension] ./ext/org.hotot.translate/entry.js [Load Extension] ./ext/org.hotot.stat/entry.js [init] on_load_finish() -> ext.load_exts(); [init] on_load_finish() -> ext.init_exts(); [Init Extension] Hotot Content Firewall [Init Extension] Hotot GMap [Init Extension] Hotot Image Uploader [Init Extension] Hotot Instapaper [Init Extension] Sample [Init Extension] Hotot Short URL [Init Extension] Hotot Translate [Init Extension] Hotot User Stat [init] on_load_finish() -> push settings [init] on_load_finish() -> i18n.init() [i18n] Use locale: en [init] on_load_finish() -> init_ui() [init] init_dialogs() [init] done! [i18n] Use locale: en harb@joan:~$

On 16 November 2011 18:38, Shellex Wai < reply@reply.github.com

wrote:

You can try to run it in the terminal, and tell me what it print out.


Reply to this email directly or view it on GitHub: https://github.com/shellex/Hotot/issues/72#issuecomment-2756684

relgames commented 12 years ago

Take a look at http://code.google.com/p/hotot/issues/detail?id=449

ottadini commented 12 years ago

Cool thanks, will give it a try.

On 13 December 2011 02:36, Oleg Poleshuk < reply@reply.github.com

wrote:

Take a look at http://code.google.com/p/hotot/issues/detail?id=449


Reply to this email directly or view it on GitHub: https://github.com/shellex/Hotot/issues/72#issuecomment-3107483

lyricat commented 12 years ago

well ...

gmorten1 commented 12 years ago

this is still a problem. i believe it affects all desktops that use gnome3 under the hood (including ubuntu 11.10 and linux mint, even in gnome classic mode).

is described in issues 449 and 452 on the old issue tracker http://code.google.com/p/hotot/issues/detail?id=452 you can hide the problem by uninstalling the python-appindicator package. but i need that package for some other apps, e.g. virt-manager

gmorten1 commented 12 years ago

i see the OP was on lucid, so its apprently not a gnome3 specific problem.

some more details: this OP reported no notification icon at all, while some of the commenters on code.google.com reported a generic icon. that's what i get, a generic icon with limited functionality. what these issues all have in common is that they can be solved by removing that python-appindicator package

here's what it looks like on my linux mint 12 gnome classic desktop, after a left-click. the hotot icon is the ugly one to the left of the tomboy icon. note that the left click does not open hotot until you choose resume/hide sceenshot

ottadini commented 12 years ago

Hi, yeah I must admit I never uninstalled python-appindicator: I don't see that it's much of a solution to hotot's bug to remove some other package.

gmorten1 commented 12 years ago

i think the issue i described above is a duplicate of #17. but hairyson (the original poster on this issue) was on Lucid so he probably didn't have gnome shell. so either a) this issue isn't specific to gnome3 or gnome shell or b) there are 2 different issues (and mine is probably #17)

lyricat commented 12 years ago

cc @shellexy @xnreformer

ghost commented 12 years ago

fixed in 05f8a6c

ottadini commented 12 years ago

I don't know if my version matches '05f8a6c', but something new is broken:

harb@joan:~$ apt-cache policy hotot hotot: Installed: 2:0.9.7~git-1358-g5c7bb83-0ubuntu0ppa1~lucid1 Candidate: 2:0.9.7~git-1358-g5c7bb83-0ubuntu0ppa1~lucid1 Version table: *\ 2:0.9.7~git-1358-g5c7bb83-0ubuntu0ppa1~lucid1 0 500 http://ppa.launchpad.net/hotot-team/ppa/ubuntu/ lucid/main Packages 100 /var/lib/dpkg/status

harb@joan:~$ hotot Traceback (most recent call last): File "/usr/bin/hotot", line 14, in hotot.hotot.main() File "/usr/lib/pymodules/python2.6/hotot/hotot.py", line 423, in main indicator.set_icon_theme_path(utils.get_ui_object('image')) AttributeError: 'appindicator.Indicator' object has no attribute 'set_icon_theme_path'

On 28 January 2012 01:11, xz < reply@reply.github.com

wrote:

fixed in 05f8a6c


Reply to this email directly or view it on GitHub: https://github.com/shellex/Hotot/issues/72#issuecomment-3687106

ghost commented 12 years ago

now should be compatible with lucid: 61caec1

gmorten1 commented 12 years ago

the indicator icon looks ok now (in hotot 0.9.7.37), but it still doesn't behave correctly when the python-appindicator package is installed

normal behavior when the python-appindicator package is NOT installed:

with python-appindicator package installed:

ghost commented 12 years ago

the icon has been fixed in 23d745e the rest is appindicator's behavior. there is no way to change it

ottadini commented 12 years ago

Hello, Just noticed that the resume/hide functionality only works to resume the window. If Hotot's main window is visible, then resume/hide should hide it I suppose, but it doesn't. It does show it if it was hidden however.

Ben.

On 30 January 2012 20:48, xz < reply@reply.github.com

wrote:

the icon has been fixed in 23d745e the rest is appindicator's behavior. there is no way to change it


Reply to this email directly or view it on GitHub: https://github.com/shellex/Hotot/issues/72#issuecomment-3716883

gmorten1 commented 12 years ago

looks like someone already tried to fix this, but tested for the wrong value of DESKTOP_SESSION. here's a fix

% diff /usr/lib/pymodules/python2.7/hotot/hotot.py /usr/lib/pymodules/python2.7/hotot/hotot.py.sav
28c28
< if __import__('os').environ.get('DESKTOP_SESSION') in ('gnome-2d', 'classic-gnome','gnome-classic'):
---
> if __import__('os').environ.get('DESKTOP_SESSION') in ('gnome-2d', 'classic-gnome'):
ghost commented 12 years ago

cc @shellex @shellexy

gmorten1 commented 12 years ago

the default Linux Mint desktop has this problem also. there the value of DESKTOP_SESSION is 'gnome-shell'

instead of trying to use DESKTOP_SESSION to identify which desktops have this problem as i suggested previously, can you add a new preference "bypass python appindicator" to force HAS_INDICATOR = False ?

this may allow you to close issue #17 and maybe #122 also

do we agree this is a real issue? it seems clear to me. to summarize:

  1. on some gnome based desktops, when the python-appindicator package is installed, the indicator icon never indicates when there are new tweets
  2. when HAS_INDICATOR is set to False in hotot.py the indicator works ok
LiamDawe commented 12 years ago

Ubuntu 11.10 has no tray icon.

lyricat commented 12 years ago

The problem is that HAS_INDICATOR takes effect before hotot load settings. maybe I should remove appindicator support?

gmorten1 commented 12 years ago

hotot definitely works better with self.has_indicator = FALSE on some platforms (specifically the "classic" gnome desktop variations in ubuntu and linux mint).

but aren't there other platforms where the python-appindicator feature is useful?

milani commented 12 years ago

I just want to report that I have tray icon in Ubuntu 11.10

gmorten1 commented 12 years ago

shellex, i see what you mean about the self.has_indicator taking effect before the settings are loaded. so how about this? use a new environment variable to control the behavior. ugly but effective.

if (os.environ.get('DESKTOP_SESSION') in ('gnome-2d', 'classic-gnome')) or (os.environ.get('HOTOT_NOINDICATOR')):
    self.has_indicator = False

BTW i'm surprised more people aren't interested in this issue. i think it affects anyone using a classic gnome desktop on recent ubuntu or mint or... ?

gmorten1 commented 12 years ago

the panel icon is working correctly in 9.8.3 on mint 12 with gnome classic desktop and python-appindicator package installed. thanks!!!