Commit Graph

126 Commits

Author SHA1 Message Date
Gilles Debunne
31e92e4f19 Merge "Support for arbitrary ListAdapter in PreferenceActivity." 2011-06-21 11:16:35 -07:00
John Reck
014fea2a66 Inline SeekBarPreference
Dialog-based SeekBarPreference renamed to SeekBarDialogPreference
 New inline SeekBarPreference added

Change-Id: I7a5d8f7aa554c4af4086a9bcc74cf07879c8523c
2011-06-16 12:34:02 -07:00
Gilles Debunne
39725ac96b Support for arbitrary ListAdapter in PreferenceActivity.
Now relies on the adapter defined using setListAdapter instead of relying
on the original mAdapter field that was hiding the one defined in ListActivity

Change-Id: I6bab7b858d215bf6a33b3666528ba0f463dfec45
2011-06-15 10:41:52 -07:00
Amith Yamasani
0daf40ca9a am 2bcd9c6e: am eb5e633a: am 608a200d: Merge "Stability fixes for PreferenceFragments." into honeycomb-mr2
* commit '2bcd9c6e7b4fe6c465811e9b8ac48acec23cb341':
  Stability fixes for PreferenceFragments.
2011-06-14 20:56:23 -07:00
Amith Yamasani
c56fc753e2 Stability fixes for PreferenceFragments.
Unregister the click listener as early as possible, so that clicks
don't get delivered after the activity is detached.

Bug: 4599586

This should also fix: 4603030, 4601105, 4598715, 4598712.

Change-Id: I7bcff719bed14ea61b482bd6d29ae1fa5e322e41
2011-06-14 15:07:49 -07:00
Adam Powell
be0a453505 Add SwitchPreference
Change-Id: I073e9bfba8c4e1a625c27f976f71ea56a81ba20f
2011-06-08 18:25:27 -07:00
Amith Yamasani
405c1af756 Manual merge. Preference activity changes to work on smaller tablet screens and phones.
Padding around fragments and to the left of preference items
adjusted for different display sizes.

Change-Id: I2d29e5525c381092a3f1d2fb1265ce07db893d78
2011-05-26 15:20:14 -07:00
Amith Yamasani
6ea08998ee More preference item visual adjustments for smaller tablets. DO NOT MERGE
Use medium text size for locale picker.
Hide icon region if there's no icon.

Bug: 4462313

Change-Id: I8062646f31bfec753bcd476f54c8ab5b66375b5e
2011-05-24 15:50:36 -07:00
Amith Yamasani
1d2385d08a DO NOT MERGE. Preference activity changes to work on smaller tablet screens.
Breadcrumbs move to the action bar on certain configs.

Padding around fragments and to the left of preference items
adjusted for different display sizes.

Change-Id: Ie899f9742f4ebd7044f158b1c7db06df82ad2d75
2011-05-23 16:53:16 -07:00
Justin Koh
ece60fb243 Framework: fixed bug in multiselectlistpreference.
Fixed bug in multiselectlistpreference where the entries were being used instead of the entry values.  This change make the behavior match the documentation.

TESTED = runs on M4 with test app.

Change-Id: Ib337f78399e032ef50aabce0fb8aa38251d73c18
2011-04-22 16:41:10 -07:00
Dianne Hackborn
e72f237def More work on making prefs work well on small screens.
Tweak padding so layouts now look decent, a few extensions so that
the correct title can be shown.

Change-Id: Ieace16bf4962d66564c6e2f67fb588e582943850
2011-03-18 12:54:26 -07:00
Dianne Hackborn
437c2c1620 Merge "Add new PreferenceActivity API for settings." 2011-03-15 16:52:40 -07:00
Dianne Hackborn
b1a6e439f6 Add new PreferenceActivity API for settings.
Need to redirect to a different activity when on non-xlarge screens.

Change-Id: I8cf4793b117325604d29ecc4478dbf10322a4689
2011-03-15 16:23:01 -07:00
Svetoslav Ganov
1686e9afd4 CheckBoxPreferences do not fire accessibility events
bug:4091160

We no longer allow not shown views to fire accessibility
events. Therefore, CheckBoxPreference can no longer ask its
associated checkbox to fire an accessibility event because
the latter is not attached to the view hierarchy
(i.e. not shown) by the time the CheckBoxPreference has a
chance to send an accessibility event. Instead the
CheckBoxPreference itself is responsible for firing the event.

Change-Id: Ia742882b13bf6c441cc76fa1e84b47a55cee601c
2011-03-15 12:30:20 -07:00
Dianne Hackborn
cf407ad88b Fix issues #4087362 and #4087356
4087362: Provide a safer way to call DialogFragment.dismiss()
4087356: PreferenceActivity.invalidateHeaders() can cause
IllegalStateException: Can not perform this action after onSaveInstanceState

These are very safe; the first is just a new public API that
allows you to use an existing feature in DialogFragment, and the
second just uses the version of commit that avoids the failure if
happening at a point where the operation would be lost if restored
from the last state (which is no big deal for preferences).

Change-Id: I53971c9fb1efdcd599694cdcd4585b81afc156b8
2011-03-11 13:48:32 -08:00
Amith Yamasani
81d860013c Fix a race condition when entering and exiting a preference fragment quickly.
Bug: 3413715

Fragment was going through STARTED/RESUMED/STARTED/CREATED very quickly and
bindPreferences() was a delayed call that happened after mView was nullified.
Removing the MSG_BIND_PREFERENCES when view is destroyed.

Change-Id: Iec43102c004a266c412b993f17e1a8c1699fb0b1
2011-03-02 16:11:31 -08:00
Jim Miller
0d47ac1176 Merge "Fix 3419077: Allow subclasses to change SeekBarPreference action buttons." into honeycomb 2011-02-03 18:39:39 -08:00
Eric Laurent
0f31fe0968 Issue 3371080: fix volume update in mute state.
VolumePreference should take the stream mute state into account
when updating the progress bar if a change is received by
the content observer

Change-Id: Ia1a8af9d4cc349d2d57753d865e8d2e58daf04f1
2011-02-03 17:34:39 -08:00
Jim Miller
4c8aafe300 Fix 3419077: Allow subclasses to change SeekBarPreference action buttons.
Change-Id: I2c624c3693fe06d9d3db3c203c7d4fc7a80b79d9
2011-02-03 16:17:41 -08:00
Amith Yamasani
998127c804 Enable subclass of SeekBarVolumizer to provide a custom file for sample playback.
Bug: 3409194
Change-Id: I8a408a69fd14cf9058afe01ac5c46d0f5afc1503
2011-01-31 20:28:03 -08:00
Adam Powell
1264c33163 Fix bug 3362375 - API REVIEW: remove unused public 'up' id
Fix bug 3362453 - API REVIEW: android.app.ActionBar

Change-Id: I4e0233cd9355a47682bfe7b4a7fda39801586f1a
2011-01-20 13:25:08 -08:00
Mathias Jeppsson
1560003d4a Fixing memory leak in PreferenceScreen.
Every time the PreferenceScreen is displayed a new ListView is
created and bound to the adapter. As the same adapter is used during
the lifetime of PreferenceScreen and the listviews never gets
unbound, the adapter will contain a list of unused views. The old view
should be unbound from adapter when we create a new view.

Change-Id: I13e2d0dc79c8ff79b58efa650653e3f84c6e53c5
2011-01-18 13:20:34 -08:00
Dianne Hackborn
327fbd2c8f Fix a bunch of API review bugs.
3362464 API REVIEW: android.content potpourri
3362445 API REVIEW: Fragment transaction stuff
3362428 API REVIEW: Fragment stuff
3362418 API REVIEW: Loader stuff
3362414 API REVIEW: android.content.pm.ActivityInfo

Change-Id: I6475421a4735759b458acb67df4380cc6234f147
2011-01-17 16:23:42 -08:00
Dianne Hackborn
db7f38673c Merge "Start renaming FragmentTransaction.openTransaction() to beginTransaction()." into honeycomb 2011-01-17 12:33:50 -08:00
Dianne Hackborn
48e7b45869 Start renaming FragmentTransaction.openTransaction() to beginTransaction().
Change-Id: Ib4a6d824b33cca699b7b25159c491fb610d5f5da
2011-01-17 12:28:35 -08:00
Amith Yamasani
e494662c99 Add back legacy layout for preference framework for compatibility.
Bug: 3184831

Copied holo layouts to *_holo.xml and restored the old layouts for
non-holo (pre-honeycomb) apps to use so that their layout assumptions
aren't messed up.

Change-Id: If4dcef16191a47a4b101da6bfb0c2df1757d1ae4
2011-01-16 17:19:08 -08:00
Amith Yamasani
c9ecb73ccd Add a way to insert a parent bread crumb so that deep linked settings can navigate up.
Bug: 3236568

This adds a way to insert a title as well as get a callback when that title is clicked.
It is not really on the backstack and clicks must be handled via the listener interface.
2010-12-14 15:17:32 -08:00
Amith Yamasani
3e86040439 Potential fix for Settings screen ClassCast exception on the phone.
Bug: 3273396
Change-Id: I92477dc8d5e864027923c52545069710dff3575a
2010-12-10 14:23:39 -08:00
Amith Yamasani
74402cfe4e Remove the OnItemClick listener when the fragment is destroyed.
Bug: 3228510

This probably fixes a lot of other monkey bugs in Settings.
2010-12-09 11:22:15 -08:00
Amith Yamasani
3c9f519f89 Move the breadcrumbs to the right pane.
Bug: 3236568
2010-12-08 23:44:38 -08:00
Jim Miller
c57406cdfa Fix 3148496: Update PreferenceActivity to handle single-pane fragments.
This fixes a couple of bugs I found while updating SecuritySettings.

Change-Id: I9881cff71799ddf3c1d1493c2f7f3bfb31ca7774
2010-12-08 16:33:34 -08:00
Dianne Hackborn
9d0718042f Fix issues #3257701 and #3267312
3257701 Preference headers have duplicated "title" and "summary" if
        title is not loaded from a resource
3267312 Fragment.onConfigurationChanged doesn't get called

Change-Id: I76e346ba88aa632ebb9aa413a2ce2645ebf357cd
2010-12-08 14:52:58 -08:00
Adam Powell
7e06ea80f7 Fix bug 3245210 - Bad window style for action modes for light holo dialog theme
Also fixed some issues with the overlay action mode window styles.

Change-Id: Ie4cf43f6ccf720ef0090ca8bd667fb6d78152f93
2010-12-05 18:29:10 -08:00
Dianne Hackborn
50ed8294d3 Fix issue #3201066: Locale change not reflected by settings
Change-Id: I356c7ec021df7a20f52017e0630d341230ea349f
2010-12-03 16:38:25 -08:00
Mindy Pereira
8b2fb60cd4 Preference changes to layouts.
Change-Id: I37366c3465aa1d8d2bd30fb6ae4b821f5f2d5e2d
Additional changes to make the left and right padding
behave the same way as the top and bottom padding.
That is, our default pref screens will automatically
apply the padding and clipToPadding tags. Custom preference
screens will appear as before.
Uses LayoutParams now instead of a specific id.
2010-11-30 13:57:58 -08:00
Mindy Pereira
35c8be0655 Use getDimensionPixel size instead of casting to an int.
Change-Id: I907c8be25bd4cf0fefc2bb4e0282db2d136da099
2010-11-24 15:28:07 -08:00
Mindy Pereira
2266b92072 Create logic for applying padding only to custom preference layouts
n the case of any standard PreferenceFragment layout, we can
change the list styling to add padding and set clipToPadding to false.
In this case, we don't want extra padding in the parent ViewGroup
(R.id.prefs).
When an app specifies a custom preference fragment layout, we want
to add the previously existing padding styles R.id.prefs.

Change-Id: Idfd77dcbef264c6f5f4121b66fd54c684ad0a288
2010-11-23 14:47:52 -08:00
Amith Yamasani
b65897ba50 Adjust preference activity margins and move the widget back to the right side.
Add a new "icon" field to Preference for adding icons to the left of the preference title.
Several screens such as BluetoothSettings and Accounts have added their own custom preferences
just to add an icon to the left. This makes it simpler going forward.
2010-11-17 15:34:45 -08:00
Dianne Hackborn
3a57fb9e9c Fix issue #3191573: PreferenceFragment.onActivityResult cannot
launch a new fragment on the same call.

There were some problems with the API design where you could do
things in such a way that a back stack entry that was not at the
top would get popped.  Ouch.  Hopefully this change prevents that
from being able to happen.

Change-Id: I8cbc952e12ddd231ff6c84b6e9bbf5125f449f04
2010-11-16 10:50:31 -08:00
Amith Yamasani
8bda1c1ef7 am f8d2aff4: am db65907a: Merge "Adding pan behavior on preference dialog."
* commit 'f8d2aff41d347e029c9c0b1f51f20c92cd1cce8e':
  Adding pan behavior on preference dialog.
2010-11-11 09:10:51 -08:00
Amith Yamasani
f8d2aff41d am db65907a: Merge "Adding pan behavior on preference dialog."
* commit 'db65907a2148f053e51f941979f0f7694acd5923':
  Adding pan behavior on preference dialog.
2010-11-11 09:06:02 -08:00
Dianne Hackborn
ab36acb399 Fixe some stuff.
Addresses these bugs:

3061847 - With no headers, PreferenceActivity crashes
2888426 - minor typo in DevicePolicyManagerService.ActiveAdmin.writeToXml()
3159155 - IllegalStateException:"Can not perform this action after
    onSaveInstanceState" while dismissing a DialogFragment
3155995 - PopupWindow.showAtLocation does not respect LayoutParams

Also tweak the new fragment APIs to use abstract classes instead of
interfaces as base classes.

Change-Id: I9c0b4337fe0e304b737b5f7c2762762372bb3020
2010-11-08 10:46:19 -08:00
Amith Yamasani
8da3529069 Added assets for preference panel and adjusted layout margins for new spec. 2010-11-07 16:46:24 -08:00
Andrew Stadler
83681eb600 Avoid NPE when reloading headers in single-pane mode
Change-Id: I696102b371566872ab1e6dca7281015da534b83f
2010-11-04 15:49:05 -07:00
Jeff Brown
b0418da0e7 Add plumbing for volume mute key.
Full support for the volume mute key will be implemented in a
later change.

Bug: 2912307
Change-Id: I98c27d6360f159c8b7447e04b45f442eff87b38a
2010-11-02 17:31:39 -07:00
Dianne Hackborn
8eb2e244f9 Various PreferenceActivity and related improvement.
This is all about making the preferences implementation better.

Well, mostly all about that.

Change-Id: I8efa98cb5680f3ccfa3ed694a1586de3fb3a9e11
2010-11-01 14:48:34 -07:00
Amith Yamasani
f5cbaeda14 No animation when tapping on current header in a preference screen.
Bug: 3125427
2010-10-27 16:31:05 -07:00
Amith Yamasani
27da0bf0a3 Fix sub-header height to follow drawable. Floating panels for Preference screens. 2010-10-27 11:03:22 -07:00
Peter Eliasson
f313b9e841 Adding pan behavior on preference dialog.
Changed the preference dialog with text input to pan if
the display area is limited. This helps the user to see
the input better.

Change-Id: I12341546f6f82601ac5a2746153255a9b2d49a1c
2010-10-25 14:33:06 +02:00
Brad Fitzpatrick
d532d8d8c1 am ca1db5ae: am dd644c17: Fallback to SharedPreferences.commit() when no apply() exists.
Merge commit 'ca1db5ae68971779fd8af83c908128849f470ae0'

* commit 'ca1db5ae68971779fd8af83c908128849f470ae0':
  Fallback to SharedPreferences$Editor.commit() when no apply() exists.
2010-10-11 17:43:06 -07:00