Use QJSValue as method parameter type for the scripting interface

Authored by fvogt on Aug 13 2018, 9:29 AM.

Description

Use QJSValue as method parameter type for the scripting interface

Summary:
If a slot or Q_INVOKABLE has a QVariant as parameter and gets called
from a QJSEngine's script, it receives a QJSValue wrapped as QVariant.
To get a QVariant with the actual value wrapped, calling QJSValue::toVariant
is necessary.

I'm not entirely sure whether this is intentional behaviour of QJSEngine, but
even if it's a bug we'll have to workaround it.

BUG: 397338

Test Plan: I have favorites in kickoff again.

Reviewers: Plasma

Subscribers: plasma-devel

Tags: Plasma

Differential Revision: https://phabricator.kde.org/D14822

Details