X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Fcontroller%2Ftext-controller-impl.cpp;h=10a76f1dee8e04f99e2848df367e8bddc4e90ec4;hb=HEAD;hp=433622122a63823fef79228bd74781035ab57ea1;hpb=e8b440daef8677a0175279c5fada6c5a8eb2a5f1;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/text/controller/text-controller-impl.cpp b/dali-toolkit/internal/text/controller/text-controller-impl.cpp index 4336221..10a76f1 100644 --- a/dali-toolkit/internal/text/controller/text-controller-impl.cpp +++ b/dali-toolkit/internal/text/controller/text-controller-impl.cpp @@ -53,6 +53,7 @@ constexpr float MAX_FLOAT = std::numeric_limits::max(); const char* EMPTY_STRING = ""; const char* MIME_TYPE_TEXT_PLAIN = "text/plain;charset=utf-8"; +const char* MIME_TYPE_HTML = "application/xhtml+xml"; } // namespace @@ -701,7 +702,7 @@ void Controller::Impl::CalculateTextUpdateIndices(Length& numberOfCharacters) mTextUpdateInfo.mRequestedNumberOfCharacters = mTextUpdateInfo.mNumberOfCharactersToAdd - mTextUpdateInfo.mNumberOfCharactersToRemove; mTextUpdateInfo.mStartGlyphIndex = mModel->mVisualModel->mGlyphs.Count(); - mTextUpdateInfo.mStartLineIndex = mModel->mVisualModel->mLines.Count() - 1u; + mTextUpdateInfo.mStartLineIndex = (mModel->mVisualModel->mLines.Count() > 0u) ? mModel->mVisualModel->mLines.Count() - 1u : 0u; // Nothing else to do; return; @@ -1161,6 +1162,12 @@ bool Controller::Impl::CopyStringToClipboard(const std::string& source) return false; } +bool Controller::Impl::IsClipboardEmpty() +{ + bool result(Clipboard::IsAvailable() && EnsureClipboardCreated() && (mClipboard.HasType(MIME_TYPE_TEXT_PLAIN) || mClipboard.HasType(MIME_TYPE_HTML))); + return !result; +} + void Controller::Impl::SendSelectionToClipboard(bool deleteAfterSending) { std::string selectedText;