protected override void OnSizeAllocated(Gdk.Rectangle rect)
{
bg_gradient = new Cairo.LinearGradient(rect.X, rect.Y, rect.X, rect.Y + rect.Height);
bg_gradient.AddColorStop(0, fill_color_a);
bg_gradient.AddColorStop(0.9, fill_color_b);
base.OnSizeAllocated(rect);
}