├── settings.gradle
├── app
├── libs
│ ├── argument-1.0.3.jar
│ ├── crittercism_v4_4_0_sdkonly.jar
│ └── libGoogleAnalyticsServices.jar
├── src
│ ├── main
│ │ ├── ic_launcher-web.png
│ │ ├── assets
│ │ │ └── fonts
│ │ │ │ ├── Roboto-Bold.ttf
│ │ │ │ ├── Roboto-Light.ttf
│ │ │ │ ├── Roboto-Thin.ttf
│ │ │ │ ├── Roboto-Italic.ttf
│ │ │ │ ├── Roboto-Regular.ttf
│ │ │ │ └── Roboto-LightItalic.ttf
│ │ ├── res
│ │ │ ├── drawable-hdpi
│ │ │ │ ├── ic_av_pause.png
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── placeholder.9.png
│ │ │ │ ├── ic_av_play_active.png
│ │ │ │ ├── ic_av_play_normal.png
│ │ │ │ └── ic_user_placeholder.png
│ │ │ ├── drawable-mdpi
│ │ │ │ ├── ic_av_pause.png
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── placeholder.9.png
│ │ │ │ ├── ic_av_play_active.png
│ │ │ │ ├── ic_av_play_normal.png
│ │ │ │ └── ic_user_placeholder.png
│ │ │ ├── drawable-xhdpi
│ │ │ │ ├── ic_av_pause.png
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── placeholder.9.png
│ │ │ │ ├── ic_av_play_active.png
│ │ │ │ ├── ic_av_play_normal.png
│ │ │ │ └── ic_user_placeholder.png
│ │ │ ├── drawable-xxhdpi
│ │ │ │ ├── ic_av_pause.png
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── ic_av_play_active.png
│ │ │ │ └── ic_av_play_normal.png
│ │ │ ├── values
│ │ │ │ ├── tokens.xml
│ │ │ │ ├── integers.xml
│ │ │ │ ├── dimens.xml
│ │ │ │ ├── analytics.xml
│ │ │ │ ├── strings.xml
│ │ │ │ ├── colors.xml
│ │ │ │ └── styles.xml
│ │ │ ├── values-land
│ │ │ │ └── integers.xml
│ │ │ ├── values-large
│ │ │ │ ├── integers.xml
│ │ │ │ ├── dimens.xml
│ │ │ │ └── styles.xml
│ │ │ ├── values-xlarge
│ │ │ │ └── integers.xml
│ │ │ ├── values-xlarge-land
│ │ │ │ └── integers.xml
│ │ │ ├── drawable
│ │ │ │ ├── btn_play_inactive_normal.xml
│ │ │ │ ├── btn_play_active.xml
│ │ │ │ ├── btn_play_inactive.xml
│ │ │ │ ├── btn_play_active_normal.xml
│ │ │ │ ├── btn_play_active_pressed.xml
│ │ │ │ ├── btn_play_inactive_pressed.xml
│ │ │ │ └── seekbar_audio.xml
│ │ │ └── layout
│ │ │ │ ├── login.xml
│ │ │ │ ├── newsfeed.xml
│ │ │ │ ├── fragment_main.xml
│ │ │ │ ├── audio.xml
│ │ │ │ └── post.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── stiggpwnz
│ │ │ │ └── vibes
│ │ │ │ ├── fragments
│ │ │ │ ├── NavigationFragment.java
│ │ │ │ ├── BaseFragment.java
│ │ │ │ ├── MainFragment.java
│ │ │ │ ├── LoginFragment.java
│ │ │ │ └── FeedFragment.java
│ │ │ │ ├── vk
│ │ │ │ ├── models
│ │ │ │ │ ├── Unit.java
│ │ │ │ │ ├── Result.java
│ │ │ │ │ ├── Group.java
│ │ │ │ │ ├── Error.java
│ │ │ │ │ ├── Profile.java
│ │ │ │ │ ├── Likes.java
│ │ │ │ │ ├── Attachment.java
│ │ │ │ │ ├── Feed.java
│ │ │ │ │ ├── Audio.java
│ │ │ │ │ ├── Photo.java
│ │ │ │ │ └── Post.java
│ │ │ │ ├── VKApi.java
│ │ │ │ ├── VkOnSubscribe.java
│ │ │ │ ├── VKontakte.java
│ │ │ │ └── VKAuth.java
│ │ │ │ ├── Injector.java
│ │ │ │ ├── qualifiers
│ │ │ │ └── CacheDir.java
│ │ │ │ ├── util
│ │ │ │ ├── CrashReportingTree.java
│ │ │ │ ├── Persistence.java
│ │ │ │ ├── Text.java
│ │ │ │ ├── DiskUtils.java
│ │ │ │ ├── JacksonSerializer.java
│ │ │ │ ├── VKLinkedText.java
│ │ │ │ └── Images.java
│ │ │ │ ├── player
│ │ │ │ ├── State.java
│ │ │ │ ├── Event.java
│ │ │ │ ├── UrlSource.java
│ │ │ │ └── PlayerQueue.java
│ │ │ │ ├── text
│ │ │ │ ├── HashTagSpan.java
│ │ │ │ ├── VKLinkSpan.java
│ │ │ │ └── ReplaceTextSpan.java
│ │ │ │ ├── db
│ │ │ │ ├── models
│ │ │ │ │ └── AudioUrl.java
│ │ │ │ └── DatabaseHelper.java
│ │ │ │ ├── adapters
│ │ │ │ ├── InflaterAdapter.java
│ │ │ │ └── FeedAdapter.java
│ │ │ │ ├── widget
│ │ │ │ ├── CustomDrawerLayout.java
│ │ │ │ ├── AudioView.java
│ │ │ │ ├── PhotoView.java
│ │ │ │ └── PostView.java
│ │ │ │ ├── Dagger.java
│ │ │ │ ├── App.java
│ │ │ │ ├── AppDaggerModule.java
│ │ │ │ ├── MainActivity.java
│ │ │ │ └── ActivityDaggerModule.java
│ │ └── AndroidManifest.xml
│ └── test
│ │ └── java
│ │ └── com
│ │ └── stiggpwnz
│ │ └── vibes
│ │ ├── dagger
│ │ └── ModulesTestModule.java
│ │ ├── TestApp.java
│ │ ├── AppTest.java
│ │ ├── widget
│ │ └── PostViewTest.java
│ │ └── MainActivityTest.java
├── proguard-rules.txt
└── build.gradle
├── .gitignore
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── ActionBarPullToRefresh
├── gradle.properties
├── AndroidManifest.xml
├── src
│ └── uk
│ │ └── co
│ │ └── senab
│ │ └── actionbarpulltorefresh
│ │ └── library
│ │ ├── sdk
│ │ ├── CompatV16.java
│ │ ├── CompatBase.java
│ │ ├── Compat.java
│ │ └── CompatV11.java
│ │ ├── EnvironmentDelegate.java
│ │ ├── viewdelegates
│ │ ├── WebViewDelegate.java
│ │ ├── ScrollYDelegate.java
│ │ ├── ViewDelegate.java
│ │ └── AbsListViewDelegate.java
│ │ ├── listeners
│ │ ├── OnRefreshListener.java
│ │ └── HeaderViewListener.java
│ │ ├── HeaderTransformer.java
│ │ ├── InstanceCreationUtils.java
│ │ ├── Options.java
│ │ ├── ActionBarPullToRefresh.java
│ │ └── PullToRefreshLayout.java
├── build.gradle
├── project.properties
└── res
│ ├── values
│ ├── colors.xml
│ ├── dimens.xml
│ ├── ids.xml
│ ├── styles.xml
│ ├── pull_refresh_strings.xml
│ └── attrs.xml
│ ├── values-ru
│ └── pull_refresh_strings.xml
│ ├── values-zh
│ └── pull_refresh_strings.xml
│ ├── values-ar
│ └── pull_refresh_strings.xml
│ ├── values-fi
│ └── pull_refresh_strings.xml
│ ├── values-iw
│ └── pull_refresh_strings.xml
│ ├── values-ja
│ └── pull_refresh_strings.xml
│ ├── values-ko
│ └── pull_refresh_strings.xml
│ ├── values-he
│ └── pull_refresh_strings.xml
│ ├── values-lt
│ └── pull_refresh_strings.xml
│ ├── values-cs
│ └── pull_refresh_strings.xml
│ ├── values-it
│ └── pull_refresh_strings.xml
│ ├── values-nl
│ └── pull_refresh_strings.xml
│ ├── values-pl
│ └── pull_refresh_strings.xml
│ ├── values-pt
│ └── pull_refresh_strings.xml
│ ├── values-de
│ └── pull_refresh_strings.xml
│ ├── values-fr
│ └── pull_refresh_strings.xml
│ ├── values-sv
│ └── pull_refresh_strings.xml
│ ├── values-pt-rBR
│ └── pull_refresh_strings.xml
│ ├── values-sk
│ └── pull_refresh_strings.xml
│ ├── values-ro
│ └── pull_refresh_strings.xml
│ ├── values-es
│ └── pull_refresh_strings.xml
│ └── layout
│ └── default_header.xml
├── README.md
├── .travis.yml
├── gradlew.bat
└── gradlew
/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | include ':ActionBarPullToRefresh'
--------------------------------------------------------------------------------
/app/libs/argument-1.0.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/libs/argument-1.0.3.jar
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .gradle
2 | /local.properties
3 | /.idea/workspace.xml
4 | .DS_Store
5 | .idea/
6 | *.iml
7 | build/
--------------------------------------------------------------------------------
/app/src/main/ic_launcher-web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/ic_launcher-web.png
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/app/libs/crittercism_v4_4_0_sdkonly.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/libs/crittercism_v4_4_0_sdkonly.jar
--------------------------------------------------------------------------------
/app/libs/libGoogleAnalyticsServices.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/libs/libGoogleAnalyticsServices.jar
--------------------------------------------------------------------------------
/app/src/main/assets/fonts/Roboto-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/assets/fonts/Roboto-Bold.ttf
--------------------------------------------------------------------------------
/app/src/main/assets/fonts/Roboto-Light.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/assets/fonts/Roboto-Light.ttf
--------------------------------------------------------------------------------
/app/src/main/assets/fonts/Roboto-Thin.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/assets/fonts/Roboto-Thin.ttf
--------------------------------------------------------------------------------
/ActionBarPullToRefresh/gradle.properties:
--------------------------------------------------------------------------------
1 | POM_NAME=ActionBar-PullToRefresh Library
2 | POM_ARTIFACT_ID=library
3 | POM_PACKAGING=aar
4 |
--------------------------------------------------------------------------------
/app/src/main/assets/fonts/Roboto-Italic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/assets/fonts/Roboto-Italic.ttf
--------------------------------------------------------------------------------
/app/src/main/assets/fonts/Roboto-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/assets/fonts/Roboto-Regular.ttf
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_av_pause.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-hdpi/ic_av_pause.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_av_pause.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-mdpi/ic_av_pause.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_av_pause.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-xhdpi/ic_av_pause.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/assets/fonts/Roboto-LightItalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/assets/fonts/Roboto-LightItalic.ttf
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/placeholder.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-hdpi/placeholder.9.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/placeholder.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-mdpi/placeholder.9.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/placeholder.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-xhdpi/placeholder.9.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_av_pause.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-xxhdpi/ic_av_pause.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_av_play_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-hdpi/ic_av_play_active.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_av_play_normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-hdpi/ic_av_play_normal.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_av_play_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-mdpi/ic_av_play_active.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_av_play_normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-mdpi/ic_av_play_normal.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_user_placeholder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-hdpi/ic_user_placeholder.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_user_placeholder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-mdpi/ic_user_placeholder.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_av_play_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-xhdpi/ic_av_play_active.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_av_play_normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-xhdpi/ic_av_play_normal.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_av_play_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-xxhdpi/ic_av_play_active.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_av_play_normal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-xxhdpi/ic_av_play_normal.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_user_placeholder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/meoyawn/Vibes/HEAD/app/src/main/res/drawable-xhdpi/ic_user_placeholder.png
--------------------------------------------------------------------------------
/app/src/main/res/values/tokens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | XXXX
4 |
--------------------------------------------------------------------------------
/app/src/main/res/values/integers.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 1
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/values-land/integers.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 2
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/values-large/integers.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 1
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/values-xlarge/integers.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 2
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/values-xlarge-land/integers.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 3
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/java/com/stiggpwnz/vibes/fragments/NavigationFragment.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes.fragments;
2 |
3 | public class NavigationFragment extends BaseFragment {
4 |
5 | }
6 |
--------------------------------------------------------------------------------
/app/src/main/res/values-large/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 16dp
5 | 32dp
6 |
7 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/btn_play_inactive_normal.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/ActionBarPullToRefresh/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/java/com/stiggpwnz/vibes/vk/models/Unit.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes.vk.models;
2 |
3 | public interface Unit {
4 | public int getId();
5 |
6 | public String getName();
7 |
8 | public String getProfilePic();
9 | }
10 |
--------------------------------------------------------------------------------
/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 8dp
5 | 16dp
6 | 330dp
7 |
8 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Apr 10 15:27:10 PDT 2013
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=http\://services.gradle.org/distributions/gradle-1.11-all.zip
7 |
--------------------------------------------------------------------------------
/app/src/main/res/values/analytics.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | UA-XXXX-Y
5 |
6 |
7 | true
8 |
--------------------------------------------------------------------------------
/app/src/main/java/com/stiggpwnz/vibes/Injector.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes;
2 |
3 | import android.content.Context;
4 | import android.view.View;
5 |
6 | import dagger.ObjectGraph;
7 |
8 | /**
9 | * Created by adel on 16/03/14
10 | */
11 | public interface Injector {
12 | public ObjectGraph getObjectGraph();
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/btn_play_active.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/btn_play_inactive.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/ActionBarPullToRefresh/src/uk/co/senab/actionbarpulltorefresh/library/sdk/CompatV16.java:
--------------------------------------------------------------------------------
1 | package uk.co.senab.actionbarpulltorefresh.library.sdk;
2 |
3 | import android.view.View;
4 |
5 | class CompatV16 {
6 |
7 | static void postOnAnimation(View view, Runnable runnable) {
8 | view.postOnAnimation(runnable);
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/app/src/main/java/com/stiggpwnz/vibes/vk/models/Result.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes.vk.models;
2 |
3 | import org.jetbrains.annotations.Nullable;
4 |
5 | import lombok.Data;
6 |
7 | public @Data class Result {
8 | @Nullable T response;
9 | @Nullable Error error;
10 |
11 | public boolean isError() { return error != null; }
12 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/btn_play_active_normal.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/btn_play_active_pressed.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/values-large/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/btn_play_inactive_pressed.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/stiggpwnz/vibes/qualifiers/CacheDir.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes.qualifiers;
2 |
3 | import java.lang.annotation.Retention;
4 | import java.lang.annotation.RetentionPolicy;
5 |
6 | import javax.inject.Qualifier;
7 |
8 | /**
9 | * Created by adel on 14/03/14
10 | */
11 | @Qualifier
12 | @Retention(RetentionPolicy.RUNTIME)
13 | public @interface CacheDir {
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | Vibes
3 | Email
4 | Password
5 | User profile image
6 | Image in post
7 | Play
8 | Login
9 |
--------------------------------------------------------------------------------
/ActionBarPullToRefresh/src/uk/co/senab/actionbarpulltorefresh/library/sdk/CompatBase.java:
--------------------------------------------------------------------------------
1 | package uk.co.senab.actionbarpulltorefresh.library.sdk;
2 |
3 | import android.view.View;
4 |
5 | class CompatBase {
6 |
7 | static void setAlpha(View view, float alpha) {
8 | // NO-OP
9 | }
10 |
11 | static void postOnAnimation(View view, Runnable runnable) {
12 | view.postDelayed(runnable, 10l);
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # VK Vibes for Android
2 |
3 | ## VKontakte (vk.com) music player for Android with last.fm integration
4 |
5 |
6 |
7 |
8 |
10 |
11 |
12 | ### Happy Birthday Commit
--------------------------------------------------------------------------------
/app/src/main/java/com/stiggpwnz/vibes/util/CrashReportingTree.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes.util;
2 |
3 | import com.crittercism.app.Crittercism;
4 |
5 | import timber.log.Timber;
6 |
7 | /**
8 | * Created by adelnizamutdinov on 03/03/2014
9 | */
10 | public class CrashReportingTree extends Timber.HollowTree {
11 | @Override public void e(Throwable t, String message, Object... args) {
12 | Crittercism.logHandledException(t);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/app/src/main/java/com/stiggpwnz/vibes/player/State.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes.player;
2 |
3 | /**
4 | * Created by adelnizamutdinov on 17/03/2014
5 | */
6 | public enum State {
7 | EMPTY,
8 | GETTING_URL_TO_PREPARE,
9 | GETTING_URL_TO_EMPTY,
10 | PREPARING_TO_PLAY,
11 | PREPARING_TO_PAUSE,
12 | PLAYING,
13 | PAUSED,
14 | SEEKING_TO_PLAY,
15 | SEEKING_TO_PAUSE,
16 | RESETTING_TO_PREPARE,
17 | RESETTING_TO_EMPTY
18 | }
19 |
--------------------------------------------------------------------------------
/app/src/test/java/com/stiggpwnz/vibes/dagger/ModulesTestModule.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes.dagger;
2 |
3 | import com.squareup.okhttp.OkHttpClient;
4 | import com.squareup.picasso.Picasso;
5 | import com.stiggpwnz.vibes.fragments.MainFragment;
6 |
7 | import dagger.Module;
8 |
9 | /**
10 | * Created by adelnizamutdinov on 03/03/2014
11 | */
12 | @Module(injects = {OkHttpClient.class, Picasso.class, MainFragment.class})
13 | public class ModulesTestModule {}
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/stiggpwnz/vibes/text/HashTagSpan.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes.text;
2 |
3 | import android.text.style.ClickableSpan;
4 | import android.view.View;
5 |
6 | import lombok.AllArgsConstructor;
7 |
8 | /**
9 | * Created by adel on 1/28/14
10 | */
11 | @AllArgsConstructor(suppressConstructorProperties = true)
12 | public class HashTagSpan extends ClickableSpan {
13 | String hashTag;
14 |
15 | @Override public void onClick(View widget) { }
16 | }
17 |
--------------------------------------------------------------------------------
/app/src/main/java/com/stiggpwnz/vibes/db/models/AudioUrl.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes.db.models;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import lombok.experimental.Accessors;
7 |
8 | /**
9 | * Created by adel on 15/03/14
10 | */
11 | @Data
12 | @NoArgsConstructor
13 | @Accessors(chain = true)
14 | @AllArgsConstructor(suppressConstructorProperties = true)
15 | public class AudioUrl {
16 | Long _id;
17 | String url;
18 | }
19 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/login.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
12 |
--------------------------------------------------------------------------------
/app/src/main/java/com/stiggpwnz/vibes/text/VKLinkSpan.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes.text;
2 |
3 | import android.text.style.ClickableSpan;
4 | import android.view.View;
5 |
6 | import lombok.AllArgsConstructor;
7 | import timber.log.Timber;
8 |
9 | /**
10 | * Created by adel on 1/28/14
11 | */
12 | @AllArgsConstructor(suppressConstructorProperties = true)
13 | public class VKLinkSpan extends ClickableSpan {
14 | String path;
15 |
16 | @Override
17 | public void onClick(View widget) {
18 | Timber.d("clicked on %s group", path);
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/app/src/main/java/com/stiggpwnz/vibes/adapters/InflaterAdapter.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes.adapters;
2 |
3 | import android.view.LayoutInflater;
4 | import android.widget.BaseAdapter;
5 |
6 | import org.jetbrains.annotations.NotNull;
7 |
8 | import lombok.RequiredArgsConstructor;
9 |
10 | @RequiredArgsConstructor(suppressConstructorProperties = true)
11 | public abstract class InflaterAdapter extends BaseAdapter {
12 | protected @NotNull final LayoutInflater inflater;
13 |
14 | @Override public long getItemId(int position) { return position; }
15 | }
16 |
--------------------------------------------------------------------------------
/app/src/test/java/com/stiggpwnz/vibes/TestApp.java:
--------------------------------------------------------------------------------
1 | package com.stiggpwnz.vibes;
2 |
3 | import com.stiggpwnz.vibes.dagger.ModulesTestModule;
4 |
5 | import org.jetbrains.annotations.NotNull;
6 |
7 | import java.util.Arrays;
8 | import java.util.List;
9 |
10 | /**
11 | * Created by adelnizamutdinov on 03/03/2014
12 | */
13 | public class TestApp extends App {
14 | @NotNull @Override protected List