├── TODO
├── settings.gradle
├── gearshift
├── .gitignore
├── src
│ ├── main
│ │ ├── ic_launcher.xcf
│ │ ├── ic_launcher-hdpi.xcf
│ │ ├── ic_launcher-ldpi.xcf
│ │ ├── ic_launcher-mdpi.xcf
│ │ ├── ic_launcher-web.png
│ │ ├── ic_launcher-xhdpi.xcf
│ │ ├── ic_launcher-xxhdpi.xcf
│ │ ├── res
│ │ │ ├── drawable-hdpi
│ │ │ │ ├── watermark.png
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── drawer_shadow.9.png
│ │ │ │ ├── ic_add_white_24dp.png
│ │ │ │ ├── ic_close_white_24dp.png
│ │ │ │ ├── ic_done_white_24dp.png
│ │ │ │ ├── ic_info_black_18dp.png
│ │ │ │ ├── ic_pause_white_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_star_white_24dp.png
│ │ │ │ ├── search_bg_shadow.9.png
│ │ │ │ ├── ic_forward_white_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_remove_white_24dp.png
│ │ │ │ ├── ic_search_white_24dp.png
│ │ │ │ ├── ic_arrow_back_white_24dp.png
│ │ │ │ ├── ic_play_arrow_white_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_settings_black_18dp.png
│ │ │ │ ├── ic_star_half_white_24dp.png
│ │ │ │ ├── ic_star_outline_white_24dp.png
│ │ │ │ ├── ic_arrow_drop_up_grey600_36dp.png
│ │ │ │ ├── ic_expand_less_grey600_36dp.png
│ │ │ │ ├── ic_expand_more_grey600_36dp.png
│ │ │ │ ├── ic_folder_open_grey600_36dp.png
│ │ │ │ ├── ic_my_library_add_white_24dp.png
│ │ │ │ ├── ic_settings_remote_black_18dp.png
│ │ │ │ ├── ic_arrow_drop_down_grey600_36dp.png
│ │ │ │ ├── ic_colorpicker_swatch_selected.png
│ │ │ │ └── ic_arrow_drop_down_circle_white_24dp.png
│ │ │ ├── drawable-mdpi
│ │ │ │ ├── watermark.png
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── drawer_shadow.9.png
│ │ │ │ ├── ic_add_white_24dp.png
│ │ │ │ ├── ic_close_white_24dp.png
│ │ │ │ ├── ic_done_white_24dp.png
│ │ │ │ ├── ic_info_black_18dp.png
│ │ │ │ ├── ic_pause_white_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_star_white_24dp.png
│ │ │ │ ├── ic_forward_white_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_remove_white_24dp.png
│ │ │ │ ├── ic_search_white_24dp.png
│ │ │ │ ├── list_activated_holo.9.png
│ │ │ │ ├── ic_arrow_back_white_24dp.png
│ │ │ │ ├── ic_play_arrow_white_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_settings_black_18dp.png
│ │ │ │ ├── ic_star_half_white_24dp.png
│ │ │ │ ├── ic_star_outline_white_24dp.png
│ │ │ │ ├── ic_arrow_drop_up_grey600_36dp.png
│ │ │ │ ├── ic_expand_less_grey600_36dp.png
│ │ │ │ ├── ic_expand_more_grey600_36dp.png
│ │ │ │ ├── ic_folder_open_grey600_36dp.png
│ │ │ │ ├── ic_my_library_add_white_24dp.png
│ │ │ │ ├── ic_settings_remote_black_18dp.png
│ │ │ │ ├── ic_arrow_drop_down_grey600_36dp.png
│ │ │ │ ├── ic_colorpicker_swatch_selected.png
│ │ │ │ └── ic_arrow_drop_down_circle_white_24dp.png
│ │ │ ├── drawable-ldpi
│ │ │ │ └── ic_launcher.png
│ │ │ ├── drawable-xhdpi
│ │ │ │ ├── watermark.png
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── drawer_shadow.9.png
│ │ │ │ ├── ic_add_white_24dp.png
│ │ │ │ ├── ic_done_white_24dp.png
│ │ │ │ ├── ic_info_black_18dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_star_white_24dp.png
│ │ │ │ ├── ic_close_white_24dp.png
│ │ │ │ ├── ic_pause_white_24dp.png
│ │ │ │ ├── ic_remove_white_24dp.png
│ │ │ │ ├── ic_search_white_24dp.png
│ │ │ │ ├── ic_forward_white_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_settings_black_18dp.png
│ │ │ │ ├── ic_star_half_white_24dp.png
│ │ │ │ ├── ic_arrow_back_white_24dp.png
│ │ │ │ ├── ic_play_arrow_white_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_expand_less_grey600_36dp.png
│ │ │ │ ├── ic_expand_more_grey600_36dp.png
│ │ │ │ ├── ic_folder_open_grey600_36dp.png
│ │ │ │ ├── ic_my_library_add_white_24dp.png
│ │ │ │ ├── ic_star_outline_white_24dp.png
│ │ │ │ ├── ic_arrow_drop_up_grey600_36dp.png
│ │ │ │ ├── ic_settings_remote_black_18dp.png
│ │ │ │ ├── ic_arrow_drop_down_grey600_36dp.png
│ │ │ │ └── ic_arrow_drop_down_circle_white_24dp.png
│ │ │ ├── drawable-xxhdpi
│ │ │ │ ├── watermark.png
│ │ │ │ ├── about_icon.png
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── drawer_shadow.9.png
│ │ │ │ ├── ic_action_expand.png
│ │ │ │ ├── ic_add_white_24dp.png
│ │ │ │ ├── ic_action_collapse.png
│ │ │ │ ├── ic_close_white_24dp.png
│ │ │ │ ├── ic_done_white_24dp.png
│ │ │ │ ├── ic_info_black_18dp.png
│ │ │ │ ├── ic_pause_white_24dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_star_white_24dp.png
│ │ │ │ ├── ic_forward_white_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_remove_white_24dp.png
│ │ │ │ ├── ic_search_white_24dp.png
│ │ │ │ ├── ic_settings_black_18dp.png
│ │ │ │ ├── ic_arrow_back_white_24dp.png
│ │ │ │ ├── ic_play_arrow_white_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_star_half_white_24dp.png
│ │ │ │ ├── ic_expand_less_grey600_36dp.png
│ │ │ │ ├── ic_expand_more_grey600_36dp.png
│ │ │ │ ├── ic_folder_open_grey600_36dp.png
│ │ │ │ ├── ic_star_outline_white_24dp.png
│ │ │ │ ├── ic_arrow_drop_up_grey600_36dp.png
│ │ │ │ ├── ic_my_library_add_white_24dp.png
│ │ │ │ ├── ic_settings_remote_black_18dp.png
│ │ │ │ ├── ic_arrow_drop_down_grey600_36dp.png
│ │ │ │ ├── ic_colorpicker_swatch_selected.png
│ │ │ │ └── ic_arrow_drop_down_circle_white_24dp.png
│ │ │ ├── drawable-xxxhdpi
│ │ │ │ ├── watermark.png
│ │ │ │ ├── ic_add_white_24dp.png
│ │ │ │ ├── ic_done_white_24dp.png
│ │ │ │ ├── ic_info_black_18dp.png
│ │ │ │ ├── ic_sort_white_24dp.png
│ │ │ │ ├── ic_star_white_24dp.png
│ │ │ │ ├── ic_close_white_24dp.png
│ │ │ │ ├── ic_forward_white_24dp.png
│ │ │ │ ├── ic_pause_white_24dp.png
│ │ │ │ ├── ic_refresh_white_24dp.png
│ │ │ │ ├── ic_remove_white_24dp.png
│ │ │ │ ├── ic_search_white_24dp.png
│ │ │ │ ├── ic_settings_black_18dp.png
│ │ │ │ ├── ic_star_half_white_24dp.png
│ │ │ │ ├── ic_arrow_back_white_24dp.png
│ │ │ │ ├── ic_play_arrow_white_24dp.png
│ │ │ │ ├── ic_select_all_white_24dp.png
│ │ │ │ ├── ic_star_outline_white_24dp.png
│ │ │ │ ├── ic_expand_less_grey600_36dp.png
│ │ │ │ ├── ic_expand_more_grey600_36dp.png
│ │ │ │ ├── ic_folder_open_grey600_36dp.png
│ │ │ │ ├── ic_my_library_add_white_24dp.png
│ │ │ │ ├── ic_arrow_drop_down_grey600_36dp.png
│ │ │ │ ├── ic_arrow_drop_up_grey600_36dp.png
│ │ │ │ └── ic_settings_remote_black_18dp.png
│ │ │ ├── drawable
│ │ │ │ ├── circle.xml
│ │ │ │ ├── torrent_item_progress_background.xml
│ │ │ │ ├── list_activated_light.xml
│ │ │ │ ├── shadow.xml
│ │ │ │ ├── shadow_top.xml
│ │ │ │ ├── pane_shadow.xml
│ │ │ │ ├── list_selectable_activated_light.xml
│ │ │ │ ├── border_bottom_small.xml
│ │ │ │ ├── border_bottom.xml
│ │ │ │ ├── filter_options_divider.xml
│ │ │ │ ├── filter_profile_border_right.xml
│ │ │ │ ├── border_bottom_inverted.xml
│ │ │ │ ├── filter_border_right.xml
│ │ │ │ ├── filter_list_profile_item_background.xml
│ │ │ │ ├── filter_list_item_background.xml
│ │ │ │ ├── list_item_error_color.xml
│ │ │ │ ├── torrent_type_checked.xml
│ │ │ │ ├── torrent_detail_error_color.xml
│ │ │ │ ├── calendar_color_square.xml
│ │ │ │ ├── calendar_color_picker_swatch.xml
│ │ │ │ ├── list_item_color.xml
│ │ │ │ └── torrent_circular_progress_bar.xml
│ │ │ ├── values-sw600dp-w720dp
│ │ │ │ ├── dimens.xml
│ │ │ │ ├── refs.xml
│ │ │ │ └── styles.xml
│ │ │ ├── anim
│ │ │ │ ├── layout_slide_right.xml
│ │ │ │ ├── slide_in_right.xml
│ │ │ │ ├── slide_out_right.xml
│ │ │ │ ├── slide_out_top.xml
│ │ │ │ ├── slide_in_top.xml
│ │ │ │ └── slide_right.xml
│ │ │ ├── drawable-v21
│ │ │ │ ├── torrent_item_progress_background.xml
│ │ │ │ ├── list_selectable_activated_light.xml
│ │ │ │ ├── filter_list_profile_item_background.xml
│ │ │ │ └── filter_list_item_background.xml
│ │ │ ├── menu
│ │ │ │ ├── torrent_list_sort.xml
│ │ │ │ ├── add_profile_option.xml
│ │ │ │ ├── torrent_profile_settings_fragment.xml
│ │ │ │ ├── torrent_detail_activity.xml
│ │ │ │ ├── download_directories_multiselect.xml
│ │ │ │ ├── transmission_session_activity.xml
│ │ │ │ ├── torrent_detail_tracker_multiselect.xml
│ │ │ │ ├── add_directory_option.xml
│ │ │ │ ├── torrent_list_activity.xml
│ │ │ │ ├── torrent_detail_file_multiselect.xml
│ │ │ │ ├── torrent_list_multiselect.xml
│ │ │ │ ├── torrent_detail_fragment.xml
│ │ │ │ └── torrent_list_fragment.xml
│ │ │ ├── animator
│ │ │ │ └── weight_animator.xml
│ │ │ ├── values
│ │ │ │ ├── attrs.xml
│ │ │ │ ├── ids.xml
│ │ │ │ ├── refs.xml
│ │ │ │ ├── dimens.xml
│ │ │ │ ├── colors.xml
│ │ │ │ └── arrays.xml
│ │ │ ├── values-v21
│ │ │ │ ├── dimens.xml
│ │ │ │ ├── refs.xml
│ │ │ │ └── styles.xml
│ │ │ ├── layout
│ │ │ │ ├── filter_list_profile_item.xml
│ │ │ │ ├── settings_profile_header.xml
│ │ │ │ ├── filter_list_profile_selector.xml
│ │ │ │ ├── torrent_detail_files_directory_row.xml
│ │ │ │ ├── torrent_list.xml
│ │ │ │ ├── toolbar.xml
│ │ │ │ ├── add_torrent_dialog.xml
│ │ │ │ ├── alt_speed_switch.xml
│ │ │ │ ├── fragment_torrent_detail.xml
│ │ │ │ ├── action_progress_bar.xml
│ │ │ │ ├── torrent_profile_selector.xml
│ │ │ │ ├── filter_list_item.xml
│ │ │ │ ├── activity_torrent_detail.xml
│ │ │ │ ├── sliding_menu_frame.xml
│ │ │ │ ├── action_search_query.xml
│ │ │ │ ├── filter_list_header.xml
│ │ │ │ ├── replace_tracker_dialog.xml
│ │ │ │ ├── settings_preference_item.xml
│ │ │ │ ├── remove_torrent_dialog.xml
│ │ │ │ ├── activity_torrent_file_read.xml
│ │ │ │ ├── torrent_detail_files_row.xml
│ │ │ │ ├── torrent_profile_selector_dropdown.xml
│ │ │ │ ├── calendar_grid_item_color.xml
│ │ │ │ ├── fragment_transmission_profile_directories_settings.xml
│ │ │ │ ├── fragment_torrent_detail_page.xml
│ │ │ │ ├── calendar_color_picker_swatch.xml
│ │ │ │ ├── torrent_detail_files.xml
│ │ │ │ ├── activity_torrent_list.xml
│ │ │ │ ├── activity_settings.xml
│ │ │ │ ├── error_layer.xml
│ │ │ │ ├── activity_transmission_session.xml
│ │ │ │ ├── torrent_queue_management_popup.xml
│ │ │ │ ├── activity_crash_report.xml
│ │ │ │ ├── calendar_color_picker_dialog.xml
│ │ │ │ ├── fragment_torrent_list_menu.xml
│ │ │ │ ├── torrents_listview.xml
│ │ │ │ ├── filter_list_profile_content.xml
│ │ │ │ ├── fragment_torrent_list.xml
│ │ │ │ ├── torrent_detail_trackers.xml
│ │ │ │ ├── torrent_list_twopane.xml
│ │ │ │ ├── torrent_location_dialog.xml
│ │ │ │ ├── settings_profile_item.xml
│ │ │ │ ├── activity_about.xml
│ │ │ │ ├── torrent_detail_trackers_row.xml
│ │ │ │ └── new_torrent_dialog.xml
│ │ │ ├── values-hdpi
│ │ │ │ └── dimens.xml
│ │ │ ├── values-xhdpi
│ │ │ │ └── dimens.xml
│ │ │ ├── values-sw720dp
│ │ │ │ └── refs.xml
│ │ │ ├── values-sw600dp
│ │ │ │ └── dimens.xml
│ │ │ ├── xml
│ │ │ │ ├── general_preferences.xml
│ │ │ │ ├── filters_preferences.xml
│ │ │ │ └── sort_preferences.xml
│ │ │ └── layout-sw600dp-w720dp
│ │ │ │ └── activity_transmission_session.xml
│ │ └── java
│ │ │ └── org
│ │ │ └── sugr
│ │ │ └── gearshift
│ │ │ ├── ui
│ │ │ ├── settings
│ │ │ │ ├── OnFragmentAddListener.java
│ │ │ │ ├── GeneralSettingsFragment.java
│ │ │ │ ├── FiltersSettingsFragment.java
│ │ │ │ └── SortSettingsFragment.java
│ │ │ ├── util
│ │ │ │ ├── LocationDialogHelperInterface.java
│ │ │ │ ├── QueueManagementDialogHelperInterface.java
│ │ │ │ ├── UpdateCheckDialog.java
│ │ │ │ ├── Colorizer.java
│ │ │ │ └── colorpicker
│ │ │ │ │ └── ColorStateDrawable.java
│ │ │ ├── TorrentListNotificationInterface.java
│ │ │ ├── TransmissionSessionInterface.java
│ │ │ ├── TransmissionProfileInterface.java
│ │ │ ├── TransmissionProfileListNotificationInterface.java
│ │ │ ├── TorrentDetailPagerAdapter.java
│ │ │ ├── TransmissionProfileDirectoryAdapter.java
│ │ │ ├── TimePickerFragment.java
│ │ │ └── loader
│ │ │ │ └── TorrentTrafficLoader.java
│ │ │ ├── service
│ │ │ ├── DataServiceManagerInterface.java
│ │ │ └── ConnectionProvider.java
│ │ │ ├── datasource
│ │ │ ├── TorrentNameStatus.java
│ │ │ ├── TorrentDetails.java
│ │ │ ├── TorrentStatus.java
│ │ │ └── SQLiteHelper.java
│ │ │ └── misc
│ │ │ └── BackupAgent.java
│ └── test
│ │ └── resources
│ │ └── json
│ │ └── session.json
├── todo
├── proguard-rules.txt
└── build.gradle
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── .gitignore
├── README.md
├── .travis.yml
├── gradle.properties
├── GearShift.iml
├── LICENSE
├── copy_icons.sh
└── gradlew.bat
/TODO:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':gearshift'
2 |
--------------------------------------------------------------------------------
/gearshift/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 | !/build/proguard
3 | /build/proguard/release
4 | !/build/proguard/release/mapping.txt
5 |
--------------------------------------------------------------------------------
/gearshift/src/main/ic_launcher.xcf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/ic_launcher.xcf
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gearshift/src/main/ic_launcher-hdpi.xcf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/ic_launcher-hdpi.xcf
--------------------------------------------------------------------------------
/gearshift/src/main/ic_launcher-ldpi.xcf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/ic_launcher-ldpi.xcf
--------------------------------------------------------------------------------
/gearshift/src/main/ic_launcher-mdpi.xcf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/ic_launcher-mdpi.xcf
--------------------------------------------------------------------------------
/gearshift/src/main/ic_launcher-web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/ic_launcher-web.png
--------------------------------------------------------------------------------
/gearshift/src/main/ic_launcher-xhdpi.xcf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/ic_launcher-xhdpi.xcf
--------------------------------------------------------------------------------
/gearshift/src/main/ic_launcher-xxhdpi.xcf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/ic_launcher-xxhdpi.xcf
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/watermark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/watermark.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/watermark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/watermark.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-ldpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-ldpi/ic_launcher.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/watermark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/watermark.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/watermark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/watermark.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/about_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/about_icon.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/watermark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/watermark.png
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .gradle
2 | /local.properties
3 | /.idea/workspace.xml
4 | .DS_Store
5 | .classpath
6 | bin/
7 | gen/
8 | .idea/
9 | gearshift/gearshift.iml
10 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/drawer_shadow.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/drawer_shadow.9.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/drawer_shadow.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/drawer_shadow.9.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/drawer_shadow.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/drawer_shadow.9.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_add_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_close_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_close_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_done_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_done_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_info_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_info_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_pause_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_pause_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_sort_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_sort_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_star_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_star_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/search_bg_shadow.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/search_bg_shadow.9.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_add_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_close_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_close_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_done_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_done_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_info_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_info_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_pause_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_pause_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_sort_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_sort_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_star_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_star_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_add_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_done_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_done_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_info_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_info_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_sort_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_sort_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_star_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_star_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/drawer_shadow.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/drawer_shadow.9.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_action_expand.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_action_expand.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_add_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_forward_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_forward_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_refresh_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_refresh_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_remove_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_remove_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_search_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_search_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_forward_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_forward_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_refresh_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_refresh_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_remove_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_remove_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_search_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_search_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/list_activated_holo.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/list_activated_holo.9.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_close_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_close_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_pause_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_pause_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_remove_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_remove_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_search_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_search_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_action_collapse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_action_collapse.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_close_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_close_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_done_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_done_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_info_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_info_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_pause_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_pause_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_sort_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_sort_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_star_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_star_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_add_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_done_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_done_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_info_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_info_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_sort_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_sort_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_star_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_star_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_arrow_back_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_arrow_back_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_play_arrow_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_play_arrow_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_select_all_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_select_all_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_settings_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_settings_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_star_half_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_star_half_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_arrow_back_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_arrow_back_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_play_arrow_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_play_arrow_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_select_all_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_select_all_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_settings_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_settings_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_star_half_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_star_half_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_forward_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_forward_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_refresh_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_refresh_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_settings_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_settings_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_star_half_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_star_half_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_forward_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_forward_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_refresh_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_refresh_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_remove_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_remove_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_search_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_search_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_settings_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_settings_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_close_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_close_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_forward_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_forward_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_pause_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_pause_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_refresh_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_refresh_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_remove_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_remove_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_search_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_search_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/circle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_star_outline_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_star_outline_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_star_outline_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_star_outline_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_arrow_back_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_arrow_back_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_play_arrow_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_play_arrow_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_select_all_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_select_all_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_arrow_back_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_arrow_back_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_play_arrow_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_play_arrow_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_select_all_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_select_all_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_star_half_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_star_half_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_settings_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_settings_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_star_half_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_star_half_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/values-sw600dp-w720dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 40dp
4 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_arrow_drop_up_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_arrow_drop_up_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_expand_less_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_expand_less_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_expand_more_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_expand_more_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_folder_open_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_folder_open_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_my_library_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_my_library_add_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_settings_remote_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_settings_remote_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_arrow_drop_up_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_arrow_drop_up_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_expand_less_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_expand_less_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_expand_more_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_expand_more_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_folder_open_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_folder_open_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_my_library_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_my_library_add_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_settings_remote_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_settings_remote_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_expand_less_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_expand_less_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_expand_more_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_expand_more_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_folder_open_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_folder_open_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_my_library_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_my_library_add_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_star_outline_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_star_outline_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_expand_less_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_expand_less_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_expand_more_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_expand_more_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_folder_open_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_folder_open_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_star_outline_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_star_outline_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_arrow_back_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_arrow_back_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_play_arrow_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_play_arrow_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_select_all_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_select_all_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_star_outline_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_star_outline_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_arrow_drop_down_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_arrow_drop_down_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_colorpicker_swatch_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_colorpicker_swatch_selected.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_arrow_drop_down_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_arrow_drop_down_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_colorpicker_swatch_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_colorpicker_swatch_selected.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_arrow_drop_up_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_arrow_drop_up_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_settings_remote_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_settings_remote_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_arrow_drop_up_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_arrow_drop_up_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_my_library_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_my_library_add_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_settings_remote_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_settings_remote_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_expand_less_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_expand_less_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_expand_more_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_expand_more_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_folder_open_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_folder_open_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_my_library_add_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_my_library_add_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/settings/OnFragmentAddListener.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui.settings;
2 |
3 | public interface OnFragmentAddListener {
4 | void onAdd();
5 | }
6 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_arrow_drop_down_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_arrow_drop_down_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_arrow_drop_down_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_arrow_drop_down_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_colorpicker_swatch_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_colorpicker_swatch_selected.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_arrow_drop_down_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_arrow_drop_down_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_arrow_drop_up_grey600_36dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_arrow_drop_up_grey600_36dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxxhdpi/ic_settings_remote_black_18dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxxhdpi/ic_settings_remote_black_18dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-hdpi/ic_arrow_drop_down_circle_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-hdpi/ic_arrow_drop_down_circle_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-mdpi/ic_arrow_drop_down_circle_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-mdpi/ic_arrow_drop_down_circle_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xhdpi/ic_arrow_drop_down_circle_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xhdpi/ic_arrow_drop_down_circle_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-xxhdpi/ic_arrow_drop_down_circle_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/urandom/gearshift/HEAD/gearshift/src/main/res/drawable-xxhdpi/ic_arrow_drop_down_circle_white_24dp.png
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/torrent_item_progress_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/anim/layout_slide_right.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/list_activated_light.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/service/DataServiceManagerInterface.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.service;
2 |
3 | public interface DataServiceManagerInterface {
4 | public DataServiceManager getDataServiceManager();
5 | }
6 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/util/LocationDialogHelperInterface.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui.util;
2 |
3 | public interface LocationDialogHelperInterface {
4 | public LocationDialogHelper getLocationDialogHelper();
5 | }
6 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-v21/torrent_item_progress_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/util/QueueManagementDialogHelperInterface.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui.util;
2 |
3 | public interface QueueManagementDialogHelperInterface {
4 | public QueueManagementDialogHelper getQueueManagementDialogHelper();
5 | }
6 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sun Nov 13 00:20:47 EET 2016
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-2.14.1-all.zip
7 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/shadow.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/shadow_top.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/torrent_list_sort.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/animator/weight_animator.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/datasource/TorrentNameStatus.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.datasource;
2 |
3 | public class TorrentNameStatus {
4 | public String name;
5 | public int status;
6 |
7 | public TorrentNameStatus(String name, int status) {
8 | this.name = name;
9 | this.status = status;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values/attrs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/pane_shadow.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values-v21/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 2dp
4 | 8dp
5 | 24dp
6 | 80dp
7 |
8 | 6dp
9 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/TorrentListNotificationInterface.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui;
2 |
3 | import android.database.Cursor;
4 |
5 | public interface TorrentListNotificationInterface {
6 | public void notifyTorrentListChanged(
7 | Cursor cursor, int error, boolean added, boolean removed,
8 | boolean statusChanged, boolean metadataNeededa, boolean connected);
9 | }
10 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/TransmissionSessionInterface.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui;
2 |
3 | import org.sugr.gearshift.core.TransmissionSession;
4 |
5 | public interface TransmissionSessionInterface {
6 | public void setSession(TransmissionSession session);
7 | public TransmissionSession getSession();
8 |
9 | public void setRefreshing(boolean refreshing, String type);
10 | }
11 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/filter_list_profile_item.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/TransmissionProfileInterface.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui;
2 |
3 | import org.sugr.gearshift.core.TransmissionProfile;
4 |
5 | import java.util.List;
6 |
7 | public interface TransmissionProfileInterface {
8 | public TransmissionProfile getProfile();
9 | public void setProfile(TransmissionProfile profile);
10 | public List getProfiles();
11 | }
12 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/add_profile_option.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/TransmissionProfileListNotificationInterface.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui;
2 |
3 | import android.database.Cursor;
4 |
5 | import org.sugr.gearshift.core.TransmissionProfile;
6 |
7 | import java.util.List;
8 |
9 | public interface TransmissionProfileListNotificationInterface {
10 | public void notifyTransmissionProfileListChanged(List profiles);
11 | }
12 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/settings_profile_header.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values-hdpi/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 16sp
4 | 10sp
5 | 12sp
6 | 10sp
7 |
8 | 10sp
9 |
10 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values-xhdpi/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 17sp
4 | 11sp
5 | 13sp
6 | 11sp
7 |
8 | 11sp
9 |
10 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values-sw720dp/refs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 | - @layout/torrent_list_twopane
11 |
12 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values/ids.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values-sw600dp-w720dp/refs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 | - @layout/torrent_list_twopane
11 |
12 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/list_selectable_activated_light.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/torrent_profile_settings_fragment.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/border_bottom_small.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 |
7 |
8 | -
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/border_bottom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 |
7 |
8 | -
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values-sw600dp-w720dp/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/filter_list_profile_selector.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/filter_options_divider.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 |
7 |
8 | -
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/filter_profile_border_right.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 |
7 |
8 | -
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/anim/slide_in_right.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
8 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/anim/slide_out_right.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
8 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/anim/slide_out_top.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
8 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/border_bottom_inverted.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 |
7 |
8 | -
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/filter_border_right.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 |
7 |
8 | -
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values-sw600dp/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 24dp
4 |
5 | 18sp
6 | 12sp
7 | 14sp
8 | 12sp
9 |
10 | 12sp
11 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/anim/slide_in_top.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
8 |
9 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrent_detail_files_directory_row.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/datasource/TorrentDetails.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.datasource;
2 |
3 | import android.database.Cursor;
4 |
5 | public class TorrentDetails {
6 | public Cursor torrentCursor;
7 | public Cursor filesCursor;
8 | public Cursor trackersCursor;
9 |
10 | public TorrentDetails(Cursor torrent, Cursor trackers, Cursor files) {
11 | torrentCursor = torrent;
12 | filesCursor = files;
13 | trackersCursor = trackers;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrent_list.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | Gear Shift - Transmission remote client
2 | =========
3 |
4 | Gear Shift is an open-source android application, used for controlling Transmission torrent daemons.
5 |
6 | For a less brief description, [click here](https://www.sugr.org:32443/en/products/gearshift).
7 | Some screenshots may also be had [on this page](https://www.sugr.org:32443/en/products/gearshift#gallery)
8 |
9 | Releases
10 | ========
11 |
12 | For apk releases, see the [releases github page](https://github.com/urandom/gearshift/releases)
13 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/filter_list_profile_item_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/toolbar.xml:
--------------------------------------------------------------------------------
1 |
2 |
11 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/filter_list_item_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: android
2 | android:
3 | components:
4 | - platform-tools
5 | - tools
6 | - build-tools-25.0.1
7 | - android-25
8 | - extra-android-m2repository
9 | jdk: oraclejdk8
10 | branches:
11 | only:
12 | - 2.0
13 | git:
14 | submodules: false
15 | before_cache:
16 | - rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
17 | - rm -fr $HOME/.gradle/caches/*/plugin-resolution/
18 | cache:
19 | directories:
20 | - $HOME/.gradle/caches/
21 | - $HOME/.gradle/wrapper/
22 | script: ./gradlew build test
23 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/list_item_error_color.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/add_torrent_dialog.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/alt_speed_switch.xml:
--------------------------------------------------------------------------------
1 |
2 |
12 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/fragment_torrent_detail.xml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/torrent_type_checked.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 |
7 |
8 |
9 |
12 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/action_progress_bar.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/torrent_detail_activity.xml:
--------------------------------------------------------------------------------
1 |
2 |
13 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/download_directories_multiselect.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/transmission_session_activity.xml:
--------------------------------------------------------------------------------
1 |
2 |
13 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/anim/slide_right.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
14 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-v21/list_selectable_activated_light.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/gearshift/todo:
--------------------------------------------------------------------------------
1 | * setup profile uris to open torrent destinations in a file browser
2 | * handle multiple open file requests
3 | * add an option to display a directory/mime icon on the left of each item
4 | * instead of changing the item color on multiselect, show a check mark on the left of every item
5 |
6 |
7 | on L:
8 | * raise the current torrent item in the list when selected in a dual-pane environment
9 | * handle an open directory request
10 | * send the list item as a hero element to the detail activity
11 | * investigate recyclerview as a replacement to the list view
12 | * investigate the cardview
13 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/torrent_detail_tracker_multiselect.xml:
--------------------------------------------------------------------------------
1 |
2 |
15 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values/refs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 | - @drawable/ic_launcher
11 | - @android:interpolator/accelerate_decelerate
12 | - @android:interpolator/accelerate_decelerate
13 |
14 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-v21/filter_list_profile_item_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable-v21/filter_list_item_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/torrent_detail_error_color.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/add_directory_option.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/datasource/TorrentStatus.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.datasource;
2 |
3 | public class TorrentStatus {
4 | public boolean hasAdded;
5 | public boolean hasRemoved;
6 | public boolean hasStatusChanged;
7 | public boolean hasIncompleteMetadata;
8 |
9 | public TorrentStatus() { }
10 |
11 | public TorrentStatus(boolean added, boolean removed,
12 | boolean statusChanged, boolean incompleteMetadata) {
13 | this();
14 |
15 | hasAdded = added;
16 | hasRemoved = removed;
17 | hasStatusChanged = statusChanged;
18 | hasIncompleteMetadata = incompleteMetadata;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values-v21/refs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 | - @android:interpolator/linear_out_slow_in
11 | - @android:interpolator/fast_out_linear_in
12 | - ?android:attr/selectableItemBackgroundBorderless
13 |
14 |
15 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrent_profile_selector.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/filter_list_item.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/activity_torrent_detail.xml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
12 |
13 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/sliding_menu_frame.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/misc/BackupAgent.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.misc;
2 |
3 | import android.app.backup.BackupAgentHelper;
4 | import android.app.backup.SharedPreferencesBackupHelper;
5 |
6 | import org.sugr.gearshift.G;
7 |
8 | public class BackupAgent extends BackupAgentHelper {
9 | private static final String PREFS_BACKUP_KEY = "prefs";
10 |
11 | @Override
12 | public void onCreate() {
13 | String packageName = getPackageName();
14 |
15 | SharedPreferencesBackupHelper helper =
16 | new SharedPreferencesBackupHelper(this,
17 | packageName + "_preferences", G.PROFILES_PREF_NAME);
18 | addHelper(PREFS_BACKUP_KEY, helper);
19 |
20 | G.logD("Backup agent invoked.");
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/action_search_query.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/calendar_color_square.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/calendar_color_picker_swatch.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/torrent_list_activity.xml:
--------------------------------------------------------------------------------
1 |
2 |
21 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/filter_list_header.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
20 |
21 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/replace_tracker_dialog.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
14 |
15 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 |
3 | # IDE (e.g. Android Studio) users:
4 | # Settings specified in this file will override any Gradle settings
5 | # configured through the IDE.
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
19 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/settings_preference_item.xml:
--------------------------------------------------------------------------------
1 |
2 |
22 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/remove_torrent_dialog.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
15 |
16 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/activity_torrent_file_read.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
15 |
16 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/list_item_color.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
11 |
15 |
19 |
20 |
21 |
22 |
25 |
28 |
29 |
31 |
32 |
--------------------------------------------------------------------------------
/GearShift.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/TorrentDetailPagerAdapter.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui;
2 |
3 | import android.os.Bundle;
4 | import android.support.v4.app.Fragment;
5 | import android.support.v4.app.FragmentActivity;
6 | import android.support.v4.app.FragmentStatePagerAdapter;
7 |
8 | import org.sugr.gearshift.G;
9 |
10 | public class TorrentDetailPagerAdapter extends FragmentStatePagerAdapter {
11 | private int count;
12 |
13 | public TorrentDetailPagerAdapter(FragmentActivity activity, int count) {
14 | super(activity.getSupportFragmentManager());
15 |
16 | this.count = count;
17 | }
18 |
19 | @Override
20 | public int getCount() {
21 | return count;
22 | }
23 |
24 | @Override
25 | public Fragment getItem(int position) {
26 | TorrentDetailPageFragment fragment = new TorrentDetailPageFragment();
27 | Bundle arguments = new Bundle();
28 | arguments.putInt(G.ARG_PAGE_POSITION, position);
29 | fragment.setArguments(arguments);
30 |
31 | return fragment;
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrent_detail_files_row.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
17 |
18 |
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrent_profile_selector_dropdown.xml:
--------------------------------------------------------------------------------
1 |
2 |
12 |
13 |
19 |
20 |
27 |
28 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 280dp
4 | 16dp
5 | 15dp
6 |
7 | 16sp
8 | 10sp
9 | 12sp
10 | 10sp
11 |
12 | 10sp
13 |
14 | 150dp
15 |
16 | 0dp
17 | 56dp
18 | 56dp
19 |
20 | 8dp
21 |
22 | 64dip
23 | 48dip
24 | 8dip
25 | 4dip
26 |
27 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/calendar_grid_item_color.xml:
--------------------------------------------------------------------------------
1 |
16 |
17 |
21 |
22 |
28 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/fragment_transmission_profile_directories_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
12 |
13 |
22 |
23 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/fragment_torrent_detail_page.xml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
13 |
14 |
18 |
19 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT) sans Google Play
2 |
3 | Copyright (c) 2014 Viktor Kojouharov
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software. No copy or substantial portion
14 | of the Software shall be distributed via Google Play or any other distribution
15 | channel owned by Google.
16 |
17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23 | SOFTWARE.
24 |
25 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/calendar_color_picker_swatch.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
21 |
28 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrent_detail_files.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
12 |
13 |
16 |
17 |
20 |
21 |
24 |
25 |
26 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/copy_icons.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | # bower install material-design-icons
3 | ext="png"
4 | source="./bower_components/material-design-icons"
5 | target="./gearshift/src/main/res/drawable"
6 |
7 | copy_icons() {
8 | for size in $1; do
9 | for icon in $2; do
10 | dirname=$(dirname $icon)
11 | basename=$(basename $icon)
12 |
13 | file=$source/$dirname/drawable-$size/${basename}_${3}_${4}.$ext
14 |
15 | cp $file $target-$size
16 | done
17 | done
18 | }
19 |
20 | sizes="mdpi hdpi xhdpi xxhdpi xxxhdpi"
21 |
22 | # Toolbar
23 | icons="
24 | action/ic_done
25 | action/ic_search
26 | av/ic_pause
27 | av/ic_play_arrow
28 | av/ic_my_library_add
29 | content/ic_add
30 | content/ic_forward
31 | content/ic_remove
32 | content/ic_select_all
33 | content/ic_sort
34 | navigation/ic_arrow_back
35 | navigation/ic_close
36 | navigation/ic_refresh
37 | toggle/ic_star
38 | toggle/ic_star_half
39 | toggle/ic_star_outline
40 | "
41 |
42 | copy_icons "$sizes" "$icons" "white" "24dp"
43 |
44 | icons="
45 | file/ic_folder_open
46 | navigation/ic_arrow_drop_down
47 | navigation/ic_arrow_drop_up
48 | navigation/ic_expand_more
49 | navigation/ic_expand_less
50 | "
51 |
52 | copy_icons "$sizes" "$icons" 'grey600' "36dp"
53 |
54 | icons="
55 | action/ic_info
56 | action/ic_settings
57 | action/ic_settings_remote
58 | "
59 |
60 | copy_icons "$sizes" "$icons" 'black' "18dp"
61 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/torrent_detail_file_multiselect.xml:
--------------------------------------------------------------------------------
1 |
2 |
36 |
--------------------------------------------------------------------------------
/gearshift/proguard-rules.txt:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in /home/urandom/.local/programs/android-studio/sdk/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the ProGuard
5 | # include property in project.properties.
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 | -dontpreverify
20 | -repackageclasses ''
21 | -allowaccessmodification
22 | -optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
23 | -keepattributes *Annotation*,SourceFile,LineNumberTable
24 |
25 | -keep public class * {
26 | public protected *;
27 | }
28 |
29 | -dontwarn com.fasterxml.jackson.**
30 |
31 | -keep class * implements android.os.Parcelable {
32 | public static final android.os.Parcelable$Creator *;
33 | }
34 | -keep public class **.R
35 | -dontwarn android.support.**
36 | -dontwarn org.apache.http.**
37 | -dontwarn com.android.volley.toolbox.**
38 | -dontwarn android.net.http.AndroidHttpClient
39 | -dontwarn java.lang.invoke.*
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/settings/GeneralSettingsFragment.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui.settings;
2 |
3 | import android.app.ActionBar;
4 | import android.os.Bundle;
5 | import android.preference.PreferenceManager;
6 | import android.view.Menu;
7 | import android.view.MenuInflater;
8 |
9 | import org.sugr.gearshift.R;
10 |
11 | public class GeneralSettingsFragment extends BasePreferenceFragment {
12 |
13 | @Override
14 | public void onCreate(Bundle savedInstanceState) {
15 | super.onCreate(savedInstanceState);
16 |
17 | sharedPrefs = PreferenceManager.getDefaultSharedPreferences(getActivity());
18 | addPreferencesFromResource(R.xml.general_preferences);
19 |
20 | ActionBar actionBar = getActivity().getActionBar();
21 | if (actionBar != null) {
22 | actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_TITLE | ActionBar.DISPLAY_SHOW_HOME,
23 | ActionBar.DISPLAY_SHOW_CUSTOM | ActionBar.DISPLAY_SHOW_HOME |
24 | ActionBar.DISPLAY_SHOW_TITLE);
25 | }
26 | }
27 |
28 | @Override
29 | public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
30 | super.onCreateOptionsMenu(menu, inflater);
31 | SettingsActivity context = (SettingsActivity) getActivity();
32 |
33 | if (!context.isPreferencesAlwaysVisible() && context.isPreferencesOpen()) {
34 | menu.clear();
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/activity_torrent_list.xml:
--------------------------------------------------------------------------------
1 |
8 |
9 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
26 |
27 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/xml/general_preferences.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
10 |
11 |
12 |
13 |
17 |
18 |
22 |
23 |
27 |
28 |
29 |
30 |
31 |
32 |
37 |
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/settings/FiltersSettingsFragment.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui.settings;
2 |
3 | import android.app.ActionBar;
4 | import android.os.Bundle;
5 | import android.preference.PreferenceManager;
6 | import android.view.Menu;
7 | import android.view.MenuInflater;
8 |
9 | import org.sugr.gearshift.R;
10 |
11 | public class FiltersSettingsFragment extends BasePreferenceFragment {
12 |
13 | @Override
14 | public void onCreate(Bundle savedInstanceState) {
15 | super.onCreate(savedInstanceState);
16 |
17 | sharedPrefs = PreferenceManager.getDefaultSharedPreferences(getActivity());
18 | addPreferencesFromResource(R.xml.filters_preferences);
19 |
20 | summaryPrefs = new Object[][] {};
21 |
22 | ActionBar actionBar = getActivity().getActionBar();
23 | if (actionBar != null) {
24 | actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_TITLE | ActionBar.DISPLAY_SHOW_HOME,
25 | ActionBar.DISPLAY_SHOW_CUSTOM | ActionBar.DISPLAY_SHOW_HOME |
26 | ActionBar.DISPLAY_SHOW_TITLE);
27 | }
28 | }
29 |
30 | @Override
31 | public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
32 | super.onCreateOptionsMenu(menu, inflater);
33 | SettingsActivity context = (SettingsActivity) getActivity();
34 |
35 | if (!context.isPreferencesAlwaysVisible() && context.isPreferencesOpen()) {
36 | menu.clear();
37 | }
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/torrent_list_multiselect.xml:
--------------------------------------------------------------------------------
1 |
2 |
41 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/activity_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
14 |
15 |
20 |
21 |
28 |
29 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/service/ConnectionProvider.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.service;
2 |
3 | import android.text.TextUtils;
4 |
5 | import org.sugr.gearshift.G;
6 | import org.sugr.gearshift.core.TransmissionProfile;
7 |
8 | import java.io.IOException;
9 | import java.net.HttpURLConnection;
10 | import java.net.InetSocketAddress;
11 | import java.net.Proxy;
12 | import java.net.URL;
13 |
14 | public class ConnectionProvider {
15 | public HttpURLConnection open(TransmissionProfile profile) throws IOException {
16 | String location = (profile.isUseSSL() ? "https://" : "http://")
17 | + profile.getHost() + ":" + profile.getPort()
18 | + profile.getPath();
19 |
20 | Proxy proxy = getProxy(profile);
21 | return open(location, proxy);
22 | }
23 |
24 | public HttpURLConnection open(String location, Proxy proxy) throws IOException {
25 | URL url = new URL(location);
26 |
27 | G.logD("Initializing a request to " + url);
28 |
29 | if (proxy == null) {
30 | return (HttpURLConnection) url.openConnection();
31 | } else {
32 | return (HttpURLConnection) url.openConnection(proxy);
33 | }
34 | }
35 |
36 | public Proxy getProxy(TransmissionProfile profile) {
37 | Proxy proxy = null;
38 |
39 | if (profile.isUseProxy() && !TextUtils.isEmpty(profile.getProxyHost())) {
40 | proxy = new Proxy(Proxy.Type.HTTP,
41 | new InetSocketAddress(profile.getProxyHost(), profile.getProxyPort()));
42 | }
43 |
44 | return proxy;
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/util/UpdateCheckDialog.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui.util;
2 |
3 | import android.app.AlertDialog;
4 | import android.content.Context;
5 | import android.content.Intent;
6 | import android.net.Uri;
7 |
8 | import org.sugr.gearshift.R;
9 |
10 | public class UpdateCheckDialog {
11 | private AlertDialog dialog;
12 |
13 | public UpdateCheckDialog(final Context context, CharSequence text, final String viewUrl, final String downloadUrl) {
14 | AlertDialog.Builder builder = new AlertDialog.Builder(context)
15 | .setCancelable(true)
16 | .setNegativeButton(android.R.string.no, null);
17 |
18 | builder.setNeutralButton(R.string.update_download, (dialog1, which) -> {
19 | Intent i = new Intent(Intent.ACTION_VIEW);
20 | i.setData(Uri.parse(downloadUrl));
21 | context.startActivity(i);
22 | });
23 |
24 | builder.setPositiveButton(R.string.update_view, (dialog1, which) -> {
25 | Intent i = new Intent(Intent.ACTION_VIEW);
26 | i.setData(Uri.parse(viewUrl));
27 | context.startActivity(i);
28 | });
29 |
30 | builder.setMessage(text);
31 |
32 | dialog = builder.create();
33 | }
34 |
35 | public UpdateCheckDialog(Context context, CharSequence text) {
36 | AlertDialog.Builder builder = new AlertDialog.Builder(context)
37 | .setCancelable(true)
38 | .setPositiveButton(android.R.string.ok, null);
39 |
40 | builder.setMessage(text);
41 |
42 | dialog = builder.create();
43 | }
44 |
45 | public void show() {
46 | dialog.show();
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/torrent_detail_fragment.xml:
--------------------------------------------------------------------------------
1 |
2 |
45 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values-v21/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
16 |
17 |
25 |
26 |
34 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/error_layer.xml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
16 |
26 |
27 |
36 |
40 |
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/activity_transmission_session.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
12 |
13 |
17 |
18 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrent_queue_management_popup.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
14 |
15 |
20 |
21 |
26 |
27 |
32 |
33 |
38 |
39 |
44 |
45 |
46 |
47 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/activity_crash_report.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
18 |
19 |
31 |
32 |
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/settings/SortSettingsFragment.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui.settings;
2 |
3 | import android.app.ActionBar;
4 | import android.os.Bundle;
5 | import android.preference.PreferenceManager;
6 | import android.view.Menu;
7 | import android.view.MenuInflater;
8 |
9 | import org.sugr.gearshift.G;
10 | import org.sugr.gearshift.R;
11 |
12 | public class SortSettingsFragment extends BasePreferenceFragment {
13 |
14 | @Override
15 | public void onCreate(Bundle savedInstanceState) {
16 | super.onCreate(savedInstanceState);
17 |
18 | sharedPrefs = PreferenceManager.getDefaultSharedPreferences(getActivity());
19 | addPreferencesFromResource(R.xml.sort_preferences);
20 |
21 | summaryPrefs = new Object[][] {
22 | {G.PREF_BASE_SORT, getString(R.string.update_interval_summary_format),
23 | R.array.pref_base_sort_method_values, R.array.pref_base_sort_method_entries, ""},
24 | {G.PREF_BASE_SORT_ORDER, getString(R.string.update_interval_summary_format),
25 | R.array.pref_base_sort_order_values, R.array.pref_base_sort_order_entries, ""},
26 | };
27 |
28 | ActionBar actionBar = getActivity().getActionBar();
29 | if (actionBar != null) {
30 | actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_TITLE | ActionBar.DISPLAY_SHOW_HOME,
31 | ActionBar.DISPLAY_SHOW_CUSTOM | ActionBar.DISPLAY_SHOW_HOME |
32 | ActionBar.DISPLAY_SHOW_TITLE);
33 | }
34 | }
35 |
36 | @Override
37 | public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
38 | super.onCreateOptionsMenu(menu, inflater);
39 | SettingsActivity context = (SettingsActivity) getActivity();
40 |
41 | if (!context.isPreferencesAlwaysVisible() && context.isPreferencesOpen()) {
42 | menu.clear();
43 | }
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/calendar_color_picker_dialog.xml:
--------------------------------------------------------------------------------
1 |
2 |
16 |
21 |
22 |
28 |
29 |
36 |
37 |
44 |
45 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/fragment_torrent_list_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
12 |
13 |
17 |
18 |
22 |
23 |
25 |
27 |
28 |
29 |
30 |
33 |
34 |
36 |
38 |
39 |
40 |
41 |
44 |
45 |
47 |
49 |
50 |
51 |
52 |
53 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/datasource/SQLiteHelper.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.datasource;
2 |
3 | import android.content.Context;
4 | import android.database.sqlite.SQLiteDatabase;
5 | import android.database.sqlite.SQLiteOpenHelper;
6 |
7 | import org.sugr.gearshift.G;
8 |
9 | public class SQLiteHelper extends SQLiteOpenHelper {
10 | private static final int DATABASE_VERSION = 5;
11 | private static final String DATABASE_NAME = "gearshift.db";
12 |
13 | public SQLiteHelper(Context context) {
14 | super(context, DATABASE_NAME, null, DATABASE_VERSION);
15 | }
16 |
17 | @Override
18 | public void onCreate(SQLiteDatabase db) {
19 | db.execSQL(Constants.T_SESSION_CREATE);
20 | db.execSQL(Constants.T_TORRENT_CREATE);
21 | db.execSQL(Constants.T_TORRENT_PROFILE_CREATE);
22 | db.execSQL(Constants.T_TRACKER_CREATE);
23 | db.execSQL(Constants.T_FILE_CREATE);
24 | db.execSQL(Constants.T_PEER_CREATE);
25 | }
26 |
27 | @Override
28 | public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
29 | G.logD("Upgrading data source from version " + oldVersion + " to " + newVersion);
30 |
31 | db.execSQL("DROP TABLE IF EXISTS " + Constants.T_SESSION);
32 | db.execSQL("DROP TABLE IF EXISTS " + Constants.T_TORRENT);
33 | db.execSQL("DROP TABLE IF EXISTS " + Constants.T_TORRENT_PROFILE);
34 | db.execSQL("DROP TABLE IF EXISTS " + Constants.T_TRACKER);
35 | db.execSQL("DROP TABLE IF EXISTS " + Constants.T_FILE);
36 | db.execSQL("DROP TABLE IF EXISTS " + Constants.T_PEER);
37 |
38 | db.execSQL("DROP TABLE IF EXISTS torrent_tracker");
39 |
40 | onCreate(db);
41 | }
42 |
43 | @Override
44 | public void onOpen(SQLiteDatabase db) {
45 | super.onOpen(db);
46 | if (!db.isReadOnly()) {
47 | // Enable foreign key constraints
48 | db.execSQL("PRAGMA foreign_keys=ON;");
49 | }
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrents_listview.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
11 |
12 |
16 |
17 |
18 |
21 |
22 |
35 |
36 |
44 |
45 |
46 |
47 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/filter_list_profile_content.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
15 |
16 |
32 |
33 |
48 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/drawable/torrent_circular_progress_bar.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
11 |
12 |
13 |
14 |
15 |
16 |
17 | -
18 |
21 |
26 |
32 |
33 |
34 |
35 |
36 | -
37 |
40 |
45 |
51 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/fragment_torrent_list.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
11 |
12 |
18 |
19 |
30 |
31 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #252525
4 | #202020
5 | #FF9380
6 | #FF4E40
7 | #b60000
8 | #6e0000
9 | #f44336
10 |
11 | #b60000
12 | #cacaca
13 | #1a1a1a
14 |
15 | #69e974
16 |
17 | #ccc
18 | #5677fc
19 | #aeea00
20 |
21 | #e8e8e8
22 |
23 | #ddd
24 | #bfbfbf
25 | #222222
26 |
27 | #e3e3e3
28 |
29 | #e3e3e3
30 | #E68305
31 | #C98733
32 |
33 | #757575
34 |
35 |
36 | - #252525
37 | - #D32F2F
38 | - #C2185B
39 | - #8E24AA
40 | - #5E35B1
41 | - #311B92
42 | - #3949AB
43 | - #1E88E5
44 | - #0097A7
45 | - #006064
46 | - #009688
47 | - #43A047
48 | - #1B5E20
49 | - #689F38
50 | - #827717
51 | - #E65100
52 | - #FF5722
53 | - #795548
54 | - #424242
55 | - #455A64
56 |
57 |
58 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/menu/torrent_list_fragment.xml:
--------------------------------------------------------------------------------
1 |
2 |
38 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrent_detail_trackers.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
12 |
13 |
16 |
17 |
20 |
21 |
24 |
25 |
26 |
32 |
33 |
38 |
39 |
50 |
51 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/TransmissionProfileDirectoryAdapter.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui;
2 |
3 | import android.content.Context;
4 | import android.text.TextUtils;
5 | import android.view.View;
6 | import android.view.ViewGroup;
7 | import android.widget.ArrayAdapter;
8 | import android.widget.TextView;
9 |
10 | import org.sugr.gearshift.G;
11 |
12 |
13 | public class TransmissionProfileDirectoryAdapter extends ArrayAdapter {
14 |
15 | public TransmissionProfileDirectoryAdapter(Context context, int textViewResourceId) {
16 | super(context, textViewResourceId);
17 | }
18 |
19 | @Override
20 | public View getView(int position, View convertView, ViewGroup parent) {
21 | View view = super.getView(position, convertView, parent);
22 |
23 | TextView textView = (TextView) view.findViewById(android.R.id.text1);
24 | textView.setEllipsize(TextUtils.TruncateAt.MIDDLE);
25 | String text = (String) textView.getText();
26 |
27 | int lastSlash = text.lastIndexOf('/');
28 | if (lastSlash > -1) {
29 | if (lastSlash == 0) {
30 | textView.setText(text.substring(lastSlash + 1) + " (/)");
31 | } else {
32 | textView.setText(text.substring(lastSlash + 1) + " (" + text.substring(0, lastSlash) + ')');
33 | }
34 | }
35 |
36 | return view;
37 | }
38 |
39 | @Override
40 | public View getDropDownView(int position, View convertView, ViewGroup parent) {
41 | View view = super.getDropDownView(position, convertView, parent);
42 |
43 | TextView textView = (TextView) view.findViewById(android.R.id.text1);
44 | textView.setEllipsize(TextUtils.TruncateAt.MIDDLE);
45 | String text = textView.getText().toString();
46 |
47 | int lastSlash = text.lastIndexOf('/');
48 | if (lastSlash > -1) {
49 | if (lastSlash == 0) {
50 | textView.setText(text.substring(lastSlash + 1) + " (/)");
51 | } else {
52 | textView.setText(text.substring(lastSlash + 1) + " (" + text.substring(0, lastSlash) + ')');
53 | }
54 | }
55 |
56 | return view;
57 | }
58 |
59 | public void sort() {
60 | sort(G.SIMPLE_STRING_COMPARATOR);
61 | }
62 | }
63 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrent_list_twopane.xml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
20 |
21 |
29 |
30 |
36 |
37 |
41 |
42 |
47 |
48 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/values/arrays.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | - low
5 | - normal
6 | - high
7 |
8 |
9 |
10 | - global
11 | - user
12 | - infinite
13 |
14 |
15 |
16 | - 0
17 | - 2
18 | - 3
19 | - 5
20 | - 10
21 | - 30
22 | - 60
23 | - 100
24 |
25 |
26 |
27 | - 1
28 | - 2
29 | - 5
30 | - 10
31 | - 30
32 | - 60
33 | - 120
34 | - -1
35 |
36 |
37 |
38 | - 1
39 | - 2
40 | - 3
41 | - 5
42 | - 10
43 | - 15
44 |
45 |
46 |
47 | - NAME
48 | - SIZE
49 | - STATUS
50 | - RATE_DOWNLOAD
51 | - RATE_UPLOAD
52 | - AGE
53 | - PROGRESS
54 | - RATIO
55 | - ACTIVITY
56 | - LOCATION
57 | - PEERS
58 | - QUEUE
59 |
60 |
61 |
62 | - ASCENDING
63 | - DESCENDING
64 | - PRIMARY
65 | - REVERSE
66 |
67 |
68 |
69 | - required
70 | - preferred
71 | - tolerated
72 |
73 |
74 |
75 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/util/Colorizer.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui.util;
2 |
3 | import android.content.Context;
4 | import android.content.res.Resources;
5 | import android.graphics.Color;
6 | import android.graphics.drawable.Drawable;
7 | import android.graphics.drawable.GradientDrawable;
8 | import android.util.TypedValue;
9 | import android.widget.ImageView;
10 | import android.widget.TextView;
11 |
12 | import org.sugr.gearshift.R;
13 |
14 | public class Colorizer {
15 | public static void colorizeView(ImageView view, int color, int shape) {
16 | Resources res = view.getContext().getResources();
17 |
18 | Drawable currentDrawable = view.getDrawable();
19 | GradientDrawable colorChoiceDrawable;
20 | if (currentDrawable != null && currentDrawable instanceof GradientDrawable) {
21 | // Reuse drawable
22 | colorChoiceDrawable = (GradientDrawable) currentDrawable;
23 | } else {
24 | colorChoiceDrawable = new GradientDrawable();
25 | colorChoiceDrawable.setShape(shape);
26 | }
27 |
28 | int darkenedColor;
29 | if (color == defaultColor(view.getContext())) {
30 | darkenedColor = Color.rgb(95, 95, 95);
31 | } else {
32 | // Set stroke to dark version of color
33 | darkenedColor = Color.rgb(
34 | Color.red(color) * 192 / 256,
35 | Color.green(color) * 192 / 256,
36 | Color.blue(color) * 192 / 256);
37 | }
38 |
39 | colorChoiceDrawable.setColor(color);
40 | colorChoiceDrawable.setStroke((int) TypedValue.applyDimension(
41 | TypedValue.COMPLEX_UNIT_DIP, 1, res.getDisplayMetrics()), darkenedColor);
42 | view.setImageDrawable(colorChoiceDrawable);
43 |
44 | }
45 |
46 | public static void colorizeView(TextView view, int color) {
47 | view.setTextColor(color);
48 | }
49 |
50 | public static int defaultColor(Context context) {
51 |
52 | int[] colorArray = context.getResources().getIntArray(R.array.default_color_choice_values);
53 |
54 | if (colorArray != null && colorArray.length > 0) {
55 | return colorArray[0];
56 | } else {
57 | return context.getResources().getColor(R.color.primary);
58 | }
59 | }
60 |
61 | }
62 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout-sw600dp-w720dp/activity_transmission_session.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
12 |
13 |
17 |
18 |
29 |
30 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/gearshift/src/test/resources/json/session.json:
--------------------------------------------------------------------------------
1 | {
2 | "alt-speed-down": 1000,
3 | "alt-speed-enabled": false,
4 | "alt-speed-time-begin": 1110,
5 | "alt-speed-time-day": 127,
6 | "alt-speed-time-enabled": true,
7 | "alt-speed-time-end": 150,
8 | "alt-speed-up": 150,
9 | "blocklist-enabled": true,
10 | "blocklist-size": 227574,
11 | "blocklist-url": "http://list.iblocklist.com/?list=bt_level1&fileformat=p2p&archiveformat=gz",
12 | "cache-size-mb": 20,
13 | "config-dir": "/var/lib/transmission-daemon/info",
14 | "dht-enabled": true,
15 | "download-dir": "/test/Example",
16 | "download-dir-free-space": 46269779968,
17 | "download-queue-enabled": true,
18 | "download-queue-size": 2,
19 | "encryption": "preferred",
20 | "idle-seeding-limit": 1000,
21 | "idle-seeding-limit-enabled": true,
22 | "incomplete-dir": "/test/Incomplete",
23 | "incomplete-dir-enabled": true,
24 | "lpd-enabled": true,
25 | "peer-limit-global": 220,
26 | "peer-limit-per-torrent": 60,
27 | "peer-port": 51015,
28 | "peer-port-random-on-start": false,
29 | "pex-enabled": true,
30 | "port-forwarding-enabled": true,
31 | "queue-stalled-enabled": true,
32 | "queue-stalled-minutes": 20,
33 | "rename-partial-files": true,
34 | "rpc-version": 14,
35 | "rpc-version-minimum": 1,
36 | "script-torrent-done-enabled": false,
37 | "script-torrent-done-filename": "some-script",
38 | "seed-queue-enabled": false,
39 | "seed-queue-size": 10,
40 | "seedRatioLimit": 2,
41 | "seedRatioLimited": true,
42 | "speed-limit-down": 1600,
43 | "speed-limit-down-enabled": true,
44 | "speed-limit-up": 600,
45 | "speed-limit-up-enabled": true,
46 | "start-added-torrents": true,
47 | "trash-original-torrent-files": false,
48 | "units": {
49 | "memory-bytes": 1024,
50 | "memory-units": [
51 | "KiB",
52 | "MiB",
53 | "GiB",
54 | "TiB"
55 | ],
56 | "size-bytes": 1000,
57 | "size-units": [
58 | "kB",
59 | "MB",
60 | "GB",
61 | "TB"
62 | ],
63 | "speed-bytes": 1000,
64 | "speed-units": [
65 | "kB/s",
66 | "MB/s",
67 | "GB/s",
68 | "TB/s"
69 | ]
70 | },
71 | "utp-enabled": true,
72 | "version": "2.52 (13304)"
73 | }
74 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrent_location_dialog.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
11 |
12 |
18 |
19 |
25 |
26 |
37 |
38 |
47 |
48 |
49 |
50 |
51 |
59 |
60 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/TimePickerFragment.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui;
2 |
3 | import android.app.Dialog;
4 | import android.app.TimePickerDialog;
5 | import android.os.Bundle;
6 | import android.support.annotation.NonNull;
7 | import android.support.v4.app.DialogFragment;
8 | import android.text.format.DateFormat;
9 | import android.widget.Button;
10 | import android.widget.TimePicker;
11 |
12 | import org.sugr.gearshift.R;
13 |
14 | import java.util.Calendar;
15 |
16 | public class TimePickerFragment extends DialogFragment
17 | implements TimePickerDialog.OnTimeSetListener {
18 |
19 | public static final String ARG_HOUR = "hour";
20 | public static final String ARG_MINUTE = "minute";
21 | public static final String ARG_BEGIN = "begin";
22 |
23 | @NonNull @Override
24 | public Dialog onCreateDialog(Bundle savedInstanceState) {
25 | // Use the current time as the default values for the picker
26 | final Calendar c = Calendar.getInstance();
27 |
28 | int hour, minute;
29 |
30 | if (getArguments().containsKey(ARG_HOUR)) {
31 | hour = getArguments().getInt(ARG_HOUR);
32 | c.set(Calendar.HOUR_OF_DAY, hour);
33 | } else {
34 | hour = c.get(Calendar.HOUR_OF_DAY);
35 | }
36 |
37 | if (getArguments().containsKey(ARG_MINUTE)) {
38 | minute = getArguments().getInt(ARG_MINUTE);
39 | c.set(Calendar.MINUTE, minute);
40 | } else {
41 | minute = c.get(Calendar.MINUTE);
42 | }
43 |
44 | // Create a new instance of TimePickerDialog and return it
45 | return new TimePickerDialog(getActivity(), this, hour, minute,
46 | DateFormat.is24HourFormat(getActivity()));
47 | }
48 |
49 | @Override
50 | public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
51 | Button button;
52 | if (getArguments().containsKey(ARG_BEGIN) && getArguments().getBoolean(ARG_BEGIN)) {
53 | button = (Button) getActivity().findViewById(R.id.transmission_session_alt_limit_time_from);
54 | ((TransmissionSessionActivity) getActivity()).setAltSpeedLimitTimeBegin(hourOfDay * 60 + minute);
55 | } else {
56 | button = (Button) getActivity().findViewById(R.id.transmission_session_alt_limit_time_to);
57 | ((TransmissionSessionActivity) getActivity()).setAltSpeedLimitTimeEnd(hourOfDay * 60 + minute);
58 | }
59 |
60 | button.setText(String.format(
61 | getActivity().getString(R.string.session_settings_alt_limit_time_format),
62 | hourOfDay,
63 | minute));
64 | }
65 | }
66 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/util/colorpicker/ColorStateDrawable.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui.util.colorpicker;
2 |
3 | /*
4 | * Copyright (C) 2013 The Android Open Source Project
5 | *
6 | * Licensed under the Apache License, Version 2.0 (the "License");
7 | * you may not use this file except in compliance with the License.
8 | * You may obtain a copy of the License at
9 | *
10 | * http://www.apache.org/licenses/LICENSE-2.0
11 | *
12 | * Unless required by applicable law or agreed to in writing, software
13 | * distributed under the License is distributed on an "AS IS" BASIS,
14 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 | * See the License for the specific language governing permissions and
16 | * limitations under the License.
17 | *
18 | * You can find source here:
19 | * https://android.googlesource.com/platform/frameworks/opt/colorpicker/+/master/src/com/android/colorpicker
20 | */
21 |
22 |
23 | import android.graphics.Color;
24 | import android.graphics.PorterDuff;
25 | import android.graphics.drawable.Drawable;
26 | import android.graphics.drawable.LayerDrawable;
27 |
28 | /**
29 | * A drawable which sets its color filter to a color specified by the user, and changes to a
30 | * slightly darker color when pressed or focused.
31 | */
32 | public class ColorStateDrawable extends LayerDrawable {
33 |
34 | private static final float PRESSED_STATE_MULTIPLIER = 0.70f;
35 |
36 | private int mColor;
37 |
38 | public ColorStateDrawable(Drawable[] layers, int color) {
39 | super(layers);
40 | mColor = color;
41 | }
42 |
43 | @Override
44 | protected boolean onStateChange(int[] states) {
45 | boolean pressedOrFocused = false;
46 | for (int state : states) {
47 | if (state == android.R.attr.state_pressed || state == android.R.attr.state_focused) {
48 | pressedOrFocused = true;
49 | break;
50 | }
51 | }
52 |
53 | if (pressedOrFocused) {
54 | super.setColorFilter(getPressedColor(mColor), PorterDuff.Mode.SRC_ATOP);
55 | } else {
56 | super.setColorFilter(mColor, PorterDuff.Mode.SRC_ATOP);
57 | }
58 |
59 | return super.onStateChange(states);
60 | }
61 |
62 | /**
63 | * Given a particular color, adjusts its value by a multiplier.
64 | */
65 | private int getPressedColor(int color) {
66 | float[] hsv = new float[3];
67 | Color.colorToHSV(color, hsv);
68 | hsv[2] = hsv[2] * PRESSED_STATE_MULTIPLIER;
69 | return Color.HSVToColor(hsv);
70 | }
71 |
72 | @Override
73 | public boolean isStateful() {
74 | return true;
75 | }
76 | }
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/settings_profile_item.xml:
--------------------------------------------------------------------------------
1 |
2 |
12 |
13 |
23 |
24 |
44 |
45 |
64 |
65 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/xml/filters_preferences.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
13 |
17 |
21 |
25 |
29 |
33 |
37 |
41 |
42 |
43 |
47 |
48 |
49 |
53 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/gearshift/src/main/java/org/sugr/gearshift/ui/loader/TorrentTrafficLoader.java:
--------------------------------------------------------------------------------
1 | package org.sugr.gearshift.ui.loader;
2 |
3 | import android.content.Context;
4 | import android.support.v4.content.AsyncTaskLoader;
5 |
6 | import org.sugr.gearshift.datasource.DataSource;
7 |
8 | import java.util.List;
9 |
10 | public class TorrentTrafficLoader
11 | extends AsyncTaskLoader {
12 |
13 | public static class TorrentTrafficOutputData {
14 | public long downloadSpeed = -1;
15 | public long uploadSpeed = -1;
16 | public List directories = null;
17 | public List trackers = null;
18 | }
19 |
20 | private String profile;
21 | private TorrentTrafficOutputData result;
22 | private boolean queryTraffic;
23 | private boolean queryDirectories;
24 | private boolean queryTrackers;
25 |
26 | public TorrentTrafficLoader(Context context, String profile, boolean queryTraffic,
27 | boolean queryDirectories, boolean queryTrackers) {
28 | super(context);
29 |
30 | this.profile = profile;
31 | this.queryTraffic = queryTraffic;
32 | this.queryDirectories = queryDirectories;
33 | this.queryTrackers = queryTrackers;
34 | }
35 |
36 | @Override public TorrentTrafficOutputData loadInBackground() {
37 | DataSource dataSource = new DataSource(getContext());
38 | TorrentTrafficOutputData output = new TorrentTrafficOutputData();
39 |
40 | dataSource.open();
41 | try {
42 | if (queryTraffic) {
43 | long[] speed = dataSource.getTrafficSpeed(profile);
44 | output.downloadSpeed = speed[0];
45 | output.uploadSpeed = speed[1];
46 | }
47 |
48 | if (queryTrackers) {
49 | output.trackers = dataSource.getTrackerAnnounceAuthorities(profile);
50 | }
51 |
52 | if (queryDirectories) {
53 | output.directories = dataSource.getDownloadDirectories(profile);
54 | }
55 | } catch (Exception ignored) {
56 | output = null;
57 | } finally {
58 | dataSource.close();
59 | }
60 |
61 | return output;
62 | }
63 |
64 | @Override protected void onStartLoading() {
65 | if (result != null) {
66 | deliverResult(result);
67 | }
68 |
69 | if (takeContentChanged() || result == null) {
70 | forceLoad();
71 | }
72 | }
73 |
74 | @Override protected void onReset() {
75 | result = null;
76 | }
77 |
78 | @Override public void deliverResult(TorrentTrafficOutputData result) {
79 | this.result = result;
80 |
81 | if (isStarted()) {
82 | super.deliverResult(result);
83 | }
84 | }
85 | }
86 |
--------------------------------------------------------------------------------
/gearshift/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 | apply plugin: 'me.tatarka.retrolambda'
3 |
4 | android {
5 | compileSdkVersion 25
6 | buildToolsVersion '23.0.3'
7 |
8 | defaultConfig {
9 | minSdkVersion 16
10 | targetSdkVersion 25
11 | versionCode 88
12 | versionName "1.0.5"
13 | applicationId "org.sugr.gearshift"
14 | }
15 |
16 | compileOptions {
17 | sourceCompatibility JavaVersion.VERSION_1_8
18 | targetCompatibility JavaVersion.VERSION_1_8
19 | }
20 | signingConfigs {
21 | release
22 | }
23 | buildTypes {
24 | release {
25 | signingConfig signingConfigs.release
26 | minifyEnabled true
27 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
28 | // proguardFiles 'proguard-rules.txt'
29 | zipAlignEnabled true
30 | }
31 | }
32 | lintOptions {
33 | checkReleaseBuilds true
34 | // Or, if you prefer, you can continue to check for errors in release builds,
35 | // but continue the build even when errors are found:
36 | abortOnError false
37 | disable 'MissingTranslation'
38 | }
39 |
40 | packagingOptions {
41 | exclude 'META-INF/ASL2.0'
42 | exclude 'META-INF/LICENSE'
43 | exclude 'META-INF/NOTICE'
44 | }
45 | }
46 |
47 | dependencies {
48 | compile fileTree(dir: 'libs', include: ['*.jar'])
49 |
50 | compile 'com.android.support:support-v4:25.0.0'
51 | compile 'com.android.support:design:25.0.0'
52 | compile 'com.android.support:appcompat-v7:25.0.0'
53 | compile 'com.android.support:recyclerview-v7:25.0.0'
54 | compile 'com.android.support:cardview-v7:25.0.0'
55 | compile 'com.fasterxml.jackson.core:jackson-core:2.3.0'
56 | compile 'com.fasterxml.jackson.core:jackson-databind:2.3.0'
57 | compile 'com.fasterxml.jackson.core:jackson-annotations:2.3.0'
58 | compile 'com.mcxiaoke.volley:library:1.+'
59 | compile 'com.github.zafarkhaja:java-semver:0.9.0'
60 |
61 | testCompile 'junit:junit:4.12'
62 | testCompile "org.mockito:mockito-all:1.10.+"
63 | testCompile('org.robolectric:robolectric:3.0') {
64 | exclude group: 'commons-logging', module: 'commons-logging'
65 | exclude group: 'org.apache.httpcomponents', module: 'httpclient'
66 | }
67 | }
68 |
69 | def runTasks = gradle.startParameter.taskNames
70 | if ('assemble' in runTasks || 'assembleRelease' in runTasks || 'aR' in runTasks) {
71 | def storePass = System.env.STORE_PASS ?: new String(System.console().readPassword('\nKeyStore Password: '))
72 | def keyPass = System.env.KEY_PASS ?: new String(System.console().readPassword('Alias Password: '))
73 |
74 | android.signingConfigs.release.storeFile = file('/home/urandom/.android/sugr.keystore')
75 | android.signingConfigs.release.storePassword = storePass
76 | android.signingConfigs.release.keyAlias = "gearshift"
77 | android.signingConfigs.release.keyPassword = keyPass
78 | android.buildTypes.release.signingConfig = android.signingConfigs.release
79 | }
80 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/activity_about.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
12 |
13 |
18 |
19 |
28 |
29 |
36 |
37 |
45 |
46 |
56 |
57 |
58 |
69 |
70 |
77 |
78 |
79 |
80 |
81 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/xml/sort_preferences.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
12 |
16 |
20 |
24 |
28 |
32 |
36 |
40 |
44 |
48 |
52 |
53 |
54 |
61 |
62 |
69 |
70 |
71 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/torrent_detail_trackers_row.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
19 |
20 |
21 |
22 |
27 |
28 |
34 |
35 |
36 |
37 |
38 |
39 |
42 |
43 |
47 |
48 |
49 |
50 |
51 |
52 |
55 |
56 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
75 |
76 |
80 |
81 |
82 |
83 |
87 |
88 |
89 |
90 |
94 |
95 |
96 |
97 |
98 |
--------------------------------------------------------------------------------
/gearshift/src/main/res/layout/new_torrent_dialog.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
11 |
12 |
15 |
16 |
22 |
23 |
29 |
30 |
41 |
42 |
51 |
52 |
53 |
54 |
55 |
60 |
61 |
68 |
69 |
77 |
78 |
87 |
88 |
89 |
--------------------------------------------------------------------------------