cawbird icon indicating copy to clipboard operation
cawbird copied to clipboard

tray icon

Open clumsyfingers opened this issue 5 years ago • 19 comments

any chance ?

clumsyfingers avatar Oct 12 '19 10:10 clumsyfingers

What functionality would you have in a tray icon? And what's the use case? IM apps had a tray icon to log in/out/set status, but Twitter doesn't do that. IM apps could be hidden until someone contacted you, but Cawbird already pops up notifications for DMs and mentions. Gnome has moved away from tray icons, and I've not found a case where I've missed them.

IBBoard avatar Oct 12 '19 14:10 IBBoard

Not everyone uses Gnome, and Cawbird works fine in KDE etc but I don't see the point of a tray icon either.

pizzadude avatar Oct 17 '19 08:10 pizzadude

Oh, sorry I opened another issue related to this. I think what he wants is something similar to 'slack' or 'dropbox' client do as a tray icon as shown in pic below.

image

rahulrajpl avatar Nov 02 '19 04:11 rahulrajpl

But what is the required use case and functionality?

IBBoard avatar Nov 02 '19 09:11 IBBoard

I don't really see the point in a tray icon either. There's already notifications.

p1u3o avatar Nov 25 '19 10:11 p1u3o

I'd love to have a tray icon, so it doesn't take space in the task bar.

j1warren avatar Dec 09 '19 19:12 j1warren

Yeah, I'd like a tray icon so that I can close the window, freeing up task bar space, but then re-opening later with tweets in the same position. It's just how I like to read twitter.

ashb avatar Jan 15 '20 22:01 ashb

As someone said (then seemingly deleted) they've been deprecated for a while and not shown in Gnome since 3.26.

Maybe what we could do is an option to use a persistent notification to show how many unread messages there are? Clicking that would bring Cawbird back in to focus, it would actually do something useful, it would integrate with the new Gnome approach, and people who minimise Cawbird presumably have it set to "don't autoscroll" anyway (because what's the point in having it open and scrolling past tweets if you're not actually looking at them?).

One of the other suggestions that I've read is to use Workspaces and put "stuff I only user intermittently" on another workspace. Given that even Windows supports workspaces/virtual desktops these days then it's another option for people.

IBBoard avatar Jan 16 '20 16:01 IBBoard

I'm using Cawbird on Linux Mint XFCE and it would be great to have a tray icon, so when i click the close or minimize button, it hides it from the taskbar, but keeps it running in the background, similar to many of the other apps i use that do this as well (e.g. telegram, qbittorrent). Left clicking on the tray icon would bring the window back in focus and right-clicking would show a context menu with entries to open/show, maybe an entry to enable/disable notifications (something superseding the Notifications tab options in settings), settings, and close/quit.

philipzae avatar Feb 02 '20 18:02 philipzae

While I wait for this issue to be resolved, I did some digging online and prepared a python script that would put a tray icon in to provide basic functionality. https://pastebin.com/nZQ8L7Zz

I run the script from the terminal like so, which allows me to close the terminal $ ( python cawbird.py &)

philipzae avatar Feb 03 '20 04:02 philipzae

I now understand the appeal of a tray icon, and I use KDE so the dropping of support for tray icons in gnome doesn't affect me. That python script works fine, @IBBoard could adapt it and include it in Cawbird probably very easily.

pizzadude avatar Feb 23 '20 18:02 pizzadude

@philipzae's script is fine as a work-around, but I wouldn't want to support it. The use of os.system isn't a great way to work, and it probably only works because you've only got one account. I've got three accounts in Cawbird and running cawbird brings up a new window with one of the other accounts opened.

I also don't know how any of this would play with Snap/Flatpak/etc (which we semi-support)

IBBoard avatar Feb 23 '20 20:02 IBBoard

@IBBoard definitely wouldn't suggest you support it, but wait for your proper implementation.

For everyone: Came across this app which can make any app into a tray icon, as another work-around. https://github.com/user-none/KDocker

philipzae avatar Apr 04 '20 20:04 philipzae

A KDE-based Twitter client (Choqok) has the option to show the number of unread tweets since you last had the window active as a tray icon, it's the only feature I miss. If you don't like the idea of implementing it, that's fine... If you could expose some metrics like "number of new/unread tweets" via d-bus, that would be more than sufficient to let us do whatever weird & wacky things we feel compelled to do through external scripts and whatnot. :)

jaysonlarose avatar May 14 '20 20:05 jaysonlarose

I am using XFCE on Fedora 32, and yeah, I would like to see the feature on Cawbird app, thanks

sallyhaj avatar Jun 15 '20 20:06 sallyhaj

I use plain old Openbox and tint2, no DE. I'd love to be able to close Cawbird to tray so it doesn't take up precious space in the taskbar.

txtsd avatar May 02 '21 08:05 txtsd

Just dropped by to give this issue my once-per-year poke. :)

The primary use case I have for this is the ability to display the number of unread tweets since the last time the main window was active.

If this is disagreeable due to some sort of deep-seated opinion on how UI/UX is supposed to be, I would also settle for some DBus integration to allow me to poll Cawbird for unread count, and I'll quietly commit the heresy behind closed doors. DBus is criminally underutilized.

jaysonlarose avatar Jul 07 '21 10:07 jaysonlarose

DBus could be an option. From some bits that I read then it already uses DBus at some level (although possibly just internal Gnome/GTK stuff and not properly published). There are command-line switches for things like opening windows and tweeting, and they seem to communicated over DBus with the running instance. That's why we had #246.

We might need some rearchitecting to make counts readily accessible, though, because the current design is very page-centric and closely ties the data to the widgets rather than being a single model loosely coupled to widgets.

IBBoard avatar Jul 07 '21 17:07 IBBoard

I'd love to see it any way you can make it available! Implementing the org.freedesktop.DBus.Properties interface would be the "proper" way of doing it, I guess, which is cool because you can subscribe to change events... but I'm not picky. I'll gladly poll the number periodically by calling a method if need be.

Truth be told, I'd even hit up a UNIX socket or something if that's easier to implement...

You said the word "rearchitecting", which reminds me of the time an old boss of mine got upset when I told him the feature he wanted implemented was going to be a lot more work than he assumed. "Why?", he asked, "It's all just a bunch of if/then statements, right?". It took an enormous effort of willpower on my part, but I remained a free man, and he remained among the living. I guess what I'm trying to say is I'll be patient. Open Source is a labor of love, after all, and nothing can sour those grapes faster than choosy beggars. But it would be awesome to see. :)

(I know implementing org.freedesktop.DBus.Properties can be a pain, because I've implemented my own hacky version of it using dbus-python. Not anything I'd feel proud of publishing.)

jaysonlarose avatar Jul 16 '21 00:07 jaysonlarose