diff --git a/README.md b/README.md index f695c68..11011b1 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -thrust +Thrust ====== The require-able cross-platform native application framework based on Chromium's diff --git a/src/browser/thrust_window_views.cc b/src/browser/thrust_window_views.cc index 0f47bb9..6a3032c 100644 --- a/src/browser/thrust_window_views.cc +++ b/src/browser/thrust_window_views.cc @@ -259,6 +259,18 @@ ThrustWindow::PlatformCreateWindow( set_background(views::Background::CreateStandardPanelBackground()); AddChildView(inspectable_web_contents()->GetView()->GetView()); +#if defined(OS_WIN) + if (!has_frame_) { + /* Set Window style so that we get a minimize and maximize animation */ + /* when frameless. */ + DWORD frame_style = WS_THICKFRAME | WS_MINIMIZEBOX | + WS_MAXIMIZEBOX | WS_CAPTION; + ::SetWindowLong( + GetNativeWindow()->GetHost()->GetAcceleratedWidget(), + GWL_STYLE, frame_style); + } +#endif + window_->UpdateWindowIcon(); window_->CenterWindow(bounds.size()); Layout(); diff --git a/src/renderer/renderer_client.cc b/src/renderer/renderer_client.cc index fe0a020..7c57e7b 100644 --- a/src/renderer/renderer_client.cc +++ b/src/renderer/renderer_client.cc @@ -21,6 +21,7 @@ #include "content/public/common/content_switches.h" #include "content/public/renderer/render_thread.h" #include "content/public/renderer/render_view.h" +#include "content/public/renderer/render_frame.h" #include "content/public/test/layouttest_support.h" #include "src/common/switches.h" @@ -135,7 +136,17 @@ ThrustShellRendererClient::DidCreateScriptContext( int extension_group, int world_id) { - LOG(INFO) << "&&&&&&&&&&&&&&&&&&&&&&&&&&& DID CREATE SCRIPT CONTEXT `" << frame->uniqueName().utf8() << "`"; + /* We limit the injection of WebViewBindings to the top level RenderFrames */ + content::RenderFrame* render_frame = + content::RenderFrame::FromWebFrame(frame); + if(render_frame != render_frame->GetRenderView()->GetMainRenderFrame()) { + return; + } + + LOG(INFO) << "ThrustShellRendererClient::DidCreateScriptContext `" + << frame->uniqueName().utf8() << "` " + << extension_group << " " + << world_id; ScriptContext* context = new ScriptContext(v8_context, frame); { scoped_ptr module_system(new ModuleSystem(context,