summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--svtools/source/control/valueset.cxx2
-rw-r--r--vcl/source/app/salvtables.cxx24
2 files changed, 24 insertions, 2 deletions
diff --git a/svtools/source/control/valueset.cxx b/svtools/source/control/valueset.cxx
index a422048583c4..5b7ca0504d05 100644
--- a/svtools/source/control/valueset.cxx
+++ b/svtools/source/control/valueset.cxx
@@ -2545,7 +2545,7 @@ bool SvtValueSet::KeyInput( const KeyEvent& rKeyEvent )
}
if ( nItemPos == VALUESET_ITEM_NOTFOUND )
- return false;
+ return true;
if ( nItemPos!=VALUESET_ITEM_NONEITEM && nItemPos<nLastItem )
{
diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx
index 34c86b8fe960..19af48748b34 100644
--- a/vcl/source/app/salvtables.cxx
+++ b/vcl/source/app/salvtables.cxx
@@ -229,6 +229,9 @@ private:
}
}
+protected:
+ virtual void HandleEventListener(VclWindowEvent& rEvent);
+
public:
SalInstanceWidget(vcl::Window* pWidget, bool bTakeOwnership)
: m_xWidget(pWidget)
@@ -537,7 +540,7 @@ public:
}
};
-IMPL_LINK(SalInstanceWidget, EventListener, VclWindowEvent&, rEvent, void)
+void SalInstanceWidget::HandleEventListener(VclWindowEvent& rEvent)
{
if (rEvent.GetId() == VclEventId::WindowGetFocus || rEvent.GetId() == VclEventId::WindowActivate)
m_aFocusInHdl.Call(*this);
@@ -557,6 +560,11 @@ IMPL_LINK(SalInstanceWidget, EventListener, VclWindowEvent&, rEvent, void)
}
}
+IMPL_LINK(SalInstanceWidget, EventListener, VclWindowEvent&, rEvent, void)
+{
+ HandleEventListener(rEvent);
+}
+
namespace
{
Image createImage(const OUString& rImage)
@@ -2884,6 +2892,20 @@ private:
DECL_LINK(PopupMenuHdl, const Point&, bool);
DECL_LINK(QueryTooltipHdl, tools::Rectangle&, OUString);
+ // SalInstanceWidget has a generic listener for all these
+ // events, ignore the ones we have specializations for
+ // in VclDrawingArea
+ virtual void HandleEventListener(VclWindowEvent& rEvent) override
+ {
+ if (rEvent.GetId() == VclEventId::WindowResize ||
+ rEvent.GetId() == VclEventId::WindowKeyInput ||
+ rEvent.GetId() == VclEventId::WindowKeyUp)
+ {
+ return;
+ }
+ SalInstanceWidget::HandleEventListener(rEvent);
+ }
+
public:
SalInstanceDrawingArea(VclDrawingArea* pDrawingArea, const a11yref& rAlly,
FactoryFunction pUITestFactoryFunction, void* pUserData, bool bTakeOwnership)