GNOME 3 integration #957

Closed
hbons opened this Issue Sep 6, 2012 · 18 comments

3 participants

@hbons
Owner
  • GNOME Shell plugin
    • Integrate the status icon menu into the dash icon
  • Use GTK3
    • wait for webkitgtk(-sharp) to support GTK3
    • wait for notify-sharp(-sharp) to support GTK3
    • appindicator(-sharp) to support GTK3
@ghost

Gnome-shell in Gnome 3.6 enlarges the message/system tray in order to better support smaller screens, which has resulted tray icons being bumped up to 48x48px. In turn, this has resulted in most non gnome-project applications having a tray icon that looks out of place. Ideally, Sparkleshare's current icons need to be scaled up, but there shouldn't be much harm in setting sparkleshare-48.png as a possible tray icon, given gnome-shell hides the tray most of the time.

@hbons
Owner

this can work as a temporary solution, as ideally i want to integrate the status icon menu in the dash app icon. we'll need a way to detect if we're running in gnome-shell so we can use the 48x48 icon.

@comzeradd

Or include and use a scalable (SVG) icon for tray, which I think will auto adjust ;)

@hbons
Owner

@comzeradd SVGs are great, but we really need different sizes in this case. scaling up an SVG that was made at 16x16 to 48x48 (or the other way round) doesn't look too good.

@comzeradd

@hbons Given the fact that are highly used by web designers instead of having multiple size PNGs, I think that they scale pretty well. But I'm not an expert, so I don't insist :)

Btw, what do you mean by "integrate the status icon menu into the dash icon". Usually everything that minimizes on tray and runs constanly in the background doesn't have a dash icon (for instance transmission torrent client).

@hbons
Owner

@comzeradd that sometimes work, but with more detailed artwork you want to have different sizes to prevent blurry renderings.

i mean to have SparkleShare's menu pop up by clicking the dash icon instead of having the status icon (until there's a better way of integrating). at least it's better than having it keep a spot in the notification area, which it wasn't designed for.

@comzeradd

Dash is not designed for that either (at least I can't recall any app that does that). Maybe you could just move it on the top bar. See for instance the Gpaste extenstion.

As mentioned above the 4 sparkleshare tray icons are really small for gnome-shell 3.6. Can you provide them at least at 48x48? Temporarily I created a patch for Fedora to use the only 48x48 you provide, but that way we loose the different sparkleshare states.

@hbons
Owner

@comzeradd the status area wasn't designed for apps either... rather for things that relate to hardware. having to choose between these two evils i think that the dash would be a better option, as there would be only once icon at a time. when you have the recent events open the dash icon will be there anyway.

if anyone knows a good way to detect we're running gnome-shell i can use the patch and i'll create some larger icons.

@comzeradd

You are right, but for these kind of things the right place (according to gnome guidelines) is the notification area :) All gnome application that need a tray (eg. transmission, rhythmbox) use that one.

Well I think it's no harm if you just provide the icons. I can use the patch so they show up nice on the notification area (at least for Fedora), instead of the 24x24 ones.

@sferris

Out of curiosity, how difficult would it be to separate the GUI out on its own? Using an IPC mechanism (DBUS?) to talk to a sparkleshare daemon? This way you could have different GUI’s for Gnome 2/3, Windows, etc.. and let package management decide which is the appropriate one to use. Personally, I’d love to run sparkleshare on a headless server. I suppose I just answered my own question though since it’d probably be a pain to support whatever IPC mechanism on windows/mac and dbus on linux. Still curious though.

@hbons
Owner

webkit sharp now seems to work with gtk3: shana/webkit-sharp@9e727d5

@hbons
Owner

a hackfest is being organised later this year in Vienna to improve GNOME 3 integration of Mono apps: https://live.gnome.org/Hackfests/dotNET2013

@hbons
Owner

at the hackfest, we've got a GTK+3 port working at https://github.com/hbons/SparkleShare/tree/GNOME3
still waiting for some bindings for libappindicator and webkitgtk.

@comzeradd

Hi,
I'm trying to build 1.3 for Linux (Fedora) but it seems that it needs some new verison of mono libraries:

checking for GTKSHARP... no
configure: error: Package requirements (gtk-sharp-3.0 >= 2.99.1) were not met:
No package 'gtk-sharp-3.0' found

But I can't find the sources for gtk-sharp-3.0 on mono's website:
http://download.mono-project.com/sources/
Is it bundled with some other package?

@hbons
Owner

@comzeradd the readme file has a link on how to build and get all the dependencies.

@comzeradd

Missed that! RTFM :)

It seems that gtk-sharp3 has not yet been released, so I'll have to wait anyway until they ship it in order to push sparkleshare 1.3 to Fedora repos.

Thanks

@hbons
Owner

@comzeradd yes, but i decided to make a GTK+3 release anyway to avoid the chicken-and-egg situation. :)

@hbons hbons added up-for-grabs and removed up-for-grabs labels Jul 10, 2016
@hbons
Owner

Considering this done. Will look at integrating the status icon elsewhere once that support has been dropped in GNOME 3.

@hbons hbons closed this Jul 10, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment