message: Color picker: Tweak vertex shading code, since we aren't shading between PrimReserve and PrimVert the code can be expressed more naturally.
diff: @@ -10042,14 +10042,15 @@ bool ImGui::ColorPicker4(const char* label, float col[4], ImGuiColorEditFlags fl
  {
  const float a0 = (n) /6.0f * 2.0f * IM_PI - aeps;
  const float a1 = (n+1.0f)/6.0f * 2.0f * IM_PI + aeps;
  - int vert_start_idx = draw_list->_VtxCurrentIdx;
  + const int vert_start_idx = draw_list->VtxBuffer.Size;
  draw_list->PathArcTo(wheel_center, (wheel_r_inner + wheel_r_outer)*0.5f, a0, a1, segment_per_arc);
  draw_list->PathStroke(IM_COL32_WHITE, false, wheel_thickness);
  + const int vert_end_idx = draw_list->VtxBuffer.Size;
  // Paint colors over existing vertices
  ImVec2 gradient_p0(wheel_center.x + cosf(a0) * wheel_r_inner, wheel_center.y + sinf(a0) * wheel_r_inner);
  ImVec2 gradient_p1(wheel_center.x + cosf(a1) * wheel_r_inner, wheel_center.y + sinf(a1) * wheel_r_inner);
  - ShadeVertsLinearColorGradientKeepAlpha(draw_list->_VtxWritePtr - (draw_list->_VtxCurrentIdx - vert_start_idx), draw_list->_VtxWritePtr, gradient_p0, gradient_p1, hue_colors[n], hue_colors[n+1]);
  + ShadeVertsLinearColorGradientKeepAlpha(draw_list->VtxBuffer.Data + vert_start_idx, draw_list->VtxBuffer.Data + vert_end_idx, gradient_p0, gradient_p1, hue_colors[n], hue_colors[n+1]);
  }
  // Render Cursor + preview on Hue Wheel
  