package com.duckduckgo.mobile.android.views;
import android.app.Activity;
import android.content.Context;
import android.database.Cursor;
import android.support.v7.view.menu.MenuBuilder;
import android.util.AttributeSet;
import android.view.Gravity;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
import com.duckduckgo.mobile.android.R;
import com.duckduckgo.mobile.android.activity.DuckDuckGo;
import com.duckduckgo.mobile.android.adapters.FavoriteResultCursorAdapter;
import com.duckduckgo.mobile.android.bus.BusProvider;
import com.duckduckgo.mobile.android.events.savedSearchEvents.SavedSearchItemLongClickEvent;
import com.duckduckgo.mobile.android.events.savedSearchEvents.SavedSearchItemSelectedEvent;
public class FavoriteSearchListView extends ListView implements AdapterView.OnItemClickListener, android.widget.AdapterView.OnItemLongClickListener {
public FavoriteSearchListView(Context context, AttributeSet attrs) {
super(context, attrs);
this.setOnItemClickListener(this);
this.setOnItemLongClickListener(this);
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Object adapter = getAdapter();
Cursor c = null;
String query = null;
if(adapter instanceof FavoriteResultCursorAdapter) {
c = (Cursor) ((FavoriteResultCursorAdapter) adapter).getItem(position);
query = c.getString(c.getColumnIndex("query"));
}
if(query!=null) {
BusProvider.getInstance().post(new SavedSearchItemSelectedEvent(query));
}
}
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
Object adapter = getAdapter();
Cursor c = null;
String query = null;
if(adapter instanceof FavoriteResultCursorAdapter) {
c = (Cursor) ((FavoriteResultCursorAdapter) adapter).getItem(position);
query = c.getString(c.getColumnIndex("query"));
}
if (query != null) {
BusProvider.getInstance().post(new SavedSearchItemLongClickEvent(query));
DDGOverflowMenu menuFeed = new DDGOverflowMenu(getContext());
Menu menu = new MenuBuilder(getContext());
((DuckDuckGo) getContext()).getMenuInflater().inflate(R.menu.feed, menu);
menu.findItem(R.id.action_add_favorite).setVisible(false);
menuFeed.setMenu(menu);
//menu.show(view);
//menuFeed.show(view);
////menuFeed.showBelowAnchor(view);
//menuFeed.showCentered(view);
//DDGDialogMenu dialogMenu = new DDGDialogMenu();
//dialogMenu.setMenu(menu);
//dialogMenu.show();
return true;
}
return false;
}
}