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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/util/CompatibilityFileProvider.java

Issue 2143133002: Do screenshot capture async for share intents. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase + more comments addressed. Created 4 years, 4 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/android/java/src/org/chromium/chrome/browser/util/CompatibilityFileProvider.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/util/CompatibilityFileProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/util/CompatibilityFileProvider.java
deleted file mode 100644
index c97ed83010f89f45d4a259d6ae4d84307724d57e..0000000000000000000000000000000000000000
--- a/chrome/android/java/src/org/chromium/chrome/browser/util/CompatibilityFileProvider.java
+++ /dev/null
@@ -1,70 +0,0 @@
-// Copyright 2015 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.
-
-package org.chromium.chrome.browser.util;
-
-import android.database.Cursor;
-import android.database.MatrixCursor;
-import android.net.Uri;
-import android.provider.MediaStore;
-import android.support.v4.content.FileProvider;
-
-import java.util.Arrays;
-
-/**
- * A FileProvider which works around a bad assumption that particular MediaStore columns exist by
- * certain third party applications.
- * http://crbug.com/467423.
- */
-public class CompatibilityFileProvider extends FileProvider {
- @Override
- public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs,
- String sortOrder) {
- Cursor source = super.query(uri, projection, selection, selectionArgs, sortOrder);
-
- String[] columnNames = source.getColumnNames();
- String[] newColumnNames = columnNamesWithData(columnNames);
- if (columnNames == newColumnNames) return source;
-
- MatrixCursor cursor = new MatrixCursor(newColumnNames, source.getCount());
-
- source.moveToPosition(-1);
- while (source.moveToNext()) {
- MatrixCursor.RowBuilder row = cursor.newRow();
- for (int i = 0; i < columnNames.length; i++) {
- switch (source.getType(i)) {
- case Cursor.FIELD_TYPE_INTEGER:
- row.add(source.getInt(i));
- break;
- case Cursor.FIELD_TYPE_FLOAT:
- row.add(source.getFloat(i));
- break;
- case Cursor.FIELD_TYPE_STRING:
- row.add(source.getString(i));
- break;
- case Cursor.FIELD_TYPE_BLOB:
- row.add(source.getBlob(i));
- break;
- case Cursor.FIELD_TYPE_NULL:
- default:
- row.add(null);
- break;
- }
- }
- }
-
- source.close();
- return cursor;
- }
-
- private String[] columnNamesWithData(String[] columnNames) {
- for (String columnName : columnNames) {
- if (MediaStore.MediaColumns.DATA.equals(columnName)) return columnNames;
- }
-
- String[] newColumnNames = Arrays.copyOf(columnNames, columnNames.length + 1);
- newColumnNames[columnNames.length] = MediaStore.MediaColumns.DATA;
- return newColumnNames;
- }
-}

Powered by Google App Engine
This is Rietveld 408576698