├── .gitattributes
├── .gitignore
├── .idea
├── caches
│ ├── build_file_checksums.ser
│ └── gradle_models.ser
├── codeStyles
│ └── Project.xml
├── compiler.xml
├── copyright
│ └── profiles_settings.xml
├── dictionaries
│ └── Programmer.xml
├── gradle.xml
├── misc.xml
├── modules.xml
├── runConfigurations.xml
└── vcs.xml
├── README.md
├── app
├── .gitignore
├── build.gradle
├── google-services.json
├── proguard-rules.pro
└── src
│ ├── androidTest
│ └── java
│ │ └── lcukerd
│ │ └── com
│ │ ├── instagramclone
│ │ └── ExampleInstrumentedTest.java
│ │ └── instaswipe
│ │ └── ExampleInstrumentedTest.java
│ ├── main
│ ├── AndroidManifest.xml
│ ├── java
│ │ └── lcukerd
│ │ │ └── com
│ │ │ └── instaswipe
│ │ │ ├── Database
│ │ │ ├── DbInteract.java
│ │ │ └── eventDBcontract.java
│ │ │ ├── Home
│ │ │ ├── CameraFragment.java
│ │ │ ├── HomeActivity.java
│ │ │ ├── HomeFragment.java
│ │ │ └── MessagesFragment.java
│ │ │ ├── ProfileActivity.java
│ │ │ ├── SearchActivity.java
│ │ │ ├── Share
│ │ │ ├── GalleryFragment.java
│ │ │ ├── NextActivity.java
│ │ │ ├── PhotoFragment.java
│ │ │ └── ShareActivity.java
│ │ │ ├── SwipePic.java
│ │ │ ├── Utils
│ │ │ ├── BottomNavigationViewHelper.java
│ │ │ ├── FilePaths.java
│ │ │ ├── FileSearch.java
│ │ │ ├── Heart.java
│ │ │ ├── ImageManager.java
│ │ │ ├── Scrapper.java
│ │ │ ├── SquareImageView.java
│ │ │ └── loadImage.java
│ │ │ ├── adapter
│ │ │ ├── GridImageAdapter.java
│ │ │ └── UserListAdapter.java
│ │ │ └── models
│ │ │ ├── AccountDetails.java
│ │ │ └── User.java
│ └── res
│ │ ├── anim
│ │ ├── fade_in.xml
│ │ └── fade_out.xml
│ │ ├── drawable-hdpi
│ │ ├── black_border.xml
│ │ ├── et_border.xml
│ │ ├── grey_border.xml
│ │ ├── ic_action_name.png
│ │ ├── ic_alert.png
│ │ ├── ic_android.png
│ │ ├── ic_arrow.png
│ │ ├── ic_backarrow.png
│ │ ├── ic_black_x.png
│ │ ├── ic_camera.png
│ │ ├── ic_checkmark.png
│ │ ├── ic_circle.png
│ │ ├── ic_description.png
│ │ ├── ic_display_name.png
│ │ ├── ic_ellipses.png
│ │ ├── ic_email.png
│ │ ├── ic_heart_outline.png
│ │ ├── ic_house.png
│ │ ├── ic_instagram_black.png
│ │ ├── ic_phone.png
│ │ ├── ic_play_for_work_black_24dp.png
│ │ ├── ic_search.png
│ │ ├── ic_speech_bubble.png
│ │ ├── ic_username.png
│ │ ├── ic_videocam_white_24dp.png
│ │ └── ic_web.png
│ │ ├── drawable-mdpi
│ │ ├── ic_action_name.png
│ │ ├── ic_alert.png
│ │ ├── ic_android.png
│ │ ├── ic_arrow.png
│ │ ├── ic_backarrow.png
│ │ ├── ic_black_x.png
│ │ ├── ic_camera.png
│ │ ├── ic_checkmark.png
│ │ ├── ic_circle.png
│ │ ├── ic_description.png
│ │ ├── ic_display_name.png
│ │ ├── ic_ellipses.png
│ │ ├── ic_email.png
│ │ ├── ic_heart_outline.png
│ │ ├── ic_house.png
│ │ ├── ic_instagram_black.png
│ │ ├── ic_phone.png
│ │ ├── ic_play_for_work_black_24dp.png
│ │ ├── ic_search.png
│ │ ├── ic_speech_bubble.png
│ │ ├── ic_username.png
│ │ ├── ic_videocam_white_24dp.png
│ │ └── ic_web.png
│ │ ├── drawable-xhdpi
│ │ ├── ic_action_name.png
│ │ ├── ic_alert.png
│ │ ├── ic_android.png
│ │ ├── ic_arrow.png
│ │ ├── ic_backarrow.png
│ │ ├── ic_black_x.png
│ │ ├── ic_camera.png
│ │ ├── ic_checkmark.png
│ │ ├── ic_circle.png
│ │ ├── ic_description.png
│ │ ├── ic_display_name.png
│ │ ├── ic_ellipses.png
│ │ ├── ic_email.png
│ │ ├── ic_heart_outline.png
│ │ ├── ic_house.png
│ │ ├── ic_instagram_black.png
│ │ ├── ic_phone.png
│ │ ├── ic_play_for_work_black_24dp.png
│ │ ├── ic_search.png
│ │ ├── ic_speech_bubble.png
│ │ ├── ic_username.png
│ │ ├── ic_videocam_white_24dp.png
│ │ └── ic_web.png
│ │ ├── drawable-xxhdpi
│ │ ├── ic_action_name.png
│ │ ├── ic_alert.png
│ │ ├── ic_android.png
│ │ ├── ic_arrow.png
│ │ ├── ic_backarrow.png
│ │ ├── ic_black_x.png
│ │ ├── ic_camera.png
│ │ ├── ic_checkmark.png
│ │ ├── ic_circle.png
│ │ ├── ic_description.png
│ │ ├── ic_display_name.png
│ │ ├── ic_ellipses.png
│ │ ├── ic_email.png
│ │ ├── ic_heart_outline.png
│ │ ├── ic_heart_white.xml
│ │ ├── ic_house.png
│ │ ├── ic_instagram_black.png
│ │ ├── ic_phone.png
│ │ ├── ic_play_for_work_black_24dp.png
│ │ ├── ic_search.png
│ │ ├── ic_speech_bubble.png
│ │ ├── ic_username.png
│ │ ├── ic_videocam_white_24dp.png
│ │ ├── ic_web.png
│ │ └── vector_heart_white.xml
│ │ ├── drawable-xxxhdpi
│ │ ├── ic_play_for_work_black_24dp.png
│ │ └── ic_videocam_white_24dp.png
│ │ ├── drawable
│ │ ├── Thumbs.db
│ │ ├── grey_border_bottom.xml
│ │ ├── ic_heart_red.xml
│ │ ├── instagram_logo.png
│ │ ├── instaicon.png
│ │ ├── vector_heart_red.xml
│ │ ├── white_grey_border_bottom.xml
│ │ ├── white_grey_border_top.xml
│ │ └── white_rounded_button.xml
│ │ ├── layout
│ │ ├── actionbuttons.xml
│ │ ├── activity_accountsettings.xml
│ │ ├── activity_home.xml
│ │ ├── activity_login.xml
│ │ ├── activity_next.xml
│ │ ├── activity_register.xml
│ │ ├── activity_share.xml
│ │ ├── activity_swipepic.xml
│ │ ├── dialog_confirm_password.xml
│ │ ├── fragment_camera.xml
│ │ ├── fragment_editprofile.xml
│ │ ├── fragment_gallery.xml
│ │ ├── fragment_home.xml
│ │ ├── fragment_messages.xml
│ │ ├── fragment_photo.xml
│ │ ├── fragment_profile.xml
│ │ ├── fragment_signout.xml
│ │ ├── fragment_swipepic.xml
│ │ ├── fragment_view_comments.xml
│ │ ├── fragment_view_post.xml
│ │ ├── layout_bottom_navigation_view.xml
│ │ ├── layout_bottom_tabs.xml
│ │ ├── layout_center_accountsettings.xml
│ │ ├── layout_center_profile.xml
│ │ ├── layout_center_viewpager.xml
│ │ ├── layout_comment.xml
│ │ ├── layout_grid_imageview.xml
│ │ ├── layout_top_tabs.xml
│ │ ├── layout_view_post.xml
│ │ ├── popup.xml
│ │ ├── snippet_center_editprofile.xml
│ │ ├── snippet_comments_toolbar.xml
│ │ ├── snippet_post_toolbar.xml
│ │ ├── snippet_top_accountsettingtoolbar.xml
│ │ ├── snippet_top_editprofiletoolbar.xml
│ │ ├── snippet_top_gallerytoolbar.xml
│ │ ├── snippet_top_nexttoolbar.xml
│ │ ├── snippet_top_profile.xml
│ │ ├── snippet_top_profilebar.xml
│ │ └── usersview.xml
│ │ ├── menu
│ │ ├── bottom_navigation_menu.xml
│ │ ├── menu_main.xml
│ │ ├── profile_menu.xml
│ │ └── toolbar_search.xml
│ │ ├── mipmap-hdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-mdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── values-w820dp
│ │ └── dimens.xml
│ │ └── values
│ │ ├── attrs.xml
│ │ ├── colors.xml
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
│ └── test
│ └── java
│ └── lcukerd
│ └── com
│ ├── instagramclone
│ └── ExampleUnitTest.java
│ └── instaswipe
│ └── ExampleUnitTest.java
├── build.gradle
├── gradle.properties
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── updates.txt
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
4 | # Custom for Visual Studio
5 | *.cs diff=csharp
6 |
7 | # Standard to msysgit
8 | *.doc diff=astextplain
9 | *.DOC diff=astextplain
10 | *.docx diff=astextplain
11 | *.DOCX diff=astextplain
12 | *.dot diff=astextplain
13 | *.DOT diff=astextplain
14 | *.pdf diff=astextplain
15 | *.PDF diff=astextplain
16 | *.rtf diff=astextplain
17 | *.RTF diff=astextplain
18 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | .gradle
3 | /local.properties
4 | /.idea/workspace.xml
5 | /.idea/libraries
6 | .DS_Store
7 | /build
8 | /captures
9 | .externalNativeBuild
10 |
--------------------------------------------------------------------------------
/.idea/caches/build_file_checksums.ser:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/.idea/caches/build_file_checksums.ser
--------------------------------------------------------------------------------
/.idea/caches/gradle_models.ser:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/.idea/caches/gradle_models.ser
--------------------------------------------------------------------------------
/.idea/codeStyles/Project.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | xmlns:android
14 |
15 | ^$
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 | xmlns:.*
25 |
26 | ^$
27 |
28 |
29 | BY_NAME
30 |
31 |
32 |
33 |
34 |
35 |
36 | .*:id
37 |
38 | http://schemas.android.com/apk/res/android
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 | .*:name
48 |
49 | http://schemas.android.com/apk/res/android
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 | name
59 |
60 | ^$
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 | style
70 |
71 | ^$
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 | .*
81 |
82 | ^$
83 |
84 |
85 | BY_NAME
86 |
87 |
88 |
89 |
90 |
91 |
92 | .*
93 |
94 | http://schemas.android.com/apk/res/android
95 |
96 |
97 | ANDROID_ATTRIBUTE_ORDER
98 |
99 |
100 |
101 |
102 |
103 |
104 | .*
105 |
106 | .*
107 |
108 |
109 | BY_NAME
110 |
111 |
112 |
113 |
114 |
115 |
116 |
--------------------------------------------------------------------------------
/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/.idea/dictionaries/Programmer.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | nameof
5 |
6 |
7 |
--------------------------------------------------------------------------------
/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/.idea/runConfigurations.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
Instagram declared Scraping its data as illegal also they started changing there data format very frequently so I have decided to stop modifying this app any further. Anyone is free to fork(so that i can also use your app) this and modify it as they want. InstaSwipe
2 |
3 | InstaSwipe is an Instagram client for Android. It will show posts (images and videos) in fullscreen mode and will let you swipe to get to next post. You can also view others profile pic in high resolution in fullscreen. All that without logging in. It might not seem much but will be heaven for some.
4 |
5 | Originally, this project is a "clone of Instagram" made ,using Firebase(auth,data etc), owned by Mitch Tabian. I have changed the source code to make it retrieve real Instagram data and show in the pre-built UI of this project.Pieces of UI that I used here are made/rebuilt by me.
6 |
7 | I am not using Instagram API, because I might never get accepted to access data out of sandbox API, therefore I am retrieving data from source code of Instagram's web pages.
8 |
9 | Features:
10 |
11 | View videos/images in fullscreen with swipe(to get to next) and zoom(for image only) feature.
12 | Can view profile pic in full screen as well.
13 | Browse public accounts incognito (no need to signin).
14 | Images once loaded, will reopen with little to no internet requirement (If you move to "low speed zone").
15 | You can Download pic so that you view it offline
16 |
17 |
18 | How to use app:
19 | Click on search icon from bottom navigation view.
20 | Search for the account.
21 | When account is displayed, either tap on it to view account or long tap to save this account(so that you don't have to search it again).
22 | You can tap on profile pic in grid view page to view its original upload quality in full screen.
23 | Everything else is basic controls.
24 | You can now download pics and save it on your phone. (Download icon in bottom navigation view).
25 | Any other tab from bottom navigation bar are for future use, so don't mess around
26 |
27 | Known issues/features requirement (If someone wants to contribute.)
28 | Cannot view all images in sidecar (group of photos posted together).
29 | Get to photo showed in swipepic in grid adapter when pressed back button.
30 | Show loading at bottom when more pics are loading.
31 | Cannot show live video and story.
32 |
33 |
34 |
35 | Profile Pic in original upload quality in full screen.
36 |
37 | Ability to swipe to next pic and view image in their orinal aspect ratio.
38 | Ability to zoom and pan image in full screen.
39 | Ability to save pic on phone.
40 | Grid view to view offline and downloaded pics.
41 |
42 |
43 |
44 | Download from here .
45 |
--------------------------------------------------------------------------------
/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 |
3 | android {
4 | compileSdkVersion 25
5 | buildToolsVersion '26.0.2'
6 | defaultConfig {
7 | applicationId "lcukerd.com.instaswipe"
8 | minSdkVersion 18
9 | targetSdkVersion 25
10 | versionCode 4
11 | versionName "1.4"
12 | testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
13 | }
14 | buildTypes {
15 | release {
16 | minifyEnabled false
17 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18 | }
19 | }
20 | }
21 |
22 | dependencies {
23 | compile fileTree(include: ['*.jar'], dir: 'libs')
24 | androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
25 | exclude group: 'com.android.support', module: 'support-annotations'
26 | })
27 | compile 'com.android.support:appcompat-v7:25.3.1'
28 | compile 'com.android.support.constraint:constraint-layout:1.0.2'
29 | testCompile 'junit:junit:4.12'
30 | //Design library for Coordinator Layout and Toolbars
31 | compile 'com.android.support:design:25.3.1'
32 | //BottomNavigationViewEx library
33 | compile 'com.github.ittianyu:BottomNavigationViewEx:1.1.9'
34 | //Circle ImageView
35 | compile 'de.hdodenhof:circleimageview:2.1.0'
36 | //Universal image loader
37 | compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
38 | //firebase authentication
39 | compile 'com.koushikdutta.ion:ion:2.2.1'
40 |
41 | compile 'com.github.bumptech.glide:glide:4.1.1'
42 | annotationProcessor 'com.github.bumptech.glide:compiler:4.1.1'
43 |
44 | compile 'com.github.chrisbanes:PhotoView:2.0.0'
45 |
46 | compile 'com.afollestad:easyvideoplayer:0.3.0'
47 | }
48 |
49 | //Firebase
50 | apply plugin: 'com.google.gms.google-services'
51 |
52 |
53 |
--------------------------------------------------------------------------------
/app/google-services.json:
--------------------------------------------------------------------------------
1 | {
2 | "project_info": {
3 | "project_number": "352531809002",
4 | "firebase_url": "https://instagramclone3-b6678.firebaseio.com",
5 | "project_id": "instagramclone3-b6678",
6 | "storage_bucket": "instagramclone3-b6678.appspot.com"
7 | },
8 | "client": [
9 | {
10 | "client_info": {
11 | "mobilesdk_app_id": "1:352531809002:android:d49c650ed5c2c559",
12 | "android_client_info": {
13 | "package_name": "lcukerd.com.instaswipe"
14 | }
15 | },
16 | "oauth_client": [
17 | {
18 | "client_id": "352531809002-gi64mu16aovb40gf82b1fi2sen302e9h.apps.googleusercontent.com",
19 | "client_type": 1,
20 | "android_info": {
21 | "package_name": "lcukerd.com.instaswipe",
22 | "certificate_hash": "a1282f8c2b490a54cc1d7bdcefea5c630f537950"
23 | }
24 | },
25 | {
26 | "client_id": "352531809002-sm8t77fn6vf3177s6kig01tm0bd46clo.apps.googleusercontent.com",
27 | "client_type": 3
28 | }
29 | ],
30 | "api_key": [
31 | {
32 | "current_key": "AIzaSyCJXKgHH5JH7ytTLDSSJ4IeE3iFl5AV7pw"
33 | }
34 | ],
35 | "services": {
36 | "analytics_service": {
37 | "status": 1
38 | },
39 | "appinvite_service": {
40 | "status": 2,
41 | "other_platform_oauth_client": [
42 | {
43 | "client_id": "352531809002-sm8t77fn6vf3177s6kig01tm0bd46clo.apps.googleusercontent.com",
44 | "client_type": 3
45 | }
46 | ]
47 | },
48 | "ads_service": {
49 | "status": 2
50 | }
51 | }
52 | }
53 | ],
54 | "configuration_version": "1"
55 | }
--------------------------------------------------------------------------------
/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in C:\Users\User\AppData\Local\Android\sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
12 | # If your project uses WebView with JS, uncomment the following
13 | # and specify the fully qualified class name to the JavaScript interface
14 | # class:
15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16 | # public *;
17 | #}
18 |
19 | # Uncomment this to preserve the line number information for
20 | # debugging stack traces.
21 | #-keepattributes SourceFile,LineNumberTable
22 |
23 | # If you keep the line number information, uncomment this to
24 | # hide the original source file name.
25 | #-renamesourcefileattribute SourceFile
26 |
--------------------------------------------------------------------------------
/app/src/androidTest/java/lcukerd/com/instagramclone/ExampleInstrumentedTest.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instagramclone;
2 |
3 | import android.content.Context;
4 | import android.support.test.InstrumentationRegistry;
5 | import android.support.test.runner.AndroidJUnit4;
6 |
7 | import org.junit.Test;
8 | import org.junit.runner.RunWith;
9 |
10 | import static org.junit.Assert.assertEquals;
11 |
12 | /**
13 | * Instrumentation test, which will execute on an Android device.
14 | *
15 | * @see Testing documentation
16 | */
17 | @RunWith(AndroidJUnit4.class)
18 | public class ExampleInstrumentedTest {
19 | @Test
20 | public void useAppContext() throws Exception {
21 | // Context of the app under test.
22 | Context appContext = InstrumentationRegistry.getTargetContext();
23 |
24 | assertEquals("tabian.com.instagramclone", appContext.getPackageName());
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/app/src/androidTest/java/lcukerd/com/instaswipe/ExampleInstrumentedTest.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe;
2 |
3 | import android.content.Context;
4 | import android.support.test.InstrumentationRegistry;
5 | import android.support.test.runner.AndroidJUnit4;
6 |
7 | import org.junit.Test;
8 | import org.junit.runner.RunWith;
9 |
10 | import static org.junit.Assert.assertEquals;
11 |
12 | /**
13 | * Instrumentation test, which will execute on an Android device.
14 | *
15 | * @see Testing documentation
16 | */
17 | @RunWith(AndroidJUnit4.class)
18 | public class ExampleInstrumentedTest {
19 | @Test
20 | public void useAppContext() throws Exception {
21 | // Context of the app under test.
22 | Context appContext = InstrumentationRegistry.getTargetContext();
23 |
24 | assertEquals("tabian.com.instagramclone", appContext.getPackageName());
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Database/DbInteract.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Database;
2 |
3 | import android.content.ContentValues;
4 | import android.content.Context;
5 | import android.content.pm.PackageManager;
6 | import android.content.pm.ResolveInfo;
7 | import android.database.Cursor;
8 | import android.database.sqlite.SQLiteDatabase;
9 | import android.graphics.Bitmap;
10 | import android.graphics.BitmapFactory;
11 | import android.net.Uri;
12 | import android.os.Environment;
13 | import android.provider.MediaStore;
14 | import android.support.v4.content.FileProvider;
15 | import android.util.Log;
16 |
17 | import java.io.ByteArrayOutputStream;
18 | import java.io.File;
19 | import java.io.FileInputStream;
20 | import java.io.FileOutputStream;
21 | import java.io.IOException;
22 | import java.util.ArrayList;
23 | import java.util.List;
24 |
25 | import lcukerd.com.instaswipe.models.User;
26 |
27 | /**
28 | * Created by Programmer on 14-09-2017.
29 | */
30 |
31 | public class DbInteract
32 | {
33 | private eventDBcontract dBcontract;
34 | private String[] projection1 = {
35 | eventDBcontract.ListofItem.columnuser,
36 | eventDBcontract.ListofItem.columnurl,
37 | eventDBcontract.ListofItem.columnquery,
38 | eventDBcontract.ListofItem.columnimage
39 | };
40 | private String[] projection2 = {
41 | eventDBcontract.ListofItem.columnowner,
42 | eventDBcontract.ListofItem.columnpic
43 | };
44 | private static String TAG = DbInteract.class.getSimpleName();
45 | private Context context;
46 |
47 | public DbInteract(Context context)
48 | {
49 | this.context = context;
50 | dBcontract = new eventDBcontract(context);
51 | }
52 |
53 | public ArrayList readfromDB()
54 | {
55 | SQLiteDatabase db = dBcontract.getReadableDatabase();
56 | Cursor cursor = db.query(eventDBcontract.ListofItem.tableName1, projection1, null, null, null, null, null);
57 | ArrayList usernames = new ArrayList<>();
58 | while (cursor.moveToNext())
59 | usernames.add(new User(getImage(cursor.getBlob(cursor.getColumnIndex(eventDBcontract.ListofItem.columnimage))),
60 | cursor.getString(cursor.getColumnIndex(eventDBcontract.ListofItem.columnuser)),
61 | cursor.getString(cursor.getColumnIndex(eventDBcontract.ListofItem.columnurl)),
62 | cursor.getString(cursor.getColumnIndex(eventDBcontract.ListofItem.columnquery))));
63 |
64 | Log.d(TAG, "Returned " + String.valueOf(cursor.getCount()) + " usernames");
65 | return (usernames);
66 | }
67 |
68 | public void adduser(Bitmap profilePic, String username, String url, String query)
69 | {
70 | SQLiteDatabase db = dBcontract.getWritableDatabase();
71 | ContentValues values = new ContentValues();
72 |
73 | values.put(eventDBcontract.ListofItem.columnimage, getBitmapAsByteArray(profilePic));
74 | values.put(eventDBcontract.ListofItem.columnuser, username);
75 | values.put(eventDBcontract.ListofItem.columnurl, url);
76 | values.put(eventDBcontract.ListofItem.columnquery, query);
77 | db.insert(eventDBcontract.ListofItem.tableName1, null, values);
78 | Log.d(TAG, "Add User " + username);
79 | }
80 |
81 | public void deleteuser(String username)
82 | {
83 | SQLiteDatabase db = dBcontract.getWritableDatabase();
84 | Log.d(TAG, String.valueOf(db.delete(eventDBcontract.ListofItem.tableName1,
85 | eventDBcontract.ListofItem.columnuser + " = '" + username + "'", null)));
86 | }
87 |
88 | public void updateprofilepic(String username, Bitmap profilepic)
89 | {
90 | SQLiteDatabase db = dBcontract.getWritableDatabase();
91 | ContentValues values = new ContentValues();
92 |
93 | values.put(eventDBcontract.ListofItem.columnimage, getBitmapAsByteArray(profilepic));
94 | db.update(eventDBcontract.ListofItem.tableName1, values, eventDBcontract.ListofItem.columnuser + " = ?", new String[]{username});
95 | }
96 |
97 | public void savepic(Bitmap pic)
98 | {
99 | SQLiteDatabase db = dBcontract.getWritableDatabase();
100 | ContentValues values = new ContentValues();
101 |
102 | FileOutputStream out = null;
103 | try
104 | {
105 | File image = createImageFile();
106 | out = new FileOutputStream(image);
107 | pic.compress(Bitmap.CompressFormat.PNG, 100, out);
108 | values.put(eventDBcontract.ListofItem.columnpic, image.getPath());
109 | db.insert(eventDBcontract.ListofItem.tableName2, null, values);
110 | Log.i(TAG, "Pic saved " + image.getPath());
111 | } catch (Exception e)
112 | {
113 | e.printStackTrace();
114 | } finally
115 | {
116 | try
117 | {
118 | if (out != null)
119 | {
120 | out.close();
121 | }
122 | } catch (IOException e)
123 | {
124 | e.printStackTrace();
125 | }
126 | }
127 | }
128 |
129 | private File createImageFile() throws IOException
130 | {
131 | String EName = "Image";
132 | File storageDir = context.getExternalFilesDir(Environment.DIRECTORY_PICTURES);
133 | File image = File.createTempFile(EName, ".jpg", storageDir);
134 | return image;
135 | }
136 |
137 | public Bitmap getDownloadedpics(int index)
138 | {
139 | SQLiteDatabase db = dBcontract.getReadableDatabase();
140 | Cursor cursor = db.query(eventDBcontract.ListofItem.tableName2, projection2, null, null, null, null, null);
141 | cursor.moveToPosition(index);
142 | Bitmap photo = null;
143 | try
144 | {
145 | Log.d(TAG, cursor.getString(cursor.getColumnIndex(eventDBcontract.ListofItem.columnpic)));
146 | File fos = new File(cursor.getString(cursor.getColumnIndex(eventDBcontract.ListofItem.columnpic)));
147 | photo = BitmapFactory.decodeStream(new FileInputStream(fos));
148 | } catch (IOException e)
149 | {
150 | Log.e(TAG, "Can't read image");
151 | }
152 | Log.d(TAG, "Returned " + String.valueOf(cursor.getCount()) + " pics");
153 | return (photo);
154 | }
155 |
156 | public int numberofdownloads()
157 | {
158 | SQLiteDatabase db = dBcontract.getReadableDatabase();
159 | Cursor cursor = db.query(eventDBcontract.ListofItem.tableName2, projection2, null, null, null, null, null);
160 | Log.d(TAG, "Returned " + String.valueOf(cursor.getCount()) + " pics");
161 | return (cursor.getCount());
162 | }
163 |
164 | public void deletedownloadedpic(int index)
165 | {
166 | SQLiteDatabase db = dBcontract.getWritableDatabase();
167 | Cursor cursor = db.query(eventDBcontract.ListofItem.tableName2, projection2, null, null, null, null, null);
168 | cursor.moveToPosition(index);
169 | String uri = cursor.getString(cursor.getColumnIndex(eventDBcontract.ListofItem.columnpic));
170 | Log.d(TAG, "Deleted " + String.valueOf(db.delete(eventDBcontract.ListofItem.tableName2,
171 | eventDBcontract.ListofItem.columnpic + " = '" + uri + "'", null)) + " pic.");
172 | File file = new File(uri);
173 | file.delete();
174 | }
175 |
176 |
177 | public static byte[] getBitmapAsByteArray(Bitmap bitmap)
178 | {
179 | ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
180 | bitmap.compress(Bitmap.CompressFormat.PNG, 0, outputStream);
181 | return outputStream.toByteArray();
182 | }
183 |
184 | public static Bitmap getImage(byte[] image)
185 | {
186 | return BitmapFactory.decodeByteArray(image, 0, image.length);
187 | }
188 |
189 | }
190 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Database/eventDBcontract.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Database;
2 |
3 | import android.content.Context;
4 | import android.database.sqlite.SQLiteDatabase;
5 | import android.database.sqlite.SQLiteOpenHelper;
6 | import android.util.Log;
7 |
8 | /**
9 | * Created by Programmer on 14-09-2017.
10 | */
11 |
12 | public class eventDBcontract extends SQLiteOpenHelper
13 | {
14 |
15 | private static final String SQL_CREATE_ENTRIES1 =
16 | "CREATE TABLE " + ListofItem.tableName1 + " (" +
17 | ListofItem.columnurl + " TEXT, " +
18 | ListofItem.columnquery + " TEXT, " +
19 | ListofItem.columnimage + " BLOB, " +
20 | ListofItem.columnuser + " TEXT );";
21 |
22 | private static final String SQL_CREATE_ENTRIES2 =
23 | "CREATE TABLE " + ListofItem.tableName2 + " (" +
24 | ListofItem.columnpic + " TEXT, " +
25 | ListofItem.columnowner + " TEXT );";
26 |
27 | public static int DATABASE_VERSION = 2;
28 | public static final String DATABASE_NAME = "InstaSwipe.db";
29 |
30 | public eventDBcontract(Context context)
31 | {
32 | super(context, DATABASE_NAME, null, DATABASE_VERSION);
33 | }
34 |
35 | public void onCreate(SQLiteDatabase db)
36 | {
37 | db.execSQL(SQL_CREATE_ENTRIES1);
38 | db.execSQL(SQL_CREATE_ENTRIES2);
39 | Log.d("Database", "created");
40 | }
41 |
42 | public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
43 | {
44 | switch (newVersion)
45 | {
46 | case 2:
47 | db.execSQL(SQL_CREATE_ENTRIES2);
48 | }
49 | }
50 |
51 | public static class ListofItem
52 | {
53 | public static final String tableName1 = "Users",
54 | columnuser = "username",
55 | columnurl = "url",
56 | columnquery = "query",
57 | columnimage = "profile_pic";
58 | public static final String tableName2 = "Downloads",
59 | columnowner = "pic_owner",
60 | columnpic = "pic";
61 |
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Home/CameraFragment.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Home;
2 |
3 | import android.os.Bundle;
4 | import android.support.annotation.Nullable;
5 | import android.support.v4.app.Fragment;
6 | import android.view.LayoutInflater;
7 | import android.view.View;
8 | import android.view.ViewGroup;
9 |
10 | import lcukerd.com.instaswipe.R;
11 |
12 | /**
13 | * Created by User on 5/28/2017.
14 | */
15 |
16 | public class CameraFragment extends Fragment {
17 | private static final String TAG = "CameraFragment";
18 |
19 | @Nullable
20 | @Override
21 | public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
22 | View view = inflater.inflate(R.layout.fragment_camera, container, false);
23 |
24 | return view;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Home/HomeActivity.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Home;
2 |
3 | import android.Manifest;
4 | import android.content.Context;
5 | import android.content.pm.PackageManager;
6 | import android.os.Bundle;
7 | import android.support.design.widget.TabLayout;
8 | import android.support.v4.app.ActivityCompat;
9 | import android.support.v4.app.Fragment;
10 | import android.support.v4.app.FragmentManager;
11 | import android.support.v4.app.FragmentPagerAdapter;
12 | import android.support.v4.content.ContextCompat;
13 | import android.support.v4.view.ViewPager;
14 | import android.support.v7.app.AppCompatActivity;
15 | import android.util.Log;
16 | import android.view.Menu;
17 | import android.view.MenuItem;
18 | import android.view.View;
19 |
20 | import com.ittianyu.bottomnavigationviewex.BottomNavigationViewEx;
21 |
22 | import java.util.ArrayList;
23 | import java.util.List;
24 |
25 | import lcukerd.com.instaswipe.R;
26 | import lcukerd.com.instaswipe.Utils.BottomNavigationViewHelper;
27 |
28 |
29 | public class HomeActivity extends AppCompatActivity
30 | {
31 |
32 | private static final String TAG = "HomeActivity";
33 | private static final int ACTIVITY_NUM = 0;
34 |
35 | private Context mContext = HomeActivity.this;
36 |
37 |
38 | @Override
39 | protected void onCreate(Bundle savedInstanceState)
40 | {
41 | super.onCreate(savedInstanceState);
42 | setContentView(R.layout.activity_home);
43 | Log.d(TAG, "onCreate: starting.");
44 | setupBottomNavigationView();
45 | setupViewPager();
46 | }
47 |
48 |
49 | private void setupViewPager()
50 | {
51 | SectionsPagerAdapter adapter = new SectionsPagerAdapter(getSupportFragmentManager());
52 | adapter.addFragment(new CameraFragment()); //index 0
53 | adapter.addFragment(new HomeFragment()); //index 1
54 | adapter.addFragment(new MessagesFragment()); //index 2
55 | ViewPager viewPager = (ViewPager) findViewById(R.id.container);
56 | viewPager.setVisibility(View.VISIBLE);
57 | viewPager.setAdapter(adapter);
58 |
59 | TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
60 | tabLayout.setupWithViewPager(viewPager);
61 |
62 | tabLayout.getTabAt(0).setIcon(R.drawable.ic_camera);
63 | tabLayout.getTabAt(1).setIcon(R.drawable.ic_instagram_black);
64 | tabLayout.getTabAt(2).setIcon(R.drawable.ic_arrow);
65 | }
66 |
67 | private void setupBottomNavigationView()
68 | {
69 | Log.d(TAG, "setupBottomNavigationView: setting up BottomNavigationView");
70 | BottomNavigationViewEx bottomNavigationViewEx = (BottomNavigationViewEx) findViewById(R.id.bottomNavViewBar);
71 | BottomNavigationViewHelper.setupBottomNavigationView(bottomNavigationViewEx);
72 | BottomNavigationViewHelper.enableNavigation(mContext, this, bottomNavigationViewEx);
73 | Menu menu = bottomNavigationViewEx.getMenu();
74 | MenuItem menuItem = menu.getItem(ACTIVITY_NUM);
75 | menuItem.setChecked(true);
76 | }
77 |
78 | public class SectionsPagerAdapter extends FragmentPagerAdapter
79 | {
80 |
81 | private static final String TAG = "SectionsPagerAdapter";
82 |
83 | private final List mFragmentList = new ArrayList<>();
84 |
85 |
86 | public SectionsPagerAdapter(FragmentManager fm)
87 | {
88 | super(fm);
89 | }
90 |
91 | @Override
92 | public Fragment getItem(int position)
93 | {
94 | return mFragmentList.get(position);
95 | }
96 |
97 |
98 | @Override
99 | public int getCount()
100 | {
101 | return mFragmentList.size();
102 | }
103 |
104 | public void addFragment(Fragment fragment)
105 | {
106 | mFragmentList.add(fragment);
107 | }
108 | }
109 | }
110 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Home/HomeFragment.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Home;
2 |
3 | import android.os.Bundle;
4 | import android.support.annotation.Nullable;
5 | import android.support.v4.app.Fragment;
6 | import android.view.LayoutInflater;
7 | import android.view.View;
8 | import android.view.ViewGroup;
9 |
10 | import lcukerd.com.instaswipe.R;
11 |
12 | /**
13 | * Created by User on 5/28/2017.
14 | */
15 |
16 | public class HomeFragment extends Fragment {
17 | private static final String TAG = "HomeFragment";
18 |
19 | @Nullable
20 | @Override
21 | public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
22 | View view = inflater.inflate(R.layout.fragment_home, container, false);
23 |
24 | return view;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Home/MessagesFragment.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Home;
2 |
3 | import android.os.Bundle;
4 | import android.support.annotation.Nullable;
5 | import android.support.v4.app.Fragment;
6 | import android.view.LayoutInflater;
7 | import android.view.View;
8 | import android.view.ViewGroup;
9 |
10 | import lcukerd.com.instaswipe.R;
11 |
12 | /**
13 | * Created by User on 5/28/2017.
14 | */
15 |
16 | public class MessagesFragment extends Fragment {
17 | private static final String TAG = "MessagesFragment";
18 |
19 | @Nullable
20 | @Override
21 | public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
22 | View view = inflater.inflate(R.layout.fragment_messages, container, false);
23 |
24 | return view;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Share/NextActivity.java:
--------------------------------------------------------------------------------
1 | /*
2 | package lcukerd.com.instaswipe.Share;
3 |
4 | import android.content.Intent;
5 | import android.graphics.Bitmap;
6 | import android.os.Bundle;
7 | import android.support.annotation.NonNull;
8 | import android.support.annotation.Nullable;
9 | import android.support.v7.app.AppCompatActivity;
10 | import android.util.Log;
11 | import android.view.View;
12 | import android.widget.EditText;
13 | import android.widget.ImageView;
14 | import android.widget.TextView;
15 | import android.widget.Toast;
16 |
17 | import com.google.firebase.auth.FirebaseAuth;
18 | import com.google.firebase.auth.FirebaseUser;
19 | import com.google.firebase.database.DataSnapshot;
20 | import com.google.firebase.database.DatabaseError;
21 | import com.google.firebase.database.DatabaseReference;
22 | import com.google.firebase.database.FirebaseDatabase;
23 | import com.google.firebase.database.ValueEventListener;
24 |
25 | import lcukerd.com.instaswipe.R;
26 |
27 | */
28 | /**
29 | * Created by User on 7/24/2017.
30 | *//*
31 |
32 |
33 | public class NextActivity extends AppCompatActivity {
34 |
35 | private static final String TAG = "NextActivity";
36 |
37 | //firebase
38 | private FirebaseAuth mAuth;
39 | private FirebaseAuth.AuthStateListener mAuthListener;
40 | private FirebaseDatabase mFirebaseDatabase;
41 | private DatabaseReference myRef;
42 | private FirebaseMethods mFirebaseMethods;
43 |
44 | //widgets
45 | private EditText mCaption;
46 |
47 | //vars
48 | private String mAppend = "file:/";
49 | private int imageCount = 0;
50 | private String imgUrl;
51 | private Bitmap bitmap;
52 | private Intent intent;
53 |
54 | @Override
55 | protected void onCreate(@Nullable Bundle savedInstanceState) {
56 | super.onCreate(savedInstanceState);
57 | setContentView(R.layout.activity_next);
58 | mFirebaseMethods = new FirebaseMethods(NextActivity.this);
59 | mCaption = (EditText) findViewById(R.id.caption) ;
60 |
61 | setupFirebaseAuth();
62 |
63 | ImageView backArrow = (ImageView) findViewById(R.id.ivBackArrow);
64 | backArrow.setOnClickListener(new View.OnClickListener() {
65 | @Override
66 | public void onClick(View v) {
67 | Log.d(TAG, "onClick: closing the activity");
68 | finish();
69 | }
70 | });
71 |
72 |
73 | TextView share = (TextView) findViewById(R.id.tvShare);
74 | share.setOnClickListener(new View.OnClickListener() {
75 | @Override
76 | public void onClick(View v) {
77 | Log.d(TAG, "onClick: navigating to the final share screen.");
78 | //upload the image to firebase
79 | Toast.makeText(NextActivity.this, "Attempting to upload new photo", Toast.LENGTH_SHORT).show();
80 | String caption = mCaption.getText().toString();
81 |
82 | if(intent.hasExtra(getString(R.string.selected_image))){
83 | imgUrl = intent.getStringExtra(getString(R.string.selected_image));
84 | mFirebaseMethods.uploadNewPhoto(getString(R.string.new_photo), caption, imageCount, imgUrl,null);
85 | }
86 | else if(intent.hasExtra(getString(R.string.selected_bitmap))){
87 | bitmap = (Bitmap) intent.getParcelableExtra(getString(R.string.selected_bitmap));
88 | mFirebaseMethods.uploadNewPhoto(getString(R.string.new_photo), caption, imageCount, null,bitmap);
89 | }
90 |
91 |
92 |
93 | }
94 | });
95 |
96 | setImage();
97 | }
98 |
99 | private void someMethod(){
100 | */
101 | /*
102 | Step 1)
103 | Create a data model for Photos
104 |
105 | Step 2)
106 | Add properties to the Photo Objects (caption, date, imageUrl, photo_id, tags, user_id)
107 |
108 | Step 3)
109 | Count the number of photos that the User already has.
110 |
111 | Step 4)
112 | a) Upload the photo to Firebase Storage
113 | b) insert into 'photos' node
114 | c) insert into 'user_photos' node
115 |
116 | *//*
117 |
118 |
119 | }
120 |
121 |
122 | */
123 | /**
124 | * gets the image url from the incoming intent and displays the chosen image
125 | *//*
126 |
127 | private void setImage(){
128 | intent = getIntent();
129 | ImageView image = (ImageView) findViewById(R.id.imageShare);
130 |
131 | if(intent.hasExtra(getString(R.string.selected_image))){
132 | imgUrl = intent.getStringExtra(getString(R.string.selected_image));
133 | Log.d(TAG, "setImage: got new image url: " + imgUrl);
134 | UniversalImageLoader.setImage(imgUrl, image, null, mAppend);
135 | }
136 | else if(intent.hasExtra(getString(R.string.selected_bitmap))){
137 | bitmap = (Bitmap) intent.getParcelableExtra(getString(R.string.selected_bitmap));
138 | Log.d(TAG, "setImage: got new bitmap");
139 | image.setImageBitmap(bitmap);
140 | }
141 | }
142 |
143 | */
144 | /*
145 | ------------------------------------ Firebase ---------------------------------------------
146 | *//*
147 |
148 |
149 | */
150 | /**
151 | * Setup the firebase auth object
152 | *//*
153 |
154 | private void setupFirebaseAuth(){
155 | Log.d(TAG, "setupFirebaseAuth: setting up firebase auth.");
156 | mAuth = FirebaseAuth.getInstance();
157 | mFirebaseDatabase = FirebaseDatabase.getInstance();
158 | myRef = mFirebaseDatabase.getReference();
159 | Log.d(TAG, "onDataChange: image count: " + imageCount);
160 |
161 | mAuthListener = new FirebaseAuth.AuthStateListener() {
162 | @Override
163 | public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
164 | FirebaseUser User = firebaseAuth.getCurrentUser();
165 |
166 |
167 | if (User != null) {
168 | // User is signed in
169 | Log.d(TAG, "onAuthStateChanged:signed_in:" + User.getUid());
170 | } else {
171 | // User is signed out
172 | Log.d(TAG, "onAuthStateChanged:signed_out");
173 | }
174 | // ...
175 | }
176 | };
177 |
178 |
179 | myRef.addValueEventListener(new ValueEventListener() {
180 | @Override
181 | public void onDataChange(DataSnapshot dataSnapshot) {
182 |
183 | imageCount = mFirebaseMethods.getImageCount(dataSnapshot);
184 | Log.d(TAG, "onDataChange: image count: " + imageCount);
185 |
186 | }
187 |
188 | @Override
189 | public void onCancelled(DatabaseError databaseError) {
190 |
191 | }
192 | });
193 | }
194 |
195 |
196 | @Override
197 | public void onStart() {
198 | super.onStart();
199 | mAuth.addAuthStateListener(mAuthListener);
200 | }
201 |
202 | @Override
203 | public void onStop() {
204 | super.onStop();
205 | if (mAuthListener != null) {
206 | mAuth.removeAuthStateListener(mAuthListener);
207 | }
208 | }
209 | }
210 | */
211 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Share/PhotoFragment.java:
--------------------------------------------------------------------------------
1 | /*
2 | package lcukerd.com.instaswipe.Share;
3 |
4 | import android.content.Intent;
5 | import android.graphics.Bitmap;
6 | import android.os.Bundle;
7 | import android.provider.MediaStore;
8 | import android.support.annotation.Nullable;
9 | import android.support.v4.app.Fragment;
10 | import android.util.Log;
11 | import android.view.LayoutInflater;
12 | import android.view.View;
13 | import android.view.ViewGroup;
14 | import android.widget.Button;
15 |
16 | import lcukerd.com.instaswipe.R;
17 |
18 |
19 | */
20 | /**
21 | * Created by User on 5/28/2017.
22 | *//*
23 |
24 |
25 | public class PhotoFragment extends Fragment {
26 | private static final String TAG = "PhotoFragment";
27 |
28 | //constant
29 | private static final int PHOTO_FRAGMENT_NUM = 1;
30 | private static final int GALLERY_FRAGMENT_NUM = 2;
31 | private static final int CAMERA_REQUEST_CODE = 5;
32 |
33 |
34 | @Nullable
35 | @Override
36 | public View onCreateView(final LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
37 | View view = inflater.inflate(R.layout.fragment_photo, container, false);
38 | Log.d(TAG, "onCreateView: started.");
39 |
40 | Button btnLaunchCamera = (Button) view.findViewById(R.id.btnLaunchCamera);
41 | btnLaunchCamera.setOnClickListener(new View.OnClickListener() {
42 | @Override
43 | public void onClick(View v) {
44 | Log.d(TAG, "onClick: launching camera.");
45 |
46 | if(((ShareActivity)getActivity()).getCurrentTabNumber() == PHOTO_FRAGMENT_NUM){
47 | if(((ShareActivity)getActivity()).checkPermissions(Permissions.CAMERA_PERMISSION[0])){
48 | Log.d(TAG, "onClick: starting camera");
49 | Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
50 | startActivityForResult(cameraIntent, CAMERA_REQUEST_CODE);
51 | }else{
52 | Intent intent = new Intent(getActivity(), ShareActivity.class);
53 | intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
54 | startActivity(intent);
55 | }
56 | }
57 | }
58 | });
59 |
60 | return view;
61 | }
62 |
63 | private boolean isRootTask(){
64 | if(((ShareActivity)getActivity()).getTask() == 0){
65 | return true;
66 | }
67 | else{
68 | return false;
69 | }
70 | }
71 |
72 | @Override
73 | public void onActivityResult(int requestCode, int resultCode, Intent data) {
74 | super.onActivityResult(requestCode, resultCode, data);
75 |
76 | if(requestCode == CAMERA_REQUEST_CODE){
77 | Log.d(TAG, "onActivityResult: done taking a photo.");
78 | Log.d(TAG, "onActivityResult: attempting to navigate to final share screen.");
79 |
80 | Bitmap bitmap;
81 | bitmap = (Bitmap) data.getExtras().get("data");
82 |
83 | if(isRootTask()){
84 | try{
85 | Log.d(TAG, "onActivityResult: received new bitmap from camera: " + bitmap);
86 | Intent intent = new Intent(getActivity(), NextActivity.class);
87 | intent.putExtra(getString(R.string.selected_bitmap), bitmap);
88 | startActivity(intent);
89 | }catch (NullPointerException e){
90 | Log.d(TAG, "onActivityResult: NullPointerException: " + e.getMessage());
91 | }
92 | }else{
93 | try{
94 | Log.d(TAG, "onActivityResult: received new bitmap from camera: " + bitmap);
95 | Intent intent = new Intent(getActivity(), AccountSettingsActivity.class);
96 | intent.putExtra(getString(R.string.selected_bitmap), bitmap);
97 | intent.putExtra(getString(R.string.return_to_fragment), getString(R.string.edit_profile_fragment));
98 | startActivity(intent);
99 | getActivity().finish();
100 | }catch (NullPointerException e){
101 | Log.d(TAG, "onActivityResult: NullPointerException: " + e.getMessage());
102 | }
103 | }
104 |
105 | }
106 | }
107 | }
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 | */
142 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Share/ShareActivity.java:
--------------------------------------------------------------------------------
1 | /*
2 | package lcukerd.com.instaswipe.Share;
3 |
4 | import android.content.Context;
5 | import android.content.pm.PackageManager;
6 | import android.os.Bundle;
7 | import android.support.annotation.Nullable;
8 | import android.support.design.widget.TabLayout;
9 | import android.support.v4.app.ActivityCompat;
10 | import android.support.v4.view.ViewPager;
11 | import android.support.v7.app.AppCompatActivity;
12 | import android.util.Log;
13 | import android.view.Menu;
14 | import android.view.MenuItem;
15 |
16 | import com.ittianyu.bottomnavigationviewex.BottomNavigationViewEx;
17 |
18 | import lcukerd.com.instaswipe.R;
19 | import lcukerd.com.instaswipe.Utils.BottomNavigationViewHelper;
20 |
21 | */
22 | /**
23 | * Created by User on 5/28/2017.
24 | *//*
25 |
26 |
27 | public class ShareActivity extends AppCompatActivity{
28 | private static final String TAG = "ShareActivity";
29 |
30 | //constants
31 | private static final int ACTIVITY_NUM = 2;
32 | private static final int VERIFY_PERMISSIONS_REQUEST = 1;
33 |
34 | private ViewPager mViewPager;
35 |
36 |
37 | private Context mContext = ShareActivity.this;
38 |
39 | @Override
40 | protected void onCreate(@Nullable Bundle savedInstanceState) {
41 | super.onCreate(savedInstanceState);
42 | setContentView(R.layout.activity_share);
43 | Log.d(TAG, "onCreate: started.");
44 |
45 | if(checkPermissionsArray(Permissions.PERMISSIONS)){
46 | setupViewPager();
47 | }else{
48 | verifyPermissions(Permissions.PERMISSIONS);
49 | }
50 |
51 | }
52 |
53 | */
54 | /**
55 | * return the current tab number
56 | * 0 = GalleryFragment
57 | * 1 = PhotoFragment
58 | * @return
59 | *//*
60 |
61 | public int getCurrentTabNumber(){
62 | return mViewPager.getCurrentItem();
63 | }
64 |
65 | */
66 | /**
67 | * setup viewpager for manager the tabs
68 | *//*
69 |
70 | private void setupViewPager(){
71 | SectionsPagerAdapter adapter = new SectionsPagerAdapter(getSupportFragmentManager());
72 | //adapter.addFragment(new GalleryFragment());
73 | adapter.addFragment(new PhotoFragment());
74 |
75 | mViewPager = (ViewPager) findViewById(R.id.container);
76 | mViewPager.setAdapter(adapter);
77 |
78 | TabLayout tabLayout = (TabLayout) findViewById(R.id.tabsBottom);
79 | tabLayout.setupWithViewPager(mViewPager);
80 |
81 | tabLayout.getTabAt(0).setText(getString(R.string.gallery));
82 | tabLayout.getTabAt(1).setText(getString(R.string.photo));
83 |
84 | }
85 |
86 | public int getTask(){
87 | Log.d(TAG, "getTask: TASK: " + getIntent().getFlags());
88 | return getIntent().getFlags();
89 | }
90 |
91 | */
92 | /**
93 | * verifiy all the permissions passed to the array
94 | * @param permissions
95 | *//*
96 |
97 | public void verifyPermissions(String[] permissions){
98 | Log.d(TAG, "verifyPermissions: verifying permissions.");
99 |
100 | ActivityCompat.requestPermissions(
101 | ShareActivity.this,
102 | permissions,
103 | VERIFY_PERMISSIONS_REQUEST
104 | );
105 | }
106 |
107 | */
108 | /**
109 | * Check an array of permissions
110 | * @param permissions
111 | * @return
112 | *//*
113 |
114 | public boolean checkPermissionsArray(String[] permissions){
115 | Log.d(TAG, "checkPermissionsArray: checking permissions array.");
116 |
117 | for(int i = 0; i< permissions.length; i++){
118 | String check = permissions[i];
119 | if(!checkPermissions(check)){
120 | return false;
121 | }
122 | }
123 | return true;
124 | }
125 |
126 | */
127 | /**
128 | * Check a single permission is it has been verified
129 | * @param permission
130 | * @return
131 | *//*
132 |
133 | public boolean checkPermissions(String permission){
134 | Log.d(TAG, "checkPermissions: checking permission: " + permission);
135 |
136 | int permissionRequest = ActivityCompat.checkSelfPermission(ShareActivity.this, permission);
137 |
138 | if(permissionRequest != PackageManager.PERMISSION_GRANTED){
139 | Log.d(TAG, "checkPermissions: \n Permission was not granted for: " + permission);
140 | return false;
141 | }
142 | else{
143 | Log.d(TAG, "checkPermissions: \n Permission was granted for: " + permission);
144 | return true;
145 | }
146 | }
147 |
148 | */
149 | /**
150 | * BottomNavigationView setup
151 | *//*
152 |
153 | private void setupBottomNavigationView(){
154 | Log.d(TAG, "setupBottomNavigationView: setting up BottomNavigationView");
155 | BottomNavigationViewEx bottomNavigationViewEx = (BottomNavigationViewEx) findViewById(R.id.bottomNavViewBar);
156 | BottomNavigationViewHelper.setupBottomNavigationView(bottomNavigationViewEx);
157 | BottomNavigationViewHelper.enableNavigation(mContext, this,bottomNavigationViewEx);
158 | Menu menu = bottomNavigationViewEx.getMenu();
159 | MenuItem menuItem = menu.getItem(ACTIVITY_NUM);
160 | menuItem.setChecked(true);
161 | }
162 | }
163 | */
164 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Utils/BottomNavigationViewHelper.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Utils;
2 |
3 | import android.app.Activity;
4 | import android.content.Context;
5 | import android.content.Intent;
6 | import android.support.annotation.NonNull;
7 | import android.support.design.widget.BottomNavigationView;
8 | import android.util.Log;
9 | import android.view.MenuItem;
10 |
11 | import com.ittianyu.bottomnavigationviewex.BottomNavigationViewEx;
12 |
13 | import lcukerd.com.instaswipe.Home.HomeActivity;
14 | import lcukerd.com.instaswipe.ProfileActivity;
15 | import lcukerd.com.instaswipe.R;
16 | import lcukerd.com.instaswipe.SearchActivity;
17 |
18 | /**
19 | * Created by User on 5/28/2017.
20 | */
21 |
22 | public class BottomNavigationViewHelper
23 | {
24 |
25 | private static final String TAG = "BottomNavigationViewHel";
26 |
27 | public static void setupBottomNavigationView(BottomNavigationViewEx bottomNavigationViewEx)
28 | {
29 | Log.d(TAG, "setupBottomNavigationView: Setting up BottomNavigationView");
30 | bottomNavigationViewEx.enableAnimation(false);
31 | bottomNavigationViewEx.enableItemShiftingMode(false);
32 | bottomNavigationViewEx.enableShiftingMode(false);
33 | bottomNavigationViewEx.setTextVisibility(false);
34 | }
35 |
36 | public static void enableNavigation(final Context context, final Activity callingActivity, BottomNavigationViewEx view)
37 | {
38 | view.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener()
39 | {
40 | @Override
41 | public boolean onNavigationItemSelected(@NonNull MenuItem item)
42 | {
43 | switch (item.getItemId())
44 | {
45 |
46 | case R.id.ic_house:
47 | Intent intent1 = new Intent(context, HomeActivity.class);//ACTIVITY_NUM = 0
48 | context.startActivity(intent1);
49 | callingActivity.overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
50 | break;
51 |
52 | case R.id.ic_search:
53 | Intent intent2 = new Intent(context, SearchActivity.class);//ACTIVITY_NUM = 1
54 | context.startActivity(intent2);
55 | callingActivity.overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
56 | break;
57 |
58 | /* case R.id.ic_circle:
59 | Intent intent3 = new Intent(context, ShareActivity.class);//ACTIVITY_NUM = 2
60 | context.startActivity(intent3);
61 | callingActivity.overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
62 | break;
63 |
64 | case R.id.ic_alert:
65 | Intent intent4 = new Intent(context, LikesActivity.class);//ACTIVITY_NUM = 3
66 | context.startActivity(intent4);
67 | callingActivity.overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
68 | break;*/
69 |
70 | case R.id.ic_android:
71 | Intent intent5 = new Intent(context, ProfileActivity.class);//ACTIVITY_NUM = 4
72 | intent5.putExtra("action","downloads");
73 | context.startActivity(intent5);
74 | callingActivity.overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
75 | break;
76 | }
77 |
78 |
79 | return false;
80 | }
81 | });
82 | }
83 | }
84 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Utils/FilePaths.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Utils;
2 |
3 | import android.os.Environment;
4 |
5 | /**
6 | * Created by User on 7/24/2017.
7 | */
8 |
9 | public class FilePaths {
10 |
11 | //"storage/emulated/0"
12 | public String ROOT_DIR = Environment.getExternalStorageDirectory().getPath();
13 |
14 | public String PICTURES = ROOT_DIR + "/Pictures";
15 | public String CAMERA = ROOT_DIR + "/DCIM/camera";
16 |
17 | public String FIREBASE_IMAGE_STORAGE = "photos/users/";
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Utils/FileSearch.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Utils;
2 |
3 | import java.io.File;
4 | import java.util.ArrayList;
5 |
6 | /**
7 | * Created by User on 7/24/2017.
8 | */
9 |
10 | public class FileSearch {
11 |
12 | /**
13 | * Search a directory and return a list of all **directories** contained inside
14 | * @param directory
15 | * @return
16 | */
17 | public static ArrayList getDirectoryPaths(String directory){
18 | ArrayList pathArray = new ArrayList<>();
19 | File file = new File(directory);
20 | File[] listfiles = file.listFiles();
21 | for(int i = 0; i < listfiles.length; i++){
22 | if(listfiles[i].isDirectory()){
23 | pathArray.add(listfiles[i].getAbsolutePath());
24 | }
25 | }
26 | return pathArray;
27 | }
28 |
29 | /**
30 | * Search a directory and return a list of all **files** contained inside
31 | * @param directory
32 | * @return
33 | */
34 | public static ArrayList getFilePaths(String directory){
35 | ArrayList pathArray = new ArrayList<>();
36 | File file = new File(directory);
37 | File[] listfiles = file.listFiles();
38 | for(int i = 0; i < listfiles.length; i++){
39 | if(listfiles[i].isFile()){
40 | pathArray.add(listfiles[i].getAbsolutePath());
41 | }
42 | }
43 | return pathArray;
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Utils/Heart.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Utils;
2 |
3 | import android.animation.AnimatorSet;
4 | import android.animation.ObjectAnimator;
5 | import android.util.Log;
6 | import android.view.View;
7 | import android.view.animation.AccelerateInterpolator;
8 | import android.view.animation.DecelerateInterpolator;
9 | import android.widget.ImageView;
10 |
11 | /**
12 | * Created by User on 8/21/2017.
13 | */
14 |
15 | public class Heart {
16 |
17 | private static final String TAG = "Heart";
18 |
19 | private static final DecelerateInterpolator DECCELERATE_INTERPOLATOR = new DecelerateInterpolator();
20 | private static final AccelerateInterpolator ACCELERATE_INTERPOLATOR = new AccelerateInterpolator();
21 |
22 | public ImageView heartWhite, heartRed;
23 |
24 | public Heart(ImageView heartWhite, ImageView heartRed) {
25 | this.heartWhite = heartWhite;
26 | this.heartRed = heartRed;
27 | }
28 |
29 | public void toggleLike(){
30 | Log.d(TAG, "toggleLike: toggling heart.");
31 |
32 | AnimatorSet animationSet = new AnimatorSet();
33 |
34 |
35 | if(heartRed.getVisibility() == View.VISIBLE){
36 | Log.d(TAG, "toggleLike: toggling red heart off.");
37 | heartRed.setScaleX(0.1f);
38 | heartRed.setScaleY(0.1f);
39 |
40 | ObjectAnimator scaleDownY = ObjectAnimator.ofFloat(heartRed, "scaleY", 1f, 0f);
41 | scaleDownY.setDuration(300);
42 | scaleDownY.setInterpolator(ACCELERATE_INTERPOLATOR);
43 |
44 | ObjectAnimator scaleDownX = ObjectAnimator.ofFloat(heartRed, "scaleX", 1f, 0f);
45 | scaleDownX.setDuration(300);
46 | scaleDownX.setInterpolator(ACCELERATE_INTERPOLATOR);
47 |
48 | heartRed.setVisibility(View.GONE);
49 | heartWhite.setVisibility(View.VISIBLE);
50 |
51 | animationSet.playTogether(scaleDownY, scaleDownX);
52 | }
53 |
54 | else if(heartRed.getVisibility() == View.GONE){
55 | Log.d(TAG, "toggleLike: toggling red heart on.");
56 | heartRed.setScaleX(0.1f);
57 | heartRed.setScaleY(0.1f);
58 |
59 | ObjectAnimator scaleDownY = ObjectAnimator.ofFloat(heartRed, "scaleY", 0.1f, 1f);
60 | scaleDownY.setDuration(300);
61 | scaleDownY.setInterpolator(DECCELERATE_INTERPOLATOR);
62 |
63 | ObjectAnimator scaleDownX = ObjectAnimator.ofFloat(heartRed, "scaleX", 0.1f, 1f);
64 | scaleDownX.setDuration(300);
65 | scaleDownX.setInterpolator(DECCELERATE_INTERPOLATOR);
66 |
67 | heartRed.setVisibility(View.VISIBLE);
68 | heartWhite.setVisibility(View.GONE);
69 |
70 | animationSet.playTogether(scaleDownY, scaleDownX);
71 | }
72 |
73 | animationSet.start();
74 |
75 | }
76 | }
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Utils/ImageManager.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Utils;
2 |
3 | import android.graphics.Bitmap;
4 | import android.graphics.BitmapFactory;
5 | import android.util.Log;
6 |
7 | import java.io.ByteArrayOutputStream;
8 | import java.io.File;
9 | import java.io.FileInputStream;
10 | import java.io.FileNotFoundException;
11 | import java.io.IOException;
12 |
13 | /**
14 | * Created by User on 7/29/2017.
15 | */
16 |
17 | public class ImageManager {
18 |
19 | private static final String TAG = "ImageManager";
20 |
21 | public static Bitmap getBitmap(String imgUrl){
22 | File imageFile = new File(imgUrl);
23 | FileInputStream fis = null;
24 | Bitmap bitmap = null;
25 | try{
26 | fis = new FileInputStream(imageFile);
27 | bitmap = BitmapFactory.decodeStream(fis);
28 | }catch (FileNotFoundException e){
29 | Log.e(TAG, "getBitmap: FileNotFoundException: " + e.getMessage() );
30 | }finally {
31 | try{
32 | fis.close();
33 | }catch (IOException e){
34 | Log.e(TAG, "getBitmap: FileNotFoundException: " + e.getMessage() );
35 | }
36 | }
37 | return bitmap;
38 | }
39 |
40 | /**
41 | * return byte array from a bitmap
42 | * quality is greater than 0 but less than 100
43 | * @param bm
44 | * @param quality
45 | * @return
46 | */
47 | public static byte[] getBytesFromBitmap(Bitmap bm, int quality){
48 | ByteArrayOutputStream stream = new ByteArrayOutputStream();
49 | bm.compress(Bitmap.CompressFormat.JPEG, quality, stream);
50 | return stream.toByteArray();
51 | }
52 | }
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Utils/Scrapper.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Utils;
2 |
3 | import android.util.Log;
4 |
5 | import org.json.JSONArray;
6 | import org.json.JSONException;
7 | import org.json.JSONObject;
8 |
9 | import java.io.UnsupportedEncodingException;
10 | import java.net.URISyntaxException;
11 | import java.nio.charset.StandardCharsets;
12 | import java.util.ArrayList;
13 |
14 | import lcukerd.com.instaswipe.models.User;
15 |
16 | /**
17 | * Created by Programmer on 15-09-2017.
18 | */
19 |
20 | public class Scrapper {
21 | private static final String tag = Scrapper.class.getSimpleName();
22 |
23 | public static ArrayList getUsersfromsearch(String result) {
24 | ArrayList userArrayList = new ArrayList<>();
25 | try {
26 | JSONObject jsonObject = new JSONObject(result);
27 | JSONArray jsonArray = jsonObject.getJSONArray("users");
28 | for (int i = 0; i < jsonArray.length(); i++) {
29 | User u = new User();
30 | jsonObject = jsonArray.getJSONObject(i);
31 | jsonObject = jsonObject.getJSONObject("user");
32 |
33 | u.name = jsonObject.getString("full_name");
34 | u.query = jsonObject.getString("username");
35 | u.url = jsonObject.getString("profile_pic_url");
36 | u.verfied = jsonObject.getBoolean("is_verified");
37 | if (jsonObject.getBoolean("is_private") == true)
38 | u.isprivate = " (private)";
39 | else
40 | u.isprivate = "";
41 | userArrayList.add(u);
42 | }
43 | } catch (JSONException e) {
44 | Log.e(tag, "Error in Json " + result);
45 | }
46 | return userArrayList;
47 | }
48 |
49 | public static String getUsername(String result) {
50 | int start = result.indexOf(" ", result.indexOf(" ", start);
172 | String videoUrl = result.substring(start, end);
173 | Log.i(tag, "Video Url " + videoUrl);
174 | return videoUrl;
175 | }
176 | }
177 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Utils/SquareImageView.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Utils;
2 |
3 | import android.content.Context;
4 | import android.support.v7.widget.AppCompatImageView;
5 | import android.util.AttributeSet;
6 |
7 | /**
8 | * Created by User on 6/4/2017.
9 | */
10 |
11 | public class SquareImageView extends AppCompatImageView {
12 |
13 | public SquareImageView(Context context) {
14 | super(context);
15 | }
16 |
17 | public SquareImageView(Context context, AttributeSet attrs) {
18 | super(context, attrs);
19 | }
20 |
21 | public SquareImageView(Context context, AttributeSet attrs, int defStyleAttr) {
22 | super(context, attrs, defStyleAttr);
23 | }
24 |
25 | @Override
26 | protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
27 | super.onMeasure(widthMeasureSpec, widthMeasureSpec);
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/Utils/loadImage.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.Utils;
2 |
3 | import android.content.Context;
4 | import android.content.Intent;
5 | import android.graphics.Bitmap;
6 | import android.os.AsyncTask;
7 | import android.widget.ImageView;
8 |
9 | import com.github.chrisbanes.photoview.PhotoView;
10 |
11 | import java.util.HashMap;
12 | import java.util.Map;
13 |
14 | import lcukerd.com.instaswipe.Database.DbInteract;
15 |
16 | /**
17 | * Created by Programmer on 21-10-2017.
18 | */
19 |
20 | public class loadImage extends AsyncTask
21 | {
22 | private Map downloads = new HashMap<>();
23 | private DbInteract interact;
24 | private ImageView pic;
25 | private int type;
26 |
27 | protected loadImage(Context context,Map download,ImageView pic,int type)
28 | {
29 | interact = new DbInteract(context);
30 | this.downloads = download;
31 | this.pic = pic;
32 | this.type = type;
33 | }
34 |
35 | @Override
36 | protected Bitmap doInBackground(Integer... params)
37 | {
38 | if (downloads.get(params[0]) != null)
39 | return downloads.get(params[0]);
40 | else
41 | {
42 | Bitmap image = interact.getDownloadedpics(params[0]);
43 | if (type==0)
44 | image = Bitmap.createScaledBitmap(image,(int)(360*((float)image.getWidth()/(float) image.getHeight())),360,false);
45 | downloads.put(params[0],image);
46 | return image;
47 | }
48 | }
49 |
50 | @Override
51 | protected void onPostExecute(Bitmap bitmap)
52 | {
53 | super.onPostExecute(bitmap);
54 | pic.setImageBitmap(bitmap);
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/models/AccountDetails.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.models;
2 |
3 | import android.graphics.Bitmap;
4 |
5 | /**
6 | * Created by User on 6/29/2017.
7 | */
8 |
9 | public class AccountDetails
10 | {
11 |
12 | private String followers;
13 | private String following;
14 | private String posts;
15 | private Bitmap profile_photo;
16 | private String username;
17 |
18 | public AccountDetails(String followers,
19 | String following, String posts, Bitmap profile_photo, String username)
20 | {
21 | this.followers = followers;
22 | this.following = following;
23 | this.posts = posts;
24 | this.profile_photo = profile_photo;
25 | this.username = username;
26 | }
27 |
28 | public AccountDetails()
29 | {
30 |
31 | }
32 |
33 | public String getFollowers()
34 | {
35 | return followers;
36 | }
37 |
38 | public void setFollowers(String followers)
39 | {
40 | this.followers = followers;
41 | }
42 |
43 | public String getFollowing()
44 | {
45 | return following;
46 | }
47 |
48 | public void setFollowing(String following)
49 | {
50 | this.following = following;
51 | }
52 |
53 | public String getPosts()
54 | {
55 | return posts;
56 | }
57 |
58 | public void setPosts(String posts)
59 | {
60 | this.posts = posts;
61 | }
62 |
63 | public String getUsername()
64 | {
65 | return username;
66 | }
67 |
68 | public void setUsername(String username)
69 | {
70 | this.username = username;
71 | }
72 |
73 | public Bitmap getProfile_photo()
74 | {
75 | return profile_photo;
76 | }
77 |
78 | public void setProfile_photo(Bitmap image)
79 | {
80 | this.profile_photo = image;
81 | }
82 |
83 |
84 | @Override
85 | public String toString()
86 | {
87 | return "AccountDetails{" +
88 | ", followers=" + followers +
89 | ", following=" + following +
90 | ", posts=" + posts +
91 | ", profile_photo='" + profile_photo + '\'' +
92 | ", username='" + username + '\'' +
93 | '}';
94 | }
95 | }
96 |
--------------------------------------------------------------------------------
/app/src/main/java/lcukerd/com/instaswipe/models/User.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe.models;
2 |
3 | import android.graphics.Bitmap;
4 |
5 |
6 | /**
7 | * Created by Programmer on 14-09-2017.
8 | */
9 |
10 | public class User
11 | {
12 | public Bitmap profile;
13 | public String name;
14 | public String url;
15 | public String query;
16 | public String isprivate;
17 | public boolean verfied = false;
18 |
19 | public User()
20 | {}
21 |
22 | public User(Bitmap p, String n, String u, String q)
23 | {
24 | profile = p;
25 | name = n;
26 | url = u;
27 | query = q;
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/app/src/main/res/anim/fade_in.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/anim/fade_out.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/black_border.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 | -
11 |
12 |
14 |
17 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/et_border.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/grey_border.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 | -
11 |
12 |
14 |
17 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_action_name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_action_name.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_alert.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_alert.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_android.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_arrow.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_backarrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_backarrow.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_black_x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_black_x.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_camera.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_camera.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_checkmark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_checkmark.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_circle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_circle.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_description.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_description.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_display_name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_display_name.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_ellipses.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_ellipses.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_email.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_email.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_heart_outline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_heart_outline.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_house.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_house.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_instagram_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_instagram_black.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_phone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_phone.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_play_for_work_black_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_play_for_work_black_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_search.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_search.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_speech_bubble.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_speech_bubble.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_username.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_username.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_videocam_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_videocam_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-hdpi/ic_web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-hdpi/ic_web.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_action_name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_action_name.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_alert.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_alert.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_android.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_arrow.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_backarrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_backarrow.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_black_x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_black_x.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_camera.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_camera.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_checkmark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_checkmark.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_circle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_circle.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_description.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_description.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_display_name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_display_name.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_ellipses.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_ellipses.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_email.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_email.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_heart_outline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_heart_outline.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_house.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_house.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_instagram_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_instagram_black.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_phone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_phone.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_play_for_work_black_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_play_for_work_black_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_search.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_search.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_speech_bubble.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_speech_bubble.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_username.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_username.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_videocam_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_videocam_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-mdpi/ic_web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-mdpi/ic_web.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_action_name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_action_name.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_alert.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_alert.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_android.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_arrow.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_backarrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_backarrow.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_black_x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_black_x.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_camera.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_camera.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_checkmark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_checkmark.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_circle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_circle.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_description.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_description.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_display_name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_display_name.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_ellipses.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_ellipses.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_email.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_email.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_heart_outline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_heart_outline.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_house.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_house.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_instagram_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_instagram_black.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_phone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_phone.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_play_for_work_black_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_play_for_work_black_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_search.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_search.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_speech_bubble.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_speech_bubble.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_username.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_username.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_videocam_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_videocam_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xhdpi/ic_web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xhdpi/ic_web.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_action_name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_action_name.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_alert.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_alert.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_android.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_android.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_arrow.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_backarrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_backarrow.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_black_x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_black_x.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_camera.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_camera.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_checkmark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_checkmark.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_circle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_circle.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_description.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_description.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_display_name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_display_name.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_ellipses.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_ellipses.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_email.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_email.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_heart_outline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_heart_outline.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_heart_white.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
7 |
8 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_house.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_house.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_instagram_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_instagram_black.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_phone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_phone.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_play_for_work_black_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_play_for_work_black_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_search.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_search.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_speech_bubble.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_speech_bubble.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_username.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_username.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_videocam_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_videocam_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/ic_web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxhdpi/ic_web.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxhdpi/vector_heart_white.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxxhdpi/ic_play_for_work_black_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxxhdpi/ic_play_for_work_black_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable-xxxhdpi/ic_videocam_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable-xxxhdpi/ic_videocam_white_24dp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/Thumbs.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable/Thumbs.db
--------------------------------------------------------------------------------
/app/src/main/res/drawable/grey_border_bottom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
7 |
8 |
9 |
10 |
11 | -
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_heart_red.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
7 |
8 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/instagram_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable/instagram_logo.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/instaicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/drawable/instaicon.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/vector_heart_red.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
12 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/white_grey_border_bottom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 | -
11 |
12 |
14 |
17 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/white_grey_border_top.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 | -
11 |
12 |
14 |
17 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/white_rounded_button.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
6 |
7 |
9 |
12 |
14 |
15 |
16 | -
17 |
18 |
20 |
23 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/actionbuttons.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
17 |
18 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_accountsettings.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
14 |
15 |
19 |
20 |
21 |
22 |
23 |
24 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_home.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
13 |
14 |
21 |
22 |
28 |
29 |
32 |
33 |
34 |
35 |
39 |
40 |
41 |
42 |
43 |
44 |
51 |
52 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_login.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
14 |
15 |
21 |
22 |
27 |
33 |
34 |
35 |
36 |
37 |
42 |
48 |
49 |
50 |
51 |
52 |
61 |
62 |
71 |
72 |
73 |
74 |
79 |
80 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_next.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
9 |
10 |
11 |
14 |
15 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
31 |
32 |
40 |
41 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_register.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
14 |
15 |
23 |
24 |
25 |
30 |
36 |
37 |
38 |
39 |
40 |
45 |
51 |
52 |
53 |
54 |
55 |
60 |
66 |
67 |
68 |
69 |
70 |
79 |
80 |
81 |
82 |
83 |
88 |
89 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_share.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
9 |
10 |
11 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_swipepic.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/dialog_confirm_password.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
16 |
17 |
24 |
25 |
28 |
29 |
40 |
41 |
51 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_camera.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
13 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_editprofile.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
9 |
10 |
14 |
15 |
16 |
17 |
18 |
19 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_gallery.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
23 |
24 |
28 |
29 |
30 |
35 |
36 |
41 |
42 |
43 |
44 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_home.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
13 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_messages.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
13 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_photo.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
17 |
18 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_profile.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
11 |
12 |
13 |
14 |
15 |
16 |
21 |
22 |
23 |
24 |
25 |
26 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_signout.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
11 |
12 |
19 |
20 |
30 |
31 |
32 |
33 |
34 |
39 |
40 |
50 |
51 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_swipepic.xml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
12 |
13 |
14 |
20 |
21 |
27 |
28 |
34 |
35 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_view_comments.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
10 |
11 |
12 |
13 |
14 |
15 |
21 |
22 |
26 |
27 |
28 |
29 |
30 |
36 |
37 |
38 |
49 |
50 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_view_post.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
11 |
12 |
13 |
14 |
15 |
16 |
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/layout_bottom_navigation_view.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
8 |
9 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/layout_bottom_tabs.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
9 |
10 |
13 |
14 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/layout_center_accountsettings.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
9 |
10 |
11 |
19 |
20 |
21 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/layout_center_profile.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
9 |
10 |
11 |
12 |
13 |
19 |
20 |
26 |
27 |
28 |
33 |
34 |
41 |
42 |
43 |
44 |
45 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
66 |
67 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/layout_center_viewpager.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
7 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/layout_comment.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
17 |
18 |
25 |
26 |
31 |
32 |
33 |
42 |
43 |
52 |
53 |
54 |
64 |
65 |
77 |
78 |
90 |
91 |
92 |
93 |
94 |
102 |
103 |
104 |
105 |
106 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/layout_grid_imageview.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
12 |
13 |
18 |
19 |
26 |
27 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/layout_top_tabs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
11 |
12 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/layout_view_post.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
10 |
11 |
14 |
15 |
16 |
20 |
21 |
30 |
31 |
32 |
43 |
44 |
45 |
53 |
54 |
55 |
56 |
62 |
63 |
69 |
70 |
75 |
76 |
84 |
85 |
93 |
94 |
95 |
96 |
105 |
106 |
107 |
108 |
116 |
117 |
124 |
125 |
134 |
135 |
144 |
145 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 |
162 |
163 |
164 |
165 |
166 |
167 |
168 |
169 |
170 |
171 |
172 |
173 |
174 |
175 |
176 |
177 |
178 |
179 |
180 |
181 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/popup.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/snippet_comments_toolbar.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
9 |
10 |
14 |
15 |
18 |
19 |
26 |
27 |
28 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/snippet_post_toolbar.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
10 |
11 |
15 |
16 |
19 |
20 |
26 |
27 |
28 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/snippet_top_accountsettingtoolbar.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
9 |
10 |
14 |
15 |
18 |
19 |
27 |
28 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/snippet_top_editprofiletoolbar.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
9 |
10 |
14 |
15 |
18 |
19 |
27 |
28 |
38 |
39 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/snippet_top_gallerytoolbar.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
9 |
10 |
14 |
15 |
18 |
19 |
26 |
27 |
37 |
38 |
39 |
40 |
41 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/snippet_top_nexttoolbar.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
9 |
10 |
14 |
15 |
18 |
19 |
26 |
27 |
28 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/snippet_top_profile.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
10 |
11 |
12 |
23 |
24 |
34 |
35 |
49 |
50 |
63 |
64 |
75 |
76 |
86 |
87 |
88 |
89 |
90 |
91 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/snippet_top_profilebar.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
9 |
10 |
14 |
15 |
18 |
19 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/usersview.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
14 |
15 |
23 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/bottom_navigation_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
8 |
9 |
10 |
11 | -
15 |
16 |
17 | -
21 |
22 |
23 | -
27 |
28 |
29 | -
33 |
34 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/menu_main.xml:
--------------------------------------------------------------------------------
1 |
5 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/profile_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
6 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/toolbar_search.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/app/src/main/res/values-w820dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 64dp
6 |
7 |
--------------------------------------------------------------------------------
/app/src/main/res/values/attrs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #4fc3f7
4 | #66000000
5 | #0093c4
6 | #66000000
7 |
8 | #bfbfbf
9 | #fff
10 | #000000
11 | #005ce6
12 |
13 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 16dp
4 | 16dp
5 | 16dp
6 | 8dp
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | InstaSwipe
3 |
4 |
5 | Edit Profile
6 | View Post
7 | Sign Out
8 | Profile
9 | View Comments
10 |
11 |
12 | ConfirmPaswordDialog
13 |
14 |
15 | Failed to Authenticate
16 | Authentication Success
17 |
18 |
19 | users
20 | user_account_settings
21 | photos
22 | user_photos
23 | username
24 | email
25 | display_name
26 | website
27 | description
28 | phone_number
29 | user_id
30 | likes
31 | caption
32 | date_created
33 | photo_id
34 | tags
35 | image_path
36 | comments
37 |
38 |
39 |
40 | new_photo
41 | profile_photo
42 |
43 |
44 | calling_activity
45 | selected_image
46 | selected_bitmap
47 | return_to_fragment
48 |
49 |
50 | activity_number
51 |
52 |
53 | Profile Activity
54 |
55 |
56 |
57 | GALLERY
58 | PHOTO
59 | Open Camera
60 | Next
61 | Share
62 | MainActivity
63 | Settings
64 | Hello World from section: %1$d
65 |
66 |
67 |
68 |
--------------------------------------------------------------------------------
/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
11 |
17 |
18 |
25 |
26 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/app/src/test/java/lcukerd/com/instagramclone/ExampleUnitTest.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instagramclone;
2 |
3 | import org.junit.Test;
4 |
5 | import static org.junit.Assert.assertEquals;
6 |
7 | /**
8 | * Example local unit test, which will execute on the development machine (host).
9 | *
10 | * @see Testing documentation
11 | */
12 | public class ExampleUnitTest {
13 | @Test
14 | public void addition_isCorrect() throws Exception {
15 | assertEquals(4, 2 + 2);
16 | }
17 | }
--------------------------------------------------------------------------------
/app/src/test/java/lcukerd/com/instaswipe/ExampleUnitTest.java:
--------------------------------------------------------------------------------
1 | package lcukerd.com.instaswipe;
2 |
3 | import org.junit.Test;
4 |
5 | import static org.junit.Assert.assertEquals;
6 |
7 | /**
8 | * Example local unit test, which will execute on the development machine (host).
9 | *
10 | * @see Testing documentation
11 | */
12 | public class ExampleUnitTest {
13 | @Test
14 | public void addition_isCorrect() throws Exception {
15 | assertEquals(4, 2 + 2);
16 | }
17 | }
--------------------------------------------------------------------------------
/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 |
3 | buildscript {
4 | repositories {
5 | jcenter()
6 | google()
7 | }
8 | dependencies {
9 | classpath 'com.android.tools.build:gradle:3.0.1'
10 | classpath 'com.google.gms:google-services:3.1.0'
11 |
12 | // NOTE: Do not place your application dependencies here; they belong
13 | // in the individual module build.gradle files
14 |
15 | }
16 | }
17 |
18 | allprojects {
19 | repositories {
20 | jcenter()
21 | maven { url "https://jitpack.io" }
22 | mavenCentral()
23 | maven { url 'https://maven.google.com' }
24 | maven { url 'https://dl.bintray.com/drummer-aidan/maven' }
25 | google()
26 | }
27 | }
28 |
29 | task clean(type: Delete) {
30 | delete rootProject.buildDir
31 | }
32 |
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Gradle settings configured through the IDE *will override*
5 | # any settings specified in this file.
6 |
7 | # For more details on how to configure your build environment visit
8 | # http://www.gradle.org/docs/current/userguide/build_environment.html
9 |
10 | # Specifies the JVM arguments used for the daemon process.
11 | # The setting is particularly useful for tweaking memory settings.
12 | org.gradle.jvmargs=-Xmx1536m
13 |
14 | # When configured, Gradle will run in incubating parallel mode.
15 | # This option should only be used with decoupled projects. More details, visit
16 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
17 | # org.gradle.parallel=true
18 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lcukerd/InstaSwipe/67b7e57e6cc3e48b7efb1fd05754cfc3d76daba9/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sun Jan 21 11:41:06 IST 2018
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
7 |
--------------------------------------------------------------------------------
/gradlew:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | ##############################################################################
4 | ##
5 | ## Gradle start up script for UN*X
6 | ##
7 | ##############################################################################
8 |
9 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
10 | DEFAULT_JVM_OPTS=""
11 |
12 | APP_NAME="Gradle"
13 | APP_BASE_NAME=`basename "$0"`
14 |
15 | # Use the maximum available, or set MAX_FD != -1 to use that value.
16 | MAX_FD="maximum"
17 |
18 | warn ( ) {
19 | echo "$*"
20 | }
21 |
22 | die ( ) {
23 | echo
24 | echo "$*"
25 | echo
26 | exit 1
27 | }
28 |
29 | # OS specific support (must be 'true' or 'false').
30 | cygwin=false
31 | msys=false
32 | darwin=false
33 | case "`uname`" in
34 | CYGWIN* )
35 | cygwin=true
36 | ;;
37 | Darwin* )
38 | darwin=true
39 | ;;
40 | MINGW* )
41 | msys=true
42 | ;;
43 | esac
44 |
45 | # Attempt to set APP_HOME
46 | # Resolve links: $0 may be a link
47 | PRG="$0"
48 | # Need this for relative symlinks.
49 | while [ -h "$PRG" ] ; do
50 | ls=`ls -ld "$PRG"`
51 | link=`expr "$ls" : '.*-> \(.*\)$'`
52 | if expr "$link" : '/.*' > /dev/null; then
53 | PRG="$link"
54 | else
55 | PRG=`dirname "$PRG"`"/$link"
56 | fi
57 | done
58 | SAVED="`pwd`"
59 | cd "`dirname \"$PRG\"`/" >/dev/null
60 | APP_HOME="`pwd -P`"
61 | cd "$SAVED" >/dev/null
62 |
63 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
64 |
65 | # Determine the Java command to use to start the JVM.
66 | if [ -n "$JAVA_HOME" ] ; then
67 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
68 | # IBM's JDK on AIX uses strange locations for the executables
69 | JAVACMD="$JAVA_HOME/jre/sh/java"
70 | else
71 | JAVACMD="$JAVA_HOME/bin/java"
72 | fi
73 | if [ ! -x "$JAVACMD" ] ; then
74 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
75 |
76 | Please set the JAVA_HOME variable in your environment to match the
77 | location of your Java installation."
78 | fi
79 | else
80 | JAVACMD="java"
81 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
82 |
83 | Please set the JAVA_HOME variable in your environment to match the
84 | location of your Java installation."
85 | fi
86 |
87 | # Increase the maximum file descriptors if we can.
88 | if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
89 | MAX_FD_LIMIT=`ulimit -H -n`
90 | if [ $? -eq 0 ] ; then
91 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
92 | MAX_FD="$MAX_FD_LIMIT"
93 | fi
94 | ulimit -n $MAX_FD
95 | if [ $? -ne 0 ] ; then
96 | warn "Could not set maximum file descriptor limit: $MAX_FD"
97 | fi
98 | else
99 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
100 | fi
101 | fi
102 |
103 | # For Darwin, add options to specify how the application appears in the dock
104 | if $darwin; then
105 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
106 | fi
107 |
108 | # For Cygwin, switch paths to Windows format before running java
109 | if $cygwin ; then
110 | APP_HOME=`cygpath --path --mixed "$APP_HOME"`
111 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
112 | JAVACMD=`cygpath --unix "$JAVACMD"`
113 |
114 | # We build the pattern for arguments to be converted via cygpath
115 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
116 | SEP=""
117 | for dir in $ROOTDIRSRAW ; do
118 | ROOTDIRS="$ROOTDIRS$SEP$dir"
119 | SEP="|"
120 | done
121 | OURCYGPATTERN="(^($ROOTDIRS))"
122 | # Add a user-defined pattern to the cygpath arguments
123 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then
124 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
125 | fi
126 | # Now convert the arguments - kludge to limit ourselves to /bin/sh
127 | i=0
128 | for arg in "$@" ; do
129 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
130 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
131 |
132 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
133 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
134 | else
135 | eval `echo args$i`="\"$arg\""
136 | fi
137 | i=$((i+1))
138 | done
139 | case $i in
140 | (0) set -- ;;
141 | (1) set -- "$args0" ;;
142 | (2) set -- "$args0" "$args1" ;;
143 | (3) set -- "$args0" "$args1" "$args2" ;;
144 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
145 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
146 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
147 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
148 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
149 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
150 | esac
151 | fi
152 |
153 | # Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
154 | function splitJvmOpts() {
155 | JVM_OPTS=("$@")
156 | }
157 | eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
158 | JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
159 |
160 | exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
161 |
--------------------------------------------------------------------------------
/gradlew.bat:
--------------------------------------------------------------------------------
1 | @if "%DEBUG%" == "" @echo off
2 | @rem ##########################################################################
3 | @rem
4 | @rem Gradle startup script for Windows
5 | @rem
6 | @rem ##########################################################################
7 |
8 | @rem Set local scope for the variables with windows NT shell
9 | if "%OS%"=="Windows_NT" setlocal
10 |
11 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
12 | set DEFAULT_JVM_OPTS=
13 |
14 | set DIRNAME=%~dp0
15 | if "%DIRNAME%" == "" set DIRNAME=.
16 | set APP_BASE_NAME=%~n0
17 | set APP_HOME=%DIRNAME%
18 |
19 | @rem Find java.exe
20 | if defined JAVA_HOME goto findJavaFromJavaHome
21 |
22 | set JAVA_EXE=java.exe
23 | %JAVA_EXE% -version >NUL 2>&1
24 | if "%ERRORLEVEL%" == "0" goto init
25 |
26 | echo.
27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
28 | echo.
29 | echo Please set the JAVA_HOME variable in your environment to match the
30 | echo location of your Java installation.
31 |
32 | goto fail
33 |
34 | :findJavaFromJavaHome
35 | set JAVA_HOME=%JAVA_HOME:"=%
36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
37 |
38 | if exist "%JAVA_EXE%" goto init
39 |
40 | echo.
41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
42 | echo.
43 | echo Please set the JAVA_HOME variable in your environment to match the
44 | echo location of your Java installation.
45 |
46 | goto fail
47 |
48 | :init
49 | @rem Get command-line arguments, handling Windowz variants
50 |
51 | if not "%OS%" == "Windows_NT" goto win9xME_args
52 | if "%@eval[2+2]" == "4" goto 4NT_args
53 |
54 | :win9xME_args
55 | @rem Slurp the command line arguments.
56 | set CMD_LINE_ARGS=
57 | set _SKIP=2
58 |
59 | :win9xME_args_slurp
60 | if "x%~1" == "x" goto execute
61 |
62 | set CMD_LINE_ARGS=%*
63 | goto execute
64 |
65 | :4NT_args
66 | @rem Get arguments from the 4NT Shell from JP Software
67 | set CMD_LINE_ARGS=%$
68 |
69 | :execute
70 | @rem Setup the command line
71 |
72 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
73 |
74 | @rem Execute Gradle
75 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
76 |
77 | :end
78 | @rem End local scope for the variables with windows NT shell
79 | if "%ERRORLEVEL%"=="0" goto mainEnd
80 |
81 | :fail
82 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
83 | rem the _cmd.exe /c_ return code!
84 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
85 | exit /b 1
86 |
87 | :mainEnd
88 | if "%OS%"=="Windows_NT" endlocal
89 |
90 | :omega
91 |
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/updates.txt:
--------------------------------------------------------------------------------
1 | Show group of pics (Sidecar)
2 | get to photo showed in swipepic in grid adapter when pressed back
3 | notify that more image will be there soon
--------------------------------------------------------------------------------