This new shader is able to emulate smooth wide lines drawing using a
geometry shader.
This shader needs viewportSize and lineWidth uniforms to be set.
There is multiple variants to replace the usage of wide lines for most
shaders.
A version without geometry shader could be developped for metal in
the future based on this implementation since we can create a special
routine in immBegin based on the bound shader.
This patch only fix the gizmo_types files and the navigation gizmo.
Other areas could be fixed afterward, I just limited the patch size.
Would be nice to include that for 2.83 as it is a huge usability issue.
Related to T57570.