/* -*- indent-tabs-mode: nil; tab-width: 4; c-basic-offset: 4; -*-
instance.c for the Openbox window manager
- Copyright (c) 2003 Ben Jansens
+ Copyright (c) 2006 Mikael Magnusson
+ Copyright (c) 2003-2007 Dana Jansens
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
RrInstance* RrInstanceNew (Display *display, gint screen)
{
+ g_type_init(); /* supposedly needed for pango but seems to work without */
+
definst = g_new (RrInstance, 1);
definst->display = display;
definst->screen = screen;
definst->depth = DefaultDepth(display, screen);
definst->visual = DefaultVisual(display, screen);
definst->colormap = DefaultColormap(display, screen);
+ definst->pango = pango_xft_get_context(display, screen);
definst->pseudo_colors = NULL;
_ncolors = RrPseudoNcolors(inst);
if (_ncolors > 1 << inst->depth) {
- g_warning("PseudoRenderControl: Invalid colormap size. Resizing.\n");
+ g_message("Invalid colormap size. Resizing.");
inst->pseudo_bpc = 1 << (inst->depth/3) >> 3;
_ncolors = 1 << (inst->pseudo_bpc * 3);
}
if (inst == definst) definst = NULL;
g_free(inst->pseudo_colors);
g_hash_table_destroy(inst->color_hash);
+ g_object_unref(inst->pango);
+ g_free(inst);
}
}