diff --git a/scribus/pageitem_textframe.cpp b/scribus/pageitem_textframe.cpp index 6c8046c..2fe371a 100644 --- a/scribus/pageitem_textframe.cpp +++ b/scribus/pageitem_textframe.cpp @@ -4831,7 +4831,7 @@ void PageItem_TextFrame::deleteSelectedTextFromFrame(/*bool findNotes*/) //delete text for (int i=start; i <= stop; ++i) { - Mark* mark = i < itemText.length() && itemText.hasMark(i)? itemText.mark(i) : NULL; + Mark* mark = (i < itemText.length() && itemText.hasMark(i))? itemText.mark(i) : NULL; const CharStyle& curParent = itemText.charStyle(i); if (i==stop || !curParent.equiv(lastParent) || (mark!=NULL && mark->isType(MARKNoteFrameType))) { @@ -4927,7 +4927,7 @@ void PageItem_TextFrame::deleteSelectedTextFromFrame(/*bool findNotes*/) } } else //remove marks without undo - marksNum =removeMarksFromText(false); + marksNum = removeMarksFromText(false); itemText.setCursorPosition( start ); //for sure text is still selected itemText.select(start, stop - start - marksNum); diff --git a/scribus/scribusdoc.cpp b/scribus/scribusdoc.cpp index 0043dec..8bb933c 100644 --- a/scribus/scribusdoc.cpp +++ b/scribus/scribusdoc.cpp @@ -11131,7 +11131,10 @@ void ScribusDoc::itemSelection_FlipH() { PageItem* currItem=m_Selection->itemAt(a); currItem->getBoundingRect(&ix, &iy, &iw, &ih); + + // Twice the length to center it in the current selection double dx = ((gw / 2.0) - ((ix - gx) + (iw - ix) / 2.0)) * 2.0; + if (currItem->rotation() != 0.0) { double ix2, iy2, iw2, ih2; @@ -11145,7 +11148,7 @@ void ScribusDoc::itemSelection_FlipH() currItem->flipImageH(); if (currItem->itemType() != PageItem::Line) MirrorPolyH(currItem); - currItem->moveBy(dx, 0, true); + currItem->moveBy(dx, 0, false); currItem->GrStartX = currItem->width() - currItem->GrStartX; currItem->GrEndX = currItem->width() - currItem->GrEndX; if (currItem->isArc())