Pop pack pragma on x86 QNX

A recent patch fixing QNX on x86 forgot to also pop the pragma it set.

Change-Id: I9834c0b57a4409e8e80c29899e6f3989607fe22f
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
[Windows] Also check for QApplication::style when animating buttons.

The fallback style for a custom style sheet is QApplication::style(),
which defaults to QWindowsVistaStyle on most (if not all)  windows
systems.

Task-number: QTBUG-39400
Change-Id: Ib05571033730ed26a39f89d8e9fe948c4b280e64
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
Do not schedule navigation to invalid URL

Fix an assert triggered by navigation to a fragment URL of an unset
URL. The code was assuming the string given was a valid encoded
URL, so we shouldn't continue if the completed URL is invalid.

Task-number: QTBUG-38546
Change-Id: I377b09814150ae9926de95efe3f3e2e750145c4a
Reviewed-by: Michael Bruning <michael.bruning@digia.com>
Disable the build on Windows RT / Windows Phone

Change-Id: I594737c60ed2d4c08de662b8ca534e5abbbffd60
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
Reviewed-by: Michael Bruning <michael.bruning@digia.com>
Do not enumerate plugins when plugins are disabled

Even if plugins were disabled through QWebSettings::PluginsEnabled, WebKit would
still enumerate the on-disk NPAPI plugins and attempt to load them. This caused
all sorts of havoc especially when loading plugins linked to Qt4. Even if that
wasn't the case, plugins should *not* be loaded unless there's a compelling
reason to do so. Loading plugins needlessly takes time and it might even have
security implications -- it sounds like a good practice to not execute random
code, even though it comes from trusted locations, when that code is not needed.

After this change, the code still passes the tst_qwebpage tests which are
related to plugin loading. As it turns out, the "QtWebKit application plugins"
(application/x-qt-plugin and application/x-qt-styled-widget) do not use this
code path at all, they instead go through a path like this one:

  #0  PluginPage::createPlugin ...
  #1  QWebPagePrivate::createPlugin ...
  #2  WebCore::FrameLoaderClientQt::createPlugin ...
  #3  WebCore::SubframeLoader::loadPlugin ...
  #4  WebCore::SubframeLoader::requestPlugin ...
  #5  WebCore::SubframeLoader::requestObject ...
  #6  WebCore::HTMLObjectElement::updateWidget ...
  #7  WebCore::HTMLPlugInImageElement::updateWidgetIfNecessary ...
  #8  WebCore::HTMLPlugInImageElement::updateWidgetCallback ...
  #9  WebCore::ContainerNode::dispatchPostAttachCallbacks ...
  #10 WebCore::ContainerNode::resumePostAttachCallbacks ...
  #11 WebCore::PostAttachCallbackDisabler::~PostAttachCallbackDisabler ...
  #12 WebCore::Document::recalcStyle ...
  #13 WebCore::Document::updateStyleIfNeeded ...
  #14 WebCore::Document::finishedParsing ...
  #15 WebCore::HTMLConstructionSite::finishedParsing ...
  #16 WebCore::HTMLTreeBuilder::finished ...
  #17 WebCore::HTMLDocumentParser::end ...
  #18 WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd ...
  #19 WebCore::HTMLDocumentParser::prepareToStopParsing ...
  #20 WebCore::HTMLDocumentParser::attemptToEnd ...
  #21 WebCore::HTMLDocumentParser::finish ...
  #22 WebCore::DocumentWriter::end ...
  #23 WebCore::DocumentLoader::finishedLoading ...

Task-number: QTBUG-36349
Change-Id: Id8f37fb16bb295781c22f439fd54a65486deef8e
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
Do not use floating point instructions in float-abi=soft

Pretend VFP doesn't exist when the ABI forbids floating
point instructions.

Task-number: QTBUG-38371
Change-Id: Id0552201e6bf98812198c0028e2c85107e967a81
Reviewed-by: Michael Bruning <michael.bruning@digia.com>
Use INLINE_ARM_FUNCTION in OFFLINE_ASM_GLOBAL_LABEL

We can get rid of an ifdef in LowLevelInterpreter by reusing logic
from InlineAsm.h. This also fixes ARM_TRADITIONAL when forced on when
thumb2 is available to the compiler.

Change-Id: Iac5ad22a4a41757fa03c3cbc2e8f68e44d085bae
Reviewed-by: Julien Brianceau <jbriance@cisco.com>
Reviewed-by: Michael Bruning <michael.bruning@digia.com>
Merge remote-tracking branch 'origin/5.4' into dev

Change-Id: Ia01d6aa4899b183f41084ffcb245ef0184c0d826