Commit graph

8 commits

Author SHA1 Message Date
Matthijs Velsink
01ae6f8908 background: Do not manually track items flags
Manually tracking which properties are set on a CcBackgroundItem is only
properly done in the background XML loader. Doing this manually is
error-prone and should instead be done inside the relevant property
setters. That would avoid forgetting to set some of the flags, which is
especially relevant for comparing two background items.

This adds automatic setting of background item flags to fix this.
2024-02-16 09:37:14 +00:00
velsinki
18413cb172 background: Make CcBackgroundPaintable independent
To make the CcBackgroundPaintable fully reusable, it has to know the
desired thumbnail size and the thumbnail factory. We add a width and
height property, and modify the thumbnail retrieval of CcBackgroundItem
to use the scale factor now.

This also allows us to greatly simplify the background sources, so that
they now only do one thing: provide CcBackgroundItems from different
sources.

We keep the fixed thumbnail height and width for the chooser, which
makes more sense now that it is in the chooser code instead of the
background source code.
2023-12-19 14:14:28 +00:00
Matthias Clasen
920302bb52 background: Allow all images
The code was filtering with a small list of known
image mimetypes, needlessly. Just allow any
image/* mimetypes.

Fixes: #2036
2022-08-25 17:06:12 +00:00
Robert Ancell
3eb0aaec28 background: Connect signals with g_signal_connect_object in swapped form 2020-03-30 16:18:49 +13:00
Robert Ancell
cd377768f5 Avoid warnings where G_LOG_DOMAIN is overriden
Undefine the value before overriding it to avoid the following warnings:
../panels/background/cc-background-chooser.c:22: warning: "G_LOG_DOMAIN" redefined
2019-11-04 22:12:05 +00:00
Robert Ancell
ff342dfbc7 background: Use g_autoptr to remove an explicit unref 2019-10-30 12:10:29 +00:00
Robert Ancell
5183faea04 background: Fix crash if a BgRecentSource is unreffed during an async operation
The BG_RECENT_SOURCE (user_data) call was done before it was checked if is was
cancelled. At this point user_data is pointing to an object that has been deleted.

Fixes #729
2019-10-22 14:03:14 +00:00
Georges Basile Stavracas Neto
9e39748d16
background: Introduce BgRecentSource
BgRecentSource is a background source implementation that
keeps track of recently added backgrounds.

The backgrounds are copied to $(local data dir)/backgrounds,
which is monitored. When copying files to this folder, the
current time is added as prefix to avoid filename collisions.
2019-05-30 20:09:50 -03:00