message: highgui(gtk): fix onmouse event flags
diff: @@ -1881,14 +1881,18 @@ static gboolean icvOnMouse( GtkWidget *widget, GdkEvent *event, gpointer user_da
  (unsigned)pt.y < (unsigned)(image_widget->original_image->height)
  ))
  {
  - state &= gtk_accelerator_get_default_mod_mask();
  - flags |= BIT_MAP(state, GDK_SHIFT_MASK, CV_EVENT_FLAG_SHIFTKEY) |
  - BIT_MAP(state, GDK_CONTROL_MASK, CV_EVENT_FLAG_CTRLKEY) |
  - BIT_MAP(state, GDK_MOD1_MASK, CV_EVENT_FLAG_ALTKEY) |
  - BIT_MAP(state, GDK_MOD2_MASK, CV_EVENT_FLAG_ALTKEY) |
  + // handle non-keyboard (mouse) modifiers first
  + flags |=
  BIT_MAP(state, GDK_BUTTON1_MASK, CV_EVENT_FLAG_LBUTTON) |
  BIT_MAP(state, GDK_BUTTON2_MASK, CV_EVENT_FLAG_MBUTTON) |
  BIT_MAP(state, GDK_BUTTON3_MASK, CV_EVENT_FLAG_RBUTTON);
  + // keyboard modifiers
  + state &= gtk_accelerator_get_default_mod_mask();
  + flags |=
  + BIT_MAP(state, GDK_SHIFT_MASK, CV_EVENT_FLAG_SHIFTKEY) |
  + BIT_MAP(state, GDK_CONTROL_MASK, CV_EVENT_FLAG_CTRLKEY) |
  + BIT_MAP(state, GDK_MOD1_MASK, CV_EVENT_FLAG_ALTKEY) |
  + BIT_MAP(state, GDK_MOD2_MASK, CV_EVENT_FLAG_ALTKEY);
  window->on_mouse( cv_event, pt.x, pt.y, flags, window->on_mouse_param );
  }
  }
  