aboutsummaryrefslogtreecommitdiff
path: root/singleapplication.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix compiler warningsrekonqaqua2022-08-281-0/+1
|
* Add simple acknowledge protocol to ensure the server has received all dataNils Jeisecke2021-05-311-4/+1
| | | | | | | | | | | | | | | The server now acknowledges every received message by sending a \r. By waiting for the acknowledgement, clients should no longer terminate too early, causing bytes getting lost in Qt's internal socket handling. Message handling in the server is simplified because we can now rely on the readyRead signal being raised for every frame. This should finally solve #125 and #121. What remains is to correctly handle data sent using SingleApplication::sendMessage.
* Mark getters as constShatur952021-01-251-13/+13
|
* Pass usedData by const referenceShatur952020-12-211-1/+1
|
* Allow adding unique userdata to instancesLoren Burkholder2020-12-161-1/+11
|
* Remove extra Q_DShatur952020-10-151-1/+0
| | | | No longer needed as getUsername() is now static.
* Fix Clang Tidy warningsShatur952020-10-151-3/+3
| | | | | | | readability-convert-member-functions-to-static readability-static-accessed-through-instance readability-make-member-function-const readability-inconsistent-declaration-parameter-name
* Mitigated QSharedMemory initialization failures Itay Grudev2020-09-091-0/+4
| | | Mitigated QSharedMemory initialization failures due to large amount of processes attempting to get hold of the shared memory block at the same time
* Improved the connectToPrimary() method and fixed issue with ↵Itay Grudev2020-09-091-3/+4
| | | | instanceStarted() not getting emitted
* Moved the random sleep functionality to SingleApplicationPrivateItay Grudev2020-09-091-12/+1
|
* Removed extra qDebug statementsItay Grudev2020-09-091-6/+0
|
* Mitigated possible race condition during app startupItay Grudev2020-09-091-16/+56
|
* Bug Fix: Fixed situation in which the memory block is left unlockedItay Grudev2020-09-081-16/+19
|
* Updated code style and added inline documentation to public methodsItay Grudev2020-09-081-23/+56
|
* Fix Clang Tidy warningsShatur952020-05-171-2/+2
|
* Update singleapplication.cppItay Grudev2020-04-221-1/+1
|
* Add SingleApplication::currentUser()Leander Schulten2020-03-271-0/+6
|
* v3.1.0a Added primaryUser()Itay Grudev2020-03-031-0/+6
| | | | Closes #95
* Fix obsolete code warningsShatur952020-01-051-3/+11
|
* Fallback for iOS as wellItay Grudev2019-10-131-4/+4
|
* Disables SingleApplication support on Android. Fixes #52Itay Grudev2019-10-111-0/+7
|
* Fix return value of sendMessage() (#68)Jonas Kvinge2019-08-231-2/+2
|
* fixed a typo (#55)3.0.13Patrizio Bekerle2018-11-301-1/+1
|
* Proposed SA changes still containing a race condition (#48)3.0.11aItay Grudev2018-07-271-370/+59
|
* Fix sendmessage (#46)Francis Giraldeau2018-07-271-25/+42
| | | | | | | | | | | | | | | | | | | | * Fix send message example If a secondary instance sends a message immediately after connecting, the message follows the init message. This causes the slotConnectionEstablished to read and consume the tail of the message and interpret it as the checksum. The checksum fails and the connection becomes invalid. To avoid this race, we prefix the init message with its length. This way, we consume only the data relevant to the init message. This patch fixes the sending_arguments example. Signed-off-by: Francis Giraldeau <francis.giraldeau@gmail.com> * Fix include file case Signed-off-by: Francis Giraldeau <francis.giraldeau@nrc-cnrc.gc.ca>
* removed c style casts and eliminated all clang warnings, ... (#38)Jedidiah Buck McCready2017-12-031-50/+44
| | | | | | * removed c style casts and eliminated all clang warnings, fixed instanceId reading from only one byte in deserialization of message, cleaned up serialization code using QDataStream, changed connection type to use quint8 enum rather than char * renamed SingleAppConnectionType to ConnectionType, added initialization values to all ConnectionType enum cases
* Primary PID support (#36)v3.0.9Itay Grudev2017-10-021-4/+28
| | | | | | | | | | | * Added the ability to bring the primary application window to the foreground on Windows systems by adding an option flag. THis option can only be used in Windows development and in applications derived from QApplication with a QMainWindow object. Because the primary application needs to be instructed to go to the foreground, the option SecondaryNotification must also be set to use this functionality * Changed the ability to bring the primary application window to the front as discussed in itay-grudev/SingleApplication#31. Now the process ID of the primary application get stored and is accessible for other instances of the application. It is to the developer to bring the applications windows to the front. For convenience the accompanying readme now contains a paragraph with example of how to do this on Windows systems. * v3.0.9 Added SingleApplicationPrivate::primaryPid()
* bugfix - change QApplication to macro QAPPLICATION_CLASS (#34)BG44442017-08-201-1/+1
| | | | Bug fix - changed QApplication to macro QCoreApplication when invoking QApplication::instance()
* Removed QMutex for thread safe behaviour and support for multiple ↵Itay Grudev2017-04-231-16/+1
| | | | | SingleApplication instances Problem raised by @retmas in #24
* Fixed compilation error: cannot convert wchar_t* to LPSTR {aka char*} (#29)Vitaly Tonkacheyev2017-02-231-1/+1
|
* Remove magic chars from code - use more readable code style (#28)Evgeny2017-02-221-13/+17
|
* Reverted GetUserName API usage on Windows (#25)Itay Grudev2017-02-021-1/+14
| | | | | | | | | | * Added back support for getting username on Windows * Fixed typo in singleapplication.pri * Compiler specific Advapi32.lib links * Removed username debug statement
* Refactored SingleApplicationPrivate destructor.Itay Grudev2017-01-301-17/+13
| | | | | Deleted the separate cleanUp method as it’s not used from anywhere but the destructor.
* Fix memory leak on SingleApplicationPrivate destruction (#23)retmas2017-01-301-0/+1
| | | The issue is non critical as if the library is used properly this destructor is not called until the end of the program anyway.
* Fixed shadow variable warning (#21)pjwhams2017-01-241-23/+23
|
* Removed Windows specific code for getting usernamev3.0.3aItay Grudev2017-01-241-16/+7
| | | | On the absolute path to the home directory is now explicitly used.
* Refactored slotConnectionEstablished()Itay Grudev2017-01-241-16/+14
| | | | | The code is now shorter and easier to understand. Fixed an uninitialised variable warning as reported in #20.
* Fix crash when username contains Unicode characters on Windows (#17)Le Liu2016-11-271-3/+1
| | | | | * Fixed bug on Windows with username containing wide characters causing the library to crash. _Le Liu_
* Allow data exclusion for the server name hash and Windows fixes (#16)Le Liu2016-11-261-2/+21
| | | | | | | | | * Allows the application path and version to be excluded from the server name hash. The following flags were added for this purpose: * `SingleApplication::Mode::ExcludeAppVersion` * `SingleApplication::Mode::ExcludeAppPath` * Allow a non elevated process to connect to a local server created by an elevated process run by the same user on Windows * Fixes a problem with upper case letters in paths on Windows
* fix Windows warning about unused parameterSvintsov Dmitry2016-08-241-0/+1
|
* Added missing "QMutex" dependenciesSvintsov Dmitry2016-08-221-1/+0
|
* Fix bug (and compiler error) on Windows - wchar username supportItay Grudev2016-08-181-4/+5
|
* SingleApplication v3.0aItay Grudev2016-08-101-126/+278
|
* Fixed signal formattingItay Grudev2016-07-101-14/+14
|
* Updated license dates. Explicit license statement in the header and source filesItay Grudev2016-07-041-0/+22
|
* SIGBUSS should be signal 10. Fixed commentItay Grudev2016-05-141-1/+1
|
* Code style improvementsv2.4Itay Grudev2016-05-041-6/+6
|
* Bugfix no showUp notification. Some minor improvementsItay Grudev2016-05-041-4/+10
|
* Improved restoring QSharedMemory after crashItay Grudev2016-05-041-3/+8
|
* Secondary instance implementationItay Grudev2016-05-041-54/+159
|