Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5222)

Unified Diff: chrome/browser/extensions/api/tabs/tabs_event_router.cc

Issue 232773011: Zoom Extension API (work in progress) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Took callbacks, zoom modes, and observer stuff out of content, and reimplemented similar functional… Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/api/tabs/tabs_event_router.cc
diff --git a/chrome/browser/extensions/api/tabs/tabs_event_router.cc b/chrome/browser/extensions/api/tabs/tabs_event_router.cc
index edf2fb31aef8055e3fd6dae9e0625f268a2687da..5c7f238ad4540106b52550380bc03e7766674277 100644
--- a/chrome/browser/extensions/api/tabs/tabs_event_router.cc
+++ b/chrome/browser/extensions/api/tabs/tabs_event_router.cc
@@ -554,4 +554,31 @@ void TabsEventRouter::TabPinnedStateChanged(WebContents* contents, int index) {
}
}
+void TabsEventRouter::OnZoomChangeInitiated(content::WebContents* web_contents,
+ double old_zoom_level,
+ double new_zoom_level,
+ ZoomMode zoom_mode) {
+ DCHECK(web_contents);
+ int tab_id = ExtensionTabUtil::GetTabId(web_contents);
+ if (tab_id < 0)
+ return;
+
+ // Prepare the zoom change information.
+ api::tabs::OnZoomChange::ZoomChangeInfo zoom_change_info;
+ zoom_change_info.tab_id = tab_id;
+ zoom_change_info.old_zoom_factor =
+ content::ZoomLevelToZoomFactor(old_zoom_level);
+ zoom_change_info.new_zoom_factor =
+ content::ZoomLevelToZoomFactor(new_zoom_level);
+ ZoomModeToZoomSettings(zoom_mode,
+ &zoom_change_info.zoom_settings);
+
+ // Dispatch the |onZoomChange| event.
+ Profile* profile = Profile::FromBrowserContext(
+ web_contents->GetBrowserContext());
+ DispatchEvent(profile, tabs::OnZoomChange::kEventName,
+ api::tabs::OnZoomChange::Create(zoom_change_info),
+ EventRouter::USER_GESTURE_UNKNOWN);
+}
+
} // namespace extensions
« no previous file with comments | « chrome/browser/extensions/api/tabs/tabs_event_router.h ('k') | chrome/browser/extensions/api/tabs/tabs_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698