Coverage Report

Created: 2018-09-25 14:53

/src/mozilla-central/toolkit/components/remote/nsGTKRemoteService.h
Line
Count
Source (jump to first uncovered line)
1
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2
/* vim:expandtab:shiftwidth=2:tabstop=2:
3
 */
4
/* This Source Code Form is subject to the terms of the Mozilla Public
5
 * License, v. 2.0. If a copy of the MPL was not distributed with this
6
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7
8
#ifndef __nsGTKRemoteService_h__
9
#define __nsGTKRemoteService_h__
10
11
#include <gdk/gdk.h>
12
#include <gdk/gdkx.h>
13
#include <gtk/gtk.h>
14
15
#include "nsIRemoteService.h"
16
#include "nsInterfaceHashtable.h"
17
#include "nsXRemoteService.h"
18
#include "mozilla/Attributes.h"
19
20
class nsGTKRemoteService final : public nsIRemoteService,
21
                                 public nsXRemoteService
22
{
23
public:
24
  NS_DECL_ISUPPORTS
25
  NS_DECL_NSIREMOTESERVICE
26
27
  nsGTKRemoteService()
28
    : mServerWindow(nullptr)
29
0
    { }
30
31
  static gboolean HandlePropertyChange(GtkWidget *widget,
32
                                       GdkEventProperty *event,
33
                                       nsIWeakReference* aThis);
34
private:
35
0
  ~nsGTKRemoteService() { }
36
37
  void HandleCommandsFor(GtkWidget* aWidget,
38
                         nsIWeakReference* aWindow);
39
40
  nsInterfaceHashtable<nsPtrHashKey<GtkWidget>, nsIWeakReference> mWindows;
41
  GtkWidget* mServerWindow;
42
};
43
44
#endif // __nsGTKRemoteService_h__