summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-05-18Remove remants of non-netbook mode related codePeter Burgess
This includes removing the class QtChatTabsShortcutOnlySubstitute, passing around QtChatTabs instead of QtChatTabsBase, removing checks and casts relating to the possible use of either QtChatTabs or QtChatTabsShortcutOnlySubstitute, checks to see if the splitter exists as the splitter should now always exist. Test-Information: Program still builds and runs fine. Both login and main windows open and work correctly. Chat tabs open and close without fault. Unit tests still pass. Removing loginWindowGeometry from the config file causes no issues. Change-Id: Iab58ab7fd23571f4aeeb7c8a9a988bdb1500ba5b
2018-05-18Open swift with sensible geometry in netbook mode the first timePeter Burgess
If swift has never been run in netbook mode before, then netbook mode geometry is set by some hard coded default value during construction of QtSingleWindow. The code to set and utilize the original non-netbook mode geometry has been removed. Test-information: No unit tests as all changes at Qt specific. Tested after deleting config file. Tested after replacing config file with one that has no SINGLE_WINDOW_XXX settings (so a config file you would find if swift had never been opened in netbook mode). Tested with one or other of the SINGLE_WINDOW_XXX settings missing Tested with config file that contains all SINGLE_WINDOW_XXX settings Change-Id: I0075456796bd830b855629fbd03d601df7f2891c
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
2017-12-07Remove shortcut for changing trellis layoutTobias Markmann
It is rarely used and conflicts with Polish keyboard layout on Windows. Test-Information: Verified that shortcut is gone and the description text is sensible on macOS 10.13.1 with Qt 5.4.2. Change-Id: I79ede2827e2e5f7b9afcb3bbd2669e5bf83f091f
2017-02-09Fix mouse movement when resizing trellis layout.Joanna Hulboj
Test-Information: From view menu choose "Change Layout", move mouse to resize trellis. Trellis resizing works fine. Change-Id: I112c0bd84dc57abb3bb95f825f74b2efa1f8e183
2017-01-18Set cursor position to the center of the screen to show layout window in the ↵Joanna Hulboj
middle of the screen Test-Information: Tested with multiple screen setup. Tested only on Windows. From view menu choose "Change Layout", the layout window appears in the middle of the screen. Change-Id: Iab4ba64d54766426be39926773aa5b5bb628b9e9
2016-11-23Migrate remaining Swiften/Base/foreach.h use to range-based for loopTobias Markmann
Test-Information: Build on macOS 10.12.1 and all tests pass. Change-Id: Iedaa3fa7e7672c77909fd0568bf30e9393cb87e0
2016-11-10Move Qt specific setting constants to QtUISettingConstants.hTobias Markmann
Test-Information: Builds on macOS 10.12.1, ./scons test=all passes, Swift successfully logins and remembered Trellis configuration. Change-Id: Id94d6af1448d44d7d46ba2b8606f3e5ebe98be7a
2016-04-04Modernize code to use range based for loops using clang-tidyTobias Markmann
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
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
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
2015-04-10Change trellis tab movement shortcutsTobias Markmann
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
2015-03-31Disable signals when adding a tab to the trellis layoutTobias Markmann
Due ot the way Qt implements widgets and the events, the windowOpening signal of a QtTabbable is emitted before the QtTabbable is a member of a QTabWidget when adding a QtTabbable to a QTabWidget. Disabling the signals when adding the widget will prevent these signals to be called and will prevent and endlress recursion. This has originally been reported by Pavol Babincak. Test-Information: Without this patch the reporter had Swift crash after a day or two. With this patch the reporter does not experience the endless recursion (crash) anymore. Change-Id: I8b3d791d79e9ab8f42dd1a1cba30d118f620f15d
2015-02-23Fix chat window title showing wrong chat titleswift-3.0beta1Tobias Markmann
Setup an application wide focus handler which updates the title if a focus change to a QtTabWidget happened. Test-Information: Tested on OS X 10.9.5 with Qt 5.4.0. Change-Id: Ib2e2f4c4a93deddb286350bdef685eb7aee504c9
2015-02-20Fix Ctrl/Cmd + Page Up/PageDown shortcutsTobias Markmann
Test-Information: Tested on OS X 10.9.5 with Qt 5.4.0. Change-Id: Ia60808f5ae371db6b438b7396fa1f999f4572a96
2015-02-17Fix shortcut handling for chat window navigationTobias Markmann
This commit fixes CTRL-Tab, CTRL-Backtab and CTRL-W shortcuts on Mac, Windows and Linux. These shortcuts work in all mode except --no-tabs mode. This will be fixed in a future commit. There is still different behavior across platforms: on Windows and Linux they are handled on key press and repeat, and on Mac they are handled on key release and do not repeat. Test-Information: Tested on OS X 10.9.5, Windows 7 and Elementary OS. Change-Id: I2179f234cfd76b86cf261f2cf7500fc1cf0439a4
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
2013-11-22Make chat tabs reorderable.Kevin Smith
I had no idea this was available in Qt now - and it's been there since 4.5! Change-Id: I537e2e81947e1741bab61d38d0484f10229a6808
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-24Don't hide the tabset if in single window modeKevin Smith
Change-Id: I91272f94258a49c9626cf3130bfbf2838a434e9b
2013-03-24Show window titles in netbook modeKevin Smith
Change-Id: Idb51c066c5b0030646eecf641d729966b9e14d06
2013-03-04Qt5 support & warning fixes.Remko Tronçon
Change-Id: I62c7d5ca44c915e36c797c798294b7c34b465514
2012-12-30Enable & fix pedantic CLang warnings.Remko Tronçon
Change-Id: I70109624b4bd7aab9ba679a3eaabc225dd64a03a
2012-09-30Slightly neaten codeKevin Smith
2012-06-01Avoid whoosh down, whooosh up on Mac when opening chat windows.Kevin Smith
This changes so that the chat window will appear without focus if being shown without the user requesting it, but it will no longer appear minimised. Resolves: #1022
2011-10-30Flash the taskbar indefinitely on WindowsKevin Smith
2011-04-28Temporarily reverting widget hiding patch.Remko Tronçon
It is causing some strange side effects.
2011-04-28Hiding widgets which aren't visible anyway to prevent them from redrawing.Tobias Markmann
License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php
2011-04-22Merge unread tab titles legibly.Kevin Smith
Release-Notes: Chat tabs with unread messages from several chats will now be a little more descriptive. Resolves: #485
2011-03-12fix that Sz againArnt Gulbrandsen
2011-03-03Update chat window title when changing tabs.Kevin Smith
Resolves: #773
2011-01-26Fixed undefined behavior & removed illegal chars in QtChatTabs.Remko Tronçon
2011-01-24Don't assign Alt-A as a tab accelerator.Kevin Smith
Resolves: #744
2011-01-13Cleanup after previous patches.Kevin Smith
2011-01-13Add keyboard accelerators for tabs (alt-s to switch to the swift room, etc).Arnt Gulbrandsen
Handle window titles that happen to contain the '&' character correctly. Abbreviate the tab bars generated from some long JID localparts (e.g. #foo%irc.ma.us.example.org@irc.spectrum.example.net). License: This patch is BSD-licensed, see http://www.opensource.org/licenses/bsd-license.php My future patches are also BSD-licensed, unless I explicitly note a different license in that patch.
2010-10-08Raise windows when activating them.Kevin Smith
Hopefully Resolves: #573
2010-10-03Only jump the Mac dock when a Notice is generated.Kevin Smith
Release-Notes: The Mac Dock icon has stopped jumping when it shouldn't. Resolves: #444 Resolves: #453
2010-08-22Don't skip tabs for Ctrl-PgUp/Dn on reopened chats.swift-1.0beta6Kevin Smith
Resolves: #535
2010-08-22Don't incorrectly mark all messages read in most recently opened chat when a ↵Kevin Smith
different chat is selected
2010-07-25ChatTabs improvements.Kevin Smith
Resolves: #504 Resolves: #507
2010-07-23Tone down the chat state colours in tab titles.Kevin Smith
2010-07-23Elide and use scroll buttons on all platforms when chat tab list is too long.Kevin Smith
Resolves: #302
2010-07-02Don't crash when signing out if the debug console's open.Kevin Smith
Resolves: #484
2010-06-20Show total unread count in tab title.swift-1.0beta4Kevin Smith
Resolves: #448
2010-06-04Don't put icons on windows on OS X.Remko Tronçon
2010-06-04Put icons on windows.Remko Tronçon
2010-05-30Let chat widget grow to fill the window.Kevin Smith
Resolves: #223
2010-05-25Support Ctrl-PgUp/PgDn for switch ing tabsKevin Smith