Now In homescreen-service used application_id to identify
different application, so use appid instead of appname
in "tap_shortcut" parameter.
Bug-AGL: SPEC-1764
Change-Id: Ia7004dbbc9851e95f959e551e0427c9dc308eb9b
Signed-off-by: wang_zhiqiang <wang_zhiqiang@dl.cn.nexty-ele.com>
if (currentId === '') {
pid = launcher.launch(applicationModel.id(loc.index))
if (1 < pid) {
if (currentId === '') {
pid = launcher.launch(applicationModel.id(loc.index))
if (1 < pid) {
- homescreenHandler.tapShortcut(applicationModel.name(loc.index))
+ homescreenHandler.tapShortcut(applicationModel.appid(loc.index))
}
else {
console.warn("app cannot be launched!")
}
else {
console.warn("app cannot be launched!")
return data(index(i), Qt::UserRole).toString();
}
return data(index(i), Qt::UserRole).toString();
}
+QString ApplicationModel::appid(int i) const
+{
+ QString id = data(index(i), Qt::UserRole).toString();
+ return id.split("@")[0];
+}
+
QString ApplicationModel::name(int i) const
{
return data(index(i), Qt::DisplayRole).toString();
QString ApplicationModel::name(int i) const
{
return data(index(i), Qt::DisplayRole).toString();
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
QHash<int, QByteArray> roleNames() const override;
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
QHash<int, QByteArray> roleNames() const override;
+ Q_INVOKABLE QString appid(int index) const;
Q_INVOKABLE QString id(int index) const;
Q_INVOKABLE QString name(int index) const;
Q_INVOKABLE void move(int from, int to);
Q_INVOKABLE QString id(int index) const;
Q_INVOKABLE QString name(int index) const;
Q_INVOKABLE void move(int from, int to);
homescreenHandler->init(port, token.toStdString().c_str());
homescreenHandler->set_event_handler(QLibHomeScreen::Event_TapShortcut, [layoutHandler, myname](json_object *object){
homescreenHandler->init(port, token.toStdString().c_str());
homescreenHandler->set_event_handler(QLibHomeScreen::Event_TapShortcut, [layoutHandler, myname](json_object *object){
- json_object *appnameJ = nullptr;
- if(json_object_object_get_ex(object, "application_name", &appnameJ))
- {
- const char *appname = json_object_get_string(appnameJ);
- if(myname == appname)
- {
- qDebug("Surface %s got tapShortcut\n", appname);
- layoutHandler->activateSurface(myname);
- }
- }
+ qDebug("Surface %s got tapShortcut\n", myname);
+ layoutHandler->activateSurface(myname);