add gtk+3 support