How does the B_MOUSE_MOVED is captured when i hover over the seek slider in mediaplayer and how does it get propagated through the codebase till the seekslider::mousemoved ?
The message is sent by input server to the active window. Then the window sends it to the view currently under the mouse.
The be book documentation gives an overview of user input handling
https://www.haiku-os.org/legacy-docs/bebook/TheInterfaceKit_Responding.html
Your question is very broad so I don’t know if that answers it. Is there a specific problem you’re trying to solve?
yes, I am trying to solve: #8567 ([MediaPlayer] show tooltip with current time position (easy)) – Haiku
So you probably don’t need all the inftomation about how messages work.
All you need is to make sure the messages are there. In fact it is probably easier to handle them in the MouseMoved function rather than directly listening for B_MOUSE_MOVED.
It should be similar to the MouseUp and MouseDown events: SeekSlider.cpp « interface « mediaplayer « apps « src - haiku - Haiku's main repository
is there a way to understand the control flow through haiku codebase while I interact with the application apart from adding printf statements here and there ?
You could compile all needed components with debugging info (see UserBuildConfig.ReadMe) and then use the Debugger to set breakpoints and step through the code.