Correct way to use Selection (Lasso, Box) on an Image

Hi again,
thanks for helping me clean up the mess I had in my head.
I mimicked the selection by using the EditBoxTool.
The Alpha-change was mimicked by putting an overlay over my entire main image except the part where the rect was created.

I’ll attach a short clip, as I actually encountered, not only expected, but also weird problems.
Demo

Problem 1 is expected, 2&3 feel just unintended/weird:

  1. EDIT: I managed to fix this problem using your answer @ SO, thanks! HoverTool shows data for every Glyph that it’s hovering over, after I created the rect it shows the data of the image (which I want) but also the data of the rect and of the overlay (val: ???). Is there a way to specify the Glyphs that are relevant for the HoverTool?

  2. The WheelZoomTool works as expected if I scroll with my cursor ON the image. If I move the cursor onto the ColorBar on the right and scroll my image zooms only along the Y-Axis? That is obviously not what I want.

  3. For some reason bokeh.plotting.Figure.image flips the image along the x-axis before rendering it?
    This behaviour was also already mentioned in 2015: Discourse Thread
    This is extra irritating as I use the rect that I created with the EditBoxTool as a ROI.
    I then use the bounds of that ROI to select the corresponding data from my image.data_source.
    The 2d-array retrieved has the correct data but it is not flipped (unlike the rendered image).
    So the image.data_src.data is not flipped but in the rendering process the image somehow gets displayed flipped?
    I would expect bokeh to behave like matplotlib here (just like mentioned in the discourse).

If necessary I can compile a minimal example.

Thank you in advance