Martin Smith [Wed, 11 Apr 2012 13:25:59 +0000 (15:25 +0200)]
QDoc: Fix no-examples option.
This was accidentally removed in the big change regarding searching in
the internal QDoc tree.
Change-Id: I2496d7497d239f1ec5fbd01be6a918c1ef29fc95
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Martin Smith [Wed, 11 Apr 2012 10:50:22 +0000 (12:50 +0200)]
qdoc: Fixed to report read-only QML properties correctly
Now the default for a QML property is writable. If qdoc
can't detect the actual read-only status, writable is
assumed. There were some cases where qdoc could not
determine the actual read-only/writable status for a
QML property. In these cases, qdoc reported read-only
because the default was read-only, which was not optimal.
Change-Id: I55aeb2bedcde92a414f4d48a8d995e5e9dbca5da
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Konstantin Ritt [Tue, 10 Apr 2012 20:36:21 +0000 (23:36 +0300)]
QChar: optimize some methods a bit for general case
by reordering and regrouping conditions so that they lead to result earlier
in most-common usecases (l.letters, spaces and puncts, u.letters, other);
there are no title cased letters in range [0..127] -> use this in isTitleCase();
test for 0xa0 (nbsp) early in isSpace() as it is quite common in HTML, etc.;
add early test to isNumber().
Change-Id: Ib415f34cb1212d9ccf8753de2d1beaece1aa2243
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Shane Kearns [Fri, 23 Mar 2012 11:01:42 +0000 (11:01 +0000)]
Use windows API to update missing CA roots
Windows ships with a minimal set of CA roots.
When using windows API to verify a certificate, it will fetch the
root certificate from windows update (assuming it is part of the
Microsoft trust program).
As we are using openssl, this does not happen transparently.
If SSL errors occur which indicate a broken chain then attempt
to fix it using the windows API before emitting sslErrors.
If the system CA certs are not in use (a CA bundle has been set
on the socket or as the global configuration), then this is skipped.
This is so an application can continue to use its own cert bundle
rather than trusting the system certs.
Key usage is specified, so that windows will return not trusted
status if the root is not suitable for SSL (server auth or
client auth OID).
Testability:
- to test, must delete the CA cert(s) from the "third party
root certification authorities" section of the cert store
using mmc.exe.
- If the workaround of installing the windows XP cert bundle was
performed, then you also need to delete certs from the "trusted
root certification authorities" section.
This is dangerous, be careful not to delete the required
certificates which are documented on MS website
- Naturally, modifying these areas of the cert store requires
elevated privilege.
Task-number: QTBUG-24827
Change-Id: I5cfe71c8a10595731f6bbbbabaaefa3313496654
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Qt4iOS [Sat, 24 Mar 2012 14:00:56 +0000 (14:00 +0000)]
Modified project files to be iOS compatible.
Removed some MacOS source code files from iOS build. Use unix standard
paths for now (iOS-specific implementation will come later).
Change-Id: I8b2731b431b3a379a1ec4ec07d227e886209e3e9
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Hannu Lyytinen [Wed, 11 Apr 2012 06:41:21 +0000 (09:41 +0300)]
Add support for QPlatformNativeInterface.
Initial bits to enable figuring out the EGL display and context.
Change-Id: I4b578e356dceb40b4456f0590d32c8df1f51fa53
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
Hannu Lyytinen [Tue, 10 Apr 2012 17:29:33 +0000 (20:29 +0300)]
Use correct framebuffer object.
KMS plugin deals with FBO IDs not equal to zero (the default FBO),
so return the correct ID.
Change-Id: I904fc0b8d732f856b4526bd7f73cc48c358c8441
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
Hannu Lyytinen [Tue, 10 Apr 2012 17:10:03 +0000 (20:10 +0300)]
Release the EGL context after initialization.
Threaded applications like qmlscene could not bind the EGL context if
the context is already bound in the other thread.
Change-Id: Ia75ef9e76ebff48aa2c9b348101ab2f388e18c5e
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
Hannu Lyytinen [Tue, 10 Apr 2012 13:12:21 +0000 (16:12 +0300)]
Use the new plugin system in the KMS plugin.
Sync up the KMS QPA plugin with the plugin system changes.
Change-Id: Ifaa8be6f11aeb93acc63643c62ca15db4e9bc38f
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
Jason Barron [Sat, 31 Mar 2012 10:41:00 +0000 (12:41 +0200)]
Change default value of QMAKE_LIBS_OPENGL_ES1 to libGLESv1_CM
The naming convention for these libraries says that libGLES_CM is to be
used when EGL is included while libGLESv1_CM should be used when EGL is
not included. Since we have a seperate variable for libEGL, it
makes sense to have this variable represent the non-EGL version of the
library.
Change-Id: I9147c116da7be4a296a0ebeac39762b46725f10e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Jason McDonald [Tue, 10 Apr 2012 12:39:01 +0000 (22:39 +1000)]
Remove Qt5 to-do comment in qtexthtmlparser.cpp.
The comment relates to a change that is neither source- nor
binary-incompatible, so the change can be done in any minor release.
Task-number: QTBUG-25117
Change-Id: Ifba3ef53241f9bf2504c573066e4cfa5fbfe679e
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Girish Ramakrishnan [Wed, 11 Apr 2012 05:06:48 +0000 (22:06 -0700)]
eglfs: rework hooks design
There are two problems with the current design:
1. if (hooks) hooks->foo() doesn't work in debug mode when no platform hook
is defined. The problem doesn't arise in release mode because the compiler
optimizes away the if (hooks) into a no-op since hooks is NULL when no
platform hook is defined.
2. Adding a new hook requires changing every platform's hook implementation.
New approach:
1. Define QEglFSHooks as a class with virtual functions. A stub file provides
the default implementation.
2. Platform hooks derive from above class and reimplement whatever is needed.
The filenames and variables have been changed to be more in line with the
Qt style.
Change-Id: I2eaaa5ad7c8b48a06361c4747d4f210c428c983f
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Donald Carr [Tue, 10 Apr 2012 17:20:31 +0000 (17:20 +0000)]
Extend eglhooks to include hasCapability
Add BufferQueueingOpenGL to Raspberry PI's numerous capabilities
Change-Id: I1197c28a0c82df3ae2f6d5360791010e17373555
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Christoph Schleifenbaum [Sat, 31 Mar 2012 08:24:52 +0000 (10:24 +0200)]
Add Mac OS X backend for QDesktopServices.
Change-Id: Ie48844ed93385c8aef9ae0765b7a3d26583ed642
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Thorbjørn Lund Martsum [Tue, 10 Apr 2012 06:22:12 +0000 (08:22 +0200)]
QHeaderView - remove some (nearly) unused span functions
This removes a couple of functions. Two of them are unused and the
last one has its (now) very simple implementation inlined in the
only caller. The last function was called something with spans and
we would like to get away from using the word 'span' since we no
longer uses spans.
Change-Id: Icef95166289d52bd958400cba70daceb6fa75913
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Thorbjørn Lund Martsum [Tue, 3 Apr 2012 04:38:48 +0000 (06:38 +0200)]
QHeaderView - rename many spans classes and variables
In (SHA)
b800d8b94a7861ecf8853621f6556fca186fb5b7 the span model
was replaced with a plain section model. The code however still has
variables and classes called someting with spans which would be
confusing for possible new readers of the code.
This patch cleans up most of it. It only renames classes,functions
and variables (and not any semantics or the public API).
Change-Id: I6ceb068c7317223f0d8e37f8032197f518d0174c
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Denis Dzyubenko [Tue, 6 Mar 2012 19:14:25 +0000 (20:14 +0100)]
Fixed syncqt to ignore all lines that define Qt namespace
That includes non-standard macroses for QtAddOns, e.g. for QtJsonDb addon the
macro looks like QT_BEGIN_NAMESPACE_JSONDB - by default syncqt doesn't
recognize the macro and concantenates it with the next line in the header file,
which breaks forward include generation if that next line is the class
definition.
Change-Id: Ia269f8a091113e4951d6a2615ef392b21bd5e3a3
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Aron Rosenberg [Wed, 4 Apr 2012 23:41:27 +0000 (16:41 -0700)]
Automatically query for Mac Proxy Server credentials
Add support for automatically searching the Mac System Preferences
for proxy server username/password. If a user has put credentials
in the SystemPreferences->Network->Interface->Proxies area, we
will now look in the KeyChain for those files. This will
automatically pop up a Permissions dialog from the OS if valid
credentials were found which match the server we are trying to
access.
Task-Number: QTBUG-22033
Change-Id: Ic7952afab4d16a65a87bb2f97a928c1c91167fe7
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Aron Rosenberg [Wed, 4 Apr 2012 23:34:33 +0000 (16:34 -0700)]
Add Proxy Auto Config support (PAC) on Mac
Adds support for fetching and parsing Proxy Auto Config files if one
is specified in the Mac System Preferences
Task-Number: QTBUG-2069
Task-Number: QTIFW-28
Change-Id: I91feb999222187e7467f2c41383904cf0cff8633
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Eskil Abrahamsen Blomfeldt [Tue, 10 Apr 2012 12:30:52 +0000 (14:30 +0200)]
Minor clean up in QTextOption API
Source compatible, but binary incompatible, change to QTextOption
API to make it consistent with Qt's coding style.
Change-Id: I368f13925339fa41025a570f684f4b944844a022
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
José Millán Soto [Sun, 22 Jan 2012 18:48:09 +0000 (19:48 +0100)]
Made qt_accStripAmp handle "&&"
Changed qt_accStripAmp implementation to handle texts which contains
pairs of ampersands representing a single ampersand.
In order to do that, a new static function called qt_accAmpIndex was
created.
This function is based on the code of qt_accHotKey, which was changed
to use qt_accAmpIndex.
Change-Id: Idcc5d07581d7fb3251c30399b189740ca8071104
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
(cherry picked from commit
f864f8f79b88bbc3cc9007d2a92b08ca4b5cb871)
Konstantin Ritt [Sun, 8 Apr 2012 07:18:45 +0000 (10:18 +0300)]
replace hardcoded values with a surrogate handling methods
Change-Id: Iba079953c46a29404232d2dacbe0c90170097d51
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Wed, 4 Apr 2012 23:28:37 +0000 (02:28 +0300)]
minor improvement for NormalizationCorrections
let's don't hardcode the latests affected version value and simply use
the one parsed from NormalizationCorrections.txt
Change-Id: I37021e8238d77deada4c5ba7a2d160c87186b9dd
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Tue, 10 Apr 2012 11:53:42 +0000 (14:53 +0300)]
fix digitValue() returned 0 instead of -1 for invalid ucs4 characters
Task-number: QTBUG-20318
Change-Id: I96c4c2b042bad478b7c704669e7ea0d574d3b22f
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Yuchen Deng [Wed, 4 Apr 2012 00:51:52 +0000 (08:51 +0800)]
Add imports directory to ignore list
Change-Id: Iac2ae46ff606e6c71628ca480ac1b5fe82d9bf4e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Samuli Piippo [Fri, 9 Mar 2012 09:53:45 +0000 (11:53 +0200)]
Fix crash with evaluation license
With QWS, an infinite loop is formed at application startup
when commercial evaluation license is used and QT_EVAL is defined.
Change-Id: If9712428932b51f5c8eee9ef2d0d444da06a25d9
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Samuel Rødal [Mon, 2 Apr 2012 06:48:47 +0000 (08:48 +0200)]
Removed Qt 5 todo comments from qgl.h / qgl_p.h.
No point in changing QGLContext API when QOpenGLContext is meant to
obsolete it.
Task-number: QTBUG-25074
Change-Id: Ie21692c8c402ed9cd6af56bef0175c4e46c3d8a9
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Samuel Rødal [Mon, 2 Apr 2012 06:37:01 +0000 (08:37 +0200)]
Removed Qt5 todo comment in qpaintengineex_p.h
This won't get done for Qt 5, and QtOpenGL still implements this API.
Task-number: QTBUG-25069
Change-Id: Ia8437d2a4a5a0e750afdf67764c53d75ee8065f6
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Jason McDonald [Mon, 2 Apr 2012 12:17:36 +0000 (22:17 +1000)]
Bump some Qt 5 to-do's to Qt 6.
Source-incompatible changes are no longer desirable for Qt 5, so these
items must wait until at least Qt 6.
Task-number: QTBUG-23524
Change-Id: I0b9ae5f6f3a792e0169a4b0d3aefbdcb744acd2f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Jan-Arve Saether [Tue, 10 Apr 2012 12:52:21 +0000 (14:52 +0200)]
Add missing virtual destructor.
Change-Id: I94ac82ad4771b2b4c36ac24cc412fa43a0d77afb
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Mark Brand [Tue, 10 Apr 2012 14:29:02 +0000 (16:29 +0200)]
fix mingw detection
Change-Id: I7eb78ebd79bfc1be36cc43a1f41f4e574b063aed
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Girish Ramakrishnan [Fri, 6 Apr 2012 08:05:45 +0000 (01:05 -0700)]
Save configuration feedback into config.summary
Scrolling the configure output to locate the build configuration
is painful. So save it in config.summary.
Change-Id: I40a2f7628e9a2b91a8ea44619dd49c00d5a61561
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Konstantin Ritt [Tue, 10 Apr 2012 11:56:08 +0000 (14:56 +0300)]
remove CODEC_FOR_C_STRINGS leftovers
Change-Id: Iaafb945882e3f6ad6d39f7eefb62b83ff50a9ba8
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Olivier Goffart [Mon, 9 Apr 2012 12:20:09 +0000 (14:20 +0200)]
Document QEvent::ThreadChange
That event is mentioned in the documentation of QObject::moveToThread,
but not in the documentation of QEvent::Type
Task-number: QTBUG-16787
Change-Id: Iab769307d3de54881a82e59bed63b3831a3ffb29
Reviewed-by: Geir Vattekar <geir.vattekar@nokia.com>
Jason McDonald [Tue, 10 Apr 2012 11:56:45 +0000 (21:56 +1000)]
Remove Qt5 to-do comments in qtextformat.cpp.
These won't be done for Qt 5.0 and to-do tasks really belong in a
bug-tracker not in the code.
Task-number: QTBUG-25072
Change-Id: Ife4ff148167e0f0c66a58233548f4011b0b10784
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Miikka Heikkinen [Fri, 30 Mar 2012 11:23:36 +0000 (14:23 +0300)]
Make it possible to enable non-scalable font scaling
Windows native font engine supports scaling of non-scalalble fonts, so
make it possible to do so.
Added two functions to QPlatformFontDatabase: fontsAlwaysScalable() and
standardSizes(), and made fontsAlwaysScalable() to return true for
Windows native font database.
Windows Freetype font engine doesn't seem to support scaling of
non-scalable fonts, so didn't enable it in there.
Added implementation of standardSizes() for Mac OS.
Task-number: QTBUG-24970
Change-Id: I41c9356ede8a37b7c61db94340dbeb5b629f34b9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Pierre Rossi [Thu, 22 Mar 2012 16:12:32 +0000 (17:12 +0100)]
Don't hardcode the default families in qfont_qpa.cpp
Since different platforms come with different fonts, we should
probably leave it up to the platform to decide which family to use.
Change-Id: I18bb81c0ce87cc7e9ac7f3abaeae1b41c0ce8410
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Andrew den Exter [Wed, 4 Apr 2012 05:34:09 +0000 (15:34 +1000)]
Fix crash with invalid pre-edit position.
Ensure the script item position is within the bounds of the text block
when adjusted to compensate for pre-edit text.
Change-Id: I2c745bf08afc0d9bc3aba27c24c2a123af017dc6
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Girish Ramakrishnan [Mon, 9 Apr 2012 23:52:02 +0000 (16:52 -0700)]
Remove unused signal QWindow::backBufferReady
backBufferReady is not used anywhere
Change-Id: Ic5c8f6a89e031b3bd757b03f60737d55be969ee5
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Rafael Roquetto [Fri, 30 Mar 2012 12:16:55 +0000 (14:16 +0200)]
Blackberry OS implementation of QStandardPaths
Change-Id: I31427b896ca691de7071da17af4863d16348df7b
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Andy Nichols [Sun, 8 Apr 2012 13:50:02 +0000 (15:50 +0200)]
Fixed build issue when using GLEW with MSVC
MSVC does not support the #warning precompiler command and
is considered an error when used. This change checks for
GCC before issuing the warning.
Change-Id: Iee1e27841fe77b0289e88b7b4ccaa176ab56a39d
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Girish Ramakrishnan [Thu, 29 Mar 2012 20:41:06 +0000 (13:41 -0700)]
eglfs: Implement xlib based hook for testing
Add a hook implementation for X11 using xlib. This is primarily for testing.
xcb is not used since the x11/egl-mesa integration appears to be done through
xlib.
Currently, there is no input mechanism. The size can be adjusted using
EGLFS_X11_SIZE environment variable.
Change-Id: Ifcfbfd958d9d110d94e22f04dfad1f6c29818103
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Donald Carr [Fri, 6 Apr 2012 20:31:04 +0000 (20:31 +0000)]
Remove QWS era pvr headers
The QWS powervr plugin ceased to exist with the move to QPA; these headers
are therefore entirely redundant
Change-Id: I28c7baae15df5bb9d7ea3763e3a018e9e1ae1fc6
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Girish Ramakrishnan [Mon, 9 Apr 2012 22:22:07 +0000 (15:22 -0700)]
Fix header inclusion guards
The inclusion guards refer to the old graphics system code
Change-Id: Ifa72e3030c83797e471735a9a696bf12c0f75b08
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Girish Ramakrishnan [Mon, 9 Apr 2012 22:08:18 +0000 (15:08 -0700)]
Fix constness of QPlatformCursorImage::hostpot()
QPlatformCursorImage::hotspot() should be const.
Change-Id: I2b517098e75b013947386a5a620a15dc48e76cec
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Marc Mutz [Fri, 30 Mar 2012 12:09:15 +0000 (14:09 +0200)]
QTypeInfo: document Q_PRIMITIVE_TYPE existing practice
Despite the documentation requiring Q_PRIMITIVE_TYPEs to
be PODs, existing practice in Qt (QFixed, QFlags, QUuid)
is to allow constructors on primitive types as long as
every bit pattern represents a valid object (ie. memory
doesn't have to be initialised to hold an object of the
type) and memcpy() can be used to create an independent
copy of the object (memcpy()ing QString, e.g., while
creating two valid objects, doesn't create independent
copies).
Change-Id: Ia85d48b89f6cc84e69ea76719eab9a858d247ad6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Sean Harmer [Thu, 5 Apr 2012 15:46:18 +0000 (16:46 +0100)]
Moving stack-smashing protection to the Blackberry mkspecs
It transpires that QNX 6.5.0 does not yet have libc support for the
gcc stack smashing protection.
Change-Id: Ic635662b6aa3ce2fad5f69e236386ae9ace420db
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Debao Zhang [Thu, 5 Apr 2012 03:26:31 +0000 (20:26 -0700)]
Fix compilation with MinGW-W64.
These types and values and been defined propsys.h from MinGW-W64
Version2 on.
Change-Id: If74b7cf07a0fce414009c86519494a782508d8fe
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Friedemann Kleint [Thu, 5 Apr 2012 14:40:11 +0000 (16:40 +0200)]
Windows: Send empty region in expose event from setVisible(false).
Fixing a crash in tst_qwidget.cpp, trying to redraw on destroying
the platform window.
Change-Id: I6b6e9a063a1c72dff8110c379f8392605aadbdd6
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Joerg Bornemann [Wed, 4 Apr 2012 16:27:24 +0000 (18:27 +0200)]
qmake vcxproj generator: properly escape XML attributes
Task-number: QTBUG-24954
Change-Id: I21299440ba3f268c2fa1e14d37003cdc3e6a35ad
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Shane Kearns [Wed, 28 Mar 2012 15:06:57 +0000 (16:06 +0100)]
Find libssl on linux using paths of loaded libraries
The installed path of libssl may include an element describing the
architecture, e.g. x86_64-linux-gnu or i386-linux-gnu.
In most cases, the libraries already loaded (static dependencies of
Qt, such as libc) will include the path where libssl is installed.
Use dl_iterate_phdr to find the paths. This is a linux specific
function, but it does provide "/lib/<arch>" and "/usr/lib/<arch>"
at the point ssl symbols are being resolved when running the
qsslsocket autotest (which has less dependencies than a typical
Qt app).
Task-number: QTBUG-24694
Change-Id: I9af8081f41bb85c2fcff450a2acda5672a7f7518
Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
Friedemann Kleint [Tue, 27 Mar 2012 15:05:53 +0000 (17:05 +0200)]
Windows: Use native font engine by default.
Turn around the meaning of the command line parameter.
The FreeType engine can now be activated by passing freetype.
Change-Id: I9da6cd4a127603f9cfb91f0ce8450088c0883faa
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Pekka Vuorela [Tue, 3 Apr 2012 15:49:23 +0000 (18:49 +0300)]
Include with qt module to avoid configure warning
Change-Id: I8d338f22c4b0dabcca33878b33c6a203828d84c5
Reviewed-by: David Faure <faure@kde.org>
Charles Yin [Wed, 4 Apr 2012 01:59:39 +0000 (11:59 +1000)]
Fixed an exit crash that could occur in QQuickPixmap.
The global destructor for the clean up hooks might be called before the
global destructor for QQuickPixmapCache objects.
This is an additional fix for QTBUG-8681
Task-number: QTBUG-8681
Change-Id: I8694a7a246980f488aef78071c613e3a908c7db3
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Donald Carr [Mon, 2 Apr 2012 18:10:49 +0000 (18:10 +0000)]
Specify generic QPA plugins via env variables
Introduce a mechanism to load comma separated generic QPA plugins via
exported environment variables. (Drastically simplifies QPA usage in custom
environments where a variety of plugins could be used and heuristics are
consequently a poor fit)
Change-Id: I292f3fbfc8b8ad2b4f416984ef0a10b9b59de531
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Bradley T. Hughes [Wed, 4 Apr 2012 10:16:40 +0000 (12:16 +0200)]
Don't ignore tst_QWindow on Mac OS X
QTBUG-23059 only affects 2 test functions, not the whole test. XFAIL the
2 failing tests.
Change-Id: I87086a9ec573362625bc090038dfd7c79aeb9426
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Donald Carr [Wed, 28 Mar 2012 19:23:50 +0000 (19:23 +0000)]
device: Add device support for the Broadcom Raspberry PI
Add mkspec for the Raspberry PI platform to be used in conjunction with the
-device support in configure. This allows you to build Qt with the
application libraries provided by the Raspberry PI foundation.
The Raspberry PI is described here:
http://en.wikipedia.org/wiki/Raspberry_Pi
and its use with Qt is documented here:
http://wiki.qt-project.org/Devices/RaspberryPi
Change-Id: Ib8d11d0a469edaaf34ccc04cf33a42a725fc2bdb
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Stephen Kelly [Wed, 4 Apr 2012 12:33:25 +0000 (14:33 +0200)]
Change the parameter name of the mutex in a QWaitCondition.
IDEs pick up hints like this, so it makes it more clear to the user
what they need to pass in.
Change-Id: I5de272395fc98391cf43963ce4416a845726bb2c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Stephen Kelly [Tue, 3 Apr 2012 17:32:12 +0000 (19:32 +0200)]
Revert "Make the CONFIG and QT_CONFIG contents available downstream."
This reverts commit
6c2e57e6884c1ef524bb22f0ed6a2be2c97cd46d.
This created variables with awkward names and unproven usefulness.
In the FindQt4.cmake file they are considered internal.
Change-Id: I51443b2a39d4f11817bd13332baf025556dd8ebe
Reviewed-by: Clinton Stimpson <clinton@elemtech.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Friedemann Kleint [Wed, 4 Apr 2012 12:56:45 +0000 (14:56 +0200)]
Windows Vista: Fix painting of item view items.
The old QWidget-based treeViewHelper() function silently failed
since the widget no longer had a HWND.
Use a native Window handle instead.
Change-Id: I6902677c565bb165f29b9d1c6fd0d28d9870d567
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Friedemann Kleint [Wed, 4 Apr 2012 12:02:27 +0000 (14:02 +0200)]
Windows: Replace QString keys of XP themes by an enumeration.
Change-Id: I5323e9ed5bc3fe73f278d167acae6fa744b0a299
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Thiago Macieira [Mon, 2 Apr 2012 18:25:29 +0000 (15:25 -0300)]
Update the documentation about the sign in QElapsedTimer::(m)secsTo
Since all implementations calculate other - *this, if other has a higher
value (was started later), then the returned value is positive.
The implementations are:
generic: return other.t1 - t1
win: return ticksToNanoseconds(other.t1 - t1) / 1000000
mac: return absoluteToMSecs(other.t1 - t1);
unix: return (other.t1 - t1) * Q_INT64_C(1000) + fraction...
Task-number: QTBUG-25128
Change-Id: Iff0a3460ae9e9d9bdd82fbaad55657fb60e5235a
Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Stephen Kelly [Wed, 4 Apr 2012 12:29:48 +0000 (14:29 +0200)]
Make sure we create an application before a QWidget.
Change-Id: I2e48f9ca59df62ac28d3cecdb6c2b741c59075de
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Girish Ramakrishnan [Fri, 16 Mar 2012 23:52:39 +0000 (16:52 -0700)]
eglfs: Introduce hooks for the eglfs plugin
EGL provides an api to create a rendering context for khronos APIs
on native surfaces. The board initialization and window creation
is platform specific.
This commit adds platform hooks/extensions to the EGLFS plugin and
implements them for the Amlogic 8726M. The hook interface is internal
and there are no ABI/API guarantees.
EGLFS is now linked with -Wl,-no-undefined to make sure that a hook does not
add unresolvable symbols.
Change-Id: I7f4fcdb422aacbf00de468f4d8e85ae5368bfacf
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Friedemann Kleint [Wed, 4 Apr 2012 09:55:24 +0000 (11:55 +0200)]
Windows: Fix menu color for Windows, WindowsXP.
Typo in palette.
Change-Id: I8b4c23ef7f75ff3aa3351f15e4af0767a3ccd083
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Bradley T. Hughes [Wed, 4 Apr 2012 10:11:40 +0000 (12:11 +0200)]
Add tst_QWindow::windowModality()
This tests that we get the windowModalityChanged() signal as needed, but
not unnecessarily either.
Change-Id: I2232fa9d45c72e472b324b681859b4b0d574b467
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Jason McDonald [Mon, 2 Apr 2012 13:03:57 +0000 (23:03 +1000)]
Remove/update Qt 5 to-do's that won't be done for Qt 5.
Task-number: QTBUG-23524
Change-Id: Iebf5b78dc2ff27310b5a484bae588862417f693c
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Kevin Krammer [Wed, 4 Apr 2012 09:17:17 +0000 (11:17 +0200)]
Re-enable PPS based rotation handling for blackberry devices
BPS based event handling not there yet, so make use of the non-blackberry QNX
facility until it is.
Change-Id: I95cdbfbe36cd23e71710c8cad0b292a5a375c214
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Bradley T. Hughes [Fri, 30 Mar 2012 08:01:14 +0000 (10:01 +0200)]
printing: Make sure window modality works with native print dialogs
Make the native QPrintDialogs and QPageSetupDialogs participate in the
Qt modality system. Even though we are overriding QDialog::setVisible()
and exec() to show the native dialgos, we want to still call into
QDialog::setVisible() so that modality state and events are properly
handled. We do this by setting the WA_DontShowOnScreen attribute on
QPrintDialog and QPageSetupDialog, and call QDialog::setVisible() at the
appropriate places.
Change-Id: I7d800790c40ba1f467c3315e29abb79a7fa0eb34
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Rafael Roquetto [Fri, 30 Mar 2012 13:31:44 +0000 (15:31 +0200)]
Moved 'qnx' CONFIG definition to common location.
Removed the duplicated 'qnx' CONFIG defition from the mkspecs and declared it
on the common qcc-base-qnx.conf configuration file.
Change-Id: Ie215e3dd794762f20bec9c19afd5936a78a9d963
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Samuel Rødal [Mon, 2 Apr 2012 07:28:49 +0000 (09:28 +0200)]
Removed Qt 5 todo comments from qpalette.h
The removal won't happen in Qt 5, and there's no great value in making
NoRole have the value 0 at the potential risk of breaking existing code.
Task-number: QTBUG-25068
Change-Id: I57238f55a23e77a783ebac47b96b4a5e62480add
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Sean Harmer [Mon, 2 Apr 2012 10:37:59 +0000 (11:37 +0100)]
Enable stack smashing protection on QNX and Blackberry platforms
Change-Id: I2610c8e446a74ee584c5b450e1b872b7cda50813
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Pekka Vuorela [Tue, 3 Apr 2012 14:01:12 +0000 (17:01 +0300)]
Pass autorepeat info to input context key filtering with XCB
Change-Id: Ifbb658dde6689543f48ed8fb82109ea07bcf8bd7
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Jason McDonald [Mon, 2 Apr 2012 12:51:03 +0000 (22:51 +1000)]
Remove duplicate non-const methods from QProgressBar.
Task-number: QTBUG-23524
Change-Id: I80f7eecb9f892fcd026b3c3f9159958fc99cfe23
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Friedemann Kleint [Tue, 3 Apr 2012 07:40:36 +0000 (09:40 +0200)]
Fix warnings about signed/unsigned comparisons in QtJson.
Change-Id: I92071ea870bf0ebb740fcb360aff19658380a0cd
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Friedemann Kleint [Tue, 3 Apr 2012 07:37:13 +0000 (09:37 +0200)]
Fix warnings about unused variables.
Fix MSVC warnings about unused q, d where only static functions
are used.
Change-Id: I239d6fc3c851b0a62434cb09fc0e1967f2e6d031
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Friedemann Kleint [Tue, 3 Apr 2012 07:43:05 +0000 (09:43 +0200)]
Fix warnings about truncations in constants.
Change-Id: I46872c5b2866454112092c1ec5efbfe15db5af33
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Kevin Krammer [Tue, 3 Apr 2012 14:11:30 +0000 (16:11 +0200)]
Fixing the QNX QPA build for non blackberry targets
Change-Id: I3d0bb33cadae946d21f8b2566840be9b1ae5101a
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Thomas McGuire [Mon, 2 Apr 2012 10:03:46 +0000 (12:03 +0200)]
Delete the screen event handler after its last user.
Change-Id: I2e3c6d08c0dcdd4b954570e9a2198c190c8fffd2
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Bradley T. Hughes [Wed, 28 Mar 2012 09:36:10 +0000 (11:36 +0200)]
QWindow: add windowModality as a Q_PROPERTY()
This also adds the QWindow::windowModalityChanged() signal.
Change-Id: I6e3bc3155d72811d173857c39d36dcb264928334
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Friedemann Kleint [Tue, 3 Apr 2012 12:11:17 +0000 (14:11 +0200)]
WindowsXP: Fix Item view alternate color being black.
The theme palette needs to be initialized by the standard palette.
Change-Id: I91c2ac9aea122e6ed9c09c96b35dfe0ef18a3ca0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Eskil Abrahamsen Blomfeldt [Fri, 23 Mar 2012 13:39:34 +0000 (14:39 +0100)]
Make API in QPlatformSharedGraphicsCache a little more generic
Use EGL extensions for some things to allow serialization
instead of the somewhat specialized serializeBuffer() function.
Change-Id: I8d15e85bfb80d12fa953ba094564ddfca1aa6d6a
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Martin Smith [Tue, 3 Apr 2012 08:17:16 +0000 (10:17 +0200)]
qdoc: findNodeRecursive() was called with a null start node
This occurred in several places. They have
all been corrected to start at the tree root,
when the start node passed is null.
Task nr: QTBUG-25146
Change-Id: I5d75db0626451d30e8be8de5605036ba168f2a14
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Shane [Wed, 14 Mar 2012 13:22:01 +0000 (13:22 +0000)]
Don't require exact IMAP server version in autotests
The string from the server should begin with "* OK" and end
with "\r\n" according to the IMAP specification.
Still have a check for "server ready" as this does not change between
cyrus versions.
Change-Id: Ia01ed8aa054e5726bba8b411d30edc6205cc8465
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Thierry [Wed, 28 Mar 2012 18:09:20 +0000 (20:09 +0200)]
Fixes a problem with the proxy detection on Windows
The current scheme is to use IE's default config.
If that fails get the winhttp config.
That's ok. The problem is that if you run a program as a service
getting the IE config will set the fAutoDetect flag.
But later the call to WinHttpGetProxyForUrl mightfail with the
error code ERROR_WINHTTP_AUTODETECTION_FAILED.
this patch just makes sure that we have a fallback winhttp solution
in case the IE proxy is not set.
The new code detcted if the current process is a service, in which case it
will try to default to the system-wide proxy.
Change-Id: I57e9082a46a8422c54f8f069715752c271a3a001
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Kevin Krammer [Tue, 3 Apr 2012 09:15:39 +0000 (11:15 +0200)]
Move handling of rotation changes from event handler to screen
Have the navigator event handler emit the new rotation as a signal argument
and let the screen class handle all parts of the change, i.e. also notifying
the window system about the geometry change.
This also allows to rotate all screens, not just the primary screen, if this
should be necessary.
Change-Id: I304a80232b84d2d9130e38e955d5a75b1ccad775
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Shawn Rutledge [Fri, 23 Mar 2012 10:25:54 +0000 (11:25 +0100)]
Corrected filenames to build on case-sensitive Mac filesystems
Change-Id: Ie6f0188e3b2140b80b444dfdf24a078d215e0e87
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
Pekka Vuorela [Thu, 29 Mar 2012 13:40:10 +0000 (16:40 +0300)]
Adapt Maliit input context to new input method interfaces
Change-Id: Ia395dbb1689d1c37ef588c49cbb55ad1979f532f
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Thomas McGuire [Mon, 2 Apr 2012 11:37:12 +0000 (13:37 +0200)]
Rename offset() to setOffset()
Change-Id: Iacf7b0a7f3cb3745711fe646e14317be1711d891
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Thomas McGuire [Mon, 2 Apr 2012 10:04:53 +0000 (12:04 +0200)]
Fix adding and removing of windows to their screen
Change-Id: I5e0edf1515db60689c86b16b978863ae9e49bfdb
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Thomas McGuire [Mon, 2 Apr 2012 09:19:05 +0000 (11:19 +0200)]
Get rid of false positive warning when stopping video playback
The multimedia library actually creates two windows, and therefore the
first call to updateHierarchy() would try to update the z-order of
a no longer existing window.
Change-Id: I499d049e2885ff848f38d9cc5880aa63235b1b4c
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Thomas McGuire [Thu, 29 Mar 2012 15:05:14 +0000 (17:05 +0200)]
Fix indentation
Change-Id: I965e7ba2e20798966a8215427e6724e3666aaeea
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Friedemann Kleint [Tue, 3 Apr 2012 07:43:34 +0000 (09:43 +0200)]
Fix release mode warnings about unused variables.
Variables that are only used in asserts.
Change-Id: I0984b676ad9b67f5ae72266b8540e8054163918f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Jerome Pasion [Tue, 3 Apr 2012 08:50:43 +0000 (10:50 +0200)]
QDoc documentation: modified the instructions for documenting signals.
-we document signals, not signal handlers.
Change-Id: I7d52223a393ff0530ead06dfb8a80479e34fd362
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Donald Carr [Fri, 30 Mar 2012 18:20:34 +0000 (18:20 +0000)]
Don't suppress using separate debug info when cross compiling
The configure script currently automatically assumes that if you are cross
compiling, we should avoid trying to generate and strip separate debug
information due to toolchain limitations.
Historically there may have been good grounds for this, but it seems like
an aggressively pessimistic assumption which ignores the
standardization/advancement of embedded toolchains as a whole.
This assumption also extends to host compilers which deviate from the
automatically detected "platform" compiler, such as Clang.
Change-Id: Ifed2750325178bb5291d8ca1dde92925bfa36065
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Jiang Jiang [Fri, 30 Mar 2012 13:01:12 +0000 (15:01 +0200)]
Rename clip() to clipData() to avoid confusion and warning
There are already a bunch of clip() functions in this class.
Rename the one for returning clip data to clipData() to make
it clearer. It also eliminate a warning when compiling with
clang.
Change-Id: I1f890ad6bf1c0274a0b38b3116a3ec3d2957d44a
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Wolfgang Beck [Mon, 16 Jan 2012 07:45:23 +0000 (17:45 +1000)]
Prepare category logging for Qt integration
Change-Id: I0c784a945fe87d7ba52a44f5c7246de1709ae888
Reviewed-by: Lincoln Ramsay <lincoln.ramsay@nokia.com>
Reviewed-by: Peter Yard <peter.yard@nokia.com>
Reviewed-by: Alex <alex.blasche@nokia.com>
Mark Brand [Mon, 2 Apr 2012 20:13:11 +0000 (22:13 +0200)]
add change log entry for QTBUG-23895
Follow-up to
50ad785bdd38fcff9c47125fc545762435aaa158
Change-Id: Ib44a274148631fe96e13b8fe29436b556c14d34d
Reviewed-by: Honglei Zhang <honglei.zhang@nokia.com>
Miikka Heikkinen [Fri, 30 Mar 2012 11:51:42 +0000 (14:51 +0300)]
Windows: Improve Freetype font database registry check for fonts
Some non-scalable fonts like "Courier" list some numbers after the font
name in Windows registry, e.g. "Courier 10,12,15". These are not part
of the font name and therefore confused the algorithm looking for font
files. Improved the algorithm to ignore this kind of number list.
Single numbers are still expected to be part of the font name.
Task-number: QTBUG-24970
Change-Id: I3fe45b798f44bee962e5b3aa748fc4717f723353
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Pierre Rossi [Fri, 30 Mar 2012 20:33:05 +0000 (22:33 +0200)]
Return early in QRawFont::setPixelSize.
We would otherwise end up cloning the font engine for absolutely no
reason when the pixel size is already right.
Change-Id: I8c34d2b53b596ad49d00031a3fb8e79f3b30d591
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>