summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-09-26Use const std::unique_ptr for pimpl idiom usageTobias Markmann
All our pimpl idiom usage used std::shared_ptr due to being written in C++03. Now we use C++11 and const std::unique_ptr is more sensible. Test-Information: Builds on macOS 10.12 and unit tests pass. Change-Id: I1b9b3fbb22e337d53ae71e5a5e03118998cc3376
2016-07-12Remove Snarl notification supportTobias Markmann
This removes Snarl from 3rdParty, our adapter to it in SwifTools and the integration in Swift UI. Test-Information: Builds and installer still work on Windows 8. Standard system tray balloon notifications still work. Change-Id: Id580642932eac260c79eaf2343a94ec9d5606f11
2016-04-25Convert hard tabs to four spaces in all our SConscript/*.py filesTobias Markmann
Test-Information: Test that it still builds and unit test pass on OS X 10.11.4. Change-Id: I2eb4a0b707991aee553db36a8cd1ae28b813acab
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
2016-03-15Explicitly convert between nullable and non-nullable on OS XTobias Markmann
Clang was complaining about implicit conversions between nullable and non-nullable NSString pointers. Adjusted our std::string -> NSString* conversion utilities to check for nil and return an empty std::string in that case. Replaced uses of [NSString stringWithUTF8String] with our STD2NSSTRING macro. Turned std::string <-> NSString* conversion macros into functions. Test-Information: Builds without the warning on OS X 10.11.3 and Swift runs without issues. Change-Id: I949f2f3332018391aead58ef362764f4b7955b01
2016-02-12Fix bug in OS X Notification Center backend on empty callbackTobias Markmann
Checked Growl and Snarl backends which both already do the check for empty callbacks. Test-Information: Tested clicking on an disconnect notification of Swift on OS X 10.11.3 which previously caused a crash. Now it does not crash anymore in this case. Change-Id: I7045ab22a0322cc7a50761640a9b89ba2302acef
2015-11-06Fix potential memory leaks in Cocoa API usageTobias Markmann
These errors were reported by Clang Analyzer. Test-Information: Verified that behavior is still as expected and Clang Analyzer does not report the warnings anymore. Change-Id: I149d75241f7680a6d2f2b6b710dd38d1ed81a209
2015-10-16Only show default notifications in OS X Notification CenterTobias Markmann
Test-Information: Verified behavior on OS X 10.10.5 with two accounts, presence changes and message exchanges. Change-Id: I79b4b8a92076dfb4c2d65f91bfb2f808cf7821d5
2015-09-03Initial support for OS X Notification CenterTobias Markmann
This implements basic support for OS X Notification Center notifications with simple banner notifications showing type, contact and message/presence information. A click on the notification opens the chat view to the contact. The Notification Center backend will be used on OS X if the Growl notification backend is not used. This code requires OS X version 10.8 or later. Test-Information: Tested presence and message notifications between multiple Swift accounts and instances on OS X 10.9.5. Change-Id: I7b9e2132cab25e086e0912191562cad8f4cbae38
2014-12-15Update Copyright In SwifToolsKevin Smith
Change-Id: Ic5a0cd2d65caac21a748a9a6996a596ee80f5337
2013-05-17Fixed unicode path handling.Remko Tronçon
- Use boost::filesystem::path consistently for referring to files. - Use boost::filesystem streams for I/O, such that paths are always handled correctly. - Use stringToPath and pathToString for conversion between strings and boost::filesystem::path, to ensure we have consistent unicode handling across platforms and environments. The default constructor and string conversion uses platform-dependent encoding, depending on the global locale set in the application, which causes problems. So, unless you are in platform dependent code, the default constructor and string() function should not be used. When constructing paths from other paths (e.g. using operator/), also use stringToPath (instead of string arguments) if the path can contain unicode characters. Change-Id: If286bd9e71c8414afc0b24ba67e26ab7608ef6ea
2013-03-04Qt5 support & warning fixes.Remko Tronçon
Change-Id: I62c7d5ca44c915e36c797c798294b7c34b465514
2012-03-15Added purge to Growl.Remko Tronçon
2012-03-15Fix compilation errorKevin Smith
2012-03-14Dispose of notification callbacks once the account signs out.Kevin Smith
Fixes segfaults caused by clicking notifications after the handlers had been freed. Does not fix GrowlNotifier, which needs fixing later.
2012-03-09Fixed Growl crash.Remko Tronçon
2012-03-09Handle double growl callbacks.Remko Tronçon
2011-12-24Enable "Show notifications" toggle when Growl isn't installed.Remko Tronçon
2011-12-23Updated Growl notifier to work against Growl 1.3.Remko Tronçon
2011-06-13Added CppCheck script.Remko Tronçon
Tweaked the sources to satisfy cppcheck.
2011-05-05Replace ByteArray by typedef.Remko Tronçon
2011-04-30Replace #include "" by #include <> in SwifTools, Swiftob, Slimber and Limber.Remko Tronçon
2011-04-02Do not crash when clicking system message notifications.Remko Tronçon
Resolves: #818
2011-02-14Removed Swift::String.Remko Tronçon
2010-12-22Fixed compilation on non-Windows platforms.Remko Tronçon
2010-12-22Use a default balloons notifier on Windows.Remko Tronçon
2010-12-21Revert to SnarlNotifier on Windows.Remko Tronçon
Use balloons as a fallback.
2010-12-14Removed debug output.Remko Tronçon
2010-12-14Added initial Growl for Windows notifier (GNTP).Remko Tronçon
The notifier doesn't handle callbacks yet. Release-Notes: Replaced Snarl notifications with Growl for Windows notifications.
2010-12-08Update to new Snarl API.Remko Tronçon
2010-10-30Register default Growl notifications correctly.Remko Tronçon
Release-Notes: When registering with Growl, we now request incoming message popups to be enabled by default.
2010-10-26Fixed typo.Remko Tronçon
2010-10-26Fix compliation problems with CLang.Remko Tronçon
2010-10-23Fixed compilation errors due to previous commit.Remko Tronçon
2010-10-23Don't lose notification enabledness when the user changes status.Remko Tronçon
Resolves: #651 Release-Notes: The notification toggle on Linux will now be respected.
2010-10-07Code cleanup from recent commitsKevin Smith
2010-10-07Fix windows compilation.Remko Tronçon
2010-10-05Create 'Enable notifications' menu on Linux.Kevin Smith
I've not actually tested this on Linux... Resolves: #594
2010-10-05Added FreeDesktopNotifier.Remko Tronçon
2010-10-04Disable the notifier when going to DND.Remko Tronçon
Resolves: #572
2010-09-17By default, only show message notifications.Remko Tronçon
2010-09-16Fix compilation on linux.Remko Tronçon
2010-09-15Remove FIXME.Remko Tronçon
2010-09-15Make Snarl timeouts for messages longer.Remko Tronçon
2010-09-15Attempt to show icon in Snarl config dialog.Remko Tronçon
Doesn't work though. Need to find out why.
2010-09-15Added Snarl notification supportRemko Tronçon
2010-09-15Added system message to notifier.Remko Tronçon