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

Side by Side Diff: third_party/WebKit/Source/web/WebLocalFrameImpl.h

Issue 2333813002: Introduce WebInputMethodController to blink (Closed)
Patch Set: Explicitly asking for TextInputState updates Created 4 years, 1 month 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) 2009 Google Inc. All rights reserved. 2 * Copyright (C) 2009 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 are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 class ScrollableArea; 55 class ScrollableArea;
56 class SharedWorkerRepositoryClientImpl; 56 class SharedWorkerRepositoryClientImpl;
57 class TextFinder; 57 class TextFinder;
58 class WebAssociatedURLLoader; 58 class WebAssociatedURLLoader;
59 struct WebAssociatedURLLoaderOptions; 59 struct WebAssociatedURLLoaderOptions;
60 class WebAutofillClient; 60 class WebAutofillClient;
61 class WebDataSourceImpl; 61 class WebDataSourceImpl;
62 class WebDevToolsAgentImpl; 62 class WebDevToolsAgentImpl;
63 class WebDevToolsFrontendImpl; 63 class WebDevToolsFrontendImpl;
64 class WebFrameClient; 64 class WebFrameClient;
65 class WebInputMethodControllerImpl;
65 class WebNode; 66 class WebNode;
66 class WebPerformance; 67 class WebPerformance;
67 class WebPlugin; 68 class WebPlugin;
68 class WebPluginContainerImpl; 69 class WebPluginContainerImpl;
69 class WebScriptExecutionCallback; 70 class WebScriptExecutionCallback;
70 class WebSuspendableTask; 71 class WebSuspendableTask;
71 class WebView; 72 class WebView;
72 class WebViewImpl; 73 class WebViewImpl;
73 enum class WebFrameLoadType; 74 enum class WebFrameLoadType;
74 struct FrameLoadRequest; 75 struct FrameLoadRequest;
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after
396 // DevTools front-end bindings. 397 // DevTools front-end bindings.
397 void setDevToolsFrontend(WebDevToolsFrontendImpl* frontend) { 398 void setDevToolsFrontend(WebDevToolsFrontendImpl* frontend) {
398 m_webDevToolsFrontend = frontend; 399 m_webDevToolsFrontend = frontend;
399 } 400 }
400 WebDevToolsFrontendImpl* devToolsFrontend() { return m_webDevToolsFrontend; } 401 WebDevToolsFrontendImpl* devToolsFrontend() { return m_webDevToolsFrontend; }
401 402
402 WebNode contextMenuNode() const { return m_contextMenuNode.get(); } 403 WebNode contextMenuNode() const { return m_contextMenuNode.get(); }
403 void setContextMenuNode(Node* node) { m_contextMenuNode = node; } 404 void setContextMenuNode(Node* node) { m_contextMenuNode = node; }
404 void clearContextMenuNode() { m_contextMenuNode.clear(); } 405 void clearContextMenuNode() { m_contextMenuNode.clear(); }
405 406
407 WebInputMethodControllerImpl* inputMethodController() const;
408
406 DECLARE_TRACE(); 409 DECLARE_TRACE();
407 410
408 private: 411 private:
409 friend class FrameLoaderClientImpl; 412 friend class FrameLoaderClientImpl;
410 413
411 WebLocalFrameImpl(WebTreeScopeType, WebFrameClient*); 414 WebLocalFrameImpl(WebTreeScopeType, WebFrameClient*);
412 WebLocalFrameImpl(WebRemoteFrame*, WebFrameClient*); 415 WebLocalFrameImpl(WebRemoteFrame*, WebFrameClient*);
413 416
414 // Inherited from WebFrame, but intentionally hidden: it never makes sense 417 // Inherited from WebFrame, but intentionally hidden: it never makes sense
415 // to call these on a WebLocalFrameImpl. 418 // to call these on a WebLocalFrameImpl.
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
460 463
461 // Stores the additional input events offset and scale when device metrics 464 // Stores the additional input events offset and scale when device metrics
462 // emulation is enabled. 465 // emulation is enabled.
463 IntSize m_inputEventsOffsetForEmulation; 466 IntSize m_inputEventsOffsetForEmulation;
464 float m_inputEventsScaleFactorForEmulation; 467 float m_inputEventsScaleFactorForEmulation;
465 468
466 WebDevToolsFrontendImpl* m_webDevToolsFrontend; 469 WebDevToolsFrontendImpl* m_webDevToolsFrontend;
467 470
468 Member<Node> m_contextMenuNode; 471 Member<Node> m_contextMenuNode;
469 472
473 std::unique_ptr<WebInputMethodControllerImpl> m_inputMethodController;
474
470 // Oilpan: WebLocalFrameImpl must remain alive until close() is called. 475 // Oilpan: WebLocalFrameImpl must remain alive until close() is called.
471 // Accomplish that by keeping a self-referential Persistent<>. It is 476 // Accomplish that by keeping a self-referential Persistent<>. It is
472 // cleared upon close(). 477 // cleared upon close().
473 SelfKeepAlive<WebLocalFrameImpl> m_selfKeepAlive; 478 SelfKeepAlive<WebLocalFrameImpl> m_selfKeepAlive;
474 }; 479 };
475 480
476 DEFINE_TYPE_CASTS(WebLocalFrameImpl, 481 DEFINE_TYPE_CASTS(WebLocalFrameImpl,
477 WebFrame, 482 WebFrame,
478 frame, 483 frame,
479 frame->isWebLocalFrame(), 484 frame->isWebLocalFrame(),
480 frame.isWebLocalFrame()); 485 frame.isWebLocalFrame());
481 486
482 } // namespace blink 487 } // namespace blink
483 488
484 #endif 489 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698