├── .idea ├── .name ├── copyright │ └── profiles_settings.xml ├── encodings.xml ├── vcs.xml ├── inspectionProfiles │ ├── profiles_settings.xml │ └── Project_Default.xml ├── dictionaries │ └── ND88.xml ├── modules.xml ├── runConfigurations.xml ├── compiler.xml ├── gradle.xml └── misc.xml ├── settings.gradle ├── app ├── .gitignore ├── release │ └── OreoWiFiPasswords.apk ├── src │ ├── main │ │ ├── res │ │ │ ├── drawable │ │ │ │ ├── intro_cab.png │ │ │ │ ├── intro_app_icon.png │ │ │ │ ├── intro_disclaimer.png │ │ │ │ ├── intro_quick_copy.png │ │ │ │ ├── intro_thank_you.png │ │ │ │ ├── intro_root_permission.png │ │ │ │ ├── scrollbar_thumb.xml │ │ │ │ ├── highlight_selected.xml │ │ │ │ └── highlight_selected_dark.xml │ │ │ ├── mipmap-hdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── drawable-hdpi │ │ │ │ ├── ic_action_done.png │ │ │ │ ├── ic_action_tag.png │ │ │ │ ├── ic_backspace.png │ │ │ │ ├── ic_action_reload.png │ │ │ │ ├── ic_action_share.png │ │ │ │ ├── ic_gesture_drag.png │ │ │ │ ├── ic_action_context_tag.png │ │ │ │ ├── ic_action_context_top.png │ │ │ │ ├── ic_action_search_open.png │ │ │ │ ├── ic_action_context_copy.png │ │ │ │ ├── ic_action_context_delete.png │ │ │ │ └── ic_action_search_close.png │ │ │ ├── drawable-mdpi │ │ │ │ ├── ic_action_done.png │ │ │ │ ├── ic_action_tag.png │ │ │ │ ├── ic_backspace.png │ │ │ │ ├── ic_action_reload.png │ │ │ │ ├── ic_action_share.png │ │ │ │ ├── ic_gesture_drag.png │ │ │ │ ├── ic_action_context_tag.png │ │ │ │ ├── ic_action_context_top.png │ │ │ │ ├── ic_action_search_open.png │ │ │ │ ├── ic_action_context_copy.png │ │ │ │ ├── ic_action_context_delete.png │ │ │ │ └── ic_action_search_close.png │ │ │ ├── drawable-xhdpi │ │ │ │ ├── ic_action_tag.png │ │ │ │ ├── ic_backspace.png │ │ │ │ ├── ic_action_done.png │ │ │ │ ├── ic_action_share.png │ │ │ │ ├── ic_gesture_drag.png │ │ │ │ ├── ic_action_reload.png │ │ │ │ ├── ic_action_context_copy.png │ │ │ │ ├── ic_action_context_tag.png │ │ │ │ ├── ic_action_context_top.png │ │ │ │ ├── ic_action_search_close.png │ │ │ │ ├── ic_action_search_open.png │ │ │ │ └── ic_action_context_delete.png │ │ │ ├── drawable-xxhdpi │ │ │ │ ├── ic_backspace.png │ │ │ │ ├── ic_action_done.png │ │ │ │ ├── ic_action_tag.png │ │ │ │ ├── ic_action_reload.png │ │ │ │ ├── ic_action_share.png │ │ │ │ ├── ic_gesture_drag.png │ │ │ │ ├── ic_action_context_copy.png │ │ │ │ ├── ic_action_context_tag.png │ │ │ │ ├── ic_action_context_top.png │ │ │ │ ├── ic_action_search_close.png │ │ │ │ ├── ic_action_search_open.png │ │ │ │ └── ic_action_context_delete.png │ │ │ ├── mipmap-xxxhdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── drawable-xxxhdpi │ │ │ │ ├── ic_action_tag.png │ │ │ │ ├── ic_backspace.png │ │ │ │ ├── ic_action_done.png │ │ │ │ ├── ic_action_reload.png │ │ │ │ ├── ic_action_share.png │ │ │ │ ├── ic_gesture_drag.png │ │ │ │ ├── ic_action_context_tag.png │ │ │ │ ├── ic_action_context_top.png │ │ │ │ ├── ic_action_search_open.png │ │ │ │ ├── ic_action_context_copy.png │ │ │ │ ├── ic_action_search_close.png │ │ │ │ └── ic_action_context_delete.png │ │ │ ├── anim │ │ │ │ ├── layout_left_to_right_slide.xml │ │ │ │ ├── activity_slide_in_up.xml │ │ │ │ ├── dialog_slide_in_bottom.xml │ │ │ │ ├── dialog_slide_out_bottom.xml │ │ │ │ ├── activity_slide_out_down.xml │ │ │ │ ├── left_in.xml │ │ │ │ ├── left_out.xml │ │ │ │ ├── right_in.xml │ │ │ │ ├── right_out.xml │ │ │ │ ├── slide_right.xml │ │ │ │ ├── shake.xml │ │ │ │ ├── scale_from_top_right_corner.xml │ │ │ │ ├── scale_to_top_right_corner.xml │ │ │ │ ├── simple_grow.xml │ │ │ │ ├── shrink_and_fold_out.xml │ │ │ │ └── shrink_and_fold_in.xml │ │ │ ├── values-w820dp │ │ │ │ └── dimens.xml │ │ │ ├── menu │ │ │ │ ├── menu_settings.xml │ │ │ │ ├── menu_context_archive.xml │ │ │ │ ├── menu_main.xml │ │ │ │ ├── menu_context.xml │ │ │ │ └── menu_wifi_list_fragment.xml │ │ │ ├── values-v21 │ │ │ │ └── styles.xml │ │ │ ├── values │ │ │ │ ├── integers.xml │ │ │ │ ├── colors.xml │ │ │ │ ├── dimens.xml │ │ │ │ ├── styles.xml │ │ │ │ └── strings.xml │ │ │ ├── drawable-v21 │ │ │ │ ├── highlight_selected.xml │ │ │ │ └── highlight_selected_dark.xml │ │ │ ├── layout │ │ │ │ ├── app_bar.xml │ │ │ │ ├── activity_settings.xml │ │ │ │ ├── dialog_share_warning.xml │ │ │ │ ├── fragment_wifi_list.xml │ │ │ │ ├── activity_main.xml │ │ │ │ ├── dialog_input.xml │ │ │ │ ├── wifi_entry_row.xml │ │ │ │ └── dialog_about.xml │ │ │ ├── transition │ │ │ │ ├── activity_slide_left.xml │ │ │ │ └── activity_slide_right.xml │ │ │ └── xml │ │ │ │ └── preferences.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── pithsoftware │ │ │ │ └── wifipasswords │ │ │ │ ├── dialogs │ │ │ │ ├── CustomAlertDialogListener.java │ │ │ │ ├── InputDialogListener.java │ │ │ │ ├── CustomAlertDialogFragment.java │ │ │ │ ├── AboutDialogFragment.java │ │ │ │ └── InputDialogFragment.java │ │ │ │ ├── recycler │ │ │ │ ├── ItemDragListener.java │ │ │ │ ├── ItemTouchHelperAdapter.java │ │ │ │ ├── WifiListLoadedListener.java │ │ │ │ ├── MyTouchHelperCallback.java │ │ │ │ ├── RecyclerTouchListener.java │ │ │ │ └── WifiListAdapter.java │ │ │ │ ├── extras │ │ │ │ ├── RequestCodes.java │ │ │ │ ├── RootCheck.java │ │ │ │ ├── FlingBehavior.java │ │ │ │ ├── ScrollAwareFABBehavior.java │ │ │ │ ├── AutoUpdateList.java │ │ │ │ ├── MyApplication.java │ │ │ │ └── AppCompatPreferenceActivity.java │ │ │ │ ├── activities │ │ │ │ ├── IntroActivity.java │ │ │ │ ├── MainActivity.java │ │ │ │ └── SettingsActivity.java │ │ │ │ ├── pojo │ │ │ │ └── WifiEntry.java │ │ │ │ └── database │ │ │ │ └── PasswordDB.java │ │ └── AndroidManifest.xml │ └── androidTest │ │ └── java │ │ └── com │ │ └── pithsoftware │ │ └── wifipasswords │ │ └── ApplicationTest.java ├── proguard-rules.pro ├── build.gradle └── app.iml ├── list-dark.png ├── list-new.png ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── RootShell-1.6-release ├── build.gradle ├── RootShell-1.6-release.aar └── RootShell-1.6-release.iml ├── .gitignore ├── gradle.properties ├── WifiPasswords.iml ├── gradlew.bat ├── README.md └── gradlew /.idea/.name: -------------------------------------------------------------------------------- 1 | WifiPasswords -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app', ':RootShell-1.6-release' 2 | -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | /gradle.properties 3 | /fabric.properties 4 | /*.apk 5 | -------------------------------------------------------------------------------- /list-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/list-dark.png -------------------------------------------------------------------------------- /list-new.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/list-new.png -------------------------------------------------------------------------------- /.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /app/release/OreoWiFiPasswords.apk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/release/OreoWiFiPasswords.apk -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /RootShell-1.6-release/build.gradle: -------------------------------------------------------------------------------- 1 | configurations.maybeCreate("default") 2 | artifacts.add("default", file('RootShell-1.6-release.aar')) -------------------------------------------------------------------------------- /app/src/main/res/drawable/intro_cab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable/intro_cab.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .gradle 2 | /local.properties 3 | /.idea/workspace.xml 4 | /.idea/libraries 5 | .DS_Store 6 | /build 7 | /captures 8 | app/release/ 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/intro_app_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable/intro_app_icon.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/intro_disclaimer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable/intro_disclaimer.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/intro_quick_copy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable/intro_quick_copy.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/intro_thank_you.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable/intro_thank_you.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /RootShell-1.6-release/RootShell-1.6-release.aar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/RootShell-1.6-release/RootShell-1.6-release.aar -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_action_done.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_action_done.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_action_tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_action_tag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_backspace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_backspace.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_action_done.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_action_done.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_action_tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_action_tag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_backspace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_backspace.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_action_tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_action_tag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_backspace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_backspace.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_backspace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_backspace.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_action_reload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_action_reload.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_action_share.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_action_share.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_gesture_drag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_gesture_drag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_action_reload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_action_reload.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_action_share.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_action_share.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_gesture_drag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_gesture_drag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_action_done.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_action_done.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_action_share.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_action_share.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_gesture_drag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_gesture_drag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_action_done.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_action_done.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_action_tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_action_tag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_action_tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_action_tag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_backspace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_backspace.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/intro_root_permission.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable/intro_root_permission.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_action_reload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_action_reload.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_action_reload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_action_reload.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_action_share.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_action_share.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_gesture_drag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_gesture_drag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_action_done.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_action_done.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_action_reload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_action_reload.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_action_share.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_action_share.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_gesture_drag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_gesture_drag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_action_context_tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_action_context_tag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_action_context_top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_action_context_top.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_action_search_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_action_search_open.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_action_context_tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_action_context_tag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_action_context_top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_action_context_top.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_action_search_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_action_search_open.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_action_context_copy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_action_context_copy.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_action_context_delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_action_context_delete.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-hdpi/ic_action_search_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-hdpi/ic_action_search_close.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_action_context_copy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_action_context_copy.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_action_context_delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_action_context_delete.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-mdpi/ic_action_search_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-mdpi/ic_action_search_close.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_action_context_copy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_action_context_copy.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_action_context_tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_action_context_tag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_action_context_top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_action_context_top.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_action_search_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_action_search_close.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_action_search_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_action_search_open.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_action_context_copy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_action_context_copy.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_action_context_tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_action_context_tag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_action_context_top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_action_context_top.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_action_search_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_action_search_close.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_action_search_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_action_search_open.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_action_context_tag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_action_context_tag.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_action_context_top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_action_context_top.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_action_search_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_action_search_open.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/ic_action_context_delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xhdpi/ic_action_context_delete.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_action_context_delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxhdpi/ic_action_context_delete.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_action_context_copy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_action_context_copy.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_action_search_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_action_search_close.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxxhdpi/ic_action_context_delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/David-Mawer/OreoWifiPasswords/HEAD/app/src/main/res/drawable-xxxhdpi/ic_action_context_delete.png -------------------------------------------------------------------------------- /.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/src/main/res/anim/layout_left_to_right_slide.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/java/com/pithsoftware/wifipasswords/dialogs/CustomAlertDialogListener.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords.dialogs; 2 | 3 | 4 | public interface CustomAlertDialogListener { 5 | 6 | void showPathErrorDialog(); 7 | 8 | void showRootErrorDialog(); 9 | } 10 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Nov 20 22:11:43 CAT 2017 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 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | -------------------------------------------------------------------------------- /app/src/main/java/com/pithsoftware/wifipasswords/recycler/ItemDragListener.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords.recycler; 2 | 3 | import android.support.v7.widget.RecyclerView; 4 | 5 | public interface ItemDragListener { 6 | 7 | void onStartDrag(RecyclerView.ViewHolder viewHolder); 8 | } 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/scrollbar_thumb.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/dictionaries/ND88.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | appbar 5 | crashlytics 6 | glitchy 7 | passcode 8 | snackbar 9 | ssid 10 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/res/anim/activity_slide_in_up.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/anim/dialog_slide_in_bottom.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/anim/dialog_slide_out_bottom.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/anim/activity_slide_out_down.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/anim/left_in.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/anim/left_out.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/anim/right_in.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/anim/right_out.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/anim/slide_right.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 8 | -------------------------------------------------------------------------------- /app/src/main/java/com/pithsoftware/wifipasswords/recycler/ItemTouchHelperAdapter.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords.recycler; 2 | 3 | import com.pithsoftware.wifipasswords.pojo.WifiEntry; 4 | 5 | public interface ItemTouchHelperAdapter { 6 | 7 | boolean onItemMove(int fromPosition, int toPosition); 8 | 9 | WifiEntry onItemDismiss(int position); 10 | 11 | } 12 | -------------------------------------------------------------------------------- /app/src/main/java/com/pithsoftware/wifipasswords/recycler/WifiListLoadedListener.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords.recycler; 2 | 3 | import com.pithsoftware.wifipasswords.pojo.WifiEntry; 4 | 5 | import java.util.ArrayList; 6 | 7 | public interface WifiListLoadedListener { 8 | 9 | public void onWifiListLoaded(ArrayList listWifi, int numOfEntries, boolean resetDB); 10 | 11 | } 12 | -------------------------------------------------------------------------------- /app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/menu/menu_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/anim/shake.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/values-v21/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/res/anim/scale_from_top_right_corner.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/anim/scale_to_top_right_corner.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/values/integers.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 200 6 | 350 7 | 350 8 | 350 9 | -1500 10 | 11 | -------------------------------------------------------------------------------- /app/src/main/java/com/pithsoftware/wifipasswords/dialogs/InputDialogListener.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords.dialogs; 2 | 3 | 4 | import com.pithsoftware.wifipasswords.pojo.WifiEntry; 5 | 6 | import java.util.ArrayList; 7 | 8 | public interface InputDialogListener { 9 | 10 | void onSubmitAddDialog(String title, String password); 11 | 12 | void onSubmitTagDialog(String tag, ArrayList listWifi, ArrayList positions); 13 | } 14 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/highlight_selected.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/androidTest/java/com/pithsoftware/wifipasswords/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /app/src/main/res/drawable/highlight_selected_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/anim/simple_grow.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/menu/menu_context_archive.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 11 | 12 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /.idea/runConfigurations.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-v21/highlight_selected.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /app/src/main/res/layout/app_bar.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-v21/highlight_selected_dark.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /app/src/main/res/menu/menu_main.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 11 | 12 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /.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 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 9 | 10 | 15 | 16 | 21 | 22 | -------------------------------------------------------------------------------- /app/src/main/res/menu/menu_context.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 11 | 12 | 15 | 16 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/res/anim/shrink_and_fold_out.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 22 | -------------------------------------------------------------------------------- /app/src/main/res/anim/shrink_and_fold_in.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 24 | 25 | -------------------------------------------------------------------------------- /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 | # Default value: -Xmx10248m -XX:MaxPermSize=256m 13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 14 | 15 | # When configured, Gradle will run in incubating parallel mode. 16 | # This option should only be used with decoupled projects. More details, visit 17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 18 | # org.gradle.parallel=true -------------------------------------------------------------------------------- /.idea/gradle.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/java/com/pithsoftware/wifipasswords/extras/RequestCodes.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords.extras; 2 | 3 | 4 | public class RequestCodes { 5 | 6 | public static final int ACTIVITY_INTRO_CODE = 30; 7 | public static final int ACTIVITY_SETTINGS_CODE = 42; 8 | 9 | public static final int SETTINGS_PATH_ERROR_CODE = 50; 10 | 11 | public static final int DIALOG_PATH_ERROR_CODE = 51; 12 | public static final int DIALOG_LOAD_WARNING_CODE = 52; 13 | public static final int DIALOG_ADD_CODE = 53; 14 | public static final int DIALOG_TAG_CODE = 54; 15 | 16 | public static final int DIALOG_CANCEL = 98; 17 | public static final int DIALOG_CONFIRM = 99; 18 | 19 | public static final int HIDE_PASS = 996; 20 | public static final int DARK_THEME = 997; 21 | public static final int SHOW_NO_PASSWORD_CODE = 998; 22 | public static final int RESET_TO_DEFAULT = 999; 23 | 24 | } 25 | -------------------------------------------------------------------------------- /WifiPasswords.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /app/src/main/res/transition/activity_slide_left.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /app/src/main/res/transition/activity_slide_right.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 14 | -------------------------------------------------------------------------------- /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 D:\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 | -keep class android.support.v7.widget.SearchView { *; } 19 | -dontwarn java.lang.invoke.* 20 | -keep class butterknife.** { *; } 21 | -dontwarn butterknife.internal.** 22 | -keep class **$$ViewBinder { *; } 23 | 24 | -keepclasseswithmembernames class * { 25 | @butterknife.* ; 26 | } 27 | 28 | -keepclasseswithmembernames class * { 29 | @butterknife.* ; 30 | } 31 | 32 | -keepattributes SourceFile,LineNumberTable -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | #1976D2 6 | #1565C0 7 | #BBDEFB 8 | #FF9800 9 | #B6B6B6 10 | #212121 11 | #727272 12 | #B6B6B6 13 | 14 | #0d47a1 15 | #f44336 16 | #BDBDBD 17 | #000000 18 | #FFFFFF 19 | 20 | 21 | #212121 22 | #000000 23 | #303030 24 | #424242 25 | #d50000 26 | #FFFFFF 27 | #727272 28 | 29 | -------------------------------------------------------------------------------- /RootShell-1.6-release/RootShell-1.6-release.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | 9 | 10 | 11 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | 24dp 7 | 0dp 8 | 8dp 9 | 10 | 16dp 11 | 4dp 12 | 8dp 13 | 16sp 14 | 14sp 15 | 72dp 16 | 17 | 16dp 18 | 16dp 19 | 4dp 20 | 21 | 50dp 22 | 4dp 23 | 4dp 24 | 4dp 25 | 4dp 26 | 4dp 27 | 10dp 28 | 29 | 30 | -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 12 | 15 | 16 | 17 | 18 | 19 | 20 | 23 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /app/src/main/res/layout/dialog_share_warning.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 14 | 15 | 23 | 24 | 32 | 33 | -------------------------------------------------------------------------------- /app/src/main/res/layout/fragment_wifi_list.xml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 20 | 21 | 22 | 23 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /app/src/main/java/com/pithsoftware/wifipasswords/extras/RootCheck.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords.extras; 2 | 3 | import android.util.Log; 4 | 5 | import com.stericson.RootShell.RootShell; 6 | 7 | public class RootCheck { 8 | 9 | private static final String TAG = "ROOT"; 10 | 11 | /***********************************************************************/ 12 | //Root Check method 13 | //Credit: http://muzikant-android.blogspot.co.il/2011/02/how-to-get-root-access-and-execute.html 14 | /***********************************************************************/ 15 | public static boolean canRunRootCommands() { 16 | boolean retval; 17 | 18 | try { 19 | if (!RootShell.isRootAvailable()) { 20 | retval = false; 21 | Log.d(TAG, "Can't get root access or denied by user"); 22 | } else if (RootShell.isAccessGiven()) { 23 | retval = true; 24 | Log.d(TAG, "Root access granted"); 25 | } else { 26 | retval = false; 27 | Log.d(TAG, "Root access rejected"); 28 | } 29 | } catch (Exception e) { 30 | // Can't get root ! 31 | // Probably broken pipe exception on trying to write to output stream (os) after su failed, meaning that the device is not rooted 32 | 33 | retval = false; 34 | Log.d(TAG, "Root access rejected [" + e.getClass().getName() + "] : " + e.getMessage()); 35 | } 36 | 37 | return retval; 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /app/src/main/java/com/pithsoftware/wifipasswords/recycler/MyTouchHelperCallback.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords.recycler; 2 | 3 | import android.support.v7.widget.RecyclerView; 4 | import android.support.v7.widget.helper.ItemTouchHelper; 5 | 6 | 7 | public class MyTouchHelperCallback extends ItemTouchHelper.Callback { 8 | 9 | final ItemTouchHelperAdapter mAdapter; 10 | 11 | public MyTouchHelperCallback(ItemTouchHelperAdapter adapter) { 12 | mAdapter = adapter; 13 | } 14 | 15 | 16 | @Override 17 | public int getMovementFlags(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) { 18 | 19 | int dragFlags = ItemTouchHelper.UP | ItemTouchHelper.DOWN; 20 | int swipeFlags = ItemTouchHelper.START | ItemTouchHelper.END; 21 | 22 | return makeMovementFlags(dragFlags, swipeFlags); 23 | } 24 | 25 | @Override 26 | public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) { 27 | 28 | mAdapter.onItemMove(viewHolder.getAdapterPosition(), target.getAdapterPosition()); 29 | return true; 30 | } 31 | 32 | @Override 33 | public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) { 34 | 35 | mAdapter.onItemDismiss(viewHolder.getAdapterPosition()); 36 | } 37 | 38 | 39 | //used for ItemTouchHelperAdapter 40 | @Override 41 | public boolean isLongPressDragEnabled() { 42 | return false; 43 | } 44 | 45 | @Override 46 | public boolean isItemViewSwipeEnabled() { 47 | return false; 48 | } 49 | 50 | 51 | } 52 | -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- 1 | buildscript { 2 | } 3 | apply plugin: 'com.android.application' 4 | apply plugin: 'signing' 5 | 6 | android { 7 | lintOptions { 8 | checkReleaseBuilds false 9 | } 10 | signingConfigs { 11 | release { 12 | keyAlias 'WifiPasswords' 13 | storeFile file('D:/Projects/AndroidSign/AndroidKeystore.jks') 14 | } 15 | } 16 | compileSdkVersion 24 17 | buildToolsVersion '26.0.2' 18 | defaultConfig { 19 | applicationId "com.pithsoftware.wifipasswords" 20 | minSdkVersion 16 21 | targetSdkVersion 24 22 | versionCode 17 23 | versionName "2.1.5" 24 | } 25 | buildTypes { 26 | release { 27 | minifyEnabled true 28 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 29 | signingConfig signingConfigs.release 30 | } 31 | } 32 | compileOptions { 33 | sourceCompatibility JavaVersion.VERSION_1_8 34 | targetCompatibility JavaVersion.VERSION_1_8 35 | } 36 | } 37 | 38 | dependencies { 39 | implementation fileTree(include: ['*.jar'], dir: 'libs') 40 | implementation 'com.android.support:appcompat-v7:24.2.1' 41 | implementation 'com.android.support:recyclerview-v7:24.2.1' 42 | implementation 'com.android.support:design:24.2.1' 43 | implementation 'com.android.support:cardview-v7:24.2.1' 44 | implementation 'me.zhanghai.android.materialprogressbar:library:1.1.4' 45 | implementation 'com.github.paolorotolo:appintro:3.2.0' 46 | implementation 'com.github.traex.rippleeffect:library:1.3' 47 | annotationProcessor 'com.jakewharton:butterknife:7.0.1' 48 | implementation 'com.jakewharton:butterknife:7.0.1' 49 | implementation project(':RootShell-1.6-release') 50 | } -------------------------------------------------------------------------------- /app/src/main/res/menu/menu_wifi_list_fragment.xml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 15 | 16 | 22 | 23 | 28 | 29 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 47 | 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 11 | 18 | 19 | 22 | 23 | 24 | 25 | 30 | 31 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 21 | 31 | 32 | 33 | 34 | 35 | 36 | 38 | -------------------------------------------------------------------------------- /app/src/main/java/com/pithsoftware/wifipasswords/extras/FlingBehavior.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords.extras; 2 | 3 | import android.content.Context; 4 | import android.support.design.widget.AppBarLayout; 5 | import android.support.design.widget.CoordinatorLayout; 6 | import android.support.v7.widget.RecyclerView; 7 | import android.util.AttributeSet; 8 | import android.view.View; 9 | 10 | //Layout Behavior class to fix AppBarLayout + RecyclerView fling issue 11 | // Issue link: https://code.google.com/p/android/issues/detail?id=177729 12 | 13 | public final class FlingBehavior extends AppBarLayout.Behavior { 14 | private static final int TOP_CHILD_FLING_THRESHOLD = 3; 15 | private boolean isPositive; 16 | 17 | public FlingBehavior() { 18 | } 19 | 20 | public FlingBehavior(Context context, AttributeSet attrs) { 21 | super(context, attrs); 22 | } 23 | 24 | @Override 25 | public boolean onNestedFling(CoordinatorLayout coordinatorLayout, AppBarLayout child, View target, float velocityX, float velocityY, boolean consumed) { 26 | if (velocityY > 0 && !isPositive || velocityY < 0 && isPositive) { 27 | velocityY = velocityY * -1; 28 | } 29 | if (target instanceof RecyclerView && velocityY < 0) { 30 | final RecyclerView recyclerView = (RecyclerView) target; 31 | final View firstChild = recyclerView.getChildAt(0); 32 | final int childAdapterPosition = recyclerView.getChildAdapterPosition(firstChild); 33 | consumed = childAdapterPosition > TOP_CHILD_FLING_THRESHOLD; 34 | } 35 | return super.onNestedFling(coordinatorLayout, child, target, velocityX, velocityY, consumed); 36 | } 37 | 38 | @Override 39 | public void onNestedPreScroll(CoordinatorLayout coordinatorLayout, AppBarLayout child, View target, int dx, int dy, int[] consumed) { 40 | super.onNestedPreScroll(coordinatorLayout, child, target, dx, dy, consumed); 41 | isPositive = dy > 0; 42 | } 43 | } -------------------------------------------------------------------------------- /app/src/main/java/com/pithsoftware/wifipasswords/extras/ScrollAwareFABBehavior.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords.extras; 2 | 3 | 4 | import android.content.Context; 5 | import android.support.design.widget.CoordinatorLayout; 6 | import android.support.design.widget.FloatingActionButton; 7 | import android.support.v4.view.ViewCompat; 8 | import android.util.AttributeSet; 9 | import android.view.View; 10 | 11 | public class ScrollAwareFABBehavior extends FloatingActionButton.Behavior { 12 | 13 | public ScrollAwareFABBehavior(Context context, AttributeSet attrs) { 14 | super(); 15 | } 16 | 17 | @Override 18 | public boolean onStartNestedScroll(final CoordinatorLayout coordinatorLayout, 19 | final FloatingActionButton child, 20 | final View directTargetChild, final View target, final int nestedScrollAxes) { 21 | // Ensure we react to vertical scrolling 22 | return nestedScrollAxes == ViewCompat.SCROLL_AXIS_VERTICAL 23 | || super.onStartNestedScroll(coordinatorLayout, child, 24 | directTargetChild, target, nestedScrollAxes); 25 | } 26 | 27 | @Override 28 | public void onNestedScroll(final CoordinatorLayout coordinatorLayout, 29 | final FloatingActionButton child, 30 | final View target, final int dxConsumed, final int dyConsumed, 31 | final int dxUnconsumed, final int dyUnconsumed) { 32 | super.onNestedScroll(coordinatorLayout, child, target, dxConsumed, dyConsumed, 33 | dxUnconsumed, dyUnconsumed); 34 | if (dyConsumed > 0 && child.getVisibility() == View.VISIBLE && child.isEnabled()) { 35 | // User scrolled down and the FAB is currently visible -> hide the FAB 36 | child.hide(); 37 | } else if (dyConsumed < 0 && child.getVisibility() != View.VISIBLE && child.isEnabled()) { 38 | // User scrolled up and the FAB is currently not visible -> show the FAB 39 | child.show(); 40 | } 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /app/src/main/java/com/pithsoftware/wifipasswords/extras/AutoUpdateList.java: -------------------------------------------------------------------------------- 1 | package com.pithsoftware.wifipasswords.extras; 2 | 3 | import android.content.Context; 4 | import android.content.SharedPreferences; 5 | import android.preference.PreferenceManager; 6 | import android.support.v4.app.FragmentManager; 7 | 8 | import com.pithsoftware.wifipasswords.R; 9 | import com.pithsoftware.wifipasswords.activities.MainActivity; 10 | import com.pithsoftware.wifipasswords.fragments.WifiListFragment; 11 | 12 | 13 | public class AutoUpdateList { 14 | 15 | private static final String DEFAULT_UPDATE = "1"; 16 | private static final String LAST_UPDATE = "last_update"; 17 | private static final int DISABLED = -1; 18 | 19 | 20 | public static void update(Context context, FragmentManager fragmentManager) { 21 | 22 | if(!MyApplication.sShouldAutoUpdateList) 23 | return; 24 | 25 | SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context); 26 | SharedPreferences.Editor editor = sharedPreferences.edit(); 27 | 28 | long currentTime = System.currentTimeMillis(); 29 | long lastUpdateTime = sharedPreferences.getLong(LAST_UPDATE, 0); 30 | 31 | if(lastUpdateTime == 0) { 32 | lastUpdateTime = currentTime; 33 | editor.putLong(LAST_UPDATE, lastUpdateTime).apply(); 34 | } 35 | 36 | int updateOption = Integer.parseInt(sharedPreferences.getString(context.getString(R.string.pref_auto_update_key), DEFAULT_UPDATE)); 37 | 38 | if(updateOption != DISABLED) { 39 | MyApplication.sShouldAutoUpdateList = false; 40 | 41 | if(currentTime > lastUpdateTime + getMillisUntilPrompt(updateOption)) { 42 | 43 | editor.putLong(LAST_UPDATE, System.currentTimeMillis()).apply(); 44 | ((WifiListFragment) fragmentManager 45 | .findFragmentByTag(MainActivity.WIFI_LIST_FRAGMENT_TAG)) 46 | .loadFromFile(false); 47 | } 48 | 49 | } 50 | } 51 | 52 | 53 | private static int getMillisUntilPrompt(int days) { 54 | return days * 24 * 60 * 60 * 1000; 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /app/src/main/res/layout/dialog_input.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | 13 | 22 | 23 | 24 | 25 | 29 | 30 | 39 | 40 | 41 | 42 | 47 | 48 |