Commit Graph

3784 Commits

Author SHA1 Message Date
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
9c1293283e fix tst_qnetworkreply::httpProxyCommands autotest
Due to architecture changes in Qt 4.8, clearing the proxy before the
request is complete causes the http connection to not use any proxy.
The issue is that the proxy isn't resolved until after the bearer has
been started (which is correct in the general case, as system proxy
is unknown until that time).

Also increased the test's timeout from 1 second to 15, as starting a
bearer can be slow.

Reviewed-by: Markus Goetz
2011-05-09 13:16:24 +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
724671feca Add autotests for configuration dependent network proxies
1. test that systemProxyForQuery returns something for all configs
2. test that QNetworkAccessManager uses the settings for the
   configuration it was started with.

Task-number: QTBUG-18618
Reviewed-by: Peter Hartmann
2011-05-09 13:15:47 +02:00
Lars Knoll
32ce4fe9e6 split up qguivariant into two files
Move everything that will end up in QtWidgets
into a qwidgetsvariant.cpp file. Currently
this is QIcon and QSizePolicy only.
2011-05-06 23:52:43 +02:00
Qt Continuous Integration System
de47cd9b66 Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging
* 'master' of git://scm.dev.nokia.troll.no/qt/qtbase-staging:
  Fix QRawFont::setPixelSize() on Mac
2011-05-07 00:05:46 +10:00
Eskil Abrahamsen Blomfeldt
4135b6b323 Fix QRawFont::setPixelSize() on Mac
When refactoring the setPixelSize() code of QRawFont, it was broken
on Mac. To avoid making the same mistake again, I've added a simple
autotest to check that the pixel size is actually set.

Reviewed-by: Jiang Jiang
(cherry picked from commit 821b8b540af491ce60d35bd84d3c91399ecc0d16)
2011-05-06 16:00:15 +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
Eskil Abrahamsen Blomfeldt
45b80f054f Remove misspelled comment in tst_qtextdocument.cpp
The comment was copy-pasted, spelling error and all, from the example
in the bug report, and really doesn't make any sense at all in this
context.

Reviewed-by: TrustMe
(cherry picked from commit 7ac511d8d906575dff1a02361e31251b244d3b3a)
2011-05-05 13:38:13 +02:00
Peter Hartmann
a4e3b2bd5e HTTP auto tests: do not load resources from cache that must be revalidtd
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: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
Peter Hartmann
aef6239e7d Revert "HTTP caching internals: fix logic for PreferNetwork and PreferCache"
This reverts commit e5d27e7aeac984e46f3aa8de20160cc00fc63155.

do not change the cache logic fundamentally.
2011-05-03 16:46:08 +02:00
Markus Goetz
5b2b0a7b35 QNAM HTTP: Fix upload progress signal 2011-05-03 16:42:55 +02:00
Prasanth Ullattil
1606667d3e Moved QtUiTools to CONFIG
QtUiTools is a staic library now. If this is added to QT variable
qmake will treat this as a framework on Mac. This patch is to
avoid that.
2011-05-02 15:30:08 +02:00
Eskil Abrahamsen Blomfeldt
ac4af55972 Make pixel size a qreal in QRawFont
The pixel size in the font engines is already a floating point value.
For maximum flexibility, we should expose this in the public API.

Task-number: QTBUG-18817
Reviewed-by: Jiang Jiang
(cherry picked from commit ac9e63b58533a3215106ed9da82cff3a3e3dda3a)
2011-05-02 10:13:32 +02:00
Jiang Jiang
bbbfc9b0eb Another ugly hack to make bidi cursor work with Core Text
If the text is wrapped with LRE/LRO/RLE/RLO override/embed marks,
Core Text in Mac OS X 10.5 doesn't produce an empty glyph at the
beginning of the glyphs (while it does in Mac OS X 10.6), thus
we need to prepend an empty glyph here, otherwise cursor position
calculation will consider the first two characters as a ligature
of the same glyph.

Reviewed-by: Eskil
(cherry picked from commit a36ac6c34bafa801c2c30d76f59e4a3594efc4d5)
2011-04-29 11:02:24 +02:00
Jiang Jiang
0f7cba14f6 Support visual cursor movement for BIDI text
Bidi input can in some contexts be more intuitive if the cursor
works in visual way: pressing left arrow key always make cursor
move one character to the left regardless the language of text,
pressing right arrow key always make cursor move to the right.
It is also the behavior of Mac OS X. Based on the above reason
and requests from Symbian we implemented this support for visual
movement in BIDI text. 3 public properties are added to
QTextDocument, QTextLayout and QLineEdit respectively:

- QTextDocument::defaultCursorMoveStyle can be used to control
  the cursor behavior in all widgets based on QTextDocument,
  like QTextEdit, QPlainTextEdit, etc. When set to QTextCursor::
  Visual, it will enable visual movement for all the cursors in
  the corresponding text edit. Default is QTextCursor::Logical.

- QTextLayout::cursorMoveStyle is used for low-level cursor
  manipulation. When set to Visual, it will enable visual movement
  behavior for all the cursor related methods, including cursorToX,
  xToCursor and drawCursor. Default is Logical.

- QLineEdit::cursorMoveStyle is used to control cursor movement
  behavior in QLineEdit. Default is Logical.:

Task-number: QTBUG-13859
Reviewed-by: Eskil
(cherry picked from commit c480dd641f5d22d1ee72cb27bf39e24c6df65658)
2011-04-29 11:02:23 +02:00
Jiang Jiang
028aa80d70 Disable tst_QPixmap::onlyNullPixmapsOutsideGuiThread on Mac
No need to check it anymore after the switch to raster engine.

Reviewed-by: Eskil
(cherry picked from commit e004701bd7ba9e4a7cd5ac1bf784829feae16cae)
2011-04-29 11:02:23 +02:00
Marius Storm-Olsen
0389278105 Only run JSC benchmarks if access to the source code
When modularized, the benchmark test case might not have access
to the JavaScriptCore source code. So, make sure the test case
still compiles in this case.
2011-04-27 12:06:04 +02:00
Marius Storm-Olsen
57e47f1c7e Remove not needed .pri include 2011-04-27 12:06:04 +02:00
Liang Qi
d5622b287e Add tst_headersclean for each module 2011-04-27 12:06:03 +02:00
Liang Qi
cc47cce747 Modularized tst_compilerwarnings 2011-04-27 12:06:03 +02:00
Liang Qi
6a1d5f8723 Modularized tst_bic and add some helper functions for global test 2011-04-27 12:06:03 +02:00
axis
0cdec327f2 Fixed maketestselftest after guiapplauncher was made a global test. 2011-04-27 12:06:02 +02:00
axis
cdf6ce6adb Removed reference to linguist test, which is now in qttools. 2011-04-27 12:06:01 +02:00
axis
b5989f6867 Adapted guiapplauncher test to modularized Qt.
Now it reads the test cases from text files in each repository
instead.
2011-04-27 12:06:01 +02:00
Prasanth Ullattil
574e7e44d3 q3tl.h is copied to qalgorithms autotest directory 2011-04-27 12:06:01 +02:00
Prasanth Ullattil
a3feb69d4c Removed uic3 autotest from qtbase 2011-04-27 12:06:00 +02:00
Liang Qi
7463141773 Make auto test build 2011-04-27 12:05:51 +02:00
Qt by Nokia
38be0d1383 Initial import from the monolithic Qt.
This is the beginning of revision history for this module. If you
want to look at revision history older than this, please refer to the
Qt Git wiki for how to use Git history grafting. At the time of
writing, this wiki is located here:

http://qt.gitorious.org/qt/pages/GitIntroductionWithQt

If you have already performed the grafting and you don't see any
history beyond this commit, try running "git log" with the "--follow"
argument.

Branched from the monolithic repo, Qt master branch, at commit
896db169ea224deb96c59ce8af800d019de63f12
2011-04-27 12:05:43 +02:00