summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/automation/automation_profile_impl.h3
-rw-r--r--chrome/browser/external_tab_container.h6
-rw-r--r--chrome/renderer/render_view.cc1
3 files changed, 8 insertions, 2 deletions
diff --git a/chrome/browser/automation/automation_profile_impl.h b/chrome/browser/automation/automation_profile_impl.h
index 28b34d9..0af0371 100644
--- a/chrome/browser/automation/automation_profile_impl.h
+++ b/chrome/browser/automation/automation_profile_impl.h
@@ -15,7 +15,8 @@ class CookieStore;
// Automation overrides for profile settings.
class AutomationProfileImpl : public Profile {
public:
- AutomationProfileImpl() : original_profile_(NULL) {
+ AutomationProfileImpl() : original_profile_(NULL),
+ tab_handle_(0) {
}
void Initialize(Profile* original_profile,
diff --git a/chrome/browser/external_tab_container.h b/chrome/browser/external_tab_container.h
index 0c19ebf..cfee279 100644
--- a/chrome/browser/external_tab_container.h
+++ b/chrome/browser/external_tab_container.h
@@ -36,7 +36,11 @@ class ExternalTabContainer : public TabContentsDelegate,
TabContents* tab_contents() const { return tab_contents_; }
// Temporary hack so we can send notifications back
- void set_tab_handle(int handle) { tab_handle_ = handle; }
+ void set_tab_handle(int handle) {
+ tab_handle_ = handle;
+ if (automation_profile_.get())
+ automation_profile_->set_tab_handle(handle);
+ }
bool Init(Profile* profile,
HWND parent,
diff --git a/chrome/renderer/render_view.cc b/chrome/renderer/render_view.cc
index add2fc1..d78dcd3 100644
--- a/chrome/renderer/render_view.cc
+++ b/chrome/renderer/render_view.cc
@@ -1602,6 +1602,7 @@ WebNavigationPolicy RenderView::PolicyForNavigationAction(
last_top_level_navigation_page_id_ != page_id_ &&
// Not interested in reloads.
type != WebKit::WebNavigationTypeReload &&
+ type != WebKit::WebNavigationTypeFormSubmitted &&
// Must be a top level frame.
frame->parent() == NULL) {
// Skip if navigation is on the same page (using '#').