Separated gl canvas handling in own widget, code cleaning
Update and cleaning