Age | Commit message (Collapse) | Author |
|
In some cases during the login the helper QEventLoop in
QtWebKitChatView takes over the event handling of the
application and never retirms from it. Qt events are still
handled in this case but any other new events are only queued
up. The user would still have a responsible UI, but all network
traffic or other non-Qt events would not be handled correctly.
Test-Information:
Without the patch Swift would get stuck during login in 5 of
10 runs. With this patch it did not get stuck anymore in 10
runs.
Tested on OS X 10.11.5 with Qt 5.5.1.
Change-Id: Ie17a8e01cc9c52cc784e223974ec21e604dcccab
|
|
The old version cut off the blurred shade at the top and bottom.
The new version has a square page and does not cut off the
blurred shade of the Swift logo used in the image.
Furthermore rendered the SVG to a 192x192 PNG, the exact
dimensions used in the UI, using the `inkscape -e
logo-shaded-text.png -w 192 -h 192 -z logo-shaded-text.svg`
command.
This change also works around QTBUG-46846.
Test-Information:
Verified that the login window of the UI looks nearly the same
as before. It is a bit smaller since the blurred shade is not
cut off anymore.
Change-Id: Iee56d2a892572f45db7f93a2429455fd9d603eb6
|
|
This is the same approach taken by the vCard dialog.
Test-Information:
Previously the open 'Enter Room…' dialog would stay in
background when selecting the 'Enter Room…' menu item.
Now it will be raised to top.
Tested on OS X 10.11.5 and Qt 5.5.1.
Change-Id: I8ef78ceea328206306d25085feeb3f5b039821d9
|
|
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
|
|
COPYING.thirdparty contains all authors that contributed
to the project and the licenses of their contributions.
COPYING.dependencies contains the external dependencies,
including those in 3rdParty, and their licenses.
Test-Information:
Verified that about dialog in Swift still contains all
licenses.
Change-Id: I0b8eb51905e20bdfb609de159682ad90f2089c17
|
|
See DEVELOPMENT.md for instructions.
Test-Information:
Tested using a self-signed code signing certificate created
using Keychain Access.app.
Compared the output of 'codesign -vvv -d' on Swift.app with
preinstall apps. The output looks much the same except for
the signing authority.
Change-Id: Idbb3209ad917091c371ced61ec8a77e3e5d18884
|
|
The C++ standard library takes ownership of the date_facet
instance passed into the locale object ctor.
Test-Information:
Without this fix Swift would crash on exit when build with
ASAN. With this fix it does not anymore on OS X 10.11.5.
Change-Id: I46a87d9d6840408556722feeebe28a13e0d351b2
|
|
This removes support for user dictionaries for now. The new
UI shows a list human readable languages (in their native
spelling) where the user can select one to use for spell
checking.
Updated our InstallSwiftDependencies.sh based on the package
names in their repositories.
Test-Information:
Tested on Ubuntu 16.04 with Hunspell and tested it still
builds on OS X 10.11.4.
Did not test InstallSwiftDependencies.sh.
Change-Id: I24fc705b1495f7c39a8da149cbd7116e41609998
|
|
The new format is VERSION_DATE_UUID.dmp.
Included the diff for the Breakpad modification.
Test-Information:
Tested by adding crashing code and verified the filename
of the created minidump file on Windows 8 with VS 2013.
Change-Id: I963e7913fadf4787742439da590e12e121ef3435
|
|
Test-Information:
Tested on OS X 10.11.5 with Qt 5.4.2 and Debian 8.5 with
Qt 5.3.2.
Change-Id: I9a60fc4b5556379576fdddc12a697cb71597e241
|
|
Test-Information:
Verified that trellis options are available after login
and working as expected on OS X 10.11.5 with Qt 5.4.2.
Change-Id: Ib94129abc07c38d38c932493d1c74260e894a4f3
|
|
There was a bug that prevented to drag multiple contacts
in the invite dialog list. The restriction for impromptu
conversation rooms is now only applied if no local MUC service
is found and the dialog is a 'Chat to Users' dialog.
Test-Information:
Tested that you can now drag multiple contacts into the
invite dialog.
Tested on OS X 10.11.4 with Qt 5.4.2.
Change-Id: I50b0bb191570f32cfa054e415c993b1fb57073ad
|
|
This fixes a bug where manually added contacts, i.e. the user
entered the address and hit the 'Add to list' button, were
missing the correct presence in the contacts list in the
'Start Chat…" dialog.
Test-Information:
Tested on OS X 10.11.5 with Qt 5.4.2.
Tested adding a roster member via the drop down suggestion and
via manually entering the JID and clicking the 'Add to list'
button. In both cases the correct presence was shown.
Added a test verifying that empty JIDS are invalid.
Change-Id: Idb18e4ad2b5c0afb48461796f64e8f11f02a24fd
|
|
QtSuggestingJIDInput is used by the 'Start Chat…' dialog and
other dialogs. Keyboard usage of the widget works fine. Clicking
on a suggested item via touchpad/mouse will correctly select
the item. However, when the popup is hidden, the dialog
containing the QtSuggestingJIDInput is not the top window but
will be in the background instead.
With the workaround, the dialog will be on top of the window
hierarchy if a suggested item is selected by click.
Test-Information:
Tested that this workaround is not required on Windows 8 and
Ubuntu 16.04.
Tested this workaround works on OS X 10.11.5 with Qt 5.4.2.
Change-Id: I77f0aa5f92268da1867f61d9f6e1fbc66a724c17
|
|
Test-Information:
Tested on OS X 10.11.5 with Qt 5.4.2.
Change-Id: Ic751fec01cfe6417bb5db17364f5eb69a2037895
|
|
Test-Information:
Builds on OS X 10.11.5. Tested that the recent search server
field in the 'Start Chat…" dialog is not set, if you search
locally. Searching on remote servers still adds the server
to the recent search server list.
Change-Id: I62e21339b055ec826f450b8bfb2c662d1df5e84b
|
|
Test-Information:
Builds on OS X 10.11.4 with Qt 5.4.2 and the short description
still shows the strings in the UI.
Checked that update_translations=1 shows the newly translatable
strings.
Change-Id: I7acc1058fbb07a5f1ed630c5cc95493f2bc79770
|
|
Test-Information:
Test that it still builds and unit test pass on OS X 10.11.4.
Change-Id: I2eb4a0b707991aee553db36a8cd1ae28b813acab
|
|
Chat views are expected to remember the scroll position.
If the user scrolled all the way down, the view should keep
scrolled all the way down, even if the windows is resized,
new messages are added or the user enters a multi line message
in the message input box.
Qt WebKit only provides reliable scroll position updates in
their web environment. This requires to have scroll changes
call a JS hook that calls our C++ signal.
Test-Information:
Tested and verified the following cases for correct behavior:
* entering a multi line message keeping the view scrolled down
* resizing the window and keeping it scrolled down
* receiving messages and the view keeps being scrolled down
* verified that view does not scroll down if it is not yet on
resize of the window, entering multi line messages, and
receiving new messages
Change-Id: I579a07d0b073c34e7a46b0fde1bc09f3da08d5da
|
|
If you resize the window in netbook mode, the splitter inside
only resizes to the new geometry if it is clicked or moved.
This is due to overriding resizeEvent hook of QSplitter in
QtSingleWindow but not notifying QSplitter's resizeEvent hook
in the new method.
Test-Information:
Tested on OS X 10.11.4 with Qt 5.4.2.
Opened Swift in netbook mode and resize the window. The login
screen is resized as the window is resized. The login screen
used to only resize if you moved the splitter.
Change-Id: I7715e1cdcb4c0e672e233a9f76fad3ef5fe70d25
|
|
Test-Information:
Builds on OS X 10.11.4 with Apple clang and clang master.
Change-Id: I012577e29c6fcf2fb452b4f13912aaeb37250fb5
|
|
Test-Information:
Builds on Debian 8.4 and unit tests pass.
Change-Id: I154f70606de33b57c8dd4a5d9431a14f537ad50f
|
|
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
|
|
Run 'clang-tidy -fix -checks=modernize-loop-convert' 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: I65b99e0978cfab8ca6de2a3e5342e7a81416c12c
|
|
Test-Information:
Builds on OS X 10.11.4 and unit tests pass.
Change-Id: I8775e8d1e3addbc88b220c1cc618637f706daca2
|
|
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
|
|
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
|
|
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
|
|
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
|
|
This commit changes the ChatWindow/ChatView APIs to not pass
highlights actions as additional parameters but instead they
are now part of the ChatWindow::ChatMessage and its parts.
This allows the controllers to do highlighting in one single
place and play sound actions on the highlighted message in
a single place.
On a highlighted message only unique sounds are played and
they are played in sequence of the rules that matched
the message.
Test-Information:
Adjusted the existing unit tests accordingly. Added unit
tests that check reduplication of highlight action sounds
and that the sound actions are emitted correctly.
Manually verified that highlight sound actions with and
without duplicated sounds are audible on OS X 10.11.3.
Change-Id: I68c88e0d285d79d87b2997ed29d92b140480b394
|
|
This also removes the old chat theme resources and some code
in QtWebKitChatView that was required for compatibility to
Adium-style themes.
The new code uses a CSS style in the header to change the
font size and does not iterate the whole DOM tree itself
anymore.
Added new resources for failed and successful asks.
Test-Information:
Tested MUCs, PMs, message correction and file-transfers with
the new chat theme.
Change-Id: If922a972c658189444e60a7b00e5e5e96661620d
|
|
Previously a preprocess macro expansion variable was passed
into Qt's tr() function. Qt's translation tool did not pick
these stings up.
Test-Information:
Builds on OS X 10.11.3 with Qt 5.4.2. Provided german
translations for some of the items in the popup menu and then
ran Swift with --language de. The translated popup menu items
were correctly translated in the UI as expected.
Change-Id: I50aeac9dd7277e1ce07b5a362c7474962dbcfad4
|
|
If Swift uses Hunspell as spellchecking backend its
configuration can fail, because a dictionary is missing
or a wrong path was specified.
Instead of crashing, spellchecking will be disabled and a
warning is printed to the terminal.
Test-Information:
Tested on Debian 8 with Qt 5.3.2.
Tested enabling/disabling of spellchecking in the UI,
selecting different dictionaries and broken dictionaries.
Change-Id: Ib6d73ed3d7a6a3701410b0f6dc983d41e807df82
|
|
The previous stylesheet was too generic, as it applied on
all widgets and sub widgets, including a potential context
menu. This fix will only color alerts and the text input
in the warning color. Potential context menus are colored
according to the application style.
Test-Information:
Tested alert colors and text input color on OS X 10.11.3
with Qt 5.4.2.
Change-Id: I0d1f704f4eacddf41befb7dfbc8bbf7ef28f88ce
|
|
Test-Information:
./scons test=unit passed without errors on OS X 10.11.3.
Change-Id: I9303fd2d5a08a17d1e8f2ca015bec7c883aeedad
|
|
Currently the file-transfers to MUC PM contacts fail because
the from JID does not match the initiator JID. The
initiator JID is always the real client JID at the moment.
Disabling file-transfer for MUC PM contacts provides a better
UX for now.
Test-Information:
Tested file-transfer to normal contacts still works. Tested
file-transfers to MUC PMs do not start.
Change-Id: If5f59eb313a25ca919393f497a57fd339eb17e3e
|
|
WriteBytestream::write(…) now returns a boolean indicating
its success state (false in case of an error). Adjusted
FileWriteBytestream accordingly.
The QtWebKitChatView will test if the file path selected by
the user is writable before accepting it and starting the
transfer. If it is not writable a red warning message will be
added to the file-transfer element in the chat view.
Test-Information:
Added an integration test that tests the new behavior for
the FileWriteBytestream class.
Tested two file transfers on OS X 10.11.3, one to a write
protected location and another to /tmp. The first is not accepted
by the UI, and without the UI sanity check it results in a
file-transfer error. The second succeeds as expected.
Change-Id: I5aa0c617423073feb371365a23a294c149c88036
|
|
If there is no X11 display set, bits in libqxcb as used by the plaform
integration bits called by QApplication will trigger an abort. Moving
this down to just before where the app object is needed allows --help or
--version even if there's no DISPLAY, and also improves runtime of these
GUI-less operations quite a bit.
Test-Information:
Test platform Debian 8 x64 with Qt5
Starting swift-im with DISPLAY set works as expected
Asking for --version or --help without DISPLAY now works
Actually starting the UI still aborts.
Change-Id: Id8eeee90598fe2a8e3b26ba042835a0ea928932f
|
|
Used to use simple string contactenation, but that's unsuitable to at
least Dutch.
Test-Information:
Test platform OS X 10.11
Untranslated VCard field dropdown looks as before.
Change-Id: I371b47d570032deffa0ed662ba13964d96b22633
|
|
As of Qt5, lupdate doesn't accept the -codecfortr option anymore. Qt
sources are now expected to always use UTF-8. Fixed the lupdate command
line so that this option is now only used when building against Qt4.
Test-Information:
Tested on OS X 10.11 using Qt 5.4
Tested on CentOS 6 using Qt 4.6
Change-Id: Ie5bcb383bc2ebded6dc1deb65d988d3b268dc293
|
|
Changed MUCController to only handle message stanzas as
subject change if <subject/> is present and neither <body/>
nor <thread/> is present in the message stanza.
Test-Information:
Added unit tests verifying behavior described in XEP-0045
section 8.1.
Unit tests pass on OS X 10.11.2.
Change-Id: I1d22272da1675176be131ab360b214a98f20533f
|
|
This is to allow easy copy and paste of Swift version, Qt
build version and Qt runtime version into potential bug
reports.
Test-Information:
Tested changed UI behavior on OS X 10.11.2 with Qt 5.4.2.
Change-Id: I6234f08e77402c3d1ec2f5b7a98c19b059a445ea
|
|
Test-Information:
Unit tests pass on Debian 8.
Change-Id: I648f97a3ebd2c798df809a1f2cb37b689df94f42
|
|
This change is just for consistency and does not change
the behavior.
Test-Information:
Checked and uncheck star still works in vCard.
Change-Id: Ib6597b48cec9d3498611524c9a97fce62811ec02
|
|
Test-Information:
Tested by transferring a file between two Swift instances.
Tested in WebKit chat views and in plain chat views.
Change-Id: Ie46cbd7bac8a36478f64b4557cf55926e6d4af37
|
|
The issue is visible when having two chat windows with the
same label. One of them is elided even though enough horizontal
space is available.
Test-Information:
Tested multiple chats including some with the same tab
label.
Tested many open chat windows overflowing the horizontal space
of the tab bar to test scroll behavior on overflow.
Verified that the code stops the early eliding bug on
OS X 10.10.5 with Qt 5.4.2.
Verified that workaround is not needed on Debian 8.2 with
Qt 5.4.2.
Change-Id: I2dc0d417fb6f402dda2f7575a83ca3faf4eb63cf
|
|
Test-Information:
Verified UI in the 'Chats' tab is directly updated after
compactness change on Debian 8.2.
Change-Id: I20fcf863983ff206be4cb427d4d77bd42f23e53e
|
|
This also fixes the issue of Ctrl + Backtab moving two tabs
back on Windows.
Test-Information:
Tested on Debian 8.2 with Gnome 3 and Qt 5.3.2, OS X 10.10.5
with Qt 5.4.2 and Windows 8 with Qt 5.4.2.
Verified that Ctrl + Tab works correctly.
Verified that Ctrl + Tab works correctly when the chat room
contact list is selected.
Verified that Ctrl + Backtab works correctly.
Change-Id: I9e461d741a399aed59142505e29c03cebe26097e
|
|
Commit 8405fa1 changed the client certificate handling inside
Swiften to not fallback to certificate-less authentication
if there is an error.
This commit fixes Swift to only pass a certificate during login
if a file is set and the user wants to authenticate using client
certificates.
Test-Information:
Tested certificate-less login (worked).
Tested certificate-based login (worked).
Tested certificate-based login with deleted certificate file
(correct error reported).
Change-Id: I3b1393688c4802abfd7f66b7cb49ddd8c518e62b
|
|
Test-Information:
Verified UI under OS X 10.10.5 and Debian 8.2.
Change-Id: Ifaf063eed06f51c94d4103c5397187e62035fb90
|