Skip to content
Snippets Groups Projects
Commit a7c1cae6 authored by Michi302's avatar Michi302
Browse files

Merge branch 'master' into fdroid

# Conflicts:
#	.gitlab-ci.yml
#	app/build.gradle
#	app/src/main/AndroidManifest.xml
#	app/src/main/java/com/commit451/gitlab/App.java
parents c265a2ab dfef4962
No related branches found
No related tags found
No related merge requests found
Pipeline #
Showing
with 418 additions and 169 deletions
image: commit451/android-config:latest
before_script:
# Make sure that we are not trying to print anything to the console
- unset DISPLAY
- export TERM=dumb
- export _JAVA_OPTIONS="-Djava.awt.headless=true"
- apt-get -q -y update
- apt-get -q -y install wget tar expect openjdk-7-jdk lib32stdc++6 lib32z1
- wget -q http://dl.google.com/android/android-sdk_r24.4.1-linux.tgz
- tar xzf android-sdk_r24.4.1-linux.tgz
- wget -q https://raw.githubusercontent.com/journeyapps/android-sdk-installer/master/accept-licenses
- chmod +x accept-licenses
- ./accept-licenses "android-sdk-linux/tools/android -s update sdk --no-ui --all --filter tools,platform-tools,build-tools-23.0.3,android-23,extra-android-m2repository" "android-sdk-license-5be876d5|android-sdk-license-c81a61d9"
- export ANDROID_HOME=$PWD/android-sdk-linux
# Increase the heap size to 3 GB for faster builds
- export JAVA_OPTS="-Xmx3G"
# Make Gradle executable
- chmod +x gradlew
 
build:
script:
# Run the build script, excluding the fabric tasks since they will fail with no proper API key
- ./gradlew build --stacktrace
Loading
Loading
@@ -25,7 +25,8 @@ The following 3rd party libraries and resources are the reason this app works. R
- RxAndroid (https://github.com/ReactiveX/RxAndroid)
- Butter Knife (http://jakewharton.github.io/butterknife/)
- Timber (https://github.com/JakeWharton/timber)
- Gson (https://github.com/google/gson)
- LoganSquare (https://github.com/bluelinelabs/LoganSquare)
- retrofit-logansquare (https://github.com/aurae/retrofit-logansquare)
- Joda Time Android (https://github.com/dlew/joda-time-android)
- Parceler (https://github.com/johncarl81/parceler)
- Bypasses (https://github.com/Commit451/bypasses)
Loading
Loading
def versionMajor = 2
def versionMinor = 2
def versionPatch = 6
def versionBuild = 1 // bump for dogfood builds, public betas, etc.
apply plugin: 'com.android.application'
apply plugin: 'com.neenbedankt.android-apt'
 
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
compileSdkVersion 24
buildToolsVersion "24.0.0"
 
defaultConfig {
applicationId "com.commit451.gitlab"
minSdkVersion 16
targetSdkVersion 23
targetSdkVersion 24
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
versionCode 226
versionName "2.2.6"
versionCode versionMajor * 1000000 + versionMinor * 10000 + versionPatch * 100 + versionBuild
versionName "${versionMajor}.${versionMinor}.${versionPatch}"
}
buildTypes {
release {
minifyEnabled false
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
Loading
Loading
@@ -31,54 +36,57 @@ android {
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
testCompile 'org.robolectric:robolectric:3.0'
testCompile 'org.robolectric:robolectric:3.1'
debugCompile 'com.squareup.leakcanary:leakcanary-android:1.3.1'
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.3.1'
 
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.android.support:recyclerview-v7:23.4.0'
compile 'com.android.support:cardview-v7:23.4.0'
compile 'com.android.support:palette-v7:23.4.0'
compile 'com.android.support:customtabs:23.4.0'
compile 'com.squareup.retrofit2:retrofit:2.0.2'
compile 'com.squareup.retrofit2:converter-gson:2.0.2'
compile('com.squareup.retrofit2:converter-simplexml:2.0.2') {
compile 'com.android.support:appcompat-v7:24.0.0'
compile 'com.android.support:design:24.0.0'
compile 'com.android.support:recyclerview-v7:24.0.0'
compile 'com.android.support:cardview-v7:24.0.0'
compile 'com.android.support:palette-v7:24.0.0'
compile 'com.android.support:customtabs:24.0.0'
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.github.aurae.retrofit2:converter-logansquare:1.4.0'
compile('com.squareup.retrofit2:converter-simplexml:2.1.0') {
exclude group: 'xpp3', module: 'xpp3'
exclude group: 'stax', module: 'stax-api'
exclude group: 'stax', module: 'stax'
}
compile 'com.squareup.okhttp3:okhttp:3.2.0'
compile 'com.squareup.okhttp3:logging-interceptor:3.2.0'
compile 'com.squareup.okhttp3:okhttp:3.3.1'
compile 'com.squareup.okhttp3:logging-interceptor:3.3.1'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.jakewharton.picasso:picasso2-okhttp3-downloader:1.0.2'
compile 'com.squareup:otto:1.3.8'
compile 'io.reactivex:rxjava:1.1.5'
compile 'io.reactivex:rxjava:1.1.6'
compile 'io.reactivex:rxandroid:1.2.0'
compile 'com.jakewharton:butterknife:8.0.1'
apt 'com.jakewharton:butterknife-compiler:8.0.1'
compile 'com.jakewharton:butterknife:8.1.0'
apt 'com.jakewharton:butterknife-compiler:8.1.0'
compile 'com.jakewharton.timber:timber:4.1.2'
compile 'com.google.code.gson:gson:2.6.2'
compile 'net.danlew:android.joda:2.9.3'
compile "org.parceler:parceler-api:1.0.4"
apt "org.parceler:parceler:1.0.4"
apt 'com.bluelinelabs:logansquare-compiler:1.3.7'
compile 'com.bluelinelabs:logansquare:1.3.7'
compile 'net.danlew:android.joda:2.9.3.1'
compile 'org.parceler:parceler-api:1.1.5'
apt 'org.parceler:parceler:1.1.5'
compile 'com.commit451:bypasses:1.0.1'
compile 'com.commit451:easel:0.0.5'
compile 'com.commit451:foregroundviews:1.0.0'
compile 'com.commit451:elasticdragdismisslayout:1.0.2'
compile 'com.commit451:adapterlayout:1.0.1'
compile 'com.github.Commit451:Gimbal:1.0.0'
compile 'com.github.Commit451:Teleprinter:1.0.1'
compile 'com.github.Commit451:Teleprinter:1.0.2'
compile 'com.github.Commit451:BypassPicassoImageGetter:1.0.0'
compile 'com.github.Commit451:Jounce:1.0.1'
compile 'com.github.Commit451:EasyCallback:1.0.0'
compile 'com.pnikosis:materialish-progress:1.7'
compile 'com.jawnnypoo:physicslayout:1.0.1'
compile 'com.alexgwyn.recyclerviewsquire:recyclerviewsquire:0.0.5'
compile 'com.github.ivbaranov:materiallettericon:0.2.2'
compile 'com.github.johnkil.android-robototextview:robototextview:2.5.0'
compile 'com.github.alorma:diff-textview:1.3.0'
compile 'com.wdullaer:materialdatetimepicker:2.3.0'
compile "com.wefika:flowlayout:0.4.1"
compile 'com.novoda:simple-chrome-custom-tabs:0.1.3-rc1'
compile 'com.wefika:flowlayout:0.4.1'
compile 'com.github.novoda:simple-chrome-custom-tabs:0.1.3-rc1'
 
compile('com.github.afollestad.material-dialogs:core:0.8.5.8@aar') {
transitive = true
Loading
Loading
Loading
Loading
@@ -8,7 +8,7 @@
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
 
<application
android:name=".LabCoatApp"
android:name=".App"
android:allowBackup="true"
android:fullBackupContent="true"
android:icon="@mipmap/ic_launcher"
Loading
Loading
@@ -27,13 +27,16 @@
 
<activity
android:name=".activity.ProjectsActivity"
android:launchMode="singleTask"/>
android:launchMode="singleTask"
android:theme="@style/Activity.Projects"/>
<activity
android:name=".activity.GroupsActivity"
android:launchMode="singleTask"/>
android:launchMode="singleTask"
android:theme="@style/Activity.Groups"/>
<activity
android:name=".activity.ActivityActivity"
android:launchMode="singleTask"/>
android:launchMode="singleTask"
android:theme="@style/Activity.Activity"/>
<activity android:name=".activity.ProjectActivity"/>
<activity android:name=".activity.LoginActivity"/>
<activity android:name=".activity.FileActivity"/>
Loading
Loading
@@ -41,17 +44,23 @@
<activity android:name=".activity.DiffActivity"/>
<activity android:name=".activity.AboutActivity"/>
<activity android:name=".activity.AddUserActivity"/>
<activity android:name=".activity.UserActivity"/>
<activity
android:name=".activity.UserActivity"
android:theme="@style/Activity.User"/>
<activity android:name=".activity.SearchActivity"/>
<activity android:name=".activity.GroupActivity"/>
<activity
android:name=".activity.GroupActivity"
android:theme="@style/Activity.Group"/>
<activity android:name=".activity.MergeRequestActivity"/>
<activity android:name=".activity.AddIssueActivity"/>
<activity android:name=".activity.MilestoneActivity"/>
<activity android:name=".activity.AddMilestoneActivity"/>
<activity android:name=".activity.BuildActivity"/>
<activity android:name=".activity.LoadSomeInfoActivity"
<activity
android:name=".activity.LoadSomeInfoActivity"
android:theme="@style/Activity.Translucent"/>
<activity android:name=".activity.SettingsActivity"/>
<activity android:name=".activity.AddLabelActivity"/>
 
<activity
android:name=".activity.RoutingActivity"
Loading
Loading
@@ -65,10 +74,32 @@
<category android:name="android.intent.category.BROWSABLE"/>
<category android:name="android.intent.category.DEFAULT"/>
 
<data
android:scheme="@string/deeplink_scheme"/>
<data android:scheme="@string/deeplink_scheme"/>
</intent-filter>
</activity>
<activity android:name=".widget.FeedWidgetConfigureActivity">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE"/>
</intent-filter>
</activity>
<receiver
android:name=".widget.FeedWidgetProvider"
android:label="GitLab Feed">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/widget_feed"/>
</receiver>
<service
android:name=".widget.FeedWidgetService"
android:permission="android.permission.BIND_REMOTEVIEWS"/>
</application>
 
</manifest>
\ No newline at end of file
Loading
Loading
@@ -3,8 +3,11 @@ package com.commit451.gitlab;
import android.app.Application;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.net.Uri;
import android.support.annotation.VisibleForTesting;
 
import com.bluelinelabs.logansquare.LoganSquare;
import com.commit451.gitlab.api.converter.UriTypeConverter;
import com.novoda.simplechromecustomtabs.SimpleChromeCustomTabs;
import com.squareup.leakcanary.LeakCanary;
import com.squareup.otto.Bus;
Loading
Loading
@@ -18,7 +21,14 @@ import timber.log.Timber;
/**
* App for one time init things and to house singletons
*/
public class LabCoatApp extends Application {
public class App extends Application {
/**
* Register our type converters on our singleton LoganSquare create
*/
static {
LoganSquare.registerTypeConverter(Uri.class, new UriTypeConverter());
}
 
private static Bus sBus;
public static Bus bus() {
Loading
Loading
@@ -28,8 +38,8 @@ public class LabCoatApp extends Application {
return sBus;
}
 
private static LabCoatApp sInstance;
public static LabCoatApp instance() {
private static App sInstance;
public static App instance() {
return sInstance;
}
 
Loading
Loading
Loading
Loading
@@ -19,10 +19,10 @@ import android.widget.TextView;
 
import com.commit451.gitbal.Gimbal;
import com.commit451.gitlab.R;
import com.commit451.gitlab.api.EasyCallback;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.model.api.Contributor;
import com.commit451.gitlab.navigation.NavigationManager;
import com.commit451.gitlab.navigation.Navigator;
import com.commit451.gitlab.transformation.CircleTransformation;
import com.commit451.gitlab.util.ImageUtil;
import com.commit451.gitlab.util.IntentUtil;
Loading
Loading
@@ -65,7 +65,7 @@ public class AboutActivity extends BaseActivity {
@OnClick(R.id.sauce)
void onSauceClick() {
if (getString(R.string.url_gitlab).equals(GitLabClient.getAccount().getServerUrl().toString())) {
NavigationManager.navigateToProject(AboutActivity.this, REPO_ID);
Navigator.navigateToProject(AboutActivity.this, REPO_ID);
} else {
IntentUtil.openPage(AboutActivity.this, getString(R.string.source_url));
}
Loading
Loading
@@ -93,13 +93,13 @@ public class AboutActivity extends BaseActivity {
 
private Callback<List<Contributor>> mContributorResponseCallback = new EasyCallback<List<Contributor>>() {
@Override
public void onResponse(@NonNull List<Contributor> response) {
public void success(@NonNull List<Contributor> response) {
mProgress.setVisibility(View.GONE);
addContributors(Contributor.groupContributors(response));
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mProgress.setVisibility(View.GONE);
Snackbar.make(mRoot, R.string.failed_to_load_contributors, Snackbar.LENGTH_SHORT)
Loading
Loading
@@ -145,7 +145,6 @@ public class AboutActivity extends BaseActivity {
PhysicsConfig config = new PhysicsConfig.Builder()
.setShapeType(PhysicsConfig.ShapeType.CIRCLE)
.setDensity(1.0f)
.setFriction(0.0f)
.setRestitution(0.0f)
.build();
int x = 0;
Loading
Loading
Loading
Loading
@@ -9,7 +9,7 @@ import android.support.v4.widget.DrawerLayout;
import android.support.v7.widget.Toolbar;
import android.view.View;
 
import com.commit451.gitlab.LabCoatApp;
import com.commit451.gitlab.App;
import com.commit451.gitlab.R;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.event.CloseDrawerEvent;
Loading
Loading
@@ -44,7 +44,7 @@ public class ActivityActivity extends BaseActivity {
ButterKnife.bind(this);
 
mEventReceiver = new EventReceiver();
LabCoatApp.bus().register(mEventReceiver);
App.bus().register(mEventReceiver);
 
mToolbar.setTitle(R.string.nav_activity);
mToolbar.setNavigationIcon(R.drawable.ic_menu_24dp);
Loading
Loading
@@ -75,7 +75,7 @@ public class ActivityActivity extends BaseActivity {
@Override
protected void onDestroy() {
super.onDestroy();
LabCoatApp.bus().unregister(mEventReceiver);
App.bus().unregister(mEventReceiver);
}
 
private class EventReceiver {
Loading
Loading
Loading
Loading
@@ -15,12 +15,12 @@ import android.widget.FrameLayout;
import android.widget.Spinner;
import android.widget.TextView;
 
import com.commit451.gitlab.LabCoatApp;
import com.commit451.gitlab.App;
import com.commit451.gitlab.R;
import com.commit451.gitlab.adapter.AddIssueLabelAdapter;
import com.commit451.gitlab.adapter.AssigneeSpinnerAdapter;
import com.commit451.gitlab.adapter.MilestoneSpinnerAdapter;
import com.commit451.gitlab.api.EasyCallback;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.api.exception.NullBodyException;
import com.commit451.gitlab.event.IssueChangedEvent;
Loading
Loading
@@ -30,7 +30,7 @@ import com.commit451.gitlab.model.api.Label;
import com.commit451.gitlab.model.api.Member;
import com.commit451.gitlab.model.api.Milestone;
import com.commit451.gitlab.model.api.Project;
import com.commit451.gitlab.navigation.NavigationManager;
import com.commit451.gitlab.navigation.Navigator;
import com.commit451.gitlab.view.AdapterFlowLayout;
import com.commit451.teleprinter.Teleprinter;
 
Loading
Loading
@@ -51,6 +51,7 @@ import timber.log.Timber;
*/
public class AddIssueActivity extends MorphActivity {
 
private static final int REQUEST_LABEL = 1;
private static final String KEY_PROJECT = "project";
private static final String KEY_ISSUE = "issue";
 
Loading
Loading
@@ -98,14 +99,19 @@ public class AddIssueActivity extends MorphActivity {
private AddIssueLabelAdapter mLabelsAdapter;
private Teleprinter mTeleprinter;
 
@OnClick({R.id.text_add_labels, R.id.list_labels})
@OnClick(R.id.text_add_labels)
void onAddLabelsClick() {
NavigationManager.navigateToAddLabels(AddIssueActivity.this, mProject, mIssue);
Navigator.navigateToAddLabels(AddIssueActivity.this, mProject, REQUEST_LABEL);
}
@OnClick(R.id.list_labels)
void onLabelsClicked() {
Navigator.navigateToAddLabels(AddIssueActivity.this, mProject, REQUEST_LABEL);
}
 
private final Callback<List<Milestone>> mMilestonesCallback = new EasyCallback<List<Milestone>>() {
@Override
public void onResponse(@NonNull List<Milestone> response) {
public void success(@NonNull List<Milestone> response) {
mMilestoneProgress.setVisibility(View.GONE);
mMilestoneSpinner.setVisibility(View.VISIBLE);
MilestoneSpinnerAdapter milestoneSpinnerAdapter = new MilestoneSpinnerAdapter(AddIssueActivity.this, response);
Loading
Loading
@@ -116,7 +122,7 @@ public class AddIssueActivity extends MorphActivity {
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mMilestoneProgress.setVisibility(View.GONE);
mMilestoneSpinner.setVisibility(View.GONE);
Loading
Loading
@@ -125,7 +131,7 @@ public class AddIssueActivity extends MorphActivity {
 
private final Callback<List<Member>> mAssigneeCallback = new EasyCallback<List<Member>>() {
@Override
public void onResponse(@NonNull List<Member> response) {
public void success(@NonNull List<Member> response) {
mMembers.addAll(response);
if (mProject.belongsToGroup()) {
Timber.d("Project belongs to a group, loading those users too");
Loading
Loading
@@ -136,7 +142,7 @@ public class AddIssueActivity extends MorphActivity {
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mAssigneeSpinner.setVisibility(View.GONE);
mAssigneeProgress.setVisibility(View.GONE);
Loading
Loading
@@ -145,13 +151,13 @@ public class AddIssueActivity extends MorphActivity {
 
private final Callback<List<Member>> mGroupMembersCallback = new EasyCallback<List<Member>>() {
@Override
public void onResponse(@NonNull List<Member> response) {
public void success(@NonNull List<Member> response) {
mMembers.addAll(response);
setAssignees();
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mAssigneeSpinner.setVisibility(View.GONE);
mAssigneeProgress.setVisibility(View.GONE);
Loading
Loading
@@ -160,14 +166,14 @@ public class AddIssueActivity extends MorphActivity {
 
private final Callback<List<Label>> mLabelCallback = new EasyCallback<List<Label>>() {
@Override
public void onResponse(@NonNull List<Label> response) {
public void success(@NonNull List<Label> response) {
mLabelsProgress.setVisibility(View.GONE);
mListLabels.setVisibility(View.VISIBLE);
setLabels(response);
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
//null body could just mean no labels have been created for this project
if (t instanceof NullBodyException) {
Loading
Loading
@@ -183,17 +189,17 @@ public class AddIssueActivity extends MorphActivity {
private final Callback<Issue> mIssueCreatedCallback = new EasyCallback<Issue>() {
 
@Override
public void onResponse(@NonNull Issue response) {
public void success(@NonNull Issue response) {
if (mIssue == null) {
LabCoatApp.bus().post(new IssueCreatedEvent(response));
App.bus().post(new IssueCreatedEvent(response));
} else {
LabCoatApp.bus().post(new IssueChangedEvent(response));
App.bus().post(new IssueChangedEvent(response));
}
dismiss();
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
Snackbar.make(mRoot, getString(R.string.failed_to_create_issue), Snackbar.LENGTH_SHORT)
.show();
Loading
Loading
@@ -244,7 +250,7 @@ public class AddIssueActivity extends MorphActivity {
}
 
private void load() {
GitLabClient.instance().getMilestones(mProject.getId()).enqueue(mMilestonesCallback);
GitLabClient.instance().getMilestones(mProject.getId(), getString(R.string.milestone_state_value_default)).enqueue(mMilestonesCallback);
GitLabClient.instance().getProjectMembers(mProject.getId()).enqueue(mAssigneeCallback);
GitLabClient.instance().getLabels(mProject.getId()).enqueue(mLabelCallback);
}
Loading
Loading
package com.commit451.gitlab.activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.R;
import com.commit451.gitlab.adapter.LabelAdapter;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.model.api.Label;
import com.commit451.gitlab.viewHolder.LabelViewHolder;
import java.util.List;
import butterknife.BindView;
import butterknife.ButterKnife;
import timber.log.Timber;
/**
* Add labels!
*/
public class AddLabelActivity extends BaseActivity {
private static final String KEY_PROJECT_ID = "project_id";
public static Intent newIntent(Context context, long projectId) {
Intent intent = new Intent(context, AddLabelActivity.class);
intent.putExtra(KEY_PROJECT_ID, projectId);
return intent;
}
@BindView(R.id.root)
ViewGroup mRoot;
@BindView(R.id.toolbar)
Toolbar mToolbar;
@BindView(R.id.swipe_layout)
SwipeRefreshLayout mSwipeRefreshLayout;
@BindView(R.id.list)
RecyclerView mList;
LabelAdapter mLabelAdapter;
@BindView(R.id.message_text)
TextView mTextMessage;
long mProjectId;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add_label);
ButterKnife.bind(this);
mProjectId = getIntent().getLongExtra(KEY_PROJECT_ID, -1);
mToolbar.setTitle(R.string.labels);
mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
load();
}
});
mLabelAdapter = new LabelAdapter(new LabelAdapter.Listener() {
@Override
public void onLabelClicked(Label label, LabelViewHolder viewHolder) {
}
@Override
public void onAddLabelClicked() {
}
});
mList.setAdapter(mLabelAdapter);
mList.setLayoutManager(new LinearLayoutManager(this));
mToolbar.setNavigationIcon(R.drawable.ic_back_24dp);
mToolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onBackPressed();
}
});
load();
}
private void load() {
mTextMessage.setVisibility(View.GONE);
mSwipeRefreshLayout.post(new Runnable() {
@Override
public void run() {
if (mSwipeRefreshLayout != null) {
mSwipeRefreshLayout.setRefreshing(true);
}
}
});
GitLabClient.instance().getLabels(mProjectId).enqueue(new EasyCallback<List<Label>>() {
@Override
public void success(@NonNull List<Label> response) {
mSwipeRefreshLayout.setRefreshing(false);
if (response.isEmpty()) {
mTextMessage.setVisibility(View.VISIBLE);
}
mLabelAdapter.setItems(response);
}
@Override
public void failure(Throwable t) {
mSwipeRefreshLayout.setRefreshing(false);
mTextMessage.setVisibility(View.VISIBLE);
Timber.e(t, null);
}
});
}
}
Loading
Loading
@@ -16,9 +16,9 @@ import android.widget.EditText;
import android.widget.FrameLayout;
 
import com.commit451.easel.Easel;
import com.commit451.gitlab.LabCoatApp;
import com.commit451.gitlab.App;
import com.commit451.gitlab.R;
import com.commit451.gitlab.api.EasyCallback;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.event.MilestoneChangedEvent;
import com.commit451.gitlab.event.MilestoneCreatedEvent;
Loading
Loading
@@ -111,18 +111,18 @@ public class AddMilestoneActivity extends MorphActivity {
private Callback<Milestone> mMilestoneCallback = new EasyCallback<Milestone>() {
 
@Override
public void onResponse(@NonNull Milestone response) {
public void success(@NonNull Milestone response) {
mProgress.setVisibility(View.GONE);
if (mMilestone == null) {
LabCoatApp.bus().post(new MilestoneCreatedEvent(response));
App.bus().post(new MilestoneCreatedEvent(response));
} else {
LabCoatApp.bus().post(new MilestoneChangedEvent(response));
App.bus().post(new MilestoneChangedEvent(response));
}
finish();
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mProgress.setVisibility(View.GONE);
showError();
Loading
Loading
Loading
Loading
@@ -19,11 +19,11 @@ import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.TextView;
 
import com.commit451.gitlab.LabCoatApp;
import com.commit451.gitlab.App;
import com.commit451.gitlab.R;
import com.commit451.gitlab.adapter.UsersAdapter;
import com.commit451.gitlab.animation.HideRunnable;
import com.commit451.gitlab.api.EasyCallback;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.api.exception.HttpException;
import com.commit451.gitlab.dialog.AccessDialog;
Loading
Loading
@@ -183,7 +183,7 @@ public class AddUserActivity extends MorphActivity {
 
private final Callback<List<UserBasic>> mUserCallback = new EasyCallback<List<UserBasic>>() {
@Override
public void onResponse(@NonNull List<UserBasic> response) {
public void success(@NonNull List<UserBasic> response) {
mSwipeRefreshLayout.setRefreshing(false);
mLoading = false;
mAdapter.setData(response);
Loading
Loading
@@ -192,7 +192,7 @@ public class AddUserActivity extends MorphActivity {
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mSwipeRefreshLayout.setRefreshing(false);
mLoading = false;
Loading
Loading
@@ -203,7 +203,7 @@ public class AddUserActivity extends MorphActivity {
 
private final Callback<List<UserBasic>> mMoreUsersCallback = new EasyCallback<List<UserBasic>>() {
@Override
public void onResponse(@NonNull List<UserBasic> response) {
public void success(@NonNull List<UserBasic> response) {
mLoading = false;
mAdapter.setLoading(false);
mAdapter.addData(response);
Loading
Loading
@@ -211,7 +211,7 @@ public class AddUserActivity extends MorphActivity {
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mAdapter.setLoading(false);
}
Loading
Loading
@@ -219,16 +219,16 @@ public class AddUserActivity extends MorphActivity {
 
private final Callback<Member> mAddGroupMemeberCallback = new EasyCallback<Member>() {
@Override
public void onResponse(@NonNull Member response) {
public void success(@NonNull Member response) {
Snackbar.make(mRoot, R.string.user_added_successfully, Snackbar.LENGTH_SHORT)
.show();
mAccessDialog.dismiss();
dismiss();
LabCoatApp.bus().post(new MemberAddedEvent(response));
App.bus().post(new MemberAddedEvent(response));
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
if (t instanceof HttpException) {
//Conflict
Loading
Loading
Loading
Loading
@@ -12,10 +12,10 @@ import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
 
import com.commit451.gitlab.LabCoatApp;
import com.commit451.gitlab.App;
import com.commit451.gitlab.R;
import com.commit451.gitlab.adapter.BuildSectionsPagerAdapter;
import com.commit451.gitlab.api.EasyCallback;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.event.BuildChangedEvent;
import com.commit451.gitlab.model.api.Build;
Loading
Loading
@@ -58,15 +58,15 @@ public class BuildActivity extends BaseActivity {
 
private final EasyCallback<Build> mRetryCallback = new EasyCallback<Build>() {
@Override
public void onResponse(@NonNull Build response) {
public void success(@NonNull Build response) {
mProgress.setVisibility(View.GONE);
Snackbar.make(mRoot, R.string.build_started, Snackbar.LENGTH_LONG)
.show();
LabCoatApp.bus().post(new BuildChangedEvent(response));
App.bus().post(new BuildChangedEvent(response));
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mProgress.setVisibility(View.GONE);
Snackbar.make(mRoot, R.string.unable_to_retry_build, Snackbar.LENGTH_LONG)
Loading
Loading
@@ -76,15 +76,15 @@ public class BuildActivity extends BaseActivity {
 
private final EasyCallback<Build> mEraseCallback = new EasyCallback<Build>() {
@Override
public void onResponse(@NonNull Build response) {
public void success(@NonNull Build response) {
mProgress.setVisibility(View.GONE);
Snackbar.make(mRoot, R.string.build_erased, Snackbar.LENGTH_LONG)
.show();
LabCoatApp.bus().post(new BuildChangedEvent(response));
App.bus().post(new BuildChangedEvent(response));
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mProgress.setVisibility(View.GONE);
Snackbar.make(mRoot, R.string.unable_to_erase_build, Snackbar.LENGTH_LONG)
Loading
Loading
@@ -94,15 +94,15 @@ public class BuildActivity extends BaseActivity {
 
private final EasyCallback<Build> mCancelCallback = new EasyCallback<Build>() {
@Override
public void onResponse(@NonNull Build response) {
public void success(@NonNull Build response) {
mProgress.setVisibility(View.GONE);
Snackbar.make(mRoot, R.string.build_canceled, Snackbar.LENGTH_LONG)
.show();
LabCoatApp.bus().post(new BuildChangedEvent(response));
App.bus().post(new BuildChangedEvent(response));
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mProgress.setVisibility(View.GONE);
Snackbar.make(mRoot, R.string.unable_to_cancel_build, Snackbar.LENGTH_LONG)
Loading
Loading
Loading
Loading
@@ -14,7 +14,7 @@ import android.widget.TextView;
 
import com.commit451.gitlab.R;
import com.commit451.gitlab.adapter.DiffAdapter;
import com.commit451.gitlab.api.EasyCallback;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.model.api.Diff;
import com.commit451.gitlab.model.api.Project;
Loading
Loading
@@ -56,13 +56,13 @@ public class DiffActivity extends BaseActivity {
 
private Callback<List<Diff>> mDiffCallback = new EasyCallback<List<Diff>>() {
@Override
public void onResponse(@NonNull List<Diff> response) {
public void success(@NonNull List<Diff> response) {
mSwipeRefreshLayout.setRefreshing(false);
mDiffAdapter.setData(response);
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
mSwipeRefreshLayout.setRefreshing(false);
Timber.e(t, null);
mMessageText.setText(R.string.connection_error);
Loading
Loading
Loading
Loading
@@ -22,7 +22,7 @@ import android.webkit.MimeTypeMap;
import android.webkit.WebView;
 
import com.commit451.gitlab.R;
import com.commit451.gitlab.api.EasyCallback;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.model.api.RepositoryFile;
import com.commit451.gitlab.observable.DecodeObservableFactory;
Loading
Loading
@@ -80,13 +80,13 @@ public class FileActivity extends BaseActivity {
 
private final Callback<RepositoryFile> mRepositoryFileCallback = new EasyCallback<RepositoryFile>() {
@Override
public void onResponse(@NonNull RepositoryFile response) {
public void success(@NonNull RepositoryFile response) {
mProgressView.setVisibility(View.GONE);
bindFile(response);
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mProgressView.setVisibility(View.GONE);
Snackbar.make(mRoot, R.string.file_load_error, Snackbar.LENGTH_SHORT)
Loading
Loading
Loading
Loading
@@ -20,7 +20,7 @@ import android.widget.ImageView;
import com.commit451.easel.Easel;
import com.commit451.gitlab.R;
import com.commit451.gitlab.adapter.GroupPagerAdapter;
import com.commit451.gitlab.api.EasyCallback;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.model.api.Group;
import com.commit451.gitlab.model.api.GroupDetail;
Loading
Loading
@@ -63,13 +63,13 @@ public class GroupActivity extends BaseActivity {
 
private final Callback<GroupDetail> mGroupCallback = new EasyCallback<GroupDetail>() {
@Override
public void onResponse(@NonNull GroupDetail response) {
public void success(@NonNull GroupDetail response) {
mProgress.setVisibility(View.GONE);
bind(response);
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mProgress.setVisibility(View.GONE);
showError();
Loading
Loading
Loading
Loading
@@ -15,14 +15,14 @@ import android.support.v7.widget.Toolbar;
import android.view.View;
import android.widget.TextView;
 
import com.commit451.gitlab.LabCoatApp;
import com.commit451.gitlab.App;
import com.commit451.gitlab.R;
import com.commit451.gitlab.adapter.GroupAdapter;
import com.commit451.gitlab.api.EasyCallback;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.event.CloseDrawerEvent;
import com.commit451.gitlab.model.api.Group;
import com.commit451.gitlab.navigation.NavigationManager;
import com.commit451.gitlab.navigation.Navigator;
import com.commit451.gitlab.util.PaginationUtil;
import com.commit451.gitlab.viewHolder.GroupViewHolder;
import com.squareup.otto.Subscribe;
Loading
Loading
@@ -71,7 +71,7 @@ public class GroupsActivity extends BaseActivity {
 
private final Callback<List<Group>> mGroupsCallback = new EasyCallback<List<Group>>() {
@Override
public void onResponse(@NonNull List<Group> response) {
public void success(@NonNull List<Group> response) {
mLoading = false;
mSwipeRefreshLayout.setRefreshing(false);
if (response.isEmpty()) {
Loading
Loading
@@ -86,7 +86,7 @@ public class GroupsActivity extends BaseActivity {
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mSwipeRefreshLayout.setRefreshing(false);
mLoading = false;
Loading
Loading
@@ -97,14 +97,14 @@ public class GroupsActivity extends BaseActivity {
 
private final Callback<List<Group>> mMoreGroupsCallback = new EasyCallback<List<Group>>() {
@Override
public void onResponse(@NonNull List<Group> response) {
public void success(@NonNull List<Group> response) {
mLoading = false;
mGroupAdapter.addGroups(response);
mNextPageUrl = PaginationUtil.parse(getResponse()).getNext();
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mLoading = false;
}
Loading
Loading
@@ -113,7 +113,7 @@ public class GroupsActivity extends BaseActivity {
private final GroupAdapter.Listener mGroupAdapterListener = new GroupAdapter.Listener() {
@Override
public void onGroupClicked(Group group, GroupViewHolder groupViewHolder) {
NavigationManager.navigateToGroup(GroupsActivity.this, groupViewHolder.mImageView, group);
Navigator.navigateToGroup(GroupsActivity.this, groupViewHolder.mImageView, group);
}
};
 
Loading
Loading
@@ -123,7 +123,7 @@ public class GroupsActivity extends BaseActivity {
setContentView(R.layout.activity_groups);
ButterKnife.bind(this);
mEventReceiver = new EventReceiver();
LabCoatApp.bus().register(mEventReceiver);
App.bus().register(mEventReceiver);
 
mToolbar.setTitle(R.string.nav_groups);
mToolbar.setNavigationIcon(R.drawable.ic_menu_24dp);
Loading
Loading
@@ -156,7 +156,7 @@ public class GroupsActivity extends BaseActivity {
@Override
protected void onDestroy() {
super.onDestroy();
LabCoatApp.bus().unregister(mEventReceiver);
App.bus().unregister(mEventReceiver);
}
 
private void load() {
Loading
Loading
Loading
Loading
@@ -17,10 +17,10 @@ import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
 
import com.commit451.gitlab.LabCoatApp;
import com.commit451.gitlab.App;
import com.commit451.gitlab.R;
import com.commit451.gitlab.adapter.IssueDetailsAdapter;
import com.commit451.gitlab.api.EasyCallback;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.event.IssueChangedEvent;
import com.commit451.gitlab.event.IssueReloadEvent;
Loading
Loading
@@ -28,7 +28,7 @@ import com.commit451.gitlab.model.api.FileUploadResponse;
import com.commit451.gitlab.model.api.Issue;
import com.commit451.gitlab.model.api.Note;
import com.commit451.gitlab.model.api.Project;
import com.commit451.gitlab.navigation.NavigationManager;
import com.commit451.gitlab.navigation.Navigator;
import com.commit451.gitlab.util.IntentUtil;
import com.commit451.gitlab.util.PaginationUtil;
import com.commit451.gitlab.view.SendMessageView;
Loading
Loading
@@ -94,7 +94,7 @@ public class IssueActivity extends BaseActivity {
 
@OnClick(R.id.fab_edit_issue)
public void onEditIssueClick(View fab) {
NavigationManager.navigateToEditIssue(IssueActivity.this, fab, mProject, mIssue);
Navigator.navigateToEditIssue(IssueActivity.this, fab, mProject, mIssue);
}
 
private MenuItem mOpenCloseMenuItem;
Loading
Loading
@@ -140,13 +140,13 @@ public class IssueActivity extends BaseActivity {
 
private Callback<Project> mProjectCallback = new EasyCallback<Project>() {
@Override
public void onResponse(@NonNull Project response) {
public void success(@NonNull Project response) {
mProject = response;
GitLabClient.instance().getIssuesByIid(mProject.getId(), mIssueIid).enqueue(mIssueCallback);
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mSwipeRefreshLayout.setRefreshing(false);
Snackbar.make(mRoot, getString(R.string.failed_to_load), Snackbar.LENGTH_SHORT)
Loading
Loading
@@ -157,7 +157,7 @@ public class IssueActivity extends BaseActivity {
private Callback<List<Issue>> mIssueCallback = new EasyCallback<List<Issue>>() {
 
@Override
public void onResponse(@NonNull List<Issue> response) {
public void success(@NonNull List<Issue> response) {
if (response.isEmpty()) {
mSwipeRefreshLayout.setRefreshing(false);
Snackbar.make(mRoot, getString(R.string.failed_to_load), Snackbar.LENGTH_SHORT)
Loading
Loading
@@ -173,7 +173,7 @@ public class IssueActivity extends BaseActivity {
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mSwipeRefreshLayout.setRefreshing(false);
Snackbar.make(mRoot, getString(R.string.failed_to_load), Snackbar.LENGTH_SHORT)
Loading
Loading
@@ -184,7 +184,7 @@ public class IssueActivity extends BaseActivity {
private Callback<List<Note>> mNotesCallback = new EasyCallback<List<Note>>() {
 
@Override
public void onResponse(@NonNull List<Note> response) {
public void success(@NonNull List<Note> response) {
mLoading = false;
mSwipeRefreshLayout.setRefreshing(false);
mNextPageUrl = PaginationUtil.parse(getResponse()).getNext();
Loading
Loading
@@ -192,7 +192,7 @@ public class IssueActivity extends BaseActivity {
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
mLoading = false;
Timber.e(t, null);
mSwipeRefreshLayout.setRefreshing(false);
Loading
Loading
@@ -204,7 +204,7 @@ public class IssueActivity extends BaseActivity {
private Callback<List<Note>> mMoreNotesCallback = new EasyCallback<List<Note>>() {
 
@Override
public void onResponse(@NonNull List<Note> response) {
public void success(@NonNull List<Note> response) {
mLoading = false;
mIssueDetailsAdapter.setLoading(false);
mNextPageUrl = PaginationUtil.parse(getResponse()).getNext();
Loading
Loading
@@ -212,7 +212,7 @@ public class IssueActivity extends BaseActivity {
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
mLoading = false;
Timber.e(t, null);
mIssueDetailsAdapter.setLoading(false);
Loading
Loading
@@ -221,17 +221,17 @@ public class IssueActivity extends BaseActivity {
 
private final Callback<Issue> mOpenCloseCallback = new EasyCallback<Issue>() {
@Override
public void onResponse(@NonNull Issue response) {
public void success(@NonNull Issue response) {
mProgress.setVisibility(View.GONE);
mIssue = response;
LabCoatApp.bus().post(new IssueChangedEvent(mIssue));
LabCoatApp.bus().post(new IssueReloadEvent());
App.bus().post(new IssueChangedEvent(mIssue));
App.bus().post(new IssueReloadEvent());
setOpenCloseMenuStatus();
loadNotes();
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mProgress.setVisibility(View.GONE);
Snackbar.make(mRoot, getString(R.string.error_changing_issue), Snackbar.LENGTH_SHORT)
Loading
Loading
@@ -242,14 +242,14 @@ public class IssueActivity extends BaseActivity {
private Callback<Note> mPostNoteCallback = new EasyCallback<Note>() {
 
@Override
public void onResponse(@NonNull Note response) {
public void success(@NonNull Note response) {
mProgress.setVisibility(View.GONE);
mIssueDetailsAdapter.addNote(response);
mNotesRecyclerView.smoothScrollToPosition(IssueDetailsAdapter.getHeaderCount());
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mProgress.setVisibility(View.GONE);
Snackbar.make(mRoot, getString(R.string.connection_error), Snackbar.LENGTH_SHORT)
Loading
Loading
@@ -259,13 +259,13 @@ public class IssueActivity extends BaseActivity {
 
private Callback<FileUploadResponse> mUploadImageCallback = new EasyCallback<FileUploadResponse>() {
@Override
public void onResponse(@NonNull FileUploadResponse response) {
public void success(@NonNull FileUploadResponse response) {
mProgress.setVisibility(View.GONE);
mSendMessageView.appendText(response.getMarkdown());
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
mProgress.setVisibility(View.GONE);
Snackbar.make(mRoot, getString(R.string.connection_error), Snackbar.LENGTH_SHORT)
Loading
Loading
@@ -280,7 +280,7 @@ public class IssueActivity extends BaseActivity {
ButterKnife.bind(this);
mTeleprinter = new Teleprinter(this);
mEventReceiver = new EventReceiver();
LabCoatApp.bus().register(mEventReceiver);
App.bus().register(mEventReceiver);
 
mToolbar.setNavigationIcon(R.drawable.ic_back_24dp);
mToolbar.setNavigationOnClickListener(new View.OnClickListener() {
Loading
Loading
@@ -305,7 +305,7 @@ public class IssueActivity extends BaseActivity {
 
@Override
public void onGalleryClicked() {
NavigationManager.navigateToChoosePhoto(IssueActivity.this, REQUEST_IMAGE);
Navigator.navigateToChoosePhoto(IssueActivity.this, REQUEST_IMAGE);
}
 
@Override
Loading
Loading
@@ -370,7 +370,7 @@ public class IssueActivity extends BaseActivity {
@Override
protected void onDestroy() {
super.onDestroy();
LabCoatApp.bus().unregister(mEventReceiver);
App.bus().unregister(mEventReceiver);
}
 
private void bindProject() {
Loading
Loading
@@ -421,7 +421,7 @@ public class IssueActivity extends BaseActivity {
 
private void closeOrOpenIssue() {
mProgress.setVisibility(View.VISIBLE);
if (mIssue.getState() == Issue.State.CLOSED) {
if (mIssue.getState().equals(Issue.STATE_CLOSED)) {
GitLabClient.instance().updateIssueStatus(mProject.getId(), mIssue.getId(), Issue.STATE_REOPEN)
.enqueue(mOpenCloseCallback);
} else {
Loading
Loading
@@ -431,7 +431,7 @@ public class IssueActivity extends BaseActivity {
}
 
private void setOpenCloseMenuStatus() {
mOpenCloseMenuItem.setTitle(mIssue.getState() == Issue.State.CLOSED ? R.string.reopen : R.string.close);
mOpenCloseMenuItem.setTitle(mIssue.getState().equals(Issue.STATE_CLOSED) ? R.string.reopen : R.string.close);
}
 
private class EventReceiver {
Loading
Loading
Loading
Loading
@@ -7,7 +7,7 @@ import com.commit451.gitlab.BuildConfig;
import com.commit451.gitlab.data.Prefs;
import com.commit451.gitlab.model.Account;
import com.commit451.gitlab.ssl.CustomKeyManager;
import com.commit451.gitlab.navigation.NavigationManager;
import com.commit451.gitlab.navigation.Navigator;
 
import java.util.List;
 
Loading
Loading
@@ -31,7 +31,7 @@ public class LaunchActivity extends Activity {
}
List<Account> accounts = Account.getAccounts(this);
if(accounts.isEmpty()) {
NavigationManager.navigateToLogin(this);
Navigator.navigateToLogin(this);
} else {
loadPrivateKey(accounts, 0);
return;
Loading
Loading
@@ -46,7 +46,7 @@ public class LaunchActivity extends Activity {
runOnUiThread(new Runnable() {
@Override
public void run() {
NavigationManager.navigateToStartingActivity(LaunchActivity.this);
Navigator.navigateToStartingActivity(LaunchActivity.this);
finish();
}
});
Loading
Loading
Loading
Loading
@@ -9,12 +9,16 @@ import android.view.View;
import android.widget.Toast;
 
import com.commit451.gitlab.R;
import com.commit451.gitlab.api.EasyCallback;
import com.commit451.easycallback.EasyCallback;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.model.api.Build;
import com.commit451.gitlab.model.api.MergeRequest;
import com.commit451.gitlab.model.api.Milestone;
import com.commit451.gitlab.model.api.Project;
import com.commit451.gitlab.model.api.RepositoryCommit;
import com.commit451.gitlab.navigation.NavigationManager;
import com.commit451.gitlab.navigation.Navigator;
import java.util.List;
 
import butterknife.BindView;
import butterknife.ButterKnife;
Loading
Loading
@@ -31,9 +35,13 @@ public class LoadSomeInfoActivity extends AppCompatActivity {
private static final String EXTRA_PROJECT_NAME = "project_name";
private static final String EXTRA_COMMIT_SHA = "extra_commit_sha";
private static final String EXTRA_MERGE_REQUEST = "merge_request";
private static final String EXTRA_BUILD_ID = "build_id";
private static final String EXTRA_MILESTONE_ID = "milestone_id";
 
private static final int LOAD_TYPE_DIFF = 0;
private static final int LOAD_TYPE_MERGE_REQUEST = 1;
private static final int LOAD_TYPE_BUILD = 2;
private static final int LOAD_TYPE_MILESTONE = 3;
 
public static Intent newIntent(Context context, String namespace, String projectName, String commitSha) {
Intent intent = new Intent(context, LoadSomeInfoActivity.class);
Loading
Loading
@@ -53,6 +61,24 @@ public class LoadSomeInfoActivity extends AppCompatActivity {
return intent;
}
 
public static Intent newBuildIntent(Context context, String namespace, String projectName, long buildId) {
Intent intent = new Intent(context, LoadSomeInfoActivity.class);
intent.putExtra(EXTRA_PROJECT_NAMESPACE, namespace);
intent.putExtra(EXTRA_PROJECT_NAME, projectName);
intent.putExtra(EXTRA_BUILD_ID, buildId);
intent.putExtra(EXTRA_LOAD_TYPE, LOAD_TYPE_BUILD);
return intent;
}
public static Intent newMilestoneIntent(Context context, String namespace, String projectName, String milestoneIid) {
Intent intent = new Intent(context, LoadSomeInfoActivity.class);
intent.putExtra(EXTRA_PROJECT_NAMESPACE, namespace);
intent.putExtra(EXTRA_PROJECT_NAME, projectName);
intent.putExtra(EXTRA_MILESTONE_ID, milestoneIid);
intent.putExtra(EXTRA_LOAD_TYPE, LOAD_TYPE_MILESTONE);
return intent;
}
@BindView(R.id.progress)
View mProgress;
 
Loading
Loading
@@ -67,7 +93,7 @@ public class LoadSomeInfoActivity extends AppCompatActivity {
 
private final EasyCallback<Project> mProjectCallback = new EasyCallback<Project>() {
@Override
public void onResponse(@NonNull Project response) {
public void success(@NonNull Project response) {
mProject = response;
switch (mLoadType) {
case LOAD_TYPE_DIFF:
Loading
Loading
@@ -76,13 +102,22 @@ public class LoadSomeInfoActivity extends AppCompatActivity {
return;
case LOAD_TYPE_MERGE_REQUEST:
String mergeRequestId = getIntent().getStringExtra(EXTRA_MERGE_REQUEST);
GitLabClient.instance().getMergeRequest(response.getId(), Long.valueOf(mergeRequestId)).enqueue(mMergeRequestCallback);
GitLabClient.instance().getMergeRequestsByIid(response.getId(), mergeRequestId).enqueue(mMergeRequestCallback);
return;
case LOAD_TYPE_BUILD:
long buildId = getIntent().getLongExtra(EXTRA_BUILD_ID, -1);
GitLabClient.instance().getBuild(response.getId(), buildId).enqueue(mBuildCallback);
return;
case LOAD_TYPE_MILESTONE:
String milestoneId = getIntent().getStringExtra(EXTRA_MILESTONE_ID);
GitLabClient.instance().getMilestonesByIid(response.getId(), milestoneId).enqueue(mMilestoneCallback);
return;
}
 
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
onError();
}
Loading
Loading
@@ -90,27 +125,63 @@ public class LoadSomeInfoActivity extends AppCompatActivity {
 
private final EasyCallback<RepositoryCommit> mCommitCallback = new EasyCallback<RepositoryCommit>() {
@Override
public void onResponse(@NonNull RepositoryCommit response) {
NavigationManager.navigateToDiffActivity(LoadSomeInfoActivity.this, mProject, response);
public void success(@NonNull RepositoryCommit response) {
Navigator.navigateToDiffActivity(LoadSomeInfoActivity.this, mProject, response);
finish();
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
onError();
}
};
private final EasyCallback<List<MergeRequest>> mMergeRequestCallback = new EasyCallback<List<MergeRequest>>() {
@Override
public void success(@NonNull List<MergeRequest> response) {
if (!response.isEmpty()) {
Navigator.navigateToMergeRequest(LoadSomeInfoActivity.this, mProject, response.get(0));
finish();
} else {
onError();
}
}
@Override
public void failure(Throwable t) {
Timber.e(t, null);
onError();
}
};
 
private final EasyCallback<MergeRequest> mMergeRequestCallback = new EasyCallback<MergeRequest>() {
private final EasyCallback<Build> mBuildCallback = new EasyCallback<Build>() {
@Override
public void onResponse(@NonNull MergeRequest response) {
NavigationManager.navigateToMergeRequest(LoadSomeInfoActivity.this, mProject, response);
public void success(@NonNull Build response) {
Navigator.navigateToBuild(LoadSomeInfoActivity.this, mProject, response);
finish();
}
 
@Override
public void onAllFailure(Throwable t) {
public void failure(Throwable t) {
Timber.e(t, null);
onError();
}
};
private final EasyCallback<List<Milestone>> mMilestoneCallback = new EasyCallback<List<Milestone>>() {
@Override
public void success(@NonNull List<Milestone> response) {
if (!response.isEmpty()) {
Navigator.navigateToMilestone(LoadSomeInfoActivity.this, mProject, response.get(0));
finish();
} else {
onError();
}
}
@Override
public void failure(Throwable t) {
Timber.e(t, null);
onError();
}
Loading
Loading
@@ -128,6 +199,8 @@ public class LoadSomeInfoActivity extends AppCompatActivity {
switch (mLoadType) {
case LOAD_TYPE_DIFF:
case LOAD_TYPE_MERGE_REQUEST:
case LOAD_TYPE_BUILD:
case LOAD_TYPE_MILESTONE:
String namespace = getIntent().getStringExtra(EXTRA_PROJECT_NAMESPACE);
String project = getIntent().getStringExtra(EXTRA_PROJECT_NAME);
GitLabClient.instance().getProject(namespace, project).enqueue(mProjectCallback);
Loading
Loading
Loading
Loading
@@ -26,7 +26,7 @@ import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.TextView;
 
import com.commit451.gitlab.LabCoatApp;
import com.commit451.gitlab.App;
import com.commit451.gitlab.R;
import com.commit451.gitlab.api.GitLabClient;
import com.commit451.gitlab.data.Prefs;
Loading
Loading
@@ -40,7 +40,7 @@ import com.commit451.gitlab.ssl.CustomHostnameVerifier;
import com.commit451.gitlab.ssl.CustomKeyManager;
import com.commit451.gitlab.ssl.X509CertificateException;
import com.commit451.gitlab.ssl.X509Util;
import com.commit451.gitlab.navigation.NavigationManager;
import com.commit451.gitlab.navigation.Navigator;
import com.commit451.teleprinter.Teleprinter;
 
import java.net.ConnectException;
Loading
Loading
@@ -291,10 +291,10 @@ public class LoginActivity extends BaseActivity {
mAccount.setLastUsed(new Date());
Prefs.addAccount(LoginActivity.this, mAccount);
GitLabClient.setAccount(mAccount);
LabCoatApp.bus().post(new LoginEvent(mAccount));
App.bus().post(new LoginEvent(mAccount));
//This is mostly for if projects already exists, then we will reload the data
LabCoatApp.bus().post(new ReloadDataEvent());
NavigationManager.navigateToStartingActivity(LoginActivity.this);
App.bus().post(new ReloadDataEvent());
Navigator.navigateToStartingActivity(LoginActivity.this);
finish();
}
 
Loading
Loading
@@ -361,9 +361,9 @@ public class LoginActivity extends BaseActivity {
 
private void connectByAuth() {
if (mUserInput.getText().toString().contains("@")) {
GitLabClient.instance(mAccount).loginWithEmail(mUserInput.getText().toString(), mPasswordInput.getText().toString()).enqueue(mLoginCallback);
GitLabClient.create(mAccount).loginWithEmail(mUserInput.getText().toString(), mPasswordInput.getText().toString()).enqueue(mLoginCallback);
} else {
GitLabClient.instance(mAccount).loginWithUsername(mUserInput.getText().toString(), mPasswordInput.getText().toString()).enqueue(mLoginCallback);
GitLabClient.create(mAccount).loginWithUsername(mUserInput.getText().toString(), mPasswordInput.getText().toString()).enqueue(mLoginCallback);
}
}
 
Loading
Loading
@@ -373,7 +373,7 @@ public class LoginActivity extends BaseActivity {
}
 
private void loadUser() {
GitLabClient.instance(mAccount).getThisUser().enqueue(mTestUserCallback);
GitLabClient.create(mAccount).getThisUser().enqueue(mTestUserCallback);
}
 
private void handleConnectionError(Throwable t) {
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment