Fails adding new stops to gradient by drag and drop of palette colors

Reported by @zeroc in #6847 (split out here)

Steps to reproduce:

  • open Inkscape
  • draw a rectangle
  • add a gradient with the gradient tool (double click on rectangle)
  • Click and drag a color from the palette bar onto the gradient line

What happened?

  • gradient is lost and fill is changed to that color

What should have happened?

  • gradient edited, with the color being added to that point on the gradient line

Note: if you add a gradient stop first, drop and drop still works.

Version info

  • Inkscape 1.3-dev (02f46d0877, 2022-04-23) Linux Mint 20
  • Regression from 1.0.x
  • Bisection points to inkscape@17b00286, which isn't too useful since it's such a big change (except it tells us it was an unintentional change).
commit 17b002864216f3f5db4a7ccf10fffb154a99fe7b
Author: Tavmjong Bah <tavmjong@free.fr>
Date:   Sat Aug 22 15:49:50 2020 +0000

    A complete rewrite of SPCanvasItems (now Inkscape::CanvasItems) along with all the code they touched.
    
    Canvas items were a mixture of semi-related structures and half-classes following the GObject model. This work replaces them with C++ classes, all derived from CanvasItem. It also standardizes how things such as geometry and style are handled.
    
    No user visible changes should be seen except for a few knot/handle/node/etc. in a few LPE's which may use a differ shape.
Edited by Nathan Lee