Gtk popovers item design for gnome-shell

Free time contributors to gnome contribute because they like the project and also to experiment things.

Sometimes I contribute to a patch that I see is difficult for me just because I like challenges, and gnome is a great place for that.

In the last two weeks I experienced both.

The first thing, as the tittle say, I tried to match gtk+ popover design for gnome-shell, and so far I achieved it! It was just a experiment, so I didn’t even ask designers if it is the wanted design before trying to do it. So it was risky, because maybe I was doing it wrong.

Here’s a comparison image:


and the bug report:

After some kind discussion, designers agree that this is not the wanted design, and that the first one is clearer, and probably is the desing that gtk+ popovers should have, and not backwards. And yeah, they are right! That is why I’m a programmer and they are designers =) (tough of course I guess they accept opinions from everybody, and even more if you provide code to test it in real).

But after all, I did it for experiment new things, so I hope designers don’t feel bad for “killing” the effort =).

In the good side, I fixed a somewhat related  bug in the meantime, which probably it wouldn’t get fixed if I didn’t try to do this.


On the other hand, last week I made a challenge. In fact three challenges:

1- Learn how shaders works

2- Modify C code from gnome

3- Learn how mutter works

So after all, and in very little measure, the next bug have all of this, so I tried to fix it:

After one day and a half, I finally achieved to make a set of patches to provide gnome-shell a real(real because it have inner and outer radius) vignnette effect! Also solving a bug that prevented to have gnome-shell and mutter vignnette effect to match.

So after all, I’m kinda happy I did two set of patches that were a challenge for me. Hope I can maintain this continuity along the weeks (probably I won’t be able)


12 thoughts on “Gtk popovers item design for gnome-shell

  1. Great post, my friend! I have to agree with the designers that the default design it looks better. At the same time its a bit depressing to work so hard and be turned down at the end. Maybe you should try to make an extension that will make this feature available to anybody who considers it to be better? “Hope I can maintain this continuity along the weeks (probably I won’t be able)” what is that? Im sure you can set a specific time once a week where you can work on hacking gnome shell. Thank you

    1. Thanks, yeah, designers have a good eye =)
      And about the extension, I don’t have time to maintain or answer question etc for an extension, but the patch is in the bug, so anybody can take the code an make an extension just copying pasting.

      About the time, I already spent free time in day work, since Im studying and working. Gnome contribution is also more free time.
      So I have to balance that and give priorities to university, which I pay, and work, which pays me, and normal live(for sanity! =)), tough it’s difficult if you what really want is coding gnome.

  2. Would prefer if gnome-shell just used gtkpopovers in the first place rather than trying to mimick one popover system with another.
    Elementary where kind of right about using popovers with a light background colour as well. Designers have more control then about how the shell popovers look.

    1. I’m not sure I understood, but gnome-shell don’t use GTK+, so we can’t use gtk popovers.
      Giving ligth theme to the entire gnome-shell is just CSS.
      What do you mean designers have more control?

  3. I know gnome shell doesn’t use gtk.
    I think it might be a good idea to start using it incrementally in anticipation of gtk getting a good scene graph though.
    Popovers seems like something which could be migrated over now.

    Are there valid reasons for still using clutter for them when gtk can do it now?

    If you are dead set in having dark popovers shouldn’t it be possible to define a shell css theme for gtk.

    I would prefer if the shell popover was of a light varient though as they just seem more integrated with adwaita which seems like a good idea to me.
    examples on elementary

    1. Well, make a “transition” to gtk is a big rewrite. We have to see what gtk+ scene graph can offer us for gnome-shell. Making half transitioning for a changing api and code is a waste of effort rigth now, with “none” of the scene graph work merged yet.
      Also, what do you gain as a user if we use gtk for gnome-shell? You would see the same, since afaik the design of gnome-shell would remain the same.
      For match those screneshots visual you just have to change some CSS in gnome-shell theme. If what you meant is that default theme should have ligth popovers, that’s a design question =) , and you can ask on #gnome-design

    2. gtk is just not suiteable / useable inside mutter. We want to use less gtk (ideally not use it at all) not more. It is an appliation toolkit and not designed for this kind of use.

      1. Is clutter not essentially dead going forward in favor of improving gtk?
        Trying to use more of it going forward doesn’t make much sense.

  4. I don’t see how its a wasted effort when it could be considered one step completed off the large list the list of things which need to be changed.
    What is the state of clutter moving forward by the way?
    I’m not entirely sure over the direction it’s headed at the moment but the last talk I saw about the topic spoke about how it maybe reaching eol maintenance mode with a greater emphasis on gtk.
    This could be a good incremental step towards migrating to gtk which shouldn’t require all of gnome-shell to be thrown out or rewritten in one go. There is also the possibility of collaboration with projects like elementary and budgie desktop crowd.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s