summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-04-27Add a new merged roster/chats/MUCs viewKevin Smith
This is hidden behind the FUTURE flag, and is not ready for release yet, but is pretty usable. The three top filters (all/people/rooms) aren't plumbed in yet, recents need to be reinstated, and a favourites system would be very desirable. The code for the existing roster/chatlist is largely unchanged and with FUTURE disabled behaviour should not have changed. Lots of this code has now been put inside #ifndef NOT_YET blocks, to make it easy to find and remove later. When making this default later, all instances of NOT_YET should be inspected, unit tests should be added, and use of RECENT should be inspected - those related to this patch should be removed. Not all code is behind NOT_YET, so references to the old recents and chat lists will need to be manually checked and removed. Test-Information: Existing unit tests pass. New unit tests have not been added yet, and need to be before it's removed from FUTURE guards. Firing up Swift with future enabled shows the new view, and disabled doesn't. In both cases clicking around various things in the rosters opens the expected chats. Change-Id: I0e1ce98e4c644fa5b09ef65986cc826b6b564a7b
2016-10-05Add missing sensible asserts to testing and QtMainWindowTobias Markmann
Test-Information: Unit tests pass in ASAN-enabled build on macOS 10.12. Change-Id: I7a8dae7d06e5e1d3dc9391f9c9a342df384d90fc
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-04-01Modernize code to use C++11 nullptr using clang-tidyTobias Markmann
Run 'clang-tidy -fix -checks=modernize-use-nullptr' on all source code files on OS X. This does not modernize platform specific code on Linux and Windows Test-Information: Code builds and unit tests pass on OS X 10.11.4. Change-Id: Ic43ffeb1b76c1a933a55af03db3c54977f5f60dd
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
2015-08-11Fix accelerator for "Chats" tab in the main windowTobias Markmann
Test-Information: Verified behavior with Qt 5.5.0 on Elementary OS 0.2. Change-Id: Id4dd1e5e35c1ec20d0a2dd39727ee0ba352b611a
2014-12-15Update Copyright in SwiftKevin Smith
Change-Id: Idb6ef5fa191b1465c0bf46c47e63b695de07fa0b
2014-12-14Add support for new trellis layout for chat windows.Tobias Markmann
This includes dynamic customizable grid layouting of chat tabs including: - arrengement of tabs via menu, keyboard shortcuts or drag'n'drop - change of grid size via mouse or keyboard - save/restore of grid size and positions of chats inside the grid Test-Information: Tested on OS X 10.9.8. Change-Id: I43f94293a1c672971640c3000abfc6530f2ea7a8
2014-10-17Disable online only actions when offline.Tobias Markmann
Disabling action, menu items and drag 'n' drop which require an online connection when the user is offline. Test-Information: Checked by going offline and checking the relevant actions and menu items. Change-Id: Iacfa2c9f815d3b9bbad9ca4c2d0d04f95ce9a9e4
2014-07-09Add dialog to send AdHoc's to target specific JID's. Fix multi-item Form ↵Richard Maudsley
rendering. Test-Information: Use AdHoc bot that presents a multi-item form and check that it is rendered correctly. Check that entering invalid JID and node parameters in the dialog do not cause malfunction. Check that canceling the JID prompt closes the dialog without sending any server commands. Change-Id: I10e6f4c7eccd1a35c8c885d548994b5f57fdbf66
2014-07-07Show own tooltip when hovering over roster header.Richard Maudsley
Test-Information: Made combinations of presence/vcard/avatar changes and verified that the information in the tooltip was synchronized. Connect two clients and verify that the tooltip presence text reflects the local client presence only. Change-Id: I92af0f58f7045f3a15f2fae2f9cbc6e24a066923
2014-07-01Reset roster filter when hitting enter to start chat.Richard Maudsley
Test-Information: Enter search term and use keyboard arrows to move to select a contact and pressing enter will start a chat and clear the filter. Confirm that pressing escape still clears the filter without starting a chat and that the changes do not interfere with starting a chat normally by double clicking on a contact. Change-Id: I90f5d431da56896eeb10f16c0ba23bdc143c4857
2014-05-26Add QtFilterWidget, a general live-filtering composite widget for QtTreeWidgets.Tobias Markmann
Change-Id: I39d1ae718890d15ffacde6d482b5435cc05330ec License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2014-04-17Handle menu shortcuts for "Add contact..." and "Start chat..." application ↵Tobias Markmann
wide in all Swift windows. Change-Id: I39435ad80604790ba34acd6e6e5ca2ed85de1eb1 License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2013-11-22Use a combobox instead of tabs for mainwindow selection.Kevin Smith
I'm told that currently Qt isn't correctly showing which tab is selected over MSAA. By providing a different widget it should make screen readers happier. Change-Id: I1f14967fa2f314418417ac5891e9c79f60ac59ef
2013-11-18Improve tooltips to include avatars, last seen and vcard information.Tobias Markmann
Change-Id: I3768d9891ba903c5e2ce8217de0b4413ce40bb9a License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2013-10-01Adding support for impromptu MUCs.Tobias Markmann
Change-Id: I363e9d740bbec311454827645f4ea6df8bb60bed License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2013-03-27Adding support for Blocking Command (XEP-0191) to Swift(-en).Tobias Markmann
Change-Id: I7c92518dc389474d520d4cf96f96a11459f73d26 License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2012-12-23Save recent status messages and allow easy setting.Kevin Smith
Change-Id: I5baaa2cf28cbc344bf442c4a74e0c9ff3ba31ea1
2012-12-22Allow toggling of a more compact roster modeKevin Smith
Change-Id: I2da5116ab8467645b83afa1908f438301f326dbe
2012-09-02Adding Qt based certificate viewer as fallback for Linux.Tobias Markmann
License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
2012-08-30History dialogCătălin Badea
Add history dialog as an experimental feature. License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2012-06-15Preliminary emoticon work.Kevin Smith
Parsing and toggling support for emoticons. No emoticons are included so this won't do anything yet.
2012-05-12Show Certificate dialog from certificate error window.Remko Tronçon
2012-05-11Showing stream encryption status in the roster header. Provide native ↵Tobias Markmann
certificate viewers on click. Native viewers for Windows and Mac OS X are implemented. Added TODOs to OpenSSL based TLS interface related to CRL and OCSP. Resolves: #167 License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
2012-04-29Added ellipsis to menu items which needs further input to complete actionPavol Babincak
This is recommended in HIGs for Gnome, OS X, Windows: - http://developer.gnome.org/hig-book/3.0/menus-design.html.en - https://developer.apple.com/library/mac/#documentation/UserExperience/Conceptual/AppleHIGuidelines/TextStyle/TextStyle.html#//apple_ref/doc/uid/TP30000365-TPXREF126 - http://msdn.microsoft.com/en-us/library/aa511502.aspx#ellipses Resolves: #1114 License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2012-04-25Inserting elements do generalMenu_ before quitActionMateusz Piekos
Resolves: #1081 License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
2012-03-06Load 'show offline' for new sessionsKevin Smith
2012-03-05Get receipt status right in the menu at launchKevin Smith
2012-02-21Introduce system settings policies.Kevin Smith
Release-Notes: It is now possible for sysadmins to deploy files with policies for configuration options, such as making it impossible for users to save passwords or to force sound notifications off, or to set defaults. Also allow changing an option so that Swift disconnects on idle timeout, instead of going away.
2011-11-28Message Receipts (XEP-0184) support for 1-to-1 conversations (including ↵Tobias Markmann
1-to-1 MUC). Warn icon from already existing theme. Check icon from Wikipedia. See Swift/resources/icons/license_info.txt for details. License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
2011-11-01Having a play with a compact roster modeKevin Smith
2011-09-23Add support for kicking people from MUCs.Kevin Smith
This also introduces a new DOM-like parser structure, used for the MUC parsers. Partially Resolves: #689
2011-09-21Distinguish between Roster and MUC list widgetsKevin Smith
2011-07-10Update the Chats tab for unread messagesKevin Smith
2011-04-28Updated some text strings.Remko Tronçon
2011-04-28Update the correct roster tab for noticesKevin Smith
2011-04-28Recent chats are now persisted.Kevin Smith
Release-Notes: A list of recent chats is now kept in the 'Chats' tab of the main window. Resolves: #181
2011-04-24Initial Ad-Hoc commands support.Kevin Smith
This is not finished, use at your own peril.
2011-03-17Fixed some more strings.Remko Tronçon
2011-03-14Fixed conflicting shortcut strings.Remko Tronçon
2011-03-12make two new menu items nicely keyboardableArnt Gulbrandsen
2011-03-04Create an edit contact menu item.Kevin Smith
Resolves: #769 Release-notes: It is now possible to edit contacts from the standard menus (without needing to right-click on the item).
2011-02-21Added "Remove" context menu.Remko Tronçon
Resolves: #768
2011-02-20Make Swift translatable.Remko Tronçon
2011-02-19Make Swift translatable.Remko Tronçon
2011-02-14Removed Swift::String.Remko Tronçon
2011-02-07Removed AddContactDialog.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-01-30Clickable roster header for profile edits (incomplete)Kevin Smith