- add sources.
[platform/framework/web/crosswalk.git] / src / ozone / impl / ipc / display_channel.h
1 // Copyright 2013 Intel Corporation. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef OZONE_IMPL_IPC_DISPLAY_CHANNEL_H_
6 #define OZONE_IMPL_IPC_DISPLAY_CHANNEL_H_
7
8 #include "base/compiler_specific.h"
9 #include "base/strings/string16.h"
10 #include "ipc/ipc_listener.h"
11
12 namespace ozonewayland {
13
14 // OzoneDisplayChannel is responsible for listening to any messages sent by it's
15 // host counterpart in BrowserProcess. There will be always only one
16 // OzoneDisplayChannel per browser instance.
17
18 class OzoneDisplayChannel : public IPC::Listener {
19  public:
20   OzoneDisplayChannel();
21   virtual ~OzoneDisplayChannel();
22
23   // IPC::Listener implementation.
24   virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE;
25
26   void OnEstablishChannel();
27   void Register();
28   void OnWidgetStateChanged(unsigned handleid,
29                             unsigned state,
30                             unsigned width,
31                             unsigned height);
32   void OnWidgetTitleChanged(unsigned widget, string16 title);
33   void OnWidgetAttributesChanged(unsigned widget,
34                                  unsigned parent,
35                                  unsigned x,
36                                  unsigned y,
37                                  unsigned type);
38
39  private:
40   DISALLOW_COPY_AND_ASSIGN(OzoneDisplayChannel);
41 };
42
43 }  // namespace ozonewayland
44
45 #endif  // OZONE_IMPL_IPC_DISPLAY_CHANNEL_H_