summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
...
| | * | | Add a "Show/Hide window" entry to the systray icon menuFrédéric Brière2019-06-30-1/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's customary for applications embedding themselves in the system tray to offer a "Show/Hide window" menu entry on right-click, even for those applications which offer the same functionality via a single left-click. (Thanks to qBittorrent for the idea of using QMenu::aboutToShow to update the label of this menu entry.)
| | * | | Always toggle window visibility when clicking on the systray iconFrédéric Brière2019-06-30-6/+1
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Left-clicking on the system tray icon should always result in toggling the visibility of the main window; if the icon is visible and clickble, then the window can always be hidden via --hide, or on startup via the "Startup hidden in system tray" option. (In the latter case, this previously resulted in a hidden and inaccessible window, as reported in issue #121.)
| * | | Merge pull request #164 from fbriere/fix/qml-binding-loopLuboš Doležel2020-02-23-1/+7
| |\ \ \ | | | | | | | | | | Fix QML binding loop in TextImageButton (used in incoming call popup)
| | * | | Fix QML binding loop in TextImageButton (used in incoming call popup)Frédéric Brière2019-09-25-1/+7
| | |/ /
| * | | Merge pull request #144 from fbriere/issue/143-readline-blocks-cmd-quitLuboš Doležel2020-02-23-17/+93
| |\ \ \ | | | | | | | | | | Respond immediately to a "quit" command while in CLI mode
| | * | | Make Readline non-blocking: Use a self-pipe to break the Readline loopFrédéric Brière2019-06-29-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that we are no longer blocking on Readline calls, we can set up a self-pipe that will let us break out of the Readline loop upon receiving a "quit" command on our local socket, thus (finally) fixing issue #143. (Thanks to https://stackoverflow.com/a/27662212 for the tip!) Fixes #143
| | * | | Make Readline non-blocking: Wrap select(2) around Readline callFrédéric Brière2019-06-29-1/+23
| | | | | | | | | | | | | | | | | | | | | | | | | By only invoking rl_callback_read_char() when there is actual input on stdin, we can now avoid blocking on Readline calls.
| | * | | Make Readline non-blocking: Relay SIGWINCH to ReadlineFrédéric Brière2019-06-29-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using Readline's callback interface, signals are (by default) only captured within the duration of the rl_callback_read_char() call. It is therefore expected of the application to capture SIGWINCH on its own, and notify Readline of the fact. (While it's possible to change this with rl_persistent_signal_handlers, some signals, such as SIGHUP, will still only be *processed* during that call, making it a somewhat unappealing solution. This all could be alleviated by calling rl_check_signals() periodically, but that function was only introduced in Readline 8.0, which is far too recent.) Note that we are using signal(2) and not sigaction(2), depite the various warnings that come with it, mostly because it's what is already present in the codebase.
| | * | | Make Readline non-blocking: Use Readline's callback interfaceFrédéric Brière2019-06-29-19/+25
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When Twinkle is running in CLI mode and is sent a "quit" command to its local socket, it will currently not respond immediately, but rather wait until the next line has been read from its standard input (issue #143). This is due to the blocking nature of readline(), which only returns once a complete line has been read. Switching to Readline's "alternate" callback interface is the first step in addressing this issue. (As a bonus, this also fixes a bug where the line pointer returned by readline() was not freed correctly.)
| * | | Merge pull request #158 from 4-FLOSS-Free-Libre-Open-Source-Software/patch-1Luboš Doležel2020-02-23-2/+21
| |\ \ \ | | | | | | | | | | Add twinkle-console option --sip-port --rtp-port
| | * | | Add twinkle-console option --sip-port --rtp-port4-FLOSS-Free-Libre-Open-Source-Software2019-07-19-2/+21
| | |/ /
| * | | Merge pull request #150 from fbriere/issue/88-mutex-lock-failedLuboš Doležel2020-02-23-2/+8
| |\ \ \ | | | | | | | | | | Prevent recursive locking of phone_users_mtx in add_phone_user()
| | * | | Prevent recursive locking of phone_users_mtx in add_phone_user()Frédéric Brière2019-07-03-2/+8
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | When encountering two users with the same contact name, attempting to differentiate them using USER_HOST(), a.k.a. get_ip_sip(), would result in EDEADLK since phone_users_mtx was already locked by add_phone_user(). Closes #88
| * | | Merge pull request #160 from 4-FLOSS-Free-Libre-Open-Source-Software/patch-2Luboš Doležel2020-02-23-1/+1
| |\ \ \ | | | | | | | | | | resolve nat_public_ip hostname for dyndns to work
| | * | | resolve nat_public_ip hostname for dyndns to work4-FLOSS-Free-Libre-Open-Source-Software2019-08-01-1/+1
| | |/ /
| * | | Merge pull request #166 from fbriere/issue/165-deadlocks-simpleLuboš Doležel2020-02-23-3/+1
| |\ \ \ | | | |/ | | |/| Simple fixes for two deadlocks
| | * | Make `t_phone::mutex_3way` recursive to avoid a deadlockFrédéric Brière2019-10-02-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `t_phone::mutex_3way` can be locked twice when hanging up a conference call: - `t_phone::cleanup_3way_state()` acquires a lock - `t_audio_session::stop_3way()` is called - `t_audio_session::get_peer_3way()` is called - `t_phone::get_3way_peer_line()` is called - which acquires another lock Making that mutex recursive is a simple way to work around this issue.
| | * | Remove duplicate mutex lock in `t_phone::end_call()`Frédéric Brière2019-10-02-2/+0
| | |/ | | | | | | | | | | | | A write lock on `lines_mtx` has already been acquired at the beginning of `end_call()`.
| * | Merge pull request #182 from fbriere/misc/travis-bionicLuboš Doležel2020-02-23-9/+14
| |\ \ | | | | | | | | Switch Travis CI distribution to bionic
| | * | Also test building with Clang 7 and 8Frédéric Brière2019-12-27-0/+2
| | | | | | | | | | | | | | | | (These are present in bionic-updates, which I had forgotten about.)
| | * | Test building with Clang as well as GCC on Travis CIFrédéric Brière2019-12-27-5/+9
| | | | | | | | | | | | | | | | | | | | Twinkle didn't compile with Clang back on trusty (due to libucommon); now that we've upgraded to bionic, we can finally test building with it.
| | * | Switch Travis CI distribution to bionicFrédéric Brière2019-12-27-7/+6
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | Older versions of ccrtp under trusty/xenial do not compile with g++ 7+, so moving on to bionic will finally allow us to test modern compilers. (Ironically, current ccrtp will no longer compile with g++ 4.9.) Note that libzrtpcpp is no longer available on bionic, so it was disabled from the tests.
| * | Merge pull request #181 from fbriere/fix/ucommon-ndebugLuboš Doležel2020-02-23-1/+5
| |\ \ | | | | | | | | Add -DDEBUG to non-release builds, to prevent uCommon from adding NDEBUG
| | * | Add -DDEBUG to non-release builds, to prevent uCommon from adding NDEBUGFrédéric Brière2019-12-27-1/+5
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Including <ucommon/ucommon.h> will (as of uCommon 7.0.0) unilaterally define NDEBUG, and thus compile away any assert(), unless DEBUG has been previously defined.[1] Until this is fixed, the easiest way around this is simply to automatically define DEBUG for non-release builds. Note that there are a few other header files that check for the presence of DEBUG[2], but the net effect appears to be non-significant. (It *is* a debug build, after all!) [1] https://lists.gnu.org/archive/html/bug-commoncpp/2019-12/msg00000.html [2] - libxml2/libxml/xmlmemory.h - X11/Xthreads.h - X11/extensions/lbxproto.h - FLAC/assert.h
| * | Merge pull request #185 from 4-FLOSS-Free-Libre-Open-Source-Software/patch-3Luboš Doležel2020-02-23-1/+1
| |\ \ | | | | | | | | let gui set MAX_PTIME cutoff 80ms
| | * | let gui set MAX_PTIME cutoff 80ms4-FLOSS-Free-Libre-Open-Source-Software2020-01-21-1/+1
| | |/
| * | Merge pull request #192 from jose1711/sk_cs_fixesLuboš Doležel2020-02-23-45/+134
| |\ \ | | | | | | | | Update and fix Czech and Slovak translations
| | * | Update and fix Czech and Slovak translationsJose Riha2020-02-22-45/+134
| |/ /
| * | Merge pull request #191 from jose1711/lupdateLuboš Doležel2020-02-22-274/+808
| |\ \ | | | | | | | | Run lupdate on lang files
| | * | Run lupdate on lang filesJose Riha2020-02-21-274/+808
| |/ /
| * | Merge pull request #190 from jose1711/fix_spellingLuboš Doležel2020-02-20-68/+68
| |\ \ | | | | | | | | Fix spelling errors
| | * | Fix spelling errorsJose Riha2020-02-20-68/+68
| |/ /
| * | Merge pull request #188 from jose1711/sk_translationLuboš Doležel2020-02-20-0/+5819
| |\ \ | | | | | | | | Add Slovak translation
| | * | Add Slovak translationJose Riha2020-02-19-0/+5819
| | |/
| * | Merge pull request #187 from jose1711/cz_translationLuboš Doležel2020-02-20-23/+23
| |\ \ | | |/ | |/| Fix typos in Czech translation
| | * Fix typos in Czech translationJose Riha2020-02-19-23/+23
| |/
* | added jack to cmake buildsystemThomas Groman2020-06-01-0/+30
| |
* | placeholderThomas Groman2019-12-06-0/+36
| |
* | added initial framework to hold jack codeThomas Groman2019-10-27-0/+44
|/
* Change the address of the manual until we have our own up and runningLubos Dolezel2019-06-17-1/+1
|
* Merge pull request #140 from f0k/patch-1Luboš Doležel2019-04-08-1/+1
|\ | | | | Case insensivity in WWW-Authenticate header
| * Case insensivity in WWW-Authenticate headerJan Schlüter2019-04-08-1/+1
|/
* Twinkle 1.10.2Lubos Dolezel2019-02-14-2/+8
|
* Merge pull request #136 from palinek/new_alsa_fixLuboš Doležel2018-11-29-5/+3
|\ | | | | audio: Fix parameter setting failure with alsa v1.1.7
| * audio: Fix parameter setting failure with alsa v1.1.7Palo Kisa2018-11-29-5/+3
|/
* Merge pull request #134 from lpmi-13/typofixLuboš Doležel2018-11-09-1/+1
|\ | | | | fix simple typo
| * fix simple typolpmi-132018-11-08-1/+1
|/
* Merge pull request #132 from glixx/patch-1Luboš Doležel2018-10-11-87/+324
|\ | | | | Update Russian translation
| * Update Russian translationglixx2018-10-11-87/+324
|/
* Merge pull request #125 from mkubecek/tmp/qt-5.11Luboš Doležel2018-06-06-1/+8
|\ | | | | fix Qt 5.11 build (issue #124)