| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Make the get() function inline
and simplify the hash computation
Reviewed-by: brad
|
| |
|
|
|
|
|
| |
Reviewed-by: brad
Reviewed-by: thiago
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The virtual QObject::qt_metacall will recurse to the whole object hierarchy
to find from which class a function should be called.
But it is possible to know, at connection time, from which exact
QMetaObject a function belongs, and the relative offset into it.
So we make the slot calls from the qt_static_metacall function.
So activation of signals is faster.
- We must not call a slot from a class that has been destroyed.
To avoid this, there is a check on the methodOffset. If it is
smaller, that means we might be called (indirectly) from
the destructor. We fallback to the virtual call to qt_metacall
that does the right thing.
- The signature of the static method is void (*) (QObject*,MetaCall,int,void**)
It returns void, so the compiler is allowed to do tail recusive
optimization. Having the QObject* as first parameter make it ready
on the stack for the call to the member function.
- The new static method has to be a member function in order to
be able to access the private slots.
Reviewed-by: brad
|
|
|
|
|
|
|
| |
Avoid the overhead of QObjectConnectionListVector::at(), when we
know anyway which list to take.
Reviewed-by: brad
|
|
|
|
| |
Testing that slot from destroyed class are not called
|
|
|
|
|
|
|
| |
QThreadData::current is too slow, it needs to access the TLS
The currentThreadId is much faster.
Reviewed-by: Brad
|
|
|
|
|
| |
Merge-request: 1011
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
|
|
|
|
|
| |
Merge-request: 1011
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
|
|
|
|
|
| |
Merge-request: 1011
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
|
|
|
|
|
|
|
|
|
|
| |
If a compositing manager is active, setting
the window pixmap background to None for ARGB windows
makes little sense.
In this case the background should be transparent
Merge-request: 1135
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use XFixes extension to track changes to
the compositing manager in such a way that
QX11Info::isCompositingManagerRunning()
returns a valid result even if compositing has
changed after the creation of the QApplication
Many thanks to Fredrikh Hoglund for suggesting the
correct approach
Task-number: QTBUG-6044
Merge-request: 1133
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
|
|
|
|
|
|
|
| |
This fix the qnetworkreply::ioPostToHttpsUploadProgress() auto test.
Before the readbuffer where always limited to 1k for ssl sockets.
Reviewed-by: Markus Goetz
|
|\ |
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1:
Unix configure: Add support for --sysroot
Add a 'capabilities' flag to the marshaller and demarshaller
Add a set of connection capabilities to QDBusConnection
Move the main D-Bus session and system connections to the main thread
Add a way to obtain the DBusConnection* pointer from a QDBusConnection
Make the QIconvCodec on Unix not enforce the Latin1 codec.
|
| | |
| | |
| | |
| | | |
Reviewed-By: axis
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The marshaller and demarshaller need to know the features negotiated
with the peer so as to determine what's permitted. This is especially
important to the marshaller: the libdbus-1 API may "throw a fit" if we
try to pass a type that isn't allowed or the server may disconnect us.
The use of the capabilities in the demarshaller are for symmetry and
for us to toggle the feature in unit tests.
Task-number: QTBUG-17478
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The capabilities are negotiated with the D-Bus peer or bus at
connection time and may include extra features not available when
D-Bus 1.0 was released.
Currently (as of D-Bus 1.4), the only additional feature is Unix file
descriptor passing.
Proposed features are "maybe types" and single-precision floating
point. They may be added to D-Bus 1.6.
Task-number: QTBUG-17478
|
| | |
| | |
| | |
| | |
| | |
| | | |
Some applications experience weird behaviour that sometimes it works and
sometimes it doesn't, due to D-Bus being first used in a thread. So
instead do everything in the main thread for the two main connections.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is internal API and the behaviour may change without notice. In
the future, I could use a different implementation without libdbus-1,
so this pointer may be something different. The use of DBusConnection
is also entirely implementation-defined, so keeping this connection
around is entirely unsupported.
You have been warned.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Originally, the QIconvCodec created and disposed of the iconv_t
structure at every turn. In Qt 4.5, we started saving it for later in
a thread-local storage.
We had to introduce a fix to make sure that we didn't create the
iconv_t structure before the setlocale(LC_ALL, "") call was made,
though: otherwise, we'd keep forever an iconv_t that pointed to the
wrong encoding.
So now simply restore the Qt 4.4 behaviour: create and dispose of the
iconv_t structure if we're called before the QCoreApplication
constructor is run or after the static destructors are run.
Note: this means QIconvCodec will probably default to US-ASCII when
run before QCoreApplication, not Latin 1. Non-ASCII characters
(anything with the high bit set) will fail to convert.
Task-number: QTBUG-15229?
Reviewed-by: Denis Dzyubenko
|
| |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-fire-staging:
Fix crash and infinite recursion caused by previous commits
Fix remaining regressions in QWS
Take Xft.hintstyle by default to match the behavior of GTK+
Fixed remaining issues in subpixel positioning with FreeType
Fix QTransform debug output
qFloor the decoration line width before painting
Let QTextLine decide its own x position in QPainter
Avoid repeatedly trying to load unloadable plugins, causing slowness
Reset GL glyph cache when texture limit is reached
unlockFace was put in the wrong place in previous patch
Implement subpixel positioning with FreeType
|
| | |\ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* 'master' of git://scm.dev.nokia.troll.no/qt/qt-fire-team:
Fix crash and infinite recursion caused by previous commits
Fix remaining regressions in QWS
Take Xft.hintstyle by default to match the behavior of GTK+
Fixed remaining issues in subpixel positioning with FreeType
Fix QTransform debug output
qFloor the decoration line width before painting
Let QTextLine decide its own x position in QPainter
Avoid repeatedly trying to load unloadable plugins, causing slowness
Reset GL glyph cache when texture limit is reached
unlockFace was put in the wrong place in previous patch
Implement subpixel positioning with FreeType
|
| | | | |
| | | | |
| | | | |
| | | | | |
Reviewed-by: TrustMe
|
| | | | |
| | | | |
| | | | |
| | | | | |
Reviewed-by: TrustMe
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
For Qt apps running in GNOME, we use the GTK+ settings by
default (instead of fontconfig settings).
Task-number: QTBUG-13800
Reviewed-by: Samuel
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
1. Merge QStaticText and QGlyphs drawing code of raster engine
into glyph drawing code for normal QTextItem, it simplify
the caching system (we don't use QImageTextureGlyphCache for
raster anymore, just glyph set cache in FreeType engine is
enough), and fix some regressions in QStaticText and QGlyphs
drawing.
2. Fix subpixel positioning support for OpenGL texture glyph
cache. Including a transform handling regression introduced
by the initial patch.
3. Disable subpixel positioning for bitmap fonts (mono format).
After this change, we only have two code paths for glyph rendering
with FreeType: raster will always use the simple code path (with
QFontEngine_FT cache) while GL will always use QTextureGlyphCache.
Reviewed-by: Eskil
|
| | | | |
| | | | |
| | | | |
| | | | | |
Reviewed-by: Eskil
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
It's a special case when enabling design (fractional) metrics,
we need to floor it to keep consistency with integer metrics.
Reviewed-by: Eskil
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
So that it can take trailing space width into account when
doing right aligned text drawing.
Task-number: QTBUG-18303
Reviewed-by: Eskil
|
| | | |\ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This is a port of 72f161739b270b01807f97cd853030440f0fd430 which was
reverted in integration to master, since it was incompatible with
the refactored glyph cache.
When the GL glyph cache reached its texture limit, we have to reset it
and start over. Added a new cleanup() function in
QGLContextGroupResourceBase which deletes the resource for a given
context and removes itself from that context group.
Task-number: QTBUG-13784
Reviewed-by: Samuel
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Should only unlock once after the loop.
Reviewed-by: TrustMe
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
QFontEngineFT are used in raster/OpenGL paint engine and QGLWidget,
also in Symbian, etc. We want to make sure it works well in raster
and QGLWidget first. Regardless subpixel antialiasing (LCD filtering)
is enabled or not (though it does look better when subpixel
antialiasing is on). We also need to support transformations.
The tricky part here is that, under X11, we have a different code
path for QFontEngineFT and other font engines in raster engine,
which uses QFontEngineFT's own glyph cache system. While in other
platforms (Windows and Mac) and QGLWidget, we will use the generic
QTextureGlyphCache.
The generic QTextureGlyphCache already has support for subpixel
positions, this solution is ported to QFontEngineFT for its
QGlyphSet: the key for QGlyphSet hash table has been extended from
glyph_t to <glyph_t, QFixed subPixelPosition> pair.
The real work to enable subpixel positioning with FreeType is in
fact really simple, we just set the horizontal translation to the
subpixel position * 64 (FreeType uses a coordinate system of 1/64
of a pixel resolution internally) immediately before loading the
glyph. A slight tweek to bitmap width is applied when we are
getting the bitmap ourselves instead of using FT_Render_Glyph to
accommodate the subpixel translation, which will only be used in
non-LCD filtering cases (grayscale antialiasing).
From what we have observed, FreeType can generate different bitmaps
for at least 12 different subpixel positions (each with a slight
difference). To limit the memory consumption, we restrict the
number of subpixel positions to be 4 (hardcoded), which should be
good enough for most low resolution displays.
Subpixel positioning (and fractional glyph advances) will only be
enabled when the hintingPreference for the font being used is
PreferNoHinting or PreferVerticalHinting. We will use fontconfig
hintstyle setting by default when no hintingPreference is set for
the font.
Task-number: QTBUG-12279
Reviewed-by: Eskil
|
| | | |/ /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
In certain uncommon situations, where different Qt versions are used
on the same system, the plugin caching optimization may identify a dll
as a valid plugin, even though it will later fail to load. This fix
will avoid that Qt repeatdly tries to reopen such dlls, something
which caused a significant performance hit in these cases. E.g. where
Qt would unsuccessfully try to load a number of KDE image format plugins
for every image loading operation.
Task-number: QTBUG-10066
Reviewed-by: thiago
Reviewed-by: janarve
|
| | | | |
| | | | |
| | | | |
| | | | | |
Reviewed-by: trustme
|
| | | | |
| | | | |
| | | | |
| | | | | |
Reviewed-by: Jeremy Katz
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We should check whether we got the default argument or the empty string that
was provided by the user as toCurrencyString(123, QString(""))
Reviewed-by: Zeno Albisser
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This changes the behavior as before we were returning the name that we read
from System Preferences -> Language which represents the language for UI
translation.
Now that we have QLocale::uiLanguages() we don't need a hack that returned UI
language as a locale name.
This essentially reverts adb6eea3a135707a220c0b1c1cf8266321af9309.
Reviewed-by: con
|
| | | | |
| | | | |
| | | | |
| | | | | |
Reviewed-by: trustme
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Task-number: QTBUG-17092
Reviewed-by: Zeno Albisser
Reviewed-by: Liang Qi
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Task-number: QTBUG-18374
Reviewed-by: Olivier Goffart
Merge-request: 1157
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
...the private class is cheap anyway; and lazy construction lead to
problems like setting an empty default configuration would crash etc.
Reviewed-by: Markus Goetz
Task-number: QTBUG-17550
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Qt::LocalTime==Qt::UTC.
Merge-request: 1159
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
|
|\ \ \ \ \
| |/ / / / |
|
| |\ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-tools-staging:
Designer: Fix tab order in action editor dialog.
Make QtUiTools use the lib-infix passed to configure.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Task-number: QTBUG-18400
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Patch contributed by OpenEmbedded project.
Reviewed-by: hjk
Task-number: QTBUG-7169
|
| |\ \ \ \ \
| | | |_|_|/
| | |/| | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1:
tst_qlocale: improve failure message in tst_QLocale::macDefaultLocale
Add a once-over unrolled fromLatin1 conversion (32 characters)
Add 16-byte loads of the Neon fromLatin1 functions
Fix warning about unused parameter
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Use QVERIFY2 to output more details about this failure.
Reviewed-by: Toby Tomkins
|