Remove alias from vector layer if it's an empty string
Merge pull request #1481 from giohappy/alias_remove_when_empty

Remove alias from vector layer if it's an empty string.  Fix #10437
[FEATURE] New version of color button (QgsColorButtonV2) based off
QToolButton. Features:
- context menu items have been moved to the attached menu button
- new gui widget QgsColorSwatchGrid, which displays a grid of colors
- new class for QgsColorScheme, which generates colors to show in a
  color swatch grid
- new class QgsColorSchemeRegistry, with a global instance containing
  default color schemes. QgsColorButtonV2 accepts a color scheme
  registry, to control which schemes to show in the popup menu as
  color swatch grids.
- color button can have a default color
- color button can also be quickly set to a totally transparent color
- c++ and python unit tests for all core components
[composer] Tweak logic for data defined map extents
[composer] Prevent data defined size of scalebar from being less than calculated minimum size
[composer] Flip all color buttons to QgsColorButtonV2
more const-correctness and avoid ambiguity in overloaded function
Use rounded rectangles for preview icons in QgsColorButtonV2
Flip all symbology color buttons to QgsColorButtonV2
Port some more color buttons to QgsColorButtonV2