Skip to content
This repository has been archived by the owner on Apr 3, 2020. It is now read-only.

[Android] Enable copy picture only in contenteditable #249

Open
wants to merge 665 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
665 commits
Select commit Hold shift + click to select a range
86fb78f
Disable "Ok Google" hotwording in open source builds by default.
mgiuca Jun 29, 2015
12241d9
Revert "Disable "Ok Google" hotwording in open source builds by defau…
mgiuca Jun 29, 2015
528e8f0
Disable "Ok Google" hotwording in open source builds by default.
mgiuca Jun 29, 2015
1ccccbb
Rebuild PropertyTrees When Layer Attach to New LayerTreeHost
weiliangc Jun 29, 2015
10234d2
win10: Fix various ui glitches
sgraham Jun 29, 2015
3af5faf
Remove custom material styling for EditText in preferences
Jun 29, 2015
efb0008
Merge to M44 adding of Chromoting extension IDs to approved list of m…
AnandChakravarty Jun 29, 2015
98dc1b5
Hide "Add user" button when enrollment screen is active.
dzhioev Jun 29, 2015
50d2229
Incrementing VERSION to 44.0.2403.70
Jun 30, 2015
593db96
Allow for an existing bad proxy to be given a new retry delay.
scott-little Jun 30, 2015
e095963
Do not query AX tree if there is no navigation yet
Jun 30, 2015
bb77659
Fix use of ShellDispatch.NameSpace -- may succeed but fail.
GregTho Jun 30, 2015
f02075c
Stop relying on Android constants for Android bookmark provider.
liutikas Jun 30, 2015
4fcb3d4
Incrementing VERSION to 44.0.2403.71
Jun 30, 2015
81e1f62
Incrementing VERSION to 44.0.2403.72
Jun 30, 2015
3349c07
Updating XTBs based on .GRDs from branch 2403
Jun 30, 2015
df54540
Add the ability to determine whether Chrome can possibly request an A…
Jun 30, 2015
6580e2b
Fix webrtc in M due to over eager permission check.
Jun 30, 2015
40e0af7
Supress proguard warnings for GooglePlayServicesUtil.
liutikas Jun 30, 2015
8e40b6a
Incrementing VERSION to 44.0.2403.73
Jul 1, 2015
7dd2030
Fix FocusIn/FocusOut handling: only ignore NotifyPointer events.
shuchen-google Jul 1, 2015
b78b406
Drive API: Handle errors in JSON body for batch file uploading.
hirono-chromium Jul 1, 2015
677ac49
Incrementing VERSION to 44.0.2403.74
Jul 1, 2015
1e742ce
Fix M permission oversight where webrtc asks for mic and video.
Jul 1, 2015
4fa6622
Updating XTBs based on .GRDs from branch 2403
Jul 1, 2015
590f51a
Incrementing VERSION to 44.0.2403.75
Jul 2, 2015
093b8df
Merge M44: Add child processes created outside Job object as peer pro…
wfh-chromium Jul 2, 2015
c54a5a3
Gallery: Set transformation to preview canvas of adjustment effect.
hirono-chromium Jul 2, 2015
73fee73
(Merge to M44) Reland: Cleanup: Move ping-protocol related code out o…
mfalken Jul 2, 2015
333c999
Ensure password scraping does not override credentials passing API
Jul 2, 2015
de9f6a8
(Merge to M44) Service Worker: Add UMA for stalled in STOPPING
mfalken Jul 2, 2015
b3904f1
Support DOM3 |key| and |code| in chromeos::EventRewriter.
Jul 2, 2015
26fb7cb
Incrementing VERSION to 44.0.2403.76
Jul 3, 2015
953c208
Speculative fix for ChromeWebViewGuestDelegate crash.
Jul 3, 2015
78c76f4
Incrementing VERSION to 44.0.2403.77
Jul 4, 2015
da0a520
Incrementing VERSION to 44.0.2403.78
Jul 5, 2015
5cc7820
Incrementing VERSION to 44.0.2403.79
Jul 6, 2015
867bda3
Revert "Add service flags to the AccountTrackerService."
Jul 6, 2015
d1e7e6a
Simplify SRT menu strings
Jul 6, 2015
c9b03b5
New look for the global error bubbles.
Jul 6, 2015
e09d1fa
Added a missing include from previous merge
Jul 6, 2015
d07a287
Updating XTBs based on .GRDs from branch 2403
Jul 6, 2015
e0f2428
[Merge to M44] Reintroduce DefaultBrowser.State UMA stat.
Jul 6, 2015
b73e84a
Incrementing VERSION to 44.0.2403.80
Jul 7, 2015
aed9d85
Merge to M44: "Fix race condition on background rendering after sink …
dalecurtis Jul 7, 2015
87abc52
Remove ACCESS_WIFI_STATE permission from Android builds
Jul 7, 2015
575c938
Merge to M44: Add USB keyboard detection reporting and disable flag
Jul 7, 2015
9772e9f
Plumb a way to pass version info to Java
Jul 7, 2015
2d8667e
Revert "Merge to M44: Add USB keyboard detection reporting and disabl…
Jul 7, 2015
f1bbe4e
[Contextual Search] Fix race condition with Tab Switcher.
liutikas Jul 7, 2015
4bd1d08
Add interface for requesting file access
Jul 7, 2015
7cac640
Prompt user for file access permission before download starts
Jul 7, 2015
914b8d0
Ensure we have file access before loading file URLs.
Jul 7, 2015
2e818dc
Fix 44 build from mismatched signature in MockDownloadController.
Jul 7, 2015
1f63940
Fix disappearing tasks when upgrading from M43 to M44.
Jul 7, 2015
18e60a9
Incrementing VERSION to 44.0.2403.81
Jul 8, 2015
286fa83
Adjust the text size using page scale information
Jul 8, 2015
edf2e47
Incrementing VERSION to 44.0.2403.82
Jul 8, 2015
e5bddc2
Incrementing VERSION to 44.0.2403.83
Jul 8, 2015
7729bab
Need skipToLoginForTesting for gaia login.
achuith Jul 8, 2015
a614b97
Incrementing VERSION to 44.0.2403.84
Jul 8, 2015
34713a8
Marked the enrollment screen completed if AIDE permission is granted.
saittam Jul 8, 2015
de0d291
Incrementing VERSION to 44.0.2403.85
Jul 8, 2015
e35ea96
Updating XTBs based on .GRDs from branch 2403
Jul 9, 2015
bc3bae5
Flash Fullscreen GetScreenSize() workaround for >18.0.0.200
miu-chromium Jul 9, 2015
58b5047
Incrementing VERSION to 44.0.2403.86
Jul 10, 2015
415028e
Merge "Fix TrackTerminatedExtension UAF"
Jul 10, 2015
ea65713
[Downloads] Prevent executable files from being opened automatically.
asankah Jul 10, 2015
33f223e
Apply a patch to prevent an integer overflow in expat.
mbarbella-chromium Jul 10, 2015
ca75852
Optimize chrome://inspect for small windows
Rob--W Jul 10, 2015
7f1dccc
[Merge to m44] AppCache: Defend against bad IPC messages.
michael-nordman Jul 10, 2015
9259b95
Incrementing VERSION to 44.0.2403.87
Jul 11, 2015
937db04
[M44] Add net logging for ServiceWorkerURLRequestJob.
mfalken Jul 12, 2015
59455ff
Incrementing VERSION to 44.0.2403.88
Jul 13, 2015
847e583
Temp & partially revert of cl https://codereview.chromium.org/1109333…
shuchen-google Jul 13, 2015
02f0874
Makes sure singleton ui::InputMethod instance under unified desktop m…
shuchen-google Jul 13, 2015
5b31887
Revert "Makes sure singleton ui::InputMethod instance under unified d…
shuchen-google Jul 13, 2015
c4380e4
Merge M44: Allow "Run all plugins this time" if managed setting is cl…
wfh-chromium Jul 13, 2015
a37536c
Merge M44: "Lock while using key to prevent Update() from changing it"
jrummell-chromium Jul 13, 2015
953fced
Merge M44: Fix media gallery related crashes.
reillyeon Jul 13, 2015
ff7d3cd
Merge to m44: Add offerswizarddll.dll to Chrome's Browser's Blacklist
Jul 13, 2015
c67dc7b
Revert "Refactor TabContentManager to async create ThumbnailCache."
Jul 13, 2015
2616dec
Add constructors for IOBuffer that take the buffer length as a size_t.
Jul 13, 2015
ffdde26
Do not show the first-run default browser prompt on Win10.
GregTho Jul 13, 2015
79850f3
Fix theme inconsistencies for WebViews used in dialogs.
Jul 13, 2015
407d3a4
Updating XTBs based on .GRDs from branch 2403
Jul 13, 2015
6ffa49b
x11: Make sure a Widget is not attempted to be destroyed more than once.
sadrulhc Jul 13, 2015
27becec
Merge to M44 (branch 2403): Only dispatch cut/copy/paste accelerators…
pkasting Jul 13, 2015
a37c311
Merge to M44 (branch 2403): Null-check the RWHV before using it.
pkasting Jul 13, 2015
9fdb8eb
[Merge to M44] Introduce a SetRegValueWorkItem overload that accepts …
Jul 13, 2015
900f5c0
[Merge to M44] Introduce UpdateActiveSetupVersionWorkItem
Jul 13, 2015
4339df4
[Merge to M44] Make use of the new UpdateActiveSetupVersionWorkItem.
Jul 13, 2015
872d7a1
Fix the duplicated thumbnail images in Wallpaper Picker grid in Chrom…
Jul 13, 2015
1b0df1e
Merge USB keyboard detection reporting and disable flag
jschuh Jul 13, 2015
34b55e6
[Merge to M44] Force restoration of Chrome's shortcuts when Active Se…
Jul 13, 2015
dba1947
Fix Beta Builder base::SplitString compile errors.
Jul 14, 2015
87743e8
Incrementing VERSION to 44.0.2403.89
Jul 14, 2015
31fcfe1
[Merge to M44] [SafeBrowsing] Send pingbacks for additional file types.
asankah Jul 14, 2015
4a6fda9
Revert "Adjust the text size using page scale information"
Jul 14, 2015
f63cd32
Adjust the text size using page scale information
Jul 14, 2015
371a0ae
Correct way to obtain JCA private key algorithm.
Jul 14, 2015
fd3ac45
gpu: Disable program caching on Adreno 4xx 103.0 drivers
Jul 14, 2015
b91b71f
Incrementing VERSION to 44.0.2403.90
Jul 15, 2015
cc6f5e6
Incrementing VERSION to 44.0.2403.91
Jul 15, 2015
de9da56
Increase priority of raster threads on Android.
alexelias Jul 15, 2015
7095be5
Incrementing VERSION to 44.0.2403.92
Jul 15, 2015
d307044
Incrementing VERSION to 44.0.2403.93
Jul 15, 2015
49c5f30
Don't create cross origins references in the extension system
jeisinger Jul 15, 2015
107a1ff
Added permission check for GET_ACCOUNTS.
tommynyquist Jul 15, 2015
71b1515
Incrementing VERSION to 44.0.2403.94
Jul 16, 2015
8bb40cc
Merge to M44:
Jul 16, 2015
384a1c9
Incrementing VERSION to 44.0.2403.95
Jul 17, 2015
3ed505d
[M44] [Password Generation] Save passwords even if heuristics determi…
Jul 17, 2015
2159396
Revert "[M44] [Password Generation] Save passwords even if heuristics…
Jul 17, 2015
935a6a4
Incrementing VERSION to 44.0.2403.96
Jul 20, 2015
eb9deae
Incrementing VERSION to 44.0.2403.97
Jul 20, 2015
f1db114
Reland: [M44] [Password Generation] Save passwords even if heuristics…
Jul 20, 2015
8fd8314
Mac: Kick CAOpenGLLayer out of the command buffer GL context
ccameron-chromium Jul 20, 2015
0588fe4
Simplify AccountManagerHelper and AccountManagerDelegate.
tommynyquist Jul 20, 2015
2486cc4
Add support for overriding AccountManagerDelegate
tommynyquist Jul 20, 2015
7c9ae5f
Ask for necessary android permissions when selecting a file.
Jul 20, 2015
25cd817
Handle failed fetches/decodes from BitmapFetcher.
Jul 20, 2015
79727c6
Merge to M44: "Put windows vpx hardware decode behind a flag."
dalecurtis Jul 21, 2015
7aec824
Incrementing VERSION to 44.0.2403.98
Jul 21, 2015
63741f1
Setting version to 44.0.2403.103
Jul 21, 2015
4c1a020
Move GET_ACCOUNTS permission check to AccountManagerDelegate
tommynyquist Jul 21, 2015
40d6e42
Set needsLayout on WebViewPlugin's container when initialized
Jul 21, 2015
7787ff5
Incrementing VERSION to 44.0.2403.104
Jul 22, 2015
732c8df
Incrementing VERSION to 44.0.2403.105
Jul 22, 2015
4535120
Disable ChildAccountService when GET_ACCOUNTS is unavailable.
tommynyquist Jul 22, 2015
ad32073
[Sync] Don't require keystore migration time to be set in nigori node
Jul 22, 2015
183c7e0
Incrementing VERSION to 44.0.2403.106
Jul 22, 2015
224d73f
Incrementing VERSION to 44.0.2403.107
Jul 23, 2015
ae840a4
Merge: Crash on nested IPC handlers in PrintWebViewHelper
vitalybuka Jul 23, 2015
8816c80
Incrementing VERSION to 44.0.2403.108
Jul 23, 2015
400087f
Provide an accessibility tree snapshot
Jul 23, 2015
22d1401
Handle incognito mode for accessibility tree
Jul 23, 2015
ee9e878
Fix Android release builds.
Jul 23, 2015
3733a7e
Stop painting when layout is pending in WebView_Plugin
Jul 23, 2015
f871b53
Incrementing VERSION to 44.0.2403.109
Jul 23, 2015
16928b8
Incrementing VERSION to 44.0.2403.110
Jul 23, 2015
9f44640
Incrementing VERSION to 44.0.2403.111
Jul 24, 2015
a24117d
Initialize WebViewPlugin with animationNeeded_ true, to avoid paintin…
Jul 24, 2015
d40773e
Incrementing VERSION to 44.0.2403.112
Jul 24, 2015
18570c8
Web MIDI: make unsupported device check strict
toyoshim Jul 24, 2015
25a39ee
Setting version to 44.0.2403.122
Jul 24, 2015
7e3d8f3
Welcome page changes for Windows 10.
GregTho Jul 24, 2015
87e81d5
Merge to M44: Distribute delay-agnostic-aec flags among platforms
Jul 24, 2015
a8b9b20
Incrementing VERSION to 44.0.2403.123
Jul 25, 2015
0fd2cc2
Incrementing VERSION to 44.0.2403.124
Jul 25, 2015
5e457df
Incrementing VERSION to 44.0.2403.125
Jul 25, 2015
da73e1f
CastChannel: remove bad SetReadyState() call (M44 cherrypick)
Jul 27, 2015
9c1e947
Incrementing VERSION to 44.0.2403.126
Jul 28, 2015
1ec7881
Merge "Synthesize proper keyIdentifier for devtools protocol key even…
dgozman Jul 28, 2015
7c8851c
Notify a WebViewPlugin's container when layout size has changed
Jul 28, 2015
ed44e60
Incrementing VERSION to 44.0.2403.127
Jul 28, 2015
bae48a4
Incrementing VERSION to 44.0.2403.128
Jul 28, 2015
6ee0164
ozone: evdev: Disallow Z axis on touchscreens that left click
mspang Jul 29, 2015
ff02bff
ozone: evdev: Squelch some expected NOTIMPLEMENTEDs
mspang Jul 29, 2015
15ef1cc
Add gpgkey entry to google-chrome.repo file for yum/dnf
Jul 29, 2015
4f5c0e4
Fix DOM UI Events 'Dead' key codes.
Jul 29, 2015
51cbfbc
Add dead-key keysyms to GetUnicodeCharacterFromXKeySym().
Jul 29, 2015
574ea11
Add IsDomKeyForModifier().
Jul 29, 2015
0c7c049
Make character composition platform-independent.
Jul 29, 2015
f943061
Adds a DOM UI Events |key| for XKB's 'Shift Level 5'.
Jul 29, 2015
fbed271
Incrementing VERSION to 44.0.2403.129
Jul 30, 2015
cbce740
Changing command line flag from disable appcontainer to enable appcon…
Jul 30, 2015
8cca4dd
Merge to M44: Don't route mouse wheel events to transparent children …
Jul 31, 2015
4a43d08
Merge to M44: Also restore install-level shortcuts on OS upgrade.
Jul 31, 2015
928b0d0
Merge to M44: No dual_mode on Win10+ shortcuts.
Jul 31, 2015
d8899c8
Incrementing VERSION to 44.0.2403.130
Jul 31, 2015
6cf6641
Publish DEPS for Chromium 44.0.2403.130
Jul 31, 2015
8109ba4
Add xwalk path to git ignore list
May 3, 2013
1b6b784
.gitignore: Ignore ozone/.
Feb 27, 2014
b27ff83
Also need to set aura::Window title
Jul 18, 2013
a2d0fb2
Aura: fix the touch event doesn't work on Tizen 3.0 issue.
huningxin Jul 18, 2013
393ce1c
[Tizen] Change Sandbox IPC process title.
ds-hwang Aug 30, 2013
b3adf0a
[Android] Extend android install timeout to 5 minutes for testing
Sep 11, 2013
17c9f58
[Android] When running android test, try killing adb if no devices found
Sep 11, 2013
dd2695a
[Tizen] Change scrollbar animator
Nov 6, 2013
5682e99
Introduce OS_TIZEN and set specific settings for Tizen platforms
kenchris Nov 7, 2013
d962a03
Add GetFieldID functing to jni_help in the content for XWalk.
junmin-zhu Nov 17, 2013
60bc442
[SysApps] Expose ffmpeg function signatures needed by Device Capabili…
Nov 26, 2013
31ebf6c
Fix default min-layout width and scrollbar appearence.
kenchris Dec 5, 2013
d6a466e
[Android] Use application context for shared pref's creation
Dec 18, 2013
ef52fa0
[SysApps] Make CodecIDToAudioCodec and CodecIDToVideoCodec available …
Dec 20, 2013
2ee1fe0
[Views] Customize _NET_WM_PID for X11 window backing a Widget
cmarcelo Jan 9, 2014
baf74b3
[Android] Use the Chromium TLS for thread local storage allocation
Jan 15, 2014
0efabc8
[Views] Fix compiler initialization order errors.
Feb 10, 2014
ed37f4d
[Android] Allow intercepter to extract paks
Feb 28, 2014
fa541c2
[Tizen] Hard code for va driver
Mar 10, 2014
c663de4
[Android] Change the API for ApplicationStatus in base dir.
Apr 1, 2014
2745b29
[Android] Add a new API to simulate activity started on ApplicationSt…
kurli Apr 8, 2014
3712d6b
[Tizen IVI] Make HTML5 full screen API work on IVI.
Feb 25, 2014
95d9b06
[Android] Address Context leak in ResourceExtractor
Apr 14, 2014
04c4540
[Android] Ignore status from non tracked activities
kurli Apr 16, 2014
e70a903
[Android] Add Resource loading filter for MediaPlayer
xingnan Feb 7, 2014
30f6eaa
[Extensions] Build glib message pump on Ozone by default
Jun 9, 2014
57001be
[Tizen] Enable blink::OrientationEvent by default
Jun 13, 2014
3a9971b
[Android] Fix the crash of GetUserMedia
xingnan Jun 19, 2014
d938392
[Android] Add a new listener to listen the first rendered frame
kurli Jul 7, 2014
e66fde6
Provide a ScreenOrientationDispatcherHost getter.
Jul 7, 2014
c3096ba
[Android] Use TextureView as an alternative compositing surface target
Aug 12, 2014
150dd6d
[Android] Only initialize ContentReadbackHandler in onNativeLibraryLo…
Aug 15, 2014
f6f84d6
[Tizen] Make content fit to the viewport
Sep 24, 2014
36d1e5f
.gitignore: Ignore src/third_party/khronos/CL.
Oct 7, 2014
cb4bef6
.gitignore: Ignore src/third_party/webcl.
junmin-zhu Oct 8, 2014
072b36e
[Temp][oz-wl] Remove usage of DesktopFactory.
kalyankondapally Dec 23, 2014
60f82e5
[Temp][oz-wl] Add support to provide external ozone files in views.
kalyankondapally Mar 5, 2014
6c716cb
[Temp][oz-wl] Media: Build VaapiPictureWayland as part of Media.
kalyankondapally Jan 12, 2015
c4bc59e
[Temp][oz-wl] Introduce vaLockBuffer APIs in libva.
shaochangbin Sep 5, 2014
b0851f2
[Temp][oz-wl] Fix crash when switching to console (VT) mode.
Oct 1, 2014
18c767d
[Temp][oz-wl] PlatformWindow: Add needed support in PlatformWindow.
kalyankondapally Oct 20, 2014
afa6f7c
[Temp][oz-wl] Use vaAcquireBufferHandle APIs to instead of vaLockBuff…
qjia7 Mar 4, 2015
a1ee1ef
[Temp][oz-wl] Media: Use upstream Video Accelerator.
kalyankondapally Mar 4, 2015
73da092
[Temp][oz-wl] Remove ATK dependency
May 1, 2015
c203067
[Tizen] Set app ID and media class properties for the audio streams.
Nov 5, 2014
4d2d1e9
Fix GPU process crash
Nov 28, 2014
d1fe600
[Tizen] Set the resource set "name" property instead of "appid"
Dec 30, 2014
52f6f29
[Tizen] Add Tizen Murphy resource policy daemon integration
Sep 11, 2014
c0ff8e7
[Android] Allow constructor of Notifications on Android.
darktears Mar 3, 2015
5da061c
[Temp][Android] Make the code work without SDK extras.
Mar 16, 2015
85fc419
[Android] Implement ContentViewRenderView.setZOrderOnTop
axinging Mar 20, 2015
a1c4529
Add script to create Google Play Services's directory structure.
Apr 20, 2015
5c63cb4
[Backport]Add declaration for DictionaryValue in devtools_http_handler.h
May 19, 2015
397c408
M44 Rebase: Replace WindowCallbackWrapper with WindowCallbackProxy
May 23, 2015
62a6d14
Add flag to diable hrtf in webaudio
Apr 2, 2015
e3769cc
Add gyp flag use_minimum_resources and exclude unnecessary resources
Apr 2, 2015
9e8e389
Revert "Remove ICS support from build/android/pylib/"
Jul 7, 2015
7b8f096
Revert "Remove ICS support from Chromium code."
Jul 7, 2015
a88b80e
Revert "Remove JELLY_BEAN checks from GamepadList.java"
Jul 7, 2015
aeaae6c
Revert "Remove ICS support in ui/"
Jul 7, 2015
4a512fb
Revert "Remove ICS support code in chrome/ and components/precache/"
Jul 7, 2015
19d79c2
Revert "Remove ICS support in VSyncMonitor."
Jul 7, 2015
183cde6
Revert "Remove ICS check in BookmarkUtil."
Jul 7, 2015
dd48c36
Revert "Remove ICS check in SwipeRefreshHandler."
Jul 7, 2015
21f18ad
Revert "Remove ICS check in AccessibilityUtil."
Jul 7, 2015
42cd5c3
Revert "Remove ICS check in ChromeContextMenuPopulator."
Jul 7, 2015
5329266
Revert "Remove ICS checks in ExternalNavigationHandler."
Jul 7, 2015
8f2d732
Revert "Remove ICS code from Clank Cast"
Jul 7, 2015
aee24ea
Revert "Remove ICS support in C++ code."
Jul 7, 2015
ac83661
Revert "Remove unnecesary ApiCompatibilityUtils calls."
Jul 7, 2015
8716baa
Revert "Remove ICS support from SurfaceTexture"
Jul 7, 2015
7415bda
Revert "Update minSdkVersion and targetSdkVersion constants."
Jul 7, 2015
5466484
[Backport] Don't discard navigations.
Jun 17, 2015
1096e9e
[Backport] Rather than dropping stale navigations, resurrect the navi…
Jun 19, 2015
6e988ae
[Backport] Remove NOTIMPLEMENTED() logspam. Provide an implementation…
Jul 22, 2015
cd38a1d
Fix build on Windows when using components build.
darktears Aug 11, 2015
97959a5
Merge pull request #266 from darktears/fix-windows-component-build
darktears Aug 11, 2015
2e839d8
[Android] Enable copy picture only in contenteditable
axinging Mar 21, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,7 @@ v8.log
/net/Release
/net/testserver.log
/out*
/ozone
/ppapi/native_client/nacl_irt.xml
/ppapi/native_client/ppapi_lib.xml
/remoting/appengine/
Expand Down Expand Up @@ -312,6 +313,7 @@ v8.log
/third_party/junit/src
/third_party/kasko
/third_party/khronos_glcts
/third_party/khronos/CL
/third_party/leveldatabase/src
/third_party/leveldb
/third_party/libaddressinput/src
Expand Down Expand Up @@ -383,6 +385,7 @@ v8.log
/third_party/valgrind
/third_party/v4l2capture
/third_party/web-animations-js
/third_party/webcl
/third_party/webdriver/pylib
/third_party/webdriver/python/selenium
/third_party/webgl
Expand Down Expand Up @@ -434,3 +437,4 @@ v8.log
/win8/metro_driver/metro_driver_version_resources.xml
/x86-generic_out/
/xcodebuild
/xwalk
1,196 changes: 553 additions & 643 deletions DEPS

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions android_webview/apk/java/proguard.flags
Original file line number Diff line number Diff line change
Expand Up @@ -99,3 +99,7 @@
-keep class com.android.org.chromium.ui.ColorPickerMoreButton {
<init>(...);
}

# Remove when ViewStructure is no longer duplicated (crbug.com/513229)
-dontwarn android.view.*
-dontwarn android.webkit.*
166 changes: 161 additions & 5 deletions android_webview/browser/aw_permission_manager.cc
Original file line number Diff line number Diff line change
Expand Up @@ -4,28 +4,163 @@

#include "android_webview/browser/aw_permission_manager.h"

#include <string>

#include "android_webview/browser/aw_browser_permission_request_delegate.h"
#include "base/callback.h"
#include "base/containers/hash_tables.h"
#include "base/logging.h"
#include "base/memory/weak_ptr.h"
#include "content/public/browser/permission_type.h"
#include "content/public/browser/render_process_host.h"
#include "content/public/browser/render_view_host.h"
#include "content/public/browser/web_contents.h"

using content::PermissionStatus;
using content::PermissionType;

namespace android_webview {

class LastRequestResultCache {
public:
LastRequestResultCache() : weak_factory_(this) {}

void SetResult(PermissionType permission,
const GURL& requesting_origin,
const GURL& embedding_origin,
PermissionStatus status) {
DCHECK(status == content::PERMISSION_STATUS_GRANTED ||
status == content::PERMISSION_STATUS_DENIED);

// TODO(ddorwin): We should be denying empty origins at a higher level.
if (requesting_origin.is_empty() || embedding_origin.is_empty()) {
DLOG(WARNING) << "Not caching result because of empty origin.";
return;
}

if (!requesting_origin.is_valid()) {
NOTREACHED() << requesting_origin.possibly_invalid_spec();
return;
}
if (!embedding_origin.is_valid()) {
NOTREACHED() << embedding_origin.possibly_invalid_spec();
return;
}

if (permission != PermissionType::PROTECTED_MEDIA_IDENTIFIER) {
// Other permissions are not cached.
return;
}

std::string key = GetCacheKey(requesting_origin, embedding_origin);
if (key.empty()) {
NOTREACHED();
// Never store an empty key because it could inadvertently be used for
// another combination.
return;
}
pmi_result_cache_[key] = status;
}

PermissionStatus GetResult(PermissionType permission,
const GURL& requesting_origin,
const GURL& embedding_origin) const {
// TODO(ddorwin): We should be denying empty origins at a higher level.
if (requesting_origin.is_empty() || embedding_origin.is_empty()) {
return content::PERMISSION_STATUS_ASK;
}

DCHECK(requesting_origin.is_valid())
<< requesting_origin.possibly_invalid_spec();
DCHECK(embedding_origin.is_valid())
<< embedding_origin.possibly_invalid_spec();

if (permission != PermissionType::PROTECTED_MEDIA_IDENTIFIER) {
NOTREACHED() << "Results are only cached for PROTECTED_MEDIA_IDENTIFIER";
return content::PERMISSION_STATUS_ASK;
}

std::string key = GetCacheKey(requesting_origin, embedding_origin);
StatusMap::const_iterator it = pmi_result_cache_.find(key);
if (it == pmi_result_cache_.end()) {
DLOG(WARNING) << "GetResult() called for uncached origins: " << key;
return content::PERMISSION_STATUS_ASK;
}

DCHECK(!key.empty());
return it->second;
}

void ClearResult(PermissionType permission,
const GURL& requesting_origin,
const GURL& embedding_origin) {
// TODO(ddorwin): We should be denying empty origins at a higher level.
if (requesting_origin.is_empty() || embedding_origin.is_empty()) {
return;
}

DCHECK(requesting_origin.is_valid())
<< requesting_origin.possibly_invalid_spec();
DCHECK(embedding_origin.is_valid())
<< embedding_origin.possibly_invalid_spec();


if (permission != PermissionType::PROTECTED_MEDIA_IDENTIFIER) {
// Other permissions are not cached, so nothing to clear.
return;
}

std::string key = GetCacheKey(requesting_origin, embedding_origin);
pmi_result_cache_.erase(key);
}

base::WeakPtr<LastRequestResultCache> GetWeakPtr() {
return weak_factory_.GetWeakPtr();
}

private:
// Returns a concatenation of the origins to be used as the index.
// Returns the empty string if either origin is invalid or empty.
static std::string GetCacheKey(const GURL& requesting_origin,
const GURL& embedding_origin) {
const std::string& requesting = requesting_origin.spec();
const std::string& embedding = embedding_origin.spec();
if (requesting.empty() || embedding.empty())
return std::string();
return requesting + "," + embedding;
}

using StatusMap = base::hash_map<std::string, PermissionStatus>;
StatusMap pmi_result_cache_;

base::WeakPtrFactory<LastRequestResultCache> weak_factory_;

DISALLOW_COPY_AND_ASSIGN(LastRequestResultCache);
};

namespace {

void CallbackPermisisonStatusWrapper(
const base::WeakPtr<LastRequestResultCache>& result_cache,
const base::Callback<void(content::PermissionStatus)>& callback,
PermissionType permission,
const GURL& requesting_origin,
const GURL& embedding_origin,
bool allowed) {
callback.Run(allowed ? content::PERMISSION_STATUS_GRANTED
: content::PERMISSION_STATUS_DENIED);
PermissionStatus status = allowed ? content::PERMISSION_STATUS_GRANTED
: content::PERMISSION_STATUS_DENIED;
if (result_cache.get()) {
result_cache->SetResult(permission, requesting_origin, embedding_origin,
status);
}

callback.Run(status);
}

} // anonymous namespace

AwPermissionManager::AwPermissionManager()
: content::PermissionManager() {
: content::PermissionManager(), result_cache_(new LastRequestResultCache) {
}

AwPermissionManager::~AwPermissionManager() {
Expand All @@ -50,14 +185,21 @@ void AwPermissionManager::RequestPermission(
return;
}

const GURL& embedding_origin =
web_contents->GetLastCommittedURL().GetOrigin();

switch (permission) {
case content::PermissionType::GEOLOCATION:
delegate->RequestGeolocationPermission(
origin, base::Bind(&CallbackPermisisonStatusWrapper, callback));
origin, base::Bind(&CallbackPermisisonStatusWrapper,
result_cache_->GetWeakPtr(), callback, permission,
origin, embedding_origin));
break;
case content::PermissionType::PROTECTED_MEDIA_IDENTIFIER:
delegate->RequestProtectedMediaIdentifierPermission(
origin, base::Bind(&CallbackPermisisonStatusWrapper, callback));
origin, base::Bind(&CallbackPermisisonStatusWrapper,
result_cache_->GetWeakPtr(), callback, permission,
origin, embedding_origin));
break;
case content::PermissionType::MIDI_SYSEX:
case content::PermissionType::NOTIFICATIONS:
Expand All @@ -78,6 +220,13 @@ void AwPermissionManager::CancelPermissionRequest(
content::WebContents* web_contents,
int request_id,
const GURL& origin) {
// The caller is canceling (presumably) the most recent request. Assuming the
// request did not complete, the user did not respond to the requset.
// Thus, assume we do not know the result.
const GURL& embedding_origin =
web_contents->GetLastCommittedURL().GetOrigin();
result_cache_->ClearResult(permission, origin, embedding_origin);

int render_process_id = web_contents->GetRenderProcessHost()->GetID();
int render_view_id = web_contents->GetRenderViewHost()->GetRoutingID();
AwBrowserPermissionRequestDelegate* delegate =
Expand Down Expand Up @@ -109,12 +258,19 @@ void AwPermissionManager::ResetPermission(
content::PermissionType permission,
const GURL& requesting_origin,
const GURL& embedding_origin) {
result_cache_->ClearResult(permission, requesting_origin, embedding_origin);
}

content::PermissionStatus AwPermissionManager::GetPermissionStatus(
content::PermissionType permission,
const GURL& requesting_origin,
const GURL& embedding_origin) {
// Method is called outside the Permissions API only for this permission.
if (permission == PermissionType::PROTECTED_MEDIA_IDENTIFIER) {
return result_cache_->GetResult(permission, requesting_origin,
embedding_origin);
}

return content::PERMISSION_STATUS_DENIED;
}

Expand Down
5 changes: 5 additions & 0 deletions android_webview/browser/aw_permission_manager.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,13 @@

#include "base/callback_forward.h"
#include "base/macros.h"
#include "base/memory/scoped_ptr.h"
#include "content/public/browser/permission_manager.h"

namespace android_webview {

class LastRequestResultCache;

class AwPermissionManager : public content::PermissionManager {
public:
AwPermissionManager();
Expand Down Expand Up @@ -46,6 +49,8 @@ class AwPermissionManager : public content::PermissionManager {
void UnsubscribePermissionStatusChange(int subscription_id) override;

private:
scoped_ptr<LastRequestResultCache> result_cache_;

DISALLOW_COPY_AND_ASSIGN(AwPermissionManager);
};

Expand Down
7 changes: 5 additions & 2 deletions android_webview/browser/scoped_app_gl_state_restore.cc
Original file line number Diff line number Diff line change
Expand Up @@ -297,8 +297,11 @@ ScopedAppGLStateRestoreImpl::ScopedAppGLStateRestoreImpl(
i, GL_CURRENT_VERTEX_ATTRIB, vertex_attrib_[i].current_vertex_attrib);
}

// Android 5.0.0 specific qualcomm workaround. See crbug.com/434570.
glBindRenderbufferEXT(GL_RENDERBUFFER, 0);
if (mode_ == ScopedAppGLStateRestore::MODE_RESOURCE_MANAGEMENT) {
// Android 5.0.0 specific qualcomm workaround. See crbug.com/434570.
glBindRenderbufferEXT(GL_RENDERBUFFER, 0);
}

DCHECK(ClearGLErrors(false, NULL));
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,18 @@

/**
* Helper class used to fix up resource ids.
* This is mostly a copy of the code in frameworks/base/core/java/android/app/LoadedApk.java.
* TODO: Remove if a cleaner mechanism is provided (either public API or AAPT is changed to generate
* this code).
*/
class ResourceRewriter {
/**
* Rewrite the R 'constants' for the WebView library apk.
*/
public static void rewriteRValues(final int packageId) {
// TODO: We should use jarjar to remove the redundant R classes here, but due
// to a bug in jarjar it's not possible to rename classes with '$' in their name.
// See b/15684775.
// This list must be kept up to date to include all R classes depended on directly or
// indirectly by android_webview_java.
// TODO(torne): find a better way to do this, http://crbug.com/492166.
com.android.webview.chromium.R.onResourcesLoaded(packageId);
org.chromium.android_webview.R.onResourcesLoaded(packageId);
org.chromium.components.web_contents_delegate_android.R.onResourcesLoaded(packageId);
org.chromium.content.R.onResourcesLoaded(packageId);
org.chromium.ui.R.onResourcesLoaded(packageId);
}
Expand Down
Loading