cef/libcef/browser_zoom_map.cc

36 lines
875 B
C++

// Copyright (c) 2011 The Chromium Embedded Framework Authors. All rights
// reserved. Use of this source code is governed by a BSD-style license that can
// be found in the LICENSE file.
#include "libcef/browser_zoom_map.h"
#include "libcef/cef_thread.h"
ZoomMap* ZoomMap::GetInstance() {
return Singleton<ZoomMap>::get();
}
void ZoomMap::set(const GURL& url, double zoomLevel) {
REQUIRE_UIT();
if (zoomLevel == 0.) {
// Remove the entry for this host.
Map::iterator iter = map_.find(url.host());
if (iter != map_.end())
map_.erase(iter);
} else {
// Update the entry for this host.
map_[url.host()] = zoomLevel;
}
}
bool ZoomMap::get(const GURL& url, double& zoomLevel) {
REQUIRE_UIT();
Map::const_iterator iter = map_.find(url.host());
if (iter == map_.end())
return false;
zoomLevel = iter->second;
return true;
}