GNOME Bugzilla – Bug 579341
Should be able to join password protected rooms
Last modified: 2011-08-29 10:12:28 UTC
When trying to join a password protect muc room, Empathy will open an empathy muc with no text and no contacts in the members'list. Until a password dialog is created, it should display an error message instead. This look like a regression from December, since it used not to do that. Possibly added when the new dispatcher was merged.
I tried with master and Empathy didn't do anything. Any way, it should at least display an error message.
I too would like to see this feature added, one of the main reasons I have not switched to this client yet as xmpp is what we use for work and we have a few password protected conferences I am supposed to be in :)
*** Bug 597902 has been marked as a duplicate of this bug. ***
Right way to do this is to check if channels implements the Password interface and then check if the 'Provide' property is True. In that case we should ask for the password. http://telepathy.freedesktop.org/spec/org.freedesktop.Telepathy.Channel.Interface.Password.html
I opened bug #601573 about the "invite only" case. Let's focus on password protected rooms in this bug.
Created attachment 147486 [details] [review] http://git.collabora.co.uk/?p=user/cassidy/empathy;a=shortlog;h=refs/heads/room-password-579341 libempathy-gtk/empathy-chat.c | 168 +++++++++++++++++++++++++++++++++++++++- libempathy-gtk/empathy-chat.ui | 13 +++- libempathy/empathy-tp-chat.c | 149 ++++++++++++++++++++++++++++++++++- libempathy/empathy-tp-chat.h | 11 +++ 4 files changed, 335 insertions(+), 6 deletions(-)
Note that doesn't work with Idle atm because of https://bugs.freedesktop.org/show_bug.cgi?id=25039
I opened bug #601577 and #601578 about futur improvements for the info bar.
Review of attachment 147486 [details] [review]: Looks great, except that the indentation displays *very* ugly here in the review tool (the added code is not aligned properly). Are you sure you're not somehow mixing tabs and spaces, or you have your editor set to 4-spaces tabs instead of 8? Just a tiny comment: ::: libempathy/empathy-tp-chat.c @@ +790,3 @@ + + if (!priv->got_password_flags) + return; Why did you split these checks?
(In reply to comment #9) > Review of attachment 147486 [details] [review]: > > Looks great, except that the indentation displays *very* ugly here in the > review tool (the added code is not aligned properly). Are you sure you're not > somehow mixing tabs and spaces, or you have your editor set to 4-spaces tabs > instead of 8? Really? I just checked and it seems fine. I tried to use the same indentation than the existing code. Can you be more specific please? > Just a tiny comment: > > ::: libempathy/empathy-tp-chat.c > @@ +790,3 @@ > + > + if (!priv->got_password_flags) > + return; > > Why did you split these checks? To make it clearer. I found the "if (cond1 || cond2 || (cond3 && cond4))" not very clear. Especially as I was about to add more checks.
(In reply to comment #10) > > Really? I just checked and it seems fine. I tried to use the same indentation > than the existing code. Can you be more specific please? As I'm not able to be more specific without touching the code, I made a commit [1] which fixes the indentation problems I was seeing :) Emacs' `indent-region' command seems to adjust this automatically here, and I manually moved some lines to make the style more readable on small (4:3) screens, such as the display of my X60 (still, I think the 8-spaces tabs style makes Baby Jesus cry). Other than this, the branch looks fine to me. [1] http://git.collabora.co.uk/?p=user/cosimoc/empathy.git;a=shortlog;h=refs/heads/cass-room-password
I see the problem. I merged my branch + your branch to master. Thanks a lot. This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.
(In reply to comment #7) > Note that doesn't work with Idle atm because of > https://bugs.freedesktop.org/show_bug.cgi?id=25039 This should now work with telepathy-idle 0.1.6