Unity UI: How to stop select event from propagating?

I am trying to achieve a menu list with scroll up / down buttons.

The issue I am having is that when the scroll buttons are clicked, the focus is taken

from the selected menu item and given to the scroll button that was clicked,

while I want the menu item that was selected to retain focus.

I can save the previously selected menu item and re-select it, but this causes the select event

and thus the select animation to fire again, which is not ideal.

So I was wondering if it is possible to stop the select event from firing on the selected

item, but not propagate to the event system?

We have encountered 2 solutions:

1.-You have to OVERRIDE the OnPointerDown event on the InputField, and changing its behavior to OnClick event, so you have to make OnClick equal to OnPointerDown and erase OnPointerDown behavior.

2.-You can trigger the InputField keyboard implicitly so you can position a transparent UI Button over the InputField and make this button call the InputField OnPointerDown handler with ExecuteEvents class

BTW number one is easier, you just need to create a Script that inherit InputField and change the events.