Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(292)

Side by Side Diff: Source/core/html/shadow/ClearButtonElement.h

Issue 594093002: Fix for mouse capture and release on ClearButtonElement (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 24 matching lines...) Expand all
35 public: 35 public:
36 class ClearButtonOwner : public WillBeGarbageCollectedMixin { 36 class ClearButtonOwner : public WillBeGarbageCollectedMixin {
37 public: 37 public:
38 virtual ~ClearButtonOwner() { } 38 virtual ~ClearButtonOwner() { }
39 virtual void focusAndSelectClearButtonOwner() = 0; 39 virtual void focusAndSelectClearButtonOwner() = 0;
40 virtual bool shouldClearButtonRespondToMouseEvents() = 0; 40 virtual bool shouldClearButtonRespondToMouseEvents() = 0;
41 virtual void clearValue() = 0; 41 virtual void clearValue() = 0;
42 }; 42 };
43 43
44 static PassRefPtrWillBeRawPtr<ClearButtonElement> create(Document&, ClearBut tonOwner&); 44 static PassRefPtrWillBeRawPtr<ClearButtonElement> create(Document&, ClearBut tonOwner&);
45 void releaseCapture();
46 void removeClearButtonOwner() { m_clearButtonOwner = nullptr; } 45 void removeClearButtonOwner() { m_clearButtonOwner = nullptr; }
47 46
48 virtual void trace(Visitor*) override; 47 virtual void trace(Visitor*) override;
49 48
50 private: 49 private:
51 ClearButtonElement(Document&, ClearButtonOwner&); 50 ClearButtonElement(Document&, ClearButtonOwner&);
52 virtual void detach(const AttachContext& = AttachContext()) override; 51 virtual void detach(const AttachContext& = AttachContext()) override;
53 virtual bool isMouseFocusable() const override { return false; } 52 virtual bool isMouseFocusable() const override { return false; }
54 virtual void defaultEventHandler(Event*) override; 53 virtual void defaultEventHandler(Event*) override;
55 virtual bool isClearButtonElement() const override; 54 virtual bool isClearButtonElement() const override;
56 55
57 RawPtrWillBeMember<ClearButtonOwner> m_clearButtonOwner; 56 RawPtrWillBeMember<ClearButtonOwner> m_clearButtonOwner;
58 bool m_capturing;
59 }; 57 };
60 58
61 DEFINE_TYPE_CASTS(ClearButtonElement, Element, element, element->isClearButtonEl ement(), element.isClearButtonElement()); 59 DEFINE_TYPE_CASTS(ClearButtonElement, Element, element, element->isClearButtonEl ement(), element.isClearButtonElement());
62 60
63 } // namespace 61 } // namespace
64 62
65 #endif // ClearButtonElement_h 63 #endif // ClearButtonElement_h
OLDNEW
« no previous file with comments | « Source/core/html/forms/BaseMultipleFieldsDateAndTimeInputType.cpp ('k') | Source/core/html/shadow/ClearButtonElement.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698