summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@qt.io>2023-01-11 17:33:26 +0100
committerMarc Mutz <marc.mutz@qt.io>2023-01-12 18:14:10 +0100
commit1b6883146d4a3b022434fac1a4bda579a6767986 (patch)
treeea06f8c228983912f027981c52d102ca9ba9a3b5 /src
parentceb4140b59428a805d11c036ef223f46d83653ef (diff)
Q{Contact,Calendar}Permission: rename isReadOnly → isReadWrite
The typed permission classes' properties, insofar as they have any, should default to the least-intrusive capabilities. QLocationPermission implements it that way, but these two typed permissions defaulted to read-write access instead of read-only. This was fixed in an earlier commit. However, default values of properties are most natural when they're equal to the default-constructed value of the property's type, and this was no longer the case for isReadOnly. By renaming the property to isReadWrite, defaulting to false, this relationship is restored, and code using the classes looks more natural: - p.setReadOnly(false); + p.setReadWrite(true); Found in API review. Pick-to: 6.5 Change-Id: I4efa4c0326b5a54181c96f477709b0686c963e90 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'src')
-rw-r--r--src/corelib/kernel/qpermissions.cpp40
-rw-r--r--src/corelib/kernel/qpermissions.h8
-rw-r--r--src/corelib/kernel/qpermissions_android.cpp4
3 files changed, 28 insertions, 24 deletions
diff --git a/src/corelib/kernel/qpermissions.cpp b/src/corelib/kernel/qpermissions.cpp
index 8a45fcff81..0f16845249 100644
--- a/src/corelib/kernel/qpermissions.cpp
+++ b/src/corelib/kernel/qpermissions.cpp
@@ -434,7 +434,7 @@ QLocationPermission::Availability QLocationPermission::availability() const
\brief Access the user's contacts.
By default the request is for read-only access.
- Use setReadOnly(false) to override the default.
+ Use setReadWrite() to override the default.
\section1 Requirements
@@ -447,7 +447,7 @@ QLocationPermission::Availability QLocationPermission::availability() const
\li Android
\li \l{android-uses-permission}{\c{uses-permission}}
\li \c android.permission.READ_CONTACTS. \c android.permission.WRITE_CONTACTS if
- QContactsPermission::isReadOnly() is set to \c false.
+ QContactsPermission::isReadWrite() is set to \c true.
\include permissions.qdocinc end-usage-declarations
\include permissions.qdocinc permission-metadata
@@ -455,26 +455,28 @@ QLocationPermission::Availability QLocationPermission::availability() const
class QContactsPermissionPrivate : public QSharedData
{
public:
- bool isReadOnly = true;
+ bool isReadWrite = false;
};
QT_DEFINE_PERMISSION_SPECIAL_FUNCTIONS(QContactsPermission)
/*!
- Sets whether to \a enable read-only access to the contacts.
+ Sets whether the request is for read-write (\a enable == \c true) or
+ read-only (\a enable == \c false) access to the contacts.
*/
-void QContactsPermission::setReadOnly(bool enable)
+void QContactsPermission::setReadWrite(bool enable)
{
d.detach();
- d->isReadOnly = enable;
+ d->isReadWrite = enable;
}
/*!
- Returns whether the request is for read-only access to the contacts.
+ Returns \c true when the request is for read-write and \c false when it is
+ for read-only access to the contacts.
*/
-bool QContactsPermission::isReadOnly() const
+bool QContactsPermission::isReadWrite() const
{
- return d->isReadOnly;
+ return d->isReadWrite;
}
/*!
@@ -482,7 +484,7 @@ bool QContactsPermission::isReadOnly() const
\brief Access the user's calendar.
By default the request is for read-only access.
- Use setReadOnly(false) to override the default.
+ Use setReadWrite() to override the default.
\section1 Requirements
@@ -495,7 +497,7 @@ bool QContactsPermission::isReadOnly() const
\li Android
\li \l{android-uses-permission}{\c{uses-permission}}
\li \c android.permission.READ_CALENDAR. \c android.permission.WRITE_CALENDAR if
- QContactsPermission::isReadOnly() is set to \c false.
+ QContactsPermission::isReadWrite() is set to \c true.
\include permissions.qdocinc end-usage-declarations
\include permissions.qdocinc permission-metadata
@@ -503,26 +505,28 @@ bool QContactsPermission::isReadOnly() const
class QCalendarPermissionPrivate : public QSharedData
{
public:
- bool isReadOnly = true;
+ bool isReadWrite = false;
};
QT_DEFINE_PERMISSION_SPECIAL_FUNCTIONS(QCalendarPermission)
/*!
- Sets whether to \a enable read-only access to the calendar.
+ Sets whether the request is for read-write (\a enable == \c true) or
+ read-only (\a enable == \c false) access to the calendar.
*/
-void QCalendarPermission::setReadOnly(bool enable)
+void QCalendarPermission::setReadWrite(bool enable)
{
d.detach();
- d->isReadOnly = enable;
+ d->isReadWrite = enable;
}
/*!
- Returns whether the request is for read-only access to the calendar.
+ Returns \c true when the request is for read-write and \c false when it is
+ for read-only access to the calendar.
*/
-bool QCalendarPermission::isReadOnly() const
+bool QCalendarPermission::isReadWrite() const
{
- return d->isReadOnly;
+ return d->isReadWrite;
}
/*!
diff --git a/src/corelib/kernel/qpermissions.h b/src/corelib/kernel/qpermissions.h
index 4261efe50a..7c1cd3678e 100644
--- a/src/corelib/kernel/qpermissions.h
+++ b/src/corelib/kernel/qpermissions.h
@@ -121,8 +121,8 @@ class QCalendarPermission
{
QT_PERMISSION(QCalendarPermission)
public:
- Q_CORE_EXPORT void setReadOnly(bool enable);
- Q_CORE_EXPORT bool isReadOnly() const;
+ Q_CORE_EXPORT void setReadWrite(bool enable);
+ Q_CORE_EXPORT bool isReadWrite() const;
};
Q_DECLARE_SHARED(QCalendarPermission)
@@ -131,8 +131,8 @@ class QContactsPermission
{
QT_PERMISSION(QContactsPermission)
public:
- Q_CORE_EXPORT void setReadOnly(bool enable);
- Q_CORE_EXPORT bool isReadOnly() const;
+ Q_CORE_EXPORT void setReadWrite(bool enable);
+ Q_CORE_EXPORT bool isReadWrite() const;
};
Q_DECLARE_SHARED(QContactsPermission)
diff --git a/src/corelib/kernel/qpermissions_android.cpp b/src/corelib/kernel/qpermissions_android.cpp
index 3596ff2ecf..9b3aa07db7 100644
--- a/src/corelib/kernel/qpermissions_android.cpp
+++ b/src/corelib/kernel/qpermissions_android.cpp
@@ -63,12 +63,12 @@ static QStringList nativeStringsFromPermission(const QPermission &permission)
return { u"android.permission.BLUETOOTH"_s };
} else if (id == qMetaTypeId<QContactsPermission>()) {
const auto readContactsString = u"android.permission.READ_CONTACTS"_s;
- if (permission.data<QContactsPermission>().isReadOnly())
+ if (!permission.data<QContactsPermission>().isReadWrite())
return { readContactsString };
return { readContactsString, u"android.permission.WRITE_CONTACTS"_s };
} else if (id == qMetaTypeId<QCalendarPermission>()) {
const auto readContactsString = u"android.permission.READ_CALENDAR"_s;
- if (permission.data<QCalendarPermission>().isReadOnly())
+ if (!permission.data<QCalendarPermission>().isReadWrite())
return { readContactsString };
return { readContactsString, u"android.permission.WRITE_CALENDAR"_s };
}