Commit Graph

238 Commits

Author SHA1 Message Date
Doris Ling
797dd7440d Fix NullPointerException in DashboardSummary.
In onSaveInstanceState(), move saving the suggestions logging lists to
the top so that it will be saved to the bundle even when layout manager
is null.

Test: run monkey
Change-Id: I248563a255158feadeb85898a920af96a1565fa9
Fixes:31111795
2016-08-26 11:13:21 -07:00
Salvador Martinez
030eeeee6d Added guard to logging in AsyncTask
An async task was trying to get the context
in an InstrumentedFragment. This could return
null if the context disappears before the new
thread gets to that line. Logging will now
be aborted if context is null to avoid this.

Test: Manual/Monkey Stability Test
Bug: 31058928
Change-Id: Iae97d389e58a76b0f213a2749415501894ebf649
(cherry picked from commit 566b66e27c)
2016-08-25 17:45:24 +00:00
Doris Ling
bfbb964cb1 Log settings suggestions events only once.
The show/hide settings suggestions events are logged every time Settings
is shown. Save the logged events into the state bundle so that when the
fragment is resumed, it does not re-log the suggestions events.

Also move the logging for the show suggestion event to when the suggestion
is loaded, as the suggestions can be empty when the fragment starts.

Change-Id: I644ea0012bad309e59fed0d48171915c955779cc
Fixes: 30108142
2016-08-23 13:25:06 -07:00
Salvador Martinez
5bd202e277 Merge "can open settings with support tab by default" into nyc-mr1-dev 2016-08-22 21:53:53 +00:00
Lei Yu
dd90acf2c0 Merge "Fix the nullpointer bug in monkey test." into nyc-mr1-dev 2016-08-22 21:49:56 +00:00
Fan Zhang
89d7bca166 When click conditional's title, expand/collapse content.
Bug: 30200101

It used to lead user to detailed setting for that conditional. This
leaves some confusion about which click target goes to where.

Change-Id: Ic9525ace65ca488f4e709576fb1ec96a1cb99938
(cherry picked from commit a2db2ca8fa)
2016-08-22 18:30:16 +00:00
jackqdyulei
409c4708c1 Fix the nullpointer bug in monkey test.
Bug: 30632031

Change-Id: I295bcc804a5e847f99577353c888caa08dc8c7ef
(cherry picked from commit a2938d2a2f)
2016-08-19 18:46:15 +00:00
Salvador Martinez
12c5208ad0 can open settings with support tab by default
Changes were made to the two files to allow users to provide
an argument in the intent for the settings activity. This
argument allows you to specify if you want the summary tab
or support open on startup.

Fixes: 30233920
Change-Id: I4745a0f75ea6a60a22381f5e58f2fac3836d86b9
(cherry picked from commit 2368e548e6)
2016-08-19 18:15:14 +00:00
Fan Zhang
6098913d4b Don't dial any number if DIAL intent is not supported.
Bug: 30868123
Change-Id: Ieb971fdd86011ef0699fdbcfec1ecce2112d0209
2016-08-15 13:24:18 -07:00
Fan Zhang
011362d9f1 Update summary correctly in Settings dashboard.
Bug: 30490325

SummaryLoader needs DashboardCategory to update summary and it currently
ask for it from DashboardAdapter. But DashboardCategory is not always
available in DashboardAdapter. When SummaryLoader wants to get category
from adapter before adapter is ready, it won't have it, causing summary
to appear blank sometimes.

The fix is to get category from data source directly.

Change-Id: I9d7f676954d1cece42d6e03748ab7aa35357f8b7
2016-08-03 15:50:39 -07:00
Fan Zhang
0aebaf1556 Set correct flag when enabling listener for conditions.
Bug: 30551655

Without this flag Settings app will close whenever listener is
enabled/disabled.

Change-Id: I99102308ada3897cf44917e96015c71b926e5fb5
2016-08-01 13:58:57 -07:00
Fan Zhang
d9057df872 Remove spacer above dashboard tiles.
Bug: 30467152

- UX is better without the spacer.
- It also causes animation issues in recycler view during cold start.

Change-Id: I3aab330ea60bba69962132a54e432943e81ff985
2016-07-28 12:51:44 -07:00
Fan Zhang
503a7514f6 Merge "Never disable DnD receiver to dislay condition correctly." into nyc-mr1-dev 2016-07-27 23:49:57 +00:00
Doris Ling
47c6adbd59 Merge "Fix crash when support item is clicked." into nyc-mr1-dev 2016-07-27 23:14:38 +00:00
Fan Zhang
bebba4478d Never disable DnD receiver to dislay condition correctly.
Bug: 30360853
Change-Id: I3e470c2955d7f066970442e281f9d66b153b8d10
2016-07-27 11:08:29 -07:00
Doris Ling
0d4b8a3b19 Fix crash when support item is clicked.
Check for existing activity to handle the support item intent before
adding it to support tile or trying to launch the activity.

Change-Id: I42a733c2d862b303773aeee1ba3b21b718e59066
Fixes: 29118295
2016-07-25 14:06:42 -07:00
Fan Zhang
a0ebd1a9f0 Refresh state after loading conditions from xml.
Fixes: 30330909

When start Settings, conditions is loaded from a xml with potentially
stale state. ConditionLoader needs to refresh states after reading xml
to make sure they are up to date.

Change-Id: Ice1b8bacb0486c5dd230b83670c1494710d1c061
2016-07-25 13:58:39 -07:00
Doris Ling
b7e650c6f7 Check for null activity before getting dashboard categories.
In DashboardSummary, when async task finishes running, ensure that the
fragment is still associated with the activity before getting the
dashboard categories from the activity.

Change-Id: If23cd27a0d3e3429d900ae41ef6f24ed03b9e8d6
Fixes: 30278854
2016-07-21 12:22:17 -07:00
Doris Ling
7e70fd1166 Merge "Combine setCategories() and setSuggestions() in DashboardAdapter." into nyc-mr1-dev 2016-07-20 18:02:43 +00:00
Jason Monk
bd6a4f9066 Merge "Protect against work conditional crash" into nyc-mr1-dev 2016-07-20 13:28:13 +00:00
Justin Klaassen
d60f09edaf Add Night display settings conditional
Bug: 30043281
Change-Id: I2464cd90f1f7f379aabf123f602e6150a87120cf
2016-07-19 14:31:46 -07:00
Jason Monk
31678f14e9 Protect against work conditional crash
Change-Id: Iba6e7281c622e3ba34fa6bd4672b2380b0329808
Fixes: 30014085
2016-07-19 14:22:14 -04:00
Christopher Wiley
9d251279ca Do not use TetherUtil.setWifiTethering
This functionality is replaced by ConnectivityManager.startTethering()
and ConnectivityManager.stopTethering().

Bug: 30147602
Test: Can toggle tethering on/off via all of settings, quick settings,
      and quick quick settings.
Change-Id: I4d190185c473237982b988f898e76d4997dc401c
2016-07-18 11:17:14 -07:00
Doris Ling
38d8582abe Combine setCategories() and setSuggestions() in DashboardAdapter.
In DashboardSummary.rebuildUI(), we first update the adapter with the
current categories, then run the async task to update the adapter with
the suggestions. This causes the adapter to first layout the existing
categories, and relayout when the suggestions is available. This causes
the suggestions view and categories view to overlap before the
relayout is complete.

Since categories and suggestions are borh set each time we try to
rebuild the UI, delaying the update for categories until the suggestions
are ready will avoid the unnecessary relayout of the list elements.

Ran app launch test for Settings app with the change and launch time is
between 412ms and 486ms in 10 runs, which does not show much delay in
app launch time with delaying updating the categories.

Bug: 29318104
Change-Id: I03ae2386392315f28fe2c361682f2f3252e9f827
2016-07-15 13:08:56 -07:00
Matthew Fritze
b8257e6fee Merge "Settings ViewPager now correctly handles RTL mode" into nyc-mr1-dev 2016-07-15 19:06:48 +00:00
Matthew Fritze
44564126c3 Settings ViewPager now correctly handles RTL mode
Previously, the settings and support tabs were incorrectly orderded,
and had inverted transitions on click and on swipe.
Ordering of tabs now correctly displays All Settings as the default,
right tab, and the Support tab to its left. The tab headers also now
function properly in transition, and onclick.

Change-Id: Iab499ee13433cb78941bc33cbb0e99ffe2937174
Fixes: 30079049
2016-07-15 11:55:53 -07:00
Doris Ling
3468853cef Merge "Revert equal check in DashboardAdapter.setCondition()." into nyc-mr1-dev 2016-07-14 03:34:00 +00:00
Tony Mak
1a8be1e372 Merge "Hide Set Wallpaper in Settings suggestion if it is not allowed" into nyc-mr1-dev 2016-07-14 01:22:52 +00:00
Doris Ling
08d34b6a99 Revert equal check in DashboardAdapter.setCondition().
1. Remove the equality check for the conditions list which causes
"Airplane mode is on" to be shown always even when airplane mode is
turned off.
2. Also add mIsShowingAll and mSuggestionMode to instance state.

Bug: 30055644
Change-Id: I0709e9a1b0139e80cdb834cb76a9334dce753e14
2016-07-13 16:17:13 -07:00
Fan Zhang
0bd87d71b8 Add content description to escalation card title.
Bug: 30079904

In strings like "We're here for you 24/7", to avoid talkback read 24/7
as 24/7ths, we need to provide a custom content description.

Change-Id: If51586d97a376e7a859658d7a6dc48108094ddc2
2016-07-13 13:47:04 -07:00
TreeHugger Robot
b10df69a84 Merge "Cross fade escalation card when content changes." into nyc-mr1-dev 2016-07-13 19:46:02 +00:00
TreeHugger Robot
8b47c12550 Merge "Tweak layouts to make support UI look better." into nyc-mr1-dev 2016-07-13 18:51:54 +00:00
Fan Zhang
5df6364d89 Cross fade escalation card when content changes.
Fixes: 30079520

Whenever escalation card needs to change content:
- Instead of rebuilding entire data set, rebuild just escalation data.
- Instead of notify entire data set change, only notify the position
  change for escalation card.
This triggers the cross-fade animation in RecyclerView's
DefaultItemAnimator.

Change-Id: Ia19593d852fa6a1c366aecf9330d8274d7295e85
2016-07-13 10:23:52 -07:00
Fan Zhang
55c6ea25f4 Tweak layouts to make support UI look better.
Fixes: 30087623

- Removed some padding and hide empty textviews.

Change-Id: Id8476aa3870d796c5f5a34c2f3fa6db34918691b
2016-07-13 10:19:56 -07:00
Doris Ling
8c50ced07c Merge "Reduce the number of times that dataset changed is triggerd in DashboardAdapter" into nyc-mr1-dev 2016-07-13 17:13:05 +00:00
Tony Mak
2c5a27dc7a Hide Set Wallpaper in Settings suggestion if it is not allowed
Change-Id: I8030389f3fe945c3df241f347d58b8da04622d9e
Fix: 30089761
2016-07-13 17:57:33 +08:00
Doris Ling
b76de265a2 Reduce the number of times that dataset changed is triggerd in DashboardAdapter
1. Save the suggestion list and the category list into the instance
state so that it will be available on warm start, and avoid the need
to reload the data.
2. Add the condition list to the constructor parameters for
DashboardAdapter, so that it does not need to setConditions()
separately which will trigger notifyDataSetChanged()

Bug: 30055644
Change-Id: Ia04fa3a25b13d2dacf6baf5f412d662a595fb6dd
2016-07-12 18:02:22 -07:00
Fan Zhang
eadc7dc815 Request support rules to refresh when account changes.
Bug: 30079512

When account is added, operation rule can potentially change. Request a
refresh to make sure user sees the latest UI.

Change-Id: I89e9d97bec22d612ca3602d86cc63f8f06355a39
2016-07-12 16:42:40 -07:00
Daniel Nishi
c9ec8c80bc Don't show the Fingerprint suggestion if it is disabled.
Bug: 27202317
Change-Id: I8e97e47f711961cf127fc2135dd06812236829b8
2016-07-12 13:11:19 -07:00
Fan Zhang
48aab452cb UI updates for support tab.
Fixes: 29999181
Fixes: 29397123

- Reduce support tile min height to 48dp.
- Add a 8dp spacer between escalation card and first support tile.
- Show different off-hour support escalation title when support hour is
  always avaiable.

Change-Id: I4dacf2b375734c4819b9b19b68fc84faf083c0d4
2016-07-08 10:26:29 -07:00
Fan Zhang
4178710f3d Fix strings for support tab.
Bug: 29105266

- Fix typos in string and comments
- Use 2 different strings for off-hour and off-line cases.

Change-Id: I63859605ff7185d5f8cc66fd31b56f1d09ed11aa
2016-07-07 08:27:25 -07:00
TreeHugger Robot
a0eb2997a9 Merge "Add logging when click tollfree/tolled phone support button" into nyc-mr1-dev 2016-07-06 20:44:04 +00:00
Fan Zhang
ece8ff63b6 Remove search in support tab.
Bug: 29397123
Change-Id: Id2d43724696c04e890adba562b5476e1834779da
2016-07-06 09:54:07 -07:00
Fan Zhang
a9f7016acd Add logging when click tollfree/tolled phone support button
Bug: 29105266
Change-Id: Ide67c74b6c072c937f97269ad33800cca68a672d
2016-07-01 11:18:13 -07:00
Fan Zhang
016bd60491 Update escalation cards layout and data binding.
Bug: 29397123

- Updated the UI for support escalation cards so different state have
  the same height and text/button shows up at roughly same place.
- Split data model for escalation cards from SupportData. The data and
  UI between escalation cards and support tiles are different enough
  that it no longer makes sense to share the same data object.

Change-Id: I328cc33961b9638e5e5fc2cad3ebf443991f4d0c
2016-06-30 13:57:22 -07:00
TreeHugger Robot
57824d5aaa Merge "Fix a bug where selected country is reset." into nyc-mr1-dev 2016-06-30 16:51:55 +00:00
Fan Zhang
d89d60d9ca Update UI for support tab.
Bug: 29397123
Bug: 29832054

- Increase spinner dropdown width to contain country names.
- Reduce suggestion counter's right padding.
- Tweak paddings in travel abroad phone dialog.
- Update icon and text for help&feedback / tips&tricks.

Change-Id: Ide52c6f8198d1a13a0fdeb000d7cb9e8c03688ca
2016-06-29 10:02:09 -07:00
Fan Zhang
242a7ef1e8 Fix a bug where selected country is reset.
Bug: 29397123

Bug caused by a bad merge.

Change-Id: I6cf4ea8796f712b3d2d9354a9845e9e95eda69b9
2016-06-29 09:39:37 -07:00
TreeHugger Robot
734c550c59 Merge changes from topics 'offline_operation_hours_part5', 'offline_operation_hours_part4' into nyc-mr1-dev
* changes:
  Show a static title/summary if country doesn't have support
  By default select current country in support phone list.
2016-06-28 19:20:03 +00:00
Fan Zhang
ab7a6cf828 Merge "Show operation hours for selected country's support phone" into nyc-mr1-dev 2016-06-28 18:10:32 +00:00