29cb76849c94bdbd95439e372360a51720c6b067 |
11-Apr-2018 |
Abodunrinwa Toki <toki@google.com> |
FloatingActionMode.setOutsideTouchable Make floating toolbar outside-touchable for link action mode in non-selectable TextView. This allows the user to be able to dismiss the toolbar by tapping outside of the toolbar. Bug: 78099871 Bug: 73156794 Bug: 78298142 Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest Test: bit CtsViewTestCases:android.view.cts.ActionModeTest Change-Id: I8e3b460d0b1baee48d4f9cb3f92e73926eeee231
loatingActionMode.java
|
d842533f224280484839b77d016c2e8da697a0ed |
27-Feb-2018 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Display shortcut modifiers in menu Prepend relevant meta key names (such as Ctrl+) to the shortcut displayed in a menu. Do not prepend "Menu+" if the device does not have a hardware Menu key. Bug: 31045453 Test: run ApiDemos (MenuInflateFromXml), select "Shortcuts", observe Ctrl+ prepended to shortcuts. Change-Id: I1a38bd1baf069dd1adb24a26f89c6db6390b8b8d (cherry picked from commit 0cc2c6b190695ef78029c7b05a175fb3bb7e4098)
enu/MenuItemImpl.java
|
bf7cc38d1f0f3e2cf998a5e37305963c6aa3a39f |
06-Mar-2018 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Display shortcut inline with item title in cascading menu Bug: 74208750 Test: run android.widget.cts.PopupMenuTest on a large screen device such as hikey960. Change-Id: I1c4bca3cfecb012432e6cb89cb4cc0177ccc04f9
enu/CascadingMenuPopup.java
enu/MenuAdapter.java
enu/StandardMenuPopup.java
|
2b00eaed270ccb0994be03e3f01382cf19734571 |
07-Mar-2018 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "IME API: rename IMS methods." into pi-dev
|
ab65025833344b3b55bd146a86d48cabe254a89d |
06-Mar-2018 |
Mike Digman <digman@google.com> |
Reset user rotate pref on navbar create System appears in portrait after restart, however rotation watcher callbacks don't fire leaving user rotate pref stale from last boot. Reset in onCreate and replace override logic with policy's natural rotation. Test: manual Change-Id: Ia1f1e5f637708e5c678edbb5cbf9f4125e451103
otationPolicy.java
|
164cfba536644095b962b45379020a792d3c51c8 |
28-Feb-2018 |
Tarandeep Singh <tarandeep@google.com> |
IME API: rename IMS methods. Incorporating API Review feedback: * Use IMS.switchInputMethod(id) instead of IMS.setInputMethod() * Use IMS.switchInputMethod(id, subtypeId) instead of IMS.setInputMethodAndSubtype() * Renamed switchToLastInputMethod() to switchToPreviousInputMethod() Bug: 73954137 Test: atest InputMethodServiceTest Test: atest CtsInputMethodServiceHostTestCases Change-Id: I6efd5ca473e33e6faeadb7eea7772b9d2b8ca12b
InputMethodManager.aidl
|
f8f0c8df7842f88d3a71476f4175dca59d405fa6 |
04-Mar-2018 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Revert "Introduce InputConnection#reportLanguageHint()""
|
4397591f3da2aa03a22eeca308a78e1027505228 |
03-Mar-2018 |
Yohei Yukawa <yukawa@google.com> |
Revert "Introduce InputConnection#reportLanguageHint()" This reverts commit e77386e8fbe01b7fbf1a04555d4088796d862f03 [1]. Reason for revert: The protocol is not yet ready to be exposed and we are still unsure what is the best approach. [1]: Ie86edafd1ed68b58f702116f561fc448fdbb57a8 Bug: 7031513 Bug: 72522601 Fix: 74087970 Test: atest CtsInputMethodTestCases Change-Id: Ia61dc9b3d5b116199382994430fb16ee804942b3
InputConnectionWrapper.java
InputContext.aidl
nputConnectionWrapper.java
|
a725df9903122591cc2c1e7ce082a8299567d69e |
27-Feb-2018 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Add ViewConfiguration.shouldShowMenuShortcutsWhenKeyboardPresent This method returns config_showMenuShortcutsWhenKeyboardPresent value. It is necessary for the correct support library implementation of menus. Bug: 31045453 Test: build and flash Android Change-Id: Ibdd354b2d00f0c5f5ed91aa4840e942d772516ef
enu/MenuBuilder.java
|
4d0e87d926d22625d54b26342dba913d2948f8d6 |
08-Feb-2018 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix context submenu position"
|
2f731c5585391e94dc80cbf19ce3fea1b088d322 |
05-Feb-2018 |
Tarandeep Singh <tarandeep@google.com> |
Add new InputBindResult.ResultCode for no editor Added a new ResultCode.ERROR_NO_EDITOR for case when there is no focused editor in the current window. This change should've been included in Ibf9dab3d9c138b5f04e053d41ee4fd248c78e4da Bug: 37617707 Fixes: 72913821 Test: Manually check logcats for an activity window: 1. with editor focused 2. with edtior available but not focused (e.g. SearchView) 3. with no editor. Verified that in all cases, InputBindResult isn't null. Change-Id: I681b8a452dc7104ca294d5388219cea9ab41e160
nputBindResult.java
|
eb5706183f62b9230fb1ae9eb22254a062e7869c |
30-Jan-2018 |
Tarandeep Singh <tarandeep@google.com> |
Fix checks for showing InputMethod picker When user tries to switch IME, IMMS.showInputMethodPickerFromClient() is called. The call fails to validate in newly introduced canShowInputMethodPickerLocked() in I4f0fc21268200c64d12b31ca54416acfbf62f37b because mCurClient.client != client. This is happening since the new client never started input ever since we prevented calls to startInputUncheckedLocked in Ibf9dab3d9c138b5f04e053d41ee4fd248c78e4da. The fix is to update mCurFocusedWindowClient.client instead of mCurclient.client in canShowInputMethodPickerLocked() Fixes: 72557082 Test: manually using the steps in bug Test: atest InputMethodManagerTest Change-Id: I4e21625c32a0ca1abc740229efb3c7fcd97141cc
InputMethodManager.aidl
|
a6dfa74dc524c4566d8bab08fb870fcfe235ddde |
25-Jan-2018 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Fix context submenu position Clear the list of presenters in MenuBuilder when the MenuBuilder instance is reset via clearAll. This prevents MenuPresenter instances from accumulating and ensures that a stale instance MenuPresenter is not activated. Bug: 72507876 Test: android.view.menu.ContextMenuTest Change-Id: I4911ca31307bc93901987f08298fa6b2926ba6ab
enu/MenuBuilder.java
|
0ad372a7e40cb18115b881175430ce7c3cdc65d0 |
25-Jan-2018 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix context menu position for RTL"
|
d959c9d203ea41fede8f6b0a54ebb6ef2790e615 |
23-Jan-2018 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Fix context menu position for RTL Based on https://android-review.googlesource.com/574843. Added APCT coverage to verify the fix and prevent regressions. Bug: 70920189 Test: android.view.menu.ContextMenuTest Change-Id: I50a7594e864e05bb155de1ff9d721d6d8986aad1
enu/MenuPopupHelper.java
enu/StandardMenuPopup.java
|
e77386e8fbe01b7fbf1a04555d4088796d862f03 |
23-Jan-2018 |
Yohei Yukawa <yukawa@google.com> |
Introduce InputConnection#reportLanguageHint() The goal of this CL is to introduce a way for IMEs to tell applications about what languages are likely to be used in the text to be committed, for IMEs that support dynamic language switching (especially without relying on InputMethodSubtype). It is already obvious that InputMethodSubtype is not working well for this use case. We need is a simple, easy, and back-portable way that can be widely accepted by the ecosystem. Bug: 7031513 Test: atest CtsInputMethodTestCases Change-Id: Ie86edafd1ed68b58f702116f561fc448fdbb57a8
InputConnectionWrapper.java
InputContext.aidl
nputConnectionWrapper.java
|
492511701f0bbacfe1e6c5e16a5a94bdc7cdfa6e |
19-Dec-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Add popup item content to id/content where applicable"
|
d6558622e8def43f73a1aba8c60ac1c7c0083671 |
18-Dec-2017 |
Alan Viverette <alanv@google.com> |
Add popup item content to id/content where applicable Change-Id: I828357dcfd5f89851c6801d2f466fd84821697da Fixes: 68930822 Test: Visual test in Google Maps
enu/ListMenuItemView.java
|
2553e48886958039f038d4d10cfb0f7f22b3eb5b |
16-Dec-2017 |
Yohei Yukawa <yukawa@google.com> |
Make IMM more robust for window focus stealing This CL is a generalized version of my previous CL [1], which addresed Bug 31056744 where InputMethodManager (IMM) fails to recover from failure mode when IMMS#startInputOrWindowGainedFocus() failes because the app's window is no longer eligible to be the IME target. This CL finally addressed one TODO in that CL. InputBindResult now has the error code, which allows us to force restart input upon the next window-focus-in event. This should make IMM much more robust for that kind of failure modes. For instance, Bug 70629102 is fixed as demonstrated in a newly added CTS test case [2]. Hopefully this may also fix Bug 31056744, which we still do not know how to reproduce. [1]: I60adb38013b063918b074c7b947649eada77b2c8 8e9214b4bd7e6a9d944ad1527199226e575a7530 [2]: I4ea24c87cbbd05e4e68ad7dfafb774c8520188e2 Bug: 31056744 Fixes: 70629102 Test: Added a test case for Bug 70629102 atest CtsInputMethodTestCases Test: Manually made sure that Bug 28281870 is still fixed: 1. Open app that has EditText. 2. Start Input. 3. Long press the task switch button to start multi-window mode. 4. Tap the EditText that is used in step 2. 5. Make sure that the IME still works as expected Test: atest CtsViewTestCates Change-Id: I7572d4b9d678f3669ca54d55718877b145015777
InputMethodManager.aidl
nputBindResult.java
|
cf68d52ce8f21ab85468e6bc7e977aa68b7ab32d |
12-Dec-2017 |
Yohei Yukawa <yukawa@google.com> |
SoftInput flag requires focused View to show IME Historically SOFT_INPUT_STATE_VISIBLE/SOFT_INPUT_STATE_ALWAYS_VISIBLE have not required focused editor View [1] to work. This is easy to use, but also easy to tell IMEs to connect to InputConnection, which is often recognized as a bug by users because often nothing happens when the user taps the software keyboard. This would become more obvious when we start allowing nothing to have focus (Bug 68841055) in Android P. Although how we should deal with "dummy InputConnection" is still an open question, ignoring these SoftInput flags for apps that target P+ when there is no focused editor view is probably better than the current behavior, where non-functional software keyboard is likely to be shown. The user is still able to show the IME by explicitly tap the edit field. As an implementation note, this CL trusts the targetSdkVersion reported from the target application process, which is in general unsafe. That said, for this particular purpose it is acceptable. [1]: focused View that returns true from View#onCheckIsTextEditor(). Bug: 69256929 Test: atest CtsInputMethodTestCases Test: atest FrameworksCoreTests:com.android.internal.inputmethod.InputMethodUtilsTest Change-Id: I56682c7dee71d461687b9e80ab746d382fd55e0c
InputMethodManager.aidl
|
926488d70d09baefee0489537b2915602deaeebf |
12-Dec-2017 |
Yohei Yukawa <yukawa@google.com> |
Use IBinder#shellCommand() for 'adb shell ime' This is a preparation CL to add a new command to 'adb shell ime'. Currently 'ime' command is written in Java language that relies directly on the internal Binder IPC interface IInputMethodManager. This is not ideal because: 1. We have to keep maintaining IInputMethodManager methods used only by the 'ime' command. 2. Adding new options to the 'ime' command is tedious when it requires new methods in IInputMethodManager. With this CL, all features of 'ime' command are re-implemented inside InputMethodManagerService (IMMS) on top of Binder's "shell command" feature [1]. Like 'am' command was gone recently [2], now 'ime' command is also a simple shell wrapper to forward options to 'cmd input_method', which allows us to 1) reduce the code duplication and 2) give non-zero status code when the command fails with Java exception. [1]: I76518ea6719d1d08a8ad8722a059c7f5fd86813a 9461b6f91f37fd32207da1bd734d9ea9629eb8e5 [2]: Ia8187196af597046fd2e7092dbf19ce1dc1ea457 1704e3cf0c445512f0a9644485dd3449e874556b Bug: 70475949 Test: adb shell ime Test: adb shell ime help Test: adb shell ime dump Test: adb shell ime list -a Test: adb shell cmd input_method Test: adb shell cmd input_method help Test: adb shell cmd input_method dump Test: adb shell cmd input_method list -a Change-Id: I9a2dbbf1d4494addbe22c82e2c416eedc4d585f2
InputMethodManager.aidl
|
ab39cc5797ae7d2298b25f543cbb2e175356ebe7 |
08-Dec-2017 |
Tarandeep Singh <tarandeep@google.com> |
Merge "Add support for VR InputMethod."
|
89a6c48a8b2e54f9b93211c20a126edab0eefe35 |
21-Nov-2017 |
Tarandeep Singh <tarandeep@google.com> |
Add support for VR InputMethod. This change adds support for VR-only IMEs in InputMethod framework. In order to set this VR IME, setVrInputMethod(ComponentName) should be called by VrManager. When VrManager calls setVrInputMethod(), IMMS changes updates the selected input method in a transient way i.e. it doesn't update the Settings or input history. Once VR mode finishes, it restores last input from settings. Bug: 63037786 Test: Manually using the sample app in bug. Change-Id: I1db7981b5198e7e203d4578cae7e5b6d20037d0d
InputMethodManager.aidl
|
6e15c2a89ae9733d2552d9d0a20504a4bdf69c29 |
07-Dec-2017 |
Mike Digman <digman@google.com> |
Merge "Extend RotationPolicy to lock the screen at a specific rotation"
|
5c6b6223281e0669e674df3cb489d8544c20fb84 |
07-Nov-2017 |
Adrian Roos <roosa@google.com> |
Display Cutout: Dispatch Cutout from WindowManager Adds the logic to dispatch a DisplayCutout from DisplayFrames through WindowState to the View hierarchy. Does however not yet change how windows are laid out in response to a DisplayCutout. The display cutout is currently never present, the following CL will add logic to emulate a display cutout on devices that do not have a physical one. Bug: 65689439 Test: runtest -x frameworks/base/services/tests/servicestests/src/com/android/server/wm/WindowFrameTests.java Change-Id: Ie4cd4b575755b66a7ffead31e28640983ef4894e
aseIWindow.java
|
6ca8711b7b1a87aec2ad81bf07663bb54058eaca |
06-Dec-2017 |
Mike Digman <digman@google.com> |
Extend RotationPolicy to lock the screen at a specific rotation Test: manual Change-Id: Ic39fed014d614c4c473f6728dd922ca0f1ad2244
otationPolicy.java
|
bdd2c25ef69148e52dd406615efbd4e5ad41b335 |
29-Nov-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Fix horizontal position of tooltip in a Dialog When calculating the horizontal offset, use the top level view's width instead of getWindowVisibleDisplayFrame (which is misleading for Dialog windows). Bug: 69911773 Test: manual Change-Id: I040917d5beb123cc137da5a0c926a45a12e66234
ooltipPopup.java
|
7be787876991819db074bca42782840ac20da08c |
24-Oct-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Skip blocking InputConnection APIs after unbind"
|
a18447dd4bda74c6500c4705b9eb54af63deaf3b |
20-Oct-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "FloatingToolbar updates"
|
1d113d041f113feabe0ff4cc57205fe8876b9e0b |
13-Oct-2017 |
Tarandeep Singh <tarandeep@google.com> |
Skip blocking InputConnection APIs after unbind InputConnectionWrapper has several synchronous methods which have a timeout. If the application's UI thread hangs, all these synchronous methods are blocked and IME stays on-screen. This CL aims to improve the responsiveness of IMEs by rejecting any blocking calls of InputConnection APIs once IInputMethod#unbindInput() is issued by InputMethodManagerService (IMMS). Currently #unbindInput() is issued only from IMMS#unbindCurrentClientLocked(), which basically means that the previous application is losing the IME focus. Underlying #onUnbindInput() signal is still immediately delivered to the IME process, but it's just waiting to be consumed on the UI thread. Hence in theory we can change the behavior of InputConnection seen from the IME once the signal is delivered to the IME process. This CL does not interrupt already blocked API calls, which is one of future work for this scenario. This CL relies on: A. IInputMethod is marked as oneway B. IMMS guarantees that IInputMethod#bindInput() and IInputMethod#unbindInput() are always paired without nesting, and IInputMethod#startInput() is called 0 or more times only during that pair. In this case, the system guarantees that IInputMethod methods will be called back in the IME process in the same order, and only one IPC thread is handling those IPCs at the same time. See the JavaDoc of IBinder#FLAG_ONEWAY for details. Bug: 36897707 Test: Manual: using the apk in the linked bug: 1. Make sure that a valid InputConnection is established between the test app and a test IME. 2. Let the test app start blocking the UI thread. 3. Let the test IME call InputConnection#getTextBeforeCursor() three times. 4. Tap the Home button on the NavBar. 5. Make sure that the test app is immediately dismissed. 6. Make sure that InputConnection#getTextBeforeCursor() starts returning immediately, once after the initial call was timed- out after 2 sec (InputConnectionWrapper#MAX_WAIT_TIME_MILLIS) Change-Id: I0f816c6ca4c5c0664962432b913f074605fedd27
nputConnectionWrapper.java
|
930328ca97bd1ea6e1d56743712fb937492c34b7 |
19-Oct-2017 |
Yohei Yukawa <yukawa@google.com> |
Annotate threads for some IME handling methods This is a preparation to work on Bug 36897707. For instance, the reason why most of IME-related callbacks in InputMethodService get called on the main thread is because IInputMethodWrapper keeps forwarding incoming IPCs into the main looper of the IME process as follows: InputMethodManagerService (IMMS) ------ -> one-way binder IPCs over IInputMethod ------ -> IInputMethodWrapper (on the binder thread(s)) -> Handler (to dispatch tasks to main thread) -> InputMethodImpl.* (on the main thread) -> InputMethodService.* (on the main thread) By adding explicit annotations such as @BinderThread and @MainThread in relevant methods, this CL makes that kind of investigation much easier than before. Bug: 36897707 Test: compile Change-Id: I8f9afe9a1986a9fa41fb66fdc64e8f0f67e45c2e
nputConnectionWrapper.java
|
9c881f227b2a136193a0a9236100075363a76f68 |
16-Oct-2017 |
Abodunrinwa Toki <toki@google.com> |
FloatingToolbar updates - Replace SHOW_AS_OVERFLOW_ALWAYS with SHOW_AS_ACTION_NEVER - MenuItem ordering - Allow textAssist items in overflow to show text with images - MenuItem label text now standard case (not allcaps) Bug: 62447250 Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest Change-Id: I07fa06f433a34adfad20b371417c95ce76422456
enu/MenuItemImpl.java
|
670ceded12e09219c41f4931b23d1baab6ab2fb0 |
12-Oct-2017 |
Tun Zheng <peterzheng@google.com> |
Fix group divider make chrome crash issue. ListMenuItemView's group divider is only existed in popup_menu_item_layout, but Chrome use list_menu_item_layout. It will make NullPointerException and crash the chrome. Fix it by check null before using the group divider. Bug: 66987086 Test: Long click an image from webpage in chrome, click the "Download image" item, and it works well. Change-Id: Ie5f19194a968b4fff0126e1cf8bebda5344c8105
enu/ListMenuItemView.java
|
644b2d1f1e7b4b2fa34fc690ed0054f4001cd4e0 |
29-Aug-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Merge "Fix tooltips for views in a popup window" into oc-mr1-dev am: 6a1dad9194 am: 8e8b215272 Change-Id: I34b9b957b47da302d521b64e80d9e16f094e2b34
|
0b842b465ee1bd09051921901d52107343c368b5 |
26-Jul-2017 |
Tarun Lohani <tlohani@google.com> |
Adding group divider support in Android Menus Added a divider view in popup_menu_item_layout. Hiding divider where they are not required in MenuAdapter. Bug: 32172964 Test: Added test method testGroupDividerEnabledAPI to PopupMenuTest.java Change-Id: I9cf0e9a72f085336e9f136a7ed17aead0e30760c
enu/ListMenuItemView.java
enu/MenuAdapter.java
enu/MenuBuilder.java
enu/SubMenuBuilder.java
|
df6ee1ecbe1d452be1f32bae42871722b2f0de3e |
23-Aug-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Fix tooltips for views in a popup window The current implementation is using the anchor view's getWindowToken to construct the TooltipPopup instance. This does not work if the anchor view is in a popup window. Using getApplicationWindowToken fixes the problem. Bug: 64595364 Test: android.view.cts.TooltipTest#testTooltipInPopup Change-Id: I1a887c9ae6ac00f2412891f316367acfc56cef94
ooltipPopup.java
|
4a7aeb3cb007fc2ebde028e4e6f6b75d273bf07e |
13-Jul-2017 |
Abodunrinwa Toki <toki@google.com> |
Avoid FloatingToolbar flickers by: 1. Restricting 'moving hide' -- where we hide the toolbar if the toolbar is moving. 2. Hide the toolbar when transitioning to 'select all' -- where the toolbar is refreshed. Bug: 32910217 Bug: 30418276 Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest bit CtsWidgetTestCases:android.widget.cts.TextViewTest Change-Id: I1f44ee765d74bbcf08e6e7cd635f76d1e8f6305b
loatingActionMode.java
|
dd469d171d7503da3b8602c3ff0317b81792f2c0 |
16-Jun-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Do not update currently open tooltip. Currently if View.setTooltipText is called while the tooltip is being shown for that view, it will update the displayed text. The tooltip then will resize to wrap around the new text, but not change its position. This looks confusing if the new text is significantly shorter or longer. Removing this functionality until proper re-positioning is implemented. Bug: 38491655 Test: android.view.cts.TooltipTest passes Change-Id: I79689288185888854b992b89e19fe381d3ac50e4
ooltipPopup.java
|
d85915f78694dc15ee9ca1bbdbccffc183399810 |
12-Jun-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Pass window token when creating a tooltip popup This allows using tooltips in System UI. Bug: 62065980 Test: android.view.cts.TooltipTest passes Change-Id: If0a76d0806aa92efa4be57204c4517242b0ebb99
ooltipPopup.java
|
7410170ddc2b19d57e33c04217a721a2572d4853 |
12-Jun-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Revert "Use a PopupWindow to show tooltips" This reverts commit 77e539775b52da55a8b23f1a9765d471ee782013. Change-Id: Ic4054e0d507ce95ab93282d4da002dd804aeb26d
ooltipPopup.java
|
484c2e2fbec02209337bb86fc99b8b253bc06f99 |
08-Jun-2017 |
Siyamed Sinir <siyamed@google.com> |
Force Autofill in FloatingToolbar overflow menu Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest bit CtsWidgetTestCases:android.widget.cts.EditTextTest Bug: 62271937 Change-Id: Ib3447281f3bd1abc811a25fc55ad55e34e155bbb
enu/MenuItemImpl.java
|
77e539775b52da55a8b23f1a9765d471ee782013 |
01-Jun-2017 |
Manu Cornet <manucornet@google.com> |
Use a PopupWindow to show tooltips This allows tooltips to work even in a context where they don't belong in any activity (and therefore no window token to use). It also simplifies a tiny bit the logic of how to get the view to show up. Test: Checked tooltip behavior in and outside an app Bug: 62065980 Change-Id: I6c02009c4fdd6d4bc4fa2cf8019955360506f0ee
ooltipPopup.java
|
17293cc8a214e3ad1e86dd0a4999fa86063bf70f |
22-May-2017 |
Abodunrinwa Toki <toki@google.com> |
Ensure FloatingActionMode has a non-null FloatingToolbar. Test: none Bug: 38472422 Change-Id: I8b1844e0cbbff6dedeb0a89536a4bc27535b56df
loatingActionMode.java
|
101ab58e260e11bf165e1eb00f58761c8657abce |
11-May-2017 |
Peeyush Agarwal <apeeyush@google.com> |
Fix broken MenuItem coretests - Fix MenuItemImpl setShortcut bug caused when method signature was changed after API review - Remove outdated MenuItem coretests and move others to CTS Bug: 38114634 Test: Run `cts-tradefed run cts-dev -m CtsViewTestCases -t android.view.cts.MenuTest` Change-Id: Iebb7e314cbb3f812fcfeb3f95797f1cf1bcfbae2 (cherry picked from commit d70d2e6efccf186af08289eb5dc5fe1835b753ed)
enu/MenuItemImpl.java
|
618cfc122d5ac99c673dc4d38761497fcab10962 |
29-Apr-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Fix submenu position when showing with Gravity.END Bug: 37792927 Test: manual Change-Id: I2a1033cb5b78465188958d8f24128d0fe082587f
enu/MenuPopupHelper.java
enu/StandardMenuPopup.java
|
51efddbd3bb304de2dd47fa8cd1114ac555958bb |
05-Apr-2017 |
Alan Viverette <alanv@google.com> |
Remove unnecessary casts on calls to findViewById Just frameworks/ this time. More paths to come. Bug: 24137209 Test: make -j32 Change-Id: Iff27abd26fa43296ac2fff8f534fc6742d2ae80c
enu/ListMenuItemView.java
|
ed7993b5d147a6741d26fe0b16cc9fa5e34ceaee |
28-Mar-2017 |
Jorim Jaggi <jjaggi@google.com> |
Introduce android.anim thread in system_server We create a new thread on which everything is running that directly impacts window animations, i.e. layout, anim tick and starting window creation. This is such that any work on android.display can not lead to jank in the window animation, specifically lock contention on activity manager lock that blocks callbacks from android.display into AM can not lead to window animation jank. Test: Run animation, take systrace, make sure animation is on android.anim Test: AppWindowContainerControllerTestTest: AppWindowContainerControllerTestss Fixes: 36792959 Change-Id: I5d41419a709b7984724e7053a3afdcc1ffe1aaa2
urfaceFlingerVsyncChoreographer.java
|
d6d6de6da4c7c32babd65c23804d9fdc6eeed740 |
31-Mar-2017 |
Jorim Jaggi <jjaggi@google.com> |
Schedule window animations at vsync-sf Test: Run window animation, make sure it's smooth Test: Take systrace, make sure it runs at vsync-tick Test: Move divider, make sure it's still smooth Change-Id: I1600618e074be811134fe4ccb1dfbd5034820c71 Fixes: 36583867
urfaceFlingerVsyncChoreographer.java
|
55807c973bbe6c0694b0a9a0b4dbb8d6e682ba95 |
24-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Anchor a cascading submenu to its parent menu item"
|
9d9430e7f79b6e8b390a7e436a1fe398e0e95a11 |
22-Mar-2017 |
Evan Rosky <erosky@google.com> |
Merge "Hooked-up options menu closing"
|
6eea0d2a4ce20c9709d2cc9c24c823f7ef795c0a |
21-Mar-2017 |
Kirill Grouchnikov <kirillg@google.com> |
Add support for tinting icon menus Test: CTS tests in separate CL (same topic) Bug: 31545315 Change-Id: I8877c77dab9b7b229b4246012b9380beadeb4790
enu/ActionMenuItem.java
enu/MenuItemImpl.java
|
41823d19b6d1749158fc1643cf0911a8e961c702 |
21-Mar-2017 |
Evan Rosky <erosky@google.com> |
Hooked-up options menu closing Options menus weren't closing properly from menu-key (with CascadingMenuPopup) or from Activity.closeOptionsMenu Bug: 36398283 Test: Added CTS tests: app.ToolbarActionBarTest and app.ActionBarTest#{testOptionsMenuKey, testOpenOptionsMenu} Change-Id: I89f8ed249b505f369a85b899ca7c1b36c863f0c0
enu/CascadingMenuPopup.java
|
446079600ece83b22cb91865bcbeb694292b0108 |
16-Mar-2017 |
Andrii Kulian <akulian@google.com> |
Separate global and override config sent to client There is some flakiness in View#onConfigurationChanged callback - if ViewRootImpl receives config update earlier than ActivityThread, it may not detect the configuration change and skip inner updates. Also now ViewRootImpl assumes that it receives the global config as a param, but instead it gets merged config from WM. This means that ViewRootImpl#sConfigCallbacks was sending incorrect values to the recipients. This CL switches to sending global and override configuration to the client separately. Also in case if there is a corresponding activity, it first updates it and waits for update callback to ViewRootImpl. This way global config and override config for activity will always be set first and resources will be updated before inner state of ViewRootImpl is updated. Bug: 35870157 Bug: 34164473 Test: android.server.cts.ActivityManagerDisplayTests Test: testOnMovedToDisplayCallback Change-Id: Ic9e7541cf25ecfac6ec90e48f7efb0ece91f657e
aseIWindow.java
|
b40e61b77c7109c0b4e50167184e9a64cb20018e |
07-Mar-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Anchor a cascading submenu to its parent menu item The current implementation of cascading menus is anchoring a submenu to the top-level anchor view using a carefully computed offset. This offset is only correct for the case when the submenu is being shown normally, but not when it is flipped due to insufficient space below. More over, when the window containing the anchor is scrolled, the pre-computed might become completely irrelevant, as parent menus might change their above/below state. This CL allows a PopupWindow to be anchored to a view in another popup window (previously it was only possible to anchor to a view in the main app window). Cascading submenu is now tracking its parent item position correctly. Bug: 35768002 Test: android.cts.widget.PopupWindowTest.testAnchorInPopup Change-Id: Id163d739de05729a9fa7e5fedebc9ec0037ed80e
enu/CascadingMenuPopup.java
|
d5c7dd6da810a6b89151b337bea79fd817e6b72a |
08-Mar-2017 |
Robert Carr <racarr@google.com> |
Modify SurfaceView to use SurfaceFlinger child surfaces. Here we have SurfaceView bypass the WindowManager and speak directly to SurfaceFlinger using child surfaces. We also implement some logic in the WM to handle child surfaces in various Surface replacement scenarios. For those following along in the revert Saga, this also includes the follow up CLs to the original CL. - Surface inset calculation - Animation fixes. The error causing the revert was an incorrect JNI signature around deferTransactionUntilSurface. I've noted it inline. Bug: 28858420 Bug: 31518219 Bug: 34888808 Bug: 35588318 Bug: 35396882 Test: Existing tests still pass (except for the ones that don't and will be deleted). Change-Id: Ie56b6f7ab16f32d7fc459b8eba26594337ad55de
urfaceCallbackHelper.java
|
63976669f56ca3be4604af1d0b052566a15ecd2b |
08-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Store alphaChar as lower case in MenuItem's implementations"
|
5aec7b90310ba05f9816fd89030ba41ce48c568e |
08-Mar-2017 |
Wonsik Kim <wonsik@google.com> |
Revert "Modify SurfaceView to use SurfaceFlinger child surfaces." This reverts commit cd4aeef88052571365d4e193a2c41e2e6d145491. Bug: 36027342 Bug: 36015884 Change-Id: Ifd5b69caf64d65a8cd6570b7fe1fb6abe90e30b8
urfaceCallbackHelper.java
|
2ef1d0cfca010b398fef5b6ee242c110a823bb95 |
06-Mar-2017 |
Peeyush Agarwal <apeeyush@google.com> |
Store alphaChar as lower case in MenuItem's implementations We should be working with lowercase everywehre (since SHIFT is also a modifier). Also, in findItemsWithShortcutForKey, we only compare the character against the lower case version of key pressed (and not the upper case version). Bug: 35992521 Test: Manual Change-Id: I01f24afc5f6c9ef55d477806a64a4a1ec262f28a
enu/ActionMenuItem.java
enu/MenuItemImpl.java
|
cd4aeef88052571365d4e193a2c41e2e6d145491 |
03-Mar-2017 |
Robert Carr <racarr@google.com> |
Modify SurfaceView to use SurfaceFlinger child surfaces. Here we have SurfaceView bypass the WindowManager and speak directly to SurfaceFlinger using child surfaces. We also implement some logic in the WM to handle child surfaces in various Surface replacement scenarios. For those following along in the revert Saga, this also includes the follow up CLs to the original CL. - Surface inset calculation - Animation fixes. The error causing revert was a deferTransactionUntil(-1)...-1 cast to uint, defer transaction until MAX_UINT. Bug: 28858420 Bug: 31518219 Bug: 34888808 Bug: 35588318 Bug: 35396882 Test: Existing tests still pass (except for the ones that don't and will be deleted). Change-Id: Ib37236950a1dd3c4f9f4b58fd41ef9003c0557ef
urfaceCallbackHelper.java
|
2ff633cbc3368678133ef94fcc7895183f4ce9b8 |
03-Mar-2017 |
Rob Carr <racarr@google.com> |
Merge "Revert "Modify SurfaceView to use SurfaceFlinger child surfaces.""
|
3896db14751f16f4053e8fa4a82c3d6803054e5b |
03-Mar-2017 |
Jeff Tinker <jtinker@google.com> |
Revert "Modify SurfaceView to use SurfaceFlinger child surfaces." This reverts commit 693f3432ae77d1fcfaaf9d168de861192aacb4c4. P0: When playing encrypted content the Fugu displays a blank screen. Test: with topic "surfaceview-without-wm" reverted, encrypted playback works on ToT oc-release. See repro steps in 35917840#12. bug:35917840 Change-Id: I37fa1e427daff3a1c18ed1c92d035421d891f67c
urfaceCallbackHelper.java
|
0e06ccf488bb7744709b8f3421f3a5a2f5ae69f7 |
01-Mar-2017 |
Rob Carr <racarr@google.com> |
Merge "Modify SurfaceView to use SurfaceFlinger child surfaces."
|
5f9ba4e68e46a0753ccd167aee639d632bdacf74 |
01-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "More accurate cascading submenu position"
|
693f3432ae77d1fcfaaf9d168de861192aacb4c4 |
19-Dec-2016 |
Robert Carr <racarr@google.com> |
Modify SurfaceView to use SurfaceFlinger child surfaces. Here we have SurfaceView bypass the WindowManager and speak directly to SurfaceFlinger using child surfaces. We also implement some logic in the WM to handle child surfaces in various Surface replacement scenarios. Bug: 28858420 Bug: 31518219 Bug: 34888808 Bug: 35588318 Bug: 35396882 Test: Existing tests still pass (except for the ones that don't and will be deleted). Change-Id: Icb7259365b51ebe8c7f6c7cd4f9ba29f9fce08a4
urfaceCallbackHelper.java
|
41ac866961f5aef3db234dd69951f472b5042123 |
25-Feb-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
More accurate cascading submenu position The current submenu positioning logic is based on the assumption that the parent menu was displayed at the exact offset which was passed to the framework. The actual parent menu position could have been adjusted to fit the screen. Bug: 35767083 Test: manual Change-Id: Ib72eb7808ebf894c526d2c44c6116ee72542fd03
enu/CascadingMenuPopup.java
|
2a00f9807c4f447aa9fd4005b40885d80a7b1635 |
24-Feb-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Do not set tooltips on items in list-based menus. The presence of a tooltip (specifically, long click detection logic required by it) interferes with touch processing in AbsListView. Bug: 35726766 Test: android.cts.widget.PopupTest#testItemViewAttributes Change-Id: Ida49c07e5f2e3e06f5994f2cc4aa10ef112376d0
enu/ListMenuItemView.java
|
3dd5fbc569ac67f34e887da5d101e5984ade3945 |
23-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Fix an unintentional switch-case fall-through This is a follow up CL to my previous CL [1], which introduced a classical fall through bug due to a missing return statement. [1]: Ic614f112f960382280acd8891b3af56d47679f08 ce82eb2d865e5ee1b69705ca7a0aedd0e92d0d4e Test: Manually made sure that calling InputConnection#performPrivateCommand() no longer causes IllegalStateException("Already recycled."). Bug: 35079353 Fixes: 35681994 Change-Id: I9aa3c0497385e053718d829aad49495771b22b59
InputConnectionWrapper.java
|
b047b8bd7e363081e91ba6cbc8d09cd355624584 |
09-Feb-2017 |
Andrii Kulian <akulian@google.com> |
Report move to display for activities that handle config changes When activity that is moved between displays handles all configuration changes, it won't be restarted. This CL adds a callback to the client to notify it about display change. Usually it will be followed by onConfigurationChanged, except when configuration didn't actually change. When activity is recreated, it won't receive onMovedToDisplay. Bug: 34862802 Test: android.server.cts.ActivityManagerDisplayTests Test: #testOnMovedToDisplayCallback Change-Id: I9a9501cab788623ada15a31efb53e4b2378639fe
aseIWindow.java
|
ff54b306de12066a7bf67bd494ca8971d8c4135c |
13-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Merge "Track event flow to IMMS#setImeWindowStatus"
|
6db3bfe33d92127d203ec872a0b353585a99f256 |
13-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Track event flow to IMMS#setImeWindowStatus This is part of work to introduce historical debugging infrastructure for Android IME. In this CL, we will focus on the following two event flows. A1. IMMS#attachNewInputLocked() queues MSG_(RE)START_INPUT to deliver new InputConnection/EditorInfo to the current IME A2. The IME triggers IMS#onStartInput()/IMS#onRestartInput() and updates the following fields: - InputMethodService#mStartedInputConnection - InputMethodService#mInputEditorInfo B1. IME is expected to call back IMM#setImeWindowStatus() to notify its window visibility change to IMMS. B2. IMMS updates the following field if the caller is still the current IME. - InputMethodManagerService#mImeWindowVis What this CL aims to do is to enable IMMS to access A1 state when it was in B2 state, by considering that for given a B1 the last A2 happened before B1 is the cause of B1 and B2. To do this, IMMS issues a binder token in A1 and each IME keeps it so that it can be passed in B1. By using this Binder token as a key, IMMS can keep tracking state snapshot taken from each A1. Note that those state snapshots keep alive until the Binder token's proxy in the IME process loses strong reference from its GC root. Test: Make sure `adb shell dumpsys input_method | grep mImeWindowVis` matches to the IME window visibility. Test: Make sure the current IME is not receiving any InvalidParameterException from IMMS. Bug: 35079353 Change-Id: I9921b381e02106dbffff5e0b3d13f0a1245ce807
InputMethod.aidl
InputMethodManager.aidl
|
0bb700914cb84b53a93252e5904826c104b8d65b |
13-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Rely on com.android.internal.os.SomeArgs"
|
ce82eb2d865e5ee1b69705ca7a0aedd0e92d0d4e |
13-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Rely on com.android.internal.os.SomeArgs Before introducing new state tracking IDs to IInputConnectionWrapper, this CL cleans up IInputConnectionWrapper to use com.android.internal.os.SomeArgs instead of local-defined one in favor of possible performance improvement thanks to the process grobal object pool that com.android.internal.os.SomeArgs has. This is a mechanical refactoring CL. No behavior change is intended. Test: No new warnings in `adb logcat` from the following TAGs - IInputConnectionWrapper - InputMethodManager - InputMethodManagerService - InputMethodService Bug: 35079353 Change-Id: Ic614f112f960382280acd8891b3af56d47679f08
InputConnectionWrapper.java
|
d2c47843591f196420211722f7c2e3bcd8ace2ee |
13-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Hide logspam due to redundant finishComposingText"
|
77e51831a448b03cbeeea8ea286b1d584dca74d4 |
13-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Hide logspam due to redundant finishComposingText Currently we see two warning messages "finishComposingText on inactive InputConnection" "finishComposingText on inactive InputConnection" every time every time the View focus is switched from one EditText to another EditText on the same window, which is really spammy. This is actually not critical if IInputConnectionWrapper was already finished, because with my previous CL [1] it is guaranteed that InputConnection#finishComposingText() was already called followed by InputConnection#closeConnection(), which means that the connection is closed and should not accept any further requests. Thus ignoring further #finishComposingText() only means that the system and/or IME is calling #finishComposingText() unnecessarily, which is worth showing spammy warnings in production builds. To reduce logspam this CL hides warnings from the above case behind DEBUG flag. [1]: If2a03bc84d318775fd4a197fa43acde086eda442 aaa38c9f1ae019f0fe8c3ba80630f26e582cc89c Test: Make sure `adb logcat -s IInputConnectionWrapper:*` does not show "finishComposingText on inactive InputConnection" warnings while switching focus across different EditText on the same window. Bug: 35079353 Bug: 35301295 Change-Id: I17f3a4f500bc19ebf8bae771bf658a93627b3ba3
InputConnectionWrapper.java
|
639c371e9615a771e4ad85c32e3e5693c25fe76b |
13-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Introduce @SoftInputModeFlags annotation"
|
618b7a9aec2cda96edbe1d97044f017f605788c6 |
13-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Track the last softInputMode in IMMS"
|
22dac1c8df4ec212e8195a69d2de15d313d724fb |
13-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Introduce @SoftInputModeFlags annotation Doing this allows us to annotate integer values that should corresponds to WindowManager.LayoutParams#softInputMode. Test: There should be no behavior change. RetentionPolicy.SOURCE annotation should change nothing in production code. Test: checkbuild Bug: 32784563 Bug: 35079353 Change-Id: I96300b090edce327d0515c740183abe91ded6bac
InputMethodManager.aidl
nputMethodClient.java
|
22a8923368a41cf50adfbc963c02b66302bb2d41 |
13-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Track the last softInputMode in IMMS A field in WindowManager.LayoutParams softInputMode is something that definitely needs to be kept tracking in historical debugging infrastructure across IME-related processes (Bug 35079353) [1]. As a preparation, this CL enables InputMethodManagerService (IMMS) to include the last softInputMode specified in IMMS#windowGainedFocus() in the dumpsys in human readable format. [1]: As explained in b.android.com/224318, softInputMode misspecified by app developers is a typical root cause of unexpected behavior in keyboard visibility. Bugs such as Bug 23168250, Bug 27275709, and Bug 31770400 fall into this category. Test: `adb shell dumpsys input_method | grep softInputMode=` Bug: 35079353 Change-Id: I485ced030def179dad78b4b811c6eb52b5e5c951
nputMethodClient.java
|
f7526b58960608887b064670bb42f41aa28b8f41 |
12-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Merge restartInput into startInput in internal IPC This is the 2nd attempt to merge restartInput into startInput in internal IPC after fixing the mistake in new parameter order in the previous CL [1]. As a preparation to start tracking all the event flows that cause InputMethodManagerService#setImeWindowStatus(), this CL merges an internal IPC method IInputMethod#restartInput() into IInputMethod#startInput() in favor of simplicity. This is a refactoring CL that should have no behavior change. [1]: Ifda6f74ac1b1370d9e9a9fe60354b692121fdcb9 1a5838e966eab7a9f0dca71cabbc9922babb995e Test: Set true to InputMethodService#DEBUG and make sure startInput() and restartInput() are called in the following scenario. 1. Complete the setup wizard. 2. adb shell am start -a android.app.action.SET_NEW_PASSWORD 3. Proceed to "Choose your password" page 4. Make sure startInput() gets called. 5. Type "aaaa" then hit "CONTINUE" button. 6. Make sure restartInput() gets called. Bug: 35079353 Change-Id: I476d0cf8cbb0a0134941854f9337d9ad15e66a71
InputMethod.aidl
|
9a49f85ae4ae45343838b189cdfd884ffabbd5ff |
12-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Revert "Merge restartInput into startInput in internal IPC""
|
3eaf8674872824e4d44a1de7ad72529c299634f7 |
12-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Revert "Merge restartInput into startInput in internal IPC" This reverts commit 1a5838e966eab7a9f0dca71cabbc9922babb995e [1]. Reason of revert: There was a mistake in the parameter order of MSG_START_INPUT. [1]: Ifda6f74ac1b1370d9e9a9fe60354b692121fdcb9 Test: none. This is a revert. Bug: 35079353 Change-Id: Ic1487768932febe0f1f1b6e71929464e91f357e0
InputMethod.aidl
|
aab4e11c0ac5a73cd5ab7f6e6fb6b9de8c9ffd84 |
12-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Merge "Inline IMMS#resetAllInternalStateLocked()"
|
1a5838e966eab7a9f0dca71cabbc9922babb995e |
10-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Merge restartInput into startInput in internal IPC As a preparation to start tracking all the event flows that cause InputMethodManagerService#setImeWindowStatus(), this CL merges an internal IPC method IInputMethod#restartInput() into IInputMethod#startInput() in favor of simplicity. Test: Done some quick manual testing to make sure that IME is still working Bug: 35079353 Change-Id: Ifda6f74ac1b1370d9e9a9fe60354b692121fdcb9
InputMethod.aidl
|
0d7aff8ab22b25e4215bee1a1f1da830a4d8fbfe |
10-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Inline IMMS#resetAllInternalStateLocked() Currently IMMS#resetAllInternalStateLocked(boolean, boolean) has only two call sites, and the first parameter is the constant for each call site. We can get much simpler code by inlining the method in question into those two call sites. It actually revealed that UNBIND_REASON_RESET_IME should have been called UNBIND_REASON_SWITCH_USER. Test: no behavior change Test: adb shell dumpsys input_method | grep "mMethodMapUpdateCount=" to make sure that switching users can cause the same count increase. Test: adb shell dumpsys input_method | grep "mMethodMapUpdateCount=" to make sure that switching the device locale can cause the same count increase. Bug: 35079353 Change-Id: I63388402369f58d11fdb21b508eb2051ff39fa5b
nputMethodClient.java
|
efdb4289597ad1594eb906aeafd2ebdf8854bdc7 |
09-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Merge "Eliminate out-of-sync IMM#mFullscreenMode error"
|
651ea36f5aaf5751b16bc98899c31fe2ef3cd5c3 |
09-Feb-2017 |
Peeyush Agarwal <apeeyush@google.com> |
Merge "Extend MenuItem to allow modifier keys for shortcut"
|
2bc66171cce4d5ae7bee2c3920e82e45a9d245af |
08-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Eliminate out-of-sync IMM#mFullscreenMode error As explained in the commit message of my previous CL [1], we have had a design issue in how to notify the full-screen mode change from the IME to InputMethodManager running in the target application. Histrically we have done this by using hooking the following IPC from the IME to the target application. InputConnection#reportFullscreenMode() However, since we also want InputConnection to be deactivated in some situations such as the when the target application is no longer focused. In other words, InputConnection is not a reliable way to notify something. As a result, we have suffered from many stale state issues. Bug 21455064 and Bug 28157836 are such examples. In Android N, we introduced yet another hack to work around those issues, but it is really time to fix the protocol design instead. The new strategy is to rely on internal IPCs provided by InputMethodManager to deliver such critical notifications from one process to the other. This is actually more natural because our goal is to make sure that InputMethodManager#isFullscreenMode() always returns the latest value as long as the caller is the focused application. For backword compatibility, applications that are monitoring this callback should continue working, as InputMethodManager emulates the previous behavior. However, as updated in JavaDoc, IMEs are no longer allowed to invoke InputConnection#reportFullscreenMode(), which should be OK because even on previous releases IMEs should rely on InputMethodService#updateFullscreenMode() instead. [1]: Iba184245a01a3b340f006bc4e415d304de3c2696 1544def0facda69c210b0ae64b17394ea2860d39 Fixes: 28406127 Test: Make sure Bug 21455064 is still fixed. 1. Input some words in extract mode. 2. Select a word. 3. Perform copy. 4. Select a word. 5. Rotate the device. 6. Try to select a word. 7. Make sure he word is selected and action mode starts. Test: Make sure Bug 28157836 is still fixed. 1. Rotate device to landscape mode. 2. Tap on EditText and start full screen extracted mode. 3. Rotate device to portrait mode. 4. Long press to start action mode. 5. Make sure Action mode gets started. Test: `adb shell dumpsys input_method` to make sure that fullscreen state is synchronized across the app, IMMS, and the IME. Change-Id: If23e7c7c265ab3dfb48c2fb6fdb361b17d22c594
InputConnectionWrapper.java
InputContext.aidl
InputMethodClient.aidl
InputMethodManager.aidl
nputConnectionWrapper.java
|
e631e32a1a771a36267af3f8af8b64e9365bc19e |
19-Oct-2016 |
Peeyush Agarwal <apeeyush@google.com> |
Extend MenuItem to allow modifier keys for shortcut Before this, CTRL was the default modifier for MenuItem shortcuts. Now, It's possible to specify the modifier in XML or via MenuItem methods. The modifier list includes META, CTRL, ALT, SHIFT, SYM and FUNCTION. WIP on support library implementation Bug: 32165848 Test: Run the tests using following commands: > cts-tradefed run cts-dev -m CtsViewTestCases -t > android.view.cts.MenuTest#testPerformShortcut > cts-tradefed run cts-dev -m CtsViewTestCases -t > android.view.cts.MenuInflaterTest#testInflateShortcutModifiersFromXml Change-Id: I7db4607d4657451934761914efe4c250de109653
enu/ActionMenu.java
enu/ActionMenuItem.java
enu/MenuBuilder.java
enu/MenuItemImpl.java
|
87ca8406d4dc711e9c9dba7a5ffccedc9e212021 |
07-Feb-2017 |
Yohei Yukawa <yukawa@google.com> |
Propagate StartInputReason to attachNewInputLocked As a preaparation to work on Bug 35079353, this CL makes it clear that IMS#startInput()/IMS#restartInput() can be also be triggered by IMMS#onSessionCreated(). By doing this, we can now assume that each IMS#startInput()/IMS#restartInput() event has always one corresponding StartInputReason. In a subsequent CL, we will pass this to the IME process (and to the app process) for further traceability. Test: no behavior change. Bug: 35079353 Change-Id: I604e35b023d27b77126cd70fe068dc6b5edc2611
nputMethodClient.java
|
3787de16d24001eeb452e1c711d4290a396e67c9 |
21-Dec-2016 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Implement pointer capture API When in pointer capture mode, mouse pointer disappears and further mouse events are dispatched to the focused view in the window which has requested capture. The captured events have the source SOURCE_MOUSE_RELATIVE belonging to SOURCE_CLASS_TRACKBALL. They are dispatched through dispatchCapturedPointerEvent / onCapturedPointerEvent. There is also a new listener. Pointer capture mode may only be granted to a currently focused window, and will be canceled upon a window focus change. Test: cts-tradefed ... --test android.view.cts.PointerCaptureTest Bug: 30897034 Change-Id: I6e5934aa415ac2b6dda1cee173d0f23e5021af84
aseIWindow.java
|
6a944ca17547e520ed4988125ee4c1f172c87946 |
19-Jan-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Rename View.setTooltip/getTooltip to setTooltipText/getTooltipText Bug: 34454987 Test: android.view.cts.TooltipTest Change-Id: I7203d5c61804b79584ba8449643c6c0f27a90747
enu/ActionMenuItem.java
enu/ActionMenuItemView.java
enu/IconMenuItemView.java
enu/ListMenuItemView.java
enu/MenuItemImpl.java
|
3b6bcfb65d3a869ac36f5fea9a78820e1268470a |
11-Jan-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Require InputContentInfo.requestPermission()"
|
6b422e287c984c85f8c1406db7d127e82787826e |
10-Jan-2017 |
Yohei Yukawa <yukawa@google.com> |
Require InputContentInfo.requestPermission() This CL logically reverts my previous CL [1], which allowed the system automatically grant a temporary URI permission to the target application when the IME calls InputConnection#commitContent() with InputConnection#INPUT_CONTENT_GRANT_READ_URI_PERMISSION. Based on conversations with application developers who have supported Commit Content APIs, I concluded that my assumption that automatically granting the permission without an explicit call of InputContentInfo.requestPermission() would help application developers was wrong. They anyway need to take care of the situation where the app fails to read the data from the given content URI. Thus just receiving SecurityException() because of not calling it is still one of such cases that application developers cannot forget about. Therefore with this CL InputContentInfo.requestPermission() becomes mandatory when InputConnection#INPUT_CONTENT_GRANT_READ_URI_PERMISSION is specified. [1]: Id955435dd2e72549ee7134f46b3c6951581694ad f3806f57a59ede663f3fa2ad1f5080bdbf20e372 Bug: 32315394 Test: By github.com/googlesamples/android-CommitContentSampleApp Change-Id: I8a3cb79ae6d6c4113914734799b21bfc96e3ca3e
InputConnectionWrapper.java
|
5df7f1ab6183d5abe50b1bfe00cc86eec23f8cf0 |
10-Jan-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Provide non-blocking SurfaceView draw notification path."
|
25cfa134835e3791bdb6572f5e25cf4599015678 |
16-Nov-2016 |
Robert Carr <racarr@google.com> |
Provide non-blocking SurfaceView draw notification path. SurfaceView needs to notify the window manager that drawing has been completed, so that animations and such can begin. Currently this is implemented through having the SurfaceView user block in surfaceRedrawNeeded (called from UI thread) until a frame has been completed. This blocking can be unnecessary serialization during startup, and also clumsy to implement for some users. Test: GLSurfaceView and takeSurface API Demos, android.server.cts.SurfaceViewTests Bug: 31850030 Change-Id: Idda02098a635f25cf392f2d59a3abbe54a1d64d4
aseSurfaceHolder.java
urfaceCallbackHelper.java
|
7039cbc6f3a596aee6851014019849490f358f13 |
04-Jan-2017 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Add content description and tooltip to menu item Bug: 34076597 Test: manual Change-Id: Ide32463252457721286c929ab2f8f7bae241835d
ooltipPopup.java
enu/ActionMenuItem.java
enu/ActionMenuItemView.java
enu/IconMenuItemView.java
enu/ListMenuItemView.java
enu/MenuItemImpl.java
|
20a12da3ce5bf1bea6e580ef36e92ce26b21b0ea |
06-Dec-2016 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Adjust tooltip layout Position a mouse hover tooltip closer to the target. Limit tooltip width and make it multiline (maxLines=3). Show a long press tooltip above the target, not below. Bug: 33352391 Bug: 33353823 Bug: 33354000 Test: manual Change-Id: Ie00353d715d73d432b5d892a0a7c04508a003a78
ooltipPopup.java
|
d3e2ba30172864943443ed1f4f3d688b7c8ac78f |
12-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix blink of final position in activity transitions."
|
f9c4b57b02d4fff00a5ca0d3dc2899415ec4f1bf |
10-Dec-2016 |
George Mount <mount@google.com> |
Fix blink of final position in activity transitions. Bug 33059372 When implementing OneShotPreDrawListener, one of the onPreDraw() calls was supposed to return false. This CL restores that behavior. Test: manual against Play Movies app Change-Id: I416da3bb3e84efb009f0efbacad71d0a2f66fe18
neShotPreDrawListener.java
|
b265617b810082ec743389fa0468d1df91d66f68 |
23-Nov-2016 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Replace Toast-based cheat sheets with tooltips Currently ActionMenuItemView, MediaRouteButton and ScrollingTabContainerView each have their own implementation of a Toast-based long-press tooltips (the last two apparently copy/pasted from the first). Replacing those with the recently introduced tooltips supported by the framework. Bug: 31516506 Test: manual in ApiDemos Change-Id: Ibcb8c5a43577a8b4d30f1a26e48ddcfde015d1dc
enu/ActionMenuItemView.java
|
e9bf7c843664c16aaeac4cd79550a7461ae00b5d |
01-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Introduce PathInterpolator to native animators"
|
9e9eeeeb78d94804cda00c2b36e56fdaca5552d6 |
29-Nov-2016 |
Doris Liu <tianliu@google.com> |
Introduce PathInterpolator to native animators For interpolators defined with a path, PathInterpolator is more accurate and likely less costly for longer animations than what are currently using as a substiute - LUTInterpolator. Test: manual test and added a unit test BUG: 32830741 Change-Id: I867c7a28e4261392cce9c45a2992ab4fd120c496
nimation/NativeInterpolatorFactoryHelper.java
|
f847ee3c3d68e58b0a1a545bd7358ebb32f6948a |
21-Nov-2016 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Implement tooltip support in View Adding View.setTooltip/getTooltip and 'tooltip' layout attribute. Following Material Design spec for styles and behavior. Bug: 31515376 Test: cts-tradefed run singleCommand cts -m CtsViewTestCases --test android.view.cts.TooltipTest Change-Id: I2d2527f642cd7446ffc88d4beffc7b81d7a2f6d6
ooltipPopup.java
|
f0b46b9540b48448c1f1fbe55ca2930770bd72e2 |
31-Oct-2016 |
George Mount <mount@google.com> |
Use safe access to OnPreDrawListener. Bug 32472451 It is important to remove an OnPreDrawListener from the correct ViewTreeObserver. When a View is added to the view hierarchy, the initial ViewTreeObserver is not active. The listener must then be removed from the current OnPreDrawListener. When a View has been removed from the hierarchy, it is important to remove the listener from the orignal ViewTreeObserver. Test: cts-tradefed run singleCommand cts -d --skip-preconditions --skip-connectivity-check -m CtsUsageStatsTestCases Test: cts-tradefed run singleCommand cts -d --skip-preconditions --skip-connectivity-check -m CtsFragmentTestCases Change-Id: I735f71d2d9c84e86ef846aab0088a8651300fbe8
neShotPreDrawListener.java
|
6bc701421047bf881ee16c49b242ea19ae4cd9b9 |
27-Oct-2016 |
John Reck <jreck@google.com> |
Add SurfaceHolder#lockHardwareCanvas() Bug: 26988043 Test: SurfaceViewTests#testSurfaceHolderHardwareCanvas CTS test Change-Id: I3e5352d498dbe2fc56a18ca27360d129a14c7784
aseSurfaceHolder.java
|
c75e8dbf15c2999fe4356a1a84af27c832df2296 |
15-Oct-2016 |
Yohei Yukawa <yukawa@google.com> |
Handle exceptions from #requestPermission() am: 93278ca144 am: f8621ff5bf am: 36e5feffb7 Change-Id: I31405b72394d8425679e4b39ef89d4c68c2f9e11
|
93278ca144bef7d8af7a014e278f552da1fcb38c |
14-Oct-2016 |
Yohei Yukawa <yukawa@google.com> |
Handle exceptions from #requestPermission() This is a follow up CL to my previous CL [1] that let IInputConnectionWrapper to call InputContentInfo#requestPermission() automatically so that temporary URI permissions can be granted automatically on API 25+ devices whenever INPUT_CONTENT_GRANT_READ_URI_PERMISSION is specified. However, in that CL we forgot to handle exceptions thrown from InputContentInfo#requestPermission(). This is problematic because it is actually easy for IMEs to cause SecurityException by specifying a content URI that does not allow grantUriPermission, e.g.: inputConnection.commitContent( new InputContentInfo(Uri.parse("content://call_log/test"), new ClipDescription("test", new String[]{"image/gif"})); As a result, IMEs can let the application crash at any time because InputContentInfo#requestPermission() is automatically called inside the Framework. This CL makes sure that exceptions thrown from InputContentInfo#requestPermission() can be handled gracefully. [1]: Id955435dd2e72549ee7134f46b3c6951581694ad f3806f57a59ede663f3fa2ad1f5080bdbf20e372 Bug: 32162481 Change-Id: I08916a1f54518390d3b67ab1673dc901e3f9716a
InputConnectionWrapper.java
|
d1eb19c65e89a67cfc63ed5496825b79a3bfe1ed |
21-Jul-2016 |
Abodunrinwa Toki <toki@google.com> |
FloatingActionMode: Avoid calling delayed code if view is inactive. If something's gone wrong with the floating toolbar's host view while there is logic posted in a runnable, avoid running that code. These runnable callbacks are currently removed when the action mode is finished but the issue we're running into is something else. Seems like the app doesn't get a chance to call finish when something went wrong with the view or host activity. Anyway, defend against this case. Test: Not able to reproduce the issue. This code is a defensive fix to prevent reported crashes in GSA. Will keep if the crashes no longer happen or revert if they continue to happen. Bug: 29951043 Change-Id: I0e7833b8d8a63bf6205b7035b477bd8a3a7968b2
loatingActionMode.java
|
49f1a76a4412ef4e36f1f647fa7ec182e6cf9b58 |
04-Aug-2016 |
Abodunrinwa Toki <toki@google.com> |
FloatingActionMode: Use DisplayMetrics.getRealSize for screen size. Change-Id: I841bce64a63460452f378a8f612c386a31e88865
loatingActionMode.java
|
f9e2c1b326f64cd3805c2ce80a0f13b20a671556 |
27-Jul-2016 |
Chris Banes <chrisbanes@google.com> |
Fix CascadingMenuPopup width if background has padding DO NOT MERGE Happens because CascadingMenuPopup calls setWidth() rather than setContentWidth() like StandardMenuPopup does. BUG: 30365568 Change-Id: Id850baaf1d9c5664220766e5e37869e2ec361a2d
enu/CascadingMenuPopup.java
|
b95bf3cff4eda8931e22a91806cc097cd3170c2b |
27-Jul-2016 |
Chris Banes <chrisbanes@google.com> |
Fix CascadingMenuPopup width if background has padding Happens because CascadingMenuPopup calls setWidth() rather than setContentWidth() like StandardMenuPopup does. BUG: 30365568 Change-Id: I349b5cf81982d7efc85342ab672f2b4e65bafd70
enu/CascadingMenuPopup.java
|
87c60d66f453a909be32ada4c9b7d32330aac069 |
22-Jul-2016 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Revoke drag and drop related grants on client crash Add a token on the client side, linkToDeath to it on the server side. Bug: 29586254 Change-Id: I41ef6dd58352514035c95a4ec9e49c92ea240661
DragAndDropPermissions.aidl
|
cc59a84490752be0dc33df56eff2f5b4147aea93 |
17-Jul-2016 |
Abodunrinwa Toki <toki@google.com> |
Merge \\"FloatingActionMode: Fix screen coordinates.\\" into nyc-mr1-dev am: 3b8e0fdf92 am: c749762107 Change-Id: If82be88fcf267aef7f239e9ab30e3e594fcf945e
|
afb38c5cc4226ce82367015f4ce52765018226d6 |
15-Jul-2016 |
Abodunrinwa Toki <toki@google.com> |
FloatingActionMode: Fix screen coordinates. Use application context to get the screen's display metrics. Bug: 30127070 Change-Id: I2c453c494ef210c12d89fc7e3ff026728f9ecb0f
loatingActionMode.java
|
664e6d18dbed91352d6de6258722ef8767d0576f |
01-Jul-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge \\"Automatically grant URI permission as needed.\\" into nyc-mr1-dev am: d2e046a720 am: 1a932852d4 Change-Id: I1b54d8e32c4813d641df66075f3845f94858c63b
|
f3806f57a59ede663f3fa2ad1f5080bdbf20e372 |
01-Jul-2016 |
Yohei Yukawa <yukawa@google.com> |
Automatically grant URI permission as needed. With this CL, the system automatically grants a temporary URI permission to the target application when the IME calls InputConnection#commitContent() with InputConnection#INPUT_CONTENT_GRANT_READ_URI_PERMISSION. The temporary permission will be revoked by any of the following events: - InputContentInfo#releasePermission() is explicitly called by the target application. - The target application returned false in InputConnection#commitContent(). - All the InputContentInfo instances copied from the original one are GC-ed. If we do not do this and there is an application that forgot to call that method then there is no way for IME developers to prevent permission denial from happening in the application except for relaxing the default permission of the ContentProvider just because of such an application. Although application developers are still expected to explicitly call InputContentInfo#{request,release}Permission(), forgetting to call InputContentInfo#requestPermission() does not hurt the user anymore. With this CL, calling InputContentInfo#requestPermission() after calling InputContentInfo#releasePermission() is also allowed. Bug: 29892936 Change-Id: Id955435dd2e72549ee7134f46b3c6951581694ad
InputConnectionWrapper.java
|
9758d81dbe8e286684220a96e2a7847c0d1236b2 |
30-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge \\"Revert \\"Remove InputContentInfo#requestPermission()\\"\\" into nyc-mr1-dev am: 8acb1a7570 am: 359acdee5f Change-Id: Ia55a7e5095f93cb8f37edca65d2206fbf54316f3
|
79d1c75a3f774bd8c4742f9d7bbd29161c3f1f68 |
30-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Revert "Remove InputContentInfo#requestPermission()" This reverts commit c4b8f36de5523366e354fc01b6cba81ad72f6423. Having InputContentInfo#requestPermission() should not hurt developers, but we can polish the behavior in a subsequent CL without changing the API. Bug: 29450031 Bug: 29892936 Change-Id: I1b43c19417b643d0c269af860db2d309b73a90d5
nputConnectionWrapper.java
|
90471019776a0d0f8c996fe9fa164bf5bee0b083 |
30-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge \\"Remove InputContentInfo#requestPermission()\\" into nyc-mr1-dev am: c80c64a97b am: 854e6f8501 Change-Id: Ia84ebe07d1abf469ed461aa524c38ffa76a5ea53
|
c4b8f36de5523366e354fc01b6cba81ad72f6423 |
30-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Remove InputContentInfo#requestPermission() It turns out that requiring editor authors to call InputContentInfo#requestPermission() as needed is just confusing and can cause compatibility issues, because if an editor author forgot to call that method then there would be no way for IME developers to prevent permission denial except for relaxing the default permission of the ContentProvider just because of such an application. This is not what we want to see. My conclusion is that the system should automatically call InputContentInfo#requestPermission() (or do any equivalent operation) when InputConnection#INPUT_CONTENT_GRANT_READ_URI_PERMISSION is specified, like we have done in Context#startActivity(). With this CL, the system automatically grants a temporary URI permission to the target application when the IME calls InputConnection#commitContent() with InputConnection#INPUT_CONTENT_GRANT_READ_URI_PERMISSION, and the temporary permission will be revoked by any of the following events: - InputContentInfo#releasePermission() is explicitly called by the target application. - The target application returned false in InputConnection#commitContent(). - All the InputContentInfo instances copied from the original one are GC-ed. Bug: 29450031 Bug: 29892936 Change-Id: I37fb744e4d3d1c59177fb0a9be4ef5c325c9a39f
nputConnectionWrapper.java
|
79bf9d19f2f76cbfbd6659c9323e519deaa887c7 |
19-May-2016 |
Siyamed Sinir <siyamed@google.com> |
Fix bidi desired width calculation Layout.getDesiredWidth measured text with TextDirectionHeuristics.LTR, whereas the real calculations used the active direction heuristic set in the TextView instance. This CL uses the same heuristics for both of them by passing the value to Layout.getDesiredWidth function. Bug: 28845953 Change-Id: I68d23f55fe5a86255d62e83bc62df38a047e4bca
enu/IconMenuItemView.java
|
a3fd8bfdfeb1cb54da6d6803a97708199efa92a7 |
27-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge \"Merge \\"Use a flag to grant a temporary URI permission.\\" into nyc-mr1-dev am: cb56978912\" into nyc-mr1-dev-plus-aosp am: c58ffb3f9c Change-Id: Iddc693412d20b86c3a916dd09764d14d23c4fcf4
|
45700fa135e83ed44e4b69ca60cf12960a5898d7 |
24-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Use a flag to grant a temporary URI permission. It turns out that we can let the system to call InputMethodService#exposeContent(InputContentInfo, EditorInfo), which added in my previous CL [1], during the IME is calling InputConnection#commitContent() as follows. [IME] InputContentInfo contentInfo = new InputContentInfo( contentUri, new ClipDescription(description, new String[]{mimeType}), linkUrl); getCurrentInputConnection().commitContent( inputContentInfo, InputConnection.INPUT_CONTENT_GRANT_READ_URI_PERMISSION, null); [App] try { contentInfo.requestPermission(); // Load inputContentInfo.getContentUri() here. } finally { contentInfo.releasePermission(); } This gives us flexibility to let InputConnection#commitContent() do all the magic for IME developers like other APIs such as Context#startActivity(), rather than asking them to call one more API to grant a temporary URI permission like a scenario where Context#grantUriPermission() is used. [1]: I2772889ca01f2ecb2cdeed4e04a9319bdf7bc5a6 25e0813e6eb6315b1016db805fa9b791b4ae5cc2 Bug: 29450031 Change-Id: I99536cd58c9984af30b0bafb4a1dd25a26634a2d
InputConnectionWrapper.java
InputContext.aidl
nputConnectionWrapper.java
|
bf055ba65844f3df53d48554255afd7ba97691ab |
23-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge \\"Add InputMethodService#exposeContent()\\" into nyc-mr1-dev am: dc42d7dd13 am: d02470f5a8 Change-Id: Id551d53ae3d7c34157ddf166aa44bdef67d46853
|
25e0813e6eb6315b1016db805fa9b791b4ae5cc2 |
23-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Add InputMethodService#exposeContent() This is a follow up CL to my previous CLs [1][2] that introduced InputConnection#commitContent(InputContentInfo, Bundle) API to enable IMEs to send a content to the target application. With this CL, IME developers are able to temporarily expose InputContentInfo object to the target package without permanently granting URI permission. Although calling IMS#exposeContent() is allowed only for the IME that is currently selected, the client is able to request a temporary read-only access even after the current IME is switched to any other IME as long as the client keeps InputContentInfo object. Here is a sample code snippet about how to use this mechanism. [IME] InputContentInfo contentInfo = new InputContentInfo( contentUri, new ClipDescription(description, new String[]{mimeType}), linkUrl); exposeContent(contentInfo, getCurrentInputEditorInfo()); getCurrentInputConnection().commitContent(inputContentInfo, null); [App] try { contentInfo.requestPermission(); // Load inputContentInfo.getContentUri() here. } finally { contentInfo.releasePermission(); } [1]: Iaadf934a997ffcd6000a516cc3c1873db56e60ad 152944f4909c47917473293b258d266435c6ab35 [2]: Ica1ba3154795c1bf44e140dfe639b299f83cd8af adebb52588b098a1af678d4e33a234ef1ce783b2 Bug: 29450031 Change-Id: I2772889ca01f2ecb2cdeed4e04a9319bdf7bc5a6
InputMethodManager.aidl
|
045de3f08cd3ca0e884e4e36dff7d448f9788018 |
18-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge \\"API Rename: IC#inputContent to IC#commitContent.\\" into nyc-mr1-dev am: 01e7c10d37 am: 0d7dcf7bc3 Change-Id: I5c4209a79e7426192da082100ac2a7517de36b81
|
adebb52588b098a1af678d4e33a234ef1ce783b2 |
17-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
API Rename: IC#inputContent to IC#commitContent. As shown in below, we have already used commit* naming convention in InputConnection. - InputConnection#commitCompletion(CompletionInfo); - InputConnection#commitCorrection(CorrectionInfo); - InputConnection#commitText(CharSequence, int); Hence renaming IC#inputContent() to IC#commitContent() would make the new method more consistent. Bug: 29450024 Change-Id: Ica1ba3154795c1bf44e140dfe639b299f83cd8af
InputConnectionWrapper.java
InputContext.aidl
InputContextCallback.aidl
nputConnectionWrapper.java
|
e3d3740f1cd2cd6feef65f6901ab2200a7eaa3c1 |
14-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge \\"Add InputConnection#insertContent().\\" into nyc-mr1-dev am: 03f759e87e am: 176642ec2c Change-Id: I96395b6e883aa7dd462d1281b6859afa7b324937
|
03f759e87e0701f7237b079c8a5a3cb0a49e951d |
14-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge "Add InputConnection#insertContent()." into nyc-mr1-dev
|
152944f4909c47917473293b258d266435c6ab35 |
11-Jun-2016 |
Yohei Yukawa <yukawa@google.com> |
Add InputConnection#insertContent(). Providing an official protocol for IMEs to insert an image to the application is something that has been requested from many IME developers to Android OS. With this CL, IMEs are able to ask applications to insert a content including image files as follows. 1. An application that opts in to this protocol specifies a list of supported content MIME types in EditorInfo#contentMimeTypes. 2. When an IME is actively interacting with such an application, the IME can call InputConnection#insertContent() with a InputContentInfo that contains content URI, metadata (ClipDescription), and an optional link URI. 3. The application can read the stream data from the given content URI to insert the content into somewhere in the application. Detailed design background can be found in the JavaDoc of InputConnection#insertContent(). Bug: 22830793 Change-Id: Iaadf934a997ffcd6000a516cc3c1873db56e60ad
InputConnectionWrapper.java
InputContext.aidl
InputContextCallback.aidl
nputConnectionWrapper.java
|
c9493879d7b38b9d0b5b09aa3760966a3ca33eac |
03-Jun-2016 |
Doris Liu <tianliu@google.com> |
Support Keyframe definition for AVD on RT BUG: 27441613 Change-Id: Iece386f65f3704d1b7caa2b3690a8d3048ccf6e2
nimation/FallbackLUTInterpolator.java
|
7e1d49326719076401b43b28649a827478ea6487 |
09-Jun-2016 |
Doris Liu <tianliu@google.com> |
Merge "Support Keyframe definition for AVD on RT"
|
a6b967cfc54408f6ee78ae0e4695eca6efd62e89 |
03-Jun-2016 |
Doris Liu <tianliu@google.com> |
Support Keyframe definition for AVD on RT BUG: 27441613 Change-Id: Iece386f65f3704d1b7caa2b3690a8d3048ccf6e2
nimation/FallbackLUTInterpolator.java
|
e051f6f1fdb5e21cbed394d29dfcab5c642e4129 |
13-May-2016 |
Michael Wright <michaelwr@google.com> |
Rename PointerIcon and Pointer Capture APIs This is a response to API council feedback. Bug: 26830970 Change-Id: I1be541a53e3943d06640169671824f7daea15462
aseIWindow.java
|
32c0e434a77d7e637a5bebedaa5848715fe1a628 |
25-May-2016 |
Keisuke Kuroyanagi <ksk@google.com> |
Merge "Set input method mode for CascadingMenuPopup." into nyc-dev am: edebcae978 am: 66e5b59d85 am: c2a363fd24 * commit 'c2a363fd24a95e8afd9124e88e7c8227849744cf': Set input method mode for CascadingMenuPopup. Change-Id: If142a782c2cf9b930e16382ab3986dd11821ed1b
|
edebcae9781fa897914952e9346a14afd2e08967 |
25-May-2016 |
Keisuke Kuroyanagi <ksk@google.com> |
Merge "Set input method mode for CascadingMenuPopup." into nyc-dev
|
24b260de62c63dd10a22837b15a029db25957b8b |
19-May-2016 |
Keisuke Kuroyanagi <ksk@google.com> |
Set input method mode for CascadingMenuPopup. Set INPUT_METHOD_NOT_NEEDED not to steal input focus. Bug: 28638654 Change-Id: Ic5070b309de459914d2670bd20a9af568438a843
enu/CascadingMenuPopup.java
|
aff5daf558fdd091c309f33b3bcd992d74eb981d |
16-May-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Show tooltip when mouse is hovering over an ActionMenu item"
|
1a6c27281b399a971674beac634f3d9a703bdd77 |
14-May-2016 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Show tooltip when mouse is hovering over an ActionMenu item Tooltips are already being shown on long press. This CL invokes the same logic on mouse hover (but with a longer tooltip duration). Bug: 24339237 Change-Id: Icba33b317fe737953c6dace91cfe3539a14a1959
enu/ActionMenuItemView.java
|
7e4ef1a3198daee07c768806dd1f7c9f628bd0f7 |
16-May-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge "Make IMS#clearInsetOfPreviousIme() reliable." into nyc-dev am: cef3337cb5 am: a1c905caf3 am: c7aeaff113 * commit 'c7aeaff113ab3c525bab5ad79fce05ae895d93a7': Make IMS#clearInsetOfPreviousIme() reliable. Change-Id: I188b8ebb263d67c1bdcefcd4e9fedf390a199969
|
833bdcedceee60a873694a77587393abfc830eb5 |
16-May-2016 |
Yohei Yukawa <yukawa@google.com> |
Make IMS#clearInsetOfPreviousIme() reliable. This is a follow-up to my previous CL [1] for Bug 15922840 so that we can clear the following variables in a more reliable way. - PhoneWindowManager#mLastInputMethodWindow - PhoneWindowManager#mLastInputMethodTargetWindow The idea behind CL [2] is that when InputMethodManagerService (IMMS) is switching from an IME to another IME, IMMS can send a signal to WindowManagerService (WMS) to remember the current IME's inset so that the system can continue using it to reduce jank until the new inset is specified by the next IME. As summarized in Bug 28781358, however, if the next IME does not show the window after the IME switch, WMS (or PhoneWindowManager to be precise) keeps using the previous IME's inset unexpectedly until the new IME shows its window. All we have seen in Bug 15922840 and Bug 26663589 fall into this category. The idea of this CL is just adding a hidden API to InputMethodManager so that InputMethodService#clearInsetOfPreviousIme() can surely terminate the IME transition state managed in PhoneWindowManager, rather than relying on a hack of calling SoftInputWindow#show() and SoftInputWindow#hide(), which actually does not work for Bug 26663589. [1]: Ib04967f39b2529251e4835c42e9f99dba2cf43f2 2977eb7b6ce82309a1bb1ba4ab698f503cb0388a [2]: I5723f627ce323b0d12bd7b93f5b35fc4d342b50c 792faa2c16d319e874a1d633f964a78266d5f3f2 Note that addressing all the corner cases in [2] still requires lots of non-trivial change. Hence this CL focuses only on Bug 26663589 (and the case we handled in Bug 15922840). Bug: 26663589 Change-Id: Ib567daa009c1139858dccadcfc6a04465ebecf36
InputMethodManager.aidl
|
10b889de7d0c9271e3fb47c87a8ed140bee9c271 |
12-May-2016 |
The Android Automerger <android-build-merger@google.com> |
stephenli Manually merge commit '68fffa5' * commit '68fffa5': (23 commits) Fix smallest width configuration calculation docs: DoDS, wearable reference docs Switch the default text selection handles to Material style. docs: Noted minor API changes in release notes docs: added "billions" doc in Distribute>Essentials Remove wear design pages redirecting to design/wear correct the support library redirects to redirect whole path Stop saving ActionMenuItemView state. Fix iterator double-advance in ContentObserverController TIF: Remove the uniqueness check for track ID from notifyTracksChanged Update and add attributes to the JavaDoc for VectorDrawable Use Q=100 JPEG instead of PNG for wallpaper display Fix issue #28400000: Settings memory UI still showing z-ram... docs: Updated support library revision history for 23.4.0 docs: Updates to notifications for DP3 docs: Added emoji section to api overview. Fixed a bug where the QS was animating wrong when closing Fix KeyguardManager.isSecure() to observe work profile cherrypick from mnc-docs docs: Updated APK Signature Scheme v2 doc. Docs: Added new Whitelist feature to Data Saver for DP3 ...
|
9c661a40c1f8adfbf84883fbf5efb51ed0cf2fe2 |
11-May-2016 |
Aurimas Liutikas <aurimas@google.com> |
Stop saving ActionMenuItemView state. There is no useful state to be saved for these views. This fixes a crash where we try to restore the state of an ActionView (that shares the same ID as ActionMenuItemView). Framework version of ag/1020805 Bug: 28110832 Change-Id: I4a09786a1c08bef1765fd8be3affb21dce296272
enu/ActionMenuItemView.java
|
7a7f7412cf82c1bed7b9953d4e327fe7dbb90d75 |
06-May-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge "Merge "Fix stale InputMethodManager#mFullscreenMode." into nyc-dev am: 9f76abc8ab am: 94c9aadc99" into nyc-mr1-dev-plus-aosp am: 20fce5ed58 * commit '20fce5ed585ae0200927b50122366fd0196c565f': Fix stale InputMethodManager#mFullscreenMode. Change-Id: I4f1a8071c8cb2c02cb6f8a6ef614363ae73682c3
|
9f76abc8ab9db3306c8061e9719dbe2a998031f3 |
05-May-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge "Fix stale InputMethodManager#mFullscreenMode." into nyc-dev
|
b970e9bf0190f990ce3a387e05214c578d759fa5 |
03-May-2016 |
Abodunrinwa Toki <toki@google.com> |
Merge "Implement alternative ViewGroup.getChildVisibleRect." into nyc-dev am: f62dd564ed am: a04fe4fc92 am: 6609b23ae0 * commit '6609b23ae0ce114cd44c4cef1e3c4ebd98bc1623': Implement alternative ViewGroup.getChildVisibleRect. Change-Id: I08542776d74a1804e8787458f5f1688fafc34f18
|
4e7a1208eaa81f684485ee23ba681dab6419973f |
03-May-2016 |
Abodunrinwa Toki <toki@google.com> |
Implement alternative ViewGroup.getChildVisibleRect. This CL allows getChildVisibleRect to optionally always call the view's parent. The previous version attempted to optimize the call by not calling further up the view heirarchy when the rect isn't visible in the current view. The call is hidden and the previous behaviour is preserved to limit the bits of code that this change affects. Bug: 28514727 Change-Id: I49550ed4082bcbdcfe4643b962b50f3308092525
loatingActionMode.java
|
efbebb8c9d6b1d1d83eac9082dc7b9249bb38042 |
30-Apr-2016 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Handle drop correctly in BaseIWindow Bug: 28475039 Change-Id: I6a30be0f2c5fe694e85681af387abeabacff9fc9
aseIWindow.java
|
1544def0facda69c210b0ae64b17394ea2860d39 |
27-Apr-2016 |
Yohei Yukawa <yukawa@google.com> |
Fix stale InputMethodManager#mFullscreenMode. The current mechanism to sync InputMethodService#mIsFullscreen to InputMethodManager#mFullscreenMode is really fragile because 1. Currently the state change is notified via InputConnection#reportFullscreenMode(), where InputConnection is designed to be valid only while the IME has input focus to the target widget. 2. In favor of performance InputMethodService (IMS) calls InputConnection#reportFullscreenMode() only when #mIsFullscreen changed. If InputConnection#reportFullscreenMode() failed, there is no recovery mechanism. 3. Screen oriantation change is likely to cause Window/View focus state change in the target application, which is likely to invalidate the current InputConnection. What our previous workaround [1] did for Bug 21455064 was actually relaxing the rule 1 only for InputConnection#reportFullscreenMode(). However, my another CL [2] made the lifetime check of InputConnection a bit more strict again, which revived the issue as Bug 28157836. Probably a long-term fix would be to stop using InputConnection to sync that boolean state between IMS and the application. However, it's too late to do such a refactoring in N, hence this CL relaxes the rule 1 again keeping it as secure as possible. The idea is that we allow InputConnection#reportFullscreenMode() to update InputMethodManager#mFullscreenMode regardless of whether InputConnection is active or not, as long as the InputConnection is bound to the curent IME. Doing this as a short-term solution is supporsed to not introduce any new risk because the active IME is already able to mess up the InputMethodManager#mFullscreenMode by calling InputConnection#reportFullscreenMode() on any other active InputConnection. Bug 28406127 will track the long-term solution. [1]: Id10315efc41d86407ccfb0a2d3956bcd7c0909b8 da589dffddaf4046d3b4fd8d14d5f984a1c4324a [2]: If2a03bc84d318775fd4a197fa43acde086eda442 aaa38c9f1ae019f0fe8c3ba80630f26e582cc89c Bug: 28157836 Change-Id: Iba184245a01a3b340f006bc4e415d304de3c2696
InputConnectionWrapper.java
|
6183b722de89d69ce16890db809a14ac03ab89fe |
27-Apr-2016 |
Justin Klaassen <justinklaassen@google.com> |
Support view transformations when positioning floating CAB Bug: 24088745 Use ViewGroup#getChildVisibleRect to transform the reported content rect into the coordinate system of the root view. This allows the floating CAB to be positioned correctly for views that may have a scale (or other transforms) applied. Change-Id: Ia6733a461b44070e7f6bab42f0b6fe2aed6870e5
loatingActionMode.java
|
c71b6302fe368ca2fbd4555177acf3cd157f6340 |
27-Apr-2016 |
Oren Blasberg <orenb@google.com> |
Merge "Show cascading popup menus if screen is big enough." into nyc-dev
|
0967da398901dd2ac626152a4802c822ca36c63b |
27-Apr-2016 |
Oren Blasberg <orenb@google.com> |
Merge "Don't show icons for top level menus unless forced." into nyc-dev
|
7b457455c40a6f159d9d82b2fe2e03bc26e9c55e |
20-Apr-2016 |
Oren Blasberg <orenb@google.com> |
Don't show icons for top level menus unless forced. Prior to this CL, the cascading implementation would evaluate the contents of the menu to determine whether to show an icon for this case. However, the policy we have upheld is that top level menus should never show an icon for this case. (Unless setForceShowIcon(true) was called.) Bug: 28275346 Change-Id: I09423596d49742aa7a9ba7245702c099581c0b48
enu/CascadingMenuPopup.java
enu/MenuPopupHelper.java
|
93c195894de323b039ff62eb5c62bf9aeed2abf0 |
14-Apr-2016 |
Oren Blasberg <orenb@google.com> |
Show cascading popup menus if screen is big enough. ...even if in split screen mode. Bug: 28175404 Change-Id: I63ff60090e299e48f2273477dc3b820d4d95db8d
enu/MenuPopupHelper.java
|
729c640cc887da9fe7a1b57121167a7bf83fee97 |
21-Apr-2016 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Merge "Rename DropPermissions to DragAndDropPermissions" into nyc-dev
|
377c32845bffaf68d5751d8cdf6fd60b8b3f5dc3 |
20-Apr-2016 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Rename DropPermissions to DragAndDropPermissions Bug: 28296057 Change-Id: Ic95cb4ae9c351d903df78628e983dec2bacd0ad5
DragAndDropPermissions.aidl
DropPermissions.aidl
|
d7b2599285cf0affd6013a58497ff5fabdf41125 |
19-Apr-2016 |
Alan Viverette <alanv@google.com> |
Don't overwrite vertical and horizontal offsets unless explicit Bug: 28194522 Change-Id: I14c8b719a0fca03da6d9834d07948a5513241b26
enu/CascadingMenuPopup.java
enu/StandardMenuPopup.java
|
3610d06239e72bb51e4150889864d2b2c18347d5 |
14-Apr-2016 |
Oren Blasberg <orenb@google.com> |
Don't show icons in overlay popup menus. This was a "regression" in CascadingMenuPopup specifically. We now check for the overflow case and don't show icons. This preserves the behavior from Marshmallow. Bug: 28026351 Change-Id: Ifbc9a20b0dadd19ef7b727023b1b0cfa45ebf993
enu/CascadingMenuPopup.java
enu/MenuPopup.java
|
7ce082a46259e948e4ea6a12f327f32aecaf167a |
08-Apr-2016 |
Oren Blasberg <orenb@google.com> |
Merge "Fix top level menu lingering when submenu opens." into nyc-dev
|
ddf6b8130f62c82241544bef19bcee4ef3171a82 |
06-Apr-2016 |
Oren Blasberg <orenb@google.com> |
Fix icon spacing on both MenuPopup implementations. Ensure we calculate based on the actual menu items in a particular menu or submenu, not based on whether the parent menu had icon spacing enabled. Bug: 28026351 Change-Id: Ie6e56eb142f0b82de38bf39ee848ddd26df2bf1c
enu/CascadingMenuPopup.java
enu/MenuPopup.java
enu/StandardMenuPopup.java
|
9022c7129ec763c9485f3a2de67b1e19eb77f462 |
05-Apr-2016 |
Oren Blasberg <orenb@google.com> |
Fix top level menu lingering when submenu opens. We should be calling close(false), not dismiss(), when the submenu is opened. This change brings the code closer to what it was before the prior change to StandardMenuPopup, but preserves the ondismiss behavior we want for popup menus. The net change so far is that StandardMenuPopup, not MenuBuilder#performItemAction, handles closing the top level menu when a submenu is opened. But nonetheless, the onDismiss is not called when a submenu is opened; only when an actual real "dismiss" occurs. Bug: 28001958 Change-Id: Ia0f89f8fd4bc5494f6a048c993792adfe42d88ec
enu/StandardMenuPopup.java
|
f6f0f5fbe988cede008168438e469657c62ac51b |
30-Mar-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge "Add IC#closeConnection()." into nyc-dev
|
9f9afe526d1f8ad17c628fc9e1e839725ffe913e |
30-Mar-2016 |
Yohei Yukawa <yukawa@google.com> |
Add IC#closeConnection(). It turns out that BaseInputConnection has still depended on a private API named BaseInputConnection#reportFinish(), which was introduced 4 years ago to work around a UI freeze due to an unbalanced batch edit count [1]. Note that such an unbalanced batch edit count cannot always be avoidable. It can easily occur in the following situations. - The current IME crashed during batch edit. - The user changed the View focus during batch edit. - The current IME called IMM#switchToNextInputMethod() during batch edit. The remaining problem is that #reportFinish() is still an internal API and only subclasses of BaseInputConnection can implement it, and IMM calls it when and only when the current InputConnection is BaseInputConnection or its subclass. InputConnectionWrapper and any other InputConnection implementations will never receive such a callback to clean up InputConnection#{begin, end}BatchEdit(), which is considered to be a major contributor to UI freeze. To address the above issue, we unhide BaseInputConnection#reportFinish() as InputConnection#closeConnection() so that application developers can receive an appropriate callback to clean up internal state including unfinished batch edit. [1] I5525d776916f0c42d5e6d4a4282aed590d7f0e9a 9d69ecbf61a4a142c3f4cbb9d5659faa6f85e832 Bug: 24688781 Bug: 25332806 Change-Id: I234309c5880c9fe0b299b8bd0f8862796d4dda0d
InputConnectionWrapper.java
nputConnectionWrapper.java
|
a5dcc6c25d38fe63a15f1b5920c439696726d3da |
30-Mar-2016 |
Teng-Hui Zhu <ztenghui@google.com> |
LUTInterpolator needs to have 2 frame at minimal Otherwise, it could be having invalid data, here NAN. Fix:27343522 Change-Id: I5bb17f04c62f268ec633675015ef589be2413338
nimation/FallbackLUTInterpolator.java
|
d86fd61cd865b4515760d48f9137ad80c7b23e97 |
29-Mar-2016 |
Oren Blasberg <orenb@google.com> |
Merge "Call the onDismiss listener in submenus." into nyc-dev
|
4348688ed351e32ac6c478deb92be7579a1131ea |
28-Mar-2016 |
Oren Blasberg <orenb@google.com> |
Call the onDismiss listener in submenus. For StandardMenuPopup, if user opens a submenu, the ondismiss listener is no longer called. Instead, it is called when the submenu (which is now open in the top level menu's place) is dismissed. Bug: 27877103 Change-Id: I069388fd173142620c667fa8d1cb21e88d5266fe
enu/MenuBuilder.java
enu/StandardMenuPopup.java
|
736a85f166d0a9701f93e9a480c914e0246409e1 |
29-Mar-2016 |
Alan Viverette <alanv@google.com> |
Use default implementation for onForwardingStopped() in action menu Otherwise we never exit forwarding if the popup has already been dismissed. Bug: 27886370 Change-Id: I3a7a51c18c15e12e2e9ef4cac853b87eb46d36de
enu/ActionMenuItemView.java
|
aaa38c9f1ae019f0fe8c3ba80630f26e582cc89c |
28-Mar-2016 |
Yohei Yukawa <yukawa@google.com> |
Ensure IC#finishComposingText() is called on the correct Handler. This attempts to reland previously reverted CLs [1][2] due to an unexpected regression (Bug 27824691). The Bug 27868748 we want to address by this CL is that currently InputConnection#finishComposingText() can be called on the root view's Handler no matter what Handler is associated with ControlledInputConnectionWrapper. Actually the root cause of Bug 6789252 is the same, but there we worked around it by not calling InputConnection#finishComposingText() in certain situations [3]. With this CL we should be able to logically revert that workaround. This CL also removes redundant IMM#mServedInputConnection. This is safe because the following two fields have the same lifetime. - InputMethodManager#mServedInputConnection - InputMethodManager#mServedInputConnectionWrapper We do not need to maintain both of them. This also allows us to use a strong refecente in IInputConnectionWrapper#mInputConnection instead of a WeakReference. To understand why this is safe, we need to understand how things previously worked, which is as follows: 1. InputMethodManager#mServedInputConnection becomes non-null. -> IInputConnectionWrapper#mInputConnection.get() is guaranteed to be alive. 2. InputMethodManager#mServedInputConnection becomes null or another object. -> IInputConnectionWrapper#mInputConnection.get() may not be alive. Since we know exactly when InputMethodManager#mServedInputConnection is updated, in theory we do not need to use WeakReference here, and with this CL we do not use WeakReference anymore. Actually the initial commit [1] accidentally removed the last strong reference to the active InputConnection and WeakReference could be null at any time, which was what we observed in Bug 27824691. [1]: I1181e067aa5bedbdf0c7ec1bcec479257aea511c afb6558c8f5e0ee797b252558d7e529e3d946d8f [2]: Ibe94f115e607a198d12ecd3d4e4f91a7d9469c98 16e2c7b59aacf44df7aaa0d04e0228240907487f [3]: I66f51da1299532793ef8fa700f35b0811670f235 4e5184f929d2498714bc7734fe10b9b8810cb071 Bug: 27868748 Change-Id: If2a03bc84d318775fd4a197fa43acde086eda442
InputConnectionWrapper.java
|
cdf90bb6747aa100305def66a7984522600d803e |
24-Mar-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge changes I16312592,Iadfc226e into nyc-dev * changes: Revert "Remove redundant IMM#mServedInputConnection." Revert "Make sure to call back reportFinish() on the desired Handler."
|
223db8b6f5a6be51eac16d1f38cf01e4466a4233 |
24-Mar-2016 |
Yohei Yukawa <yukawa@google.com> |
Revert "Remove redundant IMM#mServedInputConnection." This reverts commit afb6558c8f5e0ee797b252558d7e529e3d946d8f. It turns out that this CL caused a serious regression Bug 27824691. Bug: 25332806 Bug: 27824691 Change-Id: I16312592743a6673449c492ee5ba533256d343ea
InputConnectionWrapper.java
|
1fa5f594a26b00aa137703bb21e186910c1242c6 |
24-Mar-2016 |
Yohei Yukawa <yukawa@google.com> |
Revert "Make sure to call back reportFinish() on the desired Handler." This reverts commit 16e2c7b59aacf44df7aaa0d04e0228240907487f. It turns out that I1181e067aa5bedbdf0c7ec1bcec479257aea511c caused a serious regression Bug 27824691. To revert that CL, we have to revert this one first. Bug: 25332806 Bug: 27824691 Change-Id: Iadfc226eb91cc969b77c9d98e04ec3c76fe86ead
InputConnectionWrapper.java
|
3e5bf786b7ca36fa0cc150fcd8d0e7a69ecb9db0 |
24-Mar-2016 |
Clara Bayarri <clarabayarri@google.com> |
Merge "Keyboard Shortcuts: plumb deviceId through" into nyc-dev
|
fcd7e80b21cc9db6be00e37371401ea1d0938796 |
10-Mar-2016 |
Clara Bayarri <clarabayarri@google.com> |
Keyboard Shortcuts: plumb deviceId through Bug: 27673736 Change-Id: Ie72807aa8c2bfd142b081a6a915e101c16d31473
aseIWindow.java
|
16e2c7b59aacf44df7aaa0d04e0228240907487f |
23-Mar-2016 |
Yohei Yukawa <yukawa@google.com> |
Make sure to call back reportFinish() on the desired Handler. Before exposing #reportFinish() as a public API, we have to fix an existing bug that my previous CL [1] for Bug 26945674 forgot to take care. Currently BaseInputConnection#reportFinish() is always called by using the root view's Handler. We should move the logic to call BaseInputConnection#reportFinishInputConnection() from ViewRootImpl to IInputConnectionWrapper to make sure that the method in question can always be called on the desired Handler. To make things simple, instead of explicitly calling #reportFinish() from IMM, this CL let ControlledInputConnectionWrapper#diactivate() internally call #reportFinish() as needed. This makes it easier to make sure that #reportFinish() is called after all the queued method calls are handled. [1]: Id9e579bb3e2966986cdcb1c34bc8cacfeca2e1a9 612cce92ad96eda1146c3abd2afa7aaa4d4f2b3f Bug: 25332806 Change-Id: Ibe94f115e607a198d12ecd3d4e4f91a7d9469c98
InputConnectionWrapper.java
|
afb6558c8f5e0ee797b252558d7e529e3d946d8f |
23-Mar-2016 |
Yohei Yukawa <yukawa@google.com> |
Remove redundant IMM#mServedInputConnection. Following two fields have basically the same lifetime. - InputMethodManager#mServedInputConnection - InputMethodManager#mServedInputConnectionWrapper Hence we do not need to maintain both of them. This is a preparation CL for Bug 25332806 and does not change any user-visible behavior. Bug: 25332806 Change-Id: I1181e067aa5bedbdf0c7ec1bcec479257aea511c
InputConnectionWrapper.java
|
19a80a1e807acd00bec999eaac7812da6ffce954 |
15-Mar-2016 |
Yohei Yukawa <yukawa@google.com> |
Tell IMS about missing InputConnection methods. Summary: This CL introduces a unified mechanism to deal with the situation where the application directly implements InputConnection but some of methods are not implemented. Note that there should be zero overhead when the application extends BaseInputConnection or InputConnectionWrapper. Background: When ever we add a new method to InputConnection, there has been a risk that existing applications that directly implement InputConnection can get java.lang.AbstractMethodError exception at runtime, because older SDKs do not require the application developer to implement the methods that are newly added in later SDKs. Because of this we strongly discouraged developers to directly implement InputConnection interface, and encouraged them to subclass BaseInputConnection or InputConnectionWrapper instead. That said, as requested in Bug 26945674, there is a certain demand to be able to implement InputConnection without depending on BaseInputConnection. The goal of this CL is to provide a reliable and sustainable solution to above missing method scenario in InputConnection. One of the reasons why dealing with missing InputConnection methods is so difficult is that what InputMethodService receives to communicate with the target application is actually a proxy class com.android.internal.view.InputConnectionWrapper that runs in the IME process and immediately returns true for most of methods in InputConnection such as #commitText() and #finishComposingText(). Because of this asynchronous nature, it is too late to change the actual return value that the IME receives when the application receives those one-way asynchronous IPC calls. Solution: To handle those cases, this CL checks the availability of InputConnection methods that did not exist in the initial release before the target application calls startInput(), and let the application to send its availability bits to IMMS so that InputConnectionWrapper running in the IME process can be initialized with such availability bits. Note that we do know that BaseInputConnection and its subclasses support all the InputConnection methods, hence for most of applications we can just assume that all the methods are available without reflection. With such availability bits, InputConnectionWrapper is now able to gracefully return failure code to the IME because the availability of those methods is immutable, except for a tricky case where the application relies on a proxy object that dynamically changes the dispatch target. Here is the list of APIs that we start checking the availability in this CL. [API Level 9+] - InputConnection#getSelectedText(int) - InputConnection#setComposingRegion(int, int) [API Level 11+] - InputConnection#commitCorrection(CorrectionInfo) [API Level 21+] - InputConnection#requestCursorUpdates(int)} [API Level 24+] - InputConnection#deleteSurroundingTextInCodePoints(int, int) - InputConnection#getHandler() Ideas alternatively considered: Default methods in InputConnection We once considered having default methods in InputConnection but abandoned this idea because it does not directly solve the problem about how to tell the that the API does not take effect. Also having default methods would make it difficult for application developers to be aware of newly added methods in InputConnection. Bug: 27407234 Bug: 27642734 Bug: 27650039 Change-Id: I3c58fadd924fad72cb984f0c23d3099fd0295c64
InputMethod.aidl
InputMethodManager.aidl
nputConnectionWrapper.java
|
0ffd49cbe0ab4c13fd5528abacade898a8cff481 |
13-Feb-2016 |
Jorim Jaggi <jjaggi@google.com> |
Always consume bottom insets when navigation bar is force shown When an app requests SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION but we force show the navigation bar, we need to treat for the app like there is no virtual navigation bar on the device. Because if you combine it with FLAG_HIDE_NAVIGATION, you'd expect the navigation bar gets hidden but it doesn't, so there could be content that overlaps with the navigation bar. Bug: 27157904 Change-Id: I088e02eae2e723c35e9cb4873de6b1325458533b
aseIWindow.java
|
05c25f8a3a033816ac25aa5cd7db5b1ab495bc3f |
22-Feb-2016 |
Yohei Yukawa <yukawa@google.com> |
Unify windowGainedFocus() and startInput(). This is a safe refactoring that changes nothing. In order to improve the keyboard dismissal lags [1][2], we have used IMMS#windowGainedFocus() as a combined event to do startInput() in certain situations. To make the intent of those CLs clear, this CL renames IMMS#windowGainedFocus() to IMMS#startInputOrWindowGainedFocus(). Note that these are @hide internal IPC protocols. Hence this change is never observable to application developers. [1] I8494cbd6e19e2ab6db03f2463d9906680dda058b a82ba54b0bbc3ff41f29db3998806cb45b261d58 [2] Icb58bef75ef4bf9979f3e2ba88cea20db2e2c3fb 7663d80f6b6fd6ca7a736c3802013a09c0abdeb9 Bug: 25373872 Change-Id: I56934f18e30d90fcdf77bcbb0c35a92a5feb1b82
InputMethodManager.aidl
|
612cce92ad96eda1146c3abd2afa7aaa4d4f2b3f |
12-Feb-2016 |
Yohei Yukawa <yukawa@google.com> |
Introduce InputConnection#getHandler(). Currently there is an internal hidden class named ControlledInputConnectionWrapper which works as a proxy in the application process to receive incoming binder calls from input method and dispatch those method calls again on an appropriate thread. Although this is a kind of implementation details, basically you can see the same design everywhere in the Android. Currently ControlledInputConnectionWrapper is initialized with view.getHandler(), where the view here is the View which was used to call View#onCreateInputConnection(). This is actually a reasonable behavior because we have generally assumed that there the only reasonable way to implement InputConnection is to extend BaseInputConnection, which is designed to be able to work only on the UI-thread associated with the target view. However, on Android N and onward, we are going to ensure that BaseInputConnection can be re-implemented on top of public APIs [1]. Although most of applications should not try to do that, for certain applications such as web browsers and WebView it may make sense to let custom InputConnection implementation run with a custom Handler so that the application can respond to the IME without blocking the UI thread. To do that, this CL introduces a new method InputConnection#getHandler(), which changes nothing as long as it returns null, but if it returns non-null Handler, InputMethodManager will use it to initialize ControlledInputConnectionWrapper. Note that InputConnection#getHandler() is not for IME developers. It just returns null when called in the IME process. [1] See Bug 24688781 for details. Bug: 26945674 Change-Id: Id9e579bb3e2966986cdcb1c34bc8cacfeca2e1a9
nputConnectionWrapper.java
|
64b715736847ca53864e86b78e94b685ada0e5c8 |
28-Jan-2016 |
Alan Viverette <alanv@google.com> |
Don't move non-modal popups in response to global layout Bug: 26799074 Change-Id: Id363342f65b89c624f672ec0276408003e41008f
enu/CascadingMenuPopup.java
enu/StandardMenuPopup.java
|
a4a58efe8203d63a9a6bf78b0fa9f2992b25871b |
27-Jan-2016 |
Jorim Jaggi <jjaggi@google.com> |
Fix app staying in drag resizing when undocking When dismissing the docked stack, the fullscreen stack stayed in drag resize mode because it got a relayout, but because the bounds didn't change (it switches to the fullscreen layout a bit earlier) it never called WM.relayoutWindow, so it stayed in drag resize mode indefinitely. To fix this, introduce forceRelayout in Window.resized(), which makes sure the client always calls relayoutWindow. Set this to true whenever drag resizing is changing. For some very weird reason this also broke that home button was not responding anymore. Bug: 26806532 Change-Id: I4b39c1c419a166aa7093c31226f2a4915f642328
aseIWindow.java
|
c14df8e73d093f839c4ea2585eade6ae6690d224 |
22-Jan-2016 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Fix SecurityException in Editor.onDrop When a content URI is dropped onto EditText, it tries making sense of the contents, and in the process it accesses the content provider. If this content provider requires a permission grant, SecurityException occurs. This fix does two things: 1. Editor.onDrop now requests DropPermissions and releases is when it is done. This required the introduction of a new hidden method DropPermissions.takeTransient, because the existing method required access to an Activity instance. 2. If the drag originator neglected to allow the permission grant, DropPermission request would not help, so a try/catch block is added to Editor.onDrop to avoid breaking the recipient app. Bug: 26694948 Change-Id: I714429a507e62c83a150d91fbcdee791bced3ad3
DropPermissions.aidl
|
ec6a447c86b03f5896fdb717de530c8abf8887f9 |
22-Jan-2016 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Restore correct mouse pointer after drag and drop This CL introduces IWindow.updatePointerIcon method. When the drag is complete, this method is called on the window directly under the pointer. Same method can be used in the future to update mouse pointer when a window appears or disappears. Bug: 24415739 Change-Id: Ia7b0522448cb3cd754da5e24696060d3b3bf2e50
aseIWindow.java
|
91098574f90277128415e9593cce1e495cc51465 |
19-Jan-2016 |
Alan Viverette <alanv@google.com> |
Animate context popup menu around origin point Also enables the context popup menu enter transition. Bug: 25801140 Change-Id: Id7fb384e8ac8974189b32a052352bd2f6cbb176e
enu/CascadingMenuPopup.java
enu/MenuPopup.java
enu/MenuPopupHelper.java
enu/StandardMenuPopup.java
|
ac3e599069e1b87ea190f008aef60a506c8561c7 |
18-Jan-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge "Introdude IC#deleteSurroundingTextInCodePoints()."
|
f1fc5a0fe802f8cbf477b1ef54b25127818e091d |
15-Jan-2016 |
Yohei Yukawa <yukawa@google.com> |
Merge changes Ib5ea8131,I571d6cc9 * changes: Add a new API IMM#dispatchKeyEventFromInputMethod(). BaseInputConnection shouldn't rely on @hide APIs.
|
c89e22a6ff227089fde26daea186346029d1b32c |
14-Jan-2016 |
Yohei Yukawa <yukawa@google.com> |
Introdude IC#deleteSurroundingTextInCodePoints(). This CL introduces a API variant of IC#deleteSurroundingText(), named IC#deleteSurroundingTextInCodePoints(). Major differences from the existing one are: - The lengths are supplied in code points rather than code units. - This API does nothing if there are one or more invalid surrogate pairs in the requested range. (Failure Atomicity) Note that due to the asynchronous nature of the input method architecture in Android, implementing the same logic in the input method side basically ends up with unreliable and unpredictable results. Bug: 6526420 Change-Id: I7f6a2c5d3d52079ae71623fd5e40d60c688dd5fb
InputConnectionWrapper.java
InputContext.aidl
nputConnectionWrapper.java
|
7a66ba9ddb06eea777585df98019e06a92a0587d |
13-Jan-2016 |
Alan Viverette <alanv@google.com> |
Merge "Clean up lint warnings in popup menu presenter classes"
|
02cd0f91059f04136bb3817b41305c2909f4f1d5 |
13-Jan-2016 |
Alan Viverette <alanv@google.com> |
Clean up lint warnings in popup menu presenter classes Change-Id: I6b4cce1c4788b408615af0c93575e02e75b4c3ca
enu/StandardMenuPopup.java
|
75e097965cc273d33192555b0e65de3dbc1753ce |
29-Jul-2015 |
Clara Bayarri <clarabayarri@google.com> |
Request Keyboard Shortcuts for SysUI Dialog via Window Keyboard shortcuts are requested via WindowManager, and the request pipes through to the view root and the window callback. Bug: 22405482 Change-Id: Ic0071e91c7b554be3ac9df71e9539ee8a60e822e
aseIWindow.java
|
159dd47db34151314e2449347251ad32b30e5ea1 |
08-Jan-2016 |
Yohei Yukawa <yukawa@google.com> |
BaseInputConnection shouldn't rely on @hide APIs. This is a part of effort to reduce the number of dependencies on @hide method in BaseInputConnection. In a nutshell, IMM#notifyUserAction() and IMM#setFullscreenMode() are something that IME developers should not care about, hence ideally BaseInputConnection should not rely on them. IMM#setFullscreenMode(): This @hide method is just for updating an internal state flag about whether the current IME is in full screen mode or not. IMM#notifyUserAction(): This @hide methods is just for sending a signal to IMMS so that IME rotation list (for globe button) can be updated based on the user's action. Depending on those @hide methods in BaseInputConnection is problematic because: A. We cannot implement InputConnection without relying on BaseInputConnection, which forces developers to use Editable to maintain internal text representations. B. If BaseInputConnection#commitText is overridden, those @hide method calls can be missed. C. Currently some method calls of BaseInputConnection() even from application itself can trigger those @hide method calls. Ideally those internal events can be dispatched only when those methods are called from the input method rather than the application itself. With this CL, those @hide API calls will be moved from BaseInputConnection to ControlledInputConnectionWrapper so that developers can forget about them. Note that BaseInputConnection#sendKeyEvent() still relies on @hide internal details of IMM. It should be addressed in a subsequent CL. Bug: 24688781 Change-Id: I571d6cc9c6e461d8994aa7496e7e18be13766411
InputConnectionWrapper.java
|
28a8468995c71ba3fbba12557d143e7599db38d8 |
04-Jan-2016 |
Alan Viverette <alanv@google.com> |
Avoid NPE when ActionMenuPresenter is intialized with null MenuBuilder Also adds annotations to accurately reflect nullability. Bug: 26318920 Change-Id: Ia3b170dd301edfc0088a11ee5764c24bab2f10aa
enu/BaseMenuPresenter.java
enu/IconMenuPresenter.java
enu/ListMenuPresenter.java
enu/MenuBuilder.java
enu/MenuPopup.java
enu/MenuPresenter.java
|
b23a757aa2f3088c9e9fd226e806aa5963b68d93 |
18-Dec-2015 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Bind DropPermissions life cycle to Activity Move requestDropPermissions from DragEvent to Activity. Permissions will be granted using UriPermissionOwner associated with this activity and revoked when the activity is destroyed (if DropPermissions.release is not called before that). Change-Id: Ic8f8fc3f56f57e83b9bc34ae8c96d82c2c9c4e1d
DropPermissions.aidl
|
9149d2b117aef40f38a7d62c0f8c2bb76eb4e244 |
15-Dec-2015 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Rename and simplify DropPermissionHolder Rename DropPermissionHolder to DropPermissions and move all server-side implementation details into a separate class. Rename DragEvent.getDropPermissionHolder to requestDropPermissions and make it take the permissions implicitly. Change-Id: Ia83f7cb8af07ce13ba9536d24b0f9d63331d8736
DropPermissionHolder.aidl
DropPermissions.aidl
|
db08925a8fc1fb336b04aaae9da25ffd2fb5fbb7 |
15-Dec-2015 |
Alan Viverette <alanv@google.com> |
Fix build Change-Id: I3e1708a9e41155b9b00e0365e4392ae66202fdbb
enu/CascadingMenuPopup.java
|
ecfdaa9157cbc2e108a4b2530f9a3ff8a7469f8b |
15-Dec-2015 |
Alan Viverette <alanv@google.com> |
Postpone CascadingMenuPopup window creation until show() This ensures that addMenu() and setters can be called in any order as long as they occur before the show() call. Bug: 25853211 Change-Id: I9a643d37c60046326b7d97a38026c27ba247a1b0
enu/CascadingMenuPopup.java
|
77fb85eda9923970d6f8f699e8d628d37c3dd764 |
14-Dec-2015 |
Alan Viverette <alanv@google.com> |
Only handle Context submenus as dialogs when parent is a dialog Bug: 25656520 Change-Id: I5841d8f0c3d4a537e2d94aacddb1687d05d5c258
enu/StandardMenuPopup.java
|
b635fdaf22795817f9417c475e82bfb0191dd5bd |
04-Dec-2015 |
Filip Gruszczynski <gruszczy@google.com> |
Remove some sized based resource (match support lib removal). Bug: 25394588 Change-Id: I5b5b446667fc6ec028ec259da236967d3b2d22d2
ctionBarPolicy.java
enu/ActionMenuItemView.java
|
9643e73951384a0f07364bec8c4f48130478a133 |
03-Dec-2015 |
Alan Viverette <alanv@google.com> |
Merge "Ensure only one context menu is shown at a time"
|
0466206a6a0d2f6fddf88b9da534a57ba9958ea8 |
25-Nov-2015 |
Yohei Yukawa <yukawa@google.com> |
Merge "Tell the reason why IMM called startInput()."
|
021627eb5875372dea57ba91fa782fffbfbbc559 |
25-Nov-2015 |
Alan Viverette <alanv@google.com> |
Ensure only one context menu is shown at a time Refactors the menu helper classes. Both classes now implement a common MenuHelper interface, which eliminates the need to keep separate helpers on PhoneWindow and unifies the DecorView showContextMenuForChild() implementations. We now explicitly dismiss any previously shown context menu before showing a new context menu. Previously we relied on the modal nature of the dialog context menu to prevent multiple menus from being opened at once, but this is no longer reliable with popup context menus. Bug: 25656520 Change-Id: Idab3daa6d6888f803f2e33660fe1dd488e4c28d1
enu/ContextMenuBuilder.java
enu/MenuDialogHelper.java
enu/MenuHelper.java
enu/MenuPopupHelper.java
enu/StandardMenuPopup.java
|
35d3f37bd51268cc99d81a3f537ac364d178e851 |
25-Nov-2015 |
Yohei Yukawa <yukawa@google.com> |
Tell the reason why IMM called startInput(). As a preparation to fix Bug 25373872, this CL introduces an additional int parameter into the following two methods - IInputMethodManager.startInput() - IInputMethodManager.windowGainedFocus() so that IMMS can know why IMM needs to start input. Currently the "startInputReason" parameter is used only for debug message only when the OS is rebuilt with flipping IMMS#DEBUG to true. Basically this should have no impact in production builds except for a tiny overhead of having one int parameter in some internal IPC calls. Note that since 7663d80f6b6fd6ca7a736c3802013a09c0abdeb9 [1] basically IMMS#windowGainedFocus() has been a superset of IMMS#startInput(). Hence we should pass to "startInputReason" parameter to IMMS#windowGainedFocus() as well as IMMS#startInput(). [1]: Icb58bef75ef4bf9979f3e2ba88cea20db2e2c3fb Bug: 25373872 Change-Id: Ia1fe120af7d71495c5f3a4fc0ec6390efb8240ca
InputMethodManager.aidl
nputMethodClient.java
|
708aa9d96441fe359a4c2a2c89e2ab709b367f8a |
20-Nov-2015 |
Alan Viverette <alanv@google.com> |
Dispatch the actual PopupWindow dismiss callback to PopupMenu Previously the dismiss callback was called immediately after the menu received a close request; however, the dismiss callback implies that the menu's window has finished animating and been removed from the window manager. Also cleans up handling of mPopup in MenuPopupHelper to prevent unnecessary MenuPopup allocations and convert unnecessary fields into method arguments. Bug: 25323707 Change-Id: I8e3877ae6c40b4d0f1df23a4ff4fa48a7df34e0d
enu/MenuPopupHelper.java
|
d6443f60e1d556a772a8b33ec172d2bae44de63a |
20-Nov-2015 |
Alan Viverette <alanv@google.com> |
By default, display PopupMenu at Gravity.START and resolve X offset Bug: 25801269 Change-Id: I8c8090a59780c131cee2d56b668f1c4e062b8ebe
enu/MenuPopupHelper.java
|
711bcdea5f1549f10220315ce840fd553ba83769 |
18-Nov-2015 |
Yohei Yukawa <yukawa@google.com> |
Merge "Tell the reason why IMMS unbinds IME client."
|
33e81798fa85947f934e262174184b11f97ca7a3 |
18-Nov-2015 |
Yohei Yukawa <yukawa@google.com> |
Tell the reason why IMMS unbinds IME client. As a preparation to fix Bug 25373872, this introduce an additional parameter to IInputMethodClient.unbind() so that the IME client that is running in the application side can know why IMMS needs to unbind the connection. In future the "unbindReason" parameter is supposed to be used to optimize the behavior of IMM runtime running in the application process, but for now it is not used unless we build the sytem with debug message enabled. Hence there should be no user-visible change with this CL. Bug: 25373872 Change-Id: I74e83c8ca9d1d53e31e9c7b5bda1dec6274e59c8
InputMethodClient.aidl
nputMethodClient.java
|
6c54e72892bdddd8453cfce40725ed3159d53b11 |
17-Nov-2015 |
Filip Gruszczynski <gruszczy@google.com> |
Swtich from max_action_buttons resource to a method. We want to limit the number of size thresholds that an application will report. Instead of using a dimen resource that will increase the number of thresholds, we calculate the max number of action buttons dynamically in code. Bug: 25394588 Change-Id: I8ece331cd02fb116b49734003cec112708d27f85
ctionBarPolicy.java
|
253a20fad8703e21c7298fe66e0f3f53d4e63c14 |
03-Nov-2015 |
Jorim Jaggi <jjaggi@google.com> |
Fix black holes and flickering in docked resizing When we start a resize with the docked stack divider, set the surface background to be full-screen, and use the traditional surface clipping/positioning in window manager to adjust the size. This ensures that we don't have any black holes because of asynchronicity (except at the very beginning, but this can be worked around later), and the position of the right/bottom activity is always in sync with the position of the divider. Also fix a bug in NonClientDecorView where the first request to draw was dropped (because the thread hasn't started up yet), and the main thread was waiting for it indefinitily. Bug: 24507122 Change-Id: I623bd48d5be64fac2fba45241b84f265944d200d
aseIWindow.java
|
00aa5103e2f71ad3f29f53168e37ef7da8ca03f2 |
03-Nov-2015 |
Alan Viverette <alanv@google.com> |
Reduce CascadingMenuPopup's reliance on internal ListView state Bundles cascading menu information and stores it in a stack representing the hierarchy of added menus. Bug: 23970448 Change-Id: I1621d9eb30ff173767b6ebad2a1977127c42d0ad
enu/CascadingMenuPopup.java
enu/MenuBuilder.java
enu/MenuDialogHelper.java
enu/MenuPresenter.java
|
1aba36d721b71de24335bf23aad8692c4fb24421 |
08-Oct-2015 |
Alan Viverette <alanv@google.com> |
Merge "Revert "Reduce CascadingMenuPopup's reliance on internal ListView state""
|
2ac975deb3d5833ad3daf7f4325f062d875b6036 |
08-Oct-2015 |
Alan Viverette <alanv@google.com> |
Revert "Reduce CascadingMenuPopup's reliance on internal ListView state" Introduced some regressions. Reverting until we can do better testing. This reverts commit 8375d639986529969ea5e118de548d29db16ec97. Change-Id: I9b15d63e52c814ef8985b86f8a50359e39355d39
enu/CascadingMenuPopup.java
enu/MenuBuilder.java
enu/MenuPresenter.java
|
266cdd4839decf02a142dae250cd78e09d1a0c96 |
06-Oct-2015 |
Alan Viverette <alanv@google.com> |
Merge "Reduce CascadingMenuPopup's reliance on internal ListView state"
|
8375d639986529969ea5e118de548d29db16ec97 |
06-Oct-2015 |
Alan Viverette <alanv@google.com> |
Reduce CascadingMenuPopup's reliance on internal ListView state Bundles cascading menu information and stores it in a stack representing the hierarchy of added menus. Bug: 23970448 Change-Id: Icc0a96ea2dd4320fd4dae9626435ed82a6165480
enu/CascadingMenuPopup.java
enu/MenuBuilder.java
enu/MenuPresenter.java
|
9c450411058ab9af71932c756fb0f478b3988f1b |
01-Oct-2015 |
Chet Haase <chet@google.com> |
Enable activity rendering during window animations A change was made back in ICS that prevents the view hierarchy from rendering during window animations. Specifically, it allows the hierarchy to render once (to draw the results of its first layout), but further drawing is suppressed at the ViewRoot/performTraversals level until the window animation is complete. This change was introduced to avoid jank problems that were resulting from thrashing the GPU by issuing drawing commands from multiple processes simultaneously, and limited the number of rendering processes to mainly the system server (and possibly the System UI), which allowed window animations to be much smoother. This fix contributed to another source of jank, however, in which applications which attempt to animate when they first appear will not render any frames of animations until the window animation is done, resulting is a snapping to the resulting state once the window animations are complete. Meanwhile, hardware has gotten faster and GPUs have gotten better, and it is time to revisit this logic. This change disables the earlier fix and allows view hierarchies to draw normally, regardless of whether window animations are taking place. Issue #22232939 Remove flag that prevents drawing during window animations Change-Id: I4c960180771ff09a7088abd77b437586e835a991
aseIWindow.java
|
ed3912692f0ba8a647d795462e20fcdb67adbacb |
01-Sep-2015 |
Oren Blasberg <orenb@google.com> |
Make context menus show as popup menus. This means that right-clicking/long pressing on a view that is registered for context menu will show the context menu as a popup menu instead. Bug: 20016398 Change-Id: I96fea60435fff2f981d288521f490f8ff24ada15
enu/CascadingMenuPopup.java
enu/ContextMenuBuilder.java
enu/MenuPopup.java
enu/MenuPopupHelper.java
enu/StandardMenuPopup.java
|
8f3976c8756e85864f49c5fde2f9ff1bbe53d30d |
24-Sep-2015 |
Oren Blasberg <orenb@google.com> |
Merge "Cascading submenus: Fix a few small issues."
|
734320d06be5ad6365e6997b4ddbcbdb2778809c |
21-Sep-2015 |
Oren Blasberg <orenb@google.com> |
Cascading submenus: Fix a few small issues. 1. Open submenus now disappear instantly rather than fading out when mouse hovers over a non-submenu item. 2. When a submenu is opened on hover, the item that was hovered now will remain selected instead of being deselected. 3. Fix an issue where if the same chain of submenus was opened more than once, the submenus could open in a different direction each time. To fix, we keep track of the direction of opening along the way and make sure to reset the preferred direction when a submenu is closed. Bug: 20127825 Change-Id: I99972cce4ddabe316c5148f1dd79a5d7b3e64b87
enu/CascadingMenuPopup.java
|
b9acbe40d298612a2ab6bfb15842e63ff8f09af5 |
16-Sep-2015 |
Abodunrinwa Toki <toki@google.com> |
Reduce delay of floating toolbar appearance. Bug: 21956394 Change-Id: Ide7ee2daffbf618b0a483c377032bf25b20d5b8e
loatingActionMode.java
|
53023ffdeae781e9750a5ef90a31ee3f5e0c2b4c |
18-Sep-2015 |
Alan Viverette <alanv@google.com> |
SubMenuBuilder.getRootMenu() should return root menu, not parent Also fixes incorrect call from MenuItemImpl to dispatchMenuSelected, which should according to the documentation be passing the direct parent menu of the menu item. Bug: 23725571 Change-Id: I2d1f04b80ce05d141ba2dfd77f62bb13b2268625
enu/MenuItemImpl.java
enu/SubMenuBuilder.java
|
ede5f5480e58dac9f6ddbd36a3085592d79c98ef |
16-Jul-2015 |
Vladislav Kaznacheev <kaznacheev@google.com> |
Handle content URI permissions on drop Change-Id: I846071f01ecd1eff8e3a54a1806e68e1a4b335d2
DropPermissionHolder.aidl
|
23087be7792c2d22173cf022a72d0648aa430ab5 |
08-Sep-2015 |
Oren Blasberg <orenb@google.com> |
Cascading popup menus: open submenu on mouse hover. When the cascading feature is enabled, users can mouseover a submenu item in a popup menu to expand and open the new submenu (after a short timeout). Similarly, if a user mouseovers a different menu item in the original menu, the submenu gets closed (again, after a short timeout). This should complete the implementation of cascading submenu functionality. Also fix two other issues: (1) Update some oudated code in PopupMenu that was still opening the submenu when a user clicks on a submenu item; this responsibility now lives within the MenuPopupHelper's delegate MenuPopup class, so it doesn't need to live in PopupMenu anymore. (2) Fix an issue where icons would be force-set on a submenu when they should not be. Instead, decide whether to show icons in a submenu based on whether to show them in the top level menu, as intended. Bug: 20127825 Change-Id: Ia46852c7f99436065ab4bc234de94dffc0019666
enu/CascadingMenuPopup.java
enu/MenuAdapter.java
enu/StandardMenuPopup.java
|
9916282bac8ac8fab7ce5b649c049842acffa29b |
10-Sep-2015 |
Oren Blasberg <orenb@google.com> |
Fix broken popup menu in Shelf (andromeda). This addresses a few oversights from an earlier CL: 1. In MenuPopupHelper#show() make sure to create a new MenuPopup in case the earlier one was dismissed. 2. Ensure the on-dismiss listener gets called even if the MenuPopupHelper's MenuPopup was previously closed and if a new one is opened. 3. Handle global layout changes properly by having the MenuPopup re-drawing/positioning itself. Bug: 23973158 Change-Id: Iee866079770026f0fe17814892abc9825f9760a2
enu/CascadingMenuPopup.java
enu/MenuPopupHelper.java
enu/StandardMenuPopup.java
|
96b22a98cee35c07e2f4507a7841af476c5811ac |
10-Sep-2015 |
Oren Blasberg <orenb@google.com> |
Merge "Add Cascading submenus implementation."
|
8e12f8df076d38853e0fedde7ed79e2e8689d59e |
02-Sep-2015 |
Oren Blasberg <orenb@google.com> |
Add Cascading submenus implementation. This change adds a new Cascading implementation of MenuPopup. When enabled, submenus will show up in a cascading side by side fashion when opened next to popup menus. Bug: 20127825 Change-Id: Ie3c797fb5dbada7521cd93dc4171950af2be2ff7
enu/CascadingMenuPopup.java
enu/MenuBuilder.java
enu/MenuPopup.java
enu/MenuPopupHelper.java
|
13612c332a132a20d504e3b9977fbedd2ddeb833 |
03-Sep-2015 |
Clara Bayarri <clarabayarri@google.com> |
am 3b60f72f: am 9b126882: am 01232c50: am 582b186c: am f7b220ab: Merge "Fix Custom action mode menu item onclick is not working" into mnc-dev * commit '3b60f72fbaaeb7c52f5e86ff9f8d5dade0d0b444': Fix Custom action mode menu item onclick is not working
|
c2dde0ae7871bb0e189cdb713b9e24635451eb90 |
02-Sep-2015 |
Oren Blasberg <orenb@google.com> |
Merge "MenuPopupHelper: Factor out a MenuPopup interface."
|
b23976efdd6ffe42cb3b8fe6650fc77bd9a161e8 |
01-Sep-2015 |
Oren Blasberg <orenb@google.com> |
MenuPopupHelper: Factor out a MenuPopup interface. Move much of the responsibility into implementations of this interface. Delegate functionality to it where appropriate. Provide a standard (non-cascading) implementation for this interface. This CL should have NO BEHAVIOR CHANGES. A follow-up CL will provide a cascading implementation, whereby a config variable will enable submenus to open side by side with their parent menus. That CL will be the first with functional/ actual behavior changes. Bug: 20127825 Change-Id: Iecac2d340dd8750ebe4e99162d447c9411f09227
enu/MenuPopup.java
enu/MenuPopupHelper.java
enu/StandardMenuPopup.java
|
ddc453a342c4eab5b44dc1c3e96b767203725237 |
31-Aug-2015 |
Oren Blasberg <orenb@google.com> |
Add a new submenu arrow for popup menu items. This arrow is shown when the item corresponds to a submenu. Bug: 20127825 Change-Id: Ida70d7707e00e1cda84ed6135333f09a511cd6c5
enu/ListMenuItemView.java
|
ea2d64492399f336c996a1af511c7acd2ad0192c |
01-Sep-2015 |
Clara Bayarri <clarabayarri@google.com> |
Fix Custom action mode menu item onclick is not working BUG: 23575152 Change-Id: I7c07a769bd03c2d756e04f16296f418e965a993f
loatingActionMode.java
|
f44d90b5c247f0629201d1fa322b83fa55b20608 |
31-Aug-2015 |
Oren Blasberg <orenb@google.com> |
Pull out widget helpers into their own classes. This is in service of desktop-style submenus. Follow up CLs will make use of the newly independent classes. MOST of the changes in this CL are simply moving code from one place to another. Below are descriptions of the new files added: DropDownListView: Decouple this from ListPopupWindow, so other "menu popup" implementations [forthcoming] may make use of it. This class is UNCHANGED except for the addition of the setListSelectionHidden method. ForwardingListener: Decouple this from ListPopupWindow, so that other clients of this listener can expect a more general ShowableListMenu rather than a concrete ListPopupWindow. This will be useful later when we want to use something other than ListPopupWindow to show a menu. This class is UNCHANGED, except for (1) using the getListView() on popup rather than accessing its mDropDownList member, and (2) replacing ListPopupWindow return values with ShowableListMenu. MenuAdapter: Decouple from MenuPopupHelper so it may be used by forthcoming "menu popup" implementations rather than just by MenuPopupHelper itself. This class is UNCHANGED. ShowableListMenu: A new interface to encapsulate a menu that can be shown or hidden. This will be implemented by both ListPopupWindow and a forthcoming "menu popup" class. Bug: 20127825 Change-Id: I565b444d25e966ff8b8c6ceac7be8de56a9116df
enu/ActionMenuItemView.java
enu/MenuAdapter.java
enu/MenuPopupHelper.java
enu/ShowableListMenu.java
|
8cf6d865cfb3c05034f947b81de8ca09a92037a0 |
12-Aug-2015 |
Raph Levien <raph@google.com> |
am d202d15d: am cf2d44be: am 855a862f: am c98a786c: am beabcb92: Merge "Fix Insertion ActionMode not showing on RTL languages" into mnc-dev * commit 'd202d15d9e4845537c4409c9880eb269b2b59129': Fix Insertion ActionMode not showing on RTL languages
|
f95ed10d9da55c25013200fb35af63f0dac65cb4 |
12-Aug-2015 |
Clara Bayarri <clarabayarri@google.com> |
Fix Insertion ActionMode not showing on RTL languages When long pressing on an empty Text field with the system language set to RTL, the "paste" popup was not showing up. The Floating Toolbar requires a content rect to determine where the text is and place itself close to it. In the case of an empty field, we create a "fake" content rect by taking the placement of the cursor +1 pixel to the right. In RTL languages, this +1 causes the content rect to be considered off the bounds of the view, as the cursor is aligned to the right, and hence the Floating Toolbar is hidden. After making the rect a 0 width rect, we ran into the issue that it was considered out of bounds due to the calculation ignoring rects that simply touch the edge of the view's bounds. BUG: 22540083 Change-Id: I29c79b701f586970b2611178233eff082b802ec1
loatingActionMode.java
|
e7998fb00f8f8c75388cb1e2d3cb107a0d01cffb |
14-Jul-2015 |
Yohei Yukawa <yukawa@google.com> |
am a6b4eaf5: am 1e01d621: am 17dce343: am be27832b: am 12952c79: Merge "Allow FloatingToolbar to be outside of the attached window." into mnc-dev * commit 'a6b4eaf5bbcef6331981da5c52c1375c6f2b700c': Allow FloatingToolbar to be outside of the attached window.
|
bafc908304d49e8f7f7c5e52772c75da66e4daa3 |
14-Jul-2015 |
Yohei Yukawa <yukawa@google.com> |
Allow FloatingToolbar to be outside of the attached window. Currently PopupWindow used for the floating toolbar specifies neither FLAG_LAYOUT_NO_LIMITS nor FLAG_LAYOUT_IN_SCREEN. As a result, the floating toolbar can overlap the selected text when the attached window does not have enough height. Here is the repro code. final TextView textView = new TextView(this); textView.setLayoutParams( new ViewGroup.LayoutParams( ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT)); textView.setText("A test sentence."); textView.setTextIsSelectable(true); final AlertDialog dialog = new AlertDialog.Builder(this) .setView(textView) .create(); dialog.getWindow().setGravity(Gravity.BOTTOM) dialog.show(); If you tap a word in the dialog, the floating toolbar unintentionally overlaps the selected text due to the limited height of the AlertDialog. It also turns out that just calling PopupWindow.setClippingEnabled(false) to specify FLAG_LAYOUT_NO_LIMITS is not sufficient and ends up showing the toolbar on the NavBar because we have mistakenly compared bounds in window-local coordinates (e.g. FloatingActionModemContentRectOnWindow) with bounds in screen coordinates (e.g. FloatingActionMode#mScreenRect). Hence the confusion of window-local coordinates and screen coordinates in FloatingToolbar and FloatingToolbar also needs to be addresses. To summarize here are the notable changes in this CL: - Specify FLAG_LAYOUT_NO_LIMITS so that the floating toolbar can be placed outside of the attached window. (We do this with PopupWindow#setClippingEnabled) - Switch to use screen coordinates from window-local coordiantes in FloatingToolbar and FloatingActionMode because some system components such as WindowManager prefer screen coordinates. - Put -OnScreen suffix for Rect and Point variables as long as they are in screen coordinates. Bug: 22335001 Change-Id: I71a8d356e868dc7715b030ca1078da4ec39368c3
loatingActionMode.java
|
31f581c5a64320d9a90ce3fb1a4625f94f4f8021 |
02-Apr-2015 |
Jun Mukai <mukai@google.com> |
Introduces mouse actions for popup menu. - mouse hover moves the selected item in the menu. It moves the selection rectangle, and further up/down key or enter key will start from the hovered item. - when the mouse exits from the entire popup window, the selection is canceled. Further up/down key will start from the first item. To implement these behaviors, and consider about other keyboard behaviors which is special to menus, I believe it justifies to create another class for the menu popups rather than using ListPopupWindow directly. Bug: 19642104 Change-Id: I5e405c0491c67fdef9764898701119979ec13a9f
enu/MenuPopupHelper.java
|
4603bd34ce8a5557729e3912a081ec9f8c0d7ab5 |
07-Jul-2015 |
Abodunrinwa Toki <toki@google.com> |
Merge "FloatingToolbar: Offset visible rect by the rootview's offset" into mnc-dev
|
2bc8485ba79cf6fa95f80b105ed914d245178a0c |
01-Jul-2015 |
Chris Banes <chrisbanes@google.com> |
Merge "Fix memory leak in setActionProvider() - framework edition" into mnc-dev
|
5e2310030b538d934606e29dbd11bc5736c3c1c5 |
01-Jul-2015 |
Abodunrinwa Toki <toki@google.com> |
FloatingToolbar: Offset visible rect by the rootview's offset windowSoftInputMode="adjustPan" config causes the root view to be offset if necessary when the soft keyboard is shown to keep the text selection visible. Account for this offset when calculating the global visible rect of the textview in relation to the screen. Bug: 21687644 Change-Id: Id44cad387d0a3f1f063880497c234052924717ea
loatingActionMode.java
|
c8f6ecc265656cdf68d2010a4e04666017c3b907 |
30-Jun-2015 |
Chris Banes <chrisbanes@google.com> |
Fix memory leak in setActionProvider() - framework edition Caused by ActionMenuItem's SubUiVisibilityListener not being nulled when it is replaced via setActionProvider(). BUG: 22189734 Change-Id: Id4deaa05cd5554ca7bdf969a592e4812e39dcb75
enu/MenuItemImpl.java
|
1b57653b50892f143241ae0f0beb2246ca4b2aa7 |
30-Jun-2015 |
Abodunrinwa Toki <toki@google.com> |
Fix floating toolbar flicker in ExtractEditText mode. Fixed by making sure to update visibility immediately after setting a hide flag on the FloatingToolbarVisibilityHelper. Bug: 22101632 Change-Id: Iea2d9786c14f6451da836e55f0d880025aa00ed2
loatingActionMode.java
|
c107b0ecdcd4e2f89ae4bec818c3a94f45c3c15e |
26-Jun-2015 |
Abodunrinwa Toki <toki@google.com> |
Fix FloatingToolbar flicker in reaction to text cursor blink. 1. Reposition the toolbar on predraw only when positioning has changed. 2. Update the toolbar popup's position only if the content rect changed. 3. Fix FloatingToolbarPopup.cancelOverflowAnimations(). The previous implementation wasn't actually cancelling the animation. (1) is enough to fix the bug. But (2) and (3) fix issues in the toolbar directly related to this bug. Bug: 22039189 Change-Id: I84ec793d788f9402a1f8635e68e3344746f6af07
loatingActionMode.java
|
07e440b2786a5104129a8776a21172539fb4c4a0 |
19-Jun-2015 |
Abodunrinwa Toki <toki@google.com> |
Merge "Fix FloatingToolbar flickers." into mnc-dev
|
50057943fbf36c84c220d47115e7cdd13fa01a4c |
19-Jun-2015 |
Andrei Stingaceanu <stg@google.com> |
Merge "Cannot select text after rotation in extract mode" into mnc-dev
|
972ab4f8588c365cf9c06e1f22b30a96fb0a06fc |
17-Jun-2015 |
Abodunrinwa Toki <toki@google.com> |
Fix FloatingToolbar flickers. This is fixed by avoiding calling toolbar.show() in PhoneWindow. FloatingActionMode coordinates whether or not the toolbar should be visible. PhoneWindow differs to it. This CL also adds a new API: ActionMode#onWindowFocusChanged(boolean) Bug: 21617792 Change-Id: Ic49ce1000ce9c782d0f9e17e3d024d462c7b758b
loatingActionMode.java
|
da589dffddaf4046d3b4fd8d14d5f984a1c4324a |
17-Jun-2015 |
Andrei Stingaceanu <stg@google.com> |
Cannot select text after rotation in extract mode The InputConnection did not report the fullscreen mode to the InputMethodManager if the connection was not active which ended up feeding the Editor false information about when extracted mode will be started. Bug: 21455064 Change-Id: Id10315efc41d86407ccfb0a2d3956bcd7c0909b8
InputConnectionWrapper.java
|
15a6c89f46420371115b1648bd2f3925f4bcf7ed |
17-Jun-2015 |
Abodunrinwa Toki <toki@google.com> |
Allow content rect to overshoot the bottom view bounds by 20dp. Bug: 21816429 Change-Id: I84013286896d145c9501351bc6a638cbda12e8c0
loatingActionMode.java
|
f444b5c3ae46f8790c8f2a8481fb688b00a42d3b |
16-Jun-2015 |
Abodunrinwa Toki <toki@google.com> |
Fix floating toolbar flickers. -Flicker was a side effect the delay in hiding the toolbar when there is a down press on a TextView handle. The timing clashed with the time it takes for the FloatingActionMode to release a hide lock on a changing content rect. Extra flickers also happened if the ActionMode happened to be invalidated at about the same time. Since there was no longer a hide lock, the toolbar refreshed, getting rid of the "Select all" menu item. FIX. I believe we don't need the delayed hide on down press on a TextView handle. I've removed this. -I've also updated FloatingActionMode to ensure that hide locks overlap one another if necessary. The toolbar can only be visible if all locks are off. Bug: 21793687 Change-Id: I290ea45ab17d5862b453cb319afb4c8ffe084cd0
loatingActionMode.java
|
a41b78973db3dfde159f7d641f794f462ad323d3 |
09-Jun-2015 |
Chris Banes <chrisbanes@google.com> |
API council review feedback for ActionMenuView Reverts "MenuItem, navigation and overflow icon tinting" CL, and adds getter and setter for the overflow icon to ActionMenuView and Toolbar. BUG: 21571899 Change-Id: I591f43650356443fa3256e4d74e28b6ddd8c2b33
enu/ActionMenuItem.java
enu/MenuItemImpl.java
|
d9b0acd2eb8d844b9f901fc62e0de74c1a7d8430 |
10-Jun-2015 |
Chris Banes <chrisbanes@google.com> |
Merge "Fix location for ActionMenuItemView cheat sheet" into mnc-dev
|
d74f960eceb98042ede53f74d02e174eb1ad5944 |
08-Jun-2015 |
Chris Banes <chrisbanes@google.com> |
Fix location for ActionMenuItemView cheat sheet Currently handling does not take the screen position into account. BUG: 21690674 Change-Id: I7e957d453bffd5c9bf5ac61a17fcab7d00fec5b6
enu/ActionMenuItemView.java
|
7d3b8833df5857f5cc70d6c101abe7501fa22b49 |
08-Jun-2015 |
Abodunrinwa Toki <toki@google.com> |
Merge "Fix ActionMode.snooze API" into mnc-dev
|
9e211282d3ee54c9840947951593554c3bd5a77c |
05-Jun-2015 |
Abodunrinwa Toki <toki@google.com> |
Fix ActionMode.snooze API Bug: 21572677 Change-Id: If9fdb8ace3773b983418b0148082712644fd1fa5
loatingActionMode.java
|
601523ad007923779d156aaa8dc229468773e48c |
04-Jun-2015 |
Abodunrinwa Toki <toki@google.com> |
TextView: Make sure the contentRect is within visibile bounds. Bug: 21620604 Change-Id: Idd0d891e423316b2ebacf883fd3cbfff9ef69743
loatingActionMode.java
|
2217f61e51ba4b19c56b19297c1e9cf74d7d860f |
26-May-2015 |
Filip Gruszczynski <gruszczy@google.com> |
Revert "Revert "resolved conflicts for merge of 47249f2a to mnc-dev"" This includes the fix for the broken dialog windows. The outsets will only be calculated and applied if the window is full screen, since they don't make much sense otherwise. This reverts commit 4bb6b751fbbb218e8a298db4aa008472a0aa8d31. Change-Id: I977a85a78c990c1840784dc0be0dddd5a6d84e6b
aseIWindow.java
|
6a0b277c7c5759cae8151e87cbc11c5a2c7332a2 |
26-May-2015 |
Abodunrinwa Toki <toki@google.com> |
Hide the floatingtoolbar when content rect is invisible. Hide the floating toolbar when the content rect is outside the source view's visible area. Bug: 21304845 Change-Id: I0dd10ad2cda7a8d9b05c81334cdfbd68c22dbc6a
loatingActionMode.java
|
4bb6b751fbbb218e8a298db4aa008472a0aa8d31 |
23-May-2015 |
Dianne Hackborn <hackbod@google.com> |
Revert "resolved conflicts for merge of 47249f2a to mnc-dev" This reverts commit c7becb7ee78881646251ff4846e63eb6b96bf7ec, reversing changes made to 8562b08f04c1309cf40db1e749d612b6824f1d12.
aseIWindow.java
|
c7becb7ee78881646251ff4846e63eb6b96bf7ec |
21-May-2015 |
Filip Gruszczynski <gruszczy@google.com> |
resolved conflicts for merge of 47249f2a to mnc-dev This is a merge of chin support. Change-Id: I436b751b3c4aaa6b46cfcdb475e02eedfa5a5635
|
47249f2a9e49aa9626369517315eafc6b42fd8e9 |
21-May-2015 |
Filip Gruszczynski <gruszczy@google.com> |
am cb89ac84: Merge "Support for devices with a chin." into cw-d-mr1-dev * commit 'cb89ac84c621e047d81873428325dfd747b90a6b': Support for devices with a chin.
|
3e11bf33a6094da92d97702213aa12c67b21c4d1 |
20-Apr-2015 |
Filip Gruszczynski <gruszczy@google.com> |
Support for devices with a chin. Information about the chin is now part of the config.xml instead of the theme. It is retrieved by WindowManagerService and passed to the clients as insets. Clients can adjust their behavior in a way that makes it invisible to the user, that part of the surface doesn't actually exist. Bug: 19908853 Change-Id: Iedf57bf3c848201b854f91ffeb3b59187d375c1f
aseIWindow.java
|
a8151e4ef7987faa7d0ee31bc3013a05e5b76a05 |
06-May-2015 |
Abodunrinwa Toki <toki@google.com> |
Hide floating toolbar when selection is out of bounds. Bug: 20212141 Change-Id: I7844308e339ba9a5027c629da8090053011e019d
loatingActionMode.java
|
fd3a3a1163c5096821cef351309fcdd9a4f48002 |
05-May-2015 |
Abodunrinwa Toki <toki@google.com> |
Hide floating toolbar when user interacts with screen. - Adds an ActionMode.snooze(int) API. - Clients call this to hide the floating toolbar on DOWN touch event. - This is called repeatedly as a snooze timeout will re-show the toolbar. - ActionMode.snooze(0) will "wake" the toolbar, reshowing it. - Clients call this to re-show the toolbar on UP touch event. - This CL also adds code to hide the toolbar when the "content rect" is changing. Bug: 20148125 Change-Id: If5a9a15f72c73cad8ca01a4328a58570b3e29f66
loatingActionMode.java
|
827e0facfefd0c0033dcfb1747b4fa6f80f9e0e2 |
07-May-2015 |
Jorim Jaggi <jjaggi@google.com> |
Make sure the app can draw a frame before unlocking - The mechanism to stop windows drawing while window animator was animating was somehow flaky. It relied on the fact that the client would call relayout() whenever the animating state changed. This is mostly the case, but not for lockscreen animations. Instead, we now use a push model, where window manager tells the app that the state has changed. - In addition, it only stopped drawing if that window was animating, but then only resumed drawing after all windows have finished animating. Now, we do this per window, so we only stop drawing for windows that are currently animating. - We resume the top activity now at the very beginning of the unlocking sequence. This gives the app a chance to draw a frame before the user sees anything. If it's to slow, then we just use the outdated framebuffer. Bug: 19964562 Change-Id: Ifef8abd189a3146d854b81b9b948861e4d38c155
aseIWindow.java
|
0d7d4ef56083543d58ef5835ec594865a547347c |
13-May-2015 |
Clara Bayarri <clarabayarri@google.com> |
Fix Floating Toolbar appearing after ActionMode was cancelled The Views created for the Toolbar were not cleaned up properly when the mode was cancelled by the client in onCreateActionMode, leading to the toolbar appearing over other views when it shouldn't due to onWindowFocusChanged showing the Toolbar if it exists. We don't actually need the views if we don't know whether they are going to be shown yet, so moved view creation to after onCreateActionMode Bug: 20713912 Change-Id: Ic0c31d1634e1e96d9981a77b2c769306a8bf1a8d
loatingActionMode.java
|
14e139179be7daab6ed452105387a3922752c219 |
07-May-2015 |
Seigo Nonaka <nona@gogole.com> |
Retry "Always show auxiliary subtypes from NavBar keyboard icon." This CL relands I1e50ee42838a1bf64a612da4904aa93458d44ea4, which was reverted by I3decaf37198e5864a1763a059df4a36ebc70c5a7 due to the build breakage in 'layoutlib' target, with a proper fix. Hereafter the original CL description is repeated. The auxiliary subtypes should be listed if the input method picker is opened from NavBar keyboard icon. However there is only IMM#showInputMethodPicker() API to open input method picker and this is also used from LockScreen or Settings UI. Auxiliary subtypes should not be listed there(Id7cf5d122). Thus framework shows auxiliary subtypes based on IMMS#mInputShown and LockScreen state, but it is not a perfect solution. If a physical keyboard is connected, the soft input may be gone. As the result, auxiliary subtypes won't be listed even if it is opened from NavBar keyboard icon. To fix this issue, this CL introduces IMM#showInputMethodPicker(boolean) to be able to decide showing auxiliary subtypes by caller. Note that IMM#showInputMethodPicker(boolean) is still hidden with @hide. There is no public API change in this CL. Bug: 20763994 Change-Id: Id156c85535a221235737ea6dcc15a67f1c4b9f71
InputMethodManager.aidl
|
d130bdc462b163f9afcaf144b477be80959e04d6 |
07-May-2015 |
Bart Sears <bsears@google.com> |
Revert "Always show auxiliary subtypes from NavBar keyboard icon." CL is breaking the build. Discussed with Seigo and verting until he can take a look at it. This reverts commit 80ff4ed6bb8dbdad7192d679a01096aa888e090b. Change-Id: I3decaf37198e5864a1763a059df4a36ebc70c5a7
InputMethodManager.aidl
|
80ff4ed6bb8dbdad7192d679a01096aa888e090b |
04-May-2015 |
Seigo Nonaka <nona@google.com> |
Always show auxiliary subtypes from NavBar keyboard icon. The auxiliary subtypes should be listed if the input method picker is opened from NavBar keyboard icon. However there is only IMM#showInputMethodPicker() API to open input method picker and this is also used from LockScreen or Settings UI. Auxiliary subtypes should not be listed there(Id7cf5d122). Thus framework shows auxiliary subtypes based on IMMS#mInputShown and LockScreen state, but it is not a perfect solution. If a physical keyboard is connected, the soft input may be gone. As the result, auxiliary subtypes won't be listed even if it is opened from NavBar keyboard icon. To fix this issue, this CL introduces IMM#showInputMethodPicker(boolean) to be able to decide showing auxiliary subtypes by caller. Note that IMM#showInputMethodPicker(boolean) is still hidden with @hide. There is no public API change in this CL. Bug: 20763994 Change-Id: I1e50ee42838a1bf64a612da4904aa93458d44ea4
InputMethodManager.aidl
|
838e36cda7af884233c06c5b2b5e43ffbed4715b |
18-Mar-2015 |
Clara Bayarri <clarabayarri@google.com> |
Floating toolbar: Create the FloatingActionMode and use it in DecorView. This CL - Creates a new FloatingActionMode - Uses it for action mode requests of type floating - Plumbs in the positioning invalidation logic Change-Id: I379de5b0a87b256946d0a6d8014299cfb78e6734
loatingActionMode.java
|
4d3494000c8b84d6e6475bf2c938fffeab727ed6 |
17-Mar-2015 |
Clara Bayarri <clarabayarri@google.com> |
Merge "Delete the ActionModeWrapper now that it is not needed anymore."
|
2c528c2175ec6d49e2db9be807dbc88ba07b5b4c |
16-Mar-2015 |
John Reck <jreck@google.com> |
am 059ba981: am 386dcbdd: Merge "Frameworks/base: Fix missing cast" * commit '059ba9814bb07aeebd8bf697fc05ff833c63033b': Frameworks/base: Fix missing cast
|
65ac8a2bd77015b4f77acc02276be1c6f07c78f5 |
15-Mar-2015 |
Andreas Gampe <agampe@google.com> |
Frameworks/base: Fix missing cast Without a cast, the division is integer division. Change-Id: I050e53778de8b1591a0be16ebbee8eed70eb1528
nimation/FallbackLUTInterpolator.java
|
af9047161acbd05f1bbc8950955e42e321cddced |
13-Mar-2015 |
Clara Bayarri <clarabayarri@google.com> |
Delete the ActionModeWrapper now that it is not needed anymore. Change-Id: I7fcd6cb92a7259168d9f45d9bdfd9ab155a25d0f
ctionModeWrapper.java
|
4423d91de5300d3fd318bf5bc2d4d7e5bb856abf |
02-Mar-2015 |
Clara Bayarri <clarabayarri@google.com> |
Add a type parameter to startActionMode() calls. This requires adding a new method to View and Window.Callback to pass down the type as a parameter. For compatibility purposes, the new method implementations keep the type and call the old method, in case clients have subclassed it. Change-Id: If5d857f131e33be8cc6a8814f2e9c4e85ad2da25
tandaloneActionMode.java
|
8fd949e680c15d397084430d4907c16cedfacdda |
11-Mar-2015 |
Alan Viverette <alanv@google.com> |
Various fixes for popup monkey testing Ensures PopupMenu works correctly when multiple calls are made to show and dismiss. Ensure PopupWindow works correctly when multiple calls are made to showAsDropDown and dismiss (fixes multiple clicks on Spinner). Bug: 19672907 Bug: 19671831 Change-Id: Ib92accd8fd70a1ff1f8cda27155347b007a4d25b
enu/MenuPopupHelper.java
|
727899fd0d6fe0de81bb329280e21b5152a1ae52 |
02-Mar-2015 |
Clara Bayarri <clarabayarri@google.com> |
Merge "Floating Toolbar: Wrap the ActionBar ActionMode handling."
|
c57e7bc3389aeb158cacc54fd1e7e9b5ffdfc01f |
13-Feb-2015 |
Clara Bayarri <clarabayarri@google.com> |
Floating Toolbar: Wrap the ActionBar ActionMode handling. Refactor the ActionBar handling of startActionMode to allow handling by the ActionModeWrapper, using the previously created infrastructure. Things pending after this CL: - Representing the floating type - Supporting two ActionModes in parallel in DecorView, one of each type Change-Id: Ic126e004bdef5d91d8be3d6a07eea34aa97a611e
ctionModeWrapper.java
|
9cc36ca1b520c06f882e84b909f3a2b75d303a06 |
23-Feb-2015 |
Chris Banes <chrisbanes@google.com> |
MenuItem, navigation and overflow icon tinting - iconTint and iconTintMode attrs for MenuItem, with associated setters. - navigationTint and navigationTintMode attrs for Toolbar with associated setters. - overlflowTint and overflowTintMode attrs for Toolbar with associated setters. BUG: 18126050 BUG: 19148351 BUG: 19305408 Change-Id: Ibd1fae7cdbc7a7c42809e52541fae5d8beb18e92
enu/ActionMenuItem.java
enu/MenuItemImpl.java
|
399b51397b98f9e225410adf11b80c8b9c4b1a91 |
17-Feb-2015 |
Clara Bayarri <clarabayarri@google.com> |
Floating toolbars: Encapsulate StandaloneActionMode view creation. This CL defines a new interface to be used by ActionModeWrapper. This allows each client to inject a different primary ActionMode to the wrapper and keep view creation code next to ActionMode creation. The interface method is only called when the wrapper actually knows that will be the used type, avoinding unnecessary view creations. Things pending after this CL: - Correct handling of ActionModes created by callback.onWindowStartingActionMode(). This includes all current usages in an existing ActionBar, as it is handled by Activity. In the current state, we do not intercept these ActionModes and hence cannot change the representation. - Representing the floating type - Supporting two ActionModes in parallel in DecorView, one of each type Change-Id: Ic38e209877c3876161d8dd56902e25b51fbe40b6
ctionModeWrapper.java
|
ed2a54cfd336bb935f281c04509ecd48c8cf116d |
05-Feb-2015 |
Clara Bayarri <clarabayarri@google.com> |
Floating Toolbars: Wrap the ActionMode creation in DecorView This change will allow us to create ActionMode representations on the fly after onCreateActionMode by using the Decorator pattern. The new ActionModeWrapper will be responsible for the creating the appropriate ActionMode depending on the type chosen by the client, and setting it up. Things pending that are NOT addressed by this CL: - ActionModes created by callback.onWindowStartingActionMode(). This includes all current usages in an existing ActionBar, as it is handled by Activity. This requires some additional refactoring. - Representing the floating type - Moving the view creation code specific to StandaloneActionMode from DecorView to ActionModeWrapper, decoupling DecorView from StandaloneActionMode completely - Supporting two ActionModes in parallel in DecorView, one of each type Change-Id: I1a8db711f53b771eac74f0e6496106acf1ca2727
ctionModeWrapper.java
tandaloneActionMode.java
|
4456b81f22b67d124b85e1a7b1a15a877b604e8b |
08-Jan-2015 |
Alan Viverette <alanv@google.com> |
Merge "Add popup window accessors for anchor overlap, gravity, window"
|
a54956a0bc611b1e9b3914edc7a604b59688f6b7 |
08-Jan-2015 |
Alan Viverette <alanv@google.com> |
Fix accessibility delegation Ensures that delegate code is run last. Previously, calling the super method from an accessibility delegate set on a widget would only run code in the widget's parent. Next, the delegate code would run. Finally, the widget's code would run. As a result, the widget code would override any data supplied by the delegate. By moving all overridden code to internal methods, we ensure that the call chain for super includes the widget's parent code followed by the widget's code. The delegate code will always run last. BUG: 17641433 Change-Id: Ib9d403156c1fc4fb04f65f3c126d1277a44b3740
enu/ActionMenuItemView.java
enu/ListMenuItemView.java
|
75d837954c3673647e3a899f03cd56c0892066e0 |
08-Jan-2015 |
Alan Viverette <alanv@google.com> |
Add popup window accessors for anchor overlap, gravity, window Cleans up comments and some code in PopupWindow. BUG: 18245054 Change-Id: I2111d0c194ee1a39aaa721083041fc139efcf630
enu/MenuPopupHelper.java
|
808fe6f99fba753e0ec4c5e90de0ff7a2140e8a6 |
03-Nov-2014 |
Adrian Roos <roosa@google.com> |
Merge "Fix colored status bar panning issues" into lmp-mr1-dev
|
9c79504225f60c72c947220b6aca928f11279e1c |
29-Oct-2014 |
Craig Mautner <cmautner@google.com> |
Add enter-animation-done callback for system windows Existing hidden methods allow activities to be notified when their windows have completed animating in. This change adds that capability to system windows using a ViewTreeObserver callback since system windows lack an activity token. The first subsystem to use this is the UserSwitchingDialog which was previously using a 250 msec timeout to dismiss the dialog. That deadline was often missed leaving the user with no dialog on the screen during the transition. Fixes bug 16661752. Change-Id: I70789e0d9c07112f275e76fb82850926305f290d
aseIWindow.java
|
0e7ae4efe8f424fa1ced8f7e5f3d8ae78066592b |
01-Oct-2014 |
Adrian Roos <roosa@google.com> |
Fix colored status bar panning issues Bug: 17695293 Change-Id: I6a1267f8dff27e7b78ab312a71648ef16ab9483b
ootViewSurfaceTaker.java
|
e38eb4d4ef504c0b72d51dfcc8fcd06cf73c0d50 |
23-Oct-2014 |
Alan Viverette <alanv@google.com> |
Revert "Check MenuItem.isVisible() for keyboard shortcuts" Just kidding we do want this to work like it used to. This reverts commit e354a9e4da56da45d7035e1e93301554c5faf32e. Change-Id: Ia51050a93e25c1ad16144b0da3f6178a98ad971a
enu/MenuBuilder.java
|
e354a9e4da56da45d7035e1e93301554c5faf32e |
21-Oct-2014 |
Alan Viverette <alanv@google.com> |
Check MenuItem.isVisible() for keyboard shortcuts Parity with support-v7 change. BUG: 18021345 Change-Id: I583b586d451a21bbd207d2b0584a396e1125ee59
enu/MenuBuilder.java
|
29632521c36548d71b610fc4de864281bab4dfb4 |
16-Oct-2014 |
Alan Viverette <alanv@google.com> |
Add style support to PopupMenu, clean up constructor javadoc BUG: 18002523 Change-Id: Ice492686b814460248ccbe9727c64dd002e7ed7a
enu/MenuPopupHelper.java
|
a9ddb8dc23b253c53f24ceb81e9d596c072d834e |
18-Sep-2014 |
Alan Viverette <alanv@google.com> |
Use action bar theme for action modes, fix ViewStub inflation theme BUG: 17262483 BUG: 17513621 Change-Id: I74764570a11da162a224e94978e21e52d17e2e84
tandaloneActionMode.java
|
3fadee479107f0494e1e190aba2a1eea12cb0a75 |
08-Sep-2014 |
Yohei Yukawa <yukawa@google.com> |
API Review: Clean up removed APIs This CL removes old API signatures marked as @removed in the follow CLs. - Ic8c6fab58c01206872a34e7ee604cdda1581364d - Ia8cbb9f6b41cd9509fc0147fd68763dfde593ffc - I772c48ff18918e48a81e807b48ff907614485c09 This is just a clean-up CL. No behavior change is intended. BUG: 17200900 BUG: 17320996 BUG: 17365414 Change-Id: Ibfbd5cc1cdebb8851c73477cff55c9b2d631fdea
nputConnectionWrapper.java
|
d8636ea7ca78df83d6b04088eab7853f15f3e999 |
03-Sep-2014 |
Yohei Yukawa <yukawa@google.com> |
API Review: InputConnection This CL does nothing but rename some L API candidates in InputConnection class, as per requested. - requestUpdateCursorAnchorInfo() -> requestCursorUpdates() - REQUEST_UPDATE_CURSOR_ANCHOR_INFO_IMMEDIATE -> CURSOR_UPDATE_IMMEDIATE - REQUEST_UPDATE_CURSOR_ANCHOR_INFO_MONITOR -> CURSOR_UPDATE_MONITOR BUG: 17320996 Change-Id: I772c48ff18918e48a81e807b48ff907614485c09
InputConnectionWrapper.java
nputConnectionWrapper.java
|
1960b324345cd4b1808393a783ec4b84be9dd7de |
22-Aug-2014 |
Yigit Boyar <yboyar@google.com> |
Merge "Fix RTL bug for actionbar tooltips" into lmp-dev
|
a277db28e990d1f6f74ace0c32fe92401660a840 |
22-Aug-2014 |
Yohei Yukawa <yukawa@google.com> |
Remove CursorAnchorInfoRequest and related stuff This CL removes CursorAnchorInfoRequest and related stuff in favor of InputConnection.requestUpdateCursorAnchorInfo, which is more easy to understand. This CL also deprecates InputMethodManager#updateCursor and related stuff. Rationale: 1. The spec of #updateCursor says that it provides the cursor position in local coordinates, while the input method requires it in the screen coordinates. 2. #updateCursor has never been enabled in AOSP, because InputMethodManager#isWatchingCursor always returned false. 3. There has been no way to let InputMethodManager#isWatchingCursor return true. 4. In L, InputMethodManager#updateCursorAnchorInfo is introduced to address all the issues above. Given that we no longer need to support #updateCursor, CursorAnchorInfoRequest is overkill when we need to convey just a couple of parameters. BUG: 17185263 BUG: 17182367 Change-Id: I4a577bfd02b37b9e56c80b8b41bb25afa95dd8ef
InputConnectionWrapper.java
InputContext.aidl
InputContextCallback.aidl
nputConnectionWrapper.java
|
d719539f91d4f5cf6c0f9be0b68b750dcd443433 |
22-Aug-2014 |
Yigit Boyar <yboyar@google.com> |
Fix RTL bug for actionbar tooltips Bug: 12570378 Change-Id: I13ba94c8b736a3a80a8d79e95bd18b93a1157303
enu/ActionMenuItemView.java
|
0023d0e0c4f5339b299d1eacbd4e7181c2fd271f |
10-Jul-2014 |
Yohei Yukawa <yukawa@google.com> |
Polish new IME API for L part 2: CursorAnchorInfo This CL addresses feedbacks from internal customers for new input method APIs that are mainly used for physical keyboard support in L. For performance reasons, #onUpdateCursorAnchorInfo is not called back by default and each input method has to enable this event notification explicitly whenever fine-grained character locations are needed. In L-preview, InputMethodSession#setCursorAnchorMonitorMode was introduced for this purpose. However, we got several feedbacks to be addressed. - The effect of #setCursorAnchorMonitorMode is not preserved during focus change. IMEs need to call #setCursorAnchorMonitorMode every time when #onStartInput is called. This is tricky and hard to understand. - As #onUpdateCursorAnchorInfo is a new API, not all applications/text editors have supported it. Therefore IMEs can't always rely on it. However, there is no way to query if the attached target is supporting this new API or not. It would helpful for IME authors if we can provide a reliable way to query if the attached input target is supporting the new API or not. In order to address these issues, the triggering method has moved from InputMethodSession to InputConnection in this CL, as an analogy of existing InputConnection#getExtractedText API, which has provided similar functionality including optional reactive event callbacks from the application to the IME. BUG: 15812658 BUG: 16118603 Change-Id: I3c6b69bd9d79b199afe68d838f25effa6048e5cc
InputConnectionWrapper.java
InputContext.aidl
InputContextCallback.aidl
InputMethodClient.aidl
InputMethodManager.aidl
nputConnectionWrapper.java
|
3d0f21dab8d891b9aebdd5277348d549eeb843e6 |
11-Jul-2014 |
Alan Viverette <alanv@google.com> |
API for inflating action bar menus against a different theme BUG: 16162344 Change-Id: I5bf9f133de56a1830028bca6326cc2c50888a052
enu/MenuBuilder.java
enu/MenuPopupHelper.java
enu/MenuPresenter.java
|
fa10423fa00f3495e451016acba9b6848eb995c9 |
21-Jun-2014 |
Adrian Roos <roosa@google.com> |
Add stable insets for stable system windows Adds a new kind of inset that only accounts for stable system windows like the system or navigation bar. Bug: 15457292 Change-Id: I681b711f6f40a94c25b7acd3a44eb3539486afab
aseIWindow.java
|
cb923d99e9ec2f7b6b40a7c89c83a6caaa03b016 |
01-Jul-2014 |
Chet Haase <chet@google.com> |
null-check before derefing title in MenuItemImpl The toString() method in MenuItemImpl returns mTitle.toString(), which crashes when the title is null (which it can be, since there is no requirement that a title be non-null, and you can get one by simply not assigning a title to begin with or by setting it to null). Issue #13420311 MenuItemImpl can't handle a null title Change-Id: I701d1d565f1d254ffdd41ca64c1abaf2906edb79
enu/MenuItemImpl.java
|
3d1e8129ebd69db49d80e5d598f608c59b884cdf |
06-Jun-2014 |
Yohei Yukawa <yukawa@google.com> |
Introduce a sequence number to avoid redundant IPCs This CL introduces a sequence number to avoid redundant IPCs between IMM and IMMS. The basic concept is that: 1. IMMS maintains a sequence number for #notifyUserAction. 2. IMMS increases the sequence number whenever the current IME/subtype is changed. 3. IMMS notifies the new sequence number to IMM. 4. IMM maintains the last sent sequence number and the next sequence number. IMM should call #notifyUserAction only once per particular sequence number. 5. IMMS ignores #notifyUserAction if the specified sequence number is not the expected one. BUG: 7043015 Change-Id: I19ad8542659bc092b92ee13eb9f1d68ddd4b815a
InputMethodClient.aidl
InputMethodManager.aidl
nputBindResult.java
|
0297051162193ef2b7d906409868e404f77e4c31 |
05-Jun-2014 |
Yohei Yukawa <yukawa@google.com> |
Trivial method renaming for notifyTextCommitted This CL does not change existing behavior but only renames notifyTextCommitted with notifyUserAction so that we can use not only text commit but also other actions such as just typing a character will be used as a trigger to update the IME rotation order for better IME switching experience. BUG: 7043015 Change-Id: I7f3e13a7226ef0dceee82b67e8a0d8536f7e9807
InputMethodManager.aidl
|
918988c1ce5af002d41c7ac37f3fa490558b0c90 |
19-May-2014 |
John Reck <jreck@google.com> |
Baby steps Run ViewPropertyAnimators with no listeners on the RenderThread Change-Id: I7ff5300db96c7f4b59b09e3fff8a0df173f132dd
nimation/FallbackLUTInterpolator.java
|
ad2f8e334f3ef22d3e412b0660a2e1f996f94116 |
16-May-2014 |
Alan Viverette <alanv@google.com> |
Update ripple behavior, use render thread animation Change-Id: Ib6bc1e08b05d29606f452961963d58b8fc866746
nimation/FallbackLUTInterpolator.java
|
c8ac775659fd252ce2cc9a61837c170ff70f0a1a |
13-May-2014 |
John Reck <jreck@google.com> |
More native interpolators Gotta collect 'em all Change-Id: I3ccc2b5c842b27b906c8a0470fbedc2bf285bc38
nimation/NativeInterpolatorFactoryHelper.java
|
315c329544d7c593d1072b071cbb92d9afe74021 |
10-May-2014 |
John Reck <jreck@google.com> |
Add TimeInterpolator support to RNA Bug: 14678626 Change-Id: I6554e7fcd42c49fac3618ca792083bb68e358f55
nimation/FallbackLUTInterpolator.java
nimation/HasNativeInterpolator.java
nimation/NativeInterpolatorFactory.java
nimation/NativeInterpolatorFactoryHelper.java
|
c2ddd6023688db5ecf6c586e05f55e262b4a802e |
06-May-2014 |
Yohei Yukawa <yukawa@google.com> |
Introduce new API for floating window support This CL introduces a new API IMM#updateCursorAnchorInfo for floating window support. BUG: 14579622 Change-Id: I61dec2f8fa671ba891da1d4af08975750e3acb04
InputMethodSession.aidl
|
560f17098f90b15c8894cce127f2fed85f7aeb6b |
05-May-2014 |
Alan Viverette <alanv@google.com> |
Add support for popups overlapping anchors BUG: 14471731 Change-Id: I16e8d76caedfebd0c38b8c0b22cd9619d70877c8
enu/MenuPopupHelper.java
|
1001961f904bac5294aaf73a47c2497aa764bf7f |
18-Apr-2014 |
Deepanshu Gupta <deepanshu@google.com> |
Add view cookies for action bar menus. The change adds the view cookies for the menus rendered in the action bar. This enables the IDE to map the menu to the relevant XML Tag in the menu xml and show the highlighting accordingly. Change-Id: Idcfc263a8ebe0a4f25afa3a1eb085fa628fd03ca
enu/MenuBuilder.java
|
15b0bef9250e084bfbceb388716d28ed62ca018f |
12-Apr-2014 |
Jeff Brown <jeffbrown@google.com> |
am 9e2fde9c: am d912e1f6: Use the display\'s actual state in the view hierarchy. * commit '9e2fde9c8a3557d6e8d1f3971a421ecdf5c2ce07': Use the display's actual state in the view hierarchy.
|
d912e1f6a111fb33118d116bd72da1a328041bca |
12-Apr-2014 |
Jeff Brown <jeffbrown@google.com> |
Use the display's actual state in the view hierarchy. Previously, the view hierarchy would suppress drawing whenever the PowerManager.isScreenOn() method returned false. However, this method really describes the interactive state of the device rather than the actual display state. This is especially a problem when there are multiple displays but it also breaks drawing while in doze mode. This change makes the view hierarchy consider the actual state of the display instead on an individual basis. Bug: 13133142 Change-Id: I69870b6b14a3504607a30562aa48c3452f777c1f
aseIWindow.java
|
59fee2d5534965f0986e68e0c3562da5e65e6c45 |
08-Apr-2014 |
Yohei Yukawa <yukawa@google.com> |
Merge "Allow IMEs to start/stop receiving onUpdateCursor callback"
|
e43340c80dc66c45edc793ecd0343774aa34d108 |
18-Mar-2014 |
Adam Powell <adamp@google.com> |
android.widget.Toolbar Add the new Toolbar widget for use in app layouts. ActionBar can now be used as a point of control for either a traditional window decor action bar or for a Toolbar that appears inline in an Activity's layout. ToolbarActionBar is currently WIP. Change-Id: I0da093e5645840f4fd032aa34efa0ae5f1825ff2
enu/ActionMenuItemView.java
|
b7b7907fb5e4b2252b3c594a6bc4402217fe662a |
25-Mar-2014 |
Yohei Yukawa <yukawa@google.com> |
Allow IMEs to start/stop receiving onUpdateCursor callback This CL introduces an API which allows IMEs to start/stop receiving onUpdateCursor callback upon their request. BUG: 13388665 Change-Id: I987326872def181dda5d9d701b762f088e0d9c39
InputMethodClient.aidl
InputMethodManager.aidl
|
77943308f5661636d85cb5e78188dbbc8f0e329e |
14-Mar-2014 |
Yohei Yukawa <yukawa@google.com> |
am fd2f8d43: am 51b921d0: DO NOT MERGE - Preserve the order of InputMethodManager method calls * commit 'fd2f8d43419d1f25ced8b2bac96407925dd4c471': DO NOT MERGE - Preserve the order of InputMethodManager method calls
|
51b921d0e33302b3f431dcfa15bd6588408525ea |
05-Mar-2014 |
Yohei Yukawa <yukawa@google.com> |
DO NOT MERGE - Preserve the order of InputMethodManager method calls Cherrypick of I0f8d33b0c77129f72581bc43e7f4fdc25469b520 This CL allows the Framework class InputMethodManager to behave in a more deterministic way, that is to say, with an I/O barrier. InputMethodManager#setAdditionalInputMethodSubtypes is internally implemented as a RPC to the corresponding counterpart in InputMethodManagerService. The problem here is that this RPC is marked as "oneway". As a consequence, this public API call returns immediately without waiting the additional subtypes are actually added. This behavior is also not documented so far unfortunately. See the following demo code: Final InputMethodManager imm = ...; imm.setAdditionalInputMethodSubtypes(id, subTypes); Final List<InputMethodInfo> ims = imm.getInputMethodList(); Currently, it is not guaranteed that the InputMethodInfo returned from #getInputMethodList reflects the result of the previous call of #setAdditionalInputMethodSubtypes because of its undocumented asynchronous nature. With this CL, InputMethodManager#setAdditionalInputMethodSubtypes behaves as if it has I/O barrier. This change should make it easy for IME developers to use additional subtype mechanism. BUG: 13033954 BUG: 13291370 Change-Id: I0455b176bfb3176c533ba3241881f05092b98abc
InputMethodManager.aidl
|
68ec033b7c9ea28155bbb007b01d5dbce2239392 |
13-Mar-2014 |
Adam Powell <adamp@google.com> |
am 75958c29: am 3a153c0d: Merge "Fix a bug in submenu presenter priority handling" into klp-dev * commit '75958c298477a3d1e556c4fe36e516b9e828c311': Fix a bug in submenu presenter priority handling
|
de69575dd1bdafabda8afda8b4251b830ba0c551 |
12-Mar-2014 |
Yohei Yukawa <yukawa@google.com> |
Merge "Preserve the order of InputMethodManager method calls"
|
190909f2c1b47a0ac9e50a2012cc8eae34391fa7 |
04-Dec-2013 |
Adam Powell <adamp@google.com> |
Fix a bug in submenu presenter priority handling Now that overflow menus and the PhoneWindow-level ListMenuPresenter can coexist, make sure that ListMenuPresenter handles submenus spawned by itself. Introduce an internal API for menus to prefer a specific presenter when performing item actions. Bug 11979407 Change-Id: Id0b8fcbb8b310cbb3a63a1e5ea7a89de5d53f86f
enu/ListMenuPresenter.java
enu/MenuBuilder.java
|
71c8fb92a151f2f64ffbaf551c072179bc46c0da |
07-Mar-2014 |
Jeff Brown <jeffbrown@google.com> |
am 2b27ef97: am c969450a: am 840c8474: Merge "Add config_supportAutoRotation." into klp-modular-dev * commit '2b27ef979dba3808cdae6dce32fe27b59197e34c': Add config_supportAutoRotation.
|
bcdfc62ae3ac3809e883fc0b4c71ab52a0cdacf8 |
07-Mar-2014 |
Jeff Brown <jeffbrown@google.com> |
Add config_supportAutoRotation. On some products, it may not make sense to use the accelerometer to perform auto-rotation. In that case, the product's config.xml framework resource overlay should set config_supportAutoRotation to false. Setting this to false also disables auto-rotation settings. Bug: 13211999 Change-Id: If9d7d72f2a2c576b14a4ff0afb61ea52c42c3357
otationPolicy.java
|
c9e5f540a954a878365e88e42f78800d4eafa188 |
10-Jan-2014 |
Adam Powell <adamp@google.com> |
Fix a bug where OnTouchListeners in action views could be removed ActionMenuPresenter should only replace the touch listener when binding a generated item view. Bug 12470259 Change-Id: I8c4c6110065605225a20cb7ed872255282085661
enu/ActionMenuPresenter.java
|
f06569561fe1c6e898debf8bb9f37331a9f87323 |
03-Mar-2014 |
Yohei Yukawa <yukawa@google.com> |
Introduce InputMethodSubtypeArray for memory efficient IPCs This CL introduces InputMethodSubtypeArray which compresses multiple instances of InputMethodSubtype to reduce the risk of TransactionTooLargeException during IPCs. There are some IMEs which rapidly adding new subtypes into their supported language list. One problem here is that each instance of InputMethodInfo internally owns the list of supported subtypes. Basically it requires additional 200 ~ 300 bytes for each subtype when InputMethodInfo is transffered via IPCs. We should keep the size less than 100 KB in typical scenario. With this CL, the list of InputMethodSubtype is marshalled with GZIP compression. Approximately one InputMethodInfo is marshalled within 10 KB even when it has 100 subtypes. No negative performance impact is observed so far. The cost of decompression seems to be compensated by another optimization in this CL. Actually marshalling cost is reduced with this CL by caching the compressed data on demand. BUG: 12954290 Change-Id: Ibb2940fcc02f3b3b51ba6bbe127d646fd7de7c45
InputMethodManager.aidl
|
9e9fbb26395eb983e17a415cf78b3c2ee060ee0e |
05-Mar-2014 |
Yohei Yukawa <yukawa@google.com> |
Preserve the order of InputMethodManager method calls This CL allows the Framework class InputMethodManager to behave in a more deterministic way, that is to say, with an I/O barrier. InputMethodManager#setAdditionalInputMethodSubtypes is internally implemented as a RPC to the corresponding counterpart in InputMethodManagerService. The problem here is that this RPC is marked as "oneway". As a consequence, this public API call returns immediately without waiting the additional subtypes are actually added. This behavior is also not documented so far unfortunately. See the following demo code: Final InputMethodManager imm = ...; imm.setAdditionalInputMethodSubtypes(id, subTypes); Final List<InputMethodInfo> ims = imm.getInputMethodList(); Currently, it is not guaranteed that the InputMethodInfo returned from #getInputMethodList reflects the result of the previous call of #setAdditionalInputMethodSubtypes because of its undocumented asynchronous nature. With this CL, InputMethodManager#setAdditionalInputMethodSubtypes behaves as if it has I/O barrier. This change should make it easy for IME developers to use additional subtype mechanism. BUG: 13033954 BUG: 13291370 Change-Id: I0f8d33b0c77129f72581bc43e7f4fdc25469b520
InputMethodManager.aidl
|
8eea3ea5591e59f55cbb4f6b2b7e9363a285ced3 |
04-Feb-2014 |
Alan Viverette <alanv@google.com> |
Add APIs for obtaining themed Drawable from Theme, Context BUG: 12611005 Change-Id: Ic0057be4e4c2d0c61ce02a019b3f7d0625e3a016
enu/ActionMenuItem.java
enu/MenuBuilder.java
enu/MenuItemImpl.java
|
56110725f2a0b3f09703f2cbe9705d97609ee1e5 |
10-Jan-2014 |
Alan Viverette <alanv@google.com> |
Move drag-to-open handling into ActionMenuItemView This prevents the menu item's OnClickListener from being overwritten, allows the client to override item invocation, and prevents showing multiple popups when items are re-initialized. BUG: 11969895 BUG: 12489213 Change-Id: I97ca737810073df348171cdba5442f24a5527f89
enu/ActionMenuItemView.java
|
efc3bb06127a6640afe4985b2b2fc03c5ecc5dee |
10-Jan-2014 |
Adam Powell <adamp@google.com> |
Fix a bug where OnTouchListeners in action views could be removed ActionMenuPresenter should only replace the touch listener when binding a generated item view. Bug 12470259 Change-Id: I8c4c6110065605225a20cb7ed872255282085661
enu/ActionMenuPresenter.java
|
fa18d182a3f37505940e73ae6cd76c2e939f7f7c |
08-Jan-2014 |
Adam Powell <adamp@google.com> |
Move ActionMenuView into android.widget and make it public Expose ActionMenuView as a way for applications to present ActionBar-style menus in other embedded or repeating contexts. Change-Id: I54b7ccd9b2116ca68bc72956da9262bca9d5085f
enu/ActionMenuItemView.java
enu/ActionMenuPresenter.java
enu/ActionMenuView.java
enu/MenuBuilder.java
|
8ab172e8d9c2e926921bb52838c2322142fb3c65 |
19-Dec-2013 |
John Spurlock <jspurlock@google.com> |
Add rotation-lock to Quick Settings on phones. Make the rotation-lock QS tile available for display on phones. Devices < sw600dp are only allowed to lock rotation to their natural orientation (i.e. portrait on most phones), so tweak the QS tile label to make this clear. e.g. "Locked to Portrait" instead of "Rotation Locked" on portrait phones. Simplify RotationLockController now that the sw600 check is no longer hardcoded in RotationPolicy. Remove redundant sw600dp check in SystemUI, everything driven from the RotationPolicy helper, though SystemUI can still choose not to display the tile at all with a resource config. Clean up some of the docs in RotationPolicy to make clear the subtle distinction between the two ways of locking rotation: - From Accessibility (locks to natural orientation on all devices) - From System UI (locks to natural < sw600dp, else current rotation) Bug:11062710 Change-Id: I5caa4485c9501315da9fed964d6667d3012b43cb
otationPolicy.java
|
c0cc68053e5013c207be6f64ffd2ad9e8c467def |
04-Dec-2013 |
Adam Powell <adamp@google.com> |
Fix a bug in submenu presenter priority handling Now that overflow menus and the PhoneWindow-level ListMenuPresenter can coexist, make sure that ListMenuPresenter handles submenus spawned by itself. Introduce an internal API for menus to prefer a specific presenter when performing item actions. Bug 11979407 Change-Id: Id0b8fcbb8b310cbb3a63a1e5ea7a89de5d53f86f
enu/ListMenuPresenter.java
enu/MenuBuilder.java
|
6090995951c6e2e4dcf38102f01793f8a94166e1 |
19-Nov-2013 |
John Spurlock <jspurlock@google.com> |
Remove unused imports from frameworks/base. Change-Id: Ia1f99bd2c1105b0b0f70aa614f1f4a67b2840906
ctionBarPolicy.java
otationPolicy.java
enu/ActionMenuPresenter.java
enu/ListMenuPresenter.java
enu/MenuPopupHelper.java
|
b530aeb0feab5d371684ee8040b2f11e654ae4df |
12-Nov-2013 |
Jeff Brown <jeffbrown@google.com> |
resolved conflicts for merge of f0b9ee96 to master Change-Id: I1b347e895049474e11076c60074dc5918cfe1405
|
0abd3a6ce83ed23abe614155e776b600ef2a66c3 |
10-Nov-2013 |
Jeff Brown <jeffbrown@google.com> |
Update the media router dialogs and integrate into system UI. Port the new style UI back into the framework from the support library. There are now two dialogs: a chooser and a controller. We use the same dialogs for selecting routes within app and within quick settings. Note that the new UI does not support any grouping features since they are deprecated and unused. Bug: 11257292 Change-Id: I64e936a18d25ab75f0c470cbc1e7085f67004863
heckableLinearLayout.java
|
307182870ddbfc32ab3b18e697ab85c8e88a4fe5 |
05-Nov-2013 |
Adam Powell <adamp@google.com> |
am a20bfd96: am fe803958: am 1262d0c8: Merge "Fix action menu visibility callbacks for nested popups" into klp-dev * commit 'a20bfd96bae95bd54b20ebd184655d7211cedcb4': Fix action menu visibility callbacks for nested popups
|
b411b32861e7794a59fa7558dbe9d97407eccf23 |
02-Nov-2013 |
Adam Powell <adamp@google.com> |
Fix action menu visibility callbacks for nested popups When opening a submenu from a popup in ActionMenuPresenter, delegate the submenu callbacks to the presenter callback registered on the ActionMenuPresenter. This allows menu visibility callbacks to propagate properly so that apps that hide their action bars after a timeout can detect open menus that are deeply nested. Bug 11429613 Change-Id: I3332886f08d4f9010f0875057c457566301d12ec
enu/ActionMenuPresenter.java
enu/BaseMenuPresenter.java
|
d7443c83ceae0bdd20d68bf84648cf3b40115d85 |
15-Oct-2013 |
Satoshi Kataoka <satok@google.com> |
Notify commitText event to InputMethodManagerService for the intelligent subtype switching Bug: 7043015 Change-Id: I11ed9a767588f8080753cd9bce011dac7db579ad
InputMethodManager.aidl
|
658c7b896a751b971db1292d86655dbb97f00067 |
10-Oct-2013 |
Satoshi Kataoka <satok@google.com> |
Introduce an API to get the recommended height of the InputMethodWindow Bug: 11035379 Bug: 5137498 Change-Id: I0e920ee79c526c3aea6872b063cf294e2ab081c8
InputMethodManager.aidl
|
d2d0b5843d3c88d881c67d165bf2539dcda6e8a9 |
11-Oct-2013 |
Adam Powell <adamp@google.com> |
am 7b3cdb0f: am 6f090af3: am ebd1dca5: Merge "Re-enable ActionMenuPresenter view recycling" into klp-dev * commit '7b3cdb0fb7cd7fab647de09e6a64ce59555ed733': Re-enable ActionMenuPresenter view recycling
|
c3ca3ea3a937a20666e4f01fb1a9efb503ec274e |
11-Oct-2013 |
Adam Powell <adamp@google.com> |
Re-enable ActionMenuPresenter view recycling Since action bar transitions are turned off again for now, re-enabling item view recycling fixes an unfortunate regression with submenus. If a menu view is invalidated while a submenu is open we need to keep its anchor consistent. With view recycling active we preserve status quo and the previous anchor view instance for the popup window remains in place. In the future this will need to get more sophisticated; ActionMenuPresenter will need to re-parent an open submenu against the proper anchor view by menu item id. But that is a change for another day. Bug 11174504 Change-Id: I7e8a444f6996ec95417d20e87938f496e9c3a4dd
enu/ActionMenuPresenter.java
|
e580a2f1a16f125862357af9778e9d73594d4398 |
04-Oct-2013 |
Adam Powell <adamp@google.com> |
am bf7116a9: am 049e663c: am 8c5b15c6: Merge "Fix a bug in action menu measurement" into klp-dev * commit 'bf7116a9ddeff368b6a33fabfaa82ce974d5ee0d': Fix a bug in action menu measurement
|
da9710806bc7874b8c553f4daf9cf14f35ae1b07 |
04-Oct-2013 |
Adam Powell <adamp@google.com> |
Fix a bug in action menu measurement Thanks to a measurement optimization in KK, the view recycling behavior of ActionMenuPresenter could get into a state where the resulting ActionMenuView had changed but no layout was requested. Explicitly request a layout during menu update. Also fix an ancient typo. Bug 11047996 Change-Id: I6289fd2d142ac7d2101fbec6de19b7d3d7fbd6a2
enu/ActionMenuPresenter.java
enu/ActionMenuView.java
enu/MenuBuilder.java
|
66d1cd9da1f5bd3aa3c70a28cbd6bd8801049ace |
30-Sep-2013 |
Adam Powell <adamp@google.com> |
am 8fb6d97a: Merge "Add gravity settings to PopupWindow/ListPopupWindow/PopupMenu" into klp-dev * commit '8fb6d97ad5671b4abc1940d8bc56cf7448e45c35': Add gravity settings to PopupWindow/ListPopupWindow/PopupMenu
|
54c94dea8a26e66fa59a31fd9170ca221052d3aa |
27-Sep-2013 |
Adam Powell <adamp@google.com> |
Add gravity settings to PopupWindow/ListPopupWindow/PopupMenu Allow calling code to specify left/right/start/end gravity when showing a popup attached to an anchor. This allows easy alignment of either the right or left edges of the popup and anchor view. Bug 10728401 Change-Id: Ie0844a04ea0576fa67b0972f5873aaa4c5b823f6
enu/ActionMenuPresenter.java
enu/MenuPopupHelper.java
|
e4039cc6bce84c1aded1ea7e18a013aa71c40615 |
24-Sep-2013 |
Chet Haase <chet@google.com> |
am 5c69fd7d: am cfdc0369: Merge "Disable ActionBar usage of transitions" into klp-dev * commit '5c69fd7d36af2d186fa3b654cf8b3e6eeb5596b9': Disable ActionBar usage of transitions
|
d8d7c38533d20062166e5e7ef89b80ff9dbd8903 |
23-Sep-2013 |
Chet Haase <chet@google.com> |
Disable ActionBar usage of transitions Various artifacts across apps were coming from ActionBar's use of the new transitions framework. Disabling transitions for now to get things back to a more stable state. Also, fixed some related bugs in transitions themselves, including a change in TextChange to account for text selection, which was causing errors in Keep's SearchView. Issue #10860557 TextChange animator may old stale value Issue #10819685 sometimes icons are lighter Issue #10750525 Share and Settings icons overlap when stopping slideshow Issue #10839551 Sometimes the search text box is right-aligned in Keep Issue #10727484 Cursor incorrectly positioned after entering first letter during search action in keep app Change-Id: Iad7cbf3297e18018308b8148b3519b032e63dace
enu/ActionMenuPresenter.java
|
f206b5935e702d9b0bf9ce23166017a54ff4880e |
14-Sep-2013 |
Adam Powell <adamp@google.com> |
am 3cfc5995: am 3157e73f: Merge "Don\'t recycle action button views" into klp-dev * commit '3cfc5995bfa5d9d4c9203991131d76947c572b58': Don't recycle action button views
|
76d915955f04f841161b054e6c249a65c78ba0fd |
13-Sep-2013 |
Adam Powell <adamp@google.com> |
Don't recycle action button views Recycling action button views interferes with transition animations. Suppress menu item view recycling for them. Change-Id: I69d7561e337be7e4a89b7cf30b6c9439f2d49cc2
enu/ActionMenuPresenter.java
|
d488b785dfd7aadbb4dac69eeb2537182d814979 |
12-Sep-2013 |
Adam Powell <adamp@google.com> |
am 179ba0c0: am a2906cb4: Merge "Show alternate menu panel on devices with menu key" into klp-dev * commit '179ba0c04b446406d226cdfe866317d0d2bcecce': Show alternate menu panel on devices with menu key
|
a2906cb4d9355b7a08e7fdec1924c2dbc7fda622 |
12-Sep-2013 |
Adam Powell <adamp@google.com> |
Merge "Show alternate menu panel on devices with menu key" into klp-dev
|
5fcf5b9fd3ff6757090c6bd166b60c18eda0b3ef |
11-Sep-2013 |
Adam Powell <adamp@google.com> |
Show alternate menu panel on devices with menu key Provide a softer transition to the overflow-everywhere world for devices with menu keys. The panel menu will still be used on these devices in response to a menu key press even in the presence of an action bar with overflow. Fix a few lingering bugs around dispatching the open-overflow transition that caused problems with this along the way. Change-Id: I9d77c70f6d15c47160ac06292984101d619c44e6
enu/ActionMenuPresenter.java
|
a395e70109c904c223bb0575e2447fd249701d0d |
12-Sep-2013 |
Adam Powell <adamp@google.com> |
am 18149fcf: am 6847447d: Merge "Action bar refactoring and transitions" into klp-dev * commit '18149fcf86eee3335b28b2c2373b585c4e18745a': Action bar refactoring and transitions
|
ad79b90f21dcde6f741c47a251882c0a47c5f698 |
19-Jun-2013 |
Adam Powell <adamp@google.com> |
Action bar refactoring and transitions * Remove the extra occurrence of the Up caret view and reuse the standard home view. * Use new transition APIs to animate changes in action bar content. Change-Id: I7af3bb580ef4bff7d8dec9e21649b856fe73c77b
enu/ActionMenuPresenter.java
|
617feb99a06e7ffb3894e86a286bf30e085f321a |
10-Sep-2013 |
Alan Viverette <alanv@google.com> |
Add View constructor that supplies a default style resource Also updates the constructor of every class that extends View. BUG: 10676369 Change-Id: Ifaf27bf82028d180afa4931c0e906df88d858ac3
heckableLinearLayout.java
enu/ActionMenuItemView.java
enu/IconMenuItemView.java
enu/ListMenuItemView.java
|
fbe4a586c29b6e415e8d39d73d19bd7f0215a851 |
06-Sep-2013 |
Alan Viverette <alanv@google.com> |
Add drag-to-open for action bar submenus BUG: 10649895 Change-Id: I5076e0d09453a75ed20c44eede4b43e8a2f535fd
enu/ActionMenuPresenter.java
|
6b8c69edd210ad86eb659e06681422bb29ba2123 |
27-Aug-2013 |
Svetoslav Ganov <svetoslavganov@google.com> |
Merge "Update AccessibilityNodeInfo API as per API council request" into klp-dev
|
cb8ed39b3fb591be60b9fb1799d4ea4530eab758 |
24-Aug-2013 |
Svetoslav Ganov <svetoslavganov@google.com> |
Update AccessibilityNodeInfo API as per API council request bug:10461302 Change-Id: I9709a271ab3720e064b98c79c0950d811fe37b73
enu/ActionMenuPresenter.java
enu/ListMenuItemView.java
|
9212e350d52ea98cb673280870c54319b03ccad3 |
26-Aug-2013 |
Alan Viverette <alanv@google.com> |
Merge "Reconcile drag-to-open and touch event interception" into klp-dev
|
69960142efa8d228adbfcbabdcf618426e31e1f5 |
23-Aug-2013 |
Alan Viverette <alanv@google.com> |
Reconcile drag-to-open and touch event interception Changes behavior such that dragging on a Spinner that's inside of a ScrollView will only scroll after a tap delay. BUG: 10442971 Change-Id: I9fa9c5f0cf99e0cd158f52b6fa7a109ce1b6b8b1
enu/ActionMenuPresenter.java
|
2b10b52f6c08eb79f48f7388e2f1c69f58a9c96d |
21-Aug-2013 |
Satoshi Kataoka <satok@google.com> |
Add new API shouldOfferSwitchingToNextInputMethod Bug: 8364845 Change-Id: I6767f5640a07aa515a930645b0cf0b36fbe94831
InputMethodManager.aidl
|
a2e88ef89611d69b65b1830cc5ffebfb679e9d4d |
21-Aug-2013 |
Alan Viverette <alanv@google.com> |
Merge "Move forwarding code to ListPopupWindow, add drag-to-open in Spinner" into klp-dev
|
058ac7cfe5bb7b9ecc411b94622ac3f31a7fa25e |
20-Aug-2013 |
Alan Viverette <alanv@google.com> |
Use MULTI_LINE and OPENS_POPUP accessibility properties BUG: 10391326 Change-Id: Ib2deeeef401802b6dde646e14ee5367141469a58
enu/ActionMenuPresenter.java
enu/ListMenuItemView.java
|
ca6a3611cdb28a514834adba35fcce2da6f2e7c2 |
16-Aug-2013 |
Alan Viverette <alanv@google.com> |
Move forwarding code to ListPopupWindow, add drag-to-open in Spinner BUG: 9437139 Change-Id: I4599cf65a472b2ce74d2301988359d87917a6eec
enu/ActionMenuPresenter.java
enu/MenuPopupHelper.java
enu/TouchForwardingListener.java
|
c05027214f1f4dda67296a072dfc9af9176dc590 |
16-Aug-2013 |
Alan Viverette <alanv@google.com> |
Forward events to ListPopupWindow, highlight touched items Moves most of the drag-to-open behavior into ListPopupWindow's particular implementation of ListView. Uses hidden View API for forwarding events between different windows. Overflow menu opens on first touch, closes on touch end outside the overflow button. Clicks that occur during drag-to-open mode result in alpha animation of the selector drawable. BUG: 9437139 Change-Id: I70f540555a03450638a27880b3ae3b031ca6e2ed
enu/ActionMenuPresenter.java
enu/MenuPopupHelper.java
|
b3c21ac7c661022534135bf688a75ec35fe3a8f2 |
07-Aug-2013 |
Satoshi Kataoka <satok@google.com> |
Reduce the transaction fee of getEnabledInputMethodSubtypeList Bug: 8467480 Change-Id: If18cce8fbe567df51f29adcdcedff3f743460b8b
InputMethodManager.aidl
|
c3a1914bd777575cee1917d99d14f05bfd128717 |
07-Aug-2013 |
Ken Wakasa <kwakasa@google.com> |
Revert "Reduce the transaction fee of getEnabledInputMethodSubtypeList" This reverts commit e9a6f9713ca48aab9a6c87e0645cb0a0af946a11. Change-Id: I611d31086d4f02aae5c7021ac92975bd92a59f34
InputMethodManager.aidl
|
e9a6f9713ca48aab9a6c87e0645cb0a0af946a11 |
07-Aug-2013 |
Satoshi Kataoka <satok@google.com> |
Reduce the transaction fee of getEnabledInputMethodSubtypeList Bug: 8467480 Change-Id: Ic1fddfe433e097041fcb09d1fd341d77d7d8b13b
InputMethodManager.aidl
|
80e72700858eb58b379f77a0da5fd3a98e1aa07c |
29-Jul-2013 |
Alan Viverette <alanv@google.com> |
Implement drag to open overflow menu, lift to select BUG: 9437139 Change-Id: Iaa962453ba1b2c739a04b6b1be4f6de1fb2fa752
enu/ActionMenuPresenter.java
enu/MenuPopupHelper.java
enu/TouchForwardingListener.java
|
2dc27f22c9f2ff5de9f9e7d578391ba2abb9815c |
16-Jul-2013 |
Adam Powell <adamp@google.com> |
Fix collapsible action views. Fix a regression caused by a previous overzealous refactoring. (Oops.) Watch those conditionals, everyone! Bug 9866559 Change-Id: Ia88a4ee38edef378e70bdc7151c825375a3d482d
enu/MenuItemImpl.java
|
d9ddf52c1281db14d9243ecef6c07bdeed1e6e34 |
16-Jul-2013 |
Alan Viverette <alanv@google.com> |
Revert "Update ListMenuItemView to use a single RelativeLayout" This reverts commit 8933efd49a0b2c10ddb30b23b57f5676634d0277. BUG: 9774755 Change-Id: Ib6481e396092da81edd2c69f619f45f61e8fa393
enu/ListMenuItemView.java
|
cc5b49f07ff856677cdfdbb0ecff1dcaeaaedc66 |
12-Jul-2013 |
Adam Powell <adamp@google.com> |
Merge "Fix MenuItemImpl#hasCollapsibleActionView for action providers"
|
b4c8ba49ac6ccce8e5c7904741f4adff05e37640 |
12-Jul-2013 |
Adam Powell <adamp@google.com> |
Fix MenuItemImpl#hasCollapsibleActionView for action providers hasCollapsibleActionView was previously checking only that mActionView was not null, even if the item had a valid ActionProvider that would later lazily create an action view when prompted. Account for this and attempt to create the action view if needed when hasCollapsibleActionView is called. Bug 8732876 Change-Id: Idf7b329770f686208882509b82a4cb13c70ef32c
enu/MenuItemImpl.java
|
ea04f3cfc6e245fb415fd352ed0048cd940a46fe |
11-Jul-2013 |
Adam Powell <adamp@google.com> |
Always show overflow buttons on action bars The menu button is not pining, it's passed on! This button is no more! It has ceased to be! It's expired and gone to meet its maker! It's a stiff! Bereft of life, it rests in peace! If you hadn't nailed it to a flagship device it'd be pushing up the daisies! THIS IS AN EX-BUTTON!! Change-Id: Id523ef8efa7d0fa7120f8430222ac892fcafefda
ctionBarPolicy.java
|
c39451267bd0c484f7d9a7ae6475533268be6640 |
10-Jul-2013 |
Adam Powell <adamp@google.com> |
Fix ListMenuItemView regression from patch 8933efd49 Passing 'true' as the third parameter of LayoutInflater#inflate does cause it to add the inflated view to the parent in a single step, but it also changes the return value to be the root of the resulting hierarchy after the add rather than the root of the inflated layout. Return to adding the view to its parent as a separate step. Bug 9754101 Change-Id: I7ca4c921993594931f5007af69d45e9ff06065df
enu/ListMenuItemView.java
|
673e64dd627d4d6effc17648b2246d3b0af679b7 |
27-Jun-2013 |
Alan Viverette <alanv@google.com> |
Merge "Optimize width measurement and cache result in MenuPopupHelper"
|
0bce6ab8cd8aadc9784dda2f3f4cc9dd91b796c7 |
27-Jun-2013 |
Alan Viverette <alanv@google.com> |
Optimize width measurement and cache result in MenuPopupHelper BUG: 9591217 Change-Id: I0cc2fad39f967e92b2c954f6417430a42dce8e43
enu/MenuPopupHelper.java
|
8933efd49a0b2c10ddb30b23b57f5676634d0277 |
27-Jun-2013 |
Alan Viverette <alanv@google.com> |
Update ListMenuItemView to use a single RelativeLayout BUG: 9591217 Change-Id: If5d301f70ac3806ab14e309affa57c625d897c7d
enu/ListMenuItemView.java
|
6196cfdb528d662741c68126062dd34d78641a5b |
30-May-2013 |
Svetoslav <svetoslavganov@google.com> |
Merge "Remove Auto-rotate screen setting if a required feature is missing."
|
dcc55855bc660fc2f45d02a1398be2e4fcf5fcb5 |
03-May-2013 |
Adam Powell <adamp@google.com> |
Fix a NPE in MenuItemImpl when setting null ActionProvider Change-Id: I00be010b2197d0f41d0e45b3814474d3ad0c3295
enu/MenuItemImpl.java
|
79578b29bf4ba1d210586b9d7bb832eddf0960b7 |
30-Apr-2013 |
Svetoslav <svetoslavganov@google.com> |
Remove Auto-rotate screen setting if a required feature is missing. It is possible that a device running Android does not support rotation, for example a Google TV box. The change adds a check to the rotation policy to take this into account. The SystemUI was not respecting the fact that the user has turned off screen rotation, i.e. locked the rotation, from the accessibility settings. In this case we should not show the affordance to toggle screen rotation in the quick settings to minimize the risk of a blind user accidentally turning screen rotation on. For a blind person screen rotation adds 2X complexity since he/she should learn two different layouts for the app. bug:8051556 Change-Id: If1b3c092476932f91b0345fb9bfbbf6ed33d0df9
otationPolicy.java
|
e0e2f4fd3ac8e70e341ae52d6376d8d67bd9edce |
06-Apr-2013 |
Adam Powell <adamp@google.com> |
Fix accessibility in action bars and add extra customization Fix a bug where the content description of the big unified Home/Up button was not getting set properly. Add the ability to change the home-as-up glyph from ActionBar. Add the ability to set a custom action description for the home-as-up button, useful if the above functionality is used. Bug 8548229 Change-Id: I0635799772c7234b68247dfc105dce7f11acda32
enu/ActionMenuItem.java
|
1951ce86c21445ac191e4d2d95233f4f5c096b56 |
05-Apr-2013 |
Jeff Brown <jeffbrown@google.com> |
Correctly manage the lifecycle of IME InputChannels. InputChannels are normally duplicated when sent to a remote process over Binder but this does not happen if the recipient is running within the system server process. This causes problems for KeyGuard because the InputMethodManagerService may accidentally dispose the channel that KeyGuard is using. Fixed the lifecycle of InputChannels that are managed by the IME framework. We now return a duplicate of the channel to the application and then take care to dispose of the duplicate when necessary. In particular, InputBindResult disposes its InputChannel automatically when returned through Binder (using PARCELABLE_WRITE_RETURN_VALUE). Bug: 8493879 Change-Id: I08ec3d13268c76f3b56706b4523508bcefa3be79
nputBindResult.java
|
c28867a1d67121ce5963de135e3ae2b1dbd9a33d |
26-Mar-2013 |
Jeff Brown <jeffbrown@google.com> |
Use input transport for communications between app and IME. The input method manager service now supplies an input channel for communication while creating an IME session on behalf of the application. This change significanly reduces the overhead of IME event dispatch by using a standard input channel to send input events rather than using binder. This results in fewer thread context switches and fewer object allocations. What's more, the IME may perform additional batching of the motion events that it receives which may help it catch up if it is getting behind while processing them. Bug: 7984576 Bug: 8473020 Change-Id: Ibe26311edd0060cdcae80194f1753482e635786f
InputMethod.aidl
InputMethodCallback.aidl
InputMethodSession.aidl
nputBindResult.java
|
52a53526265c801b70eaf6dab1acf5c3f628f8a6 |
14-Mar-2013 |
Michael Wright <michaelwr@google.com> |
Separate sessionCreated and finishedEvents callbacks Bug: 8276952 Change-Id: If7051086c060fcce5d1e958ebbddec0784c851da
InputMethod.aidl
InputMethodCallback.aidl
InputSessionCallback.aidl
|
e4bbb1cc451c7ebdad9f92968732fc4f6c21a70c |
15-Mar-2013 |
Craig Mautner <cmautner@google.com> |
Catch BadTokenException and continue. BadTokenException is a normal consequence of swapping IMEs while there is a DO_SHOW_SOFT_INPUT message in the IIMethodWrapper queue. This race condition cannot be avoided without an unacceptable lock down of InputMethodManagerService. Fixes bug 8387663. Fixes bug 8263462. Change-Id: I2c21573cf972145ab08e66604cdb9344139a3f31
InputMethod.aidl
|
ca0ac718cbc2ad3e7ad2400f5fa34068f154ee20 |
14-Mar-2013 |
Craig Mautner <cmautner@google.com> |
Remove WindowManager messages from remote queue. When a new IME is attached it is not enough to remove the WindowManager messages from the local queue, but the ones in the previous IME queue must also be removed. Fixes bug 8263462. Change-Id: I9e916c6052a83dc7691bcba0b6ab8328b9b7cc36
InputMethod.aidl
|
e8cc96b8f8b26d0dcf3a2abff9104ed0bb6f6bbd |
12-Mar-2013 |
Michael Wright <michaelwr@google.com> |
Remove unused interface IInputConnectionCallback Bug: 8276952 Change-Id: I3755df557388bee55f0cc4780adc300672cbe9a1
InputConnectionCallback.aidl
|
4207fda51babb3892652fcdc901295c81876a38f |
01-Mar-2013 |
Justin Koh <justinkoh@google.com> |
Add policy check to always show overflow menu button on TV devices. Add policy check to always show overflow menu button on TV devices. Bug: 8236681 Change-Id: I4f92eef7a6d530feb698f83b0720b36115f7a04a
ctionBarPolicy.java
|
c4aad01cbbb69c916ef323693e1fd0560b0eccba |
23-Feb-2013 |
Dianne Hackborn <hackbod@google.com> |
Formalize overscan metrics. The window manager now maintains and reports a new formal "overscan insets" for each window, much like the existing content and visible insets. This is used to correctly position the various UI elements in the various combination of layout options. In particular, this allows us to have an activity that is using fitSystemWindows to have the content of its UI extend out to the visible content part of the screen while still positioning its fixed UI elements inside the standard content rect (and the entire window extending all the way into the overscan area to fill the screen as desired). Okay, maybe that is not written so clearly. Well, it made my head hurt too, so suffer! The key thing is that windows now need to know about three rectangles: the overall rectangle of the window, the rectangle inside of the overscan area, and the rectangle inside of the content area. The FLAG_LAYOUT_IN_OVERSCAN option controls whether the second rectangle is pushed out to fill the entire overscan area. Also did some improvements to debug dumping in the window manager. Change-Id: Ib2368c4aff5709d00662c799507c37b6826929fd
aseIWindow.java
|
eb573418a7a727fb44720514da8ebc1dc37388f7 |
19-Apr-2011 |
Mattias Falk <mattias.falk@sonyericsson.com> |
Re-read shortcut labels if the language has changed The shortcut label isn't updated to the current language if the phone's language has changed. The problem was that the shortcut label is stored in a static variable which is set once and kept throughout the life time of the process. Change-Id: I89c5875fbf28fb82e073166c472ca205d28674fb
enu/MenuItemImpl.java
|
14c4669916ae993b248f00c55daf0f17069903d9 |
10-Oct-2012 |
Svetoslav Ganov <svetoslavganov@google.com> |
Cannot force a shown item from an ActionMode into the overflow menu. 1. An app showing an action mode with a visible item that decides to move this item to the overflow menu cannot do so since the action menu is not updated properly. Specifically, ActionMenuPresenter does not clear the "is action button" property of a menu item neither requires nor requests an action button, i.e. the item's "show as action" property changed to be never shown on the action bar. bug:7319766 Change-Id: I5cfda6269466fafca1f039a3bab6397392ae9f17
enu/ActionMenuPresenter.java
|
5e08af03a3dffff8b8fc098790e5133589601d8f |
22-Sep-2012 |
Christopher Tate <ctate@google.com> |
Respect per-user rotation lock et alia Various per-user settings such as rotation lock are relevant to the singleton PhoneWindowManager object. We now listen for user-switch broadcasts and reconfigure the active state based on the newly- active user's settings. The RotationPolicy toolset has also been updated to do the right thing, as has the Quick Settings UI. Bug 7213638 Change-Id: Iee2109e48df550b4c979d3f9c91b5d2b71a6a08e
otationPolicy.java
|
e56ffdc7b31b0937628609cc3bbaa15879023569 |
23-Sep-2012 |
Fabrice Di Meglio <fdimeglio@google.com> |
Fix bug #6427629 Clean up layout direction APIs - rename getResolvedLayoutDirection() to getLayoutDirection() Change-Id: I3afe56c0db0751952f5056c23893cb7455531d29
enu/IconMenuItemView.java
|
b250e94fdced2bd753eeb75f378abfab8b17cc2c |
18-Sep-2012 |
Fabrice Di Meglio <fdimeglio@google.com> |
Merge "Fix bug #7112174 ActionMenuView should be aware of layout direction" into jb-mr1-dev
|
b38070caa5143ab9fd1883e0c7c879533a480bc7 |
24-Aug-2012 |
Victoria Lease <violets@google.com> |
IME support for trackball and generic motion events Trackball and generic motion events now pass through the IME in case it would like to handle them before passing them on to the view hierarchy. While I was at it, I also... ...fixed the documentation on InputMethodService.onKeyUp() ...added documentation to InputMethodService.onTrackballEvent() ...added trackball and generic motion events to the "input" command ...fixed input consistency verification involving ACTION_OUTSIDE Bug: 7050005 Change-Id: I40ab68df4a9542af6df25de6ec2ec500e4c02902
InputMethodSession.aidl
|
0762cec04fa5ce65a2adc6d70ea1396041b1a88d |
06-Sep-2012 |
Fabrice Di Meglio <fdimeglio@google.com> |
Fix bug #7112174 ActionMenuView should be aware of layout direction - do correct layout of action items depending of layout direction Change-Id: Iff0181ffa2cb69884920edd5c37eb1a8a8196816
enu/ActionMenuView.java
|
98365d7663cbd82979a5700faf0050220b01084d |
20-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Refactor for multi-display support. Split WindowManagerImpl into two parts, the WindowManager interface implementation remains where it is but the global communications with the window manager are now handled by the WindowManagerGlobal class. This change greatly simplifies the challenge of having separate WindowManager instances for each Context. Removed WindowManagerImpl.getDefault(). This represents the bulk of this change. Most of the usages of this method were either to perform global functions (now handled by WindowManagerGlobal) or to obtain the default display (now handled by DisplayManager). Explicitly associate each new window with a display and make the Display object available to the View hierarchy. Add stubs for some new display manager API features. Start to split apart the concepts of display id and layer stack. since they operate at different layers of abstraction. While it's true that each logical display uniquely corresponds to a surface flinger layer stack, it is not necessarily the case that they must use the same ids. Added Display.getLayerStack() and started using it in places where it was relatively easy to do. Change-Id: I29ed909114dec86807c4d3a5059c3fa0358bea61
otationPolicy.java
|
9951b7c4f094d39db70626ed665f848971220c48 |
08-Aug-2012 |
Jean-Baptiste Queru <jbq@google.com> |
am e5c46fae: am 6d0dd51e: Merge "Return early when checking divider before child zero." * commit 'e5c46faefb9deda885cff308ec9b1926636ca8bc': Return early when checking divider before child zero.
|
758143ecfedbe08cc6c4fed0ad8ad7a854194ca4 |
07-Aug-2012 |
Svetoslav Ganov <svetoslavganov@google.com> |
Window position not reported if the window is not moved. 1.If a window is shown but never moved the window window is never notified for its current location. Therefore, accessibility nodes do not contain correct bounds in screen coordinates. bug:6926295 Change-Id: I7df18b095d33ecafffced75aba9e4f4693b0c393
aseIWindow.java
|
d5c81db1e78e98f3e0a1a5cf206865c3056294c4 |
02-Aug-2012 |
Adam Powell <adamp@google.com> |
Fix some ActionBar menu issues around config changes Bug 6904212 Update allow-text and max item height properties for action bar menu item views properly. Fix an ActionMenuItemView measurement bug that could cause items to measure too small. Change-Id: Ibac8491f7670969b0ae4584fff5e44ebd1435abd
enu/ActionMenuItemView.java
enu/ActionMenuPresenter.java
enu/ActionMenuView.java
|
c1eea136eaae62091b44d7b06a3d61ac694e4fd7 |
31-Jul-2012 |
Adam Powell <adamp@google.com> |
Fix bug 6906134 Change-Id: I47dfa1e503e502fe348a350dad960fbb112435e7
enu/ActionMenuItemView.java
|
c0047d4e111b8cfbffdbebb55f846c7ae935e53e |
30-Jul-2012 |
Adam Powell <adamp@google.com> |
Enforce a maximum size for action button icons. Change-Id: Id9b5c1573cd40012229921fa8497cbe5ce340b1e
enu/ActionMenuItemView.java
|
825992f503439bc87d9d7e698a487f17b5acc243 |
29-Jul-2012 |
Jake Wharton <jakewharton@gmail.com> |
Return early when checking divider before child zero. Previously the `getChildAt` method would be called with an index of -1 which would lead to an exception being thrown and caught. This is unnecessary since we know there will never be a divider before the first child. It also avoids additional object creation since this method can be invoked quite frequently. Change-Id: Iab44520d5d52f96a829a009cdd1201696edbf9a4
enu/ActionMenuView.java
|
aac0d4ed026d1cfbcf3fa81c6e4eb96f4347ca17 |
20-Jul-2012 |
Fabrice Di Meglio <fdimeglio@google.com> |
Replace left/right with start/end for Gravity / LayoutParams / Padding - see bug #5429822 UI should be mirrored for RTL locales (Arabic, Hebrew, farsi) Change-Id: Id9af5375fb9b0edeae5232c77e52ecd497bd2e67
enu/ActionMenuItemView.java
enu/IconMenuItemView.java
|
8c1b02e7592dd02f30750c56bf88c65f8acbd3c9 |
17-Jul-2012 |
Adam Powell <adamp@google.com> |
Fix MediaRouteActionProvider button sizing Bug 6768999 Use proper layout height for MediaRouteButtons generated from MediaRouteActionProvider. Update ActionMenuView's LayoutParams handling to correctly propagate width/height values if the supplied LayoutParams is of a different type. Change-Id: I1e1b250d873869ca27f59ffb06ccf2299d57b40d
enu/ActionMenuView.java
|
5702d4dfb5b81491f873a3617f8d8fc8dc5279e6 |
30-Jun-2012 |
Craig Mautner <cmautner@google.com> |
Notify client side of window movement. Add a one way method to notify Views that the window has moved on the screen. Fixes issues arising from the IME popping up and translating the window that uses it. Accessibility was left unaware of these movements and was drawing the box around the wrong widgets. Similarly PopupWindow used getLocationOnScreen to determine how much screen real estate was above and below the anchor point to determine where to put an anchored window. Fixes bug 6623031. Change-Id: I4731a94d5424c1ec77bf1729fba8fc9ea34cae46
aseIWindow.java
|
8f695c525f5baa623a8b951bd3a1fd2b5efd1ceb |
18-Jun-2012 |
Adam Powell <adamp@google.com> |
am 706a8699: Merge "Make MediaRouter UI more robust around route count changes" into jb-dev * commit '706a8699008ce416a7fbd9a4215726fdb00ee803': Make MediaRouter UI more robust around route count changes
|
bb20575f85ada8ccdacefc53f0da7e00fdf12a16 |
18-Jun-2012 |
Adam Powell <adamp@google.com> |
am 130b4572: ActionProvider API update * commit '130b4572d1f3df702e5b296a655d15a41f6d4c66': ActionProvider API update
|
772ddc0cf28625964435edc5e86048e353c425fa |
18-Jun-2012 |
Adam Powell <adamp@google.com> |
am fd4df469: Merge "Remove workaround for bug that was fixed a while ago." into jb-dev * commit 'fd4df46917c79067416985ac53a3da6b27e8c333': Remove workaround for bug that was fixed a while ago.
|
39d5c6172503620ac3761148adac5fd7fa20d02d |
16-Jun-2012 |
Adam Powell <adamp@google.com> |
Make MediaRouter UI more robust around route count changes Improve the API around ActionProvider visibility overriding. Allow the application to notify whatever is hosting the ActionProvider that visibility has changed in a way that is friendly to alternate support library-style reimplementations of MenuItem. Allow MediaRouter.Callback implementations to add or remove themselves or other Callbacks during dispatch of callback events. Make MediaRouteActionProvider track the visibility of corresponding menu items more accurately. Change-Id: Ic7ddb6a87c3637904750d2661e4a9fa323b09ea0
enu/MenuItemImpl.java
|
130b4572d1f3df702e5b296a655d15a41f6d4c66 |
16-Jun-2012 |
Adam Powell <adamp@google.com> |
ActionProvider API update * Add ActionProvider#overridesItemVisibility and isVisible. These methods allow an ActionProvider to override the visibility of a MenuItem that it is bound to. If a MenuItem has been explicitly hidden by the application, it will not be visible. * Change MediaRouteActionProvider to not require a MediaRouter callback, to avoid extra lifecycle management headaches. Change-Id: I606fa98b3a6a3e60a953dd024274f9bf9c67acdd
enu/MenuItemImpl.java
|
307c5cfcdd275e56c6a11056ac4f6d6eb2758ee0 |
16-Jun-2012 |
Adam Powell <adamp@google.com> |
Remove workaround for bug that was fixed a while ago. Change-Id: I368dd8fea6b33af6908b6fe3b7691104166a707a
mageButtonNoParentPress.java
|
0f03d771b29ff0fc6919a514c56128de9a5ecd5e |
14-Jun-2012 |
Adam Powell <adamp@google.com> |
am f9b7f9f5: Merge "Support route grouping in the MediaRouter dialog UI." into jb-dev * commit 'f9b7f9f5080100043df3c8868bca4df84becf5a1': Support route grouping in the MediaRouter dialog UI.
|
d6d0bddee363e0c7fe61f63bd9d9864a71d887d6 |
14-Jun-2012 |
Adam Powell <adamp@google.com> |
Support route grouping in the MediaRouter dialog UI. Change-Id: Idcae12cedfb7ca13950e7fa45441fba2029a9f68
heckableLinearLayout.java
mageButtonNoParentPress.java
|
72329952168fd86b911109602882b92494e9ccc5 |
07-Jun-2012 |
Adam Powell <adamp@google.com> |
am 4c38fe36: Merge "Protect against bogus input for ListViews" into jb-dev * commit '4c38fe369fee76b8d4fca5a7b0b8d81a96f0219f': Protect against bogus input for ListViews
|
28048d011cb0887cd641977ca37e5f2fde04d191 |
07-Jun-2012 |
Adam Powell <adamp@google.com> |
Protect against bogus input for ListViews Guard against cases where ListView might receive touch events while detached. Update ListMenuPresenter to dispatch a data set change when the backing menu is changed. Bug 6543282 Change-Id: If2fb9b6aa3cf4a1b7070a7cd0de0edf0fc2f4cca
enu/ListMenuPresenter.java
|
1178569b261a094fe6fb830e91f002e4fcd9fc1a |
06-Jun-2012 |
Adam Powell <adamp@google.com> |
am f6452d0c: Merge "More fun with MediaRouter" into jb-dev * commit 'f6452d0cac64b72005af330411b5a895f0038312': More fun with MediaRouter
|
f6452d0cac64b72005af330411b5a895f0038312 |
06-Jun-2012 |
Adam Powell <adamp@google.com> |
Merge "More fun with MediaRouter" into jb-dev
|
690ffb4e1f735148a15f2036d9a3c1962fba188c |
05-Jun-2012 |
Adam Powell <adamp@google.com> |
More fun with MediaRouter Add action provider, button, and styles. Extend ActionProvider to allow for getting references to MenuItem instances. Implement toggle mode for the MediaRouteButton/ActionProvider. Dialog selection yet to come. Change-Id: Ibe3188570f503bbf8dd00cf154663435656a7171
enu/MenuItemImpl.java
|
eef4bc08137f2324e2974c282992ff546df99e54 |
06-Jun-2012 |
Jeff Brown <jeffbrown@google.com> |
am 615fd3df: Merge "Implement new rotation policy." into jb-dev * commit '615fd3dff2e369d8b786abcfe41b6da988e41001': Implement new rotation policy.
|
207673cdbb536b9bdd9ff7f9ce953c5485d11f5a |
06-Jun-2012 |
Jeff Brown <jeffbrown@google.com> |
Implement new rotation policy. Rotation lock does not override NOSENSOR mode anymore. Centralize the rotation policy settings into a new class shared by the System UI and Settings applications. Add a new setting to specify whether rotation-lock is being hidden because the "auto-rotate screen" option has been toggled in the Accessibility settings panel. Bug: 6523269 Change-Id: I15173280d25bc5d101e89a9c65913aefc53fc33a
otationPolicy.java
|
8e49098f76042c63b4fa8ede9ef9bdf75b77f509 |
15-May-2012 |
Adam Powell <adamp@google.com> |
am e48d12b7: Merge "Fix ActionProviders that have submenus" into jb-dev * commit 'e48d12b78011ff5ddbb6838a038ea5384190ec92': Fix ActionProviders that have submenus
|
2da87ec32e72c2c25998e2444155c00074cfbd40 |
15-May-2012 |
Dianne Hackborn <hackbod@google.com> |
am 2a7a6ca0: Merge "Implement new window cropping." into jb-dev * commit '2a7a6ca00ab176105b5bbfa6b17bb0dcd058d517': Implement new window cropping.
|
f77f480800a84ceb377e47cc200baf2bae4f5d9a |
15-May-2012 |
Adam Powell <adamp@google.com> |
Fix ActionProviders that have submenus Automatically create a submenu for items with ActionProviders that provide a submenu when the item was not initially configured to have one. Bug 6493376 Change-Id: I27218e2ab205e87534f235eb04042b185d99d143
enu/MenuBuilder.java
|
85afd1b6f871d471fdff1980134676a5f1690525 |
13-May-2012 |
Dianne Hackborn <hackbod@google.com> |
Implement new window cropping. The window manager now performs the crop internally, evaluating it every animation from, to be able to update it along with the surface position. Change-Id: I960a2161b9defb6fba4840fa35aee4e411c39b32
aseIWindow.java
|
217477e01311b4b77c3ad536cb3cc35e5ce08373 |
09-May-2012 |
Adam Powell <adamp@google.com> |
am ea3f8cc7: Merge "Forgive me monkeys, for I have sinned." into jb-dev * commit 'ea3f8cc71e0bb89840e727e22ba332bae228ac36': Forgive me monkeys, for I have sinned.
|
76889f3482d6391b17f0961f7356c1e8169c8813 |
09-May-2012 |
Adam Powell <adamp@google.com> |
Forgive me monkeys, for I have sinned. It has been several hours since my last commit. Fix an obscure bug that could cause call ordering problems while updating ListAdapter-based MenuPresenters. This would trigger an inconsistent return value from the adapter's getCount method that didn't take the expanded menu item into account, resulting in the infamous ListView "you didn't call notifyDataSetChanged" exception. Bug 6412318 Change-Id: I6262846d9c2acdb87ff99116ad78ca4a388efa6d
enu/ListMenuPresenter.java
enu/MenuPopupHelper.java
|
4ffd4b884b6e9b0a23fd732637db48fee4e5111d |
07-May-2012 |
Adam Powell <adamp@google.com> |
am 97621027: Merge "Limit item heights in split action bars" into jb-dev * commit '9762102794b90d40d69a9a31aa8cd1538f8151f8': Limit item heights in split action bars
|
367ee326058bbee6fc179b8b1eb2174fe7ba8f45 |
07-May-2012 |
Adam Powell <adamp@google.com> |
Limit item heights in split action bars Bug 6449422 Overzealous action views should not be able to cause action bars to take up a huge amount of space. Fixed text alignment on action buttons Change-Id: Ic28d6dacdb6933c63b323f5ed6a6cab5d3726938
enu/ActionMenuItemView.java
enu/ActionMenuView.java
|
e43a4e90173cdb1a8e22a8e8e05356c12df44a0e |
03-May-2012 |
Adam Powell <adamp@google.com> |
am f27ba974: Merge "JB API cleanup; ActionMode and View docs" into jb-dev * commit 'f27ba974d5af68baf071282de65a22ca6e59244c': JB API cleanup; ActionMode and View docs
|
785c447b2bc625209706fd128ce61781c3a4183b |
03-May-2012 |
Adam Powell <adamp@google.com> |
JB API cleanup; ActionMode and View docs Bugs 6435315, 6434937 Add ActionMode#getTitleOptionalHint() and extend documentation for View#hasTransientState/setHasTransientState Change-Id: I2049fb79864c33b34e3bbd13df32861e308c99ad
tandaloneActionMode.java
|
2d28f53514d55bfc3fb2eb2ebdd6c85ef3d8f9d9 |
01-May-2012 |
Jean-Baptiste Queru <jbq@google.com> |
am 31ab51a3: am 2066f7d9: Merge "Prevent empty overflow popup when there are no overflow items." * commit '31ab51a369ab57c82d0271115ba31b3b20ce6e6b': Prevent empty overflow popup when there are no overflow items.
|
5c58de3a523a384c47b0b1e0f5dd9728a74cd9f7 |
29-Apr-2012 |
Dianne Hackborn <hackbod@google.com> |
Add system insets to windows. This will be used to determine which parts of a window a completely hidden by system UI elements (status bar, nav bar, system bar) so that they can be clipped out from rendering. Change-Id: I2c6c6ac67dbdfeed82d2c089ef806fb483165bd9
aseIWindow.java
|
12d3a94397c33fdb773a1eaaaa13cab80bf0c571 |
27-Apr-2012 |
Dianne Hackborn <hackbod@google.com> |
When a window is first shown only draw once while animating. On some hardware allocating a new graphics buffer is quite expensive, which blocks updates to the UI. This can cause glitches when performing window animations. To reduce these glitches, the view hierarchy will now only allow itself to be drawn once if its window is being shown while the window manager is animating, not resuming draws until it is told that the animation is done. Change-Id: Ie15192f6fddbd0931b022a72c76ddd55ca266d84
aseIWindow.java
|
b8139af3dcae80c0030afd0354dc424a7c72c3d9 |
19-Apr-2012 |
Adam Powell <adamp@google.com> |
Adjust action bar tab policies Action bar tabs now stack in portrait mode on all screen sizes rather than display embedded. This only affects apps with a targetSdkVersion of JB or greater, as older apps may not be prepared for the different measurement of the bar or have an appropriate stacked bar background drawable. Stacked action bar tabs now have a width limit. This prevents super-wide tabs that can span the whole screen. The cluster of tabs is centered if it does not span the full width. Add ActionBarPolicy to give a single point to query for various action bar measurements and behaviors that vary with configuration. Change-Id: I01162ca009c14f6f0e712fc906b9db6382c738cd
ctionBarPolicy.java
enu/ActionMenuPresenter.java
|
a7dec6d9734bdc3a9e39ffd357002e25c6fdc99b |
10-Apr-2012 |
Adam Powell <adamp@google.com> |
Restrictions for action buttons with text Restrict action buttons with text to 2 lines max. Action buttons with text will always consume at least 2 cells in split mode because they look silly in 1. Note that this affects text provided by menu items, not TextViews embedded within app-provided action views. Fixes bug 6236467 Change-Id: I7bcbf80f448b13a895ddc3bc6a7a555c0f0bac7c
enu/ActionMenuView.java
|
a647640f85f415bd8fb8cb925e7687658fe9ae37 |
29-Mar-2012 |
Jake Wharton <jakewharton@gmail.com> |
Prevent empty overflow popup when there are no overflow items. On a device with a hardware menu key, an empty overflow window can be displayed if there are no items in said overflow menu. This leads to the next user touch being swallowed in the action of dismissing the invisible window. Change-Id: I9191e4b2e1ed4888e4bc7261e8b3f095a272a9b5
enu/ActionMenuPresenter.java
|
c4852a37186260bf688dc94a77a4ebd2a8290a02 |
19-Mar-2012 |
Adam Powell <adamp@google.com> |
Fix a bug where MenuItems would not return consistent results for item icons initialized from a drawable resource id. Change-Id: Ieb5245b8fe0e11b2eb788143859da1c0b3657b9f
enu/MenuItemImpl.java
|
bb9908b828a8cfd5965553be66faa6af89973697 |
08-Mar-2012 |
Romain Guy <romainguy@google.com> |
Dispatch screen state change events to Views Bug #6120957 Using this new callback, views can interrupt and resume their animations or other periodic tasks based on the current state of the display. Change-Id: I398f4abd421e9c5f207107bf1009a7b92cf45daa
aseIWindow.java
|
250069bf6bf3d7e2ef85c49e0cd100e80c3c8b7d |
08-Mar-2012 |
Romain Guy <romainguy@google.com> |
Merge "Ignore draw requests when the display is off"
|
f203e0a44ef7578c080d63424820fb5a94a4e92f |
07-Mar-2012 |
Adam Powell <adamp@google.com> |
Fix some action bar menu layout bugs around config changes Bug 5712010 Fix cases where the transition between split/standard action bar menu presentation wasn't happening properly for windows in activities that handle their own config/orientation changes. Change-Id: I7168555e09c9ed448afb8619fd6f0e1466695365
enu/ActionMenuPresenter.java
|
75d022af1f24cf2d8a7551183ea5bbe943d25d21 |
06-Mar-2012 |
Adam Powell <adamp@google.com> |
Action buttons are now 1 view instead of 3. Change-Id: I42afe0e4bd20c3dbe86e2c43a6bc1d776361dca9
enu/ActionMenuItemView.java
enu/ActionMenuView.java
|
7e4e561bc717a6eea4e0d06ec4173ad27420425f |
05-Mar-2012 |
Romain Guy <romainguy@google.com> |
Ignore draw requests when the display is off When WindowManagerService's events are enabled/disabled, the state of the display is dispatched to the known windows. This allows ViewRootImpl to ignore draw requests until the screen is turned back on. This can potentially lead to significant battery savings. For instance, a launcher widget showing a repeating animation will cause the CPU and the GPU to wake up regularly without this change. (Change submitted by Intel and merged manually) Change-Id: I7f93b0e60c3e6de1705f619e80860c36b1cdb978
aseIWindow.java
|
b98a81f86ab87f1d718f329f03256111fdabd8d1 |
24-Feb-2012 |
Adam Powell <adamp@google.com> |
Add support for optional titles in action modes Optional titles will only be displayed in the CAB if they entirely fit instead of ellipsizing. Fixes bug 5821883 Change-Id: I0cfd6d4fd34a4fa9f520499d577706da30606811
tandaloneActionMode.java
|
0aec3ea6defdee1ee4a9c0d6c4a3c13df3e7b812 |
25-Feb-2012 |
Dianne Hackborn <hackbod@google.com> |
am 911b505f: am dc5fa185: am 133dc2d7: Merge "Fix issue #6048808: sometimes auto-correct is inactive" into ics-mr1 * commit '911b505f11c719906985f169a4f45930bdec8695': Fix issue #6048808: sometimes auto-correct is inactive
|
7663d80f6b6fd6ca7a736c3802013a09c0abdeb9 |
24-Feb-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #6048808: sometimes auto-correct is inactive My previous change to speed up the time the IME is dismissed was fundamentally flawed. That change basically switched the order the application called the input method manager service from doing startInput() and then windowGainedFocus(), to first windowGainedFocus() and then startInput(). The problem is that the service relies on startInput() being done first, since this is the mechanism to set up the new input focus, and windowGainedFocus() is just updating the IME visibility state after that is done. However, by doing the startInput() first, that means in the case where we are going to hide the IME we must first wait for the IME to re-initialize editing on whatever input has focus in the new window. To address this, the change here tries to find a half-way point between the two. We now do startInput() after windowGainedFocus() only when this will result in the window being hidden. It is not as easy as that, though, because these are calls on to the system service from the application. So being able to do that meant a fair amount of re-arranging of this part of the protocol with the service. Now windowGainedFocus() is called with all of the information also needed for startInput(), and takes care of performing both operations. The client-side code is correspondingly rearranged so that the guts of it where startInput() is called can instead call the windowGainedFocus() entry if appropriate. So... in theory this is safer than the previous change, since it should not be impacting the behavior as much. In practice, however, we are touching and re-arranging a lot more code, and "should" is not a promise. Change-Id: Icb58bef75ef4bf9979f3e2ba88cea20db2e2c3fb
InputMethodManager.aidl
|
688bd47fccf1a1373e6287bc49b5b33fad12b7f3 |
09-Feb-2012 |
satok <satok@google.com> |
Add an api to switch to the next IME and subtype Bug: 5975302 Change-Id: I48aa4220159c65f456d61a324efcdf0a1ceec91c
InputMethodManager.aidl
|
0c95dd3f4f02564fab9b86a221bbcbb4aafc2981 |
24-Jan-2012 |
Fabrice Di Meglio <fdimeglio@google.com> |
Fix bug # 5863709 API request: Change param names of deleteSurroundingText to "before" and "after" Change-Id: I727fad9a59cda915899674569bfabd29b9f5da60
nputConnectionWrapper.java
|
4952dfd16a0f839559ffa78f5016394caf85294f |
01-Dec-2011 |
Jeff Brown <jeffbrown@google.com> |
Ensure input events are processed in-order in the application. As it turns out, it used to be possible for there to be multiple input events simultaneously in flight in an application. Although it worked, it made it hard to reason about what was going on. The problem was somewhat exacerbated by the introduction of a queue of "InputEventMessage" objects as part of an earlier latency optimization. This change restores order from chaos and greatly simplifies the invariants related to input event dispatch within the application. Change-Id: I6de5fe61c1fe2ac3dd33edf770d949044df8a019
aseInputHandler.java
|
24340afbab8ad4c191784fda8023407205bc0a75 |
01-Nov-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5534667 - Action bar icons need more space on tablet Set a wider minimum width for the action button style on -sw600dp. Fix an annoying bug where recycled ActionMenuItemViews would retain a lingering pressed state, causing an unrelated button to glow briefly. The home/up affordance should not be focusable when it is disabled. Change-Id: Ia68f3d09f5d977f50e4e33c354d8133367187973
enu/ActionMenuItemView.java
enu/BaseMenuPresenter.java
|
678ed0c5a32bac1ea18a5ac99b0b814421ea79b4 |
28-Oct-2011 |
Adam Powell <adamp@google.com> |
Bug 5275928 - Don't try to open an overflow menu under invalid circumstances. Change-Id: I62ea1e982f0d3c92cb504efbae95bce238b12f72
enu/ActionMenuPresenter.java
|
8eeb4d1a70faa4d5834de44bfa515742566c6ba3 |
13-Oct-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5394020 - Menus are pretty sluggish to bring up Clear out some obsolete "optimizations" leftover from the old menu system internals. Change-Id: I325530c9fae434de2d95200e648c63149334f444
enu/ExpandedMenuView.java
enu/ListMenuItemView.java
|
f2894659e8df625783afcd3fa17462ab23d29145 |
12-Oct-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5449931 - Wrong theme for icon menus IconMenuPresenter should always use its own theme for the system inflater. Change-Id: Iacadce37d62a60cdf6220d82f1178098ed92d51e
enu/IconMenuPresenter.java
|
538e565c06e915b91e7e3a901f872ccdd9bccdd3 |
11-Oct-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5396097 - menu theme consistency Fix a bug where action bar menus were using the wrong context to inflate stock views. This was causing them to use the action bar's themed widget context instead of the current theme's specific action bar items. Note that action views in the menu will still be inflated using the themed widget context. This can produce some weird side effects if the action views use theme attributes relating to these action bar item attributes. Change-Id: Ied3614d1fedb10a0f5366bbe7b90cd5f2f1ff969
enu/ActionMenuPresenter.java
enu/BaseMenuPresenter.java
enu/IconMenuPresenter.java
|
9a230e01a1237749a8a19a5de8d46531b0c8ca6a |
06-Oct-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5371530: SYSTEMUI_FLAG_HIDE_NAVIGATION reasserts itself immediately This cleans up how ui flags are managed between the client and window manager. It still reports the global UI mode state to the callback, but we now only clear certain flags when the system goes out of a state (currently this just means the hide nav bar mode), and don't corrupt other flags in the application when the global state changes. Also introduces a sequence number between the app and window manager, to avoid using bad old data coming from the app during these transitions. Change-Id: I40bbd12d9b7b69fc0ff1c7dc0cb58a933d4dfb23
aseIWindow.java
|
f8419a0299680ed580975b0fcb758990b4367db8 |
03-Oct-2011 |
Adam Powell <adamp@google.com> |
Fix bugs around overlay action modes. Multiple focusable windows cause undesired behavior around selection modes. TextView isn't sure how to behave when it loses window focus with regard to selection handles and action modes need to be focusable for WebView find on page since it uses an EditText as a custom view. For now: * Use a layered window decor for overlay action mode when there is no action bar requested. This eliminates an extra window and avoids the issue described for full-screen UIs. * Disable WebView's find-on-page mode when the action mode's UI will not be focusable. This only affects WebViews in floating windows. Also remove the "Text Selection" title for WebView's selection mode at UX's request, as it is inconsistent with TextView's selection mode and the string does not fit on phones in portrait even on wide devices. This now uses the same mechanism used in TextView to decide whether to use title text. Change-Id: I80caeecea9b47728cf26bb0a388153ca0bdeafe1
tandaloneActionMode.java
|
275702c2f47ed87ab642462530092d9777f32ecd |
24-Sep-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5355889 - Search action showing up in the menu dropdown in spite of search actionview being expanded Make sure that menu items with an expanded action view don't show up in list menus presenting the rest of the menu. Change-Id: I8c7b4e184a9d3ea2457543d0b8b36bc8e7068052
enu/ActionMenuPresenter.java
enu/ListMenuPresenter.java
enu/MenuBuilder.java
enu/MenuPopupHelper.java
|
823f074a73cfc23c40a7b576c71daa096ee9ed6a |
22-Sep-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5300621 - Share menu disappears in gallery ActionProviders (or action views) unfortunately had no way to report that they had opened a sub-UI that would affect menu visibility listeners used to hide action bars when not in use. This caused the Gallery UI to hide its action bar when the share popup was open. Add hidden API (to be made public later) to ActionProvider that can be used to inform the menu system that a sub UI has opened or closed. Account for this in menu visibility callbacks. Fix ShareActionProvider to use this when its popup windows open and close. Fix a regression where submenus were not properly reporting visibility changes. Change-Id: Ia6f45fb463ad106105c40d01f141c2e5c8b96f78
enu/ActionMenuPresenter.java
enu/IconMenuPresenter.java
|
86ed436b83d6b71ff00d1c3db910f2952018489e |
15-Sep-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5237737 - ActionBar should fire an accessibility event when action mode is turned on/off Fire AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED when action modes come and go to give an indication of UI change on the level of a menu or dialog opening/closing. Change-Id: Id36c6153b0722b4b6927c8d36503e8ac57c2d2b2
tandaloneActionMode.java
|
bc835039994f8fe70e37041a29d21335a2e22479 |
14-Sep-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5307916 - legacy menu theming Let list_menu_item_layout and legacy dialog themes tie into new list item theming internals. Change-Id: Ic9253a2217148df72bf22b725b32512673c3bb80
enu/ListMenuPresenter.java
|
1d07e16c9d9ecaaaf8994ad5691c4063ab31f265 |
08-Sep-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5174277 - Trouble with Menus Make sure that options menu panel presenters associated with a PhoneWindow get re-wired properly when a new menu is generated. Change-Id: Ic06130019aec8b8edc372054c348f147d164fc5f
enu/ListMenuPresenter.java
|
ee5e77cafec2eae70890abdcc1646ed39b06eddd |
02-Sep-2011 |
satok <satok@google.com> |
Make setAdditionalInputMethodSubtypes async Bug: 5120261 Change-Id: Ic7869cfaa5361531e08d58d7dfa5ba0feab0613e
InputMethodManager.aidl
|
7bc3ca0dc52be52ecad1c0de8c62a6a4bf8141ca |
27-Aug-2011 |
Adam Powell <adamp@google.com> |
Accessibility fixes for action bars Fix bug 5220543 - fix accessibility events for action buttons Fix bug 5224260 - fix accessibility events for home/up Change-Id: I7d55b4819862e1eda0809da92c52ec2d97f36af0
enu/ActionMenuItemView.java
enu/ActionMenuPresenter.java
enu/ActionMenuView.java
|
be3c329ebec083e5ff933bab6b6c501519ad2bff |
24-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5191728 - Specialized formatting in the split action bar Visually center a single text menu item in the split action bar even when an overflow button is present. Fix a bug in allocating space in the split action bar. Change-Id: I54eff86bf35197030c9c1656ebd71297e3c8b62b
enu/ActionMenuView.java
|
e20c279d9a6719a7c0d8c6606c7ba1bd207db8d3 |
23-Aug-2011 |
Adam Powell <adamp@google.com> |
Merge "Fix bug 5198868 - Showing previous hidden options menu doesn't work"
|
04dc06f52a68299c0ad70fa0a9f204d99983ba2b |
23-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5198868 - Showing previous hidden options menu doesn't work Fix bad assumption in flagging action items. Change-Id: Ic67b56195bc308e73d1564cbf1b77e41eaa4ecab
enu/MenuBuilder.java
|
70e9f4bd2c044858f3c1c040ffce973351a2383a |
23-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5189070 - Don't try to show overflow popups for nonexistant menus Change-Id: I9db43211cdece81063fc1d3c3324f1e166f27b0c
enu/ActionMenuPresenter.java
|
bfcdfaf919cdb67897a6e24afc8f14b2c810596a |
19-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5174755 - Adjust action bar overflow limits for ifRoom items Fix a bug where action menus were not updating after configuration changes. Change-Id: Iaeed7d924a7b8b40849fd8e1826ed1c8f4079c94
enu/ActionMenuPresenter.java
|
23f4cc0353615107cc9c19fda9cf96ddd43266e2 |
18-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5099037 - No delete option when multiple videos are selected Fix some bugs related to how action item slots are allocated in menus. Fix some padding/margins in ActivityChooserView. Change-Id: I12096b0165daca902c5bc8e24c1e8d54a35e9557
enu/ActionMenuPresenter.java
enu/MenuBuilder.java
enu/MenuItemImpl.java
|
f35d049b9953fbd1cd24887bac57b5e148c97846 |
17-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5168889 - action bar not respecting return codes of onCreate/Prepare menu Change-Id: If28630cb21e74bde7a2474ce060078ea30170b9d
enu/ActionMenuPresenter.java
enu/BaseMenuPresenter.java
|
3bb421d5b85a8a99c408d16e4f80163a53bc0505 |
17-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5165771 - Gmail: crash on launch from notifier Change-Id: Iec9c189bd3fa5e62bc8eb520ca2a1dd4db106036
enu/ActionMenuView.java
|
7b5e9e6c1c7098b6d7b2c6f9ab0c316f0f66109e |
16-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5167078 - Show a 'cheat sheet' popup for icon-only action buttons Action buttons: now less confusing! Change-Id: I5c96effa64a2cdde22b71523b99ab489869fc245
enu/ActionMenuItemView.java
|
14b7e2c1688914ba8b6854738981337d7c0653be |
12-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5078498 - Icons jump around on split action bar Revise measurement and layout code for the lower menu on a split action bar. Fix some metrics in the action mode close button and in button bars. Change-Id: I76215e28ae3b0199162dedd32794b25c9e38a346
enu/ActionMenuPresenter.java
enu/ActionMenuView.java
|
6b0e97c7c48cf9446c7d4bc1b37d4c37d78433b0 |
03-Aug-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5093394 - Double SearchView!! What does it mean!? It means we should collapse any expanded action items when we clear out all items from a MenuBuilder. Change-Id: I59cacd862a89b3a50c61b02c64b1ea71907af83f
enu/MenuBuilder.java
|
ccdd4ee44f8cfbb45b2989cca833895fcc4c4225 |
28-Jul-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5087980 - MenuItem#expandActionView should work from within onCreateOptionsMenu Initialize menu presenters early enough to respond to expanding an action view within onCreateOptionsMenu. Have SearchView show the IME as an async post to handle attempts to show it while the UI is still in initial setup. Change-Id: I77f3a94ed4397737edb5a7a15bf54993b6723f5e
enu/MenuBuilder.java
|
257466d4e24bd405204cb21a1663eb1cc99f6137 |
28-Jul-2011 |
Adam Powell <adamp@google.com> |
Merge "Bug 5076788 - Optimize the building and invalidation of menus"
|
89b09da7b3b1e69264d9ec710c66eb2f891b313e |
27-Jul-2011 |
Adam Powell <adamp@google.com> |
Bug 5076788 - Optimize the building and invalidation of menus Fix cases that weren't batching menu presenter changes correctly. Have FragmentManager invalidate the options menu less often. Change-Id: Ia66fcd09ada8b0a084ad6b08d4340a8fa0c8fc5d
enu/ActionMenuView.java
enu/MenuBuilder.java
|
10da590839e264735de8a4582021aca0dab81037 |
27-Jul-2011 |
Amith Yamasani <yamasani@google.com> |
Handle callbacks to CollapsibleActionViews that are in an actionLayout. Also, the onActionViewCollapsed needs to be called before detaching the action view, so that the action view can dismiss the keyboard properly. Fixes the Gmail search case where the keyboard doesn't disappear on hitting the "up" affordance after a search. Change-Id: I3c2f3f90f0edf6473404e6ceae3fa08866cad736
enu/MenuItemImpl.java
|
038f1c80af06da55056120e121d43e3ee89ec726 |
21-Jul-2011 |
Adam Powell <adamp@google.com> |
Bug 5061529 - Save/restore action view state for menu items across invalidations. This includes expand/collapse state. Add CollapsibleActionView interface. Views can implement this to have special behavior when they are presented as an expanding/collapsing action view. This lets SearchView and others take care of fiddly behavior (focus stealing; opening the IME) automatically without apps needing to implement this themselves. Change-Id: Ibbd1eb5fcf3e3a862419e9344ad50f896bd05e36
enu/MenuBuilder.java
enu/MenuItemImpl.java
enu/SubMenuBuilder.java
|
b187cd9c54f0100c0fb47c354cdecad29ca7c0ae |
20-Jul-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5038368 - Rules for collapsing action views. Make collapsing action views exclusive on small screens with unsplit action bars. Change-Id: I11cc220acc7b6acddd25f2500404b47bfb405d5c
enu/ActionMenuPresenter.java
|
91e88122cf28a48fd2e2260da7d3d87dd437227a |
18-Jul-2011 |
satok <satok@google.com> |
Enable IMEs to set additional subtypes in background Bug: 4591792 Change-Id: I7e61a576c56d1a3a56001bdf2fd51ad3801add01
InputMethodManager.aidl
|
9837d6d02fc0968614efe5260a176e0c406fe93c |
14-Jul-2011 |
Adam Powell <adamp@google.com> |
Fix bug in submenus opened from icon menus Change-Id: I8b60ceefbccb5cad78d1b5c55702a2685a5f5382
enu/IconMenuPresenter.java
|
648b36bc3011437aeb1991dd355c83be7e5f0db5 |
14-Jul-2011 |
Adam Powell <adamp@google.com> |
Merge "Preserve spacing for icons in menus"
|
9151103ff20d28e8db2a2cc0386d57b8dad4b5d5 |
13-Jul-2011 |
Adam Powell <adamp@google.com> |
Preserve spacing for icons in menus Change-Id: I3269fcffb98a84b6a5c5f9198afd2b2eae7d5f02
enu/ActionMenuPresenter.java
enu/ListMenuItemView.java
enu/MenuPopupHelper.java
|
76559a65ad9d644f10beacf8895ceb217fdd0aeb |
07-Jul-2011 |
Svetoslav Ganov <svetoslavganov@google.com> |
Polish of the ActivityChooserView and ShareActionProvider. 1. Addressed the UX comments: ActivityChooserView's default selection popup no longer shows a message, rather hightlights the default action which now it displays. Alignemnt of the UI. 2. The ShareActionProvider shows a sub-menu if the host item goes on the overflow menu. 3. Now the heade layout of the activity chooser view is not needed hence dropped and the item and footer ones are merged. Change-Id: I0b3de623e4c0a805be9ed73a8541e66b8c00e2d2
enu/MenuBuilder.java
enu/MenuItemImpl.java
|
961dd11895ce72e59bca124ef5bea4e4c1183099 |
12-Jul-2011 |
Adam Powell <adamp@google.com> |
Update ActionProvider to support dynamically building submenus. Stub out ShareActionProvider for building a submenu of activities to choose from. Change-Id: Ibd9ada77a455ed1a296c87b6d967073ca0f676c2
enu/MenuBuilder.java
enu/MenuItemImpl.java
|
11ed1d6cae9214335c92ac38498a4e6c7d1c8324 |
12-Jul-2011 |
Adam Powell <adamp@google.com> |
Fix bugs around restoring submenu state after activity teardown/restore Change-Id: I6cb5b3cad39b141dff84b8e0ca62f8f0a76a03b1
enu/ActionMenuPresenter.java
enu/BaseMenuPresenter.java
enu/IconMenuPresenter.java
enu/ListMenuPresenter.java
enu/MenuBuilder.java
enu/MenuPopupHelper.java
enu/MenuPresenter.java
|
7f8f79a1ff086c04a3ad2a442b1d39a8186e3e50 |
08-Jul-2011 |
Adam Powell <adamp@google.com> |
Add ALL CAPS style to TextView/TextAppearance Switch out ugly hack in action menu items for the new style. Change-Id: I68a0ed62a352b14d499e6478b82bbc12dcb5a030
enu/ActionMenuItemView.java
|
160bb7fa60e8ece654e6ce999b6c16af50ee7357 |
07-Jul-2011 |
Adam Powell <adamp@google.com> |
Action bar layout tweaks Fix a Spinner issue that reported odd baselines Fix detection of expandable items for action menus and allocation of cells Use the right asset for home-as-up in Theme.Holo.Light.SolidActionBar.Inverse Add TextAppearance.Holo.Widget.ActionBar.Menu as a basis for further menu item styling Sync with design for tab/menu text appearance Change-Id: I32026bbde1cd4e15b6cda30d78d3d48250c84c94
enu/ActionMenuView.java
|
2c742c2aebf20a0534c822eb8a36da99d9df79fe |
07-Jul-2011 |
Adam Powell <adamp@google.com> |
Fix bug 5000009 - NPE in Phone UI Change-Id: I9c5c2c73b340192d754949865b6e4ee4a9a324ff
enu/ActionMenuItemView.java
|
35aecd5884a5ccfe380903e39f30f468315e8f92 |
01-Jul-2011 |
Adam Powell <adamp@google.com> |
Updates for action menus Sync with UX designs for action menus in split action bar mode. Layout is now based on a grid cell scheme. Tweak action menu item layouts. Fix some bugs with drawing LinearLayout dividers. Rename config resources to follow convention. Action bar menu items now show text in ALL CAPS. This is done in a locale-dependent manner, but if it produces problems in specific locales the config resource config_actionMenuItemAllCaps should be set to false for that locale. Change-Id: I064c2dd85e012e89551f29153efcfc17f9106333
enu/ActionMenuItemView.java
enu/ActionMenuPresenter.java
enu/ActionMenuView.java
enu/MenuItemImpl.java
|
51ac0e94a83cfccb5105aa14df1077729a5b4ccc |
17-Jun-2011 |
Svetoslav Ganov <svetoslavganov@google.com> |
Adding a ShareView and ActionProvider for menus. 1. Adding a widget for sharing contenet with other applications. The widget orders the share targets based on previous shares. It displays the share target list as either a popup anchored to itslef or as a dialog. 2. Added a ShareDataModel that will back widgets or other classes that are interested in share targets for a given intent ordered according to share history. This class is backing the ShareView 3. Added ActionProvider mechanism for the MenuItems. The action provider of a menu creates the action view as well as performs a default action if the menu item is on the overflow menu and is triggered but none of the menu callback has handled that. bug:4590827 Change-Id: Iaa4add2df2538b8c6c7edbeaf2880486d4fd75c5
enu/ActionMenuItem.java
enu/MenuItemImpl.java
|
8c4706252228755ed181d19532b7e0cfec270ba4 |
01-Jul-2011 |
Adam Powell <adamp@google.com> |
Add API to report the presence of a permanent menu key on the device. Action bar now uses this to determine whether to show an overflow menu. Change-Id: Ife4f724d02bbc0d9d86d94740c85299f6dacae91
enu/ActionMenuPresenter.java
|
863fcd62171e55bc9f2105d9fb5877df982454d8 |
21-Jun-2011 |
satok <satok@google.com> |
Add onClickView to InputMethodService Bug: 4697141 - onClickView is called everytime the user taps EditText Change-Id: Ia71ad325e50a20e9e1001def662ef992bb50a9d0
InputMethodSession.aidl
|
8969d9924c662ab4cdacc342bbdc33756db730be |
22-Jun-2011 |
satok <satok@google.com> |
Revert "Create TextServiceManager and SpellCheckerService" This reverts commit eaddb894865a804279659b4aad6364a34ab50beb.
TextServiceManager.aidl
|
f86ee14f6a53d409489261415901c6397877ce3d |
22-Jun-2011 |
satok <satok@google.com> |
Merge "Create TextServiceManager and SpellCheckerService"
|
42b91bbcdaf64b2f19d0a9ce168964b31a5dc139 |
22-Jun-2011 |
Adam Powell <adamp@google.com> |
Fix bug 4818050 - Need a way to get notified when a PopupMenu gets dismissed/canceled Add an OnDismissListener to PopupMenu. Change-Id: I7abe1b9c9bea5e758a9c32631185e50cd7eb1ed0
enu/MenuPopupHelper.java
|
45d061656aab9f13dc1bb0e5d9378dd661a25f8e |
22-Jun-2011 |
Adam Powell <adamp@google.com> |
Merge "Fix bug 4725323 - 'More' shows the icons which are already available in settings"
|
51195b56ff6d3d589abefde27f0a99b5a9a04ff8 |
22-Jun-2011 |
Adam Powell <adamp@google.com> |
Fix bug 4725323 - 'More' shows the icons which are already available in settings Change-Id: I161787710fbadaa19b93de3e69f3c60db2be73a6
enu/ListMenuPresenter.java
|
ea1ca952c625d51dc71e1cc3d955b239921888c7 |
21-Jun-2011 |
Adam Powell <adamp@google.com> |
Fix bug 4108953 - Old-style menus do not show menu items marked as showAsAction="always" Change-Id: I63299143ea780abeed6dcdece6934f0e704b46a2
enu/ActionMenuPresenter.java
enu/MenuItemImpl.java
|
eaddb894865a804279659b4aad6364a34ab50beb |
01-Jun-2011 |
satok <satok@google.com> |
Create TextServiceManager and SpellCheckerService Bug: 4176026 Spec of TextServiceManager - Chooses the most applicable TextService(e.g. SpellCheckerService, WordBreakIteratorService..) for each locale Spec of SpellCheckerService - Returns whether the given string is a correct word or not - Returns Suggestions for the given string Change-Id: Ia25e7b4f308778891929e31b8cbd741f6848cce4
TextServiceManager.aidl
|
38639b1d75933bfb720db79fce26f09478709614 |
18-Jun-2011 |
Adam Powell <adamp@google.com> |
Fix bug 4689431 - PopupMenus too narrow on phones Change-Id: I624b46d17c1d964fd6cb04abf96333c7a8474d75
enu/MenuPopupHelper.java
|
f1a4549604639e3d9eafc406426ddc252d427b57 |
17-Jun-2011 |
Adam Powell <adamp@google.com> |
Bug 4726236 - NPE at dispatchRestoreInstanceState Change-Id: Ib7eba6ead85fa4daa8046bbc2d4d3fcc1d4223c3
enu/ListMenuPresenter.java
|
c0053223bedf33581b0830fb87be32c1f26e5372 |
13-Jun-2011 |
Fabrice Di Meglio <fdimeglio@google.com> |
Add View.getResolvedLayoutDirection() - update Callback2 interface - update Gravity.getAbsoluteGravity() and Gravity.apply() to be more generic by changing "boolean isRtl" parameter to "int layoutDirection" - fix BiDiTests for RTL FrameLayout Change-Id: I97bb456c22d5fd3ecb34f08564ce4dbed37e7459
enu/IconMenuItemView.java
|
21e2f1b4a0877ee38f7ba89eb32f585fb34431f3 |
10-Jun-2011 |
satok <satok@google.com> |
Merge "API to set additional subtypes"
|
e7c6998e0a953ae55487d4fe122739646f9280aa |
03-Jun-2011 |
satok <satok@google.com> |
API to set additional subtypes Bug: 4321667 - Due to the voice team's strong request Change-Id: Ia8bbc277c0987bde996e6f65541877cec96a3ca1
InputMethodManager.aidl
|
81cf3ecadefb8fd6c05771b0b9947babaa9c8eaf |
17-May-2011 |
Adam Powell <adamp@google.com> |
Action buttons now use themable style. Obey action view layoutparams. Change-Id: Ia466008465b57659615fbf9d450ce3fdb3c06379
enu/MenuItemImpl.java
|
1ab418a222e1834c4b1312fde355e41a1947af0d |
10-Jun-2011 |
Adam Powell <adamp@google.com> |
Refine the behavior of split action bars. Change-Id: I27212c7554025433ee366f0766971f0092b26d67
enu/ActionMenuPresenter.java
|
8643aa0179e598e78d938c59035389054535a229 |
20-Apr-2011 |
Svetoslav Ganov <svetoslavganov@google.com> |
Interrogation of the view hierarchy from an AccessibilityService. 1. Views are represented as AccessibilityNodeInfos to AccessibilityServices. 2. An accessibility service receives AccessibilityEvents and can ask for its source and gets an AccessibilityNodeInfo which can be used to get its parent and children infos and so on. 3. AccessibilityNodeInfo contains some attributes and actions that can be performed on the source. 4. AccessibilityService can request the system to preform an action on the source of an AccessibilityNodeInfo. 5. ViewAncestor provides an interaction connection to the AccessibiltyManagerService and an accessibility service uses its connection to the latter to interact with screen content. 6. AccessibilityService can interact ONLY with the focused window and all calls are routed through the AccessibilityManagerService which imposes security. 7. Hidden APIs on AccessibilityService can find AccessibilityNodeInfos based on some criteria. These API go through the AccessibilityManagerServcie for security check. 8. Some actions are hidden and are exposes only to eng builds for UI testing. Change-Id: Ie34fa4219f350eb3f4f6f9f45b24f709bd98783c
aseIWindow.java
|
8d02deabac62c4a68a335a7b3141795466362b89 |
01-Jun-2011 |
Adam Powell <adamp@google.com> |
Implement bug 4500971 - Collapsable action views Action views may now be flagged as 'collapsable'. This means that the action menu will always show them in the collapsed state by default. When selected, the action view will "take over" the navigation/view side of an action bar until dismissed via the home/up button. This feature allows for more long-term exclusive modes akin to ActionModes but less intrusive. The action menu itself remains unaffected. Collapsable action views are ideal for things such as search or categories of tool palettes. Change-Id: Ibafce5631befbfe67c5d834c2e2617d3d7f6da7a
enu/ActionMenuItem.java
enu/ActionMenuPresenter.java
enu/BaseMenuPresenter.java
enu/ListMenuPresenter.java
enu/MenuBuilder.java
enu/MenuItemImpl.java
enu/MenuPopupHelper.java
enu/MenuPresenter.java
enu/SubMenuBuilder.java
|
c619e74cc62678cef09b5f92e87e762a1f02aab7 |
01-Jun-2011 |
Gilles Debunne <debunne@google.com> |
ActionBar makes room for icons when no title is provided Change-Id: I5bd09e00b50496032deda40ea22367d727230611
enu/ActionMenuItemView.java
|
5ff0f99b23da389f59fe736c4c670c60f13be8ea |
27-May-2011 |
Fabrice Di Meglio <fdimeglio@google.com> |
Merge "Add support for Gravity BEFORE and AFTER"
|
6a03640539405afbdefe72894759281b98aa6e6f |
23-May-2011 |
Fabrice Di Meglio <fdimeglio@google.com> |
Add support for Gravity BEFORE and AFTER - update layouts - add Callback2 for RTL aware Drawable - add unit tests Change-Id: Ic64d0291e262170aff7297c6580b0b422eaa8d89
enu/IconMenuItemView.java
|
f9f01008624e2d28c15a90d942fa36f98c8c967d |
19-May-2011 |
satok <satok@google.com> |
Add Apis to send notifications when the suggestion was picked - Due to a strong request from VoiceIME Bug: 4443922 Change-Id: Ia539de0acf66053e0349daec459d75e36805f6bf
InputMethodManager.aidl
|
f4232e0097ffb672f5d1559b20c7230081efe34f |
23-May-2011 |
Adam Powell <adamp@google.com> |
Change action button layout for split action bars Change-Id: Ie1427ae6b0334bf0a8afd5cae968c286c82a3837
enu/ActionMenuView.java
|
f746fc9e45c2bc80d8af2eb10d849c5807ebe1c7 |
21-May-2011 |
Adam Powell <adamp@google.com> |
Fix bug 4450805 - item selection dispatching in submenus. Change-Id: I6c56c9c8c6bd6c719250df4a21bda7d0ef463de4
enu/SubMenuBuilder.java
|
d1f4207ba577e2ac3f39a719f8ee4bb9f4940dc1 |
04-May-2011 |
Adam Powell <adamp@google.com> |
Fix bug 4355335 - android.app.cts.DialogTest.testContextMenu failing on IRJ28 Change-Id: Icfcd8c2aadd0fb9e49296b8318858317407e1b7f
enu/MenuDialogHelper.java
|
e42b189f369b6b0cb35095bc5386ba82b5ce39a5 |
03-May-2011 |
Adam Powell <adamp@google.com> |
Remove debug logging Change-Id: If1a8ef5461b98239d8f55f842e1043b6b3d0f070
enu/ActionMenuPresenter.java
|
640a66eac612b850b5dabd3b93bd94f83ed2d567 |
29-Apr-2011 |
Adam Powell <adamp@google.com> |
Refactoring of action bar internals Split action bar implementation details. Factor out common components into AbsActionBar. Layout rules for the lower half of split action bars. Change-Id: I6bc39ba6c343055597880a7d4663dd8f30aa4999
enu/ActionMenuPresenter.java
enu/ActionMenuView.java
enu/MenuBuilder.java
|
9b4bee0f14bbd137b0797127aff2df46a6321ec5 |
28-Apr-2011 |
Adam Powell <adamp@google.com> |
Introducing the split action bar. Apply (or extend) the theme Theme.Holo.SplitActionBarWhenNarrow or Theme.Holo.Light.SplitActionBarWhenNarrow to enable splitting the action bar across both the top and bottom of the screen. This places the action menu along the bottom, leaving more room at the top for titles, navigation, and custom views and more room at the bottom for menu items. TODO: Refine layout of the action menu when placed at the bottom of the screen. Make action modes split as well. Change-Id: I92c91f99c533f26aecf6b828ed041386c4f16922
enu/ActionMenuPresenter.java
|
45c515b0e962ee8ffc901872bcc9f25599ea0e78 |
22-Apr-2011 |
Adam Powell <adamp@google.com> |
Action bar work for phones Tweak sizing and layouts for action bar on smaller devices. The action bar's size is now partially dependent on form factor and orientation to conserve screen space, especially in landscape mode. Alter the max action menu items for smaller devices. Disallow text on action menu items with a horizontal width of less than 480dp when an icon is available. Remove the "Done" text on the action mode close button. (TODO: get a properly sized 9-patch resource for this - the current one has an intrinsic width that is too large.) When setting an action bar icon as a resource ID, the bar will attempt to load a mipmapped resource that is the closest available for the target size. Change-Id: I2498c640666ade310fdd1d3a2078bd4000b392a2
enu/BaseMenuPresenter.java
enu/MenuItemImpl.java
|
a86b350977be53146d568bc0736d0f2b4aef8de5 |
21-Apr-2011 |
Adam Powell <adamp@google.com> |
Fix bug 4329016 - Refresh menus properly while in batch update mode Change-Id: Ia4a4feffb0a77a99e0b241c9cf1d737577d9154d
enu/MenuBuilder.java
|
696cba573e651b0e4f18a4718627c8ccecb3bda0 |
29-Mar-2011 |
Adam Powell <adamp@google.com> |
Refactor menu internals. In the old world, MenuBuilder and MenuItemImpl were responsible for generating views for any presentation of a menu. MenuBuilder needed to know any types and resources involved, and the implied caching semantics did not work well for menus presented within AdapterViews. In the new world, the MenuPresenter interface takes over the responsibility of generating views or adapters for menu items. MenuBuilder/MenuItemImpl still provide extra metadata tracking used by these presenters. Mutiple presenters may be active for a single menu at a time. All of this remains internal framework implementation details. BaseMenuPresenter provides a simple base for presenters that treats the host MenuView more like an AdapterView. This allows for less rebuilding of views when items are added/removed. Callbacks have been restructured. Calls that relate to the menu itself are still handled by MenuBuilder.Callback, but calls related to a specific presentation of a menu are handled by MenuPresenter.Callback objects attached to a MenuPresenter. Also add API to programmatically set divider options for LinearLayout and hidden API so that ActionBarView can have finer-grained control over divider placement. Change-Id: I2265b86a084279822908021aec20dfbadc1bb56b
tandaloneActionMode.java
enu/ActionMenuItemView.java
enu/ActionMenuPresenter.java
enu/ActionMenuView.java
enu/BaseMenuPresenter.java
enu/ExpandedMenuView.java
enu/IconMenuItemView.java
enu/IconMenuPresenter.java
enu/IconMenuView.java
enu/ListMenuItemView.java
enu/ListMenuPresenter.java
enu/MenuBuilder.java
enu/MenuDialogHelper.java
enu/MenuItemImpl.java
enu/MenuPopupHelper.java
enu/MenuPresenter.java
enu/MenuView.java
enu/SubMenuBuilder.java
|
68f1b78b7b9139a0e34285ff641a664e664a14b8 |
11-Apr-2011 |
satok <satok@google.com> |
Add an API to get the last used input method subtype Bug: 4075039 - Voice input requires to know the last used input method subtype. Change-Id: I603a4fb88a2af5195e52188adfa6585ad80304fa
InputMethodManager.aidl
|
e3797a15fbf769a0abcbe121cfd33b4b658aea1e |
21-Mar-2011 |
satok <satok@google.com> |
Removed APIs for setCorrectionSpan from InputConnection ("setCorrectionSpan" was added in Id3abc9ea4d11753cd ) Also.. - Added a class java doc for CorrectionSpan - Removed FLAG_DEFAULT - Changed the return type of getSuggestions from Array<CharSequence> to String[] Change-Id: If5eb091e307a7a40c5b4a70ec1fe6059ecd9fb2d
InputConnectionWrapper.java
InputContext.aidl
nputConnectionWrapper.java
|
6bddd8771d05889024778caa78fb1eaae68a0802 |
24-Mar-2011 |
Adam Powell <adamp@google.com> |
Fix bug 4084399 - with usb keyboard, actionbar menuitems with icon+text take dpad focus twice in row Fix action menu item layout focusability so that only the full item is focusable. Fix up listeners appropriately. Change-Id: I127c36404894869a08c5f4472491e3e596563c5c
enu/ActionMenuItemView.java
|
adb435835fb9a5f2bb74d29930b239dde18504a7 |
09-Mar-2011 |
satok <satok@google.com> |
Add CorrectionSpan and APIs to pass a secure CorrectionSpan to TextView - CorrectionSpan is a span which has suggestions made by IME. This has a function to change the current IME to other IME specified in this span. For security reasons, only the current IME is allowed to use this function through InputConnection. (IME token is used for checking the validity of it.). - CorrectionSpan stores following information: flags, subtype Id, InputMethodInfo Id, suggests, locale, original string Change-Id: Id3abc9ea4d11753cdc4f483a2bb3128f49ba198a
InputConnectionWrapper.java
InputContext.aidl
nputConnectionWrapper.java
|
4afd62b18c52a55371ab923d54f93615ad68fd7a |
19-Feb-2011 |
Adam Powell <adamp@google.com> |
Add an API to listen for window attach/detach events on a View. Fix bug 3312949 - inconsistent state in MenuPopupHelper Change-Id: Ie802ada3f8de4cf71c92fcc7c6abce9ba85e7b75
enu/MenuPopupHelper.java
|
ca51e8788a58f2af3525b7214a675f2d0233e5da |
15-Feb-2011 |
Adam Powell <adamp@google.com> |
Fix some bugs with MenuPopupHelper and ListPopupWindow Clean up handling of a few conditions in MenuPopupHelper that the monkeys manage to trigger around the use of ViewTreeObserver. (bug 3443819, bug 3312949) Fix a bug where a stale handler message could cause a ListPopupWindow to reopen itself after being dismissed. (bug 3453607) Change-Id: I488014767ccee785500862a2572beb35901d173b
enu/MenuPopupHelper.java
|
f2d7a5d8312b78f84e6cc63277ec7ec874722015 |
08-Feb-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3426162 - Overflow menu closes on its own Makes populating action menus smarter, doesn't completely empty and repopulate. Fixes issues where changing menus can leave popups without an anchor. Change-Id: I03cc266f0952123c5704a78cdcfc69b77af1915b
enu/ActionMenuView.java
|
857fd9b8562c29913e03ed29288bd1802d37dc60 |
28-Jan-2011 |
Joe Onorato <joeo@google.com> |
Plumb whether an input view is actually visible or not through from the IME to the status bar. Bug: 3391067 Change-Id: I049531155bf7ee0b29874916c0b5b0a45b73c09e
InputMethodManager.aidl
|
5dcc9bd7261d6b19135bf972cf603b355b5316f4 |
25-Jan-2011 |
Adam Powell <adamp@google.com> |
Merge "Fix bug 3387855 - Menu flashes on left side of screen" into honeycomb
|
e2b03a62e5014ea60e24a989544fa549b493a520 |
25-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3387855 - Menu flashes on left side of screen Post popup menu click events rather than executing inline so that the popup can close undisturbed. Change-Id: I01481bd37d7921c10c6b8b484eab33f0d25447ff
enu/MenuPopupHelper.java
|
30bc34f191ca8a009af313fc751e5b4bff6e39a1 |
25-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix surface frame size reporting. The SurfaceHolder provided by the wallpaper service was not reporting the correct size in getSurfaceFrame(). This broke an optimization in the ImageWallpaper. The old code happened to work because calling lockCanvas on the SurfaceHolder with a null dirty rectangle happened to have the side-effect of updating the SurfaceHolder's surface frame size field because it passed mSurfaceFrame as the dirty rect, causing mSurfaceFrame to be set to the size of the region to be drawn. However, relying on this side-effect is wrong. Among other things, the dirty region could actually be smaller than the surface frame. This patch fixes WallpaperService, SurfaceView and ViewRoot to ensure that the surface frame size is always set explicitly and is not modified by calls to lockCanvas. Change-Id: I10948f5ec269409ceaf0f7d32b3f6731e9499ebc
aseSurfaceHolder.java
|
1821ff9022f0ea5f5c5d82a96a05f46192d50c26 |
25-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3178934 - Make MenuBuilder notify its adapters of changes Change-Id: I28603afbdfdd913aa06f3a07065e27aff1dc524b
enu/MenuBuilder.java
|
c831e3192ccd9b2cf69ec7c973005e578631da3b |
24-Jan-2011 |
Adam Powell <adamp@google.com> |
Merge "Fix bug 3382994 - android.view.WindowManager$BadTokenException" into honeycomb
|
55767443adaf31c377ff1d7abf2d3fe7f01bfbaa |
24-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3382994 - android.view.WindowManager$BadTokenException Remove pending callbacks when ActionMenuView is detached. Change-Id: Ia61e446f60f10dd82476c00b4c11177182e7db60
enu/ActionMenuView.java
|
abbcc241c0db3d9167b5e6baeac1a07f009a05a5 |
24-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3237638 - make it easy to change a "refresh" AB button/icon into the indeterminate progress icon This fixes a bug that caused ActionViews to not be updated properly after a pass through invalidateOptionsMenu/onPrepareOptionsMenu. Apps can now set/clear action views to display progress spinner widgets or anything else on demand. Change-Id: I138eceb504177c6bb5b86d40a68a82973aa841a5
enu/MenuItemImpl.java
|
664644d9e012aa2a28ac96f305b1ce6499ec8806 |
24-Jan-2011 |
Joe Onorato <joeo@google.com> |
visibility ("lights out") API. 1. Views may setSystemUiVisibility() to recommend that the system chrome (status bar or other UI) show or hide itself. (This functionality was previously available only via the FLAG_FULLSCREEN window flag for some SystemUI implementations.) 2. Views may register a OnSystemUiVisibilityChangedListener on a view, and find out when the system UI actually appears or disappears, allowing apps to coordinate the appearance of their own UI if desired. Bug: 3241144 Change-Id: Ia1758d94099182d49a1e3688ea2738ae4995b829
aseIWindow.java
|
b3312b88c1f10cd29f9b55b03d5b41fc429ebfb5 |
22-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3360851 - actionbar overflow menu button doesn't trigger "audible selection" Change-Id: I768d35f9752d5f6466708fd191781aa26aefd121
enu/ActionMenuView.java
|
4192e38827b27416410516d4bb0d545c36f4660e |
17-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3362446 - NPE in legacy menus Change-Id: Icf9a0bec46c74ace3acbc85eea45d1d769b699d1
enu/MenuBuilder.java
|
36fced9b211255e2137014e21fb3259042d8da85 |
17-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3050138 - Action bar does not display correctly when many action items are added Rules for action bar overflow: Items are considered for inclusion in the order specified within the menu. There is a limit of a total count, optionally including the overflow menu button itself. This is a soft limit; if an item shares a group ID with an item previously included as an action item, the new item will stay with its group and become an action item itself even if it breaks the max item count limit. This is done to limit the conceptual complexity of the items presented within an action bar. Only a few unrelated concepts should be presented to the user in this space, and groups are treated as a single concept. There is also a hard limit of consumed measurable space. This limit may be broken by a single item that exceeds the remaining space, but no further items may be added. If an item that is part of a group cannot fit within the remaining measured width, the entire group will be demoted to overflow. This is done to ensure room for navigation and other affordances in the action bar as well as reduce general UI clutter. The space freed by demoting a full group cannot be consumed by future menu items. Once items begin to overflow, all future items become overflow items as well. This is to avoid inadvertent reordering that may break the app's intended design. Change-Id: I878f6b15619059258c91c01f4fe838feac161d6d
enu/ActionMenuView.java
enu/MenuBuilder.java
|
06bc9721d8f5db053b51e1c536e746833ad46036 |
15-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Merge "Disable soft keyboard when keyboard attached." into honeycomb
|
4aed78b5056560f499e5953f659fa90a06ecc38a |
15-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Disable soft keyboard when keyboard attached. Also hide menu shortcuts everywhere until we can get around to redesigning the menu UI to be more consistent. Bug: 3306545 Bug: 3330748 Change-Id: I4d4e19525cdfc93d9aae0dcaa1e6266fb552c5bc
enu/MenuBuilder.java
|
9f125d341521efc8535e32e35a641be50d405c36 |
15-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3339039 - Preserve proper behavior for action button text when updated. Change-Id: If3529616d5a2b69638b2b0c4070d5ebbb418410c
enu/ActionMenuItemView.java
|
e7d468410b3a783560d5158a5798cef1b4b67702 |
14-Jan-2011 |
Adam Powell <adamp@google.com> |
Rework action bar menus. Fix bug 3328810 - remove icons from action bar overflow menu. Popup menus now will not show icons. Give popup menu items a minimum width. Alter the sizing of popup menus. Fix bug 3192635 - revise rules for action menu dividers. Dividers now appear between the overflow button and any other items next to it, and anywhere they disambiguate touch targets between text and other content. Action views are on their own and should include their own dividers if needed. Remove dividers from around action bar spinners and tabs. Change-Id: I935b48b473606ac2adde5e2b251bf30ebe2a3da9
enu/ActionMenuItemView.java
enu/ActionMenuView.java
enu/ListMenuItemView.java
enu/MenuItemImpl.java
|
f0ad6e6eaf48ac8f4007232ad0a8511a7b5cfc0e |
11-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3333015 - Overflow menu item submenus do not open Submenus of action bar menus will open as new menus. Change-Id: I924b87bbea91b0df5e3608ec894530302c0e1d8d
enu/ActionMenuView.java
enu/MenuPopupHelper.java
|
5e3f284baa271cb0fbf90e504d19fdd2e385382e |
08-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3200615 - "MenuPopupHelper cannot be used without an anchor" Add protection against views disappearing before previously posted Runnables attempt to show a menu anchored to them. Change-Id: Ia2a322e76665e61feb5bdb92377d5066cb6d5b04
enu/ActionMenuView.java
enu/MenuPopupHelper.java
|
d16c9884bb0bd06f9d7aa1be649226a5df6591ee |
07-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3330223 - onCreateOptionsMenu() unable to getActionView() immediately after orientation change Inflate action view layout resource earlier so that calls to getActionView are valid immediately after menu inflation. Change-Id: I8023328b1a77670ac42a783f6e4b46aa5c2a798e
enu/ActionMenuView.java
enu/MenuItemImpl.java
|
345a9f4e6d0a1b60664b010385f36456a5fef25d |
07-Jan-2011 |
Adam Powell <adamp@google.com> |
Fix bug 3212471 - Widget.Holo.ActionButton style and friends now 76% more useful Change-Id: Ideb37c8a31e37df8fcfc549d12b4b6cafc983ca1
enu/ActionMenuView.java
|
3f476b34049d062942eafcf48396f593e00bd324 |
04-Jan-2011 |
Adam Powell <adamp@google.com> |
Revisiting ActionBar API and layout. Fix several bugs where ActionBar was ignoring LayoutParams in action views. Add convenience methods for toggling display options flags. Add layout resource version of ActionBar#setCustomView Fix a bug preventing actionViewClasses from being loaded properly in menu xml. Change-Id: I0d9a0b635fd9cfc020bac69369c0c7749c226349
enu/ActionMenuItem.java
enu/ActionMenuView.java
enu/MenuItemImpl.java
|
16331c8a1d33defccc5cbb18694def79196c921b |
20-Dec-2010 |
satok <satok@google.com> |
Add a parameter to InputMethodManagerService.getEnabledSubtype for allowing to select subtypes implicitly if no subtype is enabled. Bug: 3142286 Change-Id: I92d019d0648c552e6d7695c3530aa81ae054d702
InputMethodManager.aidl
|
1700ae0aef4e6a3f412b758389955abd049060db |
20-Dec-2010 |
Adam Powell <adamp@google.com> |
Fix bug 3295495 - Wrong menu item selection in PopupMenu Change-Id: I17ec55f09dbed9797cb702a7252f6c89e861cc6a
enu/MenuPopupHelper.java
|
50f784cf2dc2dea8061153ac3a843f60a9d88781 |
20-Dec-2010 |
Adam Powell <adamp@google.com> |
Measure spinner items for sizing the dropdown view. Only a limited window of items will be measured around the currently selected item. Change-Id: Ie0431948fdd564fa4bbeb82dede9e2abebbaee55
enu/MenuPopupHelper.java
|
aa0b92ce2b51987e9c864164234fe968ab5b9311 |
14-Dec-2010 |
Adam Powell <adamp@google.com> |
Fix bug 3210201 - Popup window wrong size/position when IME hidden Fixes a case where ViewRoot does not recompute its size properly. This caused various offsets to get out of sync and the window would draw improperly. Change-Id: Id0abb37bbf27b60de2dca4077c21040ec84ef163
enu/MenuPopupHelper.java
|
cf9cf2f40efc4ccf3f73e6fdb07725d9c00c4f91 |
09-Dec-2010 |
Gilles Debunne <debunne@google.com> |
New API in InputConnection to signal IME's text correction. Scafolding so that the IME team can start working on this feature. The animation part in the TextView is missing. Change-Id: I8225538564370fba1500e3539742a8ab79bdd199
InputConnectionWrapper.java
InputContext.aidl
nputConnectionWrapper.java
|
cf0357639e952a87f0d535c82691919af81f058b |
06-Dec-2010 |
Adam Powell <adamp@google.com> |
Clean up button bar styles Change-Id: I65b6600f72b92db024f83b63d3ea91abc1cbb96c
enu/ActionMenuView.java
|
189ee18d6c6483ad63cc864267328259e2e00b95 |
03-Dec-2010 |
Dianne Hackborn <hackbod@google.com> |
Implement smarter sizing of WRAP_CONTENT windows. This extends the view hierarchy's measure pass to allow view to propagate up to their parent additional information besides just their measured size. They can now report that their measured width and/or height should be larger than the size their parent is limiting them to (even though by definition they need to contrain their reported measurements to the limits imposed by the parent). ViewRoot uses this information to determine if it should remeasure the window with a larger size limit to try to make it fit. Change-Id: I90af3b7a8ec45d0a5c003fb009857025209d83eb
enu/IconMenuView.java
|
8515ee846bd76aee86ec5ddfcc4dd1e626dd999c |
30-Nov-2010 |
Adam Powell <adamp@google.com> |
Fix bug 3240444 - add OnMenuVisibilityListener for action bar. Fix bug 3180015 - leaking window handles on configuration change for action bar dropdown menus Rename ActionBar.NavigationCallback to something more consistent with the rest of the API. Change-Id: Ic1fb4c07484c57a72649b30e27d220b18cda6cdf
tandaloneActionMode.java
enu/ActionMenuView.java
enu/MenuPopupHelper.java
|
440aab54cab106030f1edafea4dec1f9d8624f9b |
25-Nov-2010 |
satok <satok@google.com> |
Removed InputMethodSubtypePicker Change-Id: I08abac5d65a30c02cc671f4f70e93df25b6c8a92
InputMethodManager.aidl
|
2820351489537698ad153c6397edf3270455edc5 |
24-Nov-2010 |
satok <satok@google.com> |
Add an API to set InputMethodAndSubtype Change-Id: I66f1a4c8e0d98705614f12a737e7efcd0263b72a
InputMethodManager.aidl
|
4e4569dab5c75804b01a19b2d6e6101b445c1c68 |
19-Nov-2010 |
satok <satok@google.com> |
Add an API to get shortcut IMEs - If there are no selected shortcut IMEs, the most applicable voice input will be selected as a shortcut IME Change-Id: Ibd0f7ef5101013569c303820a3adc9038a97356d
InputMethodManager.aidl
|
67ddf9cbd5d7133c7f443cd3c55841ed1109c3a0 |
17-Nov-2010 |
satok <satok@google.com> |
Add a function to get enabledInputMethodAndSubtype Change-Id: Ie97635343249aa63e33028c2843cab103125ca92
InputMethodManager.aidl
|
ed8b403cc8066bf76cdf98f8d9906ff810defc5b |
16-Nov-2010 |
Adam Powell <adamp@google.com> |
Fix bug 3198503 - NPE at MenuPopupHelper.dismiss Make sure dismiss() can be called even when the popup is not currently showing. Change-Id: I48077d8b3bfe0df04bceeb056ed54cbd79a6e660
enu/MenuPopupHelper.java
|
b66d287e3003a0934d5714fbf15e554b3c814906 |
09-Nov-2010 |
satok <satok@google.com> |
Add a setter of InputMethodSubtype to InputMethodManager - Public API: void setCurrentInputMethodSubtype(int pos) Change-Id: I55daa19ba924999def544bf841f00bf54852f3e1
InputMethodManager.aidl
|
735cf38b8c7f8f91ad087511e44fe79018fa61d6 |
11-Nov-2010 |
satok <satok@google.com> |
Add a function to switch back to the last used IME Change-Id: Iac7bcc2ee16dd04d91a3e75b160622d246788c9a
InputMethodManager.aidl
|
0458796f1401732b38660794148f4c5e5602f432 |
12-Nov-2010 |
Adam Powell <adamp@google.com> |
Fix bug 3146938 - Menus spawned by ActionBar should hide when action bar is hidden Any popup spawned by the private class MenuPopupHelper will be hidden if its anchor becomes hidden. ("hidden" == !View#isShown()) Fix a bug where ActionBar subtitle views were not going away when subtitle text was set to null. Fix a bug when switching out of ActionBar tabbed nav mode with no active tabs. Change-Id: I1f30c067156221f96905ac69ab876418ad2e94f8
enu/MenuPopupHelper.java
|
3915bb845b032dc184dba5e60970b803390ca3ed |
05-Nov-2010 |
Jeff Brown <jeffbrown@google.com> |
Tell system server whether the app handled input events. Refactored ViewRoot, NativeActivity and related classes to tell the dispatcher whether an input event was actually handled by the application. This will be used to move more of the global default key processing into the system server instead of the application. Change-Id: If06b98b6f45c543e5ac5b1eae2b3baf9371fba28
aseInputHandler.java
|
9ab978713ce86fdaefed2407f4f3c998ab0e3178 |
27-Oct-2010 |
Adam Powell <adamp@google.com> |
Action bar API updates - new display options Change-Id: I55e56cd7aafa53994990079e88ef85e4eb1a0b3f
enu/ActionMenuView.java
|
06487a58be22b100daf3f950b9a1d25c3ea42aa2 |
29-Oct-2010 |
satok <satok@google.com> |
Add a functionarity for showing / hiding IME button on the system bar Bug: 3077030 - IME communicates with status bar directly. Change-Id: Ic5b6b5b7a2b8ea62372dcc9b9c36d81b9f2db651
InputMethodManager.aidl
|
04d50204705c9da52b218f11972da4e7d7a9cb84 |
25-Oct-2010 |
satok <satok@google.com> |
Show Subtype Icon properly in the system status bar - Added API for getting the current subtype - Added functions for show/hide status icon Change-Id: Ifcaad00f7f4c658cdb3af367387476bbf316eb19
InputMethodManager.aidl
|
86417ea3f8041481a085823a1aa9f66d747231e8 |
27-Oct-2010 |
satok <satok@google.com> |
Remove InputMethodAndSubtypeEnabler and call intent of Settings.ACTION_INPUT_METHOD_AND_SUBTYPE_ENABLER Change-Id: I467cfba9644ec266f6a98f7aec0886ad205fef4f
nputMethodAndSubtypeEnabler.java
|
85446e95afa480cee2247bb96795fccc8cf812af |
23-Oct-2010 |
Adam Powell <adamp@google.com> |
Fix bug 3105695 - Action modes in dialogs or other small windows Overlay action modes now show in their own windows aligned to the top of the screen. Change-Id: I81600bbd1bcaeb59fdcf0a959bd35f82165baa2c
tandaloneActionMode.java
|
d8404b23739b135060ab9a04317a9f8b990cf8ca |
13-Oct-2010 |
Adam Powell <adamp@google.com> |
Allow icon+text action buttons Change-Id: I96d1f3958de3ac13cadbab108b87d6bae96e9473
enu/ActionMenuItemView.java
enu/MenuItemImpl.java
|
f16888f1e849b0bc0b9c17e5f833c4e2cd54c382 |
12-Oct-2010 |
Adam Powell <adamp@google.com> |
Holo fixes * Fix up ButtonGroup to behave better. * Fix bad states with holo list selectors. * Clean up action mode UI components. * Change action mode UI to use a text button instead of 'X' to dismiss. * Fixed spinner dropdowns for Holo.Light Change-Id: Ifc092bd549ffb539d6a3b2ddd95ebd4b114a441f
enu/ActionMenuView.java
|
be4d68e7b238b8ee879de0481e39c40d3f1683b6 |
09-Oct-2010 |
Adam Powell <adamp@google.com> |
Updated styles and metrics. * Added preliminary ButtonGroup support for buttons that display as a unit. * Fixed a bug with MenuBuilder that caused old-style icon menus to fail. * Added support for explicitly setting line height in text. Change-Id: I1ba65f09dd9e1bc833d247ebe72052a21e3f99f0
enu/ActionMenuItemView.java
enu/ActionMenuView.java
enu/MenuBuilder.java
|
2fbf4de64f0ec5052201cea9519c44d5b1789a40 |
01-Oct-2010 |
Adam Powell <adamp@google.com> |
Holo theme progress and assets! * Light and dark dialogs * Checkboxes and radio buttons * Toggle buttons Warning! This is still a work in progress. This does not include final metrics. Some assets (specifically dialogs) are currently misaligned.
enu/MenuBuilder.java
|
47a44916e2fb33cf4751906386d5f5c903b28d8b |
06-Oct-2010 |
satok <satok@google.com> |
Add InputMethodEnabler for enabling input methods and subtypes - Copyed functionarity from LanguageSettings.java TODO: Save enabled InputMethodSubtypes Change-Id: I7b4fb1a79cb8b3229f88773d261430e23ba7aae2
InputMethodManager.aidl
nputMethodAndSubtypeEnabler.java
|
a53146c5569f8ff5f7eb55e9ad35d23ddacf2add |
07-Sep-2010 |
Christopher Tate <ctate@google.com> |
Drag/drop APIs and infrastructure A View initiates a drag-and-drop operation (hereafter just called a "drag") by calling its startDrag(ClipData) method. Within the processing of that call, two callbacks are made into the originating View. The first is to onMeasureDragThumbnail(). Similarly to the core onMeasure() method, this callback must respond by calling setDragThumbnailDimension(width, height) to declare the size of the drag thumbnail image that should be used. Following this, the View's onDrawDragThumbnail(canvas) method will be invoked to actually produce the bits of the thumbnail image. If all goes well, startDrag() will return 'true', and the drag is off and running. (The other arguments to startDrag() provide reconciliation between the current finger position and where the thumbnail should be placed on the screen relative to it.) Potential receipients of the ClipData behind the drag are notified by a new dispatch mechanism, roughly parallel to motion event dispatch. The core routine is the View's onDragEvent(event) callback, with the mechanics of dispatch itself being routed through dispatchDragEvent(event) -- as in the case of motion events, the dispatch logic is in ViewGroup, with leaf View objects not needing to consider the dispatch flow. Several different event 'actions' are delivered through this dispatch mechanism: ACTION_DRAG_STARTED: this event is propagated to every View in every window (including windows created during the course of a drag). It serves as a global notification that a drag has started with a payload whose matching ClipDescription is supplied with the event. A View that is prepared to consume the data described in this event should return 'true' from their onDragEvent() method, and ideally will also make some visible on-screen indication that they are a potential target of the drop. ACTION_DRAG_ENTERED: this event is sent once when the drag point enters the View's bounds. It is an opportunity for the View to set up feedback that they are the one who will see the drop if the finger goes up now. ACTION_DRAG_LOCATION: when the drag point is over a given View, that View will receive a stream of DRAG_LOCATION events, providing an opportunity for the View to show visual feedback tied to the drag point. ACTION_DRAG_EXITED: like DRAG_ENTERED, but called when the drag point leaves the View's bounds. The View should undo any visuals meant to emphasize their being the hovered-over target. ACTION_DROP: when the drag ends at a given point, the View under that point is sent this event, with the full ClipData of the payload. ACTION_DRAG_ENDED: paralleling the DRAG_STARTED action, this is the global broadcast that the drag has ended and all Views should return to their normal visual state. This happens after the DROP event. Change-Id: Ia8d0fb1516bce8c735d87ffd101af0976d7e84b6
aseIWindow.java
|
e4679f1ed2ef044468d4a37f6e220c414620685a |
28-Sep-2010 |
Adam Powell <adamp@google.com> |
Temporary hack to make context menu text visible on holo dialogs. Real fix for this to come. MenuBuilder needs to not hardcode themes and dialogs shouldn't either. Change-Id: I393969acd1ef6956d7299cb2eff46708ce812d1d
enu/MenuBuilder.java
|
ab751aa085433e9f735d2e7603459c6c7e9d2fb0 |
14-Sep-2010 |
satok <satok@google.com> |
Add methods for managing subtypes - added showInputMethodSubtypePicker to public API -- show the selector dialog for subtypes - added getter, setter and event handler to InputMethodManagerService - extract InputMethodSubtype to the top level class for using it in aidl - TODO: make an enabler for input method subtypes - TODO: handle the event of changing an input method subtype in LatinIME Change-Id: I49f8c6675ac4b06511635d14a37bd398738eff33
InputMethod.aidl
InputMethodManager.aidl
|
0b2d306e7000f4c0c6ad4e00d494bb401d8a9fc2 |
15-Sep-2010 |
Adam Powell <adamp@google.com> |
Style new popup widgets. Change-Id: I208ed292afd9919071778baa9ea61d7ca9e7743c
enu/MenuBuilder.java
enu/MenuPopupHelper.java
|
cf78b3e5101349fdddbde14b3a55140f9562ae66 |
13-Sep-2010 |
Adam Powell <adamp@google.com> |
Add support for custom action views in ActionBar menus Change-Id: Ic7850bc00fcfe95d805dd6a1b15cb5d413942475
enu/ActionMenuItem.java
enu/ActionMenuView.java
enu/MenuItemImpl.java
|
b3f245c30c022de8a26e016b7c9d5f13747b2868 |
11-Sep-2010 |
Adam Powell <adamp@google.com> |
Allow the theme to affect action bar menus Change-Id: Ie914881de626415886289e830fb1ff166ce13159
enu/MenuBuilder.java
|
079fd1c0a329b0fbd3761abe2e900a941131efed |
09-Sep-2010 |
Adam Powell <adamp@google.com> |
Make action buttons more style-based Change-Id: Ia7ef4da8d8004f1b3809b4883aafc541695d235a
enu/ActionMenuView.java
|
62ecf53538ce46662a71f3026cf3aa5b5224cd6a |
09-Sep-2010 |
Mathias Agopian <mathias@google.com> |
am 3fa7d8af: am 9bfb060a: Merge "Force wallpaper surface to 565." into gingerbread Merge commit '3fa7d8af6560de07ef673f73308f7e51de64e4ec' * commit '3fa7d8af6560de07ef673f73308f7e51de64e4ec': Force wallpaper surface to 565.
|
62bf4a0283e855e2fb5f40f36909501e5b4a09eb |
09-Sep-2010 |
Mathias Agopian <mathias@google.com> |
Force wallpaper surface to 565. This is to maintain backward compatibility with badly programmed GL wallpapers. Wallpapers can call SurfaceHolder.setFormat() to request a different format. Change-Id: Ib42b0cf6c7040d1300cad239c3acfd5c4c6cd326
aseSurfaceHolder.java
|
00df32d4396a65752b7b9a2f8ceb6292ed2384cf |
02-Sep-2010 |
Adam Powell <adamp@google.com> |
Handle disabled state for action menu items Change-Id: Id80926aef5f8f2f47703a7b1e3da38e6117edb30
enu/ActionMenuItemView.java
|
f956fd6d1325fcb2e5ce9b8dac95a9a40824ead8 |
27-Aug-2010 |
Amith Yamasani <yamasani@google.com> |
am 4b4114d1: am a90b7f01: Add methods to InputConnection: setComposingRegion() to select a region of text for correction, and getSelectedText() to return the selected text. Merge commit '4b4114d155b4f3d5cc4179934cb6403b1776261d' * commit '4b4114d155b4f3d5cc4179934cb6403b1776261d': Add methods to InputConnection: setComposingRegion() to select a region of text for correction, and getSelectedText()
|
a90b7f0125389b9e1040d2be82aad4ef74ea6071 |
26-Aug-2010 |
Amith Yamasani <yamasani@google.com> |
Add methods to InputConnection: setComposingRegion() to select a region of text for correction, and getSelectedText() to return the selected text. setComposingRegion: The TextView may choose to highlight the text in some way (underline for now) to indicate that the text is selected for correction, if the IME wants to provider alternatives. Choosing an alternative in the IME can then call IC.commitText() to replace the highlighted (not selected) text with a different candidate. This change also ensures that any existing spans/styles are not wiped out. So we can now correct rich text as well. getSelectedText: This is a convenience to get the selected text instead of using extracted text that is more heavy weight. Existing getTextBeforeCursor() and getTextAfterCursor() fail to retrieve the selected text, only what's before and after the selection. Change-Id: Ieb5ecd5ff947ea04958589f501e7bd5228e00fb5
InputConnectionWrapper.java
InputContext.aidl
InputContextCallback.aidl
nputConnectionWrapper.java
|
6c6f575423d6718c3ff322224c1520901ce881e1 |
21-Aug-2010 |
Adam Powell <adamp@google.com> |
More ActionBar/config change tweaks. Preserve open overflow menus Change-Id: Ic8ad2b1e3909fbf84ff4d852ae046a9f9508477c
enu/ActionMenuView.java
enu/MenuPopupHelper.java
|
773b1b97fc0f01efc8cf1e17a1250a9b654b1b85 |
21-Aug-2010 |
Adam Powell <adamp@google.com> |
Make ActionBar menus handle configuration changes gracefully. Change-Id: I2c9ca846143b313ef9d2a01dff81385e0693518d
enu/ActionMenuView.java
|
4d9861e7ec8488634d316b20981464de2ab7b6fe |
17-Aug-2010 |
Adam Powell <adamp@google.com> |
Bug 2923440 - ActionMode buttons show if room by default - different approach. This enforces the new policy if menu items are created programmatically instead of inflated from menu xml. This reverts commit fbb72fdbe58142e0f1f7ffa17f009b0d829b33c3. Change-Id: I102e93b80a3248634e98e0d7dc3321bf1d8b263b
tandaloneActionMode.java
enu/MenuBuilder.java
enu/MenuItemImpl.java
|
fbb72fdbe58142e0f1f7ffa17f009b0d829b33c3 |
17-Aug-2010 |
Adam Powell <adamp@google.com> |
Fix bug 2923440 - ActionMode buttons show as action by default The MenuInflater returned by ActionModes will set the default showAsAction value to "ifRoom" if not otherwise specified. Change-Id: I86045dc4e877a97a3464a1a5f44d8d1e2120b086
tandaloneActionMode.java
|
f6148c53f93978af678cc0559a4417b608a33ae1 |
12-Aug-2010 |
Adam Powell <adamp@google.com> |
Fix bug 2911311 and bug 2911700 Integrate the action bar overflow menu better with the options menu lifecycle. Change-Id: I1e3fdba04b01718c3ee3367f92e5dabe7bc84b5c
tandaloneActionMode.java
enu/ActionMenuView.java
|
3d3da27ab394108fd51771616cca3279baae99d1 |
12-Aug-2010 |
Adam Powell <adamp@google.com> |
Fix bug 2911529 Change-Id: I18d7f5d8a300bbc73ef721c5d4deb200d6a490b8
enu/MenuPopupHelper.java
|
6b336f835d637853800b94689375a03f337139a4 |
11-Aug-2010 |
Adam Powell <adamp@google.com> |
ActionBar overlay mode, height fetching, show/hide Change-Id: Ie931ed26ec885d891d6733132b517a53d95f8491
enu/ActionMenuView.java
|
f75eeb28def26798682748aa5dedabebac86bb6a |
11-Aug-2010 |
Adam Powell <adamp@google.com> |
Fix bug 2908822 - open/closePanel should do the right thing with ActionBars Change-Id: Ic77f9dee864d17046f69c78a1e6d96a49b5c6180
enu/ActionMenuView.java
|
4be0d52125b88dc992a4c500edbe95bf55484e0b |
04-Aug-2010 |
Adam Powell <adamp@google.com> |
Added android.widget.PopupMenu Change-Id: Id507cf93ebd0484f141a0a44266b883c01aa10db
enu/MenuPopupHelper.java
|
1f9c7afc5a06576e327a4b1c12688202f53d9462 |
03-Aug-2010 |
Adam Powell <adamp@google.com> |
Add support for action buttons without an icon. Change-Id: I026bb7463e7a73419dbaf79950d579ba05d04ea8
enu/ActionMenuItemView.java
|
a8a72c38fec3879f5d346840b0d186d5903931b8 |
01-Aug-2010 |
Jeff Sharkey <jsharkey@android.com> |
Populate accessibility field on ActionBar items. When building an ActionMenuItemView, set the content description based on the item title. Fixes http://b/2885106 Change-Id: I101bbc6db7080ce08eed1bbb401c45329da2ab53
enu/ActionMenuItemView.java
|
9168f0b170c6a99371ae46e7d3f5d66c8c4c930d |
03-Aug-2010 |
Adam Powell <adamp@google.com> |
Add ActionMode#getMenuInflater() for easier menu inflation in ActionMode.Callback implementations Change-Id: If9e7ab0d65598bab537add6c6a452a55c093064f
tandaloneActionMode.java
|
c9ae2a24dc1fa274ca0916c91a2e9a2764ba4bb3 |
28-Jul-2010 |
Adam Powell <adamp@google.com> |
Add support for setting action mode titles/subtitles by resource ID Change-Id: Ia0d5234cc16f325eeb29127fb87e2616d67379ec
tandaloneActionMode.java
|
5d27977f9da482627ceb19317a2cd70467aff046 |
28-Jul-2010 |
Adam Powell <adamp@google.com> |
Action modes without action bar Change-Id: I0367ab35e598a17980bd373b30828175f6283acc
tandaloneActionMode.java
|
b366bbae2b5a3009893ef64246e3430cea4b7736 |
20-Jul-2010 |
Adam Powell <adamp@google.com> |
Make sure action bar context modes reserve space for overflow menus on all devices. Change-Id: I393f041efef3852b7f3ee57c6a4c26ba176b2702
enu/ActionMenuView.java
|
8028dd32a4a04154050220dd0693583d5b750330 |
15-Jul-2010 |
Adam Powell <adamp@google.com> |
Overflow menu for action bars. The overflow menu replaces the normal options menu panel for activities with an action bar. It always appears as the rightmost action button and is displayed as a dropdown menu. The menu key summons and dismisses the overflow menu instead of the options panel where applicable. Change-Id: I0b4fa7e36f35ab12e2f0c1d12bec79ccab8cc4b1
enu/ActionMenuView.java
enu/IconMenuView.java
enu/MenuBuilder.java
enu/MenuPopupHelper.java
|
b75fa30aaf03d9e425d150b452501e5df0621351 |
16-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
resolved conflicts for merge of aca672ba to master Change-Id: I7ae11fca0acdbf513a4870226d0d3e3cafbe9a08
|
c5ed5910c9ef066cec6a13bbb404ec57b1e92637 |
15-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for new input sources. Added several new coordinate values to MotionEvents to capture touch major/minor area, tool major/minor area and orientation. Renamed NDK input constants per convention. Added InputDevice class in Java which will eventually provide useful information about available input devices. Added APIs for manufacturing new MotionEvent objects with multiple pointers and all necessary coordinate data. Fixed a bug in the input dispatcher where it could get stuck with a pointer down forever. Fixed a bug in the WindowManager where the input window list could end up containing stale removed windows. Fixed a bug in the WindowManager where the input channel was being removed only after the final animation transition had taken place which caused spurious WINDOW DIED log messages to be printed. Change-Id: Ie55084da319b20aad29b28a0499b8dd98bb5da68
aseInputHandler.java
|
2388ad9eef109fa7f63c196c819c83f0376f0645 |
14-Jul-2010 |
Dianne Hackborn <hackbod@google.com> |
am f8d9379b: am d76b67c3: IME events are now dispatched to native applications. Merge commit 'f8d9379bd834573feca085284970cf686993c330' * commit 'f8d9379bd834573feca085284970cf686993c330': IME events are now dispatched to native applications.
|
d76b67c340d1564abf8d14d976fdaf83bf2b3320 |
14-Jul-2010 |
Dianne Hackborn <hackbod@google.com> |
IME events are now dispatched to native applications. And also: - APIs to show and hide the IME, and control its interaction with the app. - APIs to tell the app when its window resizes and needs to be redrawn. - API to tell the app the content rectangle of its window (to layout around the IME or status bar). There is still a problem with IME interaction -- we need a way for the app to deliver events to the IME before it handles them, so that for example the back key will close the IME instead of finishing the app. Change-Id: I37b75fc2ec533750ef36ca3aedd2f0cc0b5813cd
ootViewSurfaceTaker.java
|
4267534d1c42af847ed0cefd1c88c99f66b36571 |
10-Jul-2010 |
Adam Powell <adamp@google.com> |
Action Bar now supports submenus as popups. Change-Id: I1691c16081b3474ed6d6e406f91f5f74a2dc8fcb
enu/MenuBuilder.java
enu/MenuItemImpl.java
enu/MenuPopupHelper.java
|
1a33274d28a3174b9062ae0dcce77bf1d68cd463 |
09-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
resolved conflicts for merge of 167449e5 to master Change-Id: Ib448e69a726eb45b5c9099d2574e40b8345eee67
|
00fa7bdd69f0868fd17ea7c881c771d785b2fbbd |
03-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
More native input dispatch work. Removed old input dispatch code. Refactored the policy callbacks. Pushed a tiny bit of the power manager state down to native. Fixed long press on MENU. Made the virtual key detection and cancelation a bit more precise. Change-Id: I5d8c1062f7ea0ab3b54c6fadb058c4d5f5a9e02e
aseIWindow.java
|
89e0645b4157961e8c465eb9c819f965fdb453d8 |
24-Jun-2010 |
Adam Powell <adamp@google.com> |
Added context modes to ActionBar API. Change-Id: I7c3e782cbf01be7bc671b377fb4d706040888833
enu/ActionMenuItem.java
enu/ActionMenuView.java
enu/MenuItemImpl.java
|
f92f8686f982c62a609a2087383a77a24d126992 |
23-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
am 98f7aed6: am 1e4b9f39: Remove InputConsumer, replacing with InputQueue. Merge commit '98f7aed66b54c365f816fe990de978f61155cde1' * commit '98f7aed66b54c365f816fe990de978f61155cde1': Remove InputConsumer, replacing with InputQueue.
|
1e4b9f3936d6f357e89360293e05a0e16d5fa440 |
23-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
Remove InputConsumer, replacing with InputQueue. Change-Id: Ib06907278457aaee842b123adc072840ca3602d8
ootViewSurfaceTaker.java
|
320742b15a710ede57862eee170945da26ef0172 |
23-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
am e3e2883f: am e24a60aa: Merge "First stab at attaching native event dispatching." into gingerbread Merge commit 'e3e2883f2232007174ead562610eb01201890d9b' * commit 'e3e2883f2232007174ead562610eb01201890d9b': First stab at attaching native event dispatching.
|
a95e4cb62f3642cb190d032dbf7dc40d9ecc6973 |
19-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
First stab at attaching native event dispatching. Provides the basic infrastructure for a NativeActivity's native code to get an object representing its event stream that can be used to read input events. Still work to do, probably some API changes, and reasonable default key handling (so that for example back will still work). Change-Id: I6db891bc35dc9683181d7708eaed552b955a077e
ootViewSurfaceTaker.java
|
7ade1be822ed05a143b059319dccd5e9f623b56d |
17-Jun-2010 |
Adam Powell <adamp@google.com> |
Action bar button layout changes. Theme attribute added for spacing between action buttons. Action buttons are now allowed to fill up to half of the total action bar's width. Change-Id: Iabbc67e695684529dfae9681d4d9580cd30839d0
enu/ActionMenuView.java
|
96675b1df3969f2d313b68f60ed9fa36805db8ce |
11-Jun-2010 |
Adam Powell <adamp@google.com> |
Merging ActionBar menu with options menu. Options menu items may now specify if they would like to appear in the action bar. Menu items defined in xml may set the showAsAction attribute to one of "never"(default), "ifRoom", or "always". Action buttons are populated as follows: * All showAsAction="always" items become action buttons, even if it would crowd the navigation area of the action bar. * If there is space remaining, showAsAction="ifRoom" items are added until no more will fit comfortably. Action button click events are now handled by the onOptionsItemSelected method used by the standard options menu. The construction of options menus now happens earlier in order to provide data to the action bar. Activities with an action bar can now expect to have onCreateOptionsMenu called when activity start-up is complete. Activity#invalidateOptionsMenu can be used to force a refresh of menu items where the previous API would use ActionBar#updateActionMenu. Change-Id: If52ddf1cf9f6926206bcdeadf42072ea2c24fab9
enu/ActionMenuItemView.java
enu/ActionMenuView.java
enu/IconMenuView.java
enu/MenuBuilder.java
enu/MenuItemImpl.java
|
8e03b7566c42621fda01186b66b019142eb84fbf |
14-Jun-2010 |
Jeff Brown <jeffbrown@google.com> |
resolved conflicts for merge of 9e660c82 to master Change-Id: Ic4bd85cbaa5b9a10dcb474a0dad46490bf967e43
|
46b9ac0ae2162309774a7478cd9d4e578747bfc2 |
23-Apr-2010 |
Jeff Brown <jeffbrown@google.com> |
Native input dispatch rewrite work in progress. The old dispatch mechanism has been left in place and continues to be used by default for now. To enable native input dispatch, edit the ENABLE_NATIVE_DISPATCH constant in WindowManagerPolicy. Includes part of the new input event NDK API. Some details TBD. To wire up input dispatch, as the ViewRoot adds a window to the window session it receives an InputChannel object as an output argument. The InputChannel encapsulates the file descriptors for a shared memory region and two pipe end-points. The ViewRoot then provides the InputChannel to the InputQueue. Behind the scenes, InputQueue simply attaches handlers to the native PollLoop object that underlies the MessageQueue. This way MessageQueue doesn't need to know anything about input dispatch per-se, it just exposes (in native code) a PollLoop that other components can use to monitor file descriptor state changes. There can be zero or more targets for any given input event. Each input target is specified by its input channel and some parameters including flags, an X/Y coordinate offset, and the dispatch timeout. An input target can request either synchronous dispatch (for foreground apps) or asynchronous dispatch (fire-and-forget for wallpapers and "outside" targets). Currently, finding the appropriate input targets for an event requires a call back into the WindowManagerServer from native code. In the future this will be refactored to avoid most of these callbacks except as required to handle pending focus transitions. End-to-end event dispatch mostly works! To do: event injection, rate limiting, ANRs, testing, optimization, etc. Change-Id: I8c36b2b9e0a2d27392040ecda0f51b636456de25
aseInputHandler.java
|
9b081a809a7e39c6877a9606289ada4680f3d91f |
19-May-2010 |
Dianne Hackborn <hackbod@google.com> |
resolved conflicts for merge of 8b625a95 to master Change-Id: I03264c6aad2d87629f9154f5c390cb36ce08efba
|
dc8a7f69d7df5f1ca29763995a0d55acf7936fc6 |
10-May-2010 |
Dianne Hackborn <hackbod@google.com> |
Add new API to take over a window's Surface. Change-Id: Iad6245faadc95f19ea63c8e229a1c02e9188f69e
aseSurfaceHolder.java
ootViewSurfaceTaker.java
|
33b974393b6fadcefc896ec4a0f9b66724f61e9f |
20-Apr-2010 |
Adam Powell <adamp@google.com> |
ActionBar added to framework, integrated with Activity and styles. Added onClick attribute support to menus in MenuInflater. Change-Id: I739771b4f249d87a0d8b15969f3d526b099067a1
enu/ActionMenu.java
enu/ActionMenuItem.java
|
d135f74b972b88de2ae8b11b3ada886d29c1e25d |
05-May-2010 |
Adam Powell <adamp@google.com> |
am 151af19b: Fix bug 2651076 - Catch/log ActivityNotFoundException in MenuItemImpl.invoke() Merge commit '151af19bf409a47424ddaa51e1ac4a0c532c4eb6' into froyo-plus-aosp * commit '151af19bf409a47424ddaa51e1ac4a0c532c4eb6': Fix bug 2651076 - Catch/log ActivityNotFoundException in MenuItemImpl.invoke()
|
151af19bf409a47424ddaa51e1ac4a0c532c4eb6 |
04-May-2010 |
Adam Powell <adamp@google.com> |
Fix bug 2651076 - Catch/log ActivityNotFoundException in MenuItemImpl.invoke() Change-Id: I841a37349fbc6af33073aaecae903eb8999cc5bd
enu/MenuItemImpl.java
|
128f1a87c55a291109ce521a92308c186e5d2db5 |
03-Apr-2010 |
Adam Powell <adamp@google.com> |
am 6024ca5c: Fix bug 2185026 - back button in context menu now calls onContextMenuClosed() Merge commit '6024ca5c90203b6c33acc6adfbf7e4e613549a0a' into froyo-plus-aosp * commit '6024ca5c90203b6c33acc6adfbf7e4e613549a0a': Fix bug 2185026 - back button in context menu now calls onContextMenuClosed()
|
6024ca5c90203b6c33acc6adfbf7e4e613549a0a |
03-Apr-2010 |
Adam Powell <adamp@google.com> |
Fix bug 2185026 - back button in context menu now calls onContextMenuClosed() Change-Id: I6c16879a8ad8e4651d21f639a620a936bf991f8d
enu/MenuDialogHelper.java
|
c89704a77f9c51ebd8c1cc6863e15ff402a56c86 |
29-Mar-2010 |
The Android Open Source Project <initial-contribution@android.com> |
merge from open-source master Change-Id: I6a8109d11dabc579501c598ab2927cf802797130
|
22cb2f46fdbb9a904ac394f488278fb47e2d4734 |
16-Mar-2010 |
Adam Powell <adamp@google.com> |
Fix monkey bug 2512055 Don't blow up when there aren't any menu items to layout in IconMenuView. Change-Id: Ief08f0f8ed89aec4959d4d80cfd066dbe92dc3aa
enu/IconMenuView.java
|
15a4d2ffd04dc6c70f2cd17dae12ac6bc14c69ab |
12-Mar-2010 |
Kenny Root <kroot@google.com> |
Add correct copyright headers to multiple files Format for the list of changes shows the origin commit reference followed by the file name. 33931-p9 awt/org/apache/harmony/awt/gl/font/AndroidGlyphVector.java 33931-p9 awt/org/apache/harmony/awt/gl/image/PngDecoderJava.java 133776-p9 core/java/android/app/IntentService.java 127013-p9 core/java/android/appwidget/AppWidgetHost.java 27863-p9 core/java/android/bluetooth/BluetoothAudioGateway.java 60765-p9 core/java/android/content/SyncResult.java 43920-p9 core/java/android/content/pm/ActivityInfo.java 43920-p9 core/java/android/content/pm/ApplicationInfo.java 43920-p9 core/java/android/content/pm/InstrumentationInfo.java 43920-p9 core/java/android/content/pm/PackageInfo.java 44103-p9 core/java/android/content/pm/PackageItemInfo.java 68960-p9 core/java/android/content/pm/PackageStats.java 43920-p9 core/java/android/content/pm/ResolveInfo.java 43920-p9 core/java/android/content/pm/ServiceInfo.java 60641-p9 core/java/android/content/res/Configuration.java 60734-p9 core/java/android/content/res/TypedArray.java 137672-p9 core/java/android/inputmethodservice/ExtractButton.java 123112-p9 core/java/android/inputmethodservice/ExtractEditText.java 119291-p9 core/java/android/inputmethodservice/IInputMethodSessionWrapper.java 112946-p9 core/java/android/inputmethodservice/IInputMethodWrapper.java 115078-p9 core/java/android/os/BatteryStats.java 124790-p9 core/java/android/text/style/UpdateAppearance.java 45083-p9 core/java/android/view/RawInputEvent.java 101491-p9 core/java/android/view/inputmethod/EditorInfo.java 114701-p9 core/java/android/view/inputmethod/ExtractedText.java 123112-p9 core/java/android/view/inputmethod/ExtractedTextRequest.java 119291-p9 core/java/com/android/internal/os/HandlerCaller.java 129279-p9 core/java/com/android/internal/os/PkgUsageStats.java 114701-p9 core/java/com/android/internal/view/IInputConnectionWrapper.java 114701-p9 core/java/com/android/internal/view/InputConnectionWrapper.java 84364-p9 opengl/java/android/opengl/EGLLogWrapper.java 11355-p9 opengl/tools/glgen/src/CFunc.java 11355-p9 opengl/tools/glgen/src/CType.java 11355-p9 opengl/tools/glgen/src/CodeEmitter.java 11355-p9 opengl/tools/glgen/src/GenerateGL.java 11355-p9 opengl/tools/glgen/src/JFunc.java 11355-p9 opengl/tools/glgen/src/JType.java 11355-p9 opengl/tools/glgen/src/JniCodeEmitter.java 11355-p9 opengl/tools/glgen/src/ParameterChecker.java 57236-p9 services/java/com/android/server/status/AnimatedImageView.java 66754-p9 services/java/com/android/server/status/CloseDragHandle.java 57188-p9 services/java/com/android/server/status/DateView.java 46928-p9 services/java/com/android/server/status/ExpandedView.java 70590-p9 services/java/com/android/server/status/FixedSizeDrawable.java 45968-p9 services/java/com/android/server/status/IconData.java 57470-p9 services/java/com/android/server/status/IconMerger.java 82719-p9 services/java/com/android/server/status/LatestItemView.java 45968-p9 services/java/com/android/server/status/NotificationData.java 66754-p9 services/java/com/android/server/status/NotificationLinearLayout.java 57458-p9 services/java/com/android/server/status/NotificationViewList.java 45968-p9 services/java/com/android/server/status/StatusBarException.java 45968-p9 services/java/com/android/server/status/StatusBarIcon.java 46130-p9 services/java/com/android/server/status/StatusBarNotification.java 45968-p9 services/java/com/android/server/status/StatusBarView.java 46199-p9 services/java/com/android/server/status/Ticker.java 62286-p9 services/java/com/android/server/status/TickerView.java 57188-p9 services/java/com/android/server/status/TrackingView.java 86041-p9 telephony/java/android/telephony/PhoneStateListener.java 87020-p9 telephony/java/com/android/internal/telephony/TelephonyIntents.java 136269-p9 telephony/java/com/android/internal/telephony/gsm/SpnOverride.java 34409-p9 tests/FrameworkTest/src/com/android/frameworktest/FrameworkTestApplication.java 55717-p9 tests/FrameworkTest/src/com/android/frameworktest/performance/InvalidateCycle.java 128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityLandscape.java 128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityPortrait.java 129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollablePanScan.java 129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollableResize.java 129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollablePanScan.java 129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollableResize.java 128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityPanScan.java 128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityResize.java 127341-p9 tests/ImfTest/src/com/android/imftest/samples/ButtonActivity.java 129347-p9 tests/ImfTest/src/com/android/imftest/samples/DialogActivity.java 129372-p9 tests/ImfTest/src/com/android/imftest/samples/EditTextActivityDialog.java 128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityNoScrollPanScan.java 128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollPanScan.java 128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollResize.java 128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivityNotSelected.java 128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivitySelected.java 25959-p9 tests/framework-tests/src/android/test/FrameworkTests.java 46162-p9 tests/framework-tests/src/com/android/internal/http/multipart/MultipartTest.java 77101-p9 tools/layoutlib/bridge/tests/com/android/layoutlib/bridge/NinePatchTest.java 9788976b1465ce982b5ae7c741345edd0ecd9322 core/java/android/accounts/AuthenticatorDescription.java 53332883543868fb83e111a07306368b7772b340 core/java/android/app/UiModeManager.java 93e7e22ec91dbc641d10ca6d70423e1357a95bba core/java/android/app/FullBackupAgent.java 328c0e7986aa6bb7752ec6de3da9c999920bb55f core/java/android/content/CursorEntityIterator.java 307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncQueue.java 307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncOperation.java eb034652c2037a47ebfd99779e8383bb8bb528af core/java/android/content/pm/LabeledIntent.java 49237345d83e62fdb9eb8d50b13ad086636a04fa core/java/android/content/pm/FeatureInfo.java a2b6c3775ed6b8924232d6a01bae4a19740a15f8 core/java/android/content/pm/PackageInfoLite.java 3ecd5f437580e49d80beecd29489d5fb1f7a7db0 core/java/android/content/pm/RegisteredServicesCacheListener.java 5ebbb4a6b3e16f711735ae0615b9a9ea64faad38 core/java/android/content/pm/XmlSerializerAndParser.java c4516a7b62de525e3d6d5e76851bdfaf12c11f05 core/java/android/database/sqlite/SQLiteTransactionListener.java 9bbc21a773cbdfbef2876a75c32bda5839647751 core/java/com/android/internal/backup/LocalTransport.java 21f1bd17b2dfe361acbb28453b3f3b1a110932fa core/java/com/android/internal/content/PackageMonitor.java 4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseSurfaceHolder.java 4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseIWindow.java e540833fdff4d58e37c9ba859388e24e2945ed45 core/java/com/android/internal/os/SamplingProfilerIntegration.java 192ab903887bbb8e7c7b6da5c581573850e30f46 core/tests/coretests/src/android/widget/expandablelistview/PositionTesterContextMenuListener.java 1619367ab823150fa8856d419abe02ceb75886f1 media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/MediaProfileReader.java 27f8002e591b5c579f75b2580183b5d1c4219cd4 opengl/tools/glgen/stubs/gles11/glGetString.java 560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetProgramInfoLog.java 560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetShaderInfoLog.java 560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glShaderSource.java 1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GenerateGLES.java 1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/Jsr239CodeEmitter.java 1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GLESCodeEmitter.java 69e21f5f6e0d04539cd92848ea009dd615d88c2c opengl/tests/gldual/src/com/android/gldual/TriangleRenderer.java c028be4f3b8c7476b46859f66c3f33d528adf181 packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java 7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerMeasurement.java 7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestActivity.java 7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestRunner.java df8a3f31d871db25e952972c2eb346a71186e9e3 tests/BrowserTestPlugin/src/com/android/testplugin/TestPlugin.java cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ActivityManagerPermissionTests.java cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ServiceManagerPermissionTests.java cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/WindowManagerPermissionTests.java Copyright header moved to top in following file: core/tests/coretests/src/android/widget/ListViewTest.java Change-Id: I3c3198be5a0ba36e18679ed834170432bf0b8418
aseIWindow.java
aseSurfaceHolder.java
InputConnectionWrapper.java
nputConnectionWrapper.java
|
c9b21c1a5358446fe1ba28fdf06fe6f9fbdd091e |
12-Mar-2010 |
Kenny Root <kroot@google.com> |
Add copyright header for new file Change-Id: I441c4e002eb8729e7e0ae7a2ab6a38d5dffa0049
indowManagerPolicyThread.java
|
ac3587d7ced544091264a35249dbd3f9531a3cab |
11-Mar-2010 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2461567: Home screen redraw messed up Make sure that we have a window redraw itself after resizing its surface. Also includes a little optimization to avoid having an extra thread for the ImageWallpaper. Change-Id: I88d1eb66e3116077f48e6f9086a5b6459505ef69
indowManagerPolicyThread.java
|
0c33ed2992b2eb484c229fd3322df14d97c10caa |
23-Feb-2010 |
Devin Taylor <devin.taylor@garmin.com> |
Fix Memory Leak When Switching Input Methods Fixes a memory leak when input methods are switched. Uses a variety of methods to avoid holding a reference to the InputMethodService which created the binders, which was leaking those InputMethodServices. See http://code.google.com/p/android/issues/detail?id=6661 for reproduction steps.
InputMethodSession.aidl
|
e36d6e277e49475076b7872d36ea6a5c5b996e9d |
18-Feb-2010 |
Dianne Hackborn <hackbod@google.com> |
Work on issue #2263557: PMF3000 showing hybrid of portrait and landscape modes This is a bunch of reworking of how configuration changes are handled: - When orientation is changing (for whatever reason), the window manager no longer tries to pre-emptively compute a new configuration. Instead, it just determines change is happening and tells the window manager. - The activity manager is now responsible for giving the window manager the final configuration it is using. This is both so it knows whem the activity manager is done with its configuration updates, and so the window manager can use the "real" configuration. - When an orientation or other configuration change is happening, freeze the screen and keep it frozen until the activity manager has given us the final configuration. - The window manager can now send new configurations to its clients during its layout pass, as part of a resize, if it has determined that it has changed. This allows for a new View.onConfigurationChanged() API for any view to easily find out when the configuration has changed. - ViewRoot now also works with the activity thread to make sure the process's current resources are updated to the new configuration when it receives one from a window. This ensures that at the time onConfigurationChanged() and other view callbacks are happening, the correct configuration is in force. - There is now a sequence number associated with Configuration, which ActivityThread uses to avoid using stale configurations. This is needed now that it can receive configurations asynchronously from both the window manager and activity manager. - The hack for keeping the locale has been removed, and underlying problem fixed by having Configuration initialize its locale to "unknown" instead of a valid default value.
aseIWindow.java
|
980a938c1c9a6a5791a8240e5a1e6638ab28dc77 |
09-Jan-2010 |
Romain Guy <romainguy@android.com> |
Deprecate fill_parent and introduce match_parent. Bug: #2361749.
enu/IconMenuItemView.java
|
9db3d07b9620b4269ab33f78604a36327e536ce1 |
13-Nov-2009 |
Jean-Baptiste Queru <jbq@google.com> |
eclair snapshot
aseIWindow.java
aseSurfaceHolder.java
enu/IconMenuView.java
enu/MenuBuilder.java
enu/MenuDialogHelper.java
|
bf6956b1d95442e9d9c483894d578fe6b7044cbb |
10-Nov-2009 |
Marco Nelissen <marcone@google.com> |
Add a way for wallpapers to know the delta between virtual screens.
aseIWindow.java
|
7580493b014a2c7ea883cd291255798dc72ebbff |
21-Oct-2009 |
Dianne Hackborn <hackbod@google.com> |
Implement feature #2117336: Create event communication APIs for live wallpaper Note: currently only implements an async version (no result), and not yet actually tested. Change-Id: Id47ed045a4b0eb309ea8c58daf41a0e03eff1d3a
aseIWindow.java
|
e0fc838ebc18e327a399902cacae16bdbbc09627 |
24-Sep-2009 |
Nicolas Roard <nicolas@android.com> |
Fix the shortcuts
enu/MenuBuilder.java
|
ffa424800d0338b8b894aef2ea1e3e3344cbda7a |
24-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2133206: dialogs/menus should auto-dismiss when screen turns off Lot of infrastructure for more things to go away when "clear system dialogs" happens, and now do this when we turn on the lock screen. Change-Id: I567130296fe47ce82df065ed58ef21b37416ceaf
aseIWindow.java
|
8d37426c754e9822feaa8c6cc0b7c13e8523e217 |
15-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Various fixed for back key handling. My last change was far from perfect. Hopefully this gets us a little closer. Change-Id: I413e55b6af42400b565de3040859d25d668bc9d2
enu/MenuDialogHelper.java
|
c2974809373697147cbe5754835cc871fb93aef1 |
14-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #2116977: buttons are huge and bent Now that we are using preloaded drawables in compatibilty mode, when constructing them from their constant state we need to set the new drawable's target density appropriately. Change-Id: I3665cbea09d38b9ac5f45f8c380dc8641f86b266
enu/IconMenuView.java
|
19382ac1a4e4e7c23a1346d299368763f149de9c |
12-Sep-2009 |
Dianne Hackborn <hackbod@google.com> |
Some optizations to wallpaper drawing/scrolling. First, fix some issues with the final wallpaper bitmap we use: ensure it is always 16bpp, and make sure dithering of its bitmap is turned off. We take of dithering when loading, to make sure we don't use it when drawing. Also add new APIs to return the wallpaper with the equivalent of Launcher's old FastBitmapDrawable. As doing this, also load the default wallpaper the same way as custom ones, taking care to resize it as needed at load time. Finally implement a mechanism for the window manager to wait for the wallpaper to redraw at its new position before returning from the application's call to change the offset. This ensures that the wallpaper better tracks the application. Note that there is a timeout in this wait that is relatively short, and if it expires we will run for a while without waiting. Change-Id: Ife449437746da85958bd447e0a6cf3d2223b398c
aseIWindow.java
|
8df8b2b405c60cacf7a66c4e2ca078dd3d7ec7bd |
18-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Allow wallpapers to get touch events.
aseIWindow.java
|
317a6280cc109e873646e4652be1582d870eedfd |
14-Aug-2009 |
Mathias Agopian <mathias@google.com> |
Surface::GPU and Surface::HARDWARE are now deprecated; they will be set automatically if needed. this also ripples into the window manager API by making some constant there deprecated as well.
aseSurfaceHolder.java
|
72c82ab9923025a91bbabb32e56bfea27bfd083b |
12-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Report wallpaper offset to the wallpaper, use this in the image wallpaper. Wallpapers can now be just the size of the screen, and get told when their scroll position should change to do the updating on their own.
aseIWindow.java
|
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 |
09-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Very primitive wallpapers in a surface. This is all of the basic pieces: - The WallpaperService now creates a surface with the window manager for its contents. - There is a simple service that displays a bitmap. - The wallpaper manager takes care of starting and stopping the service. - The window manager knows about wallpaper windows and how to layer them with the windows that want to be shown on top of wallpaper. Lots and lots of issues remain, but at this point you can actually write a wallpaper service, select it in the UI, and see it behind an activity.
aseIWindow.java
aseSurfaceHolder.java
|
843ef36f7b96cc19ea7d2996b7c8661b41ec3452 |
20-May-2009 |
Jean-Baptiste Queru <jbq@google.com> |
donut snapshot
enu/IconMenuView.java
|
809a7f6080312f3e12f1a3a30eacf0e0c7627305 |
15-May-2009 |
Romain Guy <romainguy@android.com> |
New feature to track down #1846038. Adds the ability to export flags encoded in int values so as to make them human readable in HierarchyViewer.
enu/IconMenuView.java
|
870a2b015645ef5086af6a5de31dc482e7193214 |
25-Mar-2009 |
Romain Guy <> |
Automated import from //branches/donutburger/...@142470,142470
enu/MenuDialogHelper.java
|
edbabeb7fabfb3c7793b565cdaaf656e5e332efe |
25-Mar-2009 |
Romain Guy <> |
Automated import from //branches/cupcake/...@142469,142469
enu/MenuDialogHelper.java
|
105925376f8d0f6b318c9938c7b83ef7fef094da |
19-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake_rel/...@140373
enu/IconMenuItemView.java
enu/IconMenuView.java
|
b2a3dd88a53cc8c6d19f6dc8ec4f3d6c4abd9b54 |
09-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@137197
InputMethodManager.aidl
|
4df2423a947bcd3f024cc3d3a1a315a8dc428598 |
05-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@136594
InputMethod.aidl
InputMethodManager.aidl
InputMethodSession.aidl
|
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 |
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
InputConnectionCallback.aidl
InputConnectionWrapper.java
InputContext.aidl
InputContextCallback.aidl
InputMethod.aidl
InputMethodCallback.aidl
InputMethodClient.aidl
InputMethodManager.aidl
InputMethodSession.aidl
nputBindResult.aidl
nputBindResult.java
nputConnectionWrapper.java
enu/ContextMenuBuilder.java
enu/ExpandedMenuView.java
enu/IconMenuItemView.java
enu/IconMenuView.java
enu/ListMenuItemView.java
enu/MenuBuilder.java
enu/MenuDialogHelper.java
enu/MenuItemImpl.java
enu/MenuView.java
enu/SubMenuBuilder.java
ackage.html
|
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 |
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
InputConnectionCallback.aidl
InputConnectionWrapper.java
InputContext.aidl
InputContextCallback.aidl
InputMethod.aidl
InputMethodCallback.aidl
InputMethodClient.aidl
InputMethodManager.aidl
InputMethodSession.aidl
nputBindResult.aidl
nputBindResult.java
nputConnectionWrapper.java
enu/ContextMenuBuilder.java
enu/ExpandedMenuView.java
enu/IconMenuItemView.java
enu/IconMenuView.java
enu/ListMenuItemView.java
enu/MenuBuilder.java
enu/MenuDialogHelper.java
enu/MenuItemImpl.java
enu/MenuView.java
enu/SubMenuBuilder.java
ackage.html
|
076357b8567458d4b6dfdcf839ef751634cd2bfb |
03-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@132589
InputConnectionWrapper.java
InputContext.aidl
nputConnectionWrapper.java
enu/ExpandedMenuView.java
|
3dec7d563a2f3e1eb967ce2054a00b6620e3558c |
03-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@137055
InputConnectionWrapper.java
InputContext.aidl
nputConnectionWrapper.java
enu/ExpandedMenuView.java
|
3001a035439d8134a7d70d796376d1dfbff3cdcd |
19-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@132276
InputConnectionWrapper.java
|
da996f390e17e16f2dfa60e972e7ebc4f868f37e |
13-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@131421
InputConnectionWrapper.java
InputContext.aidl
InputMethodManager.aidl
nputConnectionWrapper.java
|
d24b8183b93e781080b2c16c487e60d51c12da31 |
11-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@130745
InputConnectionWrapper.java
InputContext.aidl
InputMethod.aidl
InputMethodManager.aidl
nputConnectionWrapper.java
enu/IconMenuItemView.java
enu/ListMenuItemView.java
|
f1e484acb594a726fb57ad0ae4cfe902c7f35858 |
22-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@127436
InputConnectionWrapper.java
InputContext.aidl
nputConnectionWrapper.java
|
22f7dfd23490a3de2f21ff96949ba47003aac8f8 |
20-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@127101
enu/IconMenuItemView.java
enu/ListMenuItemView.java
enu/MenuBuilder.java
|
9266c558bf1d21ff647525ff99f7dadbca417309 |
16-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@126645
InputMethod.aidl
InputMethodManager.aidl
|
b798689749c64baba81f02e10cf2157c747d6b46 |
10-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@125939
InputConnectionWrapper.java
InputContext.aidl
InputMethodManager.aidl
InputMethodSession.aidl
nputConnectionWrapper.java
enu/MenuItemImpl.java
|
f013e1afd1e68af5e3b868c26a653bbfb39538f8 |
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
InputConnectionCallback.aidl
InputConnectionWrapper.java
InputContext.aidl
InputContextCallback.aidl
InputMethod.aidl
InputMethodCallback.aidl
InputMethodClient.aidl
InputMethodManager.aidl
InputMethodSession.aidl
nputBindResult.aidl
nputBindResult.java
nputConnectionWrapper.java
enu/IconMenuItemView.java
enu/IconMenuView.java
enu/MenuBuilder.java
enu/MenuDialogHelper.java
enu/MenuItemImpl.java
ackage.html
|
54b6cfa9a9e5b861a9930af873580d6dc20f773c |
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
enu/ContextMenuBuilder.java
enu/ExpandedMenuView.java
enu/IconMenuItemView.java
enu/IconMenuView.java
enu/ListMenuItemView.java
enu/MenuBuilder.java
enu/MenuDialogHelper.java
enu/MenuItemImpl.java
enu/MenuView.java
enu/SubMenuBuilder.java
|