Merge pull request #476 from christophgysin/cairo_set_source_u32

extract cairo_set_source_u32()
master
Drew DeVault 9 years ago
commit f1e1ba0a56

@ -1,6 +1,11 @@
#ifndef _SWAY_CAIRO_H #ifndef _SWAY_CAIRO_H
#define _SWAY_CAIRO_H #define _SWAY_CAIRO_H
#include <stdint.h>
#include <cairo/cairo.h>
void cairo_set_source_u32(cairo_t *cairo, uint32_t color);
#ifdef WITH_GDK_PIXBUF #ifdef WITH_GDK_PIXBUF
#include <gdk-pixbuf/gdk-pixbuf.h> #include <gdk-pixbuf/gdk-pixbuf.h>

@ -25,6 +25,12 @@ target_link_libraries(swaybar
${JSONC_LIBRARIES} ${JSONC_LIBRARIES}
) )
if (WITH_GDK_PIXBUF)
include_directories(
${GDK_PIXBUF_INCLUDE_DIRS}
)
endif()
install( install(
TARGETS swaybar TARGETS swaybar
RUNTIME RUNTIME

@ -2,6 +2,7 @@
#include <stdint.h> #include <stdint.h>
#include <string.h> #include <string.h>
#include "client/cairo.h"
#include "client/pango.h" #include "client/pango.h"
#include "client/window.h" #include "client/window.h"
#include "bar/config.h" #include "bar/config.h"
@ -15,14 +16,6 @@ static int ws_horizontal_padding = 5;
static double ws_vertical_padding = 1.5; static double ws_vertical_padding = 1.5;
static int ws_spacing = 1; static int ws_spacing = 1;
static void cairo_set_source_u32(cairo_t *cairo, uint32_t color) {
cairo_set_source_rgba(cairo,
((color & 0xFF000000) >> 24) / 255.0,
((color & 0xFF0000) >> 16) / 255.0,
((color & 0xFF00) >> 8) / 255.0,
(color & 0xFF) / 255.0);
}
/** /**
* Renders a sharp line of any width and height. * Renders a sharp line of any width and height.
* *

@ -115,14 +115,6 @@ void notify_key(enum wl_keyboard_key_state state, xkb_keysym_t sym, uint32_t cod
} }
} }
static void cairo_set_source_u32(cairo_t *cairo, uint32_t color) {
cairo_set_source_rgba(cairo,
(color >> (3*8) & 0xFF) / 255.0,
(color >> (2*8) & 0xFF) / 255.0,
(color >> (1*8) & 0xFF) / 255.0,
(color >> (0*8) & 0xFF) / 255.0);
}
void render_color(struct window *window, uint32_t color) { void render_color(struct window *window, uint32_t color) {
cairo_set_source_u32(window->cairo, color); cairo_set_source_u32(window->cairo, color);
cairo_paint(window->cairo); cairo_paint(window->cairo);

@ -1,6 +1,13 @@
#include <cairo/cairo.h>
#include "client/cairo.h" #include "client/cairo.h"
void cairo_set_source_u32(cairo_t *cairo, uint32_t color) {
cairo_set_source_rgba(cairo,
(color >> (3*8) & 0xFF) / 255.0,
(color >> (2*8) & 0xFF) / 255.0,
(color >> (1*8) & 0xFF) / 255.0,
(color >> (0*8) & 0xFF) / 255.0);
}
#ifdef WITH_GDK_PIXBUF #ifdef WITH_GDK_PIXBUF
#include <gdk-pixbuf/gdk-pixbuf.h> #include <gdk-pixbuf/gdk-pixbuf.h>

Loading…
Cancel
Save