26#ifdef JUCE_GUI_EXTRA_H_INCLUDED
32 #error "Incorrect use of JUCE cpp file"
35#define JUCE_CORE_INCLUDE_OBJC_HELPERS 1
36#define JUCE_CORE_INCLUDE_COM_SMART_PTR 1
37#define JUCE_CORE_INCLUDE_JNI_HELPERS 1
38#define JUCE_CORE_INCLUDE_NATIVE_HEADERS 1
39#define JUCE_EVENTS_INCLUDE_WIN32_MESSAGE_WINDOW 1
40#define JUCE_GRAPHICS_INCLUDE_COREGRAPHICS_HELPERS 1
41#define JUCE_GUI_BASICS_INCLUDE_XHEADERS 1
42#define JUCE_GUI_BASICS_INCLUDE_SCOPED_THREAD_DPI_AWARENESS_SETTER 1
44#ifndef JUCE_PUSH_NOTIFICATIONS
45 #define JUCE_PUSH_NOTIFICATIONS 0
53 #import <WebKit/WebKit.h>
55 #import <IOKit/IOKitLib.h>
56 #import <IOKit/IOCFPlugIn.h>
57 #import <IOKit/hid/IOHIDLib.h>
58 #import <IOKit/hid/IOHIDKeys.h>
59 #import <IOKit/pwr_mgt/IOPMLib.h>
61 #if JUCE_PUSH_NOTIFICATIONS
62 #import <Foundation/NSUserNotification.h>
64 #include "native/juce_PushNotifications_mac.cpp"
70 #import <WebKit/WebKit.h>
73 #if JUCE_PUSH_NOTIFICATIONS
74 #import <UserNotifications/UserNotifications.h>
75 #include "native/juce_PushNotifications_ios.cpp"
80 #if JUCE_PUSH_NOTIFICATIONS
81 #include "native/juce_PushNotifications_android.cpp"
94 #if JUCE_USE_WIN_WEBVIEW2
95 #include <windows.foundation.h>
96 #include <windows.foundation.collections.h>
99 JUCE_BEGIN_IGNORE_WARNINGS_MSVC (4265)
101 #include <wrl/wrappers/corewrappers.h>
102 JUCE_END_IGNORE_WARNINGS_MSVC
104 #include "WebView2.h"
106 JUCE_BEGIN_IGNORE_WARNINGS_MSVC (4458)
107 #include "WebView2EnvironmentOptions.h"
108 JUCE_END_IGNORE_WARNINGS_MSVC
114#elif (JUCE_LINUX || JUCE_BSD) && JUCE_WEB_BROWSER
115 JUCE_BEGIN_IGNORE_WARNINGS_GCC_LIKE (
"-Wzero-as-null-pointer-constant",
"-Wparentheses",
"-Wdeprecated-declarations")
119 #include <gtk/gtkx.h>
120 #include <glib-unix.h>
121 #include <webkit2/webkit2.h>
123 JUCE_END_IGNORE_WARNINGS_GCC_LIKE
145#if JUCE_MAC || JUCE_IOS
148 #include "native/juce_NSViewFrameWatcher_mac.h"
149 #include "native/juce_NSViewComponent_mac.mm"
150 #include "native/juce_AppleRemote_mac.mm"
151 #include "native/juce_SystemTrayIcon_mac.cpp"
155 #include "native/juce_UIViewComponent_ios.mm"
159 #include "native/juce_WebBrowserComponent_mac.mm"
164 #include "native/juce_ActiveXComponent_windows.cpp"
165 #include "native/juce_HWNDComponent_windows.cpp"
167 #include "native/juce_WebBrowserComponent_windows.cpp"
169 #include "native/juce_SystemTrayIcon_windows.cpp"
172#elif JUCE_LINUX || JUCE_BSD
173 JUCE_BEGIN_IGNORE_WARNINGS_GCC_LIKE (
"-Wzero-as-null-pointer-constant")
175 #include <juce_gui_basics/native/juce_ScopedWindowAssociation_linux.h>
179 #if JUCE_USE_EXTERNAL_TEMPORARY_SUBPROCESS
180 #include "juce_LinuxSubprocessHelperBinaryData.h"
183 #include "native/juce_WebBrowserComponent_linux.cpp"
186 JUCE_END_IGNORE_WARNINGS_GCC_LIKE
192 #include "native/juce_AndroidViewComponent.cpp"
195 #include "native/juce_WebBrowserComponent_android.cpp"