atspi: "GetNeighbor" is using deputy object
A01 object is deputy object, and exists in embedding process.
A02, A03 object exist in embedding process.
B01, B02 objects exist in embedded process.
The “GetNeighbor” method should return A02 object as “next” object of B02,
and return B02 object as “prev” object of A02.
The “next” object of A01 is B01.
The “prev” object of B01 is A01.
This is default implementation.
The following is default order: A01 - B01 - B02 - A02 - A03
But more important thing is that the embedding process could use
ELM_ATSPI_RELATION_FLOWS_TO/FROM for each objects A01, A02, and A03.
So there are some cases should be considered.
(1) If A01 is ELM_ATSPI_RELATION_FLOWS_FROM object of A03, then the
“GetNeighbor” should find B02 first when it navigates backward from A03.
(2) If A03 is ELM_ATSPI_RELATION_FLOWS_TO object of A01, then the
“GetNeighbor” should find A03 first when it navigates backward from B02.
(3) Even though the A01 has ELM_ATSPI_RELATION_FLOWS_TO relation information,
the “GetNeighbor” should find B01 first. Because the
ELM_ATSPI_RELATION_FLOWS_TO object is used when “GetNeighbor” finds
next object of B02.
Change-Id: I36dde39af3e99efcd7168c146b065fc6dfa5d104