make 'mobile-p' return a keyword; revisions

This commit is contained in:
pls.153 2023-10-15 09:02:58 +02:00
parent da60ab55ed
commit 36c8fc79f4
5 changed files with 23 additions and 11 deletions

View file

@ -632,15 +632,21 @@ cl_object qquit2(cl_object l_status) {
cl_object mobile_p() {
/// args: ()
/// Returns T on android, iOS, SailfishOS.
/// On mobile returns one of :ANDROID, :IOS, :SFOS.
STATIC_SYMBOL_PKG (s_android, "ANDROID", "KEYWORD")
STATIC_SYMBOL_PKG (s_ios, "IOS", "KEYWORD")
STATIC_SYMBOL_PKG (s_sfos, "SFOS", "KEYWORD")
ecl_process_env()->nvalues = 1;
cl_object l_ret = ECL_NIL;
QString platform = qGuiApp->platformName();
if ((platform == QStringLiteral("android")) ||
(platform == QStringLiteral("ios")) ||
QFile::exists("/etc/sailfish-release")) {
return ECL_T;
if (platform == QStringLiteral("android")) {
l_ret = s_android;
} else if (platform == QStringLiteral("ios")) {
l_ret = s_ios;
} else if (QFile::exists("/etc/sailfish-release")) {
l_ret = s_sfos;
}
return ECL_NIL;
return l_ret;
}
cl_object pixel_ratio() {

View file

@ -250,6 +250,8 @@ QVariant toQVariant(cl_object l_arg, int type) {
var = QVariant(toFloat<double>(l_arg));
} else if (cl_stringp(l_arg) == ECL_T) { // string
var = QVariant(toQString(l_arg));
} else if (cl_symbolp(l_arg) == ECL_T) { // symbol
var = QVariant(toQString(cl_string_downcase(1, cl_symbol_name(l_arg))));
} else if (cl_characterp(l_arg) == ECL_T) { // char
var = QChar(toInt(cl_char_code(l_arg)));
} else if (l_arg == ECL_T) { // true

View file

@ -164,6 +164,8 @@ QVariant toQVariant(cl_object l_arg, int type) {
var = QVariant(toFloat<double>(l_arg));
} else if (cl_stringp(l_arg) == ECL_T) { // string
var = QVariant(toQString(l_arg));
} else if (cl_symbolp(l_arg) == ECL_T) { // symbol
var = QVariant(toQString(cl_string_downcase(1, cl_symbol_name(l_arg))));
} else if (cl_characterp(l_arg) == ECL_T) { // char
var = QChar(toInt(cl_char_code(l_arg)));
} else if (l_arg == ECL_T) { // true