The current gralloc allocates buffer memory for render targets that will typically have NPOT dimensions. Assuming that the vendor driver supports converting the resulting NPOT android_native_buffer_t to a NPOT EGLImage, SurfaceFlinger calls glEGLImageTargetTexture2DOES(), and uses glGetError() to test whether the GL can support creating an EGL target texture with the specified NPOT EGLImage. If it is supported, the DIRECT_TEXTURE flag remains set, otherwise it is cleared.
Tangentially, if the driver advertises the GL_ARB_texture_non_power_of_two extension, the NPOT_EXTENSION flag is set, otherwise it is cleared.
If the driver supported creating an EGL target texture from a NPOT source EGLImage, it implicitly creates a NPOT texture. This does not need any glScalef() texture coordinate correction in LayerBase::drawWithOpenGL(). However, the same driver may not advertise the GL_ARB_texture_non_power_of_two extension nor generally support NPOT textures that were not derived from EGLImages. So SurfaceFlinger may flag only DIRECT_TEXTURE, not NPOT_EXTENSION.
Therefore, the test in LayerBase::drawWithOpenGL() should only perform the glScalef() if neither NPOT_EXTENSION or DIRECT_TEXTURE are flagged. Otherwise scaling is applied to NPOT EGL target textures when none is required.
* changes:
Fix 2016808. We used to send the new scale/scroll info to the UI thread after WebCore finish the first layout. As the picture in the UI thread is still the previous one, if there is a UI update happened before we generate the new picture, the new scale/scroll will be applied to the old picture.
WebCore finish the first layout. As the picture in the UI thread is still
the previous one, if there is a UI update happened before we generate the new
picture, the new scale/scroll will be applied to the old picture.
On the other hand, we do want to trigger the resize for the new page after
the first layout. e.g. The page was at nytimes.com. Now user types google.com.
google.com is first layout in the wide viewport where nytimes.com is. We dont
want to show that picture. We would like to show the fit to screen version of
google.com as the first picture.
Remove the SnapToAnchor code which is left over from previous zoom attempt.
The Intent.EXTRA_KEY_CONFIRM extra can be set to require user confirmation before shutting down.
The ACTION_REQUEST_SHUTDOWN Intent is protected by android.permission.SHUTDOWN.
Signed-off-by: Mike Lockwood <lockwood@android.com>
Merge commit 'b91e2b0292f9f4f76175a18e6e3cf392f3967ae8'
* commit 'b91e2b0292f9f4f76175a18e6e3cf392f3967ae8':
Special-case search within the browser to not show the app icon
Merge commit '9c71716e3de9b6a7e1830cae13da35ebdeeaaa80'
* commit '9c71716e3de9b6a7e1830cae13da35ebdeeaaa80':
Fixing bug #2023024 - there is an out of bounds exception that
Merge commit '41c104339951e0e5e78240e1f48455c21b3ba5fd'
* commit '41c104339951e0e5e78240e1f48455c21b3ba5fd':
Fix MulticastLock API to match WifiLock API.
* changes:
check for null native objects, which never happens on a real subclass (we throw in that case) but can happen because we allow the callers to create the base class from java.
Merge commit '0067057c31720f64926d6ee3d841b15dc197d2df'
* commit '0067057c31720f64926d6ee3d841b15dc197d2df':
Fix the TabWidget to display custom views for the tabs better when the tabs have different sizes.
Merge commit 'b307c8945d4bf8d843445f3cc6d727f4e43d90f0'
* commit 'b307c8945d4bf8d843445f3cc6d727f4e43d90f0':
Fix bug 1994955 where PHONE_TYPE_CDMA was 0 and it should be 2 and added RILConstants.NO_PHONE.
When the suggstion provider is in a different package from the searchable
activity, the icons stored for shortcuts used the package of the
activity instead of the provider.
Fixes http://b/issue?id=2023993
Also...
+ stop daemons before getting server IP;
+ remove setForeground();
+ add the DBG flag for Log.d calls.
PatchSet 3:
+ add CHALLENGE_ERROR and REMOTE_HUNG_UP to VpnManager
+ broadcast new error codes in VpnService
+ check local IP change instead of dns change
+ move removeStates() to VpnService.onFinalCleanUp()
PatchSet 7:
+ add encryption flag to PptpProfile
+ PptpService and MtpdHelper are revised accordingly
The drawing matrix used in onDraw() is mDrawMatrix, but in setImageMatrix()
only mMatrix is updated. We need to call configureBounds() to update
mDrawMatrix if it was null. The is found in bug 2023281.
If the new system settings value for AIRPLANE_MODE_TOGGLEABLE_RADIOS
contains RADIO_WIFI, then the user will be allowed to enable Wifi
while in airplane mode.
Turning on airplane mode will still disable Wifi, but the user will
be free to reenable it in the Settings app.
Signed-off-by: Mike Lockwood <lockwood@android.com>
The issue this change fixes is that phone status bar shows full
signal strength bar even when phone is in bad signal area. The
root cause is that the signal strenth is incorrectly interpreted.
It turns out we were not returning the density for anything retrieved from a
TypedArray... which basically means any bitmap references from a layout or style...!!!
This is now fixed.
Also fiddle with the density compatibility mode to turn on smoothing in certain situations,
helping the look of things when they need to scale and we couldn't do the scaling at
load time.