Open Bug 1126380 Opened 9 years ago Updated 2 years ago

Join Chat dialog box only allows auto-join for hard-coded list of prpls

Categories

(Chat Core :: General, defect)

defect

Tracking

(Not tracked)

ASSIGNED

People

(Reporter: alexander.salas, Assigned: alexander.salas)

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0
Build ID: 20150127004030

Steps to reproduce:

I make a new prpl and I need this option


Actual results:

Only support autojoin for 3 prpls:
prpl-irc, prpl-jabber, prpl-gtalk


Expected results:

Use canAutoJoin in the prpl
Assignee: nobody → alexander.salas
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Summary: Join Chat dialog box does not have Auto-join this Chat Room for other prpls (MUCs) → Join Chat dialog box only allows auto-join for hard-coded list of prpls
Comment on attachment 8555404 [details] [diff] [review]
canAutoJoin.patch

Review of attachment 8555404 [details] [diff] [review]:
-----------------------------------------------------------------

There's also the account settings box we'd want to fix: https://dxr.mozilla.org/comm-central/source/im/content/account.js#34

Thunderbird has similar code, we can handle that in a separate patch though.

::: chat/protocols/irc/irc.js
@@ +1629,4 @@
>  
>    // Attributes
>    get canJoinChat() true,
> +  get canAutoJoinChat() true,

This property should probably be added to jsProtoHelper.jsm as false.

::: chat/protocols/xmpp/xmpp.jsm
@@ +651,4 @@
>    },
>  
>    get canJoinChat() true,
> +  get canAutoJoinChat() true,

Do we want this true for subclasses of XMPP? (I'm thinking of Facebook, in particular.)

::: im/content/joinchat.js
@@ +109,1 @@
>        return true;

I don't love this solution here, but I can't think of a better way to do this.
Attachment #8555404 - Flags: feedback+
Comment on attachment 8555404 [details] [diff] [review]
canAutoJoin.patch

Review of attachment 8555404 [details] [diff] [review]:
-----------------------------------------------------------------

This will need a libpurple part.

::: chat/components/public/imIAccount.idl
@@ +113,4 @@
>    void requestBuddyInfo(in AUTF8String aBuddyName);
>  
>    readonly attribute boolean canJoinChat;
> +  readonly attribute boolean canAutoJoinChat;

This needs documentation about what prplIChatRoomFieldValues are expected to exist when this is true.

::: im/content/joinchat.js
@@ +109,1 @@
>        return true;

This code makes no sense. If "channel" exists, you set name, and then return.
Attachment #8555404 - Flags: review-
(In reply to aleth [:aleth] from comment #3)
> Comment on attachment 8555404 [details] [diff] [review]
> canAutoJoin.patch
> 
> Review of attachment 8555404 [details] [diff] [review]:
> -----------------------------------------------------------------
> 
> This will need a libpurple part.

I should be more precise: purplexpcom, which also implements the interface you are changing, for libpurple.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: