#include <qpa/qplatformtheme.h>
#include "qstylehints.h"
#include <private/qguiapplication_p.h>
-
-#ifndef QT_NO_CLIPBOARD
#include "qclipboard.h"
-#endif
#ifdef Q_OS_MAC
-#include <Carbon/Carbon.h> // For the random function.
#include <cstdlib> // For the random function.
#endif
#include "qplatformdefs.h"
+#include "../../../shared/platformclipboard.h"
#include "../../../shared/platforminputcontext.h"
#include <private/qinputmethod_p.h>
}
#ifndef QT_NO_CLIPBOARD
-static bool nativeClipboardWorking()
-{
-#ifdef Q_OS_MAC
- PasteboardRef pasteboard;
- OSStatus status = PasteboardCreate(0, &pasteboard);
- if (status == noErr)
- CFRelease(pasteboard);
- return status == noErr;
-#endif
- return true;
-}
-
void tst_QLineEdit::QTBUG5786_undoPaste()
{
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("this machine doesn't support the clipboard");
QString initial("initial");
QString string("test");
#ifndef QT_NO_CLIPBOARD
void tst_QLineEdit::cut()
{
-#ifdef Q_OS_MAC
- {
- PasteboardRef pasteboard;
- OSStatus status = PasteboardCreate(0, &pasteboard);
- if (status == noErr)
- CFRelease(pasteboard);
- else
- QSKIP("Autotests run from cron and pasteboard don't get along quite ATM");
- }
-#endif
+ if (!PlatformClipboard::isAvailable())
+ QSKIP("Autotests run from cron and pasteboard don't get along quite ATM");
+
// test newlines in cut'n'paste
testWidget->setText("A\nB\nC\n");
testWidget->setSelection(0, 6);
#include <qtextdocumentfragment.h>
#include "qplaintextedit.h"
+#include "../../../shared/platformclipboard.h"
//Used in copyAvailable
typedef QPair<Qt::Key, Qt::KeyboardModifier> keyPairType;
Q_DECLARE_METATYPE(keyPairType);
Q_DECLARE_METATYPE(QList<bool>);
-#ifdef Q_OS_MAC
-#include <Carbon/Carbon.h>
-#endif
-
QT_FORWARD_DECLARE_CLASS(QPlainTextEdit)
class tst_QPlainTextEdit : public QObject
void createSelection();
int blockCount() const;
int lineCount() const;
- bool nativeClipboardWorking();
QPlainTextEdit *ed;
qreal rootFrameMargin;
};
-bool tst_QPlainTextEdit::nativeClipboardWorking()
-{
-#ifdef Q_OS_MAC
- PasteboardRef pasteboard;
- OSStatus status = PasteboardCreate(0, &pasteboard);
- if (status == noErr)
- CFRelease(pasteboard);
- return status == noErr;
-#endif
- return true;
-}
-
// Testing get/set functions
void tst_QPlainTextEdit::getSetCheck()
{
#ifndef QT_NO_CLIPBOARD
void tst_QPlainTextEdit::clearMustNotChangeClipboard()
{
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Clipboard not working with cron-started unit tests");
ed->textCursor().insertText("Hello World");
QString txt("This is different text");
#ifndef QT_NO_CLIPBOARD
void tst_QPlainTextEdit::undoAvailableAfterPaste()
{
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Clipboard not working with cron-started unit tests");
QSignalSpy spy(ed->document(), SIGNAL(undoAvailable(bool)));
#ifndef QT_NO_CLIPBOARD
void tst_QPlainTextEdit::copyAndSelectAllInReadonly()
{
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Clipboard not working with cron-started unit tests");
ed->setReadOnly(true);
#ifndef QT_NO_CLIPBOARD
void tst_QPlainTextEdit::canPaste()
{
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Clipboard not working with cron-started unit tests");
QApplication::clipboard()->setText(QString());
#include <qtextdocumentfragment.h>
#include <qsyntaxhighlighter.h>
+#include "../../../shared/platformclipboard.h"
#include "../../../shared/platforminputcontext.h"
#include <private/qinputmethod_p.h>
Q_DECLARE_METATYPE(QList<bool>);
Q_DECLARE_METATYPE(QList<int>);
-#ifdef Q_OS_MAC
-#include <Carbon/Carbon.h>
-#endif
-
-bool nativeClipboardWorking()
-{
-#ifdef Q_OS_MAC
- PasteboardRef pasteboard;
- OSStatus status = PasteboardCreate(0, &pasteboard);
- if (status == noErr)
- CFRelease(pasteboard);
- return status == noErr;
-#endif
- return true;
-}
-
-
QT_FORWARD_DECLARE_CLASS(QTextEdit)
class tst_QTextEdit : public QObject
void wordWrapProperty();
void lineWrapProperty();
void selectionChanged();
+#ifndef QT_NO_CLIPBOARD
void copyPasteBackgroundImage();
+#endif
void setText();
void cursorRect();
#ifdef QT_BUILD_INTERNAL
private:
void createSelection();
int blockCount() const;
- bool nativeClipboardWorking();
void compareWidgetAndImage(QTextEdit &widget, const QString &imageFileName);
QTextEdit *ed;
const QString m_fullWidthSelectionImagesFolder;
};
-bool tst_QTextEdit::nativeClipboardWorking()
-{
-#ifdef Q_OS_MAC
- PasteboardRef pasteboard;
- OSStatus status = PasteboardCreate(0, &pasteboard);
- if (status == noErr)
- CFRelease(pasteboard);
- return status == noErr;
-#endif
- return true;
-}
-
// Testing get/set functions
void tst_QTextEdit::getSetCheck()
{
#ifndef QT_NO_CLIPBOARD
void tst_QTextEdit::clearMustNotChangeClipboard()
{
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Clipboard not working with cron-started unit tests");
ed->textCursor().insertText("Hello World");
QString txt("This is different text");
#ifndef QT_NO_CLIPBOARD
void tst_QTextEdit::undoAvailableAfterPaste()
{
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Clipboard not working with cron-started unit tests");
QSignalSpy spy(ed->document(), SIGNAL(undoAvailable(bool)));
#ifndef QT_NO_CLIPBOARD
void tst_QTextEdit::copyAndSelectAllInReadonly()
{
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Clipboard not working with cron-started unit tests");
ed->setReadOnly(true);
#ifndef QT_NO_CLIPBOARD
void tst_QTextEdit::canPaste()
{
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Clipboard not working with cron-started unit tests");
QApplication::clipboard()->setText(QString());
QCOMPARE(selectionChangedSpy.count(), 4);
}
+#ifndef QT_NO_CLIPBOARD
void tst_QTextEdit::copyPasteBackgroundImage()
{
-#ifndef QT_NO_CLIPBOARD
- if (!nativeClipboardWorking())
+ if (!PlatformClipboard::isAvailable())
QSKIP("Native clipboard not working in this setup");
QImage foo(16, 16, QImage::Format_ARGB32_Premultiplied);
QVERIFY(ba.textureImage().cacheKey() == bb.textureImage().cacheKey() ||
ba.texture().cacheKey() == bb.texture().cacheKey());
QFile::remove(QLatin1String("foo.png"));
-#endif
}
+#endif
void tst_QTextEdit::setText()
{