Commit Graph

41 Commits

Author SHA1 Message Date
Pascal Abresch c4cbaf43f9 Enable presence requests 2021-12-22 23:16:57 +01:00
Adrien Destugues 983900e69b Add user avatars (XEP-0084)
- Add PubSub logic so we can request and handle the avatars
- Add base64 decoding + image decoding
- Rework roster item size and drawing to fit the avatar in
- Add a cache dir to store the avatars in
2020-11-22 18:16:46 +01:00
Adrien Destugues 41b154c07b Implement vcard support.
Populate the "get buddy info" window with vcard data.
2020-11-21 22:05:56 +01:00
Adrien Destugues 115d2ad2cf Actually check TLS certificates. 2020-11-15 16:17:56 +01:00
Adrien Destugues 85db625968 Move some files from jabber/ to ui/
It helps to see which parts of the code are actively maintained
2020-08-21 19:43:43 +02:00
Adrien Destugues 26be1f9cc8 Add message carbons.
Fixes #56
2020-08-13 21:42:12 +02:00
Adrien Destugues 3340944e06 More switching to MessageSession 2020-08-13 15:09:16 +02:00
Adrien Destugues 32d791ec66 Make TalkManager a MessageSessionHandler
Fixes #58
2020-08-12 21:59:16 +02:00
Adrien Destugues 0c9908c7bc Some cleanup and removal of UserID
Fixes some NULL dereferences when talking to people not in roster.
2020-08-12 14:37:19 +02:00
Adrien Destugues 6bb44ef994 Reduce use of UserID
There will be a lot more to do, but at least with this change, it is not
possible anymore to create a UserID outside of JRoster. So there should
always be a unique instance of the UserID for each roster entry. This
makes sure the state of the user is globally synchronized properly, and
no part of the code is accidentally working on a copy instead of the
real thing.
2019-09-30 16:44:01 +02:00
Adrien Destugues 2a53a0aa94 Update and cleanup UserID class
Reuse gloox provided data instead of copying it, whenever possible.
2019-09-30 12:21:20 +02:00
Adrien Destugues 96e2241a1c Cleanup some useless roster management things. 2019-09-30 11:49:32 +02:00
Adrien Destugues 1e81dec433 Move all roster handling into JRoster. 2019-09-30 11:33:15 +02:00
Adrien Destugues a81b88792d Move more useful stuff out of jabber/ 2019-09-29 22:45:22 +02:00
Adrien Destugues 9a3e225b35 Improve handling of invalid username/password
Go back to the main screen and highligh both fields since we don't know
which one is invalid.
2019-09-29 20:55:34 +02:00
Adrien Destugues 501ac0df0e Move some classes to ui/ directory. 2019-09-29 10:44:40 +02:00
Adrien Destugues 7c38c7ee86 Fix setting friendly names (users and bookmarks) 2019-09-28 22:54:27 +02:00
Adrien Destugues d6cbfe4ad9 Work on bookmarks
- Remove "channels" menu and instead list group chats in the roster view
- Allow joining a group chat by double ckicking on it in the roster
- Support for bookmarks2 (XEP-0402). XEP-0048 is also implemented, but
  currently disabled.
- Joining a group chat adds it to the bookmarks with autojoin enabled,
  unless it is not an user initiated action (for example, someone else
  invited you in a room)
- Leaving a groupchat adds it to the bootkmarks, with autojoin disabled
  (so you can easily access the server-side history for it or join back)
- Bookmarks can be deleted by right click->remove in the Roster.

Fixes #32, #40
2019-09-28 21:08:36 +02:00
Adrien Destugues e2d14a545c [WIP] XEP-0077 In-Band Registration
Also includes several cleanups, refactoring, etc

TODO:
- Send back dataform to the server
- Handle OOB data
- Handle legacy fields again
- Better error handling
- Complete BOB and Media handling for captchas
- Finish support for previous/next navigation in registration wizard
  (cleanup already added views, etc)

Future considerations:
- Drop JabberSpeak.cpp completely and use GlooxHandler instead
  everywhere
2019-09-27 22:34:47 +02:00
Adrien Destugues 07a35ed217 Implement sending messages to group chats 2019-07-14 12:26:38 +02:00
Adrien Destugues cbc5f0e2ab Remove "SSL" box and support for manually overriding server
This is supposed to be handled using SRV DNS records, and is unrelated
to SSL anyways.
2019-07-14 10:28:30 +02:00
Adrien Destugues b8c40062c7 Remove some transmport related stuff.
Transport aren't really a cool thing these days, this code is in the old
Jabber implementation anyway, and it only handles IM networks that are
largely gone. We may reimplement this later, but for now it's easier to
have this out of the way.
2019-07-14 08:24:58 +02:00
Adrien Destugues 6d06a0b5b0 Rename to Renga
I heard "Jabber for Haiku" is not a great name and the protocol isn't
called Jabber anymore these days.

TODO: replace all logos as well.
2019-07-14 08:23:57 +02:00
Adrien Destugues 0e349ea402 Implement some multi user chat. 2019-07-13 19:42:59 +02:00
Adrien Destugues 416ad13ff8 Implement "software version" iq reply. 2019-07-13 16:30:41 +02:00
Adrien Destugues 8229a0c8b8 Attempt to fix 64bit build.
Should fix #28
2019-07-13 08:40:07 +02:00
Adrien Destugues cc27aecd67 Implement adding/removing contacts, and creating account 2019-06-22 14:39:29 +02:00
Adrien Destugues dfb2026af1 Migrate "SendPresence" to gloox. 2019-06-22 13:02:08 +02:00
Adrien Destugues 04c164a837 Add bookmarks retrieval
Allows to auto-join and remember conference rooms.
2019-06-21 20:55:03 +02:00
Adrien Destugues ff72b8b80f Handle "pending presence" state. 2019-06-19 20:51:32 +02:00
Adrien Destugues f7960fbafe Implement sending messages with gloox.
We have a minimal working XMPP client again :)
2019-06-10 14:52:31 +02:00
Adrien Destugues 36b773d3ad Remove now unused SplitPane library, and implement message reception 2019-06-06 22:57:13 +02:00
Adrien Destugues 23c206d2ff [WIP] Remove old network code and unused classes. 2019-06-05 22:59:29 +02:00
Adrien Destugues bbc97b68f3 [WIP] Replace jabber code with gloox
- Connecting to the server
- Getting roster and presence from contacts
2019-06-05 20:30:57 +02:00
Adrien Destugues d4acc92f86 Enable Wall Werror and fix all problems found. 2019-06-04 19:35:35 +02:00
siarzhuk 013832c8c5 - fixed local-system include files mess;
- version info report improoved;
 - icon is less "light" now.


git-svn-id: http://svn.osdrawer.net/jabber4beos@35 337aba2b-7447-0410-a794-ebbcc98ad26d
2009-12-13 16:34:21 +00:00
siarzhuk 2f5e952f73 - support for handling id:iq:version.
git-svn-id: http://svn.osdrawer.net/jabber4beos@20 337aba2b-7447-0410-a794-ebbcc98ad26d
2009-11-14 17:27:55 +00:00
xed dc49b422f1 it compiles on haiku a1r1 with both gcc2 and gcc4
git-svn-id: http://svn.osdrawer.net/jabber4beos@17 337aba2b-7447-0410-a794-ebbcc98ad26d
2009-11-08 13:29:04 +00:00
xed ce8ec237ed fixed some ssl configuraion stuffs
git-svn-id: http://svn.osdrawer.net/jabber4beos@3 337aba2b-7447-0410-a794-ebbcc98ad26d
2008-03-15 12:29:17 +00:00
xed c3f4216afd added SSL support
git-svn-id: http://svn.osdrawer.net/jabber4beos@2 337aba2b-7447-0410-a794-ebbcc98ad26d
2008-03-10 01:13:03 +00:00
xed 473de763da initial checkin
git-svn-id: http://svn.osdrawer.net/jabber4beos@1 337aba2b-7447-0410-a794-ebbcc98ad26d
2008-03-03 22:52:07 +00:00