diff --git a/src/domain/UBGraphicsTextItemDelegate.cpp b/src/domain/UBGraphicsTextItemDelegate.cpp index a72b32d8..3d05f1c7 100644 --- a/src/domain/UBGraphicsTextItemDelegate.cpp +++ b/src/domain/UBGraphicsTextItemDelegate.cpp @@ -386,7 +386,7 @@ void UBGraphicsTextItemDelegate::pickColor() curCursor.mergeCharFormat(format); delegated()->setTextCursor(curCursor); - if (!curCursor.hasComplexSelection()) + if (!curCursor.hasSelection()) UBGraphicsTextItem::lastUsedTextColor = selectedColor; delegated()->setSelected(true); diff --git a/src/domain/UBGraphicsWidgetItem.cpp b/src/domain/UBGraphicsWidgetItem.cpp index 0bed044b..d6e96b05 100644 --- a/src/domain/UBGraphicsWidgetItem.cpp +++ b/src/domain/UBGraphicsWidgetItem.cpp @@ -556,6 +556,15 @@ void UBGraphicsWidgetItem::sendJSLeaveEvent() page()->mainFrame()->evaluateJavaScript("if(widget && widget.onleave) { widget.onleave();}"); } +void UBGraphicsWidgetItem::sendJSResizeEvent() +{ + if (page() && page()->mainFrame()) + { + page()->mainFrame()->evaluateJavaScript("if(widget && widget.onresize) { widget.onresize();}"); + page()->mainFrame()->evaluateJavaScript("if(window && window.onresize) { window.onresize();}"); + } +} + void UBGraphicsWidgetItem::injectInlineJavaScript() { if (!sInlineJavaScriptLoaded) { @@ -654,6 +663,7 @@ void UBGraphicsWidgetItem::resize(qreal w, qreal h) void UBGraphicsWidgetItem::resize(const QSizeF & pSize) { + sendJSResizeEvent(); if (pSize != size()) { QGraphicsWebView::setMaximumSize(pSize.width(), pSize.height()); QGraphicsWebView::resize(pSize.width(), pSize.height()); diff --git a/src/domain/UBGraphicsWidgetItem.h b/src/domain/UBGraphicsWidgetItem.h index 68336a89..f7202835 100644 --- a/src/domain/UBGraphicsWidgetItem.h +++ b/src/domain/UBGraphicsWidgetItem.h @@ -165,6 +165,7 @@ class UBGraphicsWidgetItem : public QGraphicsWebView, public UBItem, public UBRe virtual void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); virtual void sendJSEnterEvent(); virtual void sendJSLeaveEvent(); + virtual void sendJSResizeEvent(); virtual void injectInlineJavaScript(); virtual void wheelEvent(QGraphicsSceneWheelEvent *event); virtual QVariant itemChange(GraphicsItemChange change, const QVariant &value); diff --git a/src/domain/UBGraphicsWidgetItemDelegate.cpp b/src/domain/UBGraphicsWidgetItemDelegate.cpp index c6b03628..dfe892cf 100644 --- a/src/domain/UBGraphicsWidgetItemDelegate.cpp +++ b/src/domain/UBGraphicsWidgetItemDelegate.cpp @@ -44,8 +44,7 @@ #include "core/memcheck.h" UBGraphicsWidgetItemDelegate::UBGraphicsWidgetItemDelegate(UBGraphicsWidgetItem* pDelegated, int widgetType) - : UBGraphicsItemDelegate(pDelegated, 0, GF_COMMON - | GF_RESPECT_RATIO) + : UBGraphicsItemDelegate(pDelegated, 0, GF_SCALABLE_Y_AXIS) , freezeAction(0) , setAsToolAction(0) {