if (!MakeCurrent())
LOG(WARNING) << "Failed to bind gl context";
evas_object_image_native_surface_set(content_image_, nullptr);
+ evas_object_image_pixels_get_callback_set(content_image_, nullptr, nullptr);
evas_gl_surface_destroy(evas_gl_, evas_gl_surface_);
+ evas_gl_surface_ = nullptr;
}
if (!ClearCurrent())
LOG(WARNING) << "Failed to unbind gl context";
- if (evas_gl_context_)
+ if (evas_gl_context_) {
evas_gl_context_destroy(evas_gl_, evas_gl_context_);
- if (evas_gl_config_)
+ evas_gl_context_ = nullptr;
+ }
+ if (evas_gl_config_) {
evas_gl_config_free(evas_gl_config_);
- if (evas_gl_)
+ evas_gl_config_ = nullptr;
+ }
+ if (evas_gl_) {
evas_gl_free(evas_gl_);
+ evas_gl_ = nullptr;
+ }
elm_object_part_content_unset(content_image_elm_host_, "overlay");
evas_object_event_callback_del(content_image_, EVAS_CALLBACK_FOCUS_IN,
if (!window_host || !window_host->window())
return;
- aura::Window* focused_window =
- aura::client::GetFocusClient(window_host->window())->GetFocusedWindow();
- if (focused_window)
- focused_window->LostFocus();
+ aura::client::FocusClient* focus_client =
+ aura::client::GetFocusClient(window_host->window());
+ if (focus_client) {
+ aura::Window* focused_window = focus_client->GetFocusedWindow();
+
+ if (focused_window)
+ focused_window->LostFocus();
+ }
if (IsMobileProfile() && thiz->GetSelectionController()) {
thiz->GetSelectionController()->HideHandleAndContextMenu();
EflWindow::~EflWindow() {
PlatformEventSource::GetInstance()->RemovePlatformEventDispatcher(this);
+ if (EflWindow* window = window_manager_->GetWindow(native_view_))
+ window_manager_->RemoveWindow(native_view_);
+
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kEnableOffscreenRendering))
return;
void AcceptLanguagesHelper::RemoveAcceptLangsChangedCallback(
AcceptLangsChangedCallback callback) {
-#if !defined(EWK_BRINGUP) // FIXME: m94 bringup
for (size_t i = 0; i < accept_langs_changed_callbacks_.size(); ++i) {
if (accept_langs_changed_callbacks_[i] == callback) {
accept_langs_changed_callbacks_.erase(
return;
}
}
-#endif
}
void AcceptLanguagesHelper::NotifyAcceptLangsChanged() {
class AcceptLanguagesHelper {
public:
using AcceptLangsChangedCallback =
- base::OnceCallback<void(const std::string&)>;
+ base::RepeatingCallback<void(const std::string&)>;
AcceptLanguagesHelper();
~AcceptLanguagesHelper();
content::GetContentClientExport()->browser());
// Initialize accept languages
SyncAcceptLanguages(cbce->GetAcceptLangs(nullptr));
- accept_langs_changed_callback_ =
- base::BindOnce(&EWebView::SyncAcceptLanguages, base::Unretained(this));
- cbce->AddAcceptLangsChangedCallback(
- std::move(accept_langs_changed_callback_));
+ accept_langs_changed_callback_ = base::BindRepeating(
+ &EWebView::SyncAcceptLanguages, base::Unretained(this));
+ cbce->AddAcceptLangsChangedCallback(accept_langs_changed_callback_);
// If EWebView is created by window.open, RenderView is already created
// before initializing WebContents. So we should manually invoke
LOG(INFO) << "EWebView: " << this;
auto cbce = static_cast<ContentBrowserClientEfl*>(
content::GetContentClientExport()->browser());
-#if !defined(EWK_BRINGUP) // FIXME: m94 bringup
- cbce->RemoveAcceptLangsChangedCallback(
- std::move(accept_langs_changed_callback_));
-#endif
+ cbce->RemoveAcceptLangsChangedCallback(accept_langs_changed_callback_);
#if defined(TIZEN_PEPPER_EXTENSIONS)
UnregisterPepperExtensionDelegate();
#endif