mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-02-22 04:49:12 -06:00
Created cef processhelper file specific to linux
This commit is contained in:
@@ -138,7 +138,8 @@ if (OS_MACOSX)
|
||||
endif()
|
||||
set(WEBBROWSER_HELPER_SOURCES_WINDOWS src/processhelperwindows.cpp)
|
||||
if (OS_LINUX)
|
||||
list(APPEND WEBBROWSER_HELPER_SOURCES src/processhelperwindows.cpp)
|
||||
list(APPEND WEBBROWSER_HELPER_SOURCES src/processhelperlinux.cpp)
|
||||
set(WEBBROWSER_HELPER_SOURCES_LINUX src/processhelperwindows.cpp)
|
||||
endif()
|
||||
APPEND_PLATFORM_SOURCES(WEBBROWSER_HELPER_SOURCES)
|
||||
|
||||
|
||||
67
modules/webbrowser/src/processhelperlinux.cpp
Normal file
67
modules/webbrowser/src/processhelperlinux.cpp
Normal file
@@ -0,0 +1,67 @@
|
||||
/*****************************************************************************************
|
||||
* *
|
||||
* OpenSpace *
|
||||
* *
|
||||
* Copyright (c) 2014-2022 *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of this *
|
||||
* software and associated documentation files (the "Software"), to deal in the Software *
|
||||
* without restriction, including without limitation the rights to use, copy, modify, *
|
||||
* merge, publish, distribute, sublicense, and/or sell copies of the Software, and to *
|
||||
* permit persons to whom the Software is furnished to do so, subject to the following *
|
||||
* conditions: *
|
||||
* *
|
||||
* The above copyright notice and this permission notice shall be included in all copies *
|
||||
* or substantial portions of the Software. *
|
||||
* *
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, *
|
||||
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A *
|
||||
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT *
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF *
|
||||
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE *
|
||||
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
|
||||
****************************************************************************************/
|
||||
|
||||
// Copyright (c) 2013 The Chromium Embedded Framework Authors. All rights
|
||||
// reserved. Use of this source code is governed by a BSD-style license that can
|
||||
// be found in the LICENSE file.
|
||||
|
||||
#include "include/cef_app.h"
|
||||
#include "include/webbrowserapp.h"
|
||||
#if defined(CEF_X11)
|
||||
#include <X11/Xlib.h>
|
||||
#endif
|
||||
|
||||
#if defined(CEF_X11)
|
||||
namespace {
|
||||
|
||||
int XErrorHandlerImpl(Display* display, XErrorEvent* event) {
|
||||
LOG(WARNING) << "X error received: "
|
||||
<< "type " << event->type << ", "
|
||||
<< "serial " << event->serial << ", "
|
||||
<< "error_code " << static_cast<int>(event->error_code) << ", "
|
||||
<< "request_code " << static_cast<int>(event->request_code)
|
||||
<< ", "
|
||||
<< "minor_code " << static_cast<int>(event->minor_code);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int XIOErrorHandlerImpl(Display* display) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
} // namespace
|
||||
#endif // defined(CEF_X11)
|
||||
|
||||
// Entry point function for all processes.
|
||||
int main(int argc, char* argv[]) {
|
||||
// Provide CEF with command-line arguments.
|
||||
CefMainArgs main_args(argc, argv);
|
||||
|
||||
CefRefPtr<openspace::WebBrowserApp> app(new openspace::WebBrowserApp);
|
||||
|
||||
// CEF applications have multiple sub-processes (render, GPU, etc) that share
|
||||
// the same executable. This function checks the command-line and, if this is
|
||||
// a sub-process, executes the appropriate logic.
|
||||
return CefExecuteProcess(main_args, app.get(), nullptr);
|
||||
}
|
||||
Reference in New Issue
Block a user