diff --git a/scriptengines/javascript/simplejavascriptapplet.cpp b/scriptengines/javascript/simplejavascriptapplet.cpp index fddafe543..2e24aeafa 100644 --- a/scriptengines/javascript/simplejavascriptapplet.cpp +++ b/scriptengines/javascript/simplejavascriptapplet.cpp @@ -810,6 +810,15 @@ QScriptValue SimpleJavaScriptApplet::newPlasmaFrameSvg(QScriptContext *context, return engine->newQObject(frameSvg); } +QScriptValue SimpleJavaScriptApplet::widgetAdjustSize(QScriptContext *context, QScriptEngine *engine) +{ + QGraphicsWidget *widget = qobject_cast(context->thisObject().toQObject()); + if (widget) { + widget->adjustSize(); + } + return engine->undefinedValue(); +} + void SimpleJavaScriptApplet::installWidgets(QScriptEngine *engine) { QScriptValue globalObject = engine->globalObject(); @@ -874,6 +883,7 @@ QScriptValue SimpleJavaScriptApplet::createWidget(QScriptContext *context, QScri QScriptValue fun = engine->newQObject(w); fun.setPrototype(context->callee().property("prototype")); + fun.setProperty("adjustSize", engine->newFunction(widgetAdjustSize)); //register enums will be accessed for instance as frame.Sunken for Frame shadow... registerEnums(engine, fun, *w->metaObject()); diff --git a/scriptengines/javascript/simplejavascriptapplet.h b/scriptengines/javascript/simplejavascriptapplet.h index 9027e34c4..09fc18346 100644 --- a/scriptengines/javascript/simplejavascriptapplet.h +++ b/scriptengines/javascript/simplejavascriptapplet.h @@ -84,6 +84,7 @@ private: static QScriptValue notSupported(QScriptContext *context, QScriptEngine *engine); static QScriptValue print(QScriptContext *context, QScriptEngine *engine); static QScriptValue createPrototype(QScriptEngine *engine, const QString &name); + static QScriptValue widgetAdjustSize(QScriptContext *context, QScriptEngine *engine); private: static KSharedPtr s_widgetLoader;