summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/winrt
diff options
context:
space:
mode:
authorOliver Wolff <oliver.wolff@qt.io>2016-09-06 13:35:28 +0200
committerMaurice Kalinowski <maurice.kalinowski@qt.io>2016-09-07 04:54:45 +0000
commita5915f260ff882f3e5cf09060ffa007856a0a33f (patch)
tree9dd5c8d33b7ae0640c6f21f6e0a68095211037a7 /src/plugins/platforms/winrt
parent25d30ddb3e952ceb5964ce8cd6e8fd8aff3a2c59 (diff)
winrt: Use ComPtrs in input context
By doing so we no longer leak the input pane inside the destructor. Additionally the coding style is closer to the rest of the WinRT port. Change-Id: I0d56086719c98585cec8bc3c4bcb2d86c3ea2e79 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Diffstat (limited to 'src/plugins/platforms/winrt')
-rw-r--r--src/plugins/platforms/winrt/qwinrtinputcontext.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/plugins/platforms/winrt/qwinrtinputcontext.cpp b/src/plugins/platforms/winrt/qwinrtinputcontext.cpp
index 3f476556ee..065ed28cc0 100644
--- a/src/plugins/platforms/winrt/qwinrtinputcontext.cpp
+++ b/src/plugins/platforms/winrt/qwinrtinputcontext.cpp
@@ -59,7 +59,7 @@ QT_BEGIN_NAMESPACE
Q_LOGGING_CATEGORY(lcQpaInputMethods, "qt.qpa.input.methods")
-inline QRectF getInputPaneRect(IInputPane *pane, qreal scaleFactor)
+inline QRectF getInputPaneRect(ComPtr<IInputPane> pane, qreal scaleFactor)
{
Rect rect;
pane->get_OccludedRect(&rect);
@@ -85,16 +85,15 @@ QWinRTInputContext::QWinRTInputContext(QWinRTScreen *screen)
{
qCDebug(lcQpaInputMethods) << __FUNCTION__ << screen;
- IInputPaneStatics *statics;
+ ComPtr<IInputPaneStatics> statics;
if (FAILED(GetActivationFactory(HString::MakeReference(RuntimeClass_Windows_UI_ViewManagement_InputPane).Get(),
&statics))) {
qWarning("failed to retrieve input pane statics.");
return;
}
- IInputPane *inputPane;
+ ComPtr<IInputPane> inputPane;
statics->GetForCurrentView(&inputPane);
- statics->Release();
if (inputPane) {
EventRegistrationToken showToken, hideToken;
inputPane->add_Showing(Callback<InputPaneVisibilityHandler>(