@@ -0,0 +1,1321 @@
+package ng.kingsley.android.widget;%0A%0Aimport android.annotation.TargetApi;%0Aimport android.content.Context;%0Aimport android.os.Build;%0Aimport android.preference.ListPreference;%0Aimport android.text.TextUtils;%0Aimport android.util.AttributeSet;%0A%0A/**%0A * @author ADIO Kingsley O.%0A * @since 31 Mar, 2016%0A */%0Apublic class ListPreferenceCompat extends ListPreference %7B%0A%0A    public ListPreferenceCompat(Context context) %7B%0A        super(context);%0A    %7D%0A%0A    public ListPreferenceCompat(Context context, AttributeSet attrs) %7B%0A        super(context, attrs);%0A    %7D%0A%0A    @TargetApi(Build.VERSION_CODES.LOLLIPOP)%0A    public ListPreferenceCompat(Context context, AttributeSet attrs, int defStyleAttr) %7B%0A        super(context, attrs, defStyleAttr);%0A    %7D%0A%0A    @TargetApi(Build.VERSION_CODES.LOLLIPOP)%0A    public ListPreferenceCompat(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) %7B%0A        super(context, attrs, defStyleAttr, defStyleRes);%0A    %7D%0A%0A    @Override%0A    public void setValue(String value) %7B%0A        if (Build.VERSION.SDK_INT %3E= Build.VERSION_CODES.KITKAT) %7B%0A            super.setValue(value);%0A        %7D else %7B%0A            String oldValue = getValue();%0A            super.setValue(value);%0A            if (!TextUtils.equals(value, oldValue)) %7B%0A                notifyChanged();%0A            %7D%0A        %7D%0A    %7D%0A%7D%0A

Add ListPreferenceCompat to correctly call notifyChanged on pre-KITKAT devices [android bug]