Search in sources :

Example 1 with Item

use of com.xwray.groupie.Item in project PocketHub by pockethub.

the class GistsViewActivity method createIntent.

/**
 * Create an intent to show gists with an initial selected Gist
 *
 * @param items
 * @param position
 * @return intent
 */
public static Intent createIntent(List<Item> items, int position) {
    String[] ids = new String[items.size()];
    int index = 0;
    for (Item item : items) {
        Gist gist = ((GistItem) item).getGist();
        ids[index++] = gist.id();
    }
    return new Builder("gists.VIEW").add(EXTRA_GIST_IDS, (Serializable) ids).add(EXTRA_POSITION, position).toIntent();
}
Also used : GistItem(com.github.pockethub.android.ui.item.gist.GistItem) MenuItem(android.view.MenuItem) Item(com.xwray.groupie.Item) Gist(com.meisolsson.githubsdk.model.Gist) GistItem(com.github.pockethub.android.ui.item.gist.GistItem) Builder(com.github.pockethub.android.Intents.Builder)

Example 2 with Item

use of com.xwray.groupie.Item in project PocketHub by pockethub.

the class DashboardIssueFragment method onItemClick.

@Override
public void onItemClick(@NonNull Item clickedItem, @NonNull View view) {
    if (clickedItem instanceof IssueDashboardItem) {
        int position = getListAdapter().getAdapterPosition(clickedItem);
        Collection<Issue> issues = new ArrayList<>();
        for (Item item : items) {
            if (item instanceof IssueDashboardItem) {
                issues.add(((IssueItem) item).getIssue());
            }
        }
        startActivityForResult(IssuesViewActivity.createIntent(issues, position), ISSUE_VIEW);
    }
}
Also used : IssueItem(com.github.pockethub.android.ui.item.issue.IssueItem) IssueDashboardItem(com.github.pockethub.android.ui.item.issue.IssueDashboardItem) Item(com.xwray.groupie.Item) Issue(com.meisolsson.githubsdk.model.Issue) ArrayList(java.util.ArrayList) IssueDashboardItem(com.github.pockethub.android.ui.item.issue.IssueDashboardItem)

Example 3 with Item

use of com.xwray.groupie.Item in project PocketHub by pockethub.

the class RepositoryListFragment method updateHeaders.

private void updateHeaders(final List<Item> repos) {
    if (repos.isEmpty()) {
        return;
    }
    // Add recent header if at least one recent repository
    Repository first = ((RepositoryItem) repos.get(0)).getRepo();
    if (recentRepos.contains(first)) {
        repos.add(0, new RepositoryHeaderItem(getString(R.string.recently_viewed)));
    }
    // Advance past all recent repositories
    int index;
    for (index = 0; index < repos.size(); index++) {
        Item item = repos.get(index);
        if (item instanceof RepositoryItem) {
            Repository repository = ((RepositoryItem) item).getRepo();
            if (!recentRepos.contains(repository.id())) {
                break;
            }
        }
    }
    if (index >= repos.size()) {
        return;
    }
    // Register header for first character
    Repository current = ((RepositoryItem) repos.get(index)).getRepo();
    char start = Character.toLowerCase(current.name().charAt(0));
    repos.add(index, new RepositoryHeaderItem(Character.toString(start).toUpperCase(US)));
    for (index = index + 1; index < repos.size(); index++) {
        current = ((RepositoryItem) repos.get(index)).getRepo();
        char repoStart = Character.toLowerCase(current.name().charAt(0));
        if (repoStart <= start) {
            continue;
        }
        repos.add(index, new RepositoryHeaderItem(Character.toString(repoStart).toUpperCase(US)));
        start = repoStart;
    }
}
Also used : RepositoryItem(com.github.pockethub.android.ui.item.repository.RepositoryItem) RepositoryItem(com.github.pockethub.android.ui.item.repository.RepositoryItem) Item(com.xwray.groupie.Item) RepositoryHeaderItem(com.github.pockethub.android.ui.item.repository.RepositoryHeaderItem) Repository(com.meisolsson.githubsdk.model.Repository) RepositoryHeaderItem(com.github.pockethub.android.ui.item.repository.RepositoryHeaderItem)

Example 4 with Item

use of com.xwray.groupie.Item in project PocketHub by pockethub.

the class CommitViewActivity method createIntent.

/**
 * Create intent for this activity
 *
 * @param repository
 * @param position
 * @param commits
 * @return intent
 */
public static Intent createIntent(final Repository repository, final int position, final Collection<Item> commits) {
    String[] ids = new String[commits.size()];
    int index = 0;
    for (Item item : commits) {
        Commit commit = ((CommitItem) item).getCommit();
        ids[index++] = commit.sha();
    }
    return createIntent(repository, position, ids);
}
Also used : MenuItem(android.view.MenuItem) CommitItem(com.github.pockethub.android.ui.item.commit.CommitItem) Item(com.xwray.groupie.Item) Commit(com.meisolsson.githubsdk.model.Commit) CommitItem(com.github.pockethub.android.ui.item.commit.CommitItem)

Aggregations

Item (com.xwray.groupie.Item)4 MenuItem (android.view.MenuItem)2 Builder (com.github.pockethub.android.Intents.Builder)1 CommitItem (com.github.pockethub.android.ui.item.commit.CommitItem)1 GistItem (com.github.pockethub.android.ui.item.gist.GistItem)1 IssueDashboardItem (com.github.pockethub.android.ui.item.issue.IssueDashboardItem)1 IssueItem (com.github.pockethub.android.ui.item.issue.IssueItem)1 RepositoryHeaderItem (com.github.pockethub.android.ui.item.repository.RepositoryHeaderItem)1 RepositoryItem (com.github.pockethub.android.ui.item.repository.RepositoryItem)1 Commit (com.meisolsson.githubsdk.model.Commit)1 Gist (com.meisolsson.githubsdk.model.Gist)1 Issue (com.meisolsson.githubsdk.model.Issue)1 Repository (com.meisolsson.githubsdk.model.Repository)1 ArrayList (java.util.ArrayList)1