@Override public void onLightweightThemeReset() { setBackgroundColor(getContext().getResources().getColor(R.color.background_normal)); if (mAddons != null) { mAddons.resetTheme(); mLastTabs.resetTheme(); mRemoteTabs.resetTheme(); ((GeckoImageView) findViewById(R.id.abouthome_logo)).resetTheme(); ((GeckoTextView) findViewById(R.id.top_sites_title)).resetTheme(); } }
@Override public void onLightweightThemeReset() { setBackgroundResource(R.drawable.abouthome_bg_repeat); if (mAddons != null) { mAddons.resetTheme(); mLastTabs.resetTheme(); mRemoteTabs.resetTheme(); ((GeckoImageView) findViewById(R.id.abouthome_logo)).resetTheme(); ((GeckoTextView) findViewById(R.id.top_sites_title)).resetTheme(); } }
@Override public void onLightweightThemeChanged() { LightweightThemeDrawable drawable = mActivity.getLightweightTheme().getColorDrawable(this); if (drawable == null) return; drawable.setAlpha(255, 0); setBackgroundDrawable(drawable); boolean isLight = mActivity.getLightweightTheme().isLightTheme(); if (mAddons != null) { mAddons.setTheme(isLight); mLastTabs.setTheme(isLight); mRemoteTabs.setTheme(isLight); ((GeckoImageView) findViewById(R.id.abouthome_logo)).setTheme(isLight); ((GeckoTextView) findViewById(R.id.top_sites_title)).setTheme(isLight); } }
@Override public void onQueryTabsComplete(List<TabsAccessor.RemoteTab> tabsList) { ArrayList<TabsAccessor.RemoteTab> tabs = new ArrayList<TabsAccessor.RemoteTab>(tabsList); if (tabs == null || tabs.size() == 0) { mRemoteTabs.hide(); return; } mRemoteTabs.clear(); String client = null; for (TabsAccessor.RemoteTab tab : tabs) { if (client == null) client = tab.name; else if (!TextUtils.equals(client, tab.name)) break; final TextView row = (TextView) mInflater.inflate( R.layout.abouthome_remote_tab_row, mRemoteTabs.getItemsContainer(), false); row.setText(TextUtils.isEmpty(tab.title) ? tab.url : tab.title); row.setTag(tab.url); mRemoteTabs.addItem(row); row.setOnClickListener(mRemoteTabClickListener); } mRemoteTabs.setSubtitle(client); mRemoteTabs.show(); }
private void inflate() { mInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); mInflater.inflate(R.layout.abouthome_content, this); mTopSitesGrid = (TopSitesGridView) findViewById(R.id.top_sites_grid); mTopSitesGrid.setOnItemClickListener( new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView<?> parent, View v, int position, long id) { Cursor c = (Cursor) parent.getItemAtPosition(position); String spec = c.getString(c.getColumnIndex(URLColumns.URL)); Log.i(LOGTAG, "clicked: " + spec); if (mUriLoadCallback != null) mUriLoadCallback.callback(spec); } }); mPromoBox = (AboutHomePromoBox) findViewById(R.id.promo_box); mAddons = (AboutHomeSection) findViewById(R.id.recommended_addons); mLastTabs = (AboutHomeSection) findViewById(R.id.last_tabs); mRemoteTabs = (AboutHomeSection) findViewById(R.id.remote_tabs); mAddons.setOnMoreTextClickListener( new View.OnClickListener() { public void onClick(View v) { if (mUriLoadCallback != null) mUriLoadCallback.callback("https://addons.mozilla.org/android"); } }); mRemoteTabs.setOnMoreTextClickListener( new View.OnClickListener() { public void onClick(View v) { mActivity.showRemoteTabs(); } }); setTopSitesConstants(); }
void setLastTabsVisibility(boolean visible) { if (visible) mLastTabs.show(); else mLastTabs.hide(); }
private void inflate() { mInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); mInflater.inflate(R.layout.abouthome_content, this); mTopSitesGrid = (TopSitesGridView) findViewById(R.id.top_sites_grid); mTopSitesGrid.setOnItemClickListener( new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView<?> parent, View v, int position, long id) { TopSitesViewHolder holder = (TopSitesViewHolder) v.getTag(); String spec = holder.getUrl(); // If we don't have a url, this must be an empty row. Show the edit dialog box if (TextUtils.isEmpty(spec)) { editSite(spec, position); return; } if (mUriLoadCallback != null) mUriLoadCallback.callback(spec); } }); mTopSitesGrid.setOnCreateContextMenuListener( new View.OnCreateContextMenuListener() { public void onCreateContextMenu( ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) menuInfo; mTopSitesGrid.setSelectedPosition(info.position); MenuInflater inflater = mActivity.getMenuInflater(); inflater.inflate(R.menu.abouthome_topsites_contextmenu, menu); // If nothing is pinned at all, hide both clear items // We can assume that the adapter count and view count are the same in this case because // our grid view // force all items to be visible all the time View view = mTopSitesGrid.getChildAt(info.position); TopSitesViewHolder holder = (TopSitesViewHolder) view.getTag(); if (TextUtils.isEmpty(holder.getUrl())) { menu.findItem(R.id.abouthome_topsites_pin).setVisible(false); menu.findItem(R.id.abouthome_topsites_unpin).setVisible(false); menu.findItem(R.id.abouthome_topsites_remove).setVisible(false); } else if (holder.isPinned()) { menu.findItem(R.id.abouthome_topsites_pin).setVisible(false); } else { menu.findItem(R.id.abouthome_topsites_unpin).setVisible(false); } } }); mPromoBox = (AboutHomePromoBox) findViewById(R.id.promo_box); mAddons = (AboutHomeSection) findViewById(R.id.recommended_addons); mLastTabs = (AboutHomeSection) findViewById(R.id.last_tabs); mRemoteTabs = (AboutHomeSection) findViewById(R.id.remote_tabs); mAddons.setOnMoreTextClickListener( new View.OnClickListener() { public void onClick(View v) { if (mUriLoadCallback != null) mUriLoadCallback.callback("https://addons.mozilla.org/android"); } }); mRemoteTabs.setOnMoreTextClickListener( new View.OnClickListener() { public void onClick(View v) { mActivity.showRemoteTabs(); } }); setTopSitesConstants(); }
private void inflate() { mInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); mInflater.inflate(R.layout.abouthome_content, this); mTopSitesGrid = (TopSitesGridView) findViewById(R.id.top_sites_grid); mTopSitesGrid.setOnItemClickListener( new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView<?> parent, View v, int position, long id) { TopSitesViewHolder holder = (TopSitesViewHolder) v.getTag(); String spec = holder.url; // If we don't have a url, this must be an empty row. Show the edit dialog box if (TextUtils.isEmpty(spec)) { editSite(spec, position); return; } if (mUriLoadCallback != null) mUriLoadCallback.callback(spec); } }); mTopSitesGrid.setOnCreateContextMenuListener( new View.OnCreateContextMenuListener() { public void onCreateContextMenu( ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) menuInfo; mTopSitesGrid.setSelectedPosition(info.position); MenuInflater inflater = mActivity.getMenuInflater(); inflater.inflate(R.menu.abouthome_topsites_contextmenu, menu); // If nothing is pinned at all, hide both clear items TopSitesCursorWrapper cursor = (TopSitesCursorWrapper) mTopSitesAdapter.getCursor(); if (!cursor.hasPinnedSites()) { menu.findItem(R.id.abouthome_topsites_unpin).setVisible(false); } else { PinnedSite site = cursor.getPinnedSite(info.position); if (site == null) { // If there's nothing pinned here, hide the clear item menu.findItem(R.id.abouthome_topsites_unpin).setVisible(false); } else { menu.findItem(R.id.abouthome_topsites_pin).setVisible(false); } } } }); mPromoBox = (AboutHomePromoBox) findViewById(R.id.promo_box); mAddons = (AboutHomeSection) findViewById(R.id.recommended_addons); mLastTabs = (AboutHomeSection) findViewById(R.id.last_tabs); mRemoteTabs = (AboutHomeSection) findViewById(R.id.remote_tabs); mAddons.setOnMoreTextClickListener( new View.OnClickListener() { public void onClick(View v) { if (mUriLoadCallback != null) mUriLoadCallback.callback("https://addons.mozilla.org/android"); } }); mRemoteTabs.setOnMoreTextClickListener( new View.OnClickListener() { public void onClick(View v) { mActivity.showRemoteTabs(); } }); setTopSitesConstants(); }