-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Remove cookies preserving fireproof websites #808
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove cookies preserving fireproof websites #808
Conversation
* Introduced subtle background for favicon * changes to align with current design
disabled if home screen or domain exists in database enabled if doesn't exist in database
CDRussell
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Generally, working well and an excellent PR! 🎉
I have some concerns about the possibility of pixels getting accidentally dropped for you to consider
app/src/androidTest/java/com/duckduckgo/app/fire/WebViewCookieManagerTest.kt
Show resolved
Hide resolved
app/src/androidTest/java/com/duckduckgo/app/fire/WebViewCookieManagerTest.kt
Outdated
Show resolved
Hide resolved
app/src/androidTest/java/com/duckduckgo/app/fire/WebViewDatabaseLocatorTest.kt
Outdated
Show resolved
Hide resolved
…port a handled exception
… send pixels offline
|
@CDRussell this is ready for review. thanks. |
| }.pixelName | ||
| } | ||
|
|
||
| private fun sendPixelCount(counter: KMutableProperty0<Int>, pixelName: Pixel.PixelName): Completable { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Slick! 🎉
* Fireproof websites UI (#796) * Create new database table to persist sites where cookies should be preserved * Removed divider from bookmarks list * bookmarks title show in single line * background favicon compatible with dark theme * introduce fireproof site option menu * Fireproof option menu reacts to database state. * Fireproof website screen created * Remove cookies preserving fireproof websites (#808) * Implement logic to remove cookies preserving the ones related to fireproof website. - Try to directly remove cookies from WebView database, preserving the ones with hosts related to a fireproof website - If process fails, fallback to remove all the cookies to avoid any leak - Send pixels in the following scenarios: - database path not found - database can't be opened - delete query fails - database corruption * Fireproof websites empty state and Feature pixels (#810) * Empty state for fireproof websites screen * Feature pixels - User clicks on "fireproof a website" - User undo "fireproof website" action (confirmation snackbar after fireproffing a website) - User removed a website from "fireproof websites"

Task/Issue URL: https://app.asana.com/0/0/1170688450957740/f
Tech Design URL: https://app.asana.com/0/481882893211075/1170688450957739/f
CC:
Description:
What's included in this PR?
Implement logic to remove cookies preserving the ones related to fireproof website.
When clearing cookies:
What's NOT included in this PR?
Steps to test this PR:
Test 1: No cookies preserved
Test 2: DDG preserved
Test 3: Fireproof website preserved
Test 4: Database not found: Database not found, all cookies removed
WebViewDatabaseLocator:Line 28:
private val knownLocations = listOf("/fakePath")m_cdb_nfsentTest 5: Error opening database, all cookies removed
SQLCookieRemover, line 70:m_cdb_oesentTest 6: Error deleting cookies, all cookies removed
SQLCookieRemover, line 87:m_cdb_desentAdditional tests:
Instead of using firebutton, you can use auto cleaner data from settings.
Internal references:
Software Engineering Expectations
Technical Design Template