summaryrefslogtreecommitdiff
path: root/xfa/fwl/core
diff options
context:
space:
mode:
Diffstat (limited to 'xfa/fwl/core')
-rw-r--r--xfa/fwl/core/cfwl_event.h15
-rw-r--r--xfa/fwl/core/ifwl_widget.cpp5
2 files changed, 3 insertions, 17 deletions
diff --git a/xfa/fwl/core/cfwl_event.h b/xfa/fwl/core/cfwl_event.h
index e7bc15ad58..a20abaa2a2 100644
--- a/xfa/fwl/core/cfwl_event.h
+++ b/xfa/fwl/core/cfwl_event.h
@@ -78,17 +78,12 @@ class CFWL_Event {
virtual CFWL_EventType GetClassID() const;
- uint32_t Release();
-
IFWL_Widget* m_pSrcTarget;
IFWL_Widget* m_pDstTarget;
-
- private:
- uint32_t m_dwRefCount;
};
inline CFWL_Event::CFWL_Event()
- : m_pSrcTarget(nullptr), m_pDstTarget(nullptr), m_dwRefCount(1) {}
+ : m_pSrcTarget(nullptr), m_pDstTarget(nullptr) {}
inline CFWL_Event::~CFWL_Event() {}
@@ -96,14 +91,6 @@ inline CFWL_EventType CFWL_Event::GetClassID() const {
return CFWL_EventType::None;
}
-inline uint32_t CFWL_Event::Release() {
- m_dwRefCount--;
- uint32_t dwRefCount = m_dwRefCount;
- if (!m_dwRefCount)
- delete this;
- return dwRefCount;
-}
-
#define FWL_EVENT_DEF(classname, eventType, ...) \
class classname : public CFWL_Event { \
public: \
diff --git a/xfa/fwl/core/ifwl_widget.cpp b/xfa/fwl/core/ifwl_widget.cpp
index f8288eb0e4..454f4833fd 100644
--- a/xfa/fwl/core/ifwl_widget.cpp
+++ b/xfa/fwl/core/ifwl_widget.cpp
@@ -551,13 +551,12 @@ void IFWL_Widget::DispatchKeyEvent(CFWL_MsgKey* pNote) {
if (!pNote)
return;
- CFWL_EvtKey* pEvent = new CFWL_EvtKey;
+ auto pEvent = pdfium::MakeUnique<CFWL_EvtKey>();
pEvent->m_pSrcTarget = this;
pEvent->m_dwCmd = pNote->m_dwCmd;
pEvent->m_dwKeyCode = pNote->m_dwKeyCode;
pEvent->m_dwFlags = pNote->m_dwFlags;
- DispatchEvent(pEvent);
- pEvent->Release();
+ DispatchEvent(pEvent.get());
}
void IFWL_Widget::DispatchEvent(CFWL_Event* pEvent) {