Commit graph

59 commits

Author SHA1 Message Date
Ryan Dwyer
32ba8154b8 Sway clients: Exit gracefully when compositor is unavailable 2018-10-15 21:57:59 +10:00
Brian Ashworth
9ea99a5d36 swaybg: fix increasingly smaller bg on hotplug
render_background_image alters the scale that cairo uses. Depending on
the image mode, resolution, and image size, this may cause the surface
to be rendered increasingly smaller. By calling cairo_save and
cairo_restore, any changes to the cairo settings by the function are
not kept as a side effect.

The surface that swaybg uses is also now cleared before rendering a frame.
This is needed to avoid artifacts on resolution or scale changes with
certain combinations of image modes, resolutions, and image sizes. This
was also part of the increasingly smaller background visual since it
made it so it was not obvious the region being rendered to was smaller
and caused an increasing number of smaller images to be appear for each
hotplug.
2018-09-23 15:17:36 -04:00
Brian Ashworth
43d1ffc9dd Allow a fallback color to be specified for swaybg
This allows for a color to be set when the wallpaper does not fill the
entire output. If specified, the fallback color is also used when the
image path is inaccessible.
2018-08-08 15:37:06 -04:00
minus
c73a40555f swaybar/bg: Fix crash on DPMS off
When turning off displays via DPMS, swaybar and swaybg still tried to
render, but did not get a valid buffer, causing them to crash.
2018-07-14 00:04:02 +02:00
emersion
63b4bf5000
Update for swaywm/wlroots#1126 2018-07-09 22:54:30 +01:00
emersion
a3ecfcfc2c
swaybg: remove assertions with side-effects 2018-05-07 17:26:21 +01:00
Drew DeVault
b32bf595ae Initial swaylock port 2018-04-04 18:47:48 -04:00
Drew DeVault
a28730edee Move swaybg background rendering into common/
swaylock will use it too
2018-04-04 18:47:48 -04:00
Drew DeVault
294a33458f
Merge pull request #1710 from emersion/swaybg-empty-input-region
swaybg: set an empty input region
2018-04-03 18:57:02 -04:00
emersion
6929124cef
swaybg: rename w{width,height} to buffer_{width,height} 2018-04-03 16:56:12 -04:00
emersion
9b4f8637a9
swaybg: add HiDPI support 2018-04-03 16:47:06 -04:00
emersion
1382b66217
swaybg: set an empty input region 2018-04-03 15:23:51 -04:00
Drew DeVault
6907a2f2cf Set exclusive zone to -1 for swaybg 2018-03-30 18:29:43 -04:00
Drew DeVault
d39bda76c4 Address review comments 2018-03-28 14:43:23 -04:00
Drew DeVault
653853062f Refactor configure/ack configure/commit flow 2018-03-28 14:25:19 -04:00
Drew DeVault
17e39f6291 s/scaling_mode/background_mode/g
Since it now includes SOLID_COLOR this is a more appropriate name.
2018-03-28 14:25:19 -04:00
Drew DeVault
f018d30fe4 Implement image backgrounds 2018-03-28 14:25:19 -04:00
Drew DeVault
632bb948b7 Add solid-color rendering to swaybg 2018-03-28 14:25:19 -04:00
Drew DeVault
eccf0b2598 Add client protocols and swaybg skeleton 2018-03-28 14:25:19 -04:00
Linus Heckemann
d06ec90a9d swaybg: check that background can be loaded 2017-07-03 22:02:49 +01:00
Drew DeVault
b2226ac655 Add client support for HiDPI
This adds HiDPI support to swaybar, swaybg, and swaylock.
2016-09-05 11:36:48 -04:00
Zandr Martin
98aa59fdda
implement solid color rendering for swaybg 2016-07-30 18:50:13 -05:00
Drew DeVault
6d971af5c3 Turn swaybg into a shell surface 2016-07-17 11:55:05 -04:00
David Eklov
6d94f77457 Revert "swaybg: Make swaybg a shell surface"
This reverts commit 99bda4afe2.

It turned out that code to handle swaybg as shell surface was broken so we don't
want to make swaybg a shell surface until this has been fixed.
2016-07-14 17:15:31 -05:00
David Eklov
99bda4afe2 swaybg: Make swaybg a shell surface 2016-07-04 21:59:47 -05:00
Mikkel Oscar Lyderik
5e253fdd9a Correctly exit sway on errors.
Calling `exit` in sway_terminate prevents sway from correctly shutting
down (freeing data, cleanly terminating the ipc server, etc.).

A better way is to exit straight away if the failure occurs before
`wlc_run` and use sway_abort as usual if it occur when wlc is running.
2016-02-26 09:42:21 +01:00
progandy
21014e606b make gdk-pixbuf dependency really optional 2015-12-20 17:37:52 +01:00
Drew DeVault
d2e9c68640 Copy+paste swaybg code to swaylock for testing 2015-12-10 08:18:48 -05:00
Drew DeVault
067ac6cfa7 Discover swaylock extension in registry 2015-12-10 08:05:27 -05:00
Drew DeVault
080a263785 Refactor gdk pixbuf code into shared client lib 2015-12-10 07:57:46 -05:00
Drew DeVault
155f5d2d3e Style enforcement 2015-12-08 07:10:17 -05:00
progandy
3fdf4f811f swaybg: load more image formats with gdk-pixbuf2
travis: added gdk-pixbuf2 dependency
2015-12-07 23:31:44 +01:00
Drew DeVault
60e76cf932 Add swaybar basics
This should make the bar open and appear as the panel, once sway
supports panels. Right now it crashes sway!
2015-11-29 10:58:18 -05:00
Christoph Gysin
3ba33321de Use macros for exit values 2015-11-28 23:50:10 +02:00
Drew DeVault
e0cb8284fb Rearrange logging headers
Ref #270
2015-11-28 08:49:02 -05:00
Drew DeVault
9b62a98f3e Style fixes in swaybg
CONTRIBUTING.md's code example is sourced from this file, so I updated
it as well.
2015-11-27 16:16:54 -05:00
Drew DeVault
5ae359279b Fix build warnings 2015-11-27 09:42:24 -05:00
Drew DeVault
d1012c497b Style enforcement 2015-11-27 08:59:21 -05:00
Drew DeVault
f8f0bcd4d3 Don't use the _t postfix on non-typedef structures 2015-11-27 08:52:59 -05:00
Christoph Gysin
be3fae148b swaybg: implement scaling mode "fit" 2015-11-25 22:32:02 +02:00
Christoph Gysin
8630bc3752 swaybg: implement scaling mode "tile" 2015-11-25 22:31:39 +02:00
Christoph Gysin
621062f18d swaybg: implement scaling mode "center" 2015-11-25 22:31:35 +02:00
Christoph Gysin
81a87ec7a7 swaybg: implement scaling mode "fill" 2015-11-25 22:29:49 +02:00
Christoph Gysin
904983c375 swaybg: implement scaling mode "stretch" 2015-11-25 21:36:48 +02:00
Christoph Gysin
504ac84cbc swaybg: check for exact number of arguments 2015-11-25 21:00:23 +02:00
Christoph Gysin
78c2e29328 swaybg: make argv const 2015-11-25 21:00:23 +02:00
Drew DeVault
5728307520 Add wallpapers to output command 2015-11-19 18:55:17 -05:00
Drew DeVault
392f02da64 Stretch image to fit output resolution 2015-11-19 08:34:32 -05:00
Drew DeVault
1a3a7f2514 Basic image rendering for swaybg 2015-11-19 08:20:07 -05:00
Drew DeVault
b4e5e1381f Refactor the crap out of wayland clients
And create a background surface on every output when invoking swaybg.
2015-11-19 07:58:57 -05:00