/*
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2022 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
textModel->mLogicalModel->mEmbeddedItems,
textModel->mLogicalModel->mAnchors,
textModel->mLogicalModel->mUnderlinedCharacterRuns,
- textModel->mLogicalModel->mBackgroundColorRuns);
+ textModel->mLogicalModel->mBackgroundColorRuns,
+ textModel->mLogicalModel->mStrikethroughCharacterRuns);
if(textParameters.markupEnabled)
{
{
Length finalNumberOfGlyphs = 0u;
- if((line.ascender - line.descender) > textLayoutArea.height)
+ if((GetLineHeight(line)) > textLayoutArea.height)
{
// The height of the line is bigger than the height of the text area.
// Show the ellipsis glyph even if it doesn't fit in the text area.
const bool isTextMirrored = internalDataModel.isTextMirrored;
const Vector<Character>& mirroredUtf32Characters = internalDataModel.mirroredUtf32Characters;
const Length numberOfCharacters = internalDataModel.numberOfCharacters;
+ const auto ellipsisPosition = textModel->mEllipsisPosition;
Layout::Type layout = Layout::SINGLELINE;
layoutEngine.LayoutText(layoutParameters,
newLayoutSize,
textParameters.ellipsisEnabled,
- isAutoScrollEnabled);
+ isAutoScrollEnabled,
+ ellipsisPosition);
return newLayoutSize;
}
}
const unsigned int bytesPerPixel = Dali::Pixel::GetBytesPerPixel(pixelFormat);
- if(bytesPerPixel == 0u || bytesPerPixel == 12u || bytesPerPixel == 24u)
+ // Ignore when pixelFormat is invalid or contain float
+ if(bytesPerPixel == 0u || bytesPerPixel == 6u || bytesPerPixel == 12u)
{
return;
}
const LineRun& line = *(lines.Begin() + index);
numberOfCharacters += line.characterRun.numberOfCharacters;
- lineOffset = lineSize > 0.f ? lineSize : (line.ascender + -line.descender);
+ lineOffset = lineSize > 0.f ? lineSize : GetLineHeight(line);
penY += lineOffset;
if((penY + lineOffset) > boundingBox)
{