6#include <QtCore/QJniObject>
7#include <QtCore/QJniEnvironment>
23 QJniObject::callStaticMethod<void>(
applicationClass(),
"registerClipboardManager");
27 __android_log_print(ANDROID_LOG_FATAL,
"Qt",
"RegisterNatives failed");
38 if (
data->hasUrls()) {
40 for (
const auto &u : std::as_const(urls)) {
43 "(Ljava/lang/String;)V",
44 QJniObject::fromString(u.toEncoded()).object());
46 }
else if (
data->hasText()) {
48 "setClipboardText",
"(Ljava/lang/String;)V",
49 QJniObject::fromString(
data->text()).object());
50 }
else if (
data->hasHtml()) {
53 "(Ljava/lang/String;Ljava/lang/String;)V",
54 QJniObject::fromString(
data->text()).object(),
55 QJniObject::fromString(
data->html()).object());
62 if (QJniObject::callStaticMethod<jboolean>(
applicationClass(),
"hasClipboardText")) {
67 if (QJniObject::callStaticMethod<jboolean>(
applicationClass(),
"hasClipboardHtml")) {
72 if (QJniObject::callStaticMethod<jboolean>(
applicationClass(),
"hasClipboardUri")) {
75 "()[Ljava/lang/String;");
79 jobjectArray juris = uris.object<jobjectArray>();
80 const jint nUris = env->GetArrayLength(juris);
81 urls.
reserve(
static_cast<int>(nUris));
82 for (
int i = 0;
i < nUris; ++
i)
83 urls <<
QUrl(
QJniObject(env->GetObjectArrayElement(juris,
i)).toString());
void reserve(qsizetype size)
void setText(const QString &text)
Sets text as the plain text (MIME type text/plain) used to represent the data.
Combined button and popup list for selecting options.
void setClipboardMimeData(QMimeData *data)
void clearClipboardData()
static JNINativeMethod methods[]
void setClipboardManager(QAndroidPlatformClipboard *manager)
QMimeData * getClipboardMimeData()
void onClipboardDataChanged(JNIEnv *, jobject)
QAndroidPlatformClipboard * m_manager
jclass applicationClass()
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
QNetworkAccessManager manager
char * toString(const MyType &t)
[31]