summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--AndroidManifest.xml.jinja26
-rw-r--r--src/com/android/browser/AccountsChangedReceiver.java92
2 files changed, 0 insertions, 98 deletions
diff --git a/AndroidManifest.xml.jinja2 b/AndroidManifest.xml.jinja2
index 38a5eebc..6be8755d 100644
--- a/AndroidManifest.xml.jinja2
+++ b/AndroidManifest.xml.jinja2
@@ -364,12 +364,6 @@
android:readPermission="com.android.browser.permission.READ_HISTORY_BOOKMARKS"
android:exported="false" />
- <receiver android:name="com.android.browser.AccountsChangedReceiver">
- <intent-filter>
- <action android:name="android.accounts.LOGIN_ACCOUNTS_CHANGED" />
- </intent-filter>
- </receiver>
-
<receiver android:name="com.android.browser.MessagesReceiver">
<intent-filter>
<action android:name="com.android.mms.transaction.MESSAGE_RECEIVED" />
diff --git a/src/com/android/browser/AccountsChangedReceiver.java b/src/com/android/browser/AccountsChangedReceiver.java
deleted file mode 100644
index a4d10d75..00000000
--- a/src/com/android/browser/AccountsChangedReceiver.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Copyright (C) 2011 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.browser;
-
-import android.accounts.Account;
-import android.accounts.AccountManager;
-import android.content.BroadcastReceiver;
-import android.content.ContentResolver;
-import android.content.Context;
-import android.content.Intent;
-import android.database.Cursor;
-import android.net.Uri;
-
-import com.android.browser.platformsupport.BrowserContract;
-import com.android.browser.platformsupport.BrowserContract.Accounts;
-import com.android.browser.platformsupport.BrowserContract.Bookmarks;
-
-import android.text.TextUtils;
-
-public class AccountsChangedReceiver extends BroadcastReceiver {
-
- private static final String[] PROJECTION = new String[] {
- Accounts.ACCOUNT_NAME,
- Accounts.ACCOUNT_TYPE,
- };
- private static final String SELECTION = Accounts.ACCOUNT_NAME + " IS NOT NULL";
- private static final String DELETE_SELECTION = Accounts.ACCOUNT_NAME + "=? AND "
- + Accounts.ACCOUNT_TYPE + "=?";
-
- @Override
- public void onReceive(Context context, Intent intent) {
- new DeleteRemovedAccounts(context).start();
- }
-
- static class DeleteRemovedAccounts extends Thread {
- Context mContext;
- public DeleteRemovedAccounts(Context context) {
- mContext = context.getApplicationContext();
- }
-
- @Override
- public void run() {
- Account[] accounts = AccountManager.get(mContext).getAccounts();
- ContentResolver cr = mContext.getContentResolver();
- Cursor c = cr.query(Accounts.CONTENT_URI, PROJECTION,
- SELECTION, null, null);
- while (c.moveToNext()) {
- String name = c.getString(0);
- String type = c.getString(1);
- if (!contains(accounts, name, type)) {
- delete(cr, name, type);
- }
- }
- cr.update(Accounts.CONTENT_URI, null, null, null);
- c.close();
- }
-
- void delete(ContentResolver cr, String name, String type) {
- // Pretend to be a sync adapter to delete the data and not mark
- // it for deletion. Without this, the bookmarks will be marked to
- // be deleted, which will propagate to the server if the account
- // is added back.
- Uri uri = Bookmarks.CONTENT_URI.buildUpon()
- .appendQueryParameter(BrowserContract.CALLER_IS_SYNCADAPTER, "true")
- .build();
- cr.delete(uri, DELETE_SELECTION, new String[] { name, type });
- }
-
- boolean contains(Account[] accounts, String name, String type) {
- for (Account a : accounts) {
- if (TextUtils.equals(a.name, name)
- && TextUtils.equals(a.type, type)) {
- return true;
- }
- }
- return false;
- }
- }
-}