GPC_Canvas::GetWindowArea() and KX_BlenderCanvas::GetWindowArea() are tracking two different things. The 2d filter system doesn't actually need the window area and can get by just using the viewport dimensions, which it now does. The GetWindowArea() mess should probably be cleaned up.