Age | Commit message (Collapse) | Author |
|
Some platforms, e.g. KUbuntu, provide a wrapper around Qt's commands
that allow easy switching between different Qt versions. With this
change SCons will execute the found moc tool and check whether it works
or not.
Test-Information:
Tested with correctly installed Qt and uninstalled Qt on KUbuntu 14.04.
Change-Id: I88f0a36af462e909829c30115aa5481abdcd3ac6
|
|
Template classes cannot have SWIFTEN_API annotations as with annotation
code for instantiations of the template are expected to be in the DLL
which cannot be guaranteed for any user type. With the complete
implementation in available in the header it is not needed because
3rdParty Swiften users can instantiate an implementation as needed.
This also conditionally includes SQLiteHistoryStorage.h conditionally
in MemoryStorages.cpp, as otherwise the linker will expect an
implementation of SQLiteHistoryStorage in the DLL. However, it is only
built into the DLL if experimental features are turned on.
Test-Information:
Tested with experimental=on/off and swiften_dll=on/off.
Change-Id: Ieec85675c167ec34cffd4745ac854a5949fb2037
|
|
Test-Information:
None.
Change-Id: Ie2a5f9430aeb849219f4bca64aa3d1871bc17dc5
|
|
HighlightRule did not consider keywords in its isMatch() routine.
MUCController only triggered possible HighlightActions if it was a
direct 1-to-1 MUC message or an impromptu chat message.
Both issues are fixed.
Additionally fixed the HighlightRuleTest. It had some wrong assertions
related to rules being case insensitive by default and keywords match
inside longer words by default.
Test-Information:
Tested with a highlight rule that highlights text and tested that
sound actions are executed if the text is highlighted. Additionaly
verified that other behaviour (own nick mentions, direct 1-to-1 messages)
have their potential sound actions still executed.
Change-Id: Ia922a1ff38c66f6458d28a18a8cdde10e821f83d
|
|
Refactored the code to handle the following cases nicely:
- no copyright for current user present yet
- outdated copyright for current user present (with and without range)
- copyright present and up to date
Test-Information:
Tested with SWIFT_LICENSE_CONFIG set to "Isode Limited|default".
Change-Id: I4df475f7ecd55aebe892411b2323da50fcbca525
|
|
Correctly use pkg-config to test for Qt, if no qt path is specified
in config.py. 'Import(…)' at the top caused an error which was hidden
by try/catch at upper layer.
Test-Information:
Tested on Kubuntu 14.04, with and w/o qt path set and verified that
no exception is thrown if Qt is registered at pkg-config.
Change-Id: I82800c23e9f75bd5f6b136fe384a70165a92bb45
|
|
Test-Information:
Send a file from one Swift to another. Previously the progress bar did
not update in the receiving client. Now it does.
Change-Id: Ie710a4c1cfc389d6fcfb93de96250a80787883d3
|
|
Some servers have very restrictive TLS stacks that respond badly
to a bug in the SChannel TLS implementation, meaning that TLS
has to be limited to 1.0.
Add ClientOptions.tlsOptions. This is a method of passing options into
the TLS stack. It's currently
only used for the TLS 1.0 workaround in SChannel, but we might reasonably
expose other options in the future, such as limiting cypher suites.
Disables use of SSLv3 for SChannel
Also updates the coding style in SchannelContext a bit.
Test-Information:
Compiles on both OS X and Windows(SChannel). OS X doesn't show the new
option. Windows shows it, and remembers it between logins. Not tested
against a server requiring 1.0 only, but a previous hack with the
same approach was tested.
Change-Id: I1e7854d43811fd173f21f98d4dc3915fc7a4b322
|
|
Test-Information:
Tested build on Windows 8 with VS 2014 and ran unit tests.
Change-Id: I3d8096df4801be6901f22564e36eecba0e7310c4
|
|
Use QDialogButtonBox instead of custom button layout code. This way
the button are correctly layouted depending on platform guidelines.
Show a 'Ok' button if no other button is shown which closes the window.
Test-Information:
Tested on OS X 10.9.5 with Qt 5.4.2.
Change-Id: I37581982766d013f4d3d636880fd5ada59ee0c40
|
|
Test-Information:
Tested on Elementary OS 0.2.1 with all Qt components uninstalled.
Previously it would abort configuration and build. Now it simply builds
without Swift and other parts depending on Qt.
Change-Id: I84c91985a0ba1fdab98e97f80621cd41e0a7507b
|
|
This adds layout margin and spacing to the calculation of the correct
size hint.
Test-Information:
Tested on OS X 10.9.5 with Qt 5.4.1.
Change-Id: I7036f64a6621f5ce6603e77da26a887e28c663ca
|
|
Test-Information:
Tested on OS X 10.9.5 with Qt 5.4.1 and Windows 8 with Qt 5.3.2 and
KUbuntu 14.04 with Qt 5.4.1.
Change-Id: Ia6cf54baad3020d05be94c6159aa623f7a619816
|
|
Test-Information:
Tested on OS X 10.9.5 with Qt 5.4.1.
Change-Id: I27ba80b9799fd8177a291ec0b8eeb0c2168e2f04
|
|
Layout label and editing widgets below each other instead of next to
each other. This way there will not be any horizontal spacing if one
of them is hidden.
This also removes empty name parts in the shown fullname.
Test-Information:
Tested on Mac OS X 10.9.5 and Qt 5.4.1.
Change-Id: I20561a8e7f8b9305cd3314b1250a2d006abbccb5
|
|
Test-Information:
Tested on OS X 10.9.5 with Qt 5.4.1.
Change-Id: I8cad307d967be32a9d67dc8408e4a27f487f6032
|
|
By default cl.exe writes debug info to a static file name resulting
in all cl.exe trying to write to the same file when using parallel
builds.
This leads to race conditions and can have parallel builds fail.
This only takes effect if parallel builds are made by scons.
Test-Information:
Tested with VS 2013.
Change-Id: I8ea7e9370f5b149ded608e4c6f5e66a3fc6301c4
|
|
Bugs like:
* Tab title not matching shown chat window
* Duplicated tab titles after tab movement
Swift is also subject to QTBUG-36455, which is fixed for Qt >= 5.3.0.
This commit removes the use of application wide focus handlers in
QtChatWindow class, the QtChatWindow::qAppFocusChanged method.
The reason for this is due to the way QTabBar::moveTab is implemented
in Qt which we use for the Trellis feature.
Internally QTabBar::moveTab first adjusts its tab bar labels, then
removes the tab from its old location in the internal QStackedLayout
and then inserts it in the new location. After the remove Qt gives
focus to another widget via a focus change that does not go through
the event loop of the application and is not interceptable with
eventFilters.
Previously we would set the focus and call other signals in the
application wide focus change handler which then used the currently
inconsistent QTabBar/QTabWidget.
Test-Information:
Tested tab switching and movement on Windows 8 (Qt 5.3.2),
OS X 10.9.5 (Qt 5.4.3) and Ubuntu 14.04.2 LTS (Qt 5.4.3).
Change-Id: Ief423c4add58a90279109f72fac95fc58cb71111
|
|
Use scoped_connection to prevent missing disconnection from signals.
Stop and free S5BServer when stopping SOCKS5BytestreamServerManager.
Test-Information:
Tried sending a file to myself multiple times and it did not crash.
Change-Id: If32075d8e9c243cab254776b924248227520e030
|
|
Popup windows cannot change the mouse cursor on OS X. A frameless
window looks the same.
Test-Information:
Tested on OS X 10.9.5 with Qt 5.4.
Change-Id: Ia97e645be2ad1e5063f0cd8ef54344b63274b2d1
|
|
Test-Information:
Tested on Mac OS X 10.9.5 with Qt 5.4.
Change-Id: I7581ae478fb347bb468b28997be963799b82b2cb
|
|
Test-Information:
Tested on FreeBSD 10.0.
Change-Id: Ic1c8a1637f0fbc9128973b41d6988a8afd61e387
|
|
Configuration for LibMiniUPNPc did not detect size of ip_mreqn
correctly.
Test-Information:
Tested on FreeBSD 10.
Change-Id: I5d91695b6ec2f1ad91e4fe6bf0e73876fef4fa8b
|
|
Require valid room JID to proceed with entering a room.
Provide user feedback via tooltips on invalid input in the room and
nickname field.
Test-Information:
Tested with invalid room JID and empty nickanme on OS X 10.9.5
and Qt 5.4.0.
Change-Id: I8d8c75f5712f27cc72cce2d6dd16dbbea4fb504a
|
|
The workaround was fixed with QTBUG-33237 and is not needed anymore.
Test-Information:
Tested on OS X 10.9.5 with Qt 5.4.0.
Change-Id: Ie6a101749c816a082f31ac83085e098b3aa328aa
|
|
Test-Information:
Verified that SCons still runs on OS X.
Change-Id: I7e9b97f90ee5581a691a959b6f2c999d93e0be53
|
|
This also converts CheckTabs.py script to tab indentation.
Test-Information:
Ran the script over all files in our repo and it detected space and
mixed indented Python files.
Change-Id: Ifed86d64c8e87ed55e85ef4d35157e312b937291
|
|
Test-Information:
Tested on Elementary OS 0.2.0. Without this patch scons crashed if not
all required Qt libs are installed. Now it marks Qt as unavailable and
will configure a build without Swift.
Change-Id: I5aa28ab8438e4c326d16413deb3a3fa739c94480
|
|
Test-Information:
Tested with Qt 5.3.2 and Qt 5.4.1 from qt.io website.
Change-Id: Iada3e64e530d8a5b53b8b5c8943bcafbd9bd6c64
|
|
shlex.split has a 3rd parameter specifying whether or not to run in
POSIX mode, which defaults to True. This breaks splitting of Windows
paths so it is set to False on Windows.
Test-Information:
Tested on OS X 10.9.5 and Windows 8.
Change-Id: Icdc9fc07e89a80249526daa8f13dba081f957670
|
|
Test-Information:
Tested behavior on Elementary OS 0.2.1.
Change-Id: I5f4c77202e000f691682caf06df7c1f7976299c4
|
|
Test-Information:
Tested behavior on Elementary OS 0.2.1.
Change-Id: I887b85b78bfe5210844e0ea31f496fdbc8c21fa0
|
|
Test-Information:
Tested behavior on Elementary OS 0.2.1.
Change-Id: Icc0611181fbf7dbe22d6c0c8cb18be9c1cdbc138
|
|
Change-Id: Ieeb9636b40bfd43b9b79dede71eefc288e6014d2
|
|
released early
This patch also disconnects possible slots on stop() from the signals.
Test-Infromation:
This fixes a crash that occured during testing with
ConcurrentFileTransferTest.
Change-Id: I2b443f40ac3359c8142fcffc084647312b9a1e76
|
|
This also adds missing resets pointers to NULL after they are deleted.
Test-Information:
FileTransferTest crashed in some scenarios before; now it always runs
successful.
Change-Id: Ic63fd51eeb46e708221a04dc912e8bf2f1d4f9fb
|
|
running
Add a check on whether we have a running SOCKS5 bytestream server
before trying to access it to close unneeded S5B connections to it
after we decided on a candidate to use.
Test-Information:
Without this FileTransferTest crashes in the configuration that does
not allow direct or assisted S5B connections. This patch fixes this
issue.
Change-Id: Ifcf59f82755b9620e7f5fa5841e45815a41ac442
|
|
This patchs adds management of the SOCKS5 bytestream server and port
forwarding setup to Swiften. The first file-transfer, regardless of
incoming or outgoing transfer, will start and initialize the S5B server
and if configured try to set up port forwarding. The last file-transfer
to finish will will close the server and remove the port forwarding.
Test-Information:
Tested with upcoming ConcurrentFileTransferTest.cpp and running multiple
S5B file-transfers in parallel.
Change-Id: Idd09d3d0ef9498fc9435b0aee81f2b1061783342
|
|
Test-Information:
Verified with Clang 3.7.0 on OS X.
Change-Id: I345ef288163214288d41c3980c8e67529db0657d
|
|
The add_contact and remove_contact calls used a fixed timeout of -1,
which could cause the operation to hang forever, even when a timeout was
set.
Test-Information:
add_contact and remove_contact properly honour global timeout on a
broken connection.
Change-Id: I6bd877a8123ddab87b1f653c0cfda7a6b101dae7
|
|
When compiling with Clang or GCC, include 3rdParty libraries as system
headers and frameworks (-isystem and -f).
Test-Information:
Tested with Clang on OS X.
Change-Id: I184221ddc4b34d30ee6ba66e202953619b5afd56
|
|
Test-Information:
Tested with online and offline account. Tested with not bookmarked
and already bookmarked chats. Works as expected.
Change-Id: Ib8851a70a7a82a198ee5b7a207816f03ad9df61e
|
|
Fix qt4.py SCons module to use the specific tools of the correct Qt
verison.
On non-Windows and non-Darwin platforms SCons will try to detect the
correct Qt compiler and linker flags from pkg-config.
Added the ability to build Slimber with Qt5.
Fixed Qt5 support on Linux when using prebuilt Qt distribution from Qt.
This patch adds support for building Swift on Arch Linux, with Qt4 and
Qt5.
Test-Information:
Tested under Mac OS X 10.9.5 and Manjaor Linux (Arch Linux) in Qt4
and Qt5 configuration, and tested Qt5 Linux binary from their website
on Arch Linux with the qt variable set in config.py.
Change-Id: I2e19ab4aa7a26fdd989e2a12faa51a0f3f89c3ce
|
|
This adds support for running ./scons out of the box on Arch Linux.
Test-Information:
Tested on OS X 10.9.5 and Manjaro Linux (Arch-based).
Change-Id: I53c4d537571a40352797c9176582b6fd93a75227
|
|
This commit enables the following shortcuts for --no-tabs mode:
- CTRL + Tab or CTRL/CMD + PageDown to switch to the next chat window
- CTRL + Shift + Tab or CTRL/CMD + PageUp to switch to the previous chat window
- CTRL/CMD + W to close the current chat window
- ALT + A to switch to the next chat window with active messages
Test-Information:
Verified that the new shortcuts work as expected and verified that
standard mode and netbook mode still work as usual.
Change-Id: I3831b6c02f5d664cc8b21d7571e20aed00de89b4
|
|
The previous shortcuts conflicted with the shortcuts for moving to the
begin and end of a line in text input widgets.
New Shortcuts:
Move tab left Ctrl+Shift+Page Up
Move tab right Ctrl+Shift+Page Down
Move tab to previous group Ctrl+Alt+Page Up
Move tab to next group Ctrl+Alt+Page Down
Test-Information:
Tested and it works on Mac OS X 10.9.5 with Qt 5.4.1.
Change-Id: Ie8b6fb05d56013d499e46838b15840554bbe6f72
|
|
This modifies the feature detection in the ChatController to try to use
the common features of all available resources feature detection if no
full JID has been bound to the chat yet.
Test-Information:
Tested with two Swift instances. Tested
a) the initial chat start case and,
b) the offline/online.
In case a) Swift used to initally show a yellow warning about no support
for message receipts. This warning is gone now.
In case b), after a user gone offline and online again in a running chat,
Swift used to show a warning about missing support for message receipts.
This warning is gone now.
Change-Id: I7a769fde8d14847b180503aeaa58280c572d81b3
|
|
Test-Information:
Tested on OS X 10.9.5 with Clang 3.7.0.
Change-Id: Ic3a5ec77ca488c1688da35f75dd7424f8f59784b
|
|
To enable native Android logging you need to pass
"-DSWIFT_ANDROID_LOGGING" to the "cxxflags" and "-llog" to the
"linkflags".
Test-Information:
Tested on OS X 10.9.5, with NDK API level 14 on an emulated Android 4.0
ARM instance.
Tested that if enabled, Swift log messages appear in the Android
system log via "adb logcat" instead of appearing on stdout.
Change-Id: If89c870f0b664a5e65ccc1fa8a244826d2875ec1
|
|
Removed dead debugging code and unnecessary includes as well.
Test-Information:
Tested with Swiften/QA/ClientTest, adjusted to have a manual hostname
set in the ClientOptions.
Tested on OS X 10.9.5, with NDK API level 14 on an emulated Android 4.0
ARM instance.
Without this patch the connector timed out during name lookup trying
to resolve the IP set in the ClientOptions::manualHostname. With this
patch it skips lookup and connects successfully.
Tested and verified unchanged behavior with this patch and without the
manual address override set.
Change-Id: I737327b2e66c9da78a1963e754bcf201b7d40626
|