has_watch_catergory ? strdup("watchapp") : strdup("uiapp");
application->mainapp = strdup("true");
application->appid = strdup(app_info->id().c_str());
- application->nodisplay = has_ime ? strdup("true") : strdup("false");
+ auto settings_info =
+ GetManifestDataForKey<const wgt::parse::SettingInfo>(
+ wgt::application_widget_keys::kTizenSettingKey);
+ bool no_display = settings_info ? settings_info->no_display() : false;
+ application->nodisplay = (has_ime || no_display) ? strdup("true") :
+ strdup("false");
application->taskmanage = has_ime ? strdup("false") : strdup("true");
SetApplicationXDefaults(application);
if (has_watch_catergory)
}
LOG(INFO) << "Setting: 'long-polling' allowed";
}
+
+ if (settings.no_display()) {
+ common_installer::PrivilegeLevel required_level =
+ common_installer::PrivilegeLevel::PARTNER;
+ if (!common_installer::SatifiesPrivilegeLevel(required_level, level)) {
+ LOG(ERROR) << "nodisplay requires visibility level: "
+ << common_installer::PrivilegeLevelToString(required_level);
+ return false;
+ }
+ LOG(INFO) << "Setting: 'nodisplay' allowed";
+ }
+
+ if (settings.sound_mode() != wgt::parse::SettingInfo::SoundMode::SHARED) {
+ common_installer::PrivilegeLevel required_level =
+ common_installer::PrivilegeLevel::PARTNER;
+ if (!common_installer::SatifiesPrivilegeLevel(required_level, level)) {
+ LOG(ERROR) << "sound-mode requires visibility level: "
+ << common_installer::PrivilegeLevelToString(required_level);
+ return false;
+ }
+ LOG(INFO) << "Setting: 'sound-mode' allowed";
+ }
return true;
}