summaryrefslogtreecommitdiffstats
path: root/toolkit/crashreporter/client/crashreporter_gtk_common.h
blob: 208c7ba6b0b754356a698c672d3f2145f4c26e11 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#ifndef CRASHREPORTER_GTK_COMMON_H__
#define CRASHREPORTER_GTK_COMMON_H__

#include <glib.h>
#include <gtk/gtk.h>

#include <string>
#include <vector>

#include "json/json.h"

const char kIniFile[] = "crashreporter.ini";

extern GtkWidget* gWindow;
extern GtkWidget* gSubmitReportCheck;
extern GtkWidget* gIncludeURLCheck;
extern GtkWidget* gThrobber;
extern GtkWidget* gProgressLabel;
extern GtkWidget* gCloseButton;
extern GtkWidget* gRestartButton;

extern std::vector<std::string> gRestartArgs;
extern GThread* gSendThreadID;

extern bool gInitialized;
extern bool gDidTrySend;
extern StringTable gFiles;
extern Json::Value gQueryParameters;
extern std::string gHttpProxy;
extern std::string gAuth;
extern std::string gCACertificateFile;
extern std::string gSendURL;
extern std::string gURLParameter;

void LoadProxyinfo();
gboolean CloseApp(gpointer data);
gpointer SendThread(gpointer args);
gboolean WindowDeleted(GtkWidget* window, GdkEvent* event, gpointer userData);
gboolean check_escape(GtkWidget* window, GdkEventKey* event, gpointer data);
void SubmitReportChecked(GtkButton* sender, gpointer userData);
void IncludeURLClicked(GtkButton* sender, gpointer userData);
void CloseClicked(GtkButton* button, gpointer userData);
void RestartClicked(GtkButton* button, gpointer userData);
void SaveSettings(void);

#endif  // CRASHREPORTER_GTK_COMMON_H__