diff options
author | Tom Sepez <tsepez@chromium.org> | 2018-07-03 17:26:34 +0000 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2018-07-03 17:26:34 +0000 |
commit | 2c537bf828eacdf90c3e3b45efc61c579a744629 (patch) | |
tree | 388618a514af0a5ed3ba96549c820851ea36607c | |
parent | 931a6b9c253f161f8016064eee601cd238ed246f (diff) | |
download | pdfium-2c537bf828eacdf90c3e3b45efc61c579a744629.tar.xz |
Use UnownedPtr<> in cfwl_messagekillfocus.h
Also make private member along the way.
Change-Id: I08a006a1bcca4e8ca21834dfda695a2d77d0a431
Reviewed-on: https://pdfium-review.googlesource.com/36930
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
-rw-r--r-- | xfa/fwl/cfwl_combolist.cpp | 4 | ||||
-rw-r--r-- | xfa/fwl/cfwl_messagekillfocus.cpp | 5 | ||||
-rw-r--r-- | xfa/fwl/cfwl_messagekillfocus.h | 11 |
3 files changed, 15 insertions, 5 deletions
diff --git a/xfa/fwl/cfwl_combolist.cpp b/xfa/fwl/cfwl_combolist.cpp index 004fbb46b9..5aae3cddd4 100644 --- a/xfa/fwl/cfwl_combolist.cpp +++ b/xfa/fwl/cfwl_combolist.cpp @@ -122,8 +122,8 @@ void CFWL_ComboList::OnDropListFocusChanged(CFWL_Message* pMsg, bool bSet) { CFWL_MessageKillFocus* pKill = static_cast<CFWL_MessageKillFocus*>(pMsg); CFWL_ComboBox* pOuter = static_cast<CFWL_ComboBox*>(m_pOuter); - if (pKill->m_pSetFocus == m_pOuter || - pKill->m_pSetFocus == pOuter->GetComboEdit()) { + if (pKill->IsFocusedOnWidget(m_pOuter) || + pKill->IsFocusedOnWidget(pOuter->GetComboEdit())) { pOuter->ShowDropList(false); } } diff --git a/xfa/fwl/cfwl_messagekillfocus.cpp b/xfa/fwl/cfwl_messagekillfocus.cpp index 55247d1f2e..34c4c053e7 100644 --- a/xfa/fwl/cfwl_messagekillfocus.cpp +++ b/xfa/fwl/cfwl_messagekillfocus.cpp @@ -17,7 +17,10 @@ CFWL_MessageKillFocus::CFWL_MessageKillFocus(CFWL_Widget* pSrcTarget, CFWL_Widget* pDstTarget) : CFWL_Message(CFWL_Message::Type::KillFocus, pSrcTarget, pDstTarget) {} -CFWL_MessageKillFocus::~CFWL_MessageKillFocus() {} +CFWL_MessageKillFocus::CFWL_MessageKillFocus( + const CFWL_MessageKillFocus& that) = default; + +CFWL_MessageKillFocus::~CFWL_MessageKillFocus() = default; std::unique_ptr<CFWL_Message> CFWL_MessageKillFocus::Clone() { return pdfium::MakeUnique<CFWL_MessageKillFocus>(*this); diff --git a/xfa/fwl/cfwl_messagekillfocus.h b/xfa/fwl/cfwl_messagekillfocus.h index d6ca799efb..79aaebed6c 100644 --- a/xfa/fwl/cfwl_messagekillfocus.h +++ b/xfa/fwl/cfwl_messagekillfocus.h @@ -9,18 +9,25 @@ #include <memory> +#include "core/fxcrt/unowned_ptr.h" #include "xfa/fwl/cfwl_message.h" class CFWL_MessageKillFocus : public CFWL_Message { public: explicit CFWL_MessageKillFocus(CFWL_Widget* pSrcTarget); CFWL_MessageKillFocus(CFWL_Widget* pSrcTarget, CFWL_Widget* pDstTarget); + CFWL_MessageKillFocus(const CFWL_MessageKillFocus& that); ~CFWL_MessageKillFocus() override; - // CFWL_Message + // CFWL_Message: std::unique_ptr<CFWL_Message> Clone() override; - CFWL_Widget* m_pSetFocus; + bool IsFocusedOnWidget(const CFWL_Widget* pWidget) const { + return pWidget == m_pSetFocus.Get(); + } + + private: + UnownedPtr<CFWL_Widget> m_pSetFocus; }; #endif // XFA_FWL_CFWL_MESSAGEKILLFOCUS_H_ |