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

Unified Diff: ash/devtools/ui_element_delegate.h

Issue 2776543002: Create a unified UIElement interface for Widget, View and Window. (Closed)
Patch Set: nits Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: ash/devtools/ui_element_delegate.h
diff --git a/ash/devtools/ui_element_delegate.h b/ash/devtools/ui_element_delegate.h
new file mode 100644
index 0000000000000000000000000000000000000000..edb85885d31534f7b011a6c98c51825694476ab2
--- /dev/null
+++ b/ash/devtools/ui_element_delegate.h
@@ -0,0 +1,51 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef ASH_DEVTOOLS_UI_ELEMENT_DELEGATE_H_
+#define ASH_DEVTOOLS_UI_ELEMENT_DELEGATE_H_
+
+#include <vector>
+
+#include "ash/ash_export.h"
+#include "base/macros.h"
+#include "ui/aura/window.h"
+
+namespace ash {
+namespace devtools {
+
+class UIElement;
+
+class ASH_EXPORT UIElementDelegate {
+ public:
+ UIElementDelegate(){};
+ ~UIElementDelegate(){};
sadrul 2017/05/09 04:58:07 Make the dtor virtual You may need to move the bo
thanhph 2017/05/09 20:52:46 Added. The dtor code runs ok here.
+
+ // |parent| adds |child| in DOM tree.
+ virtual void OnUIElementAdded(UIElement* parent, UIElement* child);
sadrul 2017/05/09 04:58:07 These should be pure virtuals (i.e. = 0;)
thanhph 2017/05/09 20:52:46 Done.
+
+ // Move |child| to different sibling location under |parent| in DOM tree.
+ virtual void OnUIElementReordered(UIElement* parent, UIElement* child);
+
+ // Add map tracking node id to element.
+ virtual void AddNodeIdMap(UIElement* ui_element);
+
+ // Remove map tracking node id to element.
+ virtual void RemoveNodeIdMap(UIElement* ui_element);
sadrul 2017/05/09 04:58:07 AddNodeIdMap() And RemoveNodeIdMap() should not be
thanhph 2017/05/09 20:52:46 Done. When ui_element is being constructed, the co
+
+ // Retun true if element is sucessfully removed in DOM tree, false otherwise.
+ virtual bool OnUIElementRemoved(UIElement* ui_element);
+
+ // Update CSS agent when bounds change.
+ virtual void OnUIElementBoundsChanged(UIElement* ui_element);
+
+ // Return |window| highlighting status.
+ virtual bool IsHighlightingWindow(aura::Window* window);
sadrul 2017/05/09 04:58:07 This feels a little bit weird here. We may be able
thanhph 2017/05/09 20:52:46 Acknowledged.
+
+ DISALLOW_COPY_AND_ASSIGN(UIElementDelegate);
+};
+
+} // namespace devtools
+} // namespace ash
+
+#endif // ASH_DEVTOOLS_UI_ELEMENT_DELEGATE_H_

Powered by Google App Engine
This is Rietveld 408576698