With OS X 10.9 font decoding appears to happen lazily, this means we
have
to ensure the data we provide CG is kept alive until it dereferences it
itself.
Task-number: QTBUG-34332
Change-Id: I8fc38fafba746b062c4ad16314b0a410fd0b668d
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Manage and correctly set the z-order of a foreign created mmrenderer window by
QtMultimedia
Task-number: QTBUG-33816
Change-Id: I46273b945bf10991462fa72eb1ec8d00b0648988
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Previously, the full path to the qmake project file was specified as the
key for projGuids when inserting the project GUID into this hash table.
The only place that items are inserted into projGuids is in
VcprojGenerator::collectDependencies at:
projGuids.insert(val.first, newDep->target);
In this case, val.first contains the full path for the given project being
processed at this point. (e.g.: c:\testproject\testproject.pro)
Further in sln/vcproj generation, projGuids is queried with the contents
of <TARGET>.depends so that users may specify another qmake project as a
dependency for a given target.
This occurs in two places, in two ways:
1) In VcprojGenerator::collectDependencies() at:
QString depend = dep.toQString();
if (!projGuids[depend].isEmpty()) {
...
In this case QString depend contains whatever is put into <TARGET>.depends.
Typically this is the plain name of the project you depend on.
(e.g.: testproj)
2) In VcprojGenerator::writeSubDirs(QTextStream &t) by proxy of
extraSubdirs which is a QStringList of the project depends should the
mapping in case 1 fail.
This case works much like the above case, attempting to use each
QString entry of the extraSubdirs list as a key in projGuids.
If either of the above two attempts are successful, the msvc solution is
configured in a way that creates a project dependency, ensuring correct
compilation order and other related behavior.
The fix here stores the target project (e.g.: testproject) as opposed to the
full project path, as that is what is expected in the <TARGET>.depends
statements contained in the qmake project.
Change-Id: Iee05661a64d7a3e4467c5ade48d801fbbfe981b5
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Chris Gilbert <cgilbert@knaldtech.com>
We must not include qt_windows.h in public headers,
otherwise we're cluttering the environment with a colorful
bouquet of Windows API preprocessor macros and typedefs.
Task-number: QTBUG-34058
Change-Id: I415717ea2a47f39e7f4b7ce1c1df9d49afc99278
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
We pass the mouse screen coordinates that we convert to window
space instead of the other way around. This makes sure the original
mouse coordinates are not bound to any moving window.
Task-number: QTBUG-29583
Task-number: QTBUG-32221
Change-Id: I8f9ada6e8c0d20af8e85e88ee39190d23e58977f
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
CGPostMouseEvent is obsolete and known to have "undocumented special
cases and undesirable side effects." The newer Quatz API doesn't
allow neither multiple mouse button events nor preserving the mouse
cursor location.
Change-Id: I121b02fd01e2990488b05e45431cbdc13589656e
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Unearthed by fe1cbe9ca7 while
building QPlatformSupport.
Change-Id: Ife56efe111dda6bcf9f11f9c144a4d1dc1651380
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
In VS 2010 and newer the /SAFESEH linker option is not passed as
additional option but is represented by the property
ImageHasSafeExceptionHandlers.
Task-number: QTBUG-34392
Change-Id: I3bd19078e695716050dd20736b6bc589bcb1cefd
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
This avoids one extra memory allocation when creating the lock file. The
number of memory allocations when checking the file are still the same.
Change-Id: I16a2fdb7a5458bdc66f8ad1c602582b5698a5b5c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Make sure the groupbox check indicator doesn't get placed in negative
coordinates when font height is smaller than the indicator height.
Task-number: QTBUG-33610
Change-Id: Ifad0016e9311f1212cccb6d5971343beb68517c4
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
the file is not meant to be human-readable and even less editable, so
there is no point in having comments in it.
also, it was completely inconsistent to start with: features without
dependencies were listed as "templates" in form of commented out
#defines to disable them manually, while features with dependencies
had a respective #ifdef block to be automatically disabled, but no
"template" to disable them manually. now only the #ifdef blocks remain.
the actual configuration is done by configure via qconfig.h.
Change-Id: I8b9e56ba570908dad4cc6dfcd24bf0e1da8b290f
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
much more elegant than the checked in file. and less chance to get it
wrong, as people often enough do.
Change-Id: I975a62dfd83ce4f15947ce54f3c40931b1badae0
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
due to modularization, svg and activeqt do not belong here any more.
note that concurrent and dbus are staying for the time being, because
being part of qtbase and configure lacking support to switch them off,
this is the only way to disable the modules.
Change-Id: Idbc0d2f7db23f7e797fc301ab1136f69f9049b27
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
this file is not built as part of the xml library for years, so the
condition was never true.
Change-Id: Ifdc044b6a8044c5093a3f7c268505527dd53f134
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Added logic so that accepting either the press or the release will
keep the app running. This makes it possible to use the onBackPressed
functionality in QML.
This functionality is only intended for running in a complete Android
environment, so make sure that we don't terminate the application in
the NO_SDK case.
Task-number: QTBUG-30803
Change-Id: I2546eea73bf6a6ee8b196125b7556479b9b10a9c
Reviewed-by: BogDan Vatra <bogdan@kde.org>
Make sure the back key event is not sent to applicaton as long as the keyboard
is still visible.
Task-number: QTBUG-30803
Change-Id: I8063981a96ddb8e065c1281b1bdc0fb4a2895bc2
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Cleanup the theme handling.
Set default theme, needed by native dialogs.
Needs Ministro v9.6+.
Change-Id: Ia131edd8712b7737d3118d714c7772adb8f27acd
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
This flag was created because the eglfs plugin did not support
non-fullscreen raster windows. Now that it does, we can remove
it again. Turns out this also fixes several issues with positioning
and sizing of dialogs due to bugs in the implementation of the
flag.
Task-number: QTBUG-33846, QTBUG-33499, QTBUG-32537, QTBUG-32297, QTBUG-31457
Change-Id: I3902ae57d49d77e3c1046ec57b6f6926f70ec6a4
Reviewed-by: BogDan Vatra <bogdan@kde.org>
Some cross compile setups don't have special treatment
and don't have a configure check. To notice this early
in the build fail at this state. One example is to cross
compile from Windows for eg QNX or even linux embedded.
If QT_POINTER_SIZE is not set, later v4 build in
qtdeclarative is failing with a unmeaningful compile
error.
Change-Id: Iff9498d916371241b0b044b9543f9cd2946ecf42
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
On platforms other than Android eglfs does not allow having multiple
windows when one of the windows is OpenGL. On Android however this has
to be handled silently, without aborting the application. The
backingstore lacked the necessary checks so QGLWidget-based apps were
crashing. This is now corrected.
Task-number: QTBUG-34412
Change-Id: Ifb469fa9ef391b24aed3942430c0347276809ba5
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Fix compilation of ANGLE with gcc 4.8.0 64 bit: The
reinterpret_cast<unsigned long>(void*)
was causing
error: cast from 'const void*' to 'long unsigned int' loses precision
Task-number: QTBUG-34395
Change-Id: Ibde75dd4b5536f3827bdf0ab02a15e93a1a8a4f0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Removes the need to pass ARCHS to xcodebuild for simulator builds.
Change-Id: If15e9d387c416c5c9f83c50f5903ae0cd517ff34
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
boost::bind() became part of the C++11 standard with minor
modifications. Present the standard version as the main one to use, but
list the others as alternatives.
Change-Id: If419d8d24c0925119d3b9f7ff76be44981351bc0
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
See also commit 660aed3516 that removed the reverse method.
Change-Id: Ib20c5be863ba6644485c581e3ece47a390ce467d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
This is strictly speaking a behavior change, since we're no longer returning
something for Stretch and NoButton, but - guessing here - that shouldn't matter.
Yet, better safe than sorry, thus submitted as a separate patch.
Change-Id: I20cb084147f8c9257ce37d1e87ea38febabec28d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Only Commit, Finish and Cancel didn't have an object name, yet.
Also Extract Method on the switch statement, add a test, and
use QStringBuilder.
Task-number: QTBUG-29924
Reported-by: Leo Arias
Change-Id: I8c29606bc53e9d4caab631da2089e971a9da2d75
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
tested manually with internal NTLM proxy.
Patch-by: Jonathan Lauvernier <Jonathan.Lauvernier@gmail.com>
Change-Id: Ib3ed7aff12cb8d59ffc2b11ecc1c4fdc04acb368
Reviewed-by: Richard J. Moore <rich@kde.org>
QDateTime must be formatted as ISO8601 specifies, date/month must pe padded with 0 until width is 2
Task-number:QTBUG-33389
Change-Id: If07bcaa976ea3583369da3fd21ce442ee30e8c1f
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Move (almost) everything to initialize(). Doing so allows the QEglFSScreen
constructor, the hooks' platformInit() and others to perform tasks that need
the event dispatcher.
Task-number: QTBUG-34208
Change-Id: If64e3d1691c41752c53968f8d4fb063b45345680
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
We used to compute the default exclusive build directory, eg 'debug', at
configure time, and then set OBJECTS_DIR, MOC_DIR, etc to include this
hard-coded default exclusive build directory. We then had to run a post-
process step where we replaced the 'debug' part with the current actual
exclusive build pass, eg 'release', resulting in long-standing bugs such
as QTBUG-491 where we end up replacing parts of the build output dirs
that were not part of the original exclusive build directory.
We now set the OBJECTS_DIR, MOC_DIR, etc defaults in configure like
before, but they do not include any exclusive-build information. The
exclusive build directory is handled as a separate step in default_post
where we adjust all entries in QMAKE_DIR_REPLACE to be exclusive
directories.
For backwards compatibility the new exclusive build behavior is only
enabled for variables named by QMAKE_DIR_REPLACE_SANE, which for Qt
itself applies globally to everything but DESTDIR, and for libs and
tools also applies to DESTDIR. The reason for leaving out DESTDIR in
the general case is because many tests and examples assume the old
behavior for DESTDIR. A side effect of including all the other
variables for Qt libs and tools is that the PCH output dir will be
uniformly set, which has been an issue on Windows in the past.
The addExclusiveBuilds function now takes two or more arguments,
each argument being the key for an exclusive build, which can be
customized eg. using $$key.{name,target,dir_affix}. Passing more
than two arguments results in three/four/etc-way exclusive builds,
eg debug/release/profile. Exclusive builds can also be combined, eg
static/shared + debug/release by making two calls to the function.
We also handle individual targets of combined exclusive builds,
eg static/shared + debug/release, meaning it is possible to run
'make debug' to build both static-debug and shared-debug.
Task-number: QTBUG-491
Change-Id: I02841dbbd065ac07d413dfb45cfcfe4c013674ac
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Otherwise we won't pick up CONFIG+= changes on the command line or
from the project file.
Change-Id: I6f7e9380f971e6271de5659534e9565024fe041d
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Create a local CMake variable instead and use that in the search
paths argument and in the message string.
Resolves a warning that can appear with CMake 2.8.12.
Task-number: QTBUG-34115
Change-Id: I04c67668586a9ad6584b7f6e91ee65351c86389c
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Only QLineEdit always sets the sunken state and on some Android devices
(e.g HTC) the line edit is painted as it is pressed.
Task-number: QTBUG-29565
Change-Id: I25031ffaadba85cae6b6ff17c0847cb706e23503
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Attaching and detaching the current thread to/from the VM on each jni call,
causes a new thread object to be created and triggers GC when detaching
(GC alone takes anything between 10-30 ms to finish on the test device).
Instead of detaching when the environment object goes out of scope, we
now detach when the thread exits.
Task-number: QTBUG-34279
Change-Id: Ia613934e61f914d4be63bfa1be8fdecf849928b0
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
The three RGBA8888 formats was introduced to make it possible to have
QImages and QPixmaps in native OpenGL formats, but uploaded textures of
these types are still converted to ARGB first and then swapped back.
This patch detects the formats and ensures the unneeded back-and-forth
conversion does not take place. It also replaces a seemingly unused
private API meant for the same goal.
Change-Id: Id69d6973bb9c13d1052f2a1b0c516183f63421c2
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
module names use dashes, but the internal module representation uses
underscores, so we must translate.
Change-Id: Ib6983d3731e7dae2a4d6232f8a5202390fd425e9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>