src/vs/editor/contrib/colorPicker/colorPickerWidget.ts/SaturationBox/onMouseDown
class SaturationBox:	private onMouseDown(e: MouseEvent): void {
		this.monitor = this._register(new GlobalMouseMoveMonitor<IStandardMouseMoveEventData>());
		const origin = dom.getDomNodePagePosition(this.domNode);

		if (e.target !== this.selection) {
			this.onDidChangePosition(e.offsetX, e.offsetY);
		}

		this.monitor.startMonitoring(<HTMLElement>e.target, e.buttons, standardMouseMoveMerger, event => this.onDidChangePosition(event.posx - origin.left, event.posy - origin.top), () => null);

		const mouseUpListener = dom.addDisposableGenericMouseUpListner(document, () => {
			this._onColorFlushed.fire();
			mouseUpListener.dispose();
			if (this.monitor) {
				this.monitor.stopMonitoring(true);
				this.monitor = null;
			}
		}, true);
	}