Based on the work of Jung-Ick Guack <ji.guack@samsung.com>.
Original commit message:
This patch deals with following upstream changes:
1. Folder and class name changes
- Moved most of the files from rendering to layout folder
(RenderTheme* changed to LayoutTheme*)
- base/debug/trace_event.h moved to base/trace_event/trace_event.h
(base::debug* changed to base::trace_event*)
- mojo moved to thired_party/mojo
- copy make-file-arrays.py from s-blink
(Source/build/scripts/make-file-arrays.py was removed)
2. API changes
- PERMISSION_PROTECTED_MEDIA changed
to PERMISSION_PROTECTED_MEDIA_IDENTIFIER
- switches::kDisablePlugins was removed
- set_channel_id_service (arguments type changed)
- OverrideWebkitPrefs (arguments removed)
- TCPServerSocketFactory (arguments changed)
- DevToolsHttpHandlerDelegate
(removed CreateSocketForTethering)
- RenderWidgetHostViewEfl
(removed WasShown,WasHidden)
- added GLuint64 for WaitSync, ClientWaitSync
- added VectorCanvas for removed vector_canvas.h
3. Need to change API design (TODO issues)
- RenderViewHost (removed ExitFullscreen)
TODO: impl/eweb_view.cc
(http://107.108.218.239/bugzilla/show_bug.cgi?id=12079)
- WebView (removed minimumPageScaleFactor, maximumPageScaleFactor)
TODO: impl/renderer/render_view_observer_efl.cc
(http://107.108.218.239/bugzilla/show_bug.cgi?id=12080)
- ToggleFullscreenModeForTab (split by EnterFullscreenModeForTab,
ExitFullscreenModeForTab)
TODO: web_contents_delegate_efl.cc/h
(http://107.108.218.239/bugzilla/show_bug.cgi?id=12081)
NOTICE:
Critical Issue - Black Screen By Error "Failed to initialize
command buffer service (command_buffer_proxy_impl.cc)"
(http://107.108.218.239/bugzilla/show_bug.cgi?id=12078)
s-chromium (http://165.213.202.130:8080/#/c/76496/)
- excluded atomicops-internals-x86 for desktop build
- excluded xscrensaver for tizen build
-Chromium upsteam version: 40.0.2214.38
+Chromium upsteam version: 42.0.2311.0
#include "base/command_line.h"
#include "base/callback_helpers.h"
#include "base/command_line.h"
-#include "base/debug/trace_event.h"
+#include "base/trace_event/trace_event.h"
#include "base/message_loop/message_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/logging.h"
NOTIMPLEMENTED();
}
-void RenderWidgetHostViewEfl::WasShown() {
- DCHECK(host_);
- if (!host_->is_hidden())
- return;
- host_->WasShown(ui::LatencyInfo());
-}
-
-void RenderWidgetHostViewEfl::WasHidden() {
- if (!host_ || host_->is_hidden())
- return;
- host_->WasHidden();
-}
-
void RenderWidgetHostViewEfl::Focus() {
elm_object_focus_set(content_image_elm_host_, EINA_TRUE);
evas_object_focus_set(content_image_, EINA_TRUE);
#include "ui/events/gestures/motion_event_aura.h"
#include "ipc/ipc_sender.h"
-#ifndef OS_TIZEN
-// On desktops using mesa as GLES2 implementation GLchar is not defined
-// Normally chromium uses it's own modified khronos headers from third_party/khronos,
-// unfortunately those headers won't be included by Evas_GL.h
-typedef char GLchar;
+#if (EVAS_GL_API_VERSION == 1)
+// For desktop build using efl-1.9.x ~ efl-1.11.x
+// GLsync, GL*64, EvasGL*64 are not defined by Evas_GL.h
+typedef struct __GLsync* GLsync;
+typedef signed long long GLint64;
+typedef unsigned long long GLuint64;
+#else
+typedef EvasGLint64 GLint64;
+typedef EvasGLuint64 GLuint64;
#endif
struct ViewHostMsg_TextInputState_Params;
gfx::Rect GetViewBounds() const override;
bool LockMouse() override;
void UnlockMouse() override;
- void WasShown() override;
- void WasHidden() override;
void Focus() override;
void Blur() override;
bool HasFocus() const override;
#include "content/browser/tracing/tracing_controller_efl.h"
-#include "base/debug/trace_event.h"
-#include "base/debug/trace_event_impl.h"
+#include "base/trace_event/trace_event.h"
+#include "base/trace_event/trace_event_impl.h"
#include "base/json/json_writer.h"
#include "base/logging.h"
#include "content/public/browser/tracing_controller.h"
LOG(INFO) << "Traces: Recording started, categories = [" << categories
<< "], trace options = [" << trace_options << "]";
// TODO(prashant.n): Generate options from trace_options argument.
- base::debug::TraceOptions options(
- base::debug::TraceRecordMode::RECORD_CONTINUOUSLY);
- base::debug::CategoryFilter categories_(categories);
+ base::trace_event::TraceOptions options(
+ base::trace_event::TraceRecordMode::RECORD_CONTINUOUSLY);
+ base::trace_event::CategoryFilter categories_(categories);
is_tracing_ = TracingController::GetInstance()->EnableRecording(
categories_, options, TracingController::EnableRecordingDoneCallback());
'include_dirs': [
'<(DEPTH)/third_party/WebKit',
'<(DEPTH)/v8/include',
+ '<(DEPTH)/third_party/mojo/src',
],
'sources': [
'base/efl/webaudio_media_codec_info_efl.h',
['_target_name=="webcore_rendering"', {
'sources/': [
- [ 'exclude', 'rendering/RenderThemeChromiumDefault\\.cpp$' ],
+ [ 'exclude', 'layout/LayoutThemeChromiumDefault\\.cpp$' ],
+ [ 'exclude', 'layout/LayoutThemeChromiumLinux\\.cpp$' ],
],
'sources': [
'rendering/RenderThemeChromiumDefault_override.cpp',
'action_name': 'TizenUserAgentStyleSheets',
'variables': {
'scripts': [
- '<(DEPTH)/third_party/WebKit/Source/build/scripts/make-file-arrays.py',
+ '<(DEPTH)/tizen_src/chromium_impl/third_party/WebKit/Source/core/make-file-arrays.py',
],
'stylesheets': [
'<(DEPTH)/tizen_src/chromium_impl/third_party/WebKit/Source/core/rendering/themeChromiumTizen.css',
--- /dev/null
+#!/usr/bin/env python
+# Copyright (C) 2012 Google Inc. All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Usage: make-file-arrays.py [--condition=condition-string] --out-h=<header-file-name> --out-cpp=<cpp-file-name> <input-file>...
+
+import os.path
+import re
+import sys
+from optparse import OptionParser
+
+rjsmin_path = os.path.abspath(os.path.join(
+ os.path.dirname(__file__),
+ "..",
+ "..",
+ "..",
+ "..",
+ "..",
+ "..",
+ "third_party",
+ "WebKit",
+ "Source",
+ "build",
+ "scripts"))
+sys.path.append(rjsmin_path)
+import rjsmin
+
+
+def make_variable_name_and_read(file_name):
+ base_name = os.path.basename(file_name)
+ # view-source.css -> viewSource.css
+ base_name = re.sub(r'-[a-zA-Z]', lambda match: match.group(0)[1:].upper(), base_name)
+ result = re.match(r'([\w\d_]+)\.([\w\d_]+)', base_name)
+ if not result:
+ print 'Invalid input file name:', os.path.basename(file_name)
+ sys.exit(1)
+ variable_name = result.group(1)[0].lower() + result.group(1)[1:] + result.group(2).capitalize()
+ with open(file_name, 'rb') as f:
+ content = f.read()
+ return variable_name, content
+
+
+def strip_whitespace_and_comments(file_name, content):
+ result = re.match(r'.*\.([^.]+)', file_name)
+ if not result:
+ print 'The file name has no extension:', file_name
+ sys.exit(1)
+ extension = result.group(1).lower()
+ multi_line_comment = re.compile(r'/\*.*?\*/', re.MULTILINE | re.DOTALL)
+ repeating_space = re.compile(r'\s+', re.MULTILINE)
+ leading_space = re.compile(r'^\s+', re.MULTILINE)
+ trailing_space = re.compile(r'\s+$', re.MULTILINE)
+ empty_line = re.compile(r'\n+')
+ if extension == 'js':
+ content = rjsmin.jsmin(content)
+ elif extension == 'css':
+ content = multi_line_comment.sub('', content)
+ content = repeating_space.sub(' ', content)
+ content = leading_space.sub('', content)
+ content = trailing_space.sub('', content)
+ content = empty_line.sub('\n', content)
+ return content
+
+
+def process_file(file_name):
+ variable_name, content = make_variable_name_and_read(file_name)
+ content = strip_whitespace_and_comments(file_name, content)
+ size = len(content)
+ return variable_name, content
+
+
+def write_header_file(header_file_name, flag, names_and_contents, namespace):
+ with open(header_file_name, 'w') as header_file:
+ if flag:
+ header_file.write('#if ' + flag + '\n')
+ header_file.write('namespace %s {\n' % namespace)
+ for variable_name, content in names_and_contents:
+ size = len(content)
+ header_file.write('extern const char %s[%d];\n' % (variable_name, size))
+ header_file.write('}\n')
+ if flag:
+ header_file.write('#endif\n')
+
+
+def write_cpp_file(cpp_file_name, flag, names_and_contents, header_file_name, namespace):
+ with open(cpp_file_name, 'w') as cpp_file:
+ cpp_file.write('#include "config.h"\n')
+ cpp_file.write('#include "%s"\n' % os.path.basename(header_file_name))
+ if flag:
+ cpp_file.write('#if ' + flag + '\n')
+ cpp_file.write('namespace %s {\n' % namespace)
+ for variable_name, content in names_and_contents:
+ cpp_file.write(cpp_constant_string(variable_name, content))
+ cpp_file.write('}\n')
+ if flag:
+ cpp_file.write('#endif\n')
+
+
+def cpp_constant_string(variable_name, content):
+ output = []
+ size = len(content)
+ output.append('const char %s[%d] = {\n' % (variable_name, size))
+ for index in range(size):
+ char_code = ord(content[index])
+ if char_code < 128:
+ output.append('%d' % char_code)
+ else:
+ output.append(r"'\x%02x'" % char_code)
+ output.append(',' if index != len(content) - 1 else '};\n')
+ if index % 20 == 19:
+ output.append('\n')
+ output.append('\n')
+ return ''.join(output)
+
+
+def main():
+ parser = OptionParser()
+ parser.add_option('--out-h', dest='out_header')
+ parser.add_option('--out-cpp', dest='out_cpp')
+ parser.add_option('--condition', dest='flag')
+ parser.add_option('--namespace', dest='namespace', default='blink')
+ (options, args) = parser.parse_args()
+ if len(args) < 1:
+ parser.error('Need one or more input files')
+ if not options.out_header:
+ parser.error('Need to specify --out-h=filename')
+ if not options.out_cpp:
+ parser.error('Need to specify --out-cpp=filename')
+
+ if options.flag:
+ options.flag = options.flag.replace(' AND ', ' && ')
+ options.flag = options.flag.replace(' OR ', ' || ')
+
+ names_and_contents = [process_file(file_name) for file_name in args]
+
+ if options.out_header:
+ write_header_file(options.out_header, options.flag, names_and_contents, options.namespace)
+ write_cpp_file(options.out_cpp, options.flag, names_and_contents, options.out_header, options.namespace)
+
+
+if __name__ == '__main__':
+ sys.exit(main())
// Define theme method to something else, because we want to have our own
#define theme not_theme
-#include "third_party/WebKit/Source/core/rendering/RenderThemeChromiumDefault.cpp"
+#include "third_party/WebKit/Source/core/layout/LayoutThemeChromiumDefault.cpp"
namespace blink {
-PassRefPtr<RenderTheme> RenderThemeChromiumTizen::create()
+PassRefPtr<LayoutTheme> RenderThemeChromiumTizen::create()
{
return adoptRef(new RenderThemeChromiumTizen());
}
-RenderTheme& RenderTheme::theme()
+LayoutTheme& LayoutTheme::theme()
{
- DEFINE_STATIC_REF(RenderTheme, renderTheme, (RenderThemeChromiumTizen::create()));
+ DEFINE_STATIC_REF(LayoutTheme, renderTheme, (RenderThemeChromiumTizen::create()));
return *renderTheme;
}
String RenderThemeChromiumTizen::extraDefaultStyleSheet()
{
- return RenderThemeChromiumDefault::extraDefaultStyleSheet() +
+ return LayoutThemeChromiumDefault::extraDefaultStyleSheet() +
String(themeChromiumTizenCss, sizeof(themeChromiumTizenCss));
}
#ifndef RenderThemeChromiumTizen_h
#define RenderThemeChromiumTizen_h
-#include "core/rendering/RenderThemeChromiumDefault.h"
+#include "core/layout/LayoutThemeChromiumDefault.h"
namespace blink {
-class RenderThemeChromiumTizen final : public RenderThemeChromiumDefault {
+class RenderThemeChromiumTizen final : public LayoutThemeChromiumDefault {
public:
- static PassRefPtr<RenderTheme> create();
+ static PassRefPtr<LayoutTheme> create();
virtual String extraDefaultStyleSheet() override;
virtual bool delegatesMenuListRendering() const override { return true; }
efl::AppendPortParams(*p_command_line);
p_command_line->AppendSwitch(switches::kNoSandbox);
- p_command_line->AppendSwitch(switches::kDisablePlugins);
// Enables glFinish call
p_command_line->AppendSwitch(switches::kWaitForFrameComplete);
#endif
#if defined(OS_TIZEN)
- p_command_line->AppendSwitch(switches::kEnableOverscrollNotifications);
#if !defined(EWK_BRINGUP)
p_command_line->AppendSwitch(switches::kEnableGestureTapHighlight);
#endif
void CommandLineEfl::AppendProcessSpecificArgs(CommandLine& command_line) {
std::string process_type = command_line.GetSwitchValueASCII(switches::kProcessType);
- if (process_type == switches::kRendererProcess) {
- command_line.AppendSwitch(switches::kDisablePlugins);
- }
AppendUserArgs(command_line);
}
void ContentBrowserClientEfl::OverrideWebkitPrefs(
content::RenderViewHost* render_view_host,
- const GURL& url,
content::WebPreferences* prefs) {
// TODO(dennis.oh): See http://107.108.218.239/bugzilla/show_bug.cgi?id=9507
// This pref should be set to false again someday.
}
case content::PERMISSION_NOTIFICATIONS:
{
+#if !defined(EWK_BRINGUP)
notification_controller_->RequestPermission(web_contents,
requesting_frame,
result_callback);
+#endif
break;
}
- case content::PERMISSION_PROTECTED_MEDIA:
+ case content::PERMISSION_PROTECTED_MEDIA_IDENTIFIER:
case content::PERMISSION_MIDI_SYSEX:
case content::PERMISSION_PUSH_MESSAGING: {
NOTIMPLEMENTED() << "RequestPermission not implemented for "
net::CookieOptions* options) override;
virtual void OverrideWebkitPrefs(content::RenderViewHost* render_view_host,
- const GURL& url,
content::WebPreferences* prefs) override;
virtual void RenderProcessWillLaunch(content::RenderProcessHost* host) override;
#include "grit/devtools_resources.h"
#include "net/base/net_errors.h"
#include "net/socket/tcp_server_socket.h"
+#include "net/base/net_errors.h"
#include "ui/base/resource/resource_bundle.h"
#include <stdlib.h>
#include <time.h>
// Copy of internal class implementation from
// content/shell/browser/shell_devtools_delegate.cc
+
+const uint16 kMinTetheringPort = 9333;
+const uint16 kMaxTetheringPort = 9444;
+const int kBackLog = 10;
+
class TCPServerSocketFactory
: public content::DevToolsHttpHandler::ServerSocketFactory {
public:
- TCPServerSocketFactory(const std::string& address, int port, int backlog)
- : content::DevToolsHttpHandler::ServerSocketFactory(
- address, port, backlog) {}
-
- scoped_ptr<net::ServerSocket> Create() const override {
- return scoped_ptr<net::ServerSocket>(
- new net::TCPServerSocket(NULL, net::NetLog::Source()));
- }
+ TCPServerSocketFactory(const std::string& address, uint16 port)
+ : address_(address),
+ port_(port) {}
private:
- DISALLOW_COPY_AND_ASSIGN(TCPServerSocketFactory);
+ scoped_ptr<net::ServerSocket> CreateForHttpServer() override {
+ scoped_ptr<net::ServerSocket> socket(
+ new net::TCPServerSocket(nullptr, net::NetLog::Source()));
+ if (socket->ListenWithAddressAndPort(address_, port_, kBackLog) != net::OK)
+ return scoped_ptr<net::ServerSocket>();
+
+ return socket;
+ }
+
+ std::string address_;
+ uint16 port_;
};
} // namespace
DevToolsDelegateEfl::DevToolsDelegateEfl(int port)
: port_(0)
- , browser_context_(NULL)
- , devtools_http_handler_(NULL) {
-
+ , browser_context_(NULL) {
+#if !defined(EWK_BRINGUP)
// It's a hacky way to early detected if port is available. The problem is
// that the only thing we can do after checking is hope that noone will take
// the port until it's initialized on IO thread again. The best approach would
port_ = givenIp.port();
scoped_ptr<content::DevToolsHttpHandler::ServerSocketFactory> factory(
- new TCPServerSocketFactory(addr, port_, 1));
+ new TCPServerSocketFactory(addr, port_));
devtools_http_handler_ =
content::DevToolsHttpHandler::Start(factory.Pass(),
std::string(), this, base::FilePath());
+#endif
}
DevToolsDelegateEfl::~DevToolsDelegateEfl() {
}
void DevToolsDelegateEfl::Stop() {
+#if !defined(EWK_BRINGUP)
if (devtools_http_handler_) {
// The call below destroys this.
devtools_http_handler_->Stop();
} else {
BrowserThread::DeleteSoon(BrowserThread::UI, FROM_HERE, this);
}
+#endif
}
std::string DevToolsDelegateEfl::GetDiscoveryPageHTML() {
return base::FilePath();
}
-scoped_ptr<net::StreamListenSocket> DevToolsDelegateEfl::CreateSocketForTethering(
-net::StreamListenSocket::Delegate* delegate,
- std::string* name) {
- return scoped_ptr<net::StreamListenSocket>();
-}
-
} // namespace content
#include "base/basictypes.h"
#include "base/compiler_specific.h"
+#include "base/memory/scoped_ptr.h"
#include "content/public/browser/devtools_http_handler_delegate.h"
namespace content {
virtual std::string GetDiscoveryPageHTML() override;
virtual bool BundlesFrontendResources() override;
virtual base::FilePath GetDebugFrontendDir() override;
- virtual scoped_ptr<net::StreamListenSocket> CreateSocketForTethering(
- net::StreamListenSocket::Delegate* delegate,
- std::string* name) override;
DevToolsHttpHandler* devtools_http_handler() {
- return devtools_http_handler_;
+ return devtools_http_handler_.get();
}
int port() const {
return port_;
private:
int port_;
BrowserContext* browser_context_;
- DevToolsHttpHandler* devtools_http_handler_;
-
+ scoped_ptr<DevToolsHttpHandler> devtools_http_handler_;
};
} // namespace content
if (!rvh)
return;
+#if !defined(EWK_BRINGUP)
rvh->ExitFullscreen();
+#endif
}
double EWebView::GetScale() {
Name: chromium-ewk
Description: EWK API based on chromium-efl engine
-Version: 40.2214.38.51-1
+Version: 42.2311.0.11-1
Requires: chromium-efl
Libs: -L${libdir} -lchromium-ewk
Cflags: -I${includedir}/chromium-ewk
#include "printing/pdf_metafile_skia.h"
#include "printing/units.h"
#include "skia/ext/refptr.h"
-#include "skia/ext/vector_canvas.h"
+#include "base/compiler_specific.h"
+#include "skia/ext/platform_canvas.h"
#include "third_party/skia/include/core/SkCanvas.h"
#include "third_party/skia/include/core/SkRect.h"
#include "third_party/WebKit/public/web/WebPrintParams.h"
#include "third_party/WebKit/public/web/WebFrame.h"
#include "third_party/WebKit/public/web/WebView.h"
+namespace skia {
+ typedef PlatformCanvas VectorCanvas;
+}
+
namespace {
int ConvertUnit(int value, int old_unit, int new_unit) {
if (!view)
return;
+#if !defined(EWK_BRINGUP)
float min_scale = view->minimumPageScaleFactor();
float max_scale = view->maximumPageScaleFactor();
+#else
+ // TODO: (m42_2311) WebView has no minimumPageScaleFactor, maximumPageScaleFactor
+ float min_scale = 1.0; //view->minimumPageScaleFactor();
+ float max_scale = 5.0; //view->maximumPageScaleFactor();
+#endif
// Checking for change in minimum and maximum page scale factors
if (std::abs(cached_max_page_scale_factor_ - max_scale) < std::numeric_limits<float>::epsilon() &&
new net::URLRequestContextStorage(url_request_context_.get()));
storage_->set_cookie_store(
CreateCookieStore(CookieStoreConfig()));
- storage_->set_channel_id_service(new net::ChannelIDService(
+ storage_->set_channel_id_service(make_scoped_ptr(new net::ChannelIDService(
new net::DefaultChannelIDStore(NULL),
- base::WorkerPool::GetTaskRunner(true)));
+ base::WorkerPool::GetTaskRunner(true))));
storage_->set_http_user_agent_settings(new HttpUserAgentSettingsEfl());
scoped_ptr<net::HostResolver> host_resolver(
web_view_->SmartCallback<EWebViewCallbacks::WindowClosed>().call();
}
-void WebContentsDelegateEfl::ToggleFullscreenModeForTab(WebContents* web_contents,
- bool enter_fullscreen) {
- is_fullscreen_ = enter_fullscreen;
- if(enter_fullscreen)
- web_view_->SmartCallback<EWebViewCallbacks::EnterFullscreen>().call();
- else
- web_view_->SmartCallback<EWebViewCallbacks::ExitFullscreen>().call();
+void WebContentsDelegateEfl::EnterFullscreenModeForTab(content::WebContents* web_contents,
+ const GURL& origin) {
+ is_fullscreen_ = true;
+ web_view_->SmartCallback<EWebViewCallbacks::EnterFullscreen>().call();
+}
+
+void WebContentsDelegateEfl::ExitFullscreenModeForTab(content::WebContents* web_contents) {
+ is_fullscreen_ = false;
+ web_view_->SmartCallback<EWebViewCallbacks::ExitFullscreen>().call();
}
bool WebContentsDelegateEfl::IsFullscreenForTabOrPending(
virtual void CloseContents(WebContents* source) override;
- virtual void ToggleFullscreenModeForTab(WebContents* web_contents,
- bool enter_fullscreen) override;
+ void EnterFullscreenModeForTab(content::WebContents* web_contents,
+ const GURL& origin) override;
+ void ExitFullscreenModeForTab(content::WebContents* web_contents) override;
+
virtual bool IsFullscreenForTabOrPending(
const WebContents* web_contents) const override;
#if defined(TIZEN_MULTIMEDIA_SUPPORT)
<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns="http://tizen.org/ns/packages" package="chromium-efl" version="40.2214.38.51">
+<manifest xmlns="http://tizen.org/ns/packages" package="chromium-efl" version="42.2311.0.11">
<label> mini browser application for chromium-efl package </label>
<author href="www.samsung.com" email="sns.park@samsung.com">SWC</author>
<description> mini browser application based on chromium-efl </description>
Name: chromium-efl
Summary: Chromium EFL
# Set by by scripts/update-chromium-version.sh
-%define ChromiumVersion 40.2214.38
-%define Week 51
+%define ChromiumVersion 42.2311.0
+%define Week 11
Version: %{ChromiumVersion}.%{Week}
Release: 1
# The 'Group' should be specified as one of the following valid group list.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Manifest xmlns="http://schemas.tizen.org/2012/12/manifest">
<Id>kmcele1k1p</Id>
- <Version>40.2214.38.51</Version>
+ <Version>42.2311.0.11</Version>
<Type>C++App</Type>
<Descriptions>
<Description Locale="eng-PH"/>