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

Unified Diff: ui/base/dragdrop/drag_utils.cc

Issue 851853002: It is time. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Trying to reup because the last upload failed. Created 5 years, 11 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
« no previous file with comments | « ui/base/dragdrop/drag_utils.h ('k') | ui/base/dragdrop/drag_utils_aura.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/base/dragdrop/drag_utils.cc
diff --git a/ui/base/dragdrop/drag_utils.cc b/ui/base/dragdrop/drag_utils.cc
deleted file mode 100644
index 363dad4c8c8b311e6eba128ddd08a231630e2c60..0000000000000000000000000000000000000000
--- a/ui/base/dragdrop/drag_utils.cc
+++ /dev/null
@@ -1,105 +0,0 @@
-// Copyright (c) 2012 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.
-
-#include "ui/base/dragdrop/drag_utils.h"
-
-#include "base/files/file_util.h"
-#include "base/logging.h"
-#include "base/strings/utf_string_conversions.h"
-#include "ui/base/dragdrop/os_exchange_data.h"
-#include "ui/gfx/canvas.h"
-#include "ui/gfx/font_list.h"
-#include "ui/gfx/geometry/point.h"
-#include "ui/gfx/geometry/rect.h"
-#include "ui/gfx/geometry/size.h"
-#include "ui/gfx/image/canvas_image_source.h"
-#include "url/gurl.h"
-
-namespace drag_utils {
-
-namespace {
-
-// Maximum width of the link drag image in pixels.
-static const int kLinkDragImageVPadding = 3;
-
-// File dragging pixel measurements
-static const int kFileDragImageMaxWidth = 200;
-static const SkColor kFileDragImageTextColor = SK_ColorBLACK;
-
-class FileDragImageSource : public gfx::CanvasImageSource {
- public:
- FileDragImageSource(const base::FilePath& file_name,
- const gfx::ImageSkia& icon)
- : CanvasImageSource(CalculateSize(icon), false),
- file_name_(file_name),
- icon_(icon) {
- }
-
- virtual ~FileDragImageSource() {
- }
-
- // Overridden from gfx::CanvasImageSource.
- virtual void Draw(gfx::Canvas* canvas) override {
- if (!icon_.isNull()) {
- // Paint the icon.
- canvas->DrawImageInt(icon_, (size().width() - icon_.width()) / 2, 0);
- }
-
- base::string16 name = file_name_.BaseName().LossyDisplayName();
- const int flags = gfx::Canvas::TEXT_ALIGN_CENTER;
- const gfx::FontList font_list;
-#if defined(OS_WIN)
- // Paint the file name. We inset it one pixel to allow room for the halo.
- const gfx::Rect rect(1, icon_.height() + kLinkDragImageVPadding + 1,
- size().width() - 2, font_list.GetHeight());
- canvas->DrawStringRectWithHalo(name, font_list, kFileDragImageTextColor,
- SK_ColorWHITE, rect, flags);
-#else
- // NO_SUBPIXEL_RENDERING is required when drawing to a non-opaque canvas.
- const gfx::Rect rect(0, icon_.height() + kLinkDragImageVPadding,
- size().width(), font_list.GetHeight());
- canvas->DrawStringRectWithFlags(name, font_list, kFileDragImageTextColor,
- rect,
- flags | gfx::Canvas::NO_SUBPIXEL_RENDERING);
-#endif
- }
-
- private:
- gfx::Size CalculateSize(const gfx::ImageSkia& icon) const {
- const int width = kFileDragImageMaxWidth;
- // Add +2 here to allow room for the halo.
- const int height = gfx::FontList().GetHeight() + icon.height() +
- kLinkDragImageVPadding + 2;
- return gfx::Size(width, height);
- }
-
- const base::FilePath file_name_;
- const gfx::ImageSkia icon_;
-
- DISALLOW_COPY_AND_ASSIGN(FileDragImageSource);
-};
-
-} // namespace
-
-void CreateDragImageForFile(const base::FilePath& file_name,
- const gfx::ImageSkia& icon,
- ui::OSExchangeData* data_object) {
- DCHECK(data_object);
- gfx::CanvasImageSource* source = new FileDragImageSource(file_name, icon);
- gfx::Size size = source->size();
- // ImageSkia takes ownership of |source|.
- gfx::ImageSkia image = gfx::ImageSkia(source, size);
-
- gfx::Vector2d cursor_offset(size.width() / 2, kLinkDragImageVPadding);
- SetDragImageOnDataObject(image, cursor_offset, data_object);
-}
-
-void SetDragImageOnDataObject(const gfx::Canvas& canvas,
- const gfx::Vector2d& cursor_offset,
- ui::OSExchangeData* data_object) {
- gfx::ImageSkia image = gfx::ImageSkia(canvas.ExtractImageRep());
- SetDragImageOnDataObject(image, cursor_offset, data_object);
-}
-
-} // namespace drag_utils
« no previous file with comments | « ui/base/dragdrop/drag_utils.h ('k') | ui/base/dragdrop/drag_utils_aura.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698