Skip to content

Feature/2888 discussion settings#3387

Merged
kwonye merged 57 commits intofeature/site-settings-reviewfrom
feature/2888-discussion-settings
Nov 24, 2015
Merged

Feature/2888 discussion settings#3387
kwonye merged 57 commits intofeature/site-settings-reviewfrom
feature/2888-discussion-settings

Conversation

@tonyr59h
Copy link
Copy Markdown
Contributor

All new settings complete and some old ones re-visited for self-hosted sites. In order to test most of the self-hosted settings you'll have to update one of the files on your WordPress box. PM me for details.

cc @kwonye

…ion-settings

Conflicts:
	WordPress/src/main/java/org/wordpress/android/models/SiteSettingsModel.java
	WordPress/src/main/java/org/wordpress/android/ui/prefs/DotComSiteSettings.java
	WordPress/src/main/java/org/wordpress/android/ui/prefs/SiteSettingsFragment.java
	WordPress/src/main/res/xml/site_settings.xml
…ion-settings

Conflicts:
	WordPress/src/main/java/org/wordpress/android/ui/prefs/notifications/NotificationsSettingsFragment.java
@tonyr59h tonyr59h added this to the 4.8 milestone Nov 10, 2015
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo: "You can override thee settings"

@kwonye
Copy link
Copy Markdown
Contributor

kwonye commented Nov 19, 2015

I noticed that there is no consistency to capitalization. There's "Allow Comments" and below there is "Links in comments".

Can you do an audit of all the newly committed text in strings.xml for this please?

@kwonye
Copy link
Copy Markdown
Contributor

kwonye commented Nov 19, 2015

Crash. I changed a discussion setting, backed out of settings, and was navigating around the app. (on a .com site)

11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime: FATAL EXCEPTION: main
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime: Process: org.wordpress.android, PID: 32417
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime: java.lang.IllegalStateException: Fragment SiteSettingsFragment{ad94eed} not attached to Activity
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at android.app.Fragment.getResources(Fragment.java:808)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at android.app.Fragment.getString(Fragment.java:830)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at org.wordpress.android.ui.prefs.SiteSettingsFragment.getPrivacySummary(SiteSettingsFragment.java:669)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at org.wordpress.android.ui.prefs.SiteSettingsFragment.setPreferencesFromSiteSettings(SiteSettingsFragment.java:518)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at org.wordpress.android.ui.prefs.SiteSettingsFragment.onSettingsUpdated(SiteSettingsFragment.java:389)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at org.wordpress.android.ui.prefs.SiteSettingsInterface$1.run(SiteSettingsInterface.java:501)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at android.app.Activity.runOnUiThread(Activity.java:5511)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at org.wordpress.android.ui.prefs.SiteSettingsInterface.notifyUpdatedOnUiThread(SiteSettingsInterface.java:498)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at org.wordpress.android.ui.prefs.DotComSiteSettings$3.onResponse(DotComSiteSettings.java:118)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at org.wordpress.android.ui.prefs.DotComSiteSettings$3.onResponse(DotComSiteSettings.java:107)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at com.wordpress.rest.RestRequest.deliverResponse(RestRequest.java:74)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at com.wordpress.rest.RestRequest.deliverResponse(RestRequest.java:18)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at android.os.Handler.handleCallback(Handler.java:739)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:95)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:148)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5417)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
11-18 16:13:02.055 32417-32417/org.wordpress.android E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

@kwonye
Copy link
Copy Markdown
Contributor

kwonye commented Nov 19, 2015

Unchecking "Allow Comments" still allows comments on dubkwon.wordpress.com

@tonyr59h
Copy link
Copy Markdown
Contributor Author

I noticed that there is no consistency to capitalization.

I'm going to have @mattmiklic take a look through the design once this is merged. There will be a cleanup PR to address issues like this.

@tonyr59h
Copy link
Copy Markdown
Contributor Author

Crash.

Addressed in a65770f

@kwonye
Copy link
Copy Markdown
Contributor

kwonye commented Nov 20, 2015

Unchecking "Allow Comments" still allows comments on dubkwon.wordpress.com

Turns out I was unclear about the setting. "Allow comments" only applies to new posts. @tonyr59h has made a note to address the confusion in the polish PR, so effectively addressed.

@kwonye
Copy link
Copy Markdown
Contributor

kwonye commented Nov 20, 2015

Another crash (on self-hosted site):

java.lang.RuntimeException: Unable to destroy activity {org.wordpress.android/org.wordpress.android.ui.prefs.BlogPreferencesActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference
                                                                         at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3831)
                                                                         at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3849)
                                                                         at android.app.ActivityThread.-wrap5(ActivityThread.java)
                                                                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1398)
                                                                         at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                         at android.os.Looper.loop(Looper.java:148)
                                                                         at android.app.ActivityThread.main(ActivityThread.java:5417)
                                                                         at java.lang.reflect.Method.invoke(Native Method)
                                                                         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
                                                                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
                                                                      Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference
                                                                         at org.wordpress.android.models.SiteSettingsModel.serializeToDatabase(SiteSettingsModel.java:296)
                                                                         at org.wordpress.android.datasets.SiteSettingsTable.saveSettings(SiteSettingsTable.java:86)
                                                                         at org.wordpress.android.ui.prefs.SiteSettingsInterface.saveSettings(SiteSettingsInterface.java:112)
                                                                         at org.wordpress.android.ui.prefs.SelfHostedSiteSettings.saveSettings(SelfHostedSiteSettings.java:79)
                                                                         at org.wordpress.android.ui.prefs.SiteSettingsFragment.onDestroy(SiteSettingsFragment.java:149)
                                                                         at android.app.Fragment.performDestroy(Fragment.java:2436)
                                                                         at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1109)
                                                                         at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1159)
                                                                         at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1141)
                                                                         at android.app.FragmentManagerImpl.dispatchDestroy(FragmentManager.java:1992)
                                                                         at android.app.FragmentController.dispatchDestroy(FragmentController.java:218)
                                                                         at android.app.Activity.performDestroy(Activity.java:6406)
                                                                         at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1142)
                                                                         at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3818)
                                                                         at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3849) 
                                                                         at android.app.ActivityThread.-wrap5(ActivityThread.java) 
                                                                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1398) 
                                                                         at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                         at android.os.Looper.loop(Looper.java:148) 
                                                                         at android.app.ActivityThread.main(ActivityThread.java:5417) 
                                                                         at java.lang.reflect.Method.invoke(Native Method) 
                                                                         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
                                                                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

@kwonye
Copy link
Copy Markdown
Contributor

kwonye commented Nov 20, 2015

On self-hosted, setting Send Pingbacks to either on or off turns off Default article settings > Attempt to notify any blogs linked to from the article on WP Dashboard.

@mattmiklic
Copy link
Copy Markdown
Member

I noticed that there is no consistency to capitalization. There's "Allow Comments" and below there is "Links in comments".

I spoke with @drw158 about this while designing this section and he noted that the Material Design guidelines suggest sentence case for all labels:

Capitalize only the first word of each label, and proper nouns.
https://www.google.com/design/spec/patterns/settings.html#settings-labels-secondary-text

So let's standardize on this.

@tonyr59h
Copy link
Copy Markdown
Contributor Author

Another crash (on self-hosted site)

Addressed in e92f491

On self-hosted, setting Send Pingbacks to either on or off turns off Default article settings

Addressed in bae5cb6

@kwonye
Copy link
Copy Markdown
Contributor

kwonye commented Nov 24, 2015

Added #3434 as it is required for settings to go into develop

@kwonye
Copy link
Copy Markdown
Contributor

kwonye commented Nov 24, 2015

Crash when accessing settings while in airplane mode:

FATAL EXCEPTION: main  Process: org.wordpress.android, PID: 7896
                                                                     java.lang.RuntimeException: Unable to destroy activity {org.wordpress.android/org.wordpress.android.ui.prefs.BlogPreferencesActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void org.wordpress.android.ui.prefs.SiteSettingsInterface.saveSettings()' on a null object reference
                                                                         at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3831)
                                                                         at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3849)
                                                                         at android.app.ActivityThread.-wrap5(ActivityThread.java)
                                                                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1398)
                                                                         at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                         at android.os.Looper.loop(Looper.java:148)
                                                                         at android.app.ActivityThread.main(ActivityThread.java:5417)
                                                                         at java.lang.reflect.Method.invoke(Native Method)
                                                                         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
                                                                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
                                                                      Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void org.wordpress.android.ui.prefs.SiteSettingsInterface.saveSettings()' on a null object reference
                                                                         at org.wordpress.android.ui.prefs.SiteSettingsFragment.onDestroy(SiteSettingsFragment.java:149)
                                                                         at android.app.Fragment.performDestroy(Fragment.java:2436)
                                                                         at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1109)
                                                                         at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1159)
                                                                         at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1141)
                                                                         at android.app.FragmentManagerImpl.dispatchDestroy(FragmentManager.java:1992)
                                                                         at android.app.FragmentController.dispatchDestroy(FragmentController.java:218)
                                                                         at android.app.Activity.performDestroy(Activity.java:6406)
                                                                         at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1142)
                                                                         at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3818)
                                                                         at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3849) 
                                                                         at android.app.ActivityThread.-wrap5(ActivityThread.java) 
                                                                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1398) 
                                                                         at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                         at android.os.Looper.loop(Looper.java:148) 
                                                                         at android.app.ActivityThread.main(ActivityThread.java:5417) 
                                                                         at java.lang.reflect.Method.invoke(Native Method) 
                                                                         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
                                                                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

@kwonye
Copy link
Copy Markdown
Contributor

kwonye commented Nov 24, 2015

Great job! Not able to break it anymore 😛

:shipit:

kwonye added a commit that referenced this pull request Nov 24, 2015
…n-settings

Feature/2888 discussion settings
@kwonye kwonye merged commit 91e3352 into feature/site-settings-review Nov 24, 2015
@kwonye kwonye deleted the feature/2888-discussion-settings branch November 24, 2015 04:44
@nbradbury nbradbury mentioned this pull request Dec 8, 2015
24 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants