Search in sources :

Example 31 with Manga

use of ar.rulosoft.mimanganu.componentes.Manga in project MiMangaNu by raulhaag.

the class SearchResultsFragment method onActivityCreated.

@Override
public void onActivityCreated(Bundle savedState) {
    super.onActivityCreated(savedState);
    serverId = getArguments().getInt(MainFragment.SERVER_ID);
    search_term = getArguments().getString(TERM);
    list = (ListView) getView().findViewById(R.id.result);
    loading = (ProgressBar) getView().findViewById(R.id.loading);
    list.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            Manga manga = (Manga) list.getAdapter().getItem(position);
            Bundle bundle = new Bundle();
            bundle.putInt(MainFragment.SERVER_ID, serverId);
            bundle.putString(DetailsFragment.TITLE, manga.getTitle());
            bundle.putString(DetailsFragment.PATH, manga.getPath());
            DetailsFragment detailsFragment = new DetailsFragment();
            detailsFragment.setArguments(bundle);
            ((MainActivity) getActivity()).replaceFragment(detailsFragment, "DetailsFragment");
            searchPerformed = true;
        }
    });
    registerForContextMenu(list);
    if (searchPerformed) {
        if (list != null)
            list.setAdapter(new ArrayAdapter<>(getActivity(), android.R.layout.simple_list_item_1, mangasFromSearch));
    } else
        performSearchTask = (PerformSearchTask) new PerformSearchTask().execute();
}
Also used : OnItemClickListener(android.widget.AdapterView.OnItemClickListener) Bundle(android.os.Bundle) View(android.view.View) AdapterView(android.widget.AdapterView) ListView(android.widget.ListView) Manga(ar.rulosoft.mimanganu.componentes.Manga) AsyncAddManga(ar.rulosoft.mimanganu.utils.AsyncAddManga) ArrayAdapter(android.widget.ArrayAdapter)

Example 32 with Manga

use of ar.rulosoft.mimanganu.componentes.Manga in project MiMangaNu by raulhaag.

the class ServerFilteredNavigationFragment method onCreateContextMenu.

@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
    Thread t0 = new Thread(new Runnable() {

        @Override
        public void run() {
            try {
                List<Manga> mangas = Database.getMangas(getContext(), null, true);
                if (mAdapter != null) {
                    for (Manga m : mangas) {
                        if (m.getPath().equals(mAdapter.getItem(lastContextMenuIndex).getPath()))
                            mangaAlreadyAdded = true;
                    }
                }
            } catch (Exception e) {
                Log.e("SFNF", "Exception", e);
                Util.getInstance().toast(getContext(), Log.getStackTraceString(e));
            }
        }
    });
    t0.start();
    MenuInflater inflater = getActivity().getMenuInflater();
    inflater.inflate(R.menu.menu_manga_item_server_nav, menu);
    if (mAdapter != null) {
        menu.setHeaderTitle(mAdapter.getItem((int) v.getTag()).getTitle());
    }
    lastContextMenuIndex = (int) v.getTag();
}
Also used : MenuInflater(android.view.MenuInflater) ArrayList(java.util.ArrayList) List(java.util.List) Manga(ar.rulosoft.mimanganu.componentes.Manga) AsyncAddManga(ar.rulosoft.mimanganu.utils.AsyncAddManga)

Example 33 with Manga

use of ar.rulosoft.mimanganu.componentes.Manga in project MiMangaNu by raulhaag.

the class ServerListFragment method onActivityCreated.

@Override
public void onActivityCreated(Bundle savedState) {
    super.onActivityCreated(savedState);
    super.onStart();
    if (id == -1)
        id = getArguments().getInt(MainFragment.SERVER_ID);
    serverBase = ServerBase.getServer(id, getContext());
    list = getView().findViewById(R.id.lista_de_mangas);
    loading = getView().findViewById(R.id.loading);
    if (adapter == null) {
        loadMangasTask = (LoadMangasTask) new LoadMangasTask().execute();
    } else {
        list.setAdapter(adapter);
        loading.setVisibility(View.INVISIBLE);
    }
    list.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            Manga m = (Manga) list.getAdapter().getItem(position);
            Bundle bundle = new Bundle();
            bundle.putInt(MainFragment.SERVER_ID, serverBase.getServerID());
            bundle.putString(DetailsFragment.TITLE, m.getTitle());
            bundle.putString(DetailsFragment.PATH, m.getPath());
            DetailsFragment detailsFragment = new DetailsFragment();
            detailsFragment.setArguments(bundle);
            ((MainActivity) getActivity()).replaceFragment(detailsFragment, "DetailsFragment");
        }
    });
}
Also used : OnItemClickListener(android.widget.AdapterView.OnItemClickListener) Bundle(android.os.Bundle) SearchView(android.support.v7.widget.SearchView) View(android.view.View) AdapterView(android.widget.AdapterView) ListView(android.widget.ListView) Manga(ar.rulosoft.mimanganu.componentes.Manga)

Example 34 with Manga

use of ar.rulosoft.mimanganu.componentes.Manga in project MiMangaNu by raulhaag.

the class MangaAdapter method getView.

@NonNull
public View getView(int position, View convertView, @NonNull ViewGroup parent) {
    ViewHolder holder;
    if (convertView == null) {
        convertView = li.inflate(listItem, parent, false);
        holder = new ViewHolder(convertView, darkTheme);
        convertView.setTag(holder);
    } else {
        holder = (ViewHolder) convertView.getTag();
    }
    final Manga item = getItem(position);
    if (item != null) {
        holder.textViewName.setText(Util.getInstance().fromHtml(item.getTitle()));
    }
    return convertView;
}
Also used : Manga(ar.rulosoft.mimanganu.componentes.Manga) NonNull(android.support.annotation.NonNull)

Example 35 with Manga

use of ar.rulosoft.mimanganu.componentes.Manga in project MiMangaNu by raulhaag.

the class RawSenManga method getMangasFiltered.

@Override
public ArrayList<Manga> getMangasFiltered(int[][] filters, int pageNumber) throws Exception {
    String web;
    if (fltGenre[filters[0][0]] == R.string.flt_tag_all) {
        web = HOST + valGenre[filters[0][0]] + valOrder[filters[1][0]] + "/page/" + pageNumber;
    } else {
        web = HOST + valGenre[filters[0][0]] + "/page/" + pageNumber;
    }
    String source = getNavigatorAndFlushParameters().get(web);
    Pattern p = Pattern.compile("<a href=\"([^\"]+)\" title=\"([^\"]+)\">\\s*<span class=\"cover\">\\s*<img src=\"([^\"]+)", Pattern.DOTALL);
    Matcher m = p.matcher(source);
    ArrayList<Manga> mangas = new ArrayList<>();
    while (m.find()) {
        Manga manga = new Manga(getServerID(), m.group(2), m.group(1), false);
        manga.setImages(m.group(3));
        mangas.add(manga);
    }
    return mangas;
}
Also used : Pattern(java.util.regex.Pattern) Matcher(java.util.regex.Matcher) ArrayList(java.util.ArrayList) Manga(ar.rulosoft.mimanganu.componentes.Manga)

Aggregations

Manga (ar.rulosoft.mimanganu.componentes.Manga)61 ArrayList (java.util.ArrayList)48 Matcher (java.util.regex.Matcher)40 Pattern (java.util.regex.Pattern)40 JSONObject (org.json.JSONObject)6 View (android.view.View)5 Navigator (ar.rulosoft.navegadores.Navigator)5 Chapter (ar.rulosoft.mimanganu.componentes.Chapter)4 AsyncAddManga (ar.rulosoft.mimanganu.utils.AsyncAddManga)4 JSONArray (org.json.JSONArray)4 MenuInflater (android.view.MenuInflater)3 ServerBase (ar.rulosoft.mimanganu.servers.ServerBase)3 List (java.util.List)3 Bundle (android.os.Bundle)2 RecyclerView (android.support.v7.widget.RecyclerView)2 OnClickListener (android.view.View.OnClickListener)2 AdapterView (android.widget.AdapterView)2 OnItemClickListener (android.widget.AdapterView.OnItemClickListener)2 ListView (android.widget.ListView)2 MangasRecAdapter (ar.rulosoft.mimanganu.adapters.MangasRecAdapter)2