We do not download pictures anymore; the BgRecentSource
always copies the wallpapers before actually adding them,
and the BgWallpapersSource handles system-wide wallpapers,
which typically do not change.
Remove this dead code, and the unecessary widgets that were
kept to keep this code working -- essentially, a few boxes
around the previewers.
This is a dedicate class to generate the preview. Not only
it renders the pixbuf of the wallpaper, but it also adds
lock screen or desktop frames on top of it. It also monitors
the time to keep the lock screen preview label always updated.
It will become essentially what CcBackgroundChooserDialog,
but without a dialog and organized differently. Right now,
it is as minimal as it could be and only shows wallpapers.
As we grow it, it may cover pictures and even colors.
The screenshot was only trying to capture gnome-shell's top bar to
overlay on the background preview but now on 3.26 the top bar might be
transparent which obviously wouldn't work at all for previewing a
different wallpaper.
https://bugzilla.gnome.org/show_bug.cgi?id=788206
Instead of using a GtkGrid and GtkBox to mimic what GtkStack and
GtkStackSwitcher already does for us, let's just use the latter. As a
result each source now has its separate GtkIconView. The pictures
source has a nested GtkStack to switch between the 'empty' box and the
view, which should simplify size-related issues.
https://bugzilla.gnome.org/show_bug.cgi?id=736366
We were assuming that setting stock-size would affect the emblems in
GEmblemedIcons, but not the icons themselves. This is a bit weird.
GtkCellRendererPixbuf:gicon is meant to work with
GtkCellRendererPixbuf:stock-size, and this was only working so far
because GTK_ICON_LOOKUP_FORCE_SIZE was not being used when loading
the icon.
Let's composite the emblems ourselves so that we don't have to depend
on this quirky interpretation of stock-size.
Unfortunately, we can not directly use the pixbufs because they are
unaware of the scale factor and GTK+ will scale them on HiDpi
displays. Since our pixbufs already have enough pixels to work well
with such devices, scaling them further will lead to giant, fuzzy
thumbnails. Hence, we use GtkCellRendererPixbuf:surface with the
scale factor codified in it.
https://bugzilla.gnome.org/show_bug.cgi?id=732375
If the background chooser is open and the user triggers a switch to a
different panel (i.e. from one of the gnome-shell indicators) the chooser
is still the topmost window and modal for g-c-c, however if the chooser is
interacted with in any way other than clicking the cancel button g-c-c
crashes.
Ensure that the chooser is destroyed if the panel is changed.
https://bugzilla.gnome.org/show_bug.cgi?id=700860
This could create crashers when no errors were detected, but
either the D-Bus call or loading the pixbuf return NULL.
Conflicts:
panels/background/cc-background-panel.c
This makes loading faster, with less I/O, avoids unnecessary
code duplication (around 1k lines shaved), and ensures that
all the panels link and work appropriately.
By the same token, it will stop external panels from being
created, and loaded.
https://bugzilla.gnome.org/show_bug.cgi?id=690036
The metaphor was valid when we used a monitor to display the preview
but now it doesn't work. There is no glass to reflect light. It
distracts from the preview and may look like a defect.
https://bugzilla.gnome.org/show_bug.cgi?id=676539