Monday, January 21, 2013

Here I come, #10863!


So after I found out that bug #15242 is not actually a Pidgin bug but external problem of MSN protocol, I continue with my so far not very successful hunt for bugs. After reviewing some other bugs I came across one potentially interesting bug which I was able to reproduce. It is bug #10863 and here is the problem:

When you go to "Join a chat...", choose your XMPP account and pop up the "Join a chat" dialog and then click the "Room List" button, the "room list" dialog opens with a dialog window asking you to enter a conference server.
"Join a chat" dialog

"Room list" with "Enter a conference server" dialog


 When clicked on "Find Rooms" this just brings the focus back to the original "Join a chat" dialog The "Room List" window, with the actual room list (which is now unpopulated because I did not enter any valid server) still unfocused behind the "Join a Chat" dialog. So that basically every time I have to manually switch focus to the room list to get where I obviously wanted to be.
"Room list" hidden behing the "Join a chat window" but should be focused and on the top of window hierarchy.
How should it behave correctly:
When clicked on Find Rooms in "Enter a conference server" dialog the "Room list" window should be displayed over the "Join a Chat", not behind it as it is now.


I figured out what might be the problem. When the dialog window pops up asking a user to enter the conference server this dialog is being auto-parented by the "Join a Chat" dialog, not the "Room List" as it should be. After destroing the pop up window, focus is transferred to its parent window "Join a Chat" not the "Room list".

I tried to verify that this theroy is correct, however I was not able to do it. The chain of calling functions is too long and with lot of branches. I need to do more investigation. To improve the readibility of the code I renamed some functions, as their names were too abstract. 

So for now I have identified the exact place of the each window creation in the code but I don`t get the hierarchy of these windows (which windows are whose parents).

No comments:

Post a Comment