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

Unified Diff: chrome/browser/ui/cocoa/location_bar/origin_chip_decoration.mm

Issue 731423002: Remove OriginChip code. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix gyp file and bad merge Created 5 years, 10 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/ui/cocoa/location_bar/origin_chip_decoration.mm
diff --git a/chrome/browser/ui/cocoa/location_bar/origin_chip_decoration.mm b/chrome/browser/ui/cocoa/location_bar/origin_chip_decoration.mm
deleted file mode 100644
index 09ccff2d1a0508ce1e9af939c8e11d52cdf568c2..0000000000000000000000000000000000000000
--- a/chrome/browser/ui/cocoa/location_bar/origin_chip_decoration.mm
+++ /dev/null
@@ -1,240 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#import "chrome/browser/ui/cocoa/location_bar/origin_chip_decoration.h"
-
-#include "base/metrics/histogram.h"
-#include "base/metrics/user_metrics_action.h"
-#include "base/strings/sys_string_conversions.h"
-#include "chrome/browser/browser_process.h"
-#include "chrome/browser/safe_browsing/safe_browsing_service.h"
-#include "chrome/browser/safe_browsing/ui_manager.h"
-#include "chrome/browser/search/search.h"
-#import "chrome/browser/ui/cocoa/location_bar/location_bar_view_mac.h"
-#import "chrome/browser/ui/cocoa/location_bar/location_icon_decoration.h"
-#import "chrome/browser/ui/cocoa/omnibox/omnibox_view_mac.h"
-#include "chrome/browser/ui/tabs/tab_strip_model.h"
-#include "content/public/browser/user_metrics.h"
-#include "extensions/browser/extension_icon_image.h"
-#include "grit/theme_resources.h"
-#import "ui/base/cocoa/nsview_additions.h"
-#include "ui/gfx/image/image.h"
-
-namespace {
-
-const CGFloat kInnerLeftPadding = 5;
-const CGFloat kIconLabelPadding = 2;
-const CGFloat kInnerRightPadding = 6;
-const CGFloat kOuterRightPadding = 3;
-
-// The target icon size - smaller icons will be centered, and larger icons will
-// be scaled down.
-const CGFloat kIconSize = 19;
-
-// The info-bubble point should look like it points to the bottom of the lock
-// icon. Determined with Pixie.app.
-const CGFloat kPageInfoBubblePointYOffset = 2.0;
-
-const ui::NinePartImageIds kNormalImages[3] = {
- IMAGE_GRID(IDR_ORIGIN_CHIP_NORMAL),
- IMAGE_GRID(IDR_ORIGIN_CHIP_HOVER),
- IMAGE_GRID(IDR_ORIGIN_CHIP_PRESSED)
-};
-
-const ui::NinePartImageIds kMalwareImages[3] = {
- IMAGE_GRID(IDR_ORIGIN_CHIP_MALWARE_NORMAL),
- IMAGE_GRID(IDR_ORIGIN_CHIP_MALWARE_HOVER),
- IMAGE_GRID(IDR_ORIGIN_CHIP_MALWARE_PRESSED)
-};
-
-const ui::NinePartImageIds kBrokenSSLImages[3] = {
- IMAGE_GRID(IDR_ORIGIN_CHIP_BROKENSSL_NORMAL),
- IMAGE_GRID(IDR_ORIGIN_CHIP_BROKENSSL_HOVER),
- IMAGE_GRID(IDR_ORIGIN_CHIP_BROKENSSL_PRESSED)
-};
-
-const ui::NinePartImageIds kEVImages[3] = {
- IMAGE_GRID(IDR_ORIGIN_CHIP_EV_NORMAL),
- IMAGE_GRID(IDR_ORIGIN_CHIP_EV_HOVER),
- IMAGE_GRID(IDR_ORIGIN_CHIP_EV_PRESSED)
-};
-
-} // namespace
-
-OriginChipDecoration::OriginChipDecoration(
- LocationBarViewMac* owner,
- LocationIconDecoration* location_icon)
- : ButtonDecoration(kNormalImages[0], IDR_LOCATION_BAR_HTTP,
- kNormalImages[1], IDR_LOCATION_BAR_HTTP,
- kNormalImages[2], IDR_LOCATION_BAR_HTTP, 0),
- attributes_([[NSMutableDictionary alloc] init]),
- icon_rect_(NSZeroRect),
- info_(this, owner->browser()->profile()),
- location_icon_(location_icon),
- owner_(owner) {
- DCHECK(owner_);
- [attributes_ setObject:GetFont() forKey:NSFontAttributeName];
-
- // May not be set for unit tests.
- scoped_refptr<SafeBrowsingService> sb_service =
- g_browser_process->safe_browsing_service();
- if (sb_service.get() && sb_service->ui_manager().get())
- sb_service->ui_manager()->AddObserver(this);
-}
-
-OriginChipDecoration::~OriginChipDecoration() {
- scoped_refptr<SafeBrowsingService> sb_service =
- g_browser_process->safe_browsing_service();
- if (sb_service.get() && sb_service->ui_manager().get())
- sb_service->ui_manager()->RemoveObserver(this);
-}
-
-void OriginChipDecoration::Update() {
- if (!owner_->GetToolbarModel()->ShouldShowOriginChip()) {
- SetVisible(false);
- return;
- } else {
- SetVisible(true);
- }
-
- const content::WebContents* web_contents =
- owner_->browser()->tab_strip_model()->GetActiveWebContents();
- if (!web_contents || !info_.Update(web_contents, owner_->GetToolbarModel()))
- return;
-
- if (info_.is_url_malware()) {
- SetBackgroundImageIds(kMalwareImages[0],
- kMalwareImages[1],
- kMalwareImages[2]);
- } else if (info_.security_level() == ToolbarModel::SECURITY_ERROR) {
- SetBackgroundImageIds(kBrokenSSLImages[0],
- kBrokenSSLImages[1],
- kBrokenSSLImages[2]);
- } else if (info_.security_level() == ToolbarModel::EV_SECURE) {
- SetBackgroundImageIds(kEVImages[0],
- kEVImages[1],
- kEVImages[2]);
- } else {
- SetBackgroundImageIds(kNormalImages[0],
- kNormalImages[1],
- kNormalImages[2]);
- }
-
- NSColor* foreground_color =
- info_.is_url_malware() ? [NSColor whiteColor] : [NSColor blackColor];
- [attributes_ setObject:foreground_color
- forKey:NSForegroundColorAttributeName];
-
- label_.reset([base::SysUTF16ToNSString(info_.label()) retain]);
- SetIcon(info_.icon());
-}
-
-bool OriginChipDecoration::PreventFocus(NSPoint location) const {
- return NSPointInRect(location, icon_rect_) ? true : false;
-}
-
-CGFloat OriginChipDecoration::GetWidthForSpace(CGFloat width) {
- if (!GetIconImage() || [label_ length] == 0)
- return kOmittedWidth;
-
- // Clip the chip if it can't fit, rather than hiding it (kOmittedWidth).
- return std::min(width, GetChipWidth() + kOuterRightPadding);
-}
-
-void OriginChipDecoration::DrawInFrame(NSRect frame, NSView* control_view) {
- // The assets are aligned with the location bar assets, so check that we are
- // being asked to draw against the edge, then draw over the border.
- DCHECK(NSMinX(frame) == [control_view cr_lineWidth]);
- frame = NSMakeRect(0, NSMinY(frame), GetChipWidth(), NSHeight(frame));
-
- const ui::NinePartImageIds image_ids = GetBackgroundImageIds();
-
- NSImage* icon =
- extension_icon_.get() ? extension_icon_.get() : GetIconImage();
- if (!icon)
- return;
-
- ui::DrawNinePartImage(frame, image_ids, NSCompositeSourceOver, 1.0, YES);
-
- const CGFloat icon_height = std::min([icon size].height, kIconSize);
- const CGFloat icon_width = std::min([icon size].width, kIconSize);
- CGFloat icon_y_inset = (NSHeight(frame) - icon_height) / 2.0;
- CGFloat icon_x_leading_offset = (kIconSize - icon_width) / 2.0;
- CGFloat icon_x_trailing_offset = icon_x_leading_offset;
-
- // Don't allow half-pixel offsets if we are not on a HiDPI display.
- if ([control_view cr_lineWidth] == 1.0) {
- icon_y_inset = std::ceil(icon_y_inset);
- icon_x_leading_offset = std::ceil(icon_x_leading_offset);
- icon_x_trailing_offset = std::floor(icon_x_trailing_offset);
- }
-
- icon_rect_ = NSMakeRect(kInnerLeftPadding + icon_x_leading_offset,
- icon_y_inset, icon_width, icon_height);
-
- [icon drawInRect:icon_rect_
- fromRect:NSZeroRect
- operation:NSCompositeSourceOver
- fraction:1.0
- respectFlipped:YES
- hints:nil];
-
- NSRect label_rect = NSMakeRect(
- NSMaxX(icon_rect_) + icon_x_trailing_offset + kIconLabelPadding,
- 0, [label_ sizeWithAttributes:attributes_].width, frame.size.height);
- DrawLabel(label_, attributes_, label_rect);
-}
-
-NSString* OriginChipDecoration::GetToolTip() {
- return base::SysUTF16ToNSString(info_.Tooltip());
-}
-
-bool OriginChipDecoration::OnMousePressed(NSRect frame, NSPoint location) {
- // Reveal the permissions bubble if the click was inside the icon's bounds;
- // otherwise, show the URL.
- if (NSPointInRect(location, icon_rect_))
- return location_icon_->OnMousePressed(frame, location);
-
- UMA_HISTOGRAM_COUNTS("OriginChip.Pressed", 1);
- content::RecordAction(base::UserMetricsAction("OriginChipPress"));
- owner_->GetOmniboxView()->ShowURL();
- return true;
-}
-
-NSPoint OriginChipDecoration::GetBubblePointInFrame(NSRect frame) {
- return NSMakePoint(NSMidX(icon_rect_),
- NSMaxY(icon_rect_) - kPageInfoBubblePointYOffset);
-}
-
-void OriginChipDecoration::OnExtensionIconImageChanged(
- extensions::IconImage* image) {
- if (image) {
- extension_icon_.reset(gfx::Image(image->image_skia()).CopyNSImage());
- [owner_->GetAutocompleteTextField() setNeedsDisplay:YES];
- } else {
- extension_icon_.reset();
- }
-}
-
-// Note: When OnSafeBrowsingHit would be called, OnSafeBrowsingMatch will
-// have already been called.
-void OriginChipDecoration::OnSafeBrowsingHit(
- const SafeBrowsingUIManager::UnsafeResource& resource) {}
-
-void OriginChipDecoration::OnSafeBrowsingMatch(
- const SafeBrowsingUIManager::UnsafeResource& resource) {
- Update();
-}
-
-CGFloat OriginChipDecoration::GetChipWidth() const {
- return kInnerLeftPadding +
- kIconSize +
- kIconLabelPadding +
- std::ceil([label_ sizeWithAttributes:attributes_].width) +
- kInnerRightPadding;
-}
-
-// TODO(macourteau): Implement eliding of the host.
-
-// TODO(macourteau): Implement dragging support.
« no previous file with comments | « chrome/browser/ui/cocoa/location_bar/origin_chip_decoration.h ('k') | chrome/browser/ui/cocoa/omnibox/omnibox_view_mac.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698