Commit Graph

11599 Commits

Author SHA1 Message Date
Friedemann Kleint
d5d79f3c7f Use frameless widgets in tst_qgridlayout.
Avoid failures caused by minimum window widths on Windows Areo/8.

Task-number: QTBUG-28611
Change-Id: I9affcce84ab804a45fa1a12fb93ad0136e6ae877
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
2012-12-17 22:24:38 +01:00
Giuseppe D'Angelo
cc89509f83 Delete the QSlotObject when disconnect()ing
When disconnect()ing through a QMetaObject::Connection,  if the
QObjectPrivate::Connection contains a slot object, deref it, so
that it will be destroyed before the next run of cleanConnectionList.

Previously, a copy of the functor passed to connect() was kept until
QObjectPrivate::cleanConnectionLists was called (by adding a new signal,
or the sender was destroyed), even after a successful call to
disconnect(). That is, we were keeping that copy allocated without
any good reason.

Change-Id: Ie6074ea797df1611cb995dec07c5b5a742360833
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-12-17 19:50:33 +01:00
Giuseppe D'Angelo
c4f433d581 Reset the QMetaObject::Connection dptr when disconnect()ing
The QObjectPrivate::Connection refcount was not decreased
when disconnect()ing, therefore it was kept alive by the
owning QMetaObject::Connection object.

This removes a leak in case the QMetaObject::Connection
survives the sender object, after a successful disconnect().

Change-Id: Ie2ea59b269a0e589ae23c1457df7533be77c0797
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-12-17 19:50:31 +01:00
Giuseppe D'Angelo
058c029b1e Remove useless QVERIFY(true)
More QVERIFY()s were added in the meanwhile to the test function,
so we can drop this one.

Change-Id: If6f137f45ba606b61d6a7004556a667ed316b61f
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-12-17 19:50:27 +01:00
Andreas Aardal Hanssen
533105cadf Deactivating an inactive panel no longer causes unwanted deactivation.
QGraphicsItem::setActive() is by design not guarded against calls that
do not change the current activation state of the item (e.g., calling
setActive(true) on an active item or calling setActive(false) on an
inactive item). This is to ensure that it's possible to set explicit
activation state on items, either before they are added to a scene, or
while the scene itself is inactive.

Before this fix, calling setActive(false) on a panel item that is not
currently active would by accident clear activation from any other
panel that might have focus. After this fix, activation is only cleared
if the item setActive() was called on itself is the active panel, or
is the panel that will regain activation once the scene is reactivated.

Task-number: QTBUG-28544
Change-Id: Ic4752f1e4400f9a0660bc968834747610212bb52
Reviewed-by: Bjørn Erik Nilsen <post@bjoernen.com>
Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2012-12-17 19:37:34 +01:00
Andreas Aardal Hanssen
af8a6cdd87 Add new signal: QGraphicsScene::focusItemChanged().
This signal is emitted by QGraphicsScene whenever focus changes in the
scene (i.e., when an item gains or loses input focus, or when focus
passes from one item to another). You can connect to this signal if you
need to keep track of when other items gain input focus. It is
particularily useful for implementing virtual keyboards, input methods,
and cursor items.

Task-number: QTBUG-10570
Change-Id: I9cbbd9a2d15d6f568e1597c2c33ec049eb70f793
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
2012-12-17 19:37:16 +01:00
Jerome Pasion
7d685afe5d Doc: Correcting qhp link to Qt SQL's C++ Classes.
Task-number: QTBUG-28579
Change-Id: I0faae04ab125236554cb39659169780e2ab64629
Reviewed-by: Geir Vattekar <geir.vattekar@digia.com>
2012-12-17 17:02:23 +01:00
Jerome Pasion
771e29178d Doc: Correcting qhp link to Qt GUI C++ API.
Task-number: QTBUG-28579
Change-Id: I224d55adc1be77138237da4efcac01641964c06b
Reviewed-by: Geir Vattekar <geir.vattekar@digia.com>
2012-12-17 17:02:14 +01:00
David Schulz
4dc45567a0 QtBase: Removed moved linguist examples.
Linguist examples are now in qttools.

Change-Id: I8abfff50d81cda143a080711bf9583e7be777009
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
(cherry picked from commit d64c4662f0)
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2012-12-17 16:33:01 +01:00
Leena Miettinen
5648bbbcbc Doc: remove example docs that were moved to qttools
Remove docs and images for Multiple Inheritance and Text Finder
examples that were moved to qttools/uitools.

Change-Id: I29e8f76b2512e329c354a6d3676c9b2e09e35726
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: David Schulz <david.schulz@digia.com>
(cherry picked from commit a0a4c06736)
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2012-12-17 16:32:51 +01:00
Oswald Buddenhagen
2ac3f92296 clean up example project files, mostly wrt QT+=widgets
move QT+=widgets (and printsupport) statements before the install
statements, and de-duplicate some cases.
also move some TARGET assignments to a more conventional place.

Change-Id: I6140d8611680f66c24490e5894e4eb90cae95635
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-12-17 14:08:17 +01:00
Oswald Buddenhagen
6c88c7db63 remove QT+=widgets from SUBDIRS projects
it makes no sense whatsoever

Change-Id: Ica7c764575079a12512ee2eb62a995ebbefa09a0
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-12-17 14:08:17 +01:00
Oswald Buddenhagen
25a18283d0 remove more symbian vestiges
Change-Id: Ib875202b77193c474bbbd411a7bd0065b26996e9
Reviewed-by: Liang Qi <liang.qi@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-12-17 14:08:17 +01:00
Oswald Buddenhagen
599a58170d remove obsolete DEPENDPATH assignments
qmake now add CONFIG+=depend_includepath by default, making manual
DEPENDPATH setup unnecessary.

Change-Id: Ie57cf05c369e21b5b9e099b6ce9be4f75da1508f
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-12-17 14:08:17 +01:00
Oswald Buddenhagen
9d3e87578c do not add DEPENDPATH assignments to projects
qmake now add CONFIG+=depend_includepath by default, making manual
DEPENDPATH setup unnecessary.

Change-Id: I93988ec4fa08ed3c65dc217da1ba59850274e167
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-12-17 14:08:17 +01:00
Oswald Buddenhagen
09331062bb remove some unnecessary CONFIG additions
qt is already added by spec_pre.prf, warn_on and depend_includepath by
default_pre.prf.

Change-Id: Ic00e0ba496d698ed9659c476f2ca99fc0f86a093
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-12-17 14:08:17 +01:00
mfekari
dcfa8926ff Add a Q_ENUMS for MeasurementSystem
Change-Id: Ib60de407f7ec8df907884ad2cf2fbf8e7b2c02f4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-12-17 14:08:17 +01:00
Peter Kümmel
a42ad77ec9 Fix possible crash in tst_QThread::quitLock() test
Don't read member variable of deleted Job object.

Change-Id: I71a6565c4932427e9cbab744c2e472b62ea98ca2
Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-12-17 14:08:17 +01:00
Thomas Hartmann
63693430c7 OpenGL examples: Add error message about ANGLE on Windows
These OpenGL examples require a Desktop OpenGL and will
not build with OpenGL ES 2.0. This means those examples
do not build on Windows with the default configuration
using ANGLE.
ANGLE is wrapping OpenGL ES 2.0 to DirectX and does not support
the full Desktop OpenGL feature set.

Since this is confusing for Windows users that do not know about ANGLE
this patch adds an explicit error message describing the solution.
(configuring Qt with -opengl desktop)

Task-number: QTBUG-28590

Change-Id: I782e6830b9e282ddcc8a2ee0a47faf3579d36aab
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-12-17 14:08:17 +01:00
Joerg Bornemann
f0f12ea5f1 accept hex/octal values for RC_LANG and RC_CODEPAGE
Task-number: QTBUG-28624

Change-Id: I6188045b05ebb8b9d285d1b30f8082a2fe46ff8b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-12-17 14:08:17 +01:00
Joerg Bornemann
9a1183b400 add base parameter to ProString::toInt and ProString::toShort
Change-Id: I0c8b48e6491486ca829ce24ca2e284294ba0138a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-12-17 14:08:17 +01:00
Miikka Heikkinen
826c4f60b6 Rename conflicting symbol QVariantToVARIANT
It appears this method has been copied from ActiveQt. When building
Qt statically, linking Windows platform plugin into any application
that also uses ActiveQt will cause error about duplicate symbol.

Renamed QVariantToVARIANT to QVariant2VARIANT to avoid conflicts.
Renaming is done here rather than ActiveQt, as that symbol is in
exported header in ActiveQt.

Task-number: QTBUG-28645
Change-Id: Id0d7fc51d4455b463515e7c6178798ad61217c35
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2012-12-17 14:08:17 +01:00
Joerg Bornemann
3e94e8daf3 fix duplicate TRANSLATION entry in generated RC file
Task-number: QTBUG-28625

Change-Id: I9bd6098c7557ca008211acef172f5c51a6766998
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-12-17 14:08:17 +01:00
Miikka Heikkinen
4c5584f0a3 Fix installation of plugin module .pris in static Qt builds
When building Qt static, plugins get module .pri file, but those files
do not get installed in Windows. This is because both .pri generation
and install target statements are scoped with !build_pass, which means
Makefile.Debug and Makefile.Release do not get install_pritarget
target.

Fixed by doing only the .pri generation in !build_pass scope.

Task-number: QTBUG-28606
Change-Id: If3f49b578af1d9171a8bce67793ecb3f902a6da8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2012-12-17 14:08:17 +01:00
hjk
127f9e1098 Fix mandlebrot and imagescaling example qdoc markup.
Change-Id: I5c9802cab917203092d93fca73b166d2dfeb64bc
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2012-12-17 11:57:02 +01:00
Morten Johan Sørvig
8fa464ffa6 Compile.
Update painting code with retina support.

Change-Id: Iebdfaaaaf98ed69f4ecb3cef5ca96b4e4ddb09dd
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2012-12-17 11:57:02 +01:00
Jonathan Liu
acbb6f1897 Windows: Remove warning when creating QWindow
Change-Id: I63c76710ab84c88ba8b4b6f24e6161ae2db77a5f
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-12-17 11:57:02 +01:00
Andreas Aardal Hanssen
ed15e4eb07 Fix focusproxy-relayed crash in QGraphicsItem destructor.
Makes tst_qgraphicsitem::tst_focusProxyDeletion not crash.

valgrind reported the error when running tst_qgraphicsitem. The crash
was very real; when deleting an item that has another item as a focus
proxy, the proxy still had a reference to the deleted item's focusProxy
pointer. I'm not a huge fan of whitebox testing but thought this crash
justifies a modification of the test to make it fail, instead of just
passing silently with a warning only given by valgrind and friends.

FTR the reason the test doesn't crash hard is that the memory is freed
but not reused within the scope of the test. So the access to the
pointer d_ptr->focusProxy succeeds, it just accesses memory that might
as well have been reclaimed. But this is quite undefined...

Task-number: QTBUG-28321
Change-Id: I2624631f5e5c2a8aa8bd4efe1fc128eba6c61f56
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2012-12-17 11:57:02 +01:00
hjk
2dc6ad8adf Fix building of the painting examples that use shared code
Task-number: QTCREATORBUG-8437

Change-Id: I66031184a009f3b26ad4af36b1975204e8fa80dc
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2012-12-17 11:12:49 +01:00
Morten Johan Sorvig
8c814db747 Add Platforms and Mac info to changelog.
Change-Id: I3b6ab6acd1b10632e227e9fd512e05478d4aeb68
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2012-12-17 09:31:16 +01:00
Jonathan Liu
b7fd19b434 ANGLE: Always use DEF_FILE on Windows
Building ANGLE with MinGW results in too many symbols being exported in
the DLLs. Always use DEF_FILE on Windows to limit the symbols exported
and eliminate symbol conflicts when libEGL/libGLESv2 is linked by other
libraries that include their own version of ANGLE (e.g. QtWebKit).

Change-Id: I7bb1f90d9996eabf30095323e9399efa1c23e3a1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-12-17 09:00:31 +01:00
Andreas Aardal Hanssen
d6f2d8dcb6 Make sure panels always gain focus when activated or tab is pressed.
This changes behavior, but I would argue it's a good change. If you
create a panel and activate it (e.g., by simply showing it or reparenting
it onto an already-visible item), you expect the panel to gain focus /
which is sort of the whole point of activating it. Prior to this change,
you had to have explicitly called setFocus() on one of the panel's
children, which would give that item subfocus, for that item to auto-
gain focus when the panel was activated. This change makes it more
automatic. If the panel itself or any of the widgets in its focus chain
can gain focus, they will gain focus when the panel is activated.

So the new logic is - if the panel already has a focus item, so if
someone explicitly set subfocus on an item before the panel is shown,
that item gets focus. Otherwise, if the panel itself can gain focus
(e.g., someone makes a line edit / text edit panel), it gains focus
when activated. Otherwise, we search the focus chain until we find
the first item that can gain focus. This last case is the file dialog
case, where the dialog itself can't gain focus but typically the
first item in the focus chain is the primary focus widget, such as
the search field or the directory list view.

The change also fixes this for the first Tab. If you clear focus on
a panel, the user expects to be able to press Tab to regain focus.
Prior to this change that didn't happen. Now, the panel or the first
in the focus chain that can get focus gets focus on first tab.

Task-number: QTBUG-28194
Change-Id: Id7ec1741d0d5eb4ea845469909c8d684e14017f1
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2012-12-17 08:58:04 +01:00
Morten Johan Sørvig
f55ce22628 Cocoa: make accessibility hit test not crash
Check if the accessibility element is valid before
calling childAt.

Change-Id: Id63c11f18b262c3c3a839db8ee2d11c0d7adc822
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2012-12-16 19:43:32 +01:00
Frederik Gladhorn
ff20caae2b Accessibility: Activate in QGuiApp instead of QApp.
This makes it possible to use accessibility with
QQuickWindow.

Change-Id: I5fccd5f25021c4953b03e146705f48a198dbaaa7
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2012-12-16 19:41:58 +01:00
José Millán Soto
10e4b0c110 Do not inform that a widget is not visible when it's disabled.
Change-Id: I561c8ef4c25dde8eb24260a46d284ca10cbf074d
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2012-12-16 19:41:33 +01:00
José Millán Soto
44cc60515a Handle disabled state change
Modified AtSpiAdaptor::notify to handle enabling and disabling widgets.

Change-Id: I9a23f74d891aaf123d7fc094bdf63e384e1d65fe
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2012-12-16 14:50:16 +01:00
José Millán Soto
6e713cf03d Call QAccessible::updateAccessibility when caret moves in QTextEdit
Change-Id: I3b9e5d8e67b4928558b642a4d23aa60ae9dfde60
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2012-12-16 14:49:05 +01:00
José Millán Soto
568b278b75 Implemented AtSpiAdaptor::notifyStateChange
Adding a new private method to simplify notifying that the state has
changed as it is something that is frequently done in AtSpiAdaptor::notify

Change-Id: Idf21715b5d20212adb301ae9bca05f1edfc19946
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2012-12-15 20:45:59 +01:00
Liang Qi
139f416237 Remove the timestamp info in genarated files
For moc, rcc and uic, then it's friendly for tools like ccache.
ccache is using md5 to check file modification, but the different
timestamp info will cause different md5 for same meaningful
contents, it will disabled ccache.

Updated the autotest for uic and rcc.

Task-number: QTBUG-26589
Change-Id: I9f1dcf6cd826ad9603af6e183757bcd748c32bd1
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-12-15 11:32:38 +01:00
Debao Zhang
d914017ebe Clean up Q_WS_WIN
The first branch is required to MSVC. The bitfield isn't large enough to
represent all possible enum values of Virtualness for MSVC.

In addition, using bitfield is a premature optimisation in this case.
So remove them.

Change-Id: I4c5f85271d2bca1411426e6a321a795a7e783aff
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-12-14 23:39:14 +01:00
Debao Zhang
06031f8bc4 QSettings docs: replace Q_WS_MAC with Q_OS_MAC
Change-Id: I158ac697dea1792c1d608ebaff77388cfa343999
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2012-12-14 23:39:14 +01:00
Leonard Lee
4cf112b641 Elaborate shortDayName(), etc using default locale.
QDate::toString() should explain QDate::shortDayName() and
QDate::shortMonthName() will be localized name using the
default locale from the system.

Task-number: QTBUG-28522
Change-Id: I027a72773b5772bf00344f14a4b522e41c9e63db
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-12-14 23:29:42 +01:00
David Faure
485af6275d Docu: fix non-ascii character where "i" was expected
Change-Id: I540c530441ad184efe4e1ecc83bf99aa97c6a028
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2012-12-14 21:45:46 +01:00
Andy Shaw
d75d86190b Ensure the native filedialog starts up with the right directory
On Mac it was not starting the dialog with the specified directory when
one was present. If a filename was given as well then it would start up
fine.

Task-number: QTBUG-28161
Change-Id: I7cce0d065dd57e6433ce62380d4263d6e20b6e7c
Reviewed-by: Liang Qi <liang.qi@digia.com>
2012-12-14 19:52:06 +01:00
Andy Shaw
0c3cfdba45 Mark the QDesktopServices::StorageLocation enum as obsolete in the docs
The enum was already deprecated but the documentation still listed it
so now it is correctly obsoleted.

Change-Id: I9d64fe58a5e70de7161928da2d09b4532d450274
Reviewed-by: Liang Qi <liang.qi@digia.com>
2012-12-14 19:51:57 +01:00
Samuel Rødal
52619ae778 Fixed invalid memory read in SSSE3 image blending code.
We need to do bounds comparison on the actual offset we're going to use
with _mm_load_si128 to read 16 bytes from memory (even though we won't
use the trailing bytes in the end).

Task-number: QTBUG-28324
Change-Id: Id0d6094da796ca67338d8ad225fa6b2f309bbe6e
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-12-14 17:12:44 +01:00
Nico Vertriest
7ca226c951 Doc: entered hardcoded url for Statecharts
Corrected in statemachine.qdoc
Task-number: QTBUG-27512

Change-Id: I5fa8b7fd39a4c3569e2652b9a60ba4426090a398
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2012-12-14 17:12:44 +01:00
Frederik Gladhorn
f563599a46 Implicit conversion of shortcuts to string is gone.
This only effects compilation with DEBUG_QSHORTCUTMAP.

Change-Id: I184e644f2165049336cee8a6ac63a3301cf4c849
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2012-12-14 17:12:44 +01:00
Venugopal Shivashankar
69e6029411 Doc: Moved content from qtdoc
- The qdoc pages were related to qtcore and they were
referring to snippets inside the qtcore module boundary.
- Fixed the exampledirs for QtCore to include the examples
that are referred by the \snippet instances in the
moved qdoc pages work.

Change-Id: Ibb6dbb131920ea8692a203f6145863e5012e4602
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2012-12-14 17:12:44 +01:00
Frederik Gladhorn
65c9706f14 Remove unused private member.
Change-Id: I54f3f748763dd5959552df864af38558c136dc87
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2012-12-14 17:12:44 +01:00