aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2014-04-12 14:38:28 -0400
committerJesse Luehrs <doy@tozt.net>2014-04-12 14:45:13 -0400
commit1acbc75de1e3d7ce7e6fd0a42833f7a15e4e4e67 (patch)
tree97b64786663a20decc0fc954b1216e146bccc702
parente45e7b8f77ca117aab1540fe29e4ff7ddfc92f0c (diff)
downloadrunes-1acbc75de1e3d7ce7e6fd0a42833f7a15e4e4e67.tar.gz
runes-1acbc75de1e3d7ce7e6fd0a42833f7a15e4e4e67.zip
this should happen in display_init
-rw-r--r--display.c8
-rw-r--r--term.c7
2 files changed, 8 insertions, 7 deletions
diff --git a/display.c b/display.c
index 066399a..e06a564 100644
--- a/display.c
+++ b/display.c
@@ -8,6 +8,14 @@ static cairo_scaled_font_t *runes_display_make_font(RunesTerm *t);
void runes_display_init(RunesTerm *t)
{
+ int x, y;
+
+ t->backend_cr = cairo_create(runes_window_backend_surface_create(t));
+ runes_window_backend_get_size(t, &x, &y);
+ t->cr = cairo_create(
+ cairo_surface_create_similar_image(
+ cairo_get_target(t->backend_cr), CAIRO_FORMAT_RGB24, x, y));
+
t->colors[0] = cairo_pattern_create_rgb(0.0, 0.0, 0.0);
t->colors[1] = cairo_pattern_create_rgb(1.0, 0.0, 0.0);
t->colors[2] = cairo_pattern_create_rgb(0.0, 1.0, 0.0);
diff --git a/term.c b/term.c
index b4929ff..1e6cf92 100644
--- a/term.c
+++ b/term.c
@@ -4,8 +4,6 @@
void runes_term_init(RunesTerm *t, int argc, char *argv[])
{
- int x, y;
-
/* doing most of the pty initialization right at the beginning, because
* libuv will set up a bunch of state (including potentially things like
* spawning threads) when that is initialized, and i'm not really sure how
@@ -15,11 +13,6 @@ void runes_term_init(RunesTerm *t, int argc, char *argv[])
t->loop = uv_default_loop();
runes_window_backend_init(t);
- t->backend_cr = cairo_create(runes_window_backend_surface_create(t));
- runes_window_backend_get_size(t, &x, &y);
- t->cr = cairo_create(
- cairo_surface_create_similar_image(
- cairo_get_target(t->backend_cr), CAIRO_FORMAT_RGB24, x, y));
runes_display_init(t);