- 24 Feb, 2018 - 4 commits
-
-
Gatis Paeglis authored
- Use smart pointer for handling xkb state. - Make it more clear (in the code and the comment) when a latin keysym is used. Change-Id: Iee8106c72177c22b1a8fe875027b1dda82196b36 Reviewed-by:
Shawn Rutledge <shawn.rutledge@qt.io>
-
Gatis Paeglis authored
Now also digits from other alphabets e.g ۲ (arabic two) are mapped to Qt::Key_* digit keys. Re-factored logic: - All known dead keys have direct mappings since 1d86e5f8 . Don't special treat them in "unicode mapping" code path. - Removed the ISO8859-1 legacy logic, which is leftover from Qt4 where keysym to Qt decoding was done from raw data. In Qt5 we always get a utf8 string from xkb_state_key_get_utf8(). Furthermore, ISO8859-1 and utf8 encode ASCII exactly the same way. - Set Qt::KeypadModifier from key input handler methods. This logic does not belong in keysymToQtKey(). Note: KeyTbl[] and keysymToQtKey() have been duplicated in several places in Qt. That stuff will be cleaned up as part of QTBUG-65503. This change will make those cleanups easier. Task-number: QTBUG-58865 Task-number: QTBUG-65503 Change-Id: Iaf10205a26804f7fc03eb8a16a0879f1bd7bf332 Reviewed-by:
Shawn Rutledge <shawn.rutledge@qt.io>
-
Gatis Paeglis authored
3edcd942 added more robust support for keyboard input on XKeyboard-less X servers. The various fallbacks that we had did not work that well in practice. We can remove them now. The xkb_keymap_new_from_names() function relies on reading XKB config files from a file system. Since we don't use this function anymore, we can also simplify xkb context creation (see XKB_CONTEXT_NO_DEFAULT_INCLUDES), as we don't care about DFLT_XKB_CONFIG_ROOT (which we previously set via -xkb-config-root for the bundled libxkbcommon). This patch also changes the code to use smart pointers for managing the global xkb context, keymap and state. [ChangeLog][X11] The -xkb-config-root command line switch has been removed as it it no longer needed when configuring with -qt-xkbcommon-x11. Change-Id: I80eecf83adae90af5cd20df434c1fba0358a12fd Reviewed-by:
Shawn Rutledge <shawn.rutledge@qt.io>
-
Gatis Paeglis authored
Remove the Xlib dependency by extracting XConvertCase from libxkbcommon sources (xkbcommon/src/keysym.c). libxkbcommon >= 0.8.0 exposes case conversion APIs, but we should prefer using the slightly adjusted version (see the patch for more details). This change also is necessary for follow-up cleanups. Change-Id: Icf1716e0ad26f46a7aefb23722cfc57957754d5e Reviewed-by:
Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by:
Thiago Macieira <thiago.macieira@intel.com>
-
- 23 Feb, 2018 - 3 commits
-
-
Samuli Piippo authored
If _Thread_local is used on a block-scope declaration, it must be combined with either static or extern to decide linkage. Change-Id: I228b3520767197c6cdf5134ff5a666ab2aca33ea Reviewed-by:
Thiago Macieira <thiago.macieira@intel.com>
-
Liang Qi authored
This change amends 305dd1b6, which lost 1514b4e8 and brought src/corelib/json/qjsonarray.cpp back, which got removed in c9c9adee. In a6b697ca , it was moved to src/corelib/serialization/qjsonarray.cpp in 5.11. Change-Id: Ic6134a78d75a9c245934cf70a67a54c80a3e7c85 Reviewed-by:
Friedemann Kleint <Friedemann.Kleint@qt.io>
-
Liang Qi authored
This change amends 305dd1b6, which lost 40334303 and brought src/corelib/xml/qxmlstream_p.h back. In a6b697ca , it was moved to src/corelib/serialization/qxmlstream_p.h in 5.11. Change-Id: Ia1e9841b866ff49f7274b1b13fd224c0a20a017e Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by:
Friedemann Kleint <Friedemann.Kleint@qt.io>
-
- 22 Feb, 2018 - 16 commits
-
-
Oswald Buddenhagen authored
... and make use of it. it's a logical continuation of the 'arch' term, and will be used also in qt3d's configure. Started-by:
Thiago Macieira <thiago.macieira@intel.com> Change-Id: I940917d6763842499b18fffd1514c96889a0cc63 Reviewed-by:
Thiago Macieira <thiago.macieira@intel.com>
-
Gatis Paeglis authored
- There is no need to mention qkeymapper, which is an internal implementation detail. - Describe the encoding of int. - Add a note that calling possibleKeys() outside key event handler context is not valid. Change-Id: Ife9b7d1496f04b5a433ed2d56f29c4f01f174441 Reviewed-by:
Shawn Rutledge <shawn.rutledge@qt.io>
-
Gatis Paeglis authored
Change-Id: Id45bbe77a59917f25a031539f8414dc27d8fe19f Reviewed-by:
Shawn Rutledge <shawn.rutledge@qt.io>
-
Gatis Paeglis authored
... which was trying to fix a rarely occurring situation where system settings from a desktop environment does not set any latin keymap on X. This is a DE bug and it has a simple workaround (details in the patch). Ubuntu has fixed this issue sometime between 12.10 -> 14.04. Gnome 3 always appends 'us' layout, even if you have only e.g. 'gr' listed in keyboard layouts (can be checked via setxkbmap -query). In KDE, the global system shorcuts seem to stop working as soon as latin keymap is not the first in the list, which means that KDE users won't be affected as they will likely always have a latin keymap present in the list. This patch removes parts of 2b666d95 , the parts that in the commit message I was referring to by this quote: "lookupLatinKeysym() also handles the cases that did not work in Qt4 with XLookupString". Since finding a latin key is not working by XLookupString() in this rare case, then it would not work pretty much across the whole desktop. And users would be more interested at finding a solution that works across the desktop. We should not workaround this issue. Desktops that are doing it wrong should learn about this and not repeat the same mistakes on Wayland systems, where XKB keymap is assembled by compositor and passed to clients. Clients should work with the provided keymap as is. The missing-latin-keymap workaround is considered fragile for several reasons - it might not work with legacy or enterprise X server key codes and it relies on global _XKB_RULES_NAMES (there might be several connected keyboards). And theoretical limitation: client might be running in a restricted environment where we don't have access to keymaps on the file system. Change-Id: Ib445b2ea46174248cfa0e5da0eb642cd2a5cf2f6 Reviewed-by:
Shawn Rutledge <shawn.rutledge@qt.io>
-
Marco Trevisan (Treviño) authored
This is a signal that is not actually supported by the StatusNotificationIcon standard, but it comes to be important for the Qt implementation of it, in fact qt apps might not have a menu, when exporting the Menu path as /NO_DBUSMENU or they could add this later in the execution. So, currently there's no way for the StatusNotificationWatcher to know when a menu has been added (or changed). Adding a NewMenu signal won't cause any troubles, but will allow watchers to be notified properly on menu addition. Change-Id: I9a8b00213f5023950811af1d62cd91bc51744b78 Reviewed-by:
Dmitry Shachnev <mitya57@gmail.com> Reviewed-by:
Shawn Rutledge <shawn.rutledge@qt.io>
-
Jan Arve Sæther authored
Commit cf4a6111 refactored out test identifier buildup into a standalone function, but it returned the QTestCharBuffer as a value type, which ultimately caused it to crash: Unfortunately QTestCharBuffer is not copied correctly: Since it uses the default copy ctor it will copy the buf pointer and create a deep copy of the staticBuf pointer. When the dtor was later called it would then end up calling free(buf) (where buf pointed to the staticBuf of the original QTestCharBuffer). Task-number: QTBUG-66607 Change-Id: Ifa290658be6f077a0d6613451c26aeeffc8df41c Reviewed-by:
Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit 6ffb3588 ) Reviewed-by:
Simon Hausmann <simon.hausmann@qt.io>
-
Sami Nurmenniemi authored
Task-number: QTBUG-66216 Change-Id: I5eaa2122ebeb8f003c961a156834a0c6360581b0 Reviewed-by:
Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by:
Timur Pocheptsov <timur.pocheptsov@qt.io>
-
J-P Nurmi authored
GTK's scale factor, which can differ from Qt's scale factor, must be taken into account in the native GTK menu positioning function qt_gtk_menu_position_func(). Task-number: QTBUG-55251 Change-Id: I4ad460baab54facd25564ad85ded383c9321d597 Reviewed-by:
Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by:
Dmitry Shachnev <mitya57@gmail.com> Reviewed-by:
Morten Johan Sørvig <morten.sorvig@qt.io>
-
Christian Ehrlicher authored
When the table for a selected column can't be determined (e.g. because there is no table for it), PQftable returns InvalidOid. This was not covered and a query to determine the table name was executed every time which slowed down calls to QSqlQuery::value(QString). Task-number: QTBUG-65226 Change-Id: Idd8fbaaef7b01ca4151439f46cad2cce6f1c93e9 Reviewed-by:
Andy Shaw <andy.shaw@qt.io>
-
Thiago Macieira authored
Change-Id: I940917d6763842499b18fffd15143af77c036d69 Reviewed-by:
David Faure <david.faure@kdab.com>
-
Alexander Shevchenko authored
with 40e87491 merged, 'QMAKE_CXXFLAGS' variable in 'win32-g++' toolchain became defined via 'QMAKE_CFLAGS'. the similar can be found in 'win32-clang-msvc' and 'win32-icc' toolchains too. this works for now, because such definitions just duplicates code from includes, like 'gcc-base.conf', 'msvc-desktop.conf', etc. but it would became broken, if changes would be applied to 'QMAKE_CXXFLAGS' definitions in that includes, prior to the redefinitions in 'win32-*/qmake.conf' toolchains. thus 'QMAKE_CXXFLAGS' definitions in 'win32-*/qmake.conf' toolchains should not depend on 'QMAKE_CFLAGS' and be done explicitly. in order to apply this change correctly to 'win32-icc' toolchain, its 'QMAKE_CFLAGS' variable should become dependent on definitions in the includes, similar to 'win32-clang-msvc' and 'win32-msvc' toolchains. Change-Id: I5e820e44a769a590ba63f70dcb3a115311093311 Reviewed-by:
Oswald Buddenhagen <oswald.buddenhagen@qt.io>
-
Pablo Marcos Oltra authored
CGDisplayCreateImageForRect seems to have a weird behavior when mixing highDPI and non-highDPI screens since it may take part of the non-highDPI screen when the highDPI display is at the left or at the top of the main monitor. To workaround this issue, we capture the whole screen and then crop the image to the desired size. Task-number: QTBUG-47643 Change-Id: Ib2a3850a0a549964c7fe272abb563bd23518c234 Reviewed-by:
Morten Johan Sørvig <morten.sorvig@qt.io>
-
Tor Arne Vestbø authored
Without any content it was hard to see the window. Put some lipstick on it. Change-Id: I0fefffb0a4deba7ac91e67a6153a9a27308fe493 Reviewed-by:
Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by:
Tor Arne Vestbø <tor.arne.vestbo@qt.io>
-
Tor Arne Vestbø authored
The latter would allow one final resize that would immediately jump to 300x300. Change-Id: I566e5e9dc1fb07f748f528f002166a8438344173 Reviewed-by:
Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by:
Tor Arne Vestbø <tor.arne.vestbo@qt.io>
-
Kai Koehne authored
Change-Id: Ib2e0ee2b7397e65ebd79a92fc83c9e08780d626e Reviewed-by:
Thiago Macieira <thiago.macieira@intel.com>
-
Martin Storsjö authored
While both GCC and the GCC compatible clang support this attribute in general, GCC doesn't support it when targeting macOS, ending up with errors like these: error: 'init_priority' attribute is not supported on this platform This error isn't a property of the platform itself though, since clang supports the attribute just fine on macOS. The attribute is only used to work around an issue with dllimport on windows, so limit its use to that platform, to avoid issues with it potentially being unsupported on platforms other than macOS as well. This fixes compiling with GCC for macOS. Change-Id: I0235e6365635d73233951566c10ad869b26a0fc6 Reviewed-by:
Thiago Macieira <thiago.macieira@intel.com>
-
- 21 Feb, 2018 - 14 commits
-
-
Pasi Petäjäjärvi authored
Configuring Qt with -no-feature-ftp cause build to fail. Change-Id: I47f1cdc400702d0211a9f620c8606983f08fa70c Reviewed-by:
Oswald Buddenhagen <oswald.buddenhagen@qt.io>
-
Thiago Macieira authored
This reverts commit 71090f09 . Changing the link was wrong because we do not actually comply with the new RFC. Task-number: QTBUG-66470 Change-Id: I940917d6763842499b18fffd15147cb93c27b7f4 Reviewed-by:
Lars Knoll <lars.knoll@qt.io>
-
Thiago Macieira authored
They can be, if compiled with -Wl,-pie. Example: $ file /usr/bin/ping /usr/bin/ping: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0 And you can't detect via the interpreter, since libraries can have them too: $ file /lib64/libc-2.26.so libQt5Core.so.5.11.0 /lib64/libc-2.26.so: ELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2 libQt5Core.so.5.11.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.17.0 Change-Id: I940917d6763842499b18fffd15143bb80ce0e531 Reviewed-by:
David Faure <david.faure@kdab.com>
-
Martin Storsjö authored
Change-Id: I49dc036aedb4290889bce8ef616b4f7291e79d4f Reviewed-by:
Oswald Buddenhagen <oswald.buddenhagen@qt.io>
-
Antonio Larrosa authored
QOpenGLProgramBinaryCache::setProgramBinary() should check GL_LINK_STATUS after glProgramBinary(), but doesn't. In practice, this means that SDDM is a white screen, and KDE is just a gray task bar. So far, Qt tries to check this using its internal ::link() function. But in case the cached binary fails to load, Qt currently attempts to link the inexistent program, resulting in a zero-length, fixed pipeline shader. Checking this already in ::setProgramBinary() makes the call to ::link() superfluous, so we remove that as well. Done-with: Max Staudt <mstaudt@suse.com> Done-with: Michal Srb <msrb@suse.com> Done-with: Fabian Vogt <fvogt@suse.de> Task-number: QTBUG-66420 Change-Id: Iabb51d0eb2c0c16bde696efff623e57d15f28d82 Reviewed-by:
Jesus Fernandez <Jesus.Fernandez@qt.io> Reviewed-by:
Laszlo Agocs <laszlo.agocs@qt.io>
-
Alexander Volkov authored
contains() interprets the regexp as being implicitly anchored, so the leading part of the path needs to be explicitly matched. Change-Id: I1efa07dc99bb2db1717d2a66621899e23c144164 Reviewed-by:
Oswald Buddenhagen <oswald.buddenhagen@qt.io>
-
Tor Arne Vestbø authored
Change-Id: I1e0bb09d4f96b45f1e9757ea25ae3aba1ae42447 Reviewed-by:
Thiago Macieira <thiago.macieira@intel.com>
-
Christian Ehrlicher authored
Do not clear the settings of QHeaderView during layoutChange when the model is empty and the section count did not change. This will not work when a section is moved or a section is replaced with a new one during layoutChange. But since layoutChanged is also called on sorting, this patch ensures that the settings are not cleared in this case. This restores the behavior to the same as before 5.9.4. Task-number: QTBUG-66444 Task-number: QTBUG-65478 Change-Id: I39989cfd45b42e58f49d18ec014d3a941cadb6c9 Reviewed-by:
Thorbjørn Lund Martsum <tmartsum@gmail.com>
-
Christian Ehrlicher authored
During (re)storing the sections within layoutChanged handling, the hidden section size was not properly stored which lead to a section size of 0 when the section was unhided afterwards. Task-number: QTBUG-66413 Task-number: QTBUG-65478 Change-Id: I0b714c7e0530a1eae82b3bb0e0dc80ed576522d0 Reviewed-by:
Thorbjørn Lund Martsum <tmartsum@gmail.com>
-
Friedemann Kleint authored
Complements a6b697ca . Change-Id: I96697624aa65a5a45ce91ceaf0e156fd112a8ed0 Reviewed-by:
Thiago Macieira <thiago.macieira@intel.com>
-
Friedemann Kleint authored
Rename example savegame and its snippets following a6b697ca . Fix: /qtbase/examples/corelib/serialization/savegame/doc/src/savegame.qdoc:28: warning: Cannot find file 'json/savegame/savegame.pro' or 'json/savegame/savegame.qmlproject' qtbase/examples/corelib/serialization/savegame/doc/src/savegame.qdoc:98: (qdoc) warning: Cannot find file to quote from: 'json/savegame/level.cpp' json qtbase/src/network/ssl/qsslconfiguration.cpp:889: warning: Undocumented parameter 'name' in QSslConfiguration::setBackendConfigOption() qtbase/src/corelib/tools/qbitarray.cpp:314: warning: No such parameter 'len' in QBitArray::fromBits() Change-Id: If59512873ca2116b89490927fdbf9ea1d8b237a8 Reviewed-by:
Topi Reiniö <topi.reinio@qt.io> Reviewed-by:
Martin Smith <martin.smith@qt.io>
-
Friedemann Kleint authored
Add missing break. Change-Id: Ib17e348e64379abded41f6c044de59f9ee1dd8fc Reviewed-by:
Alexandru Croitor <alexandru.croitor@qt.io>
-
Jani Heikkinen authored
Task-number: QTBUG-65810 Change-Id: Ib6f87a126f64c2e4b2e924b97af4c2b2d10dd29e Reviewed-by:
Friedemann Kleint <Friedemann.Kleint@qt.io>
-
Andy Shaw authored
Currently there is a bug in Qt regarding the PostgreSQL driver as it does not correctly escape the table names when constructing queries internally. Therefore, these tests are marked as expected failures until the bug itself is fixed in Qt. Change-Id: I74dadc187f8a08509128dfea27be99787e57ea51 Reviewed-by:
Edward Welbourne <edward.welbourne@qt.io>
-
- 20 Feb, 2018 - 3 commits
-
-
Christian Ehrlicher authored
Properly initialize MedianDouble::values in ctor. This fixes the following valgrind warnings in the unit test: Conditional jump or move depends on uninitialised value(s) at 0x40771E4: addValue (qtconcurrentmedian.h:161) by 0x40771E4: QtConcurrent::BlockSizeManagerV2::timeAfterUser() (qtconcurrentiteratekernel.cpp:195) Change-Id: I8c8e297a52caca38cd6191ae2653f2765d387077 Reviewed-by:
Frederik Gladhorn <frederik.gladhorn@qt.io>
-
Andy Shaw authored
This also accounts for some quirks on the PostgreSQL side: - Null values for a related table are placed in a different order when sorted. - Functions (sum, count) return a different type than other databases - Using quotes to account for case sensitivity with tables Task-number: QTBUG-63861 Change-Id: Ib1894fa8d0c77d7045941f7c57be0d0acd8d117e Reviewed-by:
Edward Welbourne <edward.welbourne@qt.io>
-
Mårten Nordheim authored
Private headers not only need the _p suffix, but we also need to mean it :) Change-Id: I6028200a872661af34cbf90c77974cc1a22c09c3 Reviewed-by:
Friedemann Kleint <Friedemann.Kleint@qt.io>
-