The marker should only appear in a window if there is activity in that window while you are in another window. For example, if you are in two channels, #a and #b, and you switch to channel #b and there is activity on channel #a, the marker will appear in channel #a. The marker will remain in the same position until you switch back to channel #a and you either scroll through the buffer or send/receive a message on that channel.

If you are seeing different behaviour, I really would need to know a step by step method of reproducing the issue. For example, here is how I would reproduce the above behaviour:

1. Join channel #a
2. Join channel #b
3. Wait for activity on channel #a and see the marker appear.
4. Switch to channel #a and wait for activity.
5. Switch back to channel #b.
6. Wait for activity on channel #a and you should see that the marker has changed position to the start of the new message.