Commit Graph

100 Commits

Author SHA1 Message Date
Liang Qi
45cdd701fa Add QT_xxx_VERSION macros for each library in qtbase
Provide version info for each library like QTCORE_VERSION and etc.

Task-number: QTMODULARIZATION-44
Reviewed-by: axis
2011-05-10 15:15:15 +02:00
Liang Qi
44b7877c87 Respect capacity in QVector::append().
Fix a bug in QVector::append(), it should use the capacity for new size,
when it is implicit shared and capacity is bigger than the new size.

Autotest included.

Task-number: QTBUG-11763
Reviewed-by: joao
Reviewed-by: Olivier Goffart
2011-05-10 11:38:53 +02:00
Shane Kearns
a590e77fd8 Fix QNetworkConfigurationManager usage outside main thread first
QNetworkConfigurationManager creates the engines loaded from plugins
as objects in the main thread.
If a QNetworkConfigurationManager instance is created in a worker thread
without any instance previously existing in the main thread, then it
is uninitialised until the main thread has run.
This causes allConfigurations() to return an empty list if called
immediately after instantiation, for example.

This fix initialises the plugins using blocking queued connections,
which causes the worker thread to block until the initialisation function
has been called in the context of the main thread.
Deadlock is possible if the main thread is for some reason waiting on the
worker thread, but it will not deadlock on QNetworkConfigurationManager's
mutex.
If this is a problem for an application, it should use
QNetworkConfigurationManager from the main thread first to preload the
plugins.

Task-number: QTBUG-18795
Task-number: QTBUG-18799
Reviewed-by: Cristiano Di Flora
2011-05-09 13:50:02 +02:00
Shane Kearns
7dd503c62f Update QTBUG-17223 for Qt 4.8
In Qt 4.7, http network requests are assigned to http connection
channels before connecting the channel.
In Qt 4.8, channels are connected "blind" as this gives a performance
improvement in certain circumstances.

On the assumption that User-Agent should be the same for all the
requests being sent to the server in a given burst, we use the first
queued request to set the user agent for a http proxy.

Task-number: QTBUG-17223
Reviewed-by: Markus Goetz
Reviewed-by: Martin Petersson
2011-05-09 13:16:41 +02:00
Shane Kearns
e01faeb5c7 Send User-Agent from the network request in http proxy CONNECT command
Some proxies can discriminate based on the User-Agent when sent a
CONNECT command for establishing a HTTPS connection.
With this change, if the User-Agent header is set in the QNetworkRequest
then it will be passed to the http socket engine for use in the connect
command sent to the proxy.
As before, "Mozilla/5.0" will be used by default when no user agent
has been set.

Task-number: QTBUG-17223
Reviewed-by: Markus Goetz
2011-05-09 13:16:13 +02:00
Shane Kearns
a342ba933a Fix QNetworkReplyImpl error handling
The backend was never started when compiled without bearer management,
now it is.
Now emits the error signal in case of startup errors which would leave
the state machine hanging. Previously it just printed a warning.

Reviewed-by: Peter Hartmann
2011-05-09 13:15:23 +02:00
Shane Kearns
1ad3814a56 Enable per network configuration proxy settings in QNetworkAccessManager
Delayed the resolving of the proxy until the backend is being started.
This is because the proxy settings are not known until after
QNetworkAccessManager has brought the network online using
QNetworkSession.
On Nokia's symbian3 phones, the default network configuration is a
service network containing a list of access points in priority order.
For a typical user, this will include one or more WLAN networks and a
cellular network - each of which can have different proxy settings.

Task-number: QTBUG-18618
Reviewed-by: Peter Hartmann
2011-05-09 13:14:46 +02:00
Shane Kearns
f0f55cd59f Allow a network configuration to be included in a proxy query
When Qt is compiled with bearer management support, the network
configuration can be included as a parameter in QNetworkProxyQuery.

This allows QNetworkProxyFactory::systemProxyForQuery to get the right
proxy setting for a specific network. For example a mobile phone could
have network configurations for home WLAN, work WLAN and 3G data
access points, each with different proxy configurations.

Task-number: QTBUG-18618
Reviewed-by: Peter Hartmann
2011-05-09 13:14:37 +02:00
Shane Kearns
279883fdf1 Fix error handling in write for socks socket engine
When socks socket engine calls the write function of the native socket
engine, it now propagates errors to the abstract socket.

Task-number: QTBUG-18713
Reviewed-by: Markus Goetz
2011-05-09 13:14:10 +02:00
Olivier Goffart
3a76f74e88 Merge remote-tracking branch 'mainline/master' into earth 2011-05-06 09:54:24 +02:00
Friedemann Kleint
ec88a76127 uic: Remove Q3Support.
Remove code and tests.
2011-05-06 09:32:09 +02:00
Jørgen Lind
1edc451057 Dont do doneCurrent in swapBuffers 2011-05-05 18:11:57 +02:00
Marius Storm-Olsen
022a528dfd compile openvg with private headers 2011-05-05 08:58:59 -05:00
Taito Silvola
c3ad797d8a QSslConfiguration documentation fix
setPeerVerifyMode() and peerVerifyMode() comments fix

Merge-request: 1220
Reviewed-by: Peter Hartmann
2011-05-05 14:16:30 +02:00
Jiang Jiang
1daf67042d Only enable design metrics for scalable fonts
Bitmap fonts don't have linear advance at all.

Reviewed-by: Eskil
(cherry picked from commit 111accbf9aaf95b052448ecb70937c61e9b59d66)
2011-05-05 13:39:11 +02:00
Jiang Jiang
05a1416be8 Add a way to retrieve CTFontRef from QFont
Since macFontID restricts to quint32, we have to return that in
QFont::handle.

Task-number: QTBUG-17890
Reviewed-by: Eskil
(cherry picked from commit c8f299b7e675c839b16d750cd2633a57cdd0526f)
2011-05-05 13:39:05 +02:00
Kent Hansen
1a2345ec19 Add Q_UNIMPLEMENTED() macro
(cherry picked from commit adce00979c30cc22d26ba43c15e0c7a3733b57ab)
2011-05-04 18:15:53 +02:00
Prasanth Ullattil
af026f6fa4 Fix build error on Mac
To use the private headers, the .pro file should contain
QT += <module>-private

Reviewed-by: Olivier Goffart
2011-05-04 18:04:40 +02:00
Paul Olav Tvete
3611f82975 Build fix 2011-05-04 16:55:48 +02:00
Friedemann Kleint
10a0cc3da2 BC cleanup in uitools.
Remove virtual functions obsoleted by new resource handling
in Qt Designer 4.4. Remove static hash of private objects
for formbuilder.
Requires fd61c9b24d27452df3eb478a81d7e7725fe6f5b4 in qttools.

Rubber-stamped-by: axis
2011-05-04 16:23:51 +02:00
Peter Hartmann
33ce5392e8 HTTP cache backend: do not load resources that must be revalidated
The header field "Cache-Control: must-revalidate" is a strict
requirement for loading the resource from the server, and not reading it
from the cache without revalidating first. With this patch, PreferCache
will load such from the network instead of loading them from the cache,
and AlwaysCache will throw a ContentNotFound error.

Reviewed-by: Markus Goetz
Task-number: QTBUG-18983
2011-05-04 14:35:09 +02:00
Peter Hartmann
0c9f327102 HTTP reply: do not load resources from cache that must be revalidated
The header field "Cache-Control: must-revalidate" is a strict
requirement for loading the resource from the server, and not reading it
from the cache without revalidating first. With this patch, PreferCache
will load such from the network instead of loading them from the cache,
and AlwaysCache will throw a ContentNotFound error.

Reviewed-by: Markus Goetz
Task-number: QTBUG-18983
2011-05-04 14:34:34 +02:00
Jiang Jiang
edf55f7d50 Remove QFontEngineFT::loadGlyphMetrics
It is no longer used and was accidentally merged back in.

Reviewed-by: Eskil
(cherry picked from commit 782535ac548c582542bd1c17207e288e816870a8)
2011-05-04 14:34:31 +02:00
Jiang Jiang
2a8d50ed6a Add required font metrics functions to QRawFont
Reviewed-by: Eskil
(cherry picked from commit 2c8df8bfb679885c3cbd2ee02f5e4053fdd554c2)
2011-05-04 14:34:21 +02:00
Peter Hartmann
863de43dca QNetworkCookie: allow spaces in unquoted values
We should follow
http://tools.ietf.org/html/draft-ietf-httpstate-cookie-23 , which says
parse the value until reaching the next ';' or the end of the line.
Other cookie implementations allow spaces in unquoted values as well.

Reviewed-by: Martin Petersson
Task-number: QTBUG-18876
2011-05-04 14:20:46 +02:00
Gunnar Sletta
c41153e693 Merge branch 'master' of scm.dev.nokia.troll.no:qt/qtbase-staging 2011-05-04 11:38:42 +02:00
Eskil Abrahamsen Blomfeldt
2e0003eda4 Include pixel size of font in exported HTML from QTextDocument
When you copy-pasted rich text in which the font size had been set
using setPixelSize() the font size would be mysteriously forgotten.
The pixel size property in QTextCharFormat was added ad hoc, and not
integrated in the HTML exporter.

Task-number: QT-4792
Reviewed-by: Gunnar
(cherry picked from commit 5aa5c2e2935c1829cc6965198968699f17c24ec0)
2011-05-04 11:20:59 +02:00
Gunnar Sletta
9c6347f245 Merge branch 'master' of scm.dev.nokia.troll.no:qt/qtbase-staging 2011-05-04 10:08:23 +02:00
Gunnar Sletta
a41265a09e Merge branch 'qtquick2' of scm.dev.nokia.troll.no:qt/qtbase-staging into qtquick2 2011-05-04 10:01:30 +02:00
Gunnar Sletta
539602d43a Make it possible for animation driver to specify the advance time delta 2011-05-04 10:00:42 +02:00
Eskil Abrahamsen Blomfeldt
5bf2f85953 Compile on Windows
The SPI_FONTSMOOTHINGCONTRAST macro is not defined everywhere. When
the code was refactored, the workaround for this was lost. This
resubmits the work-around to make it compile.

Reviewed-by: Samuel
(cherry picked from commit 4c3630c1fcd2b3008f540a8906a19c533604f36a)
2011-05-04 09:12:40 +02:00
Jørgen Lind
d8c6e2773f Remove warnings
(cherry picked from commit 9625c564877414695a9706acf34bc8719018ef06)
2011-05-04 09:03:50 +02:00
Jørgen Lind
03aafc9d48 Fix Wayland plugin so it works with the wayland bind api
This is mostly for the xcomposite api, but also we needed to readEvents
after doing a connect
(cherry picked from commit 16c054125949b8f8ceec9626156d8790254a63a2)
2011-05-04 09:03:49 +02:00
Kristian Høgsberg
1e3e3980da wayland: Track wayland changes
Pass version number when creating proxies, use wl_ prefix when looking
up interfaces and drop wl_egl_display.
(cherry picked from commit c2adf9395214d711a3a40516c6c2afa64b3b4ca3)
2011-05-04 09:03:49 +02:00
con
95bbf56ff0 Support GL ES 2 with uikit.
For GL ES 2 teach the paint device about the fact that it
is doing rendering backed by a framebuffer object,
not a system framebuffer (which doesn't exist).
(cherry picked from commit 3b437a7706efbaaafdc4861393cbe21354cf4ee2)
2011-05-04 09:03:49 +02:00
Jørgen Lind
64fa65df74 Lighthouse: Fix virtual desktopwidget
(cherry picked from commit 69c759f5b84c2f6a44377e5f72cfe9d5bf7344c6)
2011-05-04 09:03:41 +02:00
Eskil Abrahamsen Blomfeldt
e443d88501 Support gamma correction of text on GL
If the SRGB framebuffer extension in GL is available, we can support
gamma correction of text with a gamma of 2.1. On Mac this is
sufficient for gamma correcting subpixel antialiased text. Gray
antialiasing should not be gamma corrected on Mac.

On Windows, the user can potentially set the gamma value to anything
between 1.0 and 2.2 (or something like that). We support anything
that resembles 1.0 closely enough by pushing the text out without
any correction (like before). We also support anything that resembles
2.1 (the gamma hardcoded in GL's SRGB extension) by turning on the
extension before blending the text. In between the two, we'll use
gray antialiasing to avoid differing too much from the raster engine
(which is our reference in this.)

For gray antialiasing on Windows, we use a constant gamma of 2.3 which
has been determined by experimentation. Since this is close enough to
2.1 we do gamma correction with SRGB extension.

The distance limit of 0.2 is determined by some experimentation.

Reviewed-by: Samuel
(cherry picked from commit 79ba7cceca5e4029876ace2121edd25b08ae14ce)
2011-05-03 16:50:01 +02:00
Markus Goetz
8e9aa019bb QNAM HTTP: Removes some comments 2011-05-03 16:47:11 +02:00
Markus Goetz
100b7565aa QNAM HTTP: More comments 2011-05-03 16:47:09 +02:00
Markus Goetz
9aa2feec0e QNAM HTTP: Implement abort() and close() 2011-05-03 16:47:07 +02:00
Markus Goetz
718657d8b2 QNAM HTTP: Comments 2011-05-03 16:47:05 +02:00
Markus Goetz
ea4df8586e QNAM: Function re-ordering 2011-05-03 16:47:03 +02:00
Peter Hartmann
5fdd720425 HTTP caching documentation: add some comments 2011-05-03 16:43:58 +02:00
Peter Hartmann
04f2c4a7a7 Revert "HTTP caching internals: fix logic for PreferNetwork and PreferCache"
This reverts commit 11838861a23ace66307306cf9c96b3f1910e09a9.
2011-05-03 16:43:56 +02:00
Markus Goetz
6d3044db95 QNAM: Fix initialization order warnings 2011-05-03 16:43:54 +02:00
Markus Goetz
b68f29720a QNAM: TODO comments for Qt 5 2011-05-03 16:43:52 +02:00
Markus Goetz
5b2b0a7b35 QNAM HTTP: Fix upload progress signal 2011-05-03 16:42:55 +02:00
Peter Hartmann
a5562d345b HTTP caching internals: fix logic for PreferNetwork and PreferCache 2011-05-03 16:39:32 +02:00
Peter Hartmann
2aba57d58e HTTP Network Reply Impl: return earlier when resource loaded from cache 2011-05-03 16:39:30 +02:00
Peter Hartmann
7876177c0c HTTP Reply implementation: make cache validation method return bool 2011-05-03 16:39:28 +02:00