summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* reduce cookie tracking (4/4): onResume deletion of cookiesHEADkitkatRobin Humble2014-06-085-0/+221
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optionally delete unwanted cookies (and localstorage) at every Browser resume. The default for this feature is off - ie. maintain the current Browser "keep every cookie" behaviour. Optionally localstorage files (site databases) are also removed whenever cookies have been deleted. This helps to reduce evercookie/supercookie persistence. A whitelist of sites that are permitted to keep cookies is stored in the standard Browser shared_prefs. The site's cookie preference is set via a menu checkbox when viewing the page. This allows opt-in whitelisting behaviour on a per-site basis, suitable for saving eg. login cookies. The cookie deletion itself is done by using existing API's to delete all cookies and then selectively restore just those from the whitelisted sites. Cookie counting is the only new API needed by this patch, and is used to eliminate unnecessary cookie and localstorage deletes. Although simplistic, onResume cookie filtering seems to work well and in testing hasn't broken any web browsing. The underlying CookieMonster functions operate on cached copies in ram and are asynchronous to disk so there should be little or no measurable performance impact on browsing from cookies. localstorage deletion is not cached by any layer so, if enabled, might have some minor performance impact. Change-Id: I55c69292a5ddc460e0e50b340dc4330c28becc5e
* BrowserSettings: update desktop UA string to match Chrome 33Steven Luo2014-06-081-1/+1
| | | | | | This matches the corresponding update to Chromium 33 for Android WebView. Change-Id: Id2a8a832c2a637f7c5284d5006b6f3475bfba560
* Fix Memory leaks on Browser applicationSebastien MICHEL2014-05-131-0/+2
| | | | | | | | | | Working on Issue 31125 (http://code.google.com/p/android/issues /detail?id=31125): * Enhance mTabViews management on NavScreen class (add remove() function when necessary). Change-Id: I89662880107ae88ead40d5246286d4ab65ed9e75 Signed-off-by: Sebastien MICHEL <sebastien.michel@intel.com>
* Browser: fix crash updating recycled faviconPawit Pornkitprasan2014-04-211-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | Occurs on the (slow) galaxysmtd. java.lang.RuntimeException: An error occured while executing doInBackground() at android.os.AsyncTask$3.done(AsyncTask.java:300) at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355) at java.util.concurrent.FutureTask.setException(FutureTask.java:222) at java.util.concurrent.FutureTask.run(FutureTask.java:242) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) at java.lang.Thread.run(Thread.java:841) Caused by: java.lang.IllegalStateException: Can't compress a recycled bitmap at android.graphics.Bitmap.checkRecycled(Bitmap.java:345) at android.graphics.Bitmap.compress(Bitmap.java:985) at com.android.browser.Bookmarks$1.doInBackground(Bookmarks.java:206) at com.android.browser.Bookmarks$1.doInBackground(Bookmarks.java:202) at android.os.AsyncTask$2.call(AsyncTask.java:288) at java.util.concurrent.FutureTask.run(FutureTask.java:237) ... 4 more Change-Id: I867696996c786024aabb869583583198ac3bc13a
* browser: allow to load browser internal assetsJorge Ruesga2014-04-113-18/+61
| | | | | | | | | The new webview classes avoid to load urls from local file schemes. Just replace the load of internal browser assets (most_visited) from loadUrl to loadData. Change-Id: Iee633a1a3599a7e752e15452fa04e15baac2e256 JIRA: CYAN-3564 Issue: https://jira.cyanogenmod.org/browse/CYAN-3564 Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
* Handle DownloadManager expceptionsFilip Matusiak2014-03-081-2/+11
| | | | | | | | | | | | Handles illegal state exceptions thrown by DownloadManager on two ocassions: * the directory sdcard/Downloads is an ordinary file * could not create dirctory sdcard/Downloads Change will log an error, additionally toast with information will pop up. Change-Id: If853d3218a188bc77c187362a70697126b90989d
* Fix a crash when creating an incognito tab.Sungmann Cho2014-03-081-1/+3
| | | | | | | | | The KitKat's WebView doesn't support an incognito mode. Opening an incognito tab leads to a crash. So it would be nice to hide the menu itself in the KitKat or later. Change-Id: I9853df92f3a4e404b528640776725b34b675fee5 Signed-off-by: Sungmann Cho <sungmann.cho@navercorp.com>
* Browser freezes when adding new incognito tab after removing itweiweix.ji2014-03-081-1/+2
| | | | | | | | | | | | When do layout, the position of new tab may be changed since other tab closed, we need to get the position again at the time. Change-Id: Ia5bcc15a0074678f401d6b3e93026e5ef5d2af7d Author: weiweix.ji <weiweix.ji@intel.com> Signed-off-by: Xiaokang Qin <xiaokang.qin@intel.com> Signed-off-by: Bruce Beare <bruce.j.beare@intel.com> Signed-off-by: Jack Ren <jack.ren@intel.com> Author-tracking-BZ: 66643
* Browser: Fix Progress bar when quick Controls EnabledDan2014-03-081-0/+3
| | | | | | | The quick controls progress bar was broken by my browser autohide patch. This patch fixes it to properly show again. Change-Id: I1062c4eac26bbc87ca6ec9de775e0b1b58d0542b
* Reimplement titlebar autohiding to be compatible with chromium webview.Dan2014-03-081-7/+15
| | | | | | Patch Set 4: Fix code formatting Change-Id: I4de873f7c089d4f7dede944d05f48d03000f3d99
* browser: properly handle get center tabJorge Ruesga2014-03-081-7/+1
| | | | | | | Change-Id: Ibec6a7b80e399b99fe2e6df64a7c4b1cc6c38728 JIRA: CYAN-3235 Issue: https://jira.cyanogenmod.org/browse/CYAN-3235 Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
* Replace removed NARROW_COLUMNS layout mode with TEXT_AUTOSIZINGSteven Luo2014-03-081-2/+2
| | | | | | | | | | | | For reasons which I completely fail to understand, Google elected not to implement the very useful NARROW_COLUMNS layout mode (double-tap to reflow text) in Chromium WebView, and instead chose to implement TEXT_AUTOSIZING (buggy heuristic-based font inflation). But complaining isn't going to get it back, and font inflation is better than nothing on small screens, so replace NARROW_COLUMNS with TEXT_AUTOSIZING to restore some support for resizing text to be legible on screen. Change-Id: Ieeb03d38e8a7386e8e8f811c570aa17bfabf4337
* BrowserSettings: update desktop UA string to match Chrome 30Steven Luo2014-03-081-2/+2
| | | | | | | | Now that we're using a Chromium-based WebView which closely matches Chrome 30, we should report as a newer Chrome version when masquerading as a desktop browser. Change-Id: I301a8cfac9a83e66a6749872943e80ff5c4740a1
* Always show the action bar overflowVeeti Paananen2014-03-082-8/+1
| | | | | | As with native action bars. Change-Id: I460ee02b370d7f220a8702d2e7644a7c775e3b21
* Browser: New navbar buttonsArham Jamal2014-03-082-5/+64
| | | | | | | | | Added 2 new buttons to navigation bar: - New Incognito Tab - Goto home screen Signed-off-by: Arham Jamal <arhamjamal@gmail.com> Change-Id: I4c4b611ccc7fc3de4fa4bc7c855e4481de440a87
* Browser: fix pie crashPawit Pornkitprasan2014-03-081-0/+1
| | | | | | Introduced in 5623a091605bf1d88687dc589a61ee6b54c554fe. Change-Id: I83f44be84fb70e2777ab1414c0af2a368c435fb8
* Fix the problem that the favicons on the history page are shown ramdomly ↵Sungmann Cho2014-03-081-0/+2
| | | | | | | | | | | | | | | when the page is scrolled. Steps to reproduce: 1. Visit some URLs to fill the history page. 2. Go to the history page. 3. Scroll up and down repeatedly. What happened: The favicons on the left side of the history page are shown ramdomly. Change-Id: I243ec67899b13c5482e1503f7eab23dd9a5aa1f5 Signed-off-by: Sungmann Cho <sungmann.cho@navercorp.com>
* Merge "Show a startup page in incognito mode" into kitkatWill DeBerry2014-01-311-0/+13
|\
| * Show a startup page in incognito modeChirayu Desai2014-01-251-0/+13
| | | | | | | | Change-Id: Ib1d4be6890c81b73a46f026b6fcbb2f1e8de567d
* | Merge "Implement client-side incognito mode" into kitkatWill DeBerry2014-01-313-3/+52
|\|
| * Implement client-side incognito modeRicardo Cerqueira2014-01-253-3/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since WebView deprecated privateBrowsing in API 17 (and killed it for good in API 19), we were left without incognito in the Browser app. Follow the docs' recommendations and implement it with "manual" control of privacy-related engine options * Internally track incognito state for tabs * Disable all forms of storage and cache on private webviews * Disable all cookie activity while an incognito tab is active * Stop trying to use the deprecated "privateBrowsing" argument when creating webViews, always set to false Change-Id: I23f2e34ee125635bba8981f0711ba4986a9beaab
* | Revert "Browser: inkognito mode is not supported in 4.4"Will DeBerry2014-01-272-4/+4
|/ | | | | | This reverts commit 466eec10770c7278eb9a5750a48c165af8a19d47. Change-Id: I8b9b8b8847b3b2540e6084abb75dd7e446cfceed
* Browser: inkognito mode is not supported in 4.4maxwen2014-01-022-4/+4
| | | | | | | | | http://jira.omnirom.org/browse/OMNI-59 What the hell google! https://github.com/omnirom/android_frameworks_webview/blob/android-4.4/chromium/java/com/android/webview/chromium/WebViewChromium.java#L202 Change-Id: Ie046df74499e7cfc5dbd2d34c8706df860e8304d
* Browser: add valid missing fragments (fixes FC)Pawit Pornkitprasan2014-01-021-1/+3
| | | | | | | WebsiteSettingsFragment and DebugPreferencesFragment are also valid fragments. Change-Id: I4e945a3b9de62879afcc621fb97811e75ca53cb1
* Add back browser history page.Danny Baumann2014-01-021-0/+2
| | | | | | Not sure why it was removed, but it seems to work just fine. Change-Id: I6d76928182a53ca57d080394823d35d66e0ba987
* Browser: Fix browser force closeadhiti2013-12-212-2/+8
| | | | | | | | | | | | | | | | | Issue: Cursor was accessed by handler thread when it was closed. During Orientation change, BrowserBookmarksPage#onDestroyView is called which clears all the loaders [and cursors]. Simultaneously ThreadedCursorAdapter#loadRowObject is getting called which then calls BrowserBookmarksAdapter#getRowObject where closed cursor is accessed and force close happens. Fix: Synchronized cursors wrt main thread and handler thread. Checked mCursorAdapter for invalid conditions CRs-Fixed: 576176 Change-Id: I9f16c2f1a55f35e8256bbf56afce3538850f9d42
* Fix exception in Browser SettingsJonathan Dixon2013-10-231-0/+15
| | | | | | | | Bug 11302175 Need to implement isValidFragment when targeting >= KK Change-Id: I19cc285aa237ffd9001558a9ee6adaf152acd1df
* Make web contents debugging always enabled (as in Chrome)Mikhail Naganov2013-09-231-0/+3
| | | | | | Bug: 8691809 Change-Id: Icef9d796a99f3dbca2a4568d2f71e70bc6e91dd7
* De-classicify Android Browser part 2Jonathan Dixon2013-08-2522-1609/+15
| | | | | | | | | | Bug: 10427705 Allows Browser to compile even when WebViewClassic is no longer in frameworks/base. The deleted functionality was already disabled at runtime when using non-classic webview. Change-Id: I21b58ec52ac059c699b49a2dd80008d9a9e6791a
* Merge "Fix the smart search pattern."Selim Gurun2013-07-091-0/+1
|\
| * Fix the smart search pattern.Selim Gurun2013-07-091-0/+1
| | | | | | | | | | Bug: 9592355 Change-Id: I1e3ff3f9f0a2038ea5d460e698dceaaa8be50707
* | am 0905de39: Merge "NPE in bookmark grid when using mouse"John Reck2013-07-031-4/+7
|\ \ | | | | | | | | | | | | * commit '0905de394983373bdc419c3d30b2969d5412d265': NPE in bookmark grid when using mouse
| * \ Merge "NPE in bookmark grid when using mouse"John Reck2013-07-031-4/+7
| |\ \
| | * | NPE in bookmark grid when using mousePawel Bochenski2013-07-021-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using a mouse and right clicking on an empty element element in the bookmark grid an NPE ocurrs. Patch fixes crash after click right button on the mouse in bookmark screen, by adding null pointer check. Change-Id: I07af747797411176e9fd9473eb2dbfe4404e58f5
* | | | am 0505bfe1: Merge "Fixed delete function for bookmark folder"John Reck2013-07-021-1/+53
|\| | | | |_|/ |/| | | | | | | | * commit '0505bfe1aaa22f9ccb15907f3505c96194116815': Fixed delete function for bookmark folder
| * | Fixed delete function for bookmark folderTakeshi Aimi2013-07-021-1/+53
| |/ | | | | | | | | | | | | | | Currently only folder is deleted when one deletes bookmark folder. Therefore, items inside in the folder are remained. We have to delete items recursively inside the folder. Change-Id: I17ad9656612448d8555a64ec887313db4f829174
* | am 6fae8a98: Merge "Fix the problem that a crash occured when user turn off ↵John Reck2013-04-221-2/+6
|\| | | | | | | | | | | | | data connect and download something in browser" * commit '6fae8a98d19492a44a63bcc2ae3863f33cf1a3df': Fix the problem that a crash occured when user turn off data connect and download something in browser
| * Merge "Fix the problem that a crash occured when user turn off data connect ↵John Reck2013-04-231-2/+6
| |\ | | | | | | | | | and download something in browser"
| | * Fix the problem that a crash occured when user turn off data connect and ↵annieyu2013-04-161-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | download something in browser When user turn off data connect in browser throught statusbar shortcut, the request object is null. It will be crush browser. Change-Id: Icdbd40618d221cc205e497e860a9508f4cd18741
* | | am 4d0bc158: Merge "Fix a Cursor leak"John Reck2013-04-031-4/+12
|\| | | | | | | | | | | | | | * commit '4d0bc1588f40efe5e2a3fa463c4820e0978a99c0': Fix a Cursor leak
| * | Fix a Cursor leakmuzbit.kim2013-04-021-4/+12
| |/ | | | | | | | | | | When cursor is done, the cursor must be closed to avoid cursor leak. Change-Id: I44609478038ed3b5ea605eb9b3189fb28296a8e6
* / De-classicify BrowserJonathan Dixon2012-12-1712-46/+104
|/ | | | | | | | Removes the hard run-time dependency on WebViewClassic. (Still needs visisbility of it to build though) This is needed to enable chromium webview testing. Change-Id: I290b6b23b2eac525537ebc3ef8007d681a67a169
* am 571866cd: Merge "Make locale safe paths"John Reck2012-10-051-1/+2
|\ | | | | | | | | * commit '571866cd42918d9227db8424667c585b8f9fdf94': Make locale safe paths
| * Make locale safe pathsJohan Redestig2012-10-051-1/+2
| | | | | | | | | | | | | | | | | | getTarget was using SimpleDateFormat with the default locale to create paths. In some locales this resulted in characters that are not safe to use on all file systems. Explicitly use Locale.US to be locale safe. Change-Id: Id0d994231fa82d5695e7b0fdbae32333b9e77a6e
* | Add content description for folder upJohn Reck2012-09-211-0/+2
| | | | | | | | | | | | Bug: 6940202 Change-Id: I6b8c53285606fdcf6495a4ccf3c94a2037c8979b
* | am 81cb2d18: Merge "Don\'t replace file extension when mime-type is incorrect"John Reck2012-09-181-0/+1
|\| | | | | | | | | * commit '81cb2d1800a0a0aced83225f7f923b0809211001': Don't replace file extension when mime-type is incorrect
| * Don't replace file extension when mime-type is incorrectMagnus Hallqvist2012-09-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When downloading content from a server that claims content to be text/plain or application/octet-stream a guess is made of the proper mime-type from a possible "file-extension" in the URL. When creating the filename of the downloaded content any file extension that does not match the mime-type is replaced with one derived from the mime-type (.txt for text/plain, none for application/octet-stream). However the guessed mime-type is not used in the filename creation, so content with a proper file extension but a text/plain mime-type will have its file extension replaced with .txt derived from the incorrect mime-type. This fix will use the guessed mime-type when creating the filename to avoid replacing a correct file extension. Change-Id: I5df642e94948914708af99a4d902b253ac8a48dd
* | am b7ee3b51: Merge "BrowserSettings required a Controller sometimes"John Reck2012-09-131-2/+2
|\| | | | | | | | | * commit 'b7ee3b51919842cd26eb865d28cd9ce8e3ba5a2e': BrowserSettings required a Controller sometimes
| * BrowserSettings required a Controller sometimesMagnus Hallqvist2012-09-131-2/+2
| | | | | | | | | | | | | | | | BrowserSettings can be used without a browser Controller, e.g. when accessed from system settings. But some null checks for this case were missing, these have now been added. Change-Id: I57762898d34ef3018569e0de1499be2922dabded
* | Deleted code that relies on defunct SearchBox interface.Selim Gurun2012-09-111-70/+2
| | | | | | | | Change-Id: I831890524acb4e38078053d504c3ada468eca686