Use a checkerboard pattern on item background
This commit is contained in:
parent
fc4eb97218
commit
405f975899
|
@ -248,7 +248,6 @@ draw_row(FastivBrowser *self, cairo_t *cr, const Row *row)
|
|||
border.left + extents.width + border.right,
|
||||
border.top + extents.height + border.bottom);
|
||||
|
||||
// TODO(p): See if a mild checkerboard pattern would not look nice.
|
||||
gtk_render_background(
|
||||
style, cr, border.left, border.top, extents.width, extents.height);
|
||||
|
||||
|
|
22
fastiv.c
22
fastiv.c
|
@ -335,10 +335,24 @@ main(int argc, char *argv[])
|
|||
|
||||
gtk_window_set_default_icon_name(PROJECT_NAME);
|
||||
|
||||
const char *style = "fastiv-view, fastiv-browser { background: #222; }"
|
||||
"fastiv-browser { padding: 5px; } fastiv-browser.item {"
|
||||
"border: 1px solid rgba(255, 255, 255, 0.5); "
|
||||
"margin: 10px; color: #000; background: #444; }";
|
||||
// This is incredibly broken https://stackoverflow.com/a/51054396/76313
|
||||
// thus resolving the problem using overlaps.
|
||||
const char *style = "@define-color fastiv-tile #3c3c3c; \
|
||||
fastiv-view, fastiv-browser { background: #222; } \
|
||||
fastiv-browser { padding: 5px; } \
|
||||
fastiv-browser.item { \
|
||||
border: 1px solid rgba(255, 255, 255, 0.5); \
|
||||
margin: 10px; color: #000; \
|
||||
background: #333; \
|
||||
background-image: \
|
||||
linear-gradient(45deg, @fastiv-tile 26%, transparent 26%), \
|
||||
linear-gradient(-45deg, @fastiv-tile 26%, transparent 26%), \
|
||||
linear-gradient(45deg, transparent 74%, @fastiv-tile 74%), \
|
||||
linear-gradient(-45deg, transparent 74%, @fastiv-tile 74%); \
|
||||
background-size: 40px 40px; \
|
||||
background-position: 0 0, 0 20px, 20px -20px, -20px 0px; \
|
||||
}";
|
||||
|
||||
GtkCssProvider *provider = gtk_css_provider_new();
|
||||
gtk_css_provider_load_from_data(provider, style, strlen(style), NULL);
|
||||
gtk_style_context_add_provider_for_screen(gdk_screen_get_default(),
|
||||
|
|
Loading…
Reference in New Issue