Search in sources :

Example 1 with PreferenceCategory

use of android.preference.PreferenceCategory in project WordPress-Android by wordpress-mobile.

the class NotificationsSettingsFragment method addPreferencesForPreferenceScreen.

private void addPreferencesForPreferenceScreen(PreferenceScreen preferenceScreen, Channel channel, long blogId) {
    Context context = getActivity();
    if (context == null)
        return;
    PreferenceCategory rootCategory = new PreferenceCategory(context);
    rootCategory.setTitle(R.string.notification_types);
    preferenceScreen.addPreference(rootCategory);
    NotificationsSettingsDialogPreference timelinePreference = new NotificationsSettingsDialogPreference(context, null, channel, NotificationsSettings.Type.TIMELINE, blogId, mNotificationsSettings, mOnSettingsChangedListener);
    timelinePreference.setIcon(R.drawable.ic_bell_grey_24dp);
    timelinePreference.setTitle(R.string.notifications_tab);
    timelinePreference.setDialogTitle(R.string.notifications_tab);
    timelinePreference.setSummary(R.string.notifications_tab_summary);
    rootCategory.addPreference(timelinePreference);
    NotificationsSettingsDialogPreference emailPreference = new NotificationsSettingsDialogPreference(context, null, channel, NotificationsSettings.Type.EMAIL, blogId, mNotificationsSettings, mOnSettingsChangedListener);
    emailPreference.setIcon(R.drawable.ic_mail_grey_24dp);
    emailPreference.setTitle(R.string.email);
    emailPreference.setDialogTitle(R.string.email);
    emailPreference.setSummary(R.string.notifications_email_summary);
    rootCategory.addPreference(emailPreference);
    SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(context);
    String deviceID = settings.getString(NotificationsUtils.WPCOM_PUSH_DEVICE_SERVER_ID, null);
    if (!TextUtils.isEmpty(deviceID)) {
        NotificationsSettingsDialogPreference devicePreference = new NotificationsSettingsDialogPreference(context, null, channel, NotificationsSettings.Type.DEVICE, blogId, mNotificationsSettings, mOnSettingsChangedListener);
        devicePreference.setIcon(R.drawable.ic_phone_grey_24dp);
        devicePreference.setTitle(R.string.app_notifications);
        devicePreference.setDialogTitle(R.string.app_notifications);
        devicePreference.setSummary(R.string.notifications_push_summary);
        devicePreference.setEnabled(mNotificationsEnabled);
        rootCategory.addPreference(devicePreference);
    }
    mTypePreferenceCategories.add(rootCategory);
}
Also used : Context(android.content.Context) PreferenceCategory(android.preference.PreferenceCategory) SharedPreferences(android.content.SharedPreferences)

Example 2 with PreferenceCategory

use of android.preference.PreferenceCategory in project WordPress-Android by wordpress-mobile.

the class NotificationsSettingsFragment method addSitesForViewAllSitesScreen.

private void addSitesForViewAllSitesScreen(PreferenceScreen preferenceScreen) {
    Context context = getActivity();
    if (context == null)
        return;
    PreferenceCategory rootCategory = new PreferenceCategory(context);
    rootCategory.setTitle(R.string.your_sites);
    preferenceScreen.addPreference(rootCategory);
    configureBlogsSettings(rootCategory, true);
}
Also used : Context(android.content.Context) PreferenceCategory(android.preference.PreferenceCategory)

Example 3 with PreferenceCategory

use of android.preference.PreferenceCategory in project JamsMusicPlayer by psaravan.

the class SettingsActivity____ method onCreate.

@SuppressWarnings("deprecation")
@Override
protected void onCreate(Bundle savedInstanceState) {
    //Context.
    mContext = this;
    mSettingsActivity = this;
    mApp = (Common) mContext.getApplicationContext();
    //Initialize SharedPreferences.
    sharedPreferences = this.getSharedPreferences("com.jams.music.player", Context.MODE_PRIVATE);
    //Set the UI theme.
    if (mApp.getCurrentTheme() == Common.DARK_THEME) {
        this.setTheme(R.style.AppThemeNoActionBar);
    } else {
        this.setTheme(R.style.AppThemeNoActionBarLight);
    }
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.preferences);
    preferenceManager = this.getPreferenceManager();
    //Retrieve the preferences based on their unique keys.
    upgradePreference = preferenceManager.findPreference("preference_key_upgrade");
    appThemePreference = preferenceManager.findPreference("preference_key_app_theme");
    playerColorSchemePreference = preferenceManager.findPreference("preference_key_player_color_scheme");
    trackChangeAnimationPreference = preferenceManager.findPreference("preference_key_track_change_animation");
    defaultScreenPreference = preferenceManager.findPreference("preference_key_startup_screen");
    artistsLayoutPreference = preferenceManager.findPreference("preference_key_artists_layout");
    albumArtistsLayoutPreference = preferenceManager.findPreference("preference_key_album_artists_layout");
    albumsLayoutPreference = preferenceManager.findPreference("preference_key_albums_layout");
    lockscreenControlsPreference = preferenceManager.findPreference("preference_key_lockscreen_controls");
    albumArtStylePreference = preferenceManager.findPreference("preference_key_album_art_style");
    albumArtSourcesPreference = preferenceManager.findPreference("preference_key_album_art_sources");
    albumArtScanDownloadPreference = preferenceManager.findPreference("preference_key_scan_download_album_art");
    chooseGooglePlayMusicAccountPreference = preferenceManager.findPreference("preference_key_google_play_music_account");
    getPinnedSongsPreference = preferenceManager.findPreference("preference_key_get_pinned_songs");
    defaultFolderPreference = preferenceManager.findPreference("preference_key_default_folder");
    addMusicLibraryPreference = preferenceManager.findPreference("preference_key_add_music_library");
    editMusicLibraryPreference = preferenceManager.findPreference("preference_key_edit_music_library");
    deleteMusicLibraryPreference = preferenceManager.findPreference("preference_key_delete_music_library");
    selectFoldersPreference = preferenceManager.findPreference("preference_key_select_folders");
    rescanFoldersPreference = preferenceManager.findPreference("preference_key_rescan_folders");
    scanFrequencyPreference = preferenceManager.findPreference("preference_key_scan_frequency");
    blacklistManagerPreference = preferenceManager.findPreference("preference_key_blacklist_manager");
    unblacklistAllPreference = preferenceManager.findPreference("preference_key_unblacklist_all");
    scrobblingPreference = preferenceManager.findPreference("preference_key_scrobbling");
    headphonesUnplugActionPreference = preferenceManager.findPreference("preference_key_headphones_unplug_action");
    crossfadeTracksPreference = preferenceManager.findPreference("preference_key_crossfade_tracks");
    crossfadeTracksDurationPreference = preferenceManager.findPreference("preference_key_crossfade_tracks_duration");
    equalizerPreference = preferenceManager.findPreference("preference_key_equalizer_toggle");
    licensesPreference = preferenceManager.findPreference("preference_key_licenses");
    contactUsPreference = preferenceManager.findPreference("preference_key_contact_us");
    //Set the preference icons.
    upgradePreference.setIcon(UIElementsHelper.getIcon(mContext, "checkmark"));
    appThemePreference.setIcon(UIElementsHelper.getIcon(mContext, "color_palette"));
    playerColorSchemePreference.setIcon(UIElementsHelper.getIcon(mContext, "color_palette_play"));
    trackChangeAnimationPreference.setIcon(UIElementsHelper.getIcon(mContext, "customize_screens"));
    defaultScreenPreference.setIcon(UIElementsHelper.getIcon(mContext, "default_screen"));
    artistsLayoutPreference.setIcon(UIElementsHelper.getIcon(mContext, "mic"));
    albumArtistsLayoutPreference.setIcon(UIElementsHelper.getIcon(mContext, "album_artists"));
    albumsLayoutPreference.setIcon(UIElementsHelper.getIcon(mContext, "albums"));
    lockscreenControlsPreference.setIcon(UIElementsHelper.getIcon(mContext, "lockscreen_controls"));
    getPinnedSongsPreference.setIcon(UIElementsHelper.getIcon(mContext, "pin_settings"));
    chooseGooglePlayMusicAccountPreference.setIcon(UIElementsHelper.getIcon(mContext, "accounts"));
    addMusicLibraryPreference.setIcon(UIElementsHelper.getIcon(mContext, "add_new_library"));
    editMusicLibraryPreference.setIcon(UIElementsHelper.getIcon(mContext, "edit_library"));
    deleteMusicLibraryPreference.setIcon(UIElementsHelper.getIcon(mContext, "delete_library"));
    albumArtStylePreference.setIcon(UIElementsHelper.getIcon(mContext, "cover_art_icon"));
    albumArtSourcesPreference.setIcon(UIElementsHelper.getIcon(mContext, "album_art_source"));
    albumArtScanDownloadPreference.setIcon(UIElementsHelper.getIcon(mContext, "auto_cover_fetch"));
    defaultFolderPreference.setIcon(UIElementsHelper.getIcon(mContext, "folders_settings"));
    selectFoldersPreference.setIcon(UIElementsHelper.getIcon(mContext, "folders_settings"));
    rescanFoldersPreference.setIcon(UIElementsHelper.getIcon(mContext, "rescan"));
    scanFrequencyPreference.setIcon(UIElementsHelper.getIcon(mContext, "scan_frequency"));
    blacklistManagerPreference.setIcon(UIElementsHelper.getIcon(mContext, "manage_blacklists"));
    unblacklistAllPreference.setIcon(UIElementsHelper.getIcon(mContext, "unblacklist_all"));
    scrobblingPreference.setIcon(UIElementsHelper.getIcon(mContext, "scrobbling"));
    headphonesUnplugActionPreference.setIcon(UIElementsHelper.getIcon(mContext, "headphones"));
    crossfadeTracksPreference.setIcon(UIElementsHelper.getIcon(mContext, "crossfade_tracks"));
    crossfadeTracksDurationPreference.setIcon(UIElementsHelper.getIcon(mContext, "crossfade_tracks_duration"));
    equalizerPreference.setIcon(UIElementsHelper.getIcon(mContext, "equalizer_settings"));
    licensesPreference.setIcon(UIElementsHelper.getIcon(mContext, "licenses"));
    contactUsPreference.setIcon(UIElementsHelper.getIcon(mContext, "contact_us"));
    if (sharedPreferences.getBoolean("TRIAL", true) == false) {
        PreferenceScreen screen = getPreferenceScreen();
        PreferenceCategory upgradePrefCategory = (PreferenceCategory) preferenceManager.findPreference("upgrade_pref_category");
        screen.removePreference(upgradePrefCategory);
    }
    upgradePreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            //initInAppBilling();
            Intent intent = new Intent(mContext, com.jams.music.player.LauncherActivity.LauncherActivity.class);
            intent.putExtra("UPGRADE", true);
            startActivity(intent);
            finish();
            return false;
        }
    });
    //Set click listeners on each preference.
    appThemePreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            Intent intent = new Intent(mContext, PreferenceDialogLauncherActivity.class);
            intent.putExtra("INDEX", 0);
            startActivity(intent);
            return false;
        }
    });
    playerColorSchemePreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            Intent intent = new Intent(mContext, PreferenceDialogLauncherActivity.class);
            intent.putExtra("INDEX", 1);
            startActivity(intent);
            return false;
        }
    });
    trackChangeAnimationPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            int selectedIndex = sharedPreferences.getInt("TRACK_CHANGE_ANIMATION", 0);
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            builder.setTitle(R.string.track_change_animation);
            View layoutView = mSettingsActivity.getLayoutInflater().inflate(R.layout.generic_message_listview_dialog_layout, null);
            TextView message = (TextView) layoutView.findViewById(R.id.generic_message);
            ListView listView = (ListView) layoutView.findViewById(R.id.generic_listview);
            message.setTypeface(TypefaceHelper.getTypeface(mContext, "RobotoCondensed-Light"));
            message.setPaintFlags(message.getPaintFlags() | Paint.ANTI_ALIAS_FLAG | Paint.SUBPIXEL_TEXT_FLAG);
            message.setText(R.string.track_change_animation_info);
            String[] values = { mSettingsActivity.getResources().getString(R.string.slide_away), mSettingsActivity.getResources().getString(R.string.zoom_out_and_slide_away), mSettingsActivity.getResources().getString(R.string.depth_transformer) };
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(mSettingsActivity, android.R.layout.simple_list_item_single_choice, android.R.id.text1, values);
            listView.setAdapter(adapter);
            listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
            listView.setItemChecked(selectedIndex, true);
            listView.setOnItemClickListener(new OnItemClickListener() {

                @Override
                public void onItemClick(AdapterView<?> arg0, View arg1, int which, long arg3) {
                    Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                    sharedPreferences.edit().putInt("TRACK_CHANGE_ANIMATION", which).commit();
                    mTrackChangeAnimationDialog.dismiss();
                }
            });
            builder.setView(layoutView);
            mTrackChangeAnimationDialog = builder.create();
            mTrackChangeAnimationDialog.show();
            return false;
        }
    });
    defaultScreenPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            //Get the current preference.
            int currentPreference = sharedPreferences.getInt("STARTUP_SCREEN", 0);
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            //builder.setTitle(R.string.startup_screen);
            builder.setSingleChoiceItems(R.array.startup_screen_items, currentPreference, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    sharedPreferences.edit().putInt("STARTUP_SCREEN", which).commit();
                    dialog.dismiss();
                    Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                }
            });
            builder.create().show();
            return false;
        }
    });
    artistsLayoutPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            //Get the current preference.
            int currentPreference = sharedPreferences.getInt("ARTISTS_LAYOUT_PREF", 0);
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            builder.setTitle(R.string.artists_layout);
            builder.setSingleChoiceItems(R.array.layout_preference_items, currentPreference, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    sharedPreferences.edit().putInt("ARTISTS_LAYOUT_PREF", which).commit();
                    dialog.dismiss();
                    Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                }
            });
            builder.create().show();
            return false;
        }
    });
    albumArtistsLayoutPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            //Get the current preference.
            int currentPreference = sharedPreferences.getInt("ALBUM_ARTISTS_LAYOUT_PREF", 0);
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            builder.setTitle(R.string.album_artists_layout);
            builder.setSingleChoiceItems(R.array.layout_preference_items, currentPreference, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    sharedPreferences.edit().putInt("ALBUM_ARTISTS_LAYOUT_PREF", which).commit();
                    dialog.dismiss();
                    Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                }
            });
            builder.create().show();
            return false;
        }
    });
    albumsLayoutPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            //Get the current preference.
            int currentPreference = sharedPreferences.getInt("ALBUMS_LAYOUT_PREF", 0);
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            builder.setTitle(R.string.albums_layout);
            builder.setSingleChoiceItems(R.array.layout_preference_items, currentPreference, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    sharedPreferences.edit().putInt("ALBUMS_LAYOUT_PREF", which).commit();
                    dialog.dismiss();
                    Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                }
            });
            builder.create().show();
            return false;
        }
    });
    lockscreenControlsPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            //Get the current preference.
            int currentPreference = sharedPreferences.getInt(Common.SHOW_LOCKSCREEN_CONTROLS, 0);
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            //builder.setTitle(R.string.lockscreen_controls);
            builder.setSingleChoiceItems(R.array.enable_disable, currentPreference, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    sharedPreferences.edit().putInt(Common.SHOW_LOCKSCREEN_CONTROLS, which).commit();
                    dialog.dismiss();
                    //Enable/disable the lockscreen controls for this session.
                    try {
                        if (which == 0) {
                            Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                            if (sharedPreferences.getBoolean("SERVICE_RUNNING", false) == true) {
                                mApp.getService().initRemoteControlClient();
                                mApp.getService().updateRemoteControlClients(mApp.getService().getCurrentSong());
                            }
                        } else if (which == 1) {
                            if (sharedPreferences.getBoolean("SERVICE_RUNNING", false) == true) {
                                Toast.makeText(mContext, R.string.lockscreen_controls_disabled_next_run, Toast.LENGTH_LONG).show();
                            } else {
                                Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                            }
                        }
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            });
            builder.create().show();
            return false;
        }
    });
    defaultFolderPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            builder.setTitle(R.string.default_folder_for_folders_view);
            builder.setMessage(R.string.default_folder_for_folders_view_info);
            builder.setPositiveButton(R.string.ok, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
                }
            });
            builder.create().show();
            return false;
        }
    });
    chooseGooglePlayMusicAccountPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            final AccountManager accountManager = AccountManager.get(mContext);
            final Account[] accounts = accountManager.getAccounts();
            final int size = accounts.length;
            final String[] accountNames = new String[size + 1];
            accountNames[0] = "Don't use Google Play Music";
            //Create a new array with a list of all account names on the device.
            for (int i = 0; i < accounts.length; i++) {
                accountNames[i + 1] = accounts[i].name;
            }
            //Get the current account name (if it exists) and get the index of the account name.
            String currentAccountName = sharedPreferences.getString("GOOGLE_PLAY_MUSIC_ACCOUNT", "");
            int accountIndex = -1;
            if (!currentAccountName.isEmpty()) {
                for (int i = 0; i < accounts.length; i++) {
                    if (currentAccountName.equals(accountNames[i + 1])) {
                        accountIndex = i + 1;
                    }
                }
            } else {
                accountIndex = 0;
            }
            //Display a list of all accounts that are currently on the device.
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            builder.setTitle(R.string.select_google_account);
            builder.setSingleChoiceItems(accountNames, accountIndex, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int position) {
                    if (position != 0) {
                        //Start the sign-in process.
                        Toast.makeText(mContext, R.string.signing_in_dot_dot_dot, Toast.LENGTH_SHORT).show();
                        sharedPreferences.edit().putString("GOOGLE_PLAY_MUSIC_ACCOUNT", accountNames[position]).commit();
                        AsyncGoogleMusicAuthenticationTask task = new AsyncGoogleMusicAuthenticationTask(mContext.getApplicationContext(), mSettingsActivity, false, accountNames[position]);
                        task.execute();
                    } else {
                        Toast.makeText(mContext, R.string.google_play_music_disabled, Toast.LENGTH_SHORT).show();
                        sharedPreferences.edit().putBoolean("GOOGLE_PLAY_MUSIC_ENABLED", false).commit();
                        sharedPreferences.edit().putString("GOOGLE_PLAY_MUSIC_ACCOUNT", "").commit();
                        //Restart the app.
                        final Intent i = getBaseContext().getPackageManager().getLaunchIntentForPackage(getBaseContext().getPackageName());
                        i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                        finish();
                        startActivity(i);
                    }
                    dialog.dismiss();
                }
            });
            AlertDialog dialog = builder.create();
            dialog.show();
            return false;
        }
    });
    getPinnedSongsPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            mApp.queueSongsToPin(true, false, null);
            return false;
        }
    });
    addMusicLibraryPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            Intent intent = new Intent(mContext, PreferenceDialogLauncherActivity.class);
            intent.putExtra("INDEX", 13);
            startActivity(intent);
            return false;
        }
    });
    editMusicLibraryPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            Intent intent = new Intent(mContext, PreferenceDialogLauncherActivity.class);
            intent.putExtra("INDEX", 14);
            intent.putExtra("OPERATION", "EDIT");
            startActivity(intent);
            return false;
        }
    });
    deleteMusicLibraryPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            Intent intent = new Intent(mContext, PreferenceDialogLauncherActivity.class);
            intent.putExtra("INDEX", 14);
            intent.putExtra("OPERATION", "DELETE");
            startActivity(intent);
            return false;
        }
    });
    albumArtStylePreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            Intent intent = new Intent(mContext, PreferenceDialogLauncherActivity.class);
            intent.putExtra("INDEX", 3);
            startActivity(intent);
            return false;
        }
    });
    albumArtSourcesPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            Intent intent = new Intent(mContext, PreferenceDialogLauncherActivity.class);
            intent.putExtra("INDEX", 4);
            startActivity(intent);
            return false;
        }
    });
    albumArtScanDownloadPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            //Start the service that will download album art.
            mContext.startService(new Intent(mContext, AutoFetchAlbumArtService.class));
            return false;
        }
    });
    selectFoldersPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            Intent intent = new Intent(mContext, PreferenceDialogLauncherActivity.class);
            intent.putExtra("INDEX", 5);
            startActivity(intent);
            return false;
        }
    });
    rescanFoldersPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            //Seting the "REBUILD_LIBRARY" flag to true will force MainActivity to rescan the folders.
            sharedPreferences.edit().putBoolean("REBUILD_LIBRARY", true).commit();
            //Restart the app.
            final Intent i = getBaseContext().getPackageManager().getLaunchIntentForPackage(getBaseContext().getPackageName());
            i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            finish();
            startActivity(i);
            return false;
        }
    });
    scanFrequencyPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            Intent intent = new Intent(mContext, PreferenceDialogLauncherActivity.class);
            intent.putExtra("INDEX", 7);
            startActivity(intent);
            return false;
        }
    });
    blacklistManagerPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            /*				Intent intent = new Intent(mContext, PreferenceDialogLauncherActivity.class);
				intent.putExtra("INDEX", 8);
				startActivity(intent);*/
            /*String[] blacklistManagerChoices = { mContext.getResources().getString(R.string.manage_blacklisted_artists),
						 							 mContext.getResources().getString(R.string.manage_blacklisted_albums), 
						 							 mContext.getResources().getString(R.string.manage_blacklisted_songs), 
						 							 mContext.getResources().getString(R.string.manage_blacklisted_playlists) };
				
				AlertDialog.Builder builder = new AlertDialog.Builder(mContext);

		        //Set the dialog title.
		        builder.setTitle(R.string.blacklist_manager);
		        builder.setItems(blacklistManagerChoices, new OnClickListener() {

					@Override
					public void onClick(DialogInterface dialog, int which) {
						Bundle bundle = new Bundle();
						
						if (which==0) {
							bundle.putString("MANAGER_TYPE", "ARTISTS");
						} else if (which==1) {
							bundle.putString("MANAGER_TYPE", "ALBUMS");
						} else if (which==2) {
							bundle.putString("MANAGER_TYPE", "SONGS");
						} else if (which==3) {
							bundle.putString("MANAGER_TYPE", "PLAYLISTS");
						}
						
						dialog.dismiss();
						Intent intent = new Intent(mContext, BlacklistManagerActivity.class);
						intent.putExtras(bundle);
						startActivity(intent);
						
					}
		        	
		        });
		        
		        builder.create().show();*/
            Intent intent = new Intent(mContext, BlacklistManagerActivity.class);
            startActivity(intent);
            return false;
        }
    });
    unblacklistAllPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            AsyncUnblacklistAllSongsTask task = new AsyncUnblacklistAllSongsTask();
            task.execute();
            return false;
        }
    });
    /*    	bluetoothControlsPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

			@Override
			public boolean onPreferenceClick(Preference arg0) {
				// TODO Auto-generated method stub
				return false;
			}
    		
    	});
    	
    	headphonesUnplugActionPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

			@Override
			public boolean onPreferenceClick(Preference arg0) {
				// TODO Auto-generated method stub
				return false;
			}
    		
    	});*/
    scrobblingPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            int currentSelection = 0;
            if (sharedPreferences.getInt("SCROBBLING", 0) == 0) {
                currentSelection = 0;
            } else if (sharedPreferences.getInt("SCROBBLING", 0) == 1) {
                currentSelection = 1;
            } else if (sharedPreferences.getInt("SCROBBLING", 0) == 2) {
                currentSelection = 2;
            }
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            builder.setTitle(R.string.scrobbling);
            builder.setSingleChoiceItems(R.array.scrobbling_options, currentSelection, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
                    Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                    sharedPreferences.edit().putInt("SCROBBLING", which).commit();
                }
            });
            builder.create().show();
            return false;
        }
    });
    headphonesUnplugActionPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            //Get the current selection.
            int currentSelection;
            if (sharedPreferences.getString("UNPLUG_ACTION", "DO_NOTHING").equals("DO_NOTHING")) {
                currentSelection = 0;
            } else {
                currentSelection = 1;
            }
            String[] unplugActionsArray = mContext.getResources().getStringArray(R.array.headphones_unplug_actions);
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            builder.setTitle(R.string.headphones_unplug_action);
            builder.setSingleChoiceItems(unplugActionsArray, currentSelection, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
                    Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                    if (which == 0) {
                        sharedPreferences.edit().putString("UNPLUG_ACTION", "DO_NOTHING").commit();
                        if (sharedPreferences.getBoolean("SERVICE_RUNNING", false) == true) {
                            mApp.getService().unregisterReceiver(mApp.getService().getHeadsetPlugReceiver());
                        }
                    } else {
                        sharedPreferences.edit().putString("UNPLUG_ACTION", "PAUSE_MUSIC_PLAYBACK").commit();
                        if (sharedPreferences.getBoolean("SERVICE_RUNNING", false) == true) {
                            mApp.getService().registerHeadsetPlugReceiver();
                        }
                    }
                }
            });
            builder.create().show();
            return false;
        }
    });
    crossfadeTracksPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            int currentSelection;
            if (sharedPreferences.getBoolean(Common.CROSSFADE_ENABLED, false) == true) {
                currentSelection = 0;
            } else {
                currentSelection = 1;
            }
            String[] enableDisableArray = mContext.getResources().getStringArray(R.array.enable_disable);
            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            builder.setTitle(R.string.crossfade_tracks);
            builder.setSingleChoiceItems(enableDisableArray, currentSelection, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
                    Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                    if (which == 0) {
                        sharedPreferences.edit().putBoolean(Common.CROSSFADE_ENABLED, true).commit();
                        //Enable crossfade for the current queue.
                        if (mApp.isServiceRunning() && mApp.getService().getHandler() != null) {
                            mApp.getService().getHandler().post(mApp.getService().startCrossFadeRunnable);
                        }
                    } else {
                        sharedPreferences.edit().putBoolean(Common.CROSSFADE_ENABLED, false).commit();
                        //Disable crossfade for the current queue.
                        if (mApp.isServiceRunning() && mApp.getService().getHandler() != null) {
                            mApp.getService().getHandler().removeCallbacks(mApp.getService().startCrossFadeRunnable);
                            mApp.getService().getHandler().removeCallbacks(mApp.getService().crossFadeRunnable);
                        }
                    }
                }
            });
            builder.create().show();
            return false;
        }
    });
    crossfadeTracksDurationPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            AlertDialog.Builder builder = new AlertDialog.Builder(mSettingsActivity);
            builder.setTitle(R.string.crossfade_duration);
            RelativeLayout dialogView = (RelativeLayout) mSettingsActivity.getLayoutInflater().inflate(R.layout.dialog_crossfade_duration, null);
            final TextView durationText = (TextView) dialogView.findViewById(R.id.crossfade_duration_text);
            final SeekBar durationSeekBar = (SeekBar) dialogView.findViewById(R.id.crossfade_duration_seekbar);
            int currentSeekBarDuration = sharedPreferences.getInt(Common.CROSSFADE_DURATION, 5);
            durationSeekBar.setMax(14);
            durationSeekBar.setProgress(currentSeekBarDuration);
            durationText.setText(currentSeekBarDuration + " secs");
            durationSeekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

                @Override
                public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
                    sharedPreferences.edit().putInt(Common.CROSSFADE_DURATION, (progress + 1)).commit();
                    durationText.setText((progress + 1) + " secs");
                }

                @Override
                public void onStartTrackingTouch(SeekBar seekBar) {
                // TODO Auto-generated method stub
                }

                @Override
                public void onStopTrackingTouch(SeekBar seekBar) {
                // TODO Auto-generated method stub
                }
            });
            builder.setView(dialogView);
            builder.setPositiveButton(R.string.ok, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int arg1) {
                    dialog.dismiss();
                    Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                }
            });
            builder.create().show();
            return false;
        }
    });
    equalizerPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference preference) {
            boolean currentSetting = sharedPreferences.getBoolean("EQUALIZER_ENABLED", true);
            int intCurrentSetting = -1;
            if (currentSetting == true)
                intCurrentSetting = 0;
            else
                intCurrentSetting = 1;
            AlertDialog.Builder builder = new AlertDialog.Builder(mSettingsActivity);
            builder.setTitle(R.string.equalizer);
            builder.setSingleChoiceItems(R.array.enable_disable, intCurrentSetting, new OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    boolean isEnabled;
                    if (which == 0)
                        isEnabled = true;
                    else
                        isEnabled = false;
                    sharedPreferences.edit().putBoolean("EQUALIZER_ENABLED", isEnabled).commit();
                    Toast.makeText(mContext, R.string.changes_saved, Toast.LENGTH_SHORT).show();
                    if (Build.PRODUCT.contains("HTC") && which == 0) {
                        showHTCEqualizerIssueDialog();
                    }
                    if (sharedPreferences.getBoolean("SERVICE_RUNNING", false) == true && which == 0) {
                        mApp.getService().initAudioFX();
                    } else if (sharedPreferences.getBoolean("SERVICE_RUNNING", false) == true && which == 1) {
                        try {
                            mApp.getService().getEqualizerHelper().releaseEQObjects();
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                    dialog.dismiss();
                }

                private void showHTCEqualizerIssueDialog() {
                    AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
                    builder.setTitle(R.string.htc_devices);
                    builder.setMessage(R.string.htc_devices_equalizer_issue);
                    builder.setPositiveButton(R.string.ok, new OnClickListener() {

                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            dialog.dismiss();
                        }
                    });
                    builder.create().show();
                }
            });
            builder.create().show();
            return false;
        }
    });
    licensesPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            Intent intent = new Intent(mContext, PreferenceDialogLauncherActivity.class);
            intent.putExtra("INDEX", 12);
            startActivity(intent);
            return false;
        }
    });
    contactUsPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {

        @Override
        public boolean onPreferenceClick(Preference arg0) {
            Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts("mailto", "jamsmusicplayer@gmail.com", null));
            emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Jams Music Player Support");
            startActivity(Intent.createChooser(emailIntent, "Send email"));
            return false;
        }
    });
}
Also used : AlertDialog(android.app.AlertDialog) PreferenceScreen(android.preference.PreferenceScreen) DialogInterface(android.content.DialogInterface) AsyncGoogleMusicAuthenticationTask(com.jams.music.player.AsyncTasks.AsyncGoogleMusicAuthenticationTask) OnSeekBarChangeListener(android.widget.SeekBar.OnSeekBarChangeListener) OnPreferenceClickListener(android.preference.Preference.OnPreferenceClickListener) ListView(android.widget.ListView) TextView(android.widget.TextView) OnItemClickListener(android.widget.AdapterView.OnItemClickListener) SeekBar(android.widget.SeekBar) Intent(android.content.Intent) View(android.view.View) AdapterView(android.widget.AdapterView) TextView(android.widget.TextView) ListView(android.widget.ListView) Paint(android.graphics.Paint) BlacklistManagerActivity(com.jams.music.player.BlacklistManagerActivity.BlacklistManagerActivity) PreferenceCategory(android.preference.PreferenceCategory) Preference(android.preference.Preference) RelativeLayout(android.widget.RelativeLayout) OnClickListener(android.content.DialogInterface.OnClickListener) AdapterView(android.widget.AdapterView) AccountManager(android.accounts.AccountManager) ArrayAdapter(android.widget.ArrayAdapter)

Example 4 with PreferenceCategory

use of android.preference.PreferenceCategory in project android by nextcloud.

the class Preferences method setupAutoUploadCategory.

private void setupAutoUploadCategory(int accentColor, PreferenceScreen preferenceScreen) {
    PreferenceCategory preferenceCategorySyncedFolders = (PreferenceCategory) findPreference("synced_folders_category");
    preferenceCategorySyncedFolders.setTitle(ThemeUtils.getColoredTitle(getString(R.string.drawer_synced_folders), accentColor));
    if (!getResources().getBoolean(R.bool.syncedFolder_light)) {
        preferenceScreen.removePreference(preferenceCategorySyncedFolders);
    } else {
        // Upload on WiFi
        final ArbitraryDataProvider arbitraryDataProvider = new ArbitraryDataProvider(getContentResolver());
        final Account account = AccountUtils.getCurrentOwnCloudAccount(getApplicationContext());
        final SwitchPreference pUploadOnWifiCheckbox = (SwitchPreference) findPreference("synced_folder_on_wifi");
        pUploadOnWifiCheckbox.setChecked(arbitraryDataProvider.getBooleanValue(account, SYNCED_FOLDER_LIGHT_UPLOAD_ON_WIFI));
        pUploadOnWifiCheckbox.setOnPreferenceClickListener(new OnPreferenceClickListener() {

            @Override
            public boolean onPreferenceClick(Preference preference) {
                arbitraryDataProvider.storeOrUpdateKeyValue(account.name, SYNCED_FOLDER_LIGHT_UPLOAD_ON_WIFI, String.valueOf(pUploadOnWifiCheckbox.isChecked()));
                return true;
            }
        });
        Preference pSyncedFolder = findPreference("synced_folders_configure_folders");
        if (pSyncedFolder != null) {
            if (getResources().getBoolean(R.bool.syncedFolder_light) && Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                pSyncedFolder.setOnPreferenceClickListener(new OnPreferenceClickListener() {

                    @Override
                    public boolean onPreferenceClick(Preference preference) {
                        Intent syncedFoldersIntent = new Intent(getApplicationContext(), SyncedFoldersActivity.class);
                        syncedFoldersIntent.putExtra(SyncedFoldersActivity.EXTRA_SHOW_SIDEBAR, false);
                        startActivity(syncedFoldersIntent);
                        return true;
                    }
                });
            } else {
                preferenceCategorySyncedFolders.removePreference(pSyncedFolder);
            }
        }
    }
}
Also used : OnPreferenceClickListener(android.preference.Preference.OnPreferenceClickListener) Account(android.accounts.Account) OwnCloudAccount(com.owncloud.android.lib.common.OwnCloudAccount) PreferenceCategory(android.preference.PreferenceCategory) SwitchPreference(android.preference.SwitchPreference) ListPreference(android.preference.ListPreference) Preference(android.preference.Preference) SwitchPreference(android.preference.SwitchPreference) ArbitraryDataProvider(com.owncloud.android.datamodel.ArbitraryDataProvider) Intent(android.content.Intent)

Example 5 with PreferenceCategory

use of android.preference.PreferenceCategory in project android by nextcloud.

the class Preferences method setupMoreCategory.

private void setupMoreCategory(int accentColor, String appVersion) {
    PreferenceCategory preferenceCategoryMore = (PreferenceCategory) findPreference("more");
    preferenceCategoryMore.setTitle(ThemeUtils.getColoredTitle(getString(R.string.prefs_category_more), accentColor));
    setupCalendarPreference(preferenceCategoryMore);
    setupContactsBackupPreference(preferenceCategoryMore);
    setupHelpPreference(preferenceCategoryMore);
    setupRecommendPreference(preferenceCategoryMore);
    setupFeedbackPreference(appVersion, preferenceCategoryMore);
    setupLoggingPreference(preferenceCategoryMore);
    setupImprintPreference(preferenceCategoryMore);
    loadExternalSettingLinks(preferenceCategoryMore);
}
Also used : PreferenceCategory(android.preference.PreferenceCategory)

Aggregations

PreferenceCategory (android.preference.PreferenceCategory)80 Preference (android.preference.Preference)49 PreferenceScreen (android.preference.PreferenceScreen)31 ListPreference (android.preference.ListPreference)30 CheckBoxPreference (android.preference.CheckBoxPreference)26 Intent (android.content.Intent)19 EditTextPreference (android.preference.EditTextPreference)8 OnPreferenceClickListener (android.preference.Preference.OnPreferenceClickListener)8 SwitchPreference (android.preference.SwitchPreference)8 ArrayList (java.util.ArrayList)7 Uri (android.net.Uri)6 Bundle (android.os.Bundle)5 SharedPreferences (android.content.SharedPreferences)4 OnPreferenceChangeListener (android.preference.Preference.OnPreferenceChangeListener)4 View (android.view.View)4 OsmandApplication (net.osmand.plus.OsmandApplication)4 Context (android.content.Context)3 NameNotFoundException (android.content.pm.PackageManager.NameNotFoundException)3 RingtonePreference (android.preference.RingtonePreference)3 ListView (android.widget.ListView)3