Android Open Source - EBrowser Preferences Activity






From Project

Back to project page EBrowser.

License

The source code is released under:

GNU General Public License

If you think the Android project EBrowser listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Zirco Browser for Android/*from w w  w.j a  va2s  . co m*/
 * 
 * Copyright (C) 2010 J. Devauchelle and contributors.
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * version 3 as published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 */

package org.zirco.ui.activities.preferences;

import java.util.List;

import com.mrpej.ebrowser.R;
import org.zirco.controllers.Controller;
import org.zirco.providers.BookmarksProviderWrapper;
import org.zirco.ui.activities.AboutActivity;
import org.zirco.ui.activities.AdBlockerWhiteListActivity;
import org.zirco.ui.activities.ChangelogActivity;
import org.zirco.ui.activities.MobileViewListActivity;
import org.zirco.ui.activities.MainActivity;
import org.zirco.ui.components.CustomWebView;
import org.zirco.ui.runnables.XmlHistoryBookmarksExporter;
import org.zirco.ui.runnables.XmlHistoryBookmarksImporter;
import org.zirco.utils.ApplicationUtils;
import org.zirco.utils.Constants;
import org.zirco.utils.DateUtils;
import org.zirco.utils.IOUtils;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.DialogInterface.OnClickListener;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.preference.PreferenceCategory;
import android.preference.PreferenceManager;
import android.preference.Preference.OnPreferenceClickListener;
import android.webkit.CookieManager;

/**
 * Preferences activity.
 */
public class PreferencesActivity extends PreferenceActivity {
  
  private ProgressDialog mProgressDialog;
  
  private OnSharedPreferenceChangeListener mPreferenceChangeListener;
  
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    
    addPreferencesFromResource(R.layout.preferences_activity);

    PreferenceCategory browserPreferenceCategory = (PreferenceCategory) findPreference("BrowserPreferenceCategory");
    Preference enablePluginsEclair = (Preference) findPreference(Constants.PREFERENCES_BROWSER_ENABLE_PLUGINS_ECLAIR);
    Preference enablePlugins = (Preference) findPreference(Constants.PREFERENCES_BROWSER_ENABLE_PLUGINS);
    
    if (Build.VERSION.SDK_INT <= 7) {
      browserPreferenceCategory.removePreference(enablePlugins);
    } else {
      browserPreferenceCategory.removePreference(enablePluginsEclair);
    }
        
    Preference userAgentPref = (Preference) findPreference(Constants.PREFERENCES_BROWSER_USER_AGENT);
    userAgentPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        openUserAgentActivity();
        return true;
      }
    });        
    
    Preference fullScreenPref = (Preference) findPreference(Constants.PREFERENCES_SHOW_FULL_SCREEN);
    fullScreenPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      
      @Override
      public boolean onPreferenceClick(Preference preference) {
        askForRestart();
        return true;
      }
    });
    
    Preference hideTitleBarPref = (Preference) findPreference(Constants.PREFERENCES_GENERAL_HIDE_TITLE_BARS);
    hideTitleBarPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      
      @Override
      public boolean onPreferenceClick(Preference preference) {
        askForRestart();
        return true;
      }
    });
    
    Preference searchUrlPref = (Preference) findPreference(Constants.PREFERENCES_GENERAL_SEARCH_URL);
    searchUrlPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        openSearchUrlActivity();
        return true;
      }
    });
    
    Preference homepagePref = (Preference) findPreference(Constants.PREFERENCES_GENERAL_HOME_PAGE);
    homepagePref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        openHomepageActivity();
        return true;
      }
    });
    
    Preference weaveServerPref = (Preference) findPreference(Constants.PREFERENCE_WEAVE_SERVER);
    weaveServerPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        openWeaveServerActivity();
        return true;
      }
    });
    
    Preference aboutPref = (Preference) findPreference("About");
    aboutPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        openAboutActivity();
        return true;
      }
    });
    
    Preference changelogPref = (Preference) findPreference("Changelog");
    changelogPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {      
      @Override
      public boolean onPreferenceClick(Preference preference) {
        openChangelogActivity();
        return true;
      }
    });
    
    Preference mobileViewPref = (Preference) findPreference("MobileViewList");
    mobileViewPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        openMobileViewListActivity();
        return true;
      }      
    });
    
    Preference whiteListPref = (Preference) findPreference("AdBlockerWhiteList");
    whiteListPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        openWhiteListActivity();
        return true;
      }      
    });
    
    Preference clearHistoryPref = (Preference) findPreference("PrivacyClearHistory");
    clearHistoryPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        clearHistory();
        return true;
      }      
    });
    
    Preference clearformDataPref = (Preference) findPreference("PrivacyClearFormData");
    clearformDataPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        clearFormData();
        return true;
      }      
    });
    
    Preference clearCachePref = (Preference) findPreference("PrivacyClearCache");
    clearCachePref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        clearCache();
        return true;
      }      
    });
    
    Preference clearCookiesPref = (Preference) findPreference("PrivacyClearCookies");
    clearCookiesPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        clearCookies();
        return true;
      }      
    });
    
    Preference exportHistoryBookmarksPref = (Preference) findPreference("ExportHistoryBookmarks");
    exportHistoryBookmarksPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        exportHistoryBookmarks();
        return true;
      }      
    });
    
    Preference importHistoryBookmarksPref = (Preference) findPreference("ImportHistoryBookmarks");
    importHistoryBookmarksPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        importHistoryBookmarks();
        return true;
      }      
    });
    
    Preference clearHistoryBookmarksPref = (Preference) findPreference("ClearHistoryBookmarks");
    clearHistoryBookmarksPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
      @Override
      public boolean onPreferenceClick(Preference preference) {
        clearHistoryBookmarks();
        return true;
      }      
    });
    
    mPreferenceChangeListener = new OnSharedPreferenceChangeListener() {      
      @Override
      public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
        MainActivity.INSTANCE.applyPreferences();
      }
    };
    
    PreferenceManager.getDefaultSharedPreferences(this).registerOnSharedPreferenceChangeListener(mPreferenceChangeListener);
  }
  
  /**
   * Ask user to restart the app. Do it if click on "Yes".
   */
  private void askForRestart() {
    ApplicationUtils.showYesNoDialog(this,
        android.R.drawable.ic_dialog_alert,
        R.string.PreferencesActivity_RestartDialogTitle,
        R.string.PreferencesActivity_RestartDialogMessage,
        new DialogInterface.OnClickListener() {

      @Override
      public void onClick(DialogInterface dialog, int which) {
        MainActivity.INSTANCE.restartApplication();        
      }
      
    });
  }
  
  /**
   * Display the homepage preference dialog.
   */
  private void openHomepageActivity() {
    Intent i = new Intent(this, HomepagePreferenceActivity.class);
    startActivity(i);
  }
  
  private void openWeaveServerActivity() {
    Intent i = new Intent(this, WeaveServerPreferenceActivity.class);
    startActivity(i);
  }
  
  /**
   * Display the search url preference dialog.
   */
  private void openSearchUrlActivity() {
    Intent i = new Intent(this, SearchUrlPreferenceActivity.class);
    startActivity(i);
  }
  
  /**
   * Display the user agent preference dialog.
   */
  private void openUserAgentActivity() {
    Intent i = new Intent(this, UserAgentPreferenceActivity.class);
    startActivity(i);
  }
  
  /**
   * Display the about dialog.
   */
  private void openAboutActivity() {
    Intent i = new Intent(this, AboutActivity.class);
    startActivity(i);
  }
  
  /**
   * Display the changelog dialog.
   */
  private void openChangelogActivity() {
    Intent i = new Intent(this, ChangelogActivity.class);
    startActivity(i);
  }
  
  /**
   * Display the mobile view list activity.
   */
  private void openMobileViewListActivity() {
    Intent i = new Intent(this, MobileViewListActivity.class);
    startActivity(i);
  }
  
  /**
   * Display the ad blocker white list activity.
   */
  private void openWhiteListActivity() {
    Intent i = new Intent(this, AdBlockerWhiteListActivity.class);
    startActivity(i);
  }
  
  /**
   * Clear the history.
   */
  private void doClearHistory() {
      mProgressDialog = ProgressDialog.show(this,
          this.getResources().getString(R.string.Commons_PleaseWait),
          this.getResources().getString(R.string.Commons_ClearingHistory));
      
      new HistoryClearer();
    }
  
  /**
   * Display confirmation and clear the history.
   */
  private void clearHistory() {
    ApplicationUtils.showYesNoDialog(this,
        android.R.drawable.ic_dialog_alert,
        R.string.Commons_ClearHistory,
        R.string.Commons_NoUndoMessage,
        new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();
              doClearHistory();
          }      
    });
  }
  
  /**
   * Clear form data.
   */
  private void doClearFormData() {
      mProgressDialog = ProgressDialog.show(this,
          this.getResources().getString(R.string.Commons_PleaseWait),
          this.getResources().getString(R.string.Commons_ClearingFormData));
      
      new FormDataClearer();
    }
  
  /**
   * Display confirmation and clear form data.
   */
  private void clearFormData() {
    ApplicationUtils.showYesNoDialog(this,
        android.R.drawable.ic_dialog_alert,
        R.string.Commons_ClearFormData,
        R.string.Commons_NoUndoMessage,
        new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();
            doClearFormData();
          }      
    });
  }
  
  /**
   * Clear the cache.
   */
  private void doClearCache() {
      mProgressDialog = ProgressDialog.show(this,
          this.getResources().getString(R.string.Commons_PleaseWait),
          this.getResources().getString(R.string.Commons_ClearingCache));
      
      new CacheClearer();
    }
  
  /**
   * Display confirmation and clear the cache.
   */
  private void clearCache() {
    ApplicationUtils.showYesNoDialog(this,
        android.R.drawable.ic_dialog_alert,
        R.string.Commons_ClearCache,
        R.string.Commons_NoUndoMessage,
        new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();
            doClearCache();
          }      
    });
  }
  
  /**
   * Clear cookies.
   */
  private void doClearCookies() {
      mProgressDialog = ProgressDialog.show(this,
          this.getResources().getString(R.string.Commons_PleaseWait),
          this.getResources().getString(R.string.Commons_ClearingCookies));
      
      new CookiesClearer();
    }
  
  /**
   * Display confirmation and clear cookies.
   */
  private void clearCookies() {
    ApplicationUtils.showYesNoDialog(this,
        android.R.drawable.ic_dialog_alert,
        R.string.Commons_ClearCookies,
        R.string.Commons_NoUndoMessage,
        new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();
            doClearCookies();
          }      
    });
  }
  
  private void doClearHistoryBookmarks(int choice) {
    mProgressDialog = ProgressDialog.show(this,
          this.getResources().getString(R.string.Commons_PleaseWait),
          this.getResources().getString(R.string.Commons_ClearingHistoryBookmarks));
    
    new HistoryBookmarksClearer(choice);
  }
  
  /**
   * Clear the history.
   */
  private void clearHistoryBookmarks() {
    
    final String[] choices = new String[] { getString(R.string.Commons_History), getString(R.string.Commons_Bookmarks), getString(R.string.Commons_All) };
    
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
      builder.setInverseBackgroundForced(true);
      builder.setIcon(android.R.drawable.ic_dialog_info);
      builder.setTitle(R.string.Commons_ClearHistoryBookmarks);
      builder.setSingleChoiceItems(choices, 0, new OnClickListener() {
      @Override
      public void onClick(DialogInterface dialog, int which) {                        
        doClearHistoryBookmarks(which);
        dialog.dismiss();        
      }        
      });
      
      builder.setCancelable(true);
      builder.setNegativeButton(R.string.Commons_Cancel, null);
      
      AlertDialog alert = builder.create();
      alert.show();
  }
  
  /**
   * Import the given file to bookmarks and history.
   * @param fileName The file to import.
   */
  private void doImportHistoryBookmarks(String fileName) {
    
    if (ApplicationUtils.checkCardState(this, true)) {
      mProgressDialog = ProgressDialog.show(this,
            this.getResources().getString(R.string.Commons_PleaseWait),
            this.getResources().getString(R.string.Commons_ImportingHistoryBookmarks));
      
      XmlHistoryBookmarksImporter importer = new XmlHistoryBookmarksImporter(this, fileName, mProgressDialog);
      new Thread(importer).start();
    }
    
  }
  
  /**
   * Ask the user the file to import to bookmarks and history, and launch the import. 
   */
  private void importHistoryBookmarks() {
    List<String> exportedFiles = IOUtils.getExportedBookmarksFileList();      
      
      final String[] choices = exportedFiles.toArray(new String[exportedFiles.size()]);
      
      AlertDialog.Builder builder = new AlertDialog.Builder(this);
      builder.setInverseBackgroundForced(true);
      builder.setIcon(android.R.drawable.ic_dialog_info);
      builder.setTitle(getResources().getString(R.string.Commons_ImportHistoryBookmarksSource));
      builder.setSingleChoiceItems(choices,
          0,
          new OnClickListener() {
      @Override
      public void onClick(DialogInterface dialog, int which) {
                
        doImportHistoryBookmarks(choices[which]);        
        
        dialog.dismiss();        
      }        
      });      
      
      builder.setCancelable(true);
      builder.setNegativeButton(R.string.Commons_Cancel, null);
      
      AlertDialog alert = builder.create();
      alert.show();
  }
  
  /**
   * Export the bookmarks and history.
   */
  private void doExportHistoryBookmarks() {
    if (ApplicationUtils.checkCardState(this, true)) {
      mProgressDialog = ProgressDialog.show(this,
            this.getResources().getString(R.string.Commons_PleaseWait),
            this.getResources().getString(R.string.Commons_ExportingHistoryBookmarks));
      
      XmlHistoryBookmarksExporter exporter = new XmlHistoryBookmarksExporter(this,
          DateUtils.getNowForFileName() + ".xml",
          BookmarksProviderWrapper.getAllStockRecords(this.getContentResolver()),
          mProgressDialog);
      
      new Thread(exporter).start();
    }
  }
  
  /**
   * Ask the user to confirm the export. Launch it if confirmed.
   */
  private void exportHistoryBookmarks() {
    ApplicationUtils.showYesNoDialog(this,
        android.R.drawable.ic_dialog_info,
        R.string.Commons_HistoryBookmarksExportSDCardConfirmation,
        R.string.Commons_OperationCanBeLongMessage,
        new DialogInterface.OnClickListener() {
          @Override
          public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();
            doExportHistoryBookmarks();
          }      
    });
  }
  
  /**
   * Base class for all clear operations launched as Runnable.
   */
  private abstract class AbstractClearer implements Runnable {

    /**
     * Constructor. Launch itself as a Thread.
     */
    public AbstractClearer() {
      new Thread(this).start();
    }
    
    protected Handler mHandler = new Handler() {
      public void handleMessage(Message msg) {
        mProgressDialog.dismiss();
      }
    };
  }
  
  private class HistoryBookmarksClearer extends AbstractClearer {

    private int mChoice;
    
    public HistoryBookmarksClearer(int choice) {
      mChoice = choice;
    }
    
    @Override
    public void run() {
      
      switch (mChoice) {
      case 0:
        BookmarksProviderWrapper.clearHistoryAndOrBookmarks(PreferencesActivity.this.getContentResolver(), true, false);
        break;
      case 1:
        BookmarksProviderWrapper.clearHistoryAndOrBookmarks(PreferencesActivity.this.getContentResolver(), false, true);
        break;
      case 2:
        BookmarksProviderWrapper.clearHistoryAndOrBookmarks(PreferencesActivity.this.getContentResolver(), true, true);
        break;
      default: break;
      }
      
      mHandler.sendEmptyMessage(0);
    }    
  }
  
  /**
   * History clearer thread.
   */
  private class HistoryClearer implements Runnable {
    
    /**
     * Constructor.
     */
    public HistoryClearer() {
      new Thread(this).start();
    }

    @Override
    public void run() {
      // Clear DB History
      BookmarksProviderWrapper.clearHistoryAndOrBookmarks(getContentResolver(), true, false);
      
      // Clear WebViews history
      for (CustomWebView webView : Controller.getInstance().getWebViewList()) {
        webView.clearHistory();
      }
      
      handler.sendEmptyMessage(0);
    }

    private Handler handler = new Handler() {
      public void handleMessage(Message msg) {
        mProgressDialog.dismiss();
      }
    };
  }
  
  /**
   * Form data clearer thread.
   */
  private class FormDataClearer implements Runnable {
    /**
     * Constructor.
     */
    public FormDataClearer() {
      new Thread(this).start();
    }
    @Override
    public void run() {
      for (CustomWebView webView : Controller.getInstance().getWebViewList()) {
        webView.clearFormData();
      }

      handler.sendEmptyMessage(0);
    }
    private Handler handler = new Handler() {
      public void handleMessage(Message msg) {
        mProgressDialog.dismiss();
      }
    };
  }
  
  /**
   * Cache clearer thread.
   */
  private class CacheClearer implements Runnable {
    /**
     * Constructor.
     */
    public CacheClearer() {
      new Thread(this).start();
    }
    @Override
    public void run() {
      // Only need to clear the cache from one WebView, as it is application-based.
      CustomWebView webView = Controller.getInstance().getWebViewList().get(0);
      webView.clearCache(true);

      handler.sendEmptyMessage(0);
    }
    private Handler handler = new Handler() {
      public void handleMessage(Message msg) {
        mProgressDialog.dismiss();
      }
    };
  }
  
  /**
   * Cookies clearer thread.
   */
  private class CookiesClearer implements Runnable {
    /**
     * Constructor.
     */
    public CookiesClearer() {
      new Thread(this).start();
    }
    @Override
    public void run() {
      CookieManager.getInstance().removeAllCookie();
      handler.sendEmptyMessage(0);
    }
    private Handler handler = new Handler() {
      public void handleMessage(Message msg) {
        mProgressDialog.dismiss();
      }
    };
  }

}




Java Source Code List

org.emergent.android.weave.client.Base32.java
org.emergent.android.weave.client.Base64Encoder.java
org.emergent.android.weave.client.Base64.java
org.emergent.android.weave.client.BulkKeyCouplet.java
org.emergent.android.weave.client.Dbg.java
org.emergent.android.weave.client.HexEncoder.java
org.emergent.android.weave.client.Hex.java
org.emergent.android.weave.client.QueryParams.java
org.emergent.android.weave.client.QueryResult.java
org.emergent.android.weave.client.UserWeave.java
org.emergent.android.weave.client.WeaveAccountInfo.java
org.emergent.android.weave.client.WeaveBasicObject.java
org.emergent.android.weave.client.WeaveConstants.java
org.emergent.android.weave.client.WeaveCryptoUtil.java
org.emergent.android.weave.client.WeaveException.java
org.emergent.android.weave.client.WeaveFactory.java
org.emergent.android.weave.client.WeaveHeader.java
org.emergent.android.weave.client.WeaveResponse.java
org.emergent.android.weave.client.WeaveSSLSocketFactory.java
org.emergent.android.weave.client.WeaveTransport.java
org.emergent.android.weave.client.WeaveUtil.java
org.greendroid.QuickActionGrid.java
org.greendroid.QuickActionWidget.java
org.greendroid.QuickAction.java
org.zirco.controllers.Controller.java
org.zirco.events.EventConstants.java
org.zirco.events.EventController.java
org.zirco.events.IDownloadEventsListener.java
org.zirco.model.DbAdapter.java
org.zirco.model.UrlSuggestionItemComparator.java
org.zirco.model.adapters.BookmarksCursorAdapter.java
org.zirco.model.adapters.DownloadListAdapter.java
org.zirco.model.adapters.HistoryExpandableListAdapter.java
org.zirco.model.adapters.UrlSuggestionCursorAdapter.java
org.zirco.model.adapters.WeaveBookmarksCursorAdapter.java
org.zirco.model.items.BookmarkItem.java
org.zirco.model.items.DownloadItem.java
org.zirco.model.items.HistoryItem.java
org.zirco.model.items.UrlSuggestionItem.java
org.zirco.model.items.WeaveBookmarkItem.java
org.zirco.providers.BookmarksProviderWrapper.java
org.zirco.providers.WeaveColumns.java
org.zirco.providers.WeaveContentProvider.java
org.zirco.providers.ZircoBookmarksContentProvider.java
org.zirco.sync.ISyncListener.java
org.zirco.sync.WeaveSyncTask.java
org.zirco.ui.activities.AboutActivity.java
org.zirco.ui.activities.AdBlockerWhiteListActivity.java
org.zirco.ui.activities.BookmarksHistoryActivity.java
org.zirco.ui.activities.BookmarksListActivity.java
org.zirco.ui.activities.ChangelogActivity.java
org.zirco.ui.activities.DownloadsListActivity.java
org.zirco.ui.activities.EditBookmarkActivity.java
org.zirco.ui.activities.HistoryListActivity.java
org.zirco.ui.activities.IToolbarsContainer.java
org.zirco.ui.activities.MainActivity.java
org.zirco.ui.activities.MobileViewListActivity.java
org.zirco.ui.activities.WeaveBookmarksListActivity.java
org.zirco.ui.activities.preferences.BaseSpinnerCustomPreferenceActivity.java
org.zirco.ui.activities.preferences.HomepagePreferenceActivity.java
org.zirco.ui.activities.preferences.PreferencesActivity.java
org.zirco.ui.activities.preferences.SearchUrlPreferenceActivity.java
org.zirco.ui.activities.preferences.UserAgentPreferenceActivity.java
org.zirco.ui.activities.preferences.WeavePreferencesActivity.java
org.zirco.ui.activities.preferences.WeaveServerPreferenceActivity.java
org.zirco.ui.components.CustomWebViewClient.java
org.zirco.ui.components.CustomWebView.java
org.zirco.ui.runnables.DownloadRunnable.java
org.zirco.ui.runnables.FaviconUpdaterRunnable.java
org.zirco.ui.runnables.HideToolbarsRunnable.java
org.zirco.ui.runnables.HistoryUpdater.java
org.zirco.ui.runnables.XmlHistoryBookmarksExporter.java
org.zirco.ui.runnables.XmlHistoryBookmarksImporter.java
org.zirco.utils.AnimationManager.java
org.zirco.utils.ApplicationUtils.java
org.zirco.utils.Constants.java
org.zirco.utils.DateUtils.java
org.zirco.utils.IOUtils.java
org.zirco.utils.ProxyChangeReceiver.java
org.zirco.utils.ProxySettings.java
org.zirco.utils.UrlUtils.java