Search in sources :

Example 81 with User

use of com.meisolsson.githubsdk.model.User in project gh4a by slapperwan.

the class CommitNoteAdapter method onBindViewHolder.

@Override
public void onBindViewHolder(ViewHolder holder, GitComment item) {
    final User user = item.user();
    final String login = ApiHelpers.getUserLogin(mContext, user);
    final Date createdAt = item.createdAt();
    final Date updatedAt = item.updatedAt();
    holder.mBoundItem = item;
    AvatarHandler.assignAvatar(holder.ivGravatar, user);
    holder.ivGravatar.setTag(user);
    holder.tvTimestamp.setText(StringUtils.formatRelativeTime(mContext, createdAt, true));
    if (createdAt.equals(updatedAt)) {
        holder.tvEditTimestamp.setVisibility(View.GONE);
    } else {
        holder.tvEditTimestamp.setText(StringUtils.formatRelativeTime(mContext, updatedAt, true));
        holder.tvEditTimestamp.setVisibility(View.VISIBLE);
    }
    mImageGetter.bind(holder.tvDesc, item.bodyHtml(), item.id());
    SpannableString userName = new SpannableString(login);
    userName.setSpan(new StyleSpan(Typeface.BOLD), 0, userName.length(), 0);
    holder.tvExtra.setText(userName);
    holder.tvExtra.setTag(user);
    holder.reactions.setReactions(item.reactions());
    holder.mReactionMenuHelper.update();
    String ourLogin = Gh4Application.get().getAuthLogin();
    boolean canEdit = ApiHelpers.loginEquals(user, ourLogin) || ApiHelpers.loginEquals(mRepoOwner, ourLogin);
    MenuItem editMenuItem = holder.mPopupMenu.getMenu().findItem(R.id.edit);
    MenuItem deleteMenuItem = holder.mPopupMenu.getMenu().findItem(R.id.delete);
    MenuItem reactMenuItem = holder.mPopupMenu.getMenu().findItem(R.id.react);
    editMenuItem.setVisible(mActionCallback != null && canEdit);
    deleteMenuItem.setVisible(mActionCallback != null && canEdit);
    reactMenuItem.setVisible(mActionCallback != null && ourLogin != null);
}
Also used : SpannableString(android.text.SpannableString) User(com.meisolsson.githubsdk.model.User) StyleSpan(android.text.style.StyleSpan) MenuItem(android.view.MenuItem) SpannableString(android.text.SpannableString) Date(java.util.Date)

Example 82 with User

use of com.meisolsson.githubsdk.model.User in project gh4a by slapperwan.

the class CommitNoteAdapter method onClick.

@Override
public void onClick(View v) {
    if (v.getId() == R.id.iv_gravatar) {
        User user = (User) v.getTag();
        Intent intent = UserActivity.makeIntent(mContext, user);
        if (intent != null) {
            mContext.startActivity(intent);
        }
    } else if (v.getId() == R.id.tv_extra) {
        User user = (User) v.getTag();
        mActionCallback.addText(StringUtils.formatMention(mContext, user));
    } else {
        super.onClick(v);
    }
}
Also used : User(com.meisolsson.githubsdk.model.User) Intent(android.content.Intent)

Example 83 with User

use of com.meisolsson.githubsdk.model.User in project gh4a by slapperwan.

the class ContributorAdapter method onClick.

@Override
public void onClick(View v) {
    if (v.getId() == R.id.iv_gravatar) {
        User contributor = (User) v.getTag();
        Intent intent = UserActivity.makeIntent(mContext, contributor);
        if (intent != null) {
            mContext.startActivity(intent);
        }
    } else {
        super.onClick(v);
    }
}
Also used : User(com.meisolsson.githubsdk.model.User) Intent(android.content.Intent)

Example 84 with User

use of com.meisolsson.githubsdk.model.User in project PocketHub by pockethub.

the class RepositoryEventMatcherTest method testIncompleteRepositoryFork.

/**
 * Test fork event that has an incomplete forkee in the payload
 */
@Test
public void testIncompleteRepositoryFork() {
    RepositoryEventMatcher matcher = new RepositoryEventMatcher();
    ForkPayload payload = ForkPayload.builder().build();
    GitHubEvent event = GitHubEvent.builder().type(GitHubEventType.ForkEvent).payload(payload).build();
    assertNull(matcher.getRepository(event));
    Repository repository = Repository.builder().build();
    payload = payload.toBuilder().forkee(repository).build();
    event = event.toBuilder().payload(payload).build();
    assertNull(matcher.getRepository(event));
    repository = repository.toBuilder().name("repo").build();
    payload = payload.toBuilder().forkee(repository).build();
    event = event.toBuilder().payload(payload).build();
    assertNull(matcher.getRepository(event));
    User user = User.builder().build();
    repository = repository.toBuilder().owner(user).build();
    payload = payload.toBuilder().forkee(repository).build();
    event = event.toBuilder().payload(payload).build();
    assertNull(matcher.getRepository(event));
    user = user.toBuilder().login("owner").build();
    repository = repository.toBuilder().owner(user).build();
    payload = payload.toBuilder().forkee(repository).build();
    event = event.toBuilder().payload(payload).build();
    assertEquals(repository, matcher.getRepository(event));
}
Also used : ForkPayload(com.meisolsson.githubsdk.model.payload.ForkPayload) Repository(com.meisolsson.githubsdk.model.Repository) User(com.meisolsson.githubsdk.model.User) RepositoryEventMatcher(com.github.pockethub.android.core.repo.RepositoryEventMatcher) GitHubEvent(com.meisolsson.githubsdk.model.GitHubEvent) SmallTest(androidx.test.filters.SmallTest) Test(org.junit.Test)

Example 85 with User

use of com.meisolsson.githubsdk.model.User in project PocketHub by pockethub.

the class UserUriMatcherTest method testHttpUriWithName.

/**
 * Verify URI with name
 */
@Test
public void testHttpUriWithName() {
    User user = UserUriMatcher.getUser(Uri.parse("http://github.com/defunkt"));
    assertNotNull(user);
    assertEquals("defunkt", user.login());
}
Also used : User(com.meisolsson.githubsdk.model.User) Test(org.junit.Test)

Aggregations

User (com.meisolsson.githubsdk.model.User)97 Repository (com.meisolsson.githubsdk.model.Repository)15 View (android.view.View)14 Intent (android.content.Intent)13 TextView (android.widget.TextView)11 ImageView (android.widget.ImageView)10 ArrayList (java.util.ArrayList)10 Test (org.junit.Test)10 Label (com.meisolsson.githubsdk.model.Label)9 Milestone (com.meisolsson.githubsdk.model.Milestone)8 Bundle (android.os.Bundle)7 ApiHelpers (com.gh4a.utils.ApiHelpers)7 GitHubEvent (com.meisolsson.githubsdk.model.GitHubEvent)7 UserService (com.meisolsson.githubsdk.service.users.UserService)7 SmallTest (androidx.test.filters.SmallTest)6 List (java.util.List)6 ViewGroup (android.view.ViewGroup)5 AvatarHandler (com.gh4a.utils.AvatarHandler)5 UiUtils (com.gh4a.utils.UiUtils)5 Issue (com.meisolsson.githubsdk.model.Issue)5