Age | Commit message (Collapse) | Author |
|
Instead, handle the QCloseEvent and emit the windowClosing
signal there. This is an attempt to fix a crash I am unable
to reproduce but which crash stack includes the signal emit
in ~QtTabbable.
Test-Information:
Builds on macOS 10.12.1 with clang master. All unit and
integration tests pass. Manual login and close of Swift worked
without a crash.
Change-Id: I470f3c5362fd0f502c542560854424e87fc0727e
|
|
Test-Information:
Builds and all tests pass on macOS 10.12.1.
Change-Id: I58ca7ba27736d27426350f636dfe910f4f2f1b17
|
|
Previously if you wanted to invite people to a MUC and had
a PM window for a MUC occupant open at the same time, the
InviteToMUCUIEvent would be handled by the PM window, by the
ChatController of the PM window and not the MUCController of
the MUC window.
Test-Information:
Verified that some scenarios work correctly:
- Tested a drop to a MUC window while a MUC PM window is open
to an occupant in the MUC. Previously this crashed due to
ChatsManager::localMUCServiceJID_ being empty.
- Test that impromptu MUC creation to a normal chat works.
- Test that impromptu MUC creation to a MUC PM chat works.
All unit and integration tests pass on macOS 10.12.1.
Change-Id: Ib20de7e925e3503308211936ee47d4ba829d0394
|
|
Test-Information:
Build on macOS 10.12.1 and all tests pass.
Change-Id: Iedaa3fa7e7672c77909fd0568bf30e9393cb87e0
|
|
Test-Information:
None.
Change-Id: I6a734918b48e512726344d5812642473067e40a9
|
|
If software updates are enabled the about dialog will show
the currently configured update channel and provides a link
to a dialog to change the update channel.
Test-Information:
Builds on macOS 10.12.1, unit tests pass, and dialogs behave
as expected. Did not test Sparkle updating.
Change-Id: I05d5014f0d719ba9b2146c1e599db4f7fde80558
|
|
Test-Information:
Builds on macOS 10.12.1, ./scons test=all passes, Swift
successfully logins and remembered Trellis configuration.
Change-Id: Id94d6af1448d44d7d46ba2b8606f3e5ebe98be7a
|
|
Due to the style independent fixed text color for the status
message of non-compact roster item, it was barely readable on
Windows 7. This commit has the color for the status message
in non-compact roster items depend on the used text color
for the name. It uses a brightness adjusted highlight text
color for the second line.
Test-Information:
Tested on OS X 10.11.6 with Qt 5.5.1 and Windows 8 with Qt
5.5.1.
Change-Id: I41beb0f3eaede3f9413a39662c213a4e904bdd69
|
|
This shows a short descriptive text in empty trellis cells,
that describes the current state to the user and suggests
actions on how to get rid of the empty trellis cell, e.g.
by changing the layout or moving chats to the empty cells.
Test-Information:
Tested with Qt 5.5.1 on macOS 10.12.
Change-Id: Ibc7d3a327cf32b8a21304b37e79534773b5d3761
|
|
Test-Information:
Unit tests pass with Qt 5.7.0. Chat view sizes are synchronised
on change. ASAN does not complain when opening/closing lots
of chat windows and then closing Swift.
Change-Id: Ib00260d2331f48f0ca3c47a2340311dcff85c5ed
|
|
Test-Information:
Build successfully with Qt 5.6.1 on macOS 10.12 and opening
about dialog, license window and change log window still works.
Change-Id: I4a91b41f3848ee8049c179598b1b8e498d8ed35d
|
|
The delviery-warning.svg matches the style of
delivery-failure.svg and delivery-success.svg. It is a
yellowish circle with a white border and a white exclamation
mark in it.
Test-Information:
Build and checked the new icon is shown when a message
receipt is requested but no receipt is received.
Tested on macOS 10.12 with Qt 5.7.0 and QtWebKit TP4.
Change-Id: Ie715993eabd8f853ea0a6983645d7d89259f61a7
|
|
Test-Information:
Unit tests pass in ASAN-enabled build on macOS 10.12.
Change-Id: I2dd2ab79e70b0613550fd0eacb739f50627a192f
|
|
QtChatWindow was setting and resetting the Qt stylesheet for
the chat input for message correction UI. This conflicted
with the focus rectangle styling.
Moved correction styling inside QtTextEdit which can handle
focus rectangle and correction background styling together
without overriding each other.
On OS X, the native focus rectangle drawing, i.e. setting
the Qt::WA_MacShowFocusRect widget attribute on the input,
can not be used anymore, as it conflicts with setting the
stylesheet for the correction background color.
Test-Information:
Tested message correction, trellis and security label UI on
OS X 10.11.6 and Windows 8 with Qt 5.5.1.
Change-Id: I0b771a2d47d5437512e870a9887b0b6e7262b359
|
|
Test-Information:
Tested that at 1em scaling, the default, the main text in the
chat style has the same height as the nicknames in the roster.
Tested with Qt 5.4.2 on macOS 10.12 on a retina system,
with Qt 5.4.2 on macOS 10.12 on a non-retina system, and
Windows 8 with Qt 5.7.0 with QtWebKit Technology Preview 4.
Change-Id: I10701c411d9f787bf497eb6aab208a0f3fda621c
|
|
Test-Information:
Unit tests pass in ASAN-enabled build on macOS 10.12.
Change-Id: I7a8dae7d06e5e1d3dc9391f9c9a342df384d90fc
|
|
The default avatar is a embedded SVG which doesn't need to
be scaled specifically.
Test-Information:
Builds on macOS 10.12 with Qt 5.6.1 and tooltip avatars are
still shown without an error message being logged.
Change-Id: I5aff38856e97dee9133b1daf9039cabc063dc01c
|
|
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
|
|
The automatic software update feature is enabled by default.
Test-Information:
Created system-settings.xml disabling the automatic software
update feature and verified no Sparkle log output is produced,
showing Sparkle is not initialised and run.
Tested on macOS 10.12 with Qt 5.5.1.
Change-Id: Ief1f4030505a2a3961ac18cd4774863584489727
|
|
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
|
|
Sparkle is configured to do silent automatic background
updates based on the provide appcast feed. When a new update
was downloaded and is ready to be installed Swift notifies
the user that they can restart to take advantage of the newly
available version.
Test-Information:
Setup a custom appcast feed with a newer Swift dev release.
Tested updating with Sparkle 1.14.0 binary release using DSA
keys and signatures. Did not test Sparkle update with code
signed Swift builds. Tested on macOS 10.12.
Change-Id: Idad461ec53963c80990e51a502cb6e28bc7b6b4e
|
|
The default focus indicator on the text input fields in chat
windows becomes harder to notice in trellis mode as there are
many similar looking chat windows visible at the same time.
This change increases the visibility of the focus indication
border on Windows and will enable the
standard blue focus halo on OS X for focused chat inputs
in trellis mode.
Test-Information:
Tested with Qt 5.5.1 on OS X 10.11.6 and Qt 5.5.1 on Windows 8.
Change-Id: If9fe9edea6fef292bb99eabbb125c7a9ec20dcc2
|
|
This is implemented with the help of an implementation of
QSortFilterProxyModel which filters room names based on a
user search string.
Test-Information:
Tested on OS X 10.11.6 with Qt 5.5.1. Tested UX with different
MUC services and search strings.
Change-Id: I88085d089493008b2197a4aeb45d8c4d75724b9c
|
|
This is supposed to happen automatically according to Qt
documentation but it does not.
Qt also changed the context of QT_LAYOUT_DIRECTION from
Application to QGuiApplication. This commit adjusts our
translations accordingly.
Test-Information:
Tested with Qt 5.4.2 and Qt 5.5.1 on OS X 10.11.6 with
German and Hebrew translations.
Change-Id: I0b6a8bf35487e95f5186fd4fa09d4dcb92ba0c01
|
|
The cache for each version is stored in a dedicated directory
that exists next to the raw avatar images.
This allows running different Swift versions which use
different versions of the QtScaledAvatarCache.
Test-Information:
Tested on OS X 10.11.6 with Qt 5.5.1 and Windows 8 with Qt
5.5.1.
Verified that the avatar paths changed to the new versioned
cache path in the web views.
Change-Id: I12cb46c4d6750ae7ad82c719eef290f721d1d131
|
|
Change MUCSearchItem::setParent to take weak_ptr over
shared_ptr and converting it to weak_ptr in the method.
Test-Information:
Builds on OS X 10.11.6. Tested that various MUC room searches
still work.
Change-Id: I26d62861c99957759127c18a629bdda3635012c7
|
|
This also changes the classes around MUCSearchModel to C++11
smart pointer based memory management.
Test-Information:
Verified that dtors of MUCSearch*Items are called when old
search results are replaced by new search results. This
was not the case previously.
All unit tests and manual testing with an ASAN enabled build
succeeded.
Change-Id: I84d62f3b86138728401b98d3774f47c72fdf9a4c
|
|
This changes the icons for delivery success and delivery
failure to vector graphics in SVG format.
Added a slight white circle around the graphics for better
readability on backgrounds with low contrast.
Test-Information:
Tested with Qt 5.4.2 and Qt 5.5.1 on OS X 10.11.6 on retina
and non-retina systems.
Noticeable better rendering due to SVG over PNG. Noticeable
but not attracting attention white circle.
Change-Id: I3c9be99854a300a4e40161a74964514aa47d292a
|
|
This sets the font family to Lato for QtTreeWidgets. The font
size or other settings are not changed.
Test-Information:
Tested on OS X 10.11.6 with Qt 5.5.1.
Change-Id: I235ae1b4e98e903872cb21ce41eca5f08955042d
|
|
This changes the minimal font scaling to 0.8em, so that the
font size in the chat view can be smaller than the font size
in the rest of the application.
At 1.0em the font in the chat view has the same size as the
rest of the application.
Also changed fixed pixel sizes in main.css to relative
percentage sizes.
Test-Information:
Verified the font size in the chat view is the same as the
font size for the contact lists at 1.0em on Windows and OS X
with Qt 5.5.1.
Change-Id: Ib625f11cea0aacd31edee27c2dc89df5e2cbd1c4
|
|
This allows building Swift with debug symbols and the
non-debug MSVC dynamic runtime.
Test-Information:
scons debug=1 optimize=0 and ./scons debug=1 optimize=1
both build and Swift runs in both configurations on
Windows 8 with VS 2013.
Change-Id: I47d75916963c4e64732c547bc7dfb322096d6189
|
|
Test-Information:
Tested on OS X 10.11.6 with Qt 5.5.1.
Change-Id: Ie96bae26e4001b3955007064313ae76cb47c0a7e
|
|
Due to Windows focus handling, the handleApplicationFocusChanged
method was called during the relayout process while the dynamic
grid layout is not in a consistent state.
With this change a call to handleApplicationFocusChanged will
just be ignored during the relayout process when changing the
layout.
Now it also remembers the current active widget in the layout
and activates it after the relayouting is done.
Test-Information:
The crash happened in a scenario where you had a few rows and
columns and with many tabs randomly distributed, leaving some
trellis cells without a widget. When changing back to a 1x1
grid in this situation it sometimes crashed.
Now it does not anymore.
Tested on Windows 8 with Qt 5.4.2.
Change-Id: I829bac2ba050cf320e15ab48b49bbb9606a82831
|
|
Previously users could only drag and drop tabs on other tab
bars. With this change the user can simply drop the tab on
another tab widgets. This works on all QtTabWidgets that have
a QtDNDTabBar set, regardless of their number of child widgets.
This works by forwarding dragEnverEvent() and dropEvent() calls
on the QtTabWidget to the corresponding QtDNDTabBar.
Tabs dropped on the tab widget instead of the tab bar are
added at the end of the tab bar.
Test-Information:
Tested with Qt 5.5.1 on OS X 10.11.6 and Windows 7.
Change-Id: Ie73e02de24472eab2d20a89c937fb6630b1ef7b8
|
|
Recent testing on Debian 8 showed two rendering issues:
1. CE_MenuBarItem in the selected state shows drawing
artifacts for our drawing size with Debian's default style.
2. CE_SizeGrip shows drawing artifacts unless it's drawn
at position (0,0).
Removed size grip as the resizability signification is also
provided by the description text. Cells are drawn as simple
squares in the palette's highlight color.
Test-Information:
Verified that there are no artifacts and the dialog is usable
on Debian 8, Windows 8 and OS X 10.11.6.
Change-Id: I9eaf1e1fd34d035ec3dffcb0dc29efca40d6da24
|
|
This fixes UI drawing quirks on Windows and improves the
margins.
It also adds a descriptive text on how to use the dialog.
It adjusts the cursor position when changing the size via
keyboard so switches between keyboard and mouse usage of
the dialog are fluid.
Test-Information:
Verified usage and looks on Windows 8 with Qt 5.4.2 and on
OS X 10.11.6 with Qt 5.5.1.
Change-Id: I983656d7d08d49ac4914380ae42ed5ce49fcea12
|
|
This adds the ability to provide more specific date formatting
via the Translator interface. The default translator will use
Boost's formatting capabilities. The QtTranslator use more
localized and better readable formatting.
Test-Information:
Tested with Qt 5.5.1 on OS X 10.11.6. Checked that tooltips
and presence text in new chat views show the new formatting.
Change-Id: I90ff5ab8b31fb41f2dcbea2c40b8846c534c355f
|
|
Added Qt image format plugin packages and Qt SVG image format
plugin to InstallSwiftDependencies.sh script and Debian
packaging.
Test-Information:
Tested that macdeployqt now adds the image format plugin for
SVG to the deployable app bundles.
Change-Id: Id1ce265073cb8adb9315cb40da032ee11ea8761d
|
|
It now uses the same dark gray tone as the chat view uses
for its text.
Moved some constants to named variables for readability.
Test-Information:
Compact and non-compact contact lists, in the roster and MUC
roster and the chats view all show the first line drawn in
a dark gray instead of the hard black.
Change-Id: Ief36fd4f27d30ace61f04d50e846db571ab84a4e
|
|
Test-Information:
Created a custom CA and added it as trusted to the system.
Created a signing certificate and passed it to scons as
described. The resulting installer does not show a red UAC
dialog anymore during installation. Instead the publisher from
the certificate is shown in a blue UAC dialog.
Change-Id: Ie4043520f6d45ec2e7aad712441a928cb423b0de
|
|
Test-Information:
Tried editing a contact on a server prohibiting contact
editing. Previously the first double-click on the notice
showed an empty popup. Now the correct popup text is shown.
Change-Id: I996cf5b654e866ec6dd3f5198b694ae564018695
|
|
The old default avatar does not work well with the new
chat view design which uses circled avatars.
This also uses the vector avatar internally in Swift and
has Qt and the chat view engine scale it to the required
size.
Test-Information:
Tested on OS X 10.11.5 with non-compact chat views and MUC
conversations.
Change-Id: I82580ecb91fc81f4fe9535aa9d3b214b720a40f3
|
|
Test-Information:
Tested by clearing the avatar cache and joining MUC some larger
MUC rooms. All but our current default avatar look much better.
Change-Id: I515adbded1114632f41d6ee4eba6602b77dad975
|
|
Test-Information:
Tested with Qt 5.5.1 on OS X 10.11.5 and Qt 5.3.2 on Debian
8.5.
Change-Id: I727bca574ec1433df01bc68e5da0c7678fdb9915
|
|
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
|
|
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
|