Commit Graph

17931 Commits

Author SHA1 Message Date
Kalle Viironen
ebcb5c176f Externalize license key handling from configure
Enterprise only license key handling removed from configure.
This does not affect the functionality of the Open Source version nor
the enterprise version.

Change-Id: I01736eba3066c56b6e50e022fae8de6aa9bd884b
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-03-25 12:50:28 +01:00
Laszlo Agocs
dd1220651c eglfs: Avoid double surfaceFormatFor() calls
The hooks' surfaceFormatFor() function is called twice on the format
when creating platform contexts, once from the integration and once
from the constructor. This is potentially dangerous. Do it only once.

Change-Id: I58eadce01b8f2183abe116f88b1ee9f2b47c003d
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2014-03-25 12:50:25 +01:00
Mitch Curtis
895fa0de79 Fix grammar in QFontInfo::styleName() doc.
Change-Id: I673ecc8931f4824dc4fb923056354cfd2e119e40
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2014-03-25 12:49:17 +01:00
Laszlo Agocs
f65a0b6e3f Update evdevtouch readme
Removed/updated some out of date information.

Change-Id: Iec2105f15c83f04dafbed15a9600e3de0e03f0de
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2014-03-25 12:45:08 +01:00
Shawn Rutledge
a6bf169479 OSX: make reported window state consistent with reality
You can't always get what you want: if you exit from fullscreen
mode via showNormal, it might actually be maximized; or if you exit
via showMaximized, it might actually be normal, if that's the mode the
NSWindow remembers.  We can't set the state, we can only toggle it.
But now at least it's predictable, so that if you call showNormal
or showMaximized twice, you will definitely get back to that state.

Task-number: QTBUG-35166
Change-Id: I7422960a64f624920566c25763f5c3b03a684fb5
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2014-03-25 12:44:54 +01:00
Jędrzej Nowacki
ce8271ce05 Remove useless Q_NO_DECLARED_NOT_DEFINED flag
The flag is used only in qstring.h and gives no real value.

Task-number: QTBUG-37437

Change-Id: I7513b56af208a5edee8452b8bbcb9b128e25133d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-25 12:43:23 +01:00
Oliver Wolff
305907ecfa WinPhone: Install DejaVu ttf fonts into Qt
As these fonts are deployed as part of the package for WinPhone projects
by default they have to be installed in order to be available in the
packages.

Change-Id: Iaaca7b7db0525f06d3e1716d5a337550ffb1dea9
Reviewed-by: Andrew Knight <andrew.knight@digia.com>
2014-03-25 08:05:21 +01:00
Oliver Wolff
63de1350c2 winphone: deploy default font files as DirectWrite is not supported
For Visual Studio we can add the fonts we want to deploy to the
project file by using the DEPLOYMENT variable.

Change-Id: Ifc87a12a2bb4ec4ff1c0a8dc8f0b1fbf37e4e513
Reviewed-by: Andrew Knight <andrew.knight@digia.com>
2014-03-25 08:05:21 +01:00
BogDan Vatra
6cf7c3212f Set default activity launchMode to singleInstance
This attriute is needed otherwise if the user puts the application in
background and uses the appication icon to bring it back in front,
andriod will create a new activity.

Task-number: QTBUG-37186
Change-Id: Icdc87239c1a07a3e555296692a4866eb6351348e
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2014-03-25 06:00:57 +01:00
Konstantin Ritt
d1778a26a3 [HarfBuzz-NG] Optimize Unicode de-/composition callbacks
Use QStringIterator instead of QString::toUcs4() and escape earlier.

Change-Id: If80b886bece1a43af7078e8cdc9c31babf602731
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-25 03:46:21 +01:00
Samuel Gaist
742ef8fa79 Implement DownloadLocation retrieving using SHGetKnownFolderPath
This patch implements the TODO concerning the retrieval of
DownloadLocation using SHGetKnownFolderPath

[ChangeLog][QtCore][Windows] Now QStandardPaths::DownloadLocation
returns the proper path for Windows Vista and up

Task-number: QTBUG-35194
Change-Id: Ifc7686e23de76dbfd7826a75e4bf99aa5b9268b0
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2014-03-25 00:00:23 +01:00
John Layt
d48db922d4 QPrintDialog - Add more options to manual test
Add all the available QPrinter options to the QPrintDialog manual test
to allow for testing presets.

Change-Id: Ia6394094fc9920da0d6c645793d51650404899d8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-03-25 00:00:23 +01:00
John Layt
dbb6b58abe QPrintDialog - Convert manual test to .ui file
Convert the manual print dialogs test to use a ui file as subsequent
changes will add a lot more widgets.

Change-Id: I06ac54b67532f0eea1e91a2d9aca4f587d2fa332
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-03-25 00:00:23 +01:00
Giuseppe D'Angelo
225a5b4787 Do not use -Bsymbolic* on anything but x86 and x86-64
We're getting problems with PMF comparisons failing on ARM and PPC,
which in turn break the new PMF-based connect syntax.
Dropping -Bsymbolic* seems to work around the issue (which has
been reported upstream, and it's likely to be a linker issue,
see the discussion in the bug report).

Task-number: QTBUG-36129
Change-Id: I8675a57acf26fdb9fbbc4d03896d5f6a9a96d506
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-03-25 00:00:23 +01:00
Sergio Ahumada
cd8e11ed41 Doc: Fix warning about nonexistent 'message' parameter
Change-Id: I3461f2468ef90452ae7e3830625bf3ed57d22a41
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-03-25 00:00:23 +01:00
Konstantin Ritt
48679a3748 Fix tst_QTextScriptEngine failures on some platforms
The text shaping process has been unified for all platforms.

Task-number: QTBUG-23064
Task-number: QTBUG-24565
Task-number: QTBUG-26495

Change-Id: Ida4c4be85f1a72c04399d2e6760fa36b33a0464e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-24 21:37:31 +01:00
Friedemann Kleint
3ed2ec1487 Fix some documentation errors.
Correct links and fix typos, remove obsolete documentation,
fix some snippets, mark some classes as internal.

Change-Id: I9a3266605f060783413d32740057a57a820c8929
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-03-24 16:42:02 +01:00
Fabian Bumberger
21f1738a94 QNX: Fix sending of expose events
When the window geometry is changed an expose event should only be sent
if the window is visible.

Change-Id: I540ea7e7e07d896495547f3f8bf81738fad3ddee
Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
2014-03-23 17:02:42 +01:00
Allan Sandfeld Jensen
c2c136306d Apply fontconfig settings to custom fonts
Currently QtWebKits custom fonts does not follow the system settings
on Linux. This is because they are only handled by the basic
fontdatabase.

This patch adds handling of custom fonts to QFontconfigDatabase.

Change-Id: I676fc97840766b58cd937bb8e2c9f166f30c8a6e
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
2014-03-22 12:56:06 +01:00
J-P Nurmi
ecf6aa2dca configure: Disable XCB auto-detection on Mac
Users might have (old) libxcb installed on OS X, for instance as
a dependency for another package installed via MacPorts. It's still
very unlikely that any Mac user would want to use the XCB platform
plugin. Thus, disable the auto-detection to avoid a dubious XCB
configuration error on Mac.

Change-Id: I11d21aad255925883d6841444baa13a29f1a26b0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
2014-03-22 12:56:06 +01:00
BogDan Vatra
a30676f201 Fix crash: make sure functions pointer is initialized.
Change-Id: I42fd3933f33370612290e8ba252349acfae72381
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-03-22 10:55:56 +01:00
Andrew Knight
0afe3c7ee3 Windows Phone: Remove QT_NO_CURSOR
This define causes source incompatibilities in QML applications, as it
results in removal of properties from e.g. MouseArea. The default (null)
cursor implementation which will now be active should cause negligible
overhead with this define removed.

Change-Id: I8ee78e084cb95b4c73782a3a831f0672ba230b19
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2014-03-21 23:13:23 +01:00
Andrew Knight
2c26f9a39f Windows Phone: Remove ws2_32.lib dependency
We no longer require this library, so remove it from the linker list.

Change-Id: Ic211f8f6d954eddce8818807619962ad009be117
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
2014-03-21 23:13:23 +01:00
Shawn Rutledge
efcfa0b252 QGuiApplication: send TouchCancel when touch is interrupted by popup
QQuickWindow depends on maintaining state of known touch points
between events, so it needs to be notified when it will not be
receiving the corresponding release event for one or more.
This temporary fix needs to be reverted when we have a proper
event forwarding solution.

Task-number: QTBUG-37371

Change-Id: I5dc40af6feac425be8103c1586f8ebe3a6aad20d
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2014-03-21 21:08:27 +01:00
Michael Brüning
584088f200 Initialize the picpainter State in the QAlphaPaintEngine.
Patch by John Layt.

Analog to how the print preview problems on windows were fixed, this
is needed to correctly print e.g. web view contents.

Task-number: QTBUG-36308
Task-number: QTBUG-37240
Change-Id: If4ecffde969ed221bbbeea80232f29f095fd71cd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: John Layt <jlayt@kde.org>
2014-03-21 21:08:27 +01:00
Eskil Abrahamsen Blomfeldt
523d1c54e4 REG: Fix compilation with old AndroidManifest.xml
For apps created with Qt 5.2.1, the AndroidManifest.xml will
contain a reference to android.app.splash_screen, which was
removed from the application template when the splash screen
functionality was fixed by 4d08d80be6.

To make sure existing apps still compile, we put back a dummy
splash.xml so that the reference in existing manifests still
work. If this splash screen was actually used for something,
it will no longer show up, so we also need to document that people
should update their AndroidManifest.xml to the new system, but
we can't inform people via mysterious compilation failures :)

Task-number: QTBUG-37493
Change-Id: I6289f9b5e2c315fa6db502cbde27bd18e15f1f8d
Reviewed-by: Christian Stromme <christian.stromme@digia.com>
2014-03-21 18:49:06 +01:00
Friedemann Kleint
374d0a0b8c Remove manual test qpainfo, which is superseded by the qtdiag tool.
Change-Id: Ibd6e8fc05495f6eb2adca22072df19530766858a
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-03-21 18:34:43 +01:00
Friedemann Kleint
045e20b32f Fix qdoc warnings in QMargins, QRect.
Change-Id: Iae2486e1f335679c288e05f45e2d283a7cf971c0
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2014-03-21 18:33:43 +01:00
Gabriel de Dietrich
e7816e987e QPA: Fix QPlatformTheme::Palette enum value spelling
We keep the old value for source compatibility, but it should
probably be removed at some point as the QPA API is semi-public
only.

Change-Id: I06e4c9ca1d8bb878411ad79ef409d60ce2d29f4a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-03-21 18:02:20 +01:00
Gabriel de Dietrich
9637b5f7f0 Mac theming: Remove obsolete private color conversion functions
Change-Id: I165eea19c8e50f981a9fa48c14f0d63c40951747
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2014-03-21 18:02:15 +01:00
Gabriel de Dietrich
b145c1db00 Mac theming: Set background brush for menu palette
We also remove overriding the background when polishing the palette
in QMacStyle. This is a leftover from pre-10.5 styling.

Change-Id: Icaa6d9c864ab01783d83cc02192981136c417d24
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2014-03-21 18:02:10 +01:00
Fabian Bumberger
9379dd9410 QNX: Fix crash in bb_select
Change-Id: Ic1a414c9d89b790ed9fb9f5c989b6018de78b465
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-03-21 17:56:02 +01:00
Fabian Bumberger
70624ed9d6 QNX: Fix QGraphicsItem autotest
Change-Id: I85b0938e6ebeb9f24e24b51a594c01b74167a177
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
2014-03-21 17:55:55 +01:00
Allan Sandfeld Jensen
3cf7b31c4a Cleanup and refactor QFontconfigDatabase::fontEngine
Refactors the logic to parse the font configuration from fontconfig, so
that it maybe reused for custom fonts in a later patch.

Also fixes a minor mistake that meant we defaulted to medium hinting,
where we tried to default full hinting.

Change-Id: I1e135b8b1e3faeb213aa370ea59ebde3a671273d
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
2014-03-21 17:52:37 +01:00
Lars Knoll
9b378143a8 Setting QT_NO_DEBUG should not remove symbols
Removing symbols when defining QT_NO_DEBUG is a bad idea.
In this case it means that you can't compile corelib as a
release build and widgets as debug without getting an
undefined symbol.

Instead leave the method in the release build, but simply don't
call it.

Change-Id: I50426aefd62e82bccd933323aa0f67c6e5294961
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-03-21 08:42:29 +01:00
Richard Moe Gustavsen
68c8016394 iOS: send a Qt::Key_Return when the user hits done/enter
We need to send key events when the user hits enter, otherwise
there is no way to know when the user has 'confirmed' the
text he wrote. This is on par with how it's done for the
Android port.

Change-Id: I585d4198de24b0d251e5e0dd2956ce81b6483f82
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2014-03-21 08:41:23 +01:00
Richard Moe Gustavsen
37ba38b334 iOS: implement 'close keyboard' gesture
Before this patch there were no way for the user to hide
the keyboard on iPhone for multi-line edit fields unless
the app had a separate button added for it. And even that
would be problematic since we scroll the screen (and
perhaps the button) to track the cursor.

This patch implements a gesture that resembles the 'hide
keyboard' gesture that UIScrollView implements on iOS 7.

Note that if you start the gesture inside the edit field,
you will start selecting text as well. This will also cause
the cursor to move and the screen to scroll. After some
testing and failing, it seems like we need to live with such
artifacts until we do get around to do the only sensible thing;
fix up how we do text selection on touch platforms. Working
around it becomes just to messy.

Change-Id: I1c0d9c88ff1f5430587a49591f165b9708e5dc60
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2014-03-21 08:41:23 +01:00
Eskil Abrahamsen Blomfeldt
3d5234eb9a REG: Android: Fix freeze when accessing assets
Change 287fa94fe2 created a freeze
in the assets file engine because it will try locking the mutex
twice. Since prepopulateCache() is only called from create(),
we don't need to lock it recursively.

Task-number: QTBUG-37661
Change-Id: I00d0fed132a86c1be5603484eb6ee05454da9ef0
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2014-03-21 06:31:27 +01:00
Morten Johan Sørvig
b76612979c Cocoa: Fix geometry for embedded QWindows.
Report for correct geometry for QMacNativeWidget
and other QWindows that are embedded in a NSView
hierarchy. This also makes mapFrom/ToGlobal work.

The implementation is different than for the other
cases: Add a QCoocaWindow::geometry() overload and
query the geometry there, instead of using a geometry
change notification which sets the geometry on the
QWindow.

Task-number: QTBUG-36322
Change-Id: Iab5f0c96b89610c8a4b4a7de49887b0683d551dd
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2014-03-20 22:13:07 +01:00
Morten Johan Sørvig
3b8b47db6a Set unified toolbar height accurately.
Add registerContentBorderArea() to the Cocoa native
interface which allows registering multiple "unified
toolbar" areas for each window.

Use this function in QToolBarLayout::setGeometry()
to register the area for each TopToolBarArea toolbar.

Task-number: QTBUG-36700
Change-Id: I52efcc5662556bb94f25f504be3710d0491f79b9
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Denis Dzyubenko <denis@ddenis.info>
2014-03-20 22:12:47 +01:00
Tor Arne Vestbø
2bc7a40048 Teach font database to populate families lazily
Instead of requiring that QPlatformFontDatabase::populateFontDatabase()
populates every single font in the system by calling registerFont(), we
now allow the platform database to call registerFontFamily() instead, and
then keep track of which families we've yet to fully populate in the font
database.

Once a property of a family is requested (such as its writing system,
style, etc), the family is lazily populated by calling back to the
platform database through QPlatformFontDatabase::populateFamily(),
which in turn does the final call to registerFont() as before.

This cuts application startup on OS X and iOS (of which the font population
used to be a major limiting factor) from roughly one second to about 350ms.

Task-number: QTBUG-37165
Change-Id: Ic2fc3447beb818ffe23635a5b7816ed7e70c93a7
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2014-03-20 19:01:53 +01:00
Konstantin Ritt
7a08f714a5 Fix bundled HarfBuzz-NG build on Mac
Change-Id: I2229c77b4951c2ba9b445286cb94a2a86e345c34
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2014-03-20 19:01:53 +01:00
Jens Bache-Wiig
23595107cd Respect scrollbar position setting on Mac
This was a regression from Qt 4.7.

[ChangeLog][Widgets][QScrollArea] Respect scrollbar setting for
click-position on Mac.

Task-number: QTBUG-36314
Change-Id: I8bdb1aec9b308b0907f5db29d3519998bc843c18
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
2014-03-20 19:01:53 +01:00
BogDan Vatra
80151389d6 Android: Try to hide the sw keyboard on finishComposingText.
finishComposingText is called when the composing text is finished also
when the sw keyboard is hidden.

Task-number: QTBUG-37631
Change-Id: I4f4e90e60ac3f89784755b591f578e07fdbfdd2a
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2014-03-20 19:01:53 +01:00
Peter Hartmann
d9f5200fb8 network: add support for NTLM Session Security
tested manually with internal proxy.

Patch-by: Jonathan Lauvernier <Jonathan.Lauvernier@gmail.com>

Change-Id: Ief5b4579b3444ce70eb99637edf771d37d3971fb
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
2014-03-20 19:01:53 +01:00
Peter Hartmann
53f81ac946 BlackBerry networking: call special select() method
... so that the socket notifiers are enabled after selecting and thus
emit signals even after selecting (select() is called e.g. by the
waitFor* methods).

Task-number: QTBUG-36144
Change-Id: I385f288e8c42f92a9c84e53bce843e52f8094ada
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Fanda Vacek <fvacek@blackberry.com>
Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
2014-03-20 19:01:53 +01:00
Kai Koehne
ba4d154737 Logging: Remove PatternFlag::Invalid from QLoggingRule
The flag is not orthogonal to the rest, and e.g. checking with

   flags & Invalid

will fail. Rather make it explicit by comparing with 0.

Change-Id: I428d5e71f5ecd05f61d543aaa78532548ef93d5a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-03-20 19:01:53 +01:00
J-P Nurmi
07fef5f3ff QFusionStyle: support transient scrollbars
QFusionStyle doesn't make scrollbars transient by default,
but the feature can be enabled with a proxy style:

class MyProxyStyle : public QProxyStyle
{
public:
    int styleHint(StyleHint sh, const QStyleOption *opt = 0,
                  const QWidget *w = 0, QStyleHintReturn *ret = 0) const
    {
        if (sh == QStyle::SH_ScrollBar_Transient)
            return 1;
        return QProxyStyle::styleHint(sh, opt, w, ret);
    }
};

Change-Id: Ibf169e219ad920cbe7edb06e128e09ed4d8faf96
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2014-03-20 16:55:23 +01:00
Mitch Curtis
9ad768fd19 QPushButton: draw label using the stylesheet's font.
The RenderRule for the stylesheet has the correct font information, it
just wasn't being set on the painter that draws the label.

Task-number: QTBUG-8990

Change-Id: I7cbaffc570421db04ebf3254cb6a21a68f7b868b
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2014-03-20 16:47:22 +01:00
Mitch Curtis
ff0e7df477 Stop omitted enum value from showing up in Qt namespace doc.
The following omitted enum description can be seen at [1]:

"Ensures that the longest variant is always used when computing the
size of a multi-variant string. (Internal)"

This is because \omitvalue does not allow a description (whereas
\value does).

The description was moved to the qnamespace.h as a code comment.

[1] http://qt-project.org/doc/qt-5/qt.html#TextFlag-enum

Change-Id: I7983613bffa90f3071a4e2d678696391048c8757
Reviewed-by: Martin Smith <martin.smith@digia.com>
2014-03-20 14:13:29 +01:00