summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-11-23Migrate remaining Swiften/Base/foreach.h use to range-based for loopTobias Markmann
Test-Information: Build on macOS 10.12.1 and all tests pass. Change-Id: Iedaa3fa7e7672c77909fd0568bf30e9393cb87e0
2016-09-29Fix uninitialised class membersTobias Markmann
Initialised previously uninitialised class members. Changed some raw pointers to std::unique_ptr for clearer and automatically initialised code. Test-Information: Builds on macOS 10.12 and unit tests pass in ASAN-enabled build. Change-Id: I7900fe6131119c228ca92c79c0ee8125137f2e48
2016-05-25Remove unnecessary include of iostream headerTobias Markmann
Move std::cout/cerr logging to SWIFT_LOG. Test-Information: Builds and all tests pass on OS X 10.11.5. Change-Id: I0a0c24654a8b3abf3244a79fd6d970eee90559d0
2016-04-05Migrate to Boost.Signals2 from Boost.SignalsTobias Markmann
Boost.Signals was deprecated and is not improved further. This patch removes Boost.Signals from 3rdParty and adds Boost.Signals2 and its dependencies. Also removed the Qt signals compatibility file Swiften/Base/boost_bsignals.h. Test-Information: Build and ran unit tests on OS X 10.11.4. Confirmed successful login using Swift client. Change-Id: Ie6e3b2d15aac2462cda95401582f5287a479fb54
2016-04-04Modernize code to use C++11 shared_ptr instead of Boost'sTobias Markmann
This change was done by applying the following 'gsed' replacement calls to all source files: 's/\#include <boost\/shared_ptr\.hpp>/\#include <memory>/g' 's/\#include <boost\/enable_shared_from_this\.hpp>/\#include <memory>/g' 's/\#include <boost\/smart_ptr\/make_shared\.hpp>/\#include <memory>/g' 's/\#include <boost\/make_shared\.hpp>/\#include <memory>/g' 's/\#include <boost\/weak_ptr\.hpp>/\#include <memory>/g' 's/boost::make_shared/std::make_shared/g' 's/boost::dynamic_pointer_cast/std::dynamic_pointer_cast/g' 's/boost::shared_ptr/std::shared_ptr/g' 's/boost::weak_ptr/std::weak_ptr/g' 's/boost::enable_shared_from_this/std::enable_shared_from_this/g' The remaining issues have been fixed manually. Test-Information: Code builds on OS X 10.11.4 and unit tests pass. Change-Id: Ia7ae34eab869fb9ad6387a1348426b71ae4acd5f
2016-03-31Convert tabs to 4 spaces for all source filesTobias Markmann
Removed trailing spaces and whitespace on empty lines in the process. Changed CheckTabs.py tool to disallow hard tabs in source files. Test-Information: Manually checked 30 random files that the conversion worked as expected. Change-Id: I874f99d617bd3d2bb55f02d58f22f58f9b094480
2016-03-30Apply consistent #include grouping and sorting styleTobias Markmann
Changed "" style includes to <> style. Test-Information: Build with Clang 3.9.0 and ran all tests on OS X 10.11.4. Change-Id: Ic05e53f2e5dba39cc1307b116fc5f17b62ab9eb8
2015-10-16Mark removed contacts as unavailable in SwiftTobias Markmann
When removing a contact, a XMPP client will not receive an explicit unavailable presence stanza for the contact from the server. Because of that Swift used to show removed contacts still with their old presence in the Chats tab or the chat view. With this patch, the PresenceOracle will flush all known presence of a contact as soon as the JID is removed from the roster. An unavailable presence will stored under the removed bare JID and is emitted via the PresenceOracle::onPresenceChange signal. Test-Information: Added a unit test verifying this behavior. Tested the behavior with two scenarios: a) Account A and B adding each other and accepting the subscription request. Starting a chat between A and B. After removing B in A's account, B used to be shown as available in the chat view and the Chats tab. With this patch B is shown as unavailable. b) Account A and B adding each other and accepting the subscription request. A removing B, and B removing A. After A adds B again, B used to be shown with the old presence even before B accepted the subscription request. This behavior is also fixed with this patch, not showing B as online until B accepted the subscription request. Change-Id: Iba97d3bedd0ac962ea00b25a0d2ed6106ed55a55
2015-06-08Add missing SWIFTEN_API annotations to public Swiften APITobias Markmann
Test-Information: Tested build on Windows 8 with VS 2014 and ran unit tests. Change-Id: I3d8096df4801be6901f22564e36eecba0e7310c4
2014-12-15Update Copyright in SwiftenKevin Smith
Change-Id: I94ab4bbb68c603fe872abeb8090575de042f5cb4
2014-10-01Port many of Isode's local fixes upstreamKevin Smith
Includes fixes to: Build with new Visual Studio and Boost Avoid error caused when Avahi is present but Qt is not Make declaration of XMPPRosterImpl::addContact consistent with implementation Includes enhancements to: Allow user-configurable mt.exe Allow splitting openssl paths Allow disabling gconf lookup Make idn support optional Allow disabling various library detections Remove use of non-Python2.4 features in sconscripts Test-Information: Builds Change-Id: Iee91ee80291a8bdf87cc169c915e4dad1cc1055b
2012-09-17Support for building swiften as a DLLRemko Tronçon
Added missing SWIFTEN_API declarations. Changed test infrastructure to extend path before running tests.
2012-07-14Initial DLL support for Swiften.Remko Tronçon
All applications succesfully link against Swiften.dll.
2011-10-01Merge branch 'swift-1.x'Remko Tronçon
* swift-1.x: Fixed roster sender check. Conflicts: Swiften/Roster/UnitTest/XMPPRosterControllerTest.cpp
2011-10-01Fixed roster sender check.swift-1.xRemko Tronçon
Resolves: #993
2011-05-02Replace auto_ptr by shared_ptr.Remko Tronçon
2011-04-30Replace #icnlude "" by #include <> in Swiften.Remko Tronçon
2011-04-25Moved file storages to Swift.Remko Tronçon
2011-04-19Fixed Linux compilation.Remko Tronçon
2011-04-18Small tweaks to the roster item exchange payload.Remko Tronçon
2011-04-18Added Roster Item Exchange XEP support.Jan Kaluza
License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
2011-04-18Factor out payload persisting into utility classes.Remko Tronçon
2011-04-18Added XEP-0237 Roster Versioning support.Remko Tronçon
Resolves: #803 Release-Notes: Added support for XEP-0237 Roster Versioning
2011-04-18Cleaned up includes.swift-2.0alphaRemko Tronçon
2011-02-26Some more sluift tweaks.Remko Tronçon
2011-02-14Removed Swift::String.Remko Tronçon
2011-02-11Adding more roster unit testsKevin Smith
2011-02-07Moved Swift-specific roster code out of Swiften.Remko Tronçon
2011-02-07Reworking contact editing.Remko Tronçon
Collapsed rename, group edit, and remove into one dialog. Moved contact editing logic to controllers.
2011-02-05Don't crash when receiving null roster payload.Remko Tronçon
2011-01-24Added test suite registration checker.Remko Tronçon
2011-01-21Code cleanup.Remko Tronçon
2011-01-18Cleaned up some code.Remko Tronçon
2010-12-27Fix destruction order in unit tests.Remko Tronçon
2010-11-28Change error from optional to shared_ptr in GenericRequestRemko Tronçon
Resolves: #692
2010-11-03Added JIDDiscoInfoResponder + Added "to" parameter to responder callback.Remko Tronçon
2010-10-28Correctly mark roster items with the highest priority status.Kevin Smith
Resolves: #668
2010-10-27Remove MainEventLoop singleton.Remko Tronçon
The event loop now needs to be explicitly passed to clients using it.
2010-10-25Remove the use of Shared<>.Remko Tronçon
2010-10-24Creating abstract XMPPRoster base class.Remko Tronçon
2010-10-23Make sure presence isn't type error before updating roster.Kevin Smith
Resolves: #622 Release-Notes: Errors received from your contacts when setting your status will no longer cause the contacts to mirror your new status.
2010-10-21Moving queries & responders around.Remko Tronçon
2010-10-10Refactor responders to only start on start().Remko Tronçon
2010-10-09Added EchoBot walkthrough example.Remko Tronçon
2010-10-08Fixing assorted memory leaks.Kevin Smith
Resolves: #329
2010-10-07Code cleanup from recent commitsKevin Smith
2010-10-04Assign contacts to groups.Kevin Smith
Another patch will follow shortly to stop them appearing offline after a roster change like this. Resolves: #272 Release-Notes: It's now possible to assign your contacts to groups.
2010-10-03Show contacts as unavailable after subscription removal.Kevin Smith
Resolves: #455
2010-10-02Persist roster group expandiness.Kevin Smith
Release-Notes: Whether roster groups are expanded or collapsed is now persisted between sessions. Resolves: #399
2010-09-13Moved XMPPRosterController to Swiften.Remko Tronçon