summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Fix fallover case for TQEvent::MetaCallMichele Calgaro2024-10-011-2/+8
| | | | | | Manually cherry-picked from commit 24b42848. Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
* Fix possible SEGV if the sender object list was null and thread support enabledMichele Calgaro2024-09-241-13/+19
| | | | | | Commit manually cherry-picked from 8e653076. Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
* Improve handling of the global post event list in order to minimize possible ↵Michele Calgaro2024-08-293-77/+92
| | | | | | | | | | | | | | | crashes on exit. Key points: 1. a TQPostEventList can now have an associated mutex, which is used in case of the global post event list (GPEL) 2. the lifetime of the GPEL is no longer associated to the lifetime of the TQApplication object, but rather extended to the lifetime of the main thread. The GPEL is a static local initialized on first access and destroyed when the global static object destructor is invoked 3. access to the GPEL after the TQApplication object has been destroyed has been minimized by protecting calls in ~TQObject() and ~TQWidget(). 4. special care was taken not to affect performances or unnecessarily create tons of unused TQMutexes This replaces PR #182. Technically it is still possibly unsafe due to the order of destruction of the globat static objects not being guaranteed across multiple compilation units, but the aforementioned changes should minimize (possible to zero) the chances of a SEGV happening. Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit ddce1c91f8582885497b463b24bac59f6fdfdf63)
* Added check for tqApp pointer in TQWidget destructorormorph2024-08-161-2/+2
| | | | | | | Necessary for the application to shut down properly Signed-off-by: ormorph <roma251078@mail.ru> (cherry picked from commit c55ef27a2c511c29a8a82d00bd2ede1fb02cfa41)
* Fix OpenType language definition tags and array access. This resolves issue #171Michele Calgaro2024-07-211-9/+32
| | | | | Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit 14c414378d96f7463b989384f4a0e5dd76632b6d)
* Fix a missing `if` clause guardOBATA Akio2024-05-231-1/+2
| | | | | | | It was mismatched with indents and sibling `if` clause cases. Signed-off-by: OBATA Akio <obache@wizdas.com> (cherry picked from commit 729c01ffb2d99f0f088d31860b71a202850a9688)
* Fix to compare thread_id with `pthread_equal()`OBATA Akio2024-05-231-1/+1
| | | | | | | `pthread_t` is an opaque type, should not be compared with `==`. Signed-off-by: OBATA Akio <obache@wizdas.com> (cherry picked from commit 9ae164eb837f7a9135fecca24b8c8e6528aef1b7)
* Correctly release glib mainloop and gsource, to avoid memory leaksMichele Calgaro2024-05-013-4/+19
| | | | | Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit 08a71c8f8d2d73bc1ba7d6b2a58b9ce30184c471)
* Prevent creation of text codecs when the application is shutting down. This ↵Michele Calgaro2024-04-041-34/+74
| | | | | | | resolves issue #142 Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit 7563c4825f14a21f4d34c5187108b8ae71886dd1)
* TQTextEdit: remove one of two readOnly flagsAlexander Golubev2024-04-032-9/+9
| | | | | | | | There were two flags for read-only with different capitalization: readonly and readOnly. This was probably a mistake. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit 9c5ea5617a3bc0e69213e2361dd02d70f14f4708)
* TQTextEdit: add missing mightStartDrag initializationAlexander Golubev2024-04-031-0/+1
| | | | | | | | mightStartDrag might have been used uninitialized when moving mouse with pressed mouse button into window. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit 2b1c78cb539b208290adb189adccd125cef19105)
* Improve TQFont-related cleanupAlexander Golubev2024-04-031-1/+1
| | | | | | | | | | Improve TQFont cleanup making sure that all instances of TQFont are destroyed before TQApplication (or specifically before disconnect from X11). This gets reed of several valgrind complains about leaks deep inside fontconfig. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit 1b951e5229a369d50cb05dfcb184d9b600169ed3)
* Improve TQFont-related cleanupAlexander Golubev2024-04-037-1/+41
| | | | | | | | | | Improve TQFont cleanup making sure that all instances of TQFont are destroyed before TQApplication (or specifically before disconnect from X11). This gets reed of several valgrind complains about leaks deep inside fontconfig. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit ffbaaf0e1c181dd0f0d8ad7b273530f7cda086da)
* TQFileDialog: cleanup pixmaps before destroying TQApplicationAlexander Golubev2024-03-221-0/+8
| | | | | | | Otherwise it results in small memmory leakage on exit of Xlib data. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit fb0d62eec811ab2d4d73550e455944cecbe7e091)
* TQPrintDialog: cleanup data requested from libcupsAlexander Golubev2024-03-211-0/+5
| | | | | Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit c2c385eef261e8bba46d360ceccdb604733f07c0)
* TQPrinterPrivate: add virtual destructor.Alexander Golubev2024-03-201-0/+3
| | | | | | | | | | As derivative from it e.g. TQPrinterUnixPrivate are getting deleted (e.g in unix TQPrinter implementation) by a reference to base class. Also added missing include to the header. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit 5920542e9e62672acb42cbb70e6eac27442ebed0)
* Zero unused data fields in XClientMessageEvent structAlexander Golubev2024-03-191-1/+1
| | | | | | | | valgrind was complaining about access to uninitialized data because unused elements in client_message.data.l array weren't set o any value. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit 8a13d9aef40a1094723afa46dccc2ee8b52bd739)
* Fix TQThreadStorage destruction in the main threadAlexander Golubev2024-03-185-2/+47
| | | | | | | | | | | | | | | | Before that the allocations of TQThreadStorage objects from the main thread were never destroyed and memory associated with them were never freed. The second one isn't a huge problem as at that point program is terminating anyway (but it still makes valgrind complain). The first one is the bigger issue as destructors might contain some essential external cleanups like removing temporary files. Also make `TQApplication::guiThread()` return `0` when the thread is destroyed (may happen on the program exiting during destruction of statics). Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit b1e6f384640525c5a0caceef017848f8ebee46b8)
* Fix TQString::sprintf() not calling va_end() in case of bad cformatAlexander Golubev2024-03-171-4/+3
| | | | | | | | Also rearrange code a bit so it would be obvious that the function doesn't return a dangling reference. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit bcda4011918a88064d35908b089a3300e187245a)
* Add explicit declaration TQChar&TQCharRef default constructor/destructorAlexander Golubev2024-03-161-0/+12
| | | | | | | This suppresses -Wdeprecated-copy warning. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit 87129eac9a6efa5a3f0b23dd5e2f94c716c2bfa7)
* Resort includes in ntqt.hAlexander Golubev2024-03-131-5/+5
| | | | | Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit b930cec6013b9609c4345268171763c2c5936ae4)
* Fix compilation with -no-threadAlexander Golubev2024-03-113-26/+59
| | | | | Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit 4100c9e29f3ccb324a68ff1759ebbf1d35849a40)
* Fix compilation with -disable-inputmethod and -no-inputmethodAlexander Golubev2024-03-084-5/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | As for now here are two sets of inputmethod options: - -enable-inputmethod/disable-inputmethod - which seems to supposed to control whether build the 'inputmethod' module or not - -inputmethod/-no-inputmethod - which seems to supposed to enable/disable inputmethod support without changing the ABI. Before the patch both -disable-inputmethod and -no-inputmethod were just breaking the build: -no-inputmethod were disabling some code with support for the module, but didn't disabled the module build itself nor build of plugins. -disable-inputmethod were disabling build of plugins and module, but didn't disabled code depending upon it. It seems the inputmethod support were still WIP when the last release of Qt3 came to be, hence the mess. This patch fixes the build if both -disable-inputmethod AND -no-inputmethod are supplied. Disabling only one is not enough due to tqmake/configure have problems handling two different options of the same name. Later the -inputmethod/-no-inputmethod should be probably removed entirely. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit fad4acbe084403340bb0ee6979ea18db464e7085)
* Fix FTBFS with -no-xkbAlexander Golubev2024-03-041-4/+17
| | | | | | | | The analogue of XkbKeycodeToKeysym() used to be XKeycodeToKeysym(), but it was deprecated in favour of XGetKeyboardMapping() method. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit beb37238fa751dada93695a8b9ce1bb73aea1253)
* Fix FTBFS with -no-stlAlexander Golubev2024-03-041-0/+2
| | | | | | | On modern compilers placement new requires inclusion of <new> Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit 2f15a471f912b8ef5bc11d215f8937a37da42b87)
* avoid translating the /qt/XIMInputStyle options when saving into configAlexander Golubev2024-03-021-4/+4
| | | | | | | | Also use "On The Spot" as the default when the setting in the config is incorrect. Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit 34587584ab80fd696cc9d73dda1326f175125ddf)
* Fix FTBFS with -qt-sql-sqlite3Alexander Golubev2024-02-291-0/+5
| | | | | | | Fix FTBFS when sqlite3 sql driver is being built into the library Signed-off-by: Alexander Golubev <fatzer2@gmail.com> (cherry picked from commit 3cba79c7f5a4c3fcef587cecb7d9c4ede1e47be4)
* Remove original Q_WS_* definesMichele Calgaro2024-02-201-11/+0
| | | | | Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit 77697cb46ca8744e89cadadae81ee8c0df3e2dbd)
* Replace QT_STATIC_CONST_* with actual definitionsMichele Calgaro2024-02-168-99/+86
| | | | | Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit 1d318a47b0b45a7f916f526de60d628302cbfd4c)
* Replace Q_WS_* defines with TQ_WS_* equivalentsMichele Calgaro2024-02-14126-863/+874
| | | | | | | | | | | | | This is the first part of the replacement process. Usage of Q_WS_* has been replaced with the equivalent TQ_WS_*. Definition of Q_WS_* has been mirrored into TQ_WS_* defines, to allow TDE code to continue building till replacement is carried over to all other modules. Once that is completed, the original Q_WS_* defines will be removed. Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit 67bff2edcacb208dc44dcd521386bef686dc6dbf)
* Rename METHOD, SIGNAL, SLOT to TQ_METHOD, TQ_SIGNAL, TQ_SLOTMichele Calgaro2023-12-3178-1008/+1008
| | | | | Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit fb401a891f1b426e9419c0cb16403df407138611)
* Fix potential buffer overflow in debug functions.Slávek Banko2023-12-261-3/+3
| | | | | | | This resolves issue #70. Signed-off-by: Slávek Banko <slavek.banko@axis.cz> (cherry picked from commit a9d178f1000475ba1727ffe123a2c54585488c01)
* Add support for HistoryBackButton and HistoryForwardButtonMavridis Philippe2023-12-173-12/+21
| | | | | | | This resolves TDE/tdebase#421. Signed-off-by: Mavridis Philippe <mavridisf@gmail.com> (cherry picked from commit aec0061106cfff96bb21499850c863b0054ecb5f)
* Replace QObject, QWidget, QImage, QPair, QRgb, QColor, QChar, QString, ↵r14.1.1Michele Calgaro2023-09-241-9/+9
| | | | | | | QIODevice with TQ* version Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit b35e0845dc9b3c8b9a5e52a682c769f383933fae)
* Replace Q_EXPORT_*/Q_EXTERN defines with TQ_EXPORT_*/TQ_EXTERNMichele Calgaro2023-09-14301-921/+921
| | | | | Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit 1ba13366a7a377d50b9e8df9044ce11d8209f98c)
* Replace various Q_* and QT_* defines with TQ_* and TQT_*Michele Calgaro2023-09-0736-317/+317
| | | | | Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit 926102a455014e6ab308aaced19e32eed7ed4414)
* Drop attic Qt2 classes (TQtMultiLineEdit and TQtTableView)Michele Calgaro2023-07-076-7128/+0
| | | | | Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it> (cherry picked from commit 7c116f3bf7ce2c552af7dd8709ee6e726844ef20)
* SunOS res_ninit() requires a clean structureDenis Kozadaev2023-06-151-0/+2
| | | | | | | | | Signed-off-by: Denis Kozadaev <denis@dilos.org> init structure without condition Signed-off-by: Denis Kozadaev <denis@dilos.org> (cherry picked from commit 47f034c129653352ebf258000765f98f1910f2f4)
* Revert "Add single TQObject root parent for all guarded pointers."Michele Calgaro2023-06-131-2/+1
| | | | | | | | | Commit b167d09c was functionally incorrect and is causing issues on selected distributions. This reverts commit b167d09c43be6c8b7d30f0d4fb1bf1e86c51b8a7. This resolves issue TDE/tde#128. (cherry picked from commit fb1f3d64451e8cc405b5db572e2c506564a05680)
* Enable use of pthread's recursive mutexesBobby Bingham2023-06-021-190/+6
| | | | | Signed-off-by: Bobby Bingham <koorogi@koorogi.info> (cherry picked from commit 0b3c8dfbc927e2843c2c62842d53a723d1f1e727)
* Fix level when using pthreads recursive mutexBobby Bingham2023-05-231-16/+12
| | | | | | | | | | | | | | | | | | When using the pthreads recursive mutex, the level method was only able to return either zero or one, but a recursive mutex can be locked more than once. Additionally, the way this detected if the mutex was already locked was to test whether it can be locked again. If testing from the thread that is currently holding the lock, this locking attempt always succeeds, and therefore determines that the lock is _not_ held at all. This is especially bad, as this operation only makes sense to perform from the thread that holds the lock -- if any thread not holding the lock queries the number of times the lock is held, that answer can change before the thread can used it. Signed-off-by: Bobby Bingham <koorogi@koorogi.info> (cherry picked from commit 999cebcb5df0269d24d65db579a7c78a94053c2e)
* Add single TQObject root parent for all guarded pointers.r14.1.0Michele Calgaro2023-02-131-1/+2
| | | | | | | This helps keeping the object root list shorter, speeding up operations which require lot of TQObject trees. This relates to TDE/tdebase#309. Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
* Rename ENABLE_QSTYLECONTROLELEMENTDATA_SLOW_COPY in ↵Michele Calgaro2022-04-301-3/+3
| | | | | | ENABLE_TQSTYLECONTROLELEMENTDATA_SLOW_COPY Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
* SGI style: enable complex widget renderingMavridis Philippe2022-04-241-1/+1
| | | | | | | | Was commented out for no obvious reason This resolves issue #64. Signed-off-by: Mavridis Philippe <mavridisf@gmail.com>
* Use empty d->cString for TQString::shared_null instead of null string.Slávek Banko2022-03-221-2/+2
| | | | | | | This restores consistency for the behavior of methods TQString::utf8() and TQString::local8Bit() with null TQStrings. Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
* Avoid changes of d->cString for TQString::shared_null to make the value ↵Slávek Banko2022-03-221-4/+13
| | | | | | | | reliable. This precedes unnecessary allocations, potential use after free and crashes. Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
* Removed QT_NON_COMMERCIAL check and related code.Michele Calgaro2022-02-071-8/+0
| | | | Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
* tools: fix to use `pthread_t` for Thread IDOBATA Akio2021-12-281-10/+10
| | | | | | | | | | | Thread ID is opaque type pthread_t, it may not be compatible with integer, and may integer with valid id `0`. Change to store mutex owner thread ID as `pthread_t` type with valid flag and compare with `pthread_equal()`, and don't try to print it. Signed-off-by: OBATA Akio <obache@wizdas.com>
* Remove deprecated glib2 function calls g_thread_get_initialized(), ↵gregory guy2021-06-181-7/+8
| | | | | | g_thread_init() and g_thread_create(). Signed-off-by: gregory guy <gregory-tde@laposte.net>
* Add unicode points so that upper() and lower() functions work for:Ray-V2021-04-141-964/+981
| | | | | | | | | - latin letter sharp s - latin letter glottal stop - greek lunate sigma symbol - greek letter san Signed-off-by: Ray-V <ray-v@inbox.lv>