summaryrefslogtreecommitdiff
path: root/tests/DynamicCodeLoggerIntegrationTests/src/cpp/test_executable.cpp
diff options
context:
space:
mode:
authorGarfield Tan <xutan@google.com>2019-01-28 10:26:23 -0800
committerGarfield Tan <xutan@google.com>2019-01-28 16:30:18 -0800
commit47e576c0654c64ff4eab70f9ecacd44109e149a8 (patch)
tree79d93d3380068ccba4653af8c9e59cd0f010b124 /tests/DynamicCodeLoggerIntegrationTests/src/cpp/test_executable.cpp
parent87969723fc13cd69784fffb7ed3e8f8f6eed1a14 (diff)
Bring more visibility logic from stack to activity.
There has been a discrepancy between the condition of pushing configuration to apps in ActivityRecord#ensureActivityConfiguration() and WindowManagerService#relayoutWindow(). This CL tries to remove the discrepancy for most activities (with an exception on activity behind a modal activity in the same stack), by changing relevant logic in ActivityRecord. This effectively fixes b/123127858 (Home page layout issue after exiting a landscape app), but still leaves a question to answer. The root cause of that issue is someone calls startRecentsActivity() to launch Nexus launcher activity and uses mLaunchTaskBehind to promote visibility. In WMS#relayoutWindow() it pushes configuration if mLaunchTaskBehind is true (by setting visibility into AppWindowToken), but ActivityRecord#ensureActivityConfiguration() doesn't consider it visible before this CL. After startRecentActivity() Nexus launcher activity schedules a relayout and receives a landscape configuration because the game is still in the foreground in the relayout pass. Later when it's really brought to foreground ActivityRecord won't push a new configuration to it because ActivityRecord still thinks the last reported configuration is the portrait one. Thus a wrong landscape config stayed. This CL lets ActivityRecord#ensureActivityConfiguration() consider mLaunchTaskBehind and pushes the landscape config, which gives it a chance to fix it when really bringing home to front. Bug: 123127858 Test: Manual test. go/wm-smoke. Change-Id: Iff6ee724a98113921d843344bba322c8b2a55f54
Diffstat (limited to 'tests/DynamicCodeLoggerIntegrationTests/src/cpp/test_executable.cpp')
0 files changed, 0 insertions, 0 deletions