{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":78869127,"defaultBranch":"develop","name":"Android","ownerLogin":"duckduckgo","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2017-01-13T17:11:25.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/342708?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1720147007.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"962f33d2b003226d2821b285511a162e6d6d91d4","ref":"refs/heads/feature/josh/viewmodels-illegal-state-exception","pushedAt":"2024-07-04T20:17:51.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"joshliebe","name":"Josh Leibstein","path":"/joshliebe","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3471025?s=80&v=4"},"commit":{"message":"Fix ViewModels IllegalStateException","shortMessageHtmlLink":"Fix ViewModels IllegalStateException"}},{"before":"00e026da5a3c70a91dff3ab83c90d8e34de2ad38","after":"efa9468ac67b4b1430567d878bcc00a26539c5bf","ref":"refs/heads/feature/ondrej/rearranging-tabs-ui","pushedAt":"2024-07-04T16:52:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"0nko","name":"Ondrej Ruttkay","path":"/0nko","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1522856?s=80&v=4"},"commit":{"message":"Fix lint issues","shortMessageHtmlLink":"Fix lint issues"}},{"before":null,"after":"27e5a285793c09317e2d306a8fb98fce0cc5c3da","ref":"refs/heads/feature/ondrej/rearranging-tabs","pushedAt":"2024-07-04T16:48:07.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"0nko","name":"Ondrej Ruttkay","path":"/0nko","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1522856?s=80&v=4"},"commit":{"message":"Fix printing IllegalStateException (#4704)\n\nTask/Issue URL:\r\nhttps://app.asana.com/0/1200204095367872/1207700638247735/f\r\n\r\n### Description\r\nFixes an IllegalStateException that is thrown when a printing job is\r\nalready pending.\r\n\r\n### Steps to test this PR\r\n\r\n_Printing pages_\r\n- [x] Visit a web site\r\n- [x] Select “Print Page\"\r\n- [x] Verify that you see “Print started” in logcat\r\n- [x] Print the page (I tested to PDF)\r\n- [x] Verify that the page prints successfully\r\n- [x] Verify that you see “Print finished” in logcat\r\n- [x] Repeat the above steps\r\n\r\n_Cancelling a print_\r\n- [x] Visit a web site\r\n- [x] Select “Print Page\"\r\n- [x] Verify that you see “Print started” in logcat\r\n- [x] Go back\r\n- [x] Verify that you see “Print finished” in logcat\r\n\r\n_Feature toggle (Disabled)_\r\n- [x] Point at the JSON blob linked in the task\r\n- [x] Visit a web site\r\n- [x] Select “Print Page\"\r\n- [x] Verify that you do not see “Print started” in logcat\r\n- [x] Go back\r\n- [x] Verify that you do not see “Print finished” in logcat","shortMessageHtmlLink":"Fix printing IllegalStateException (#4704)"}},{"before":"ee05cb41a4f9e63c54052447925930245d32c791","after":"00e026da5a3c70a91dff3ab83c90d8e34de2ad38","ref":"refs/heads/feature/ondrej/rearranging-tabs-ui","pushedAt":"2024-07-04T16:45:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"0nko","name":"Ondrej Ruttkay","path":"/0nko","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1522856?s=80&v=4"},"commit":{"message":"Update comments","shortMessageHtmlLink":"Update comments"}},{"before":"172fa310f634dba223d8b0cbdb14226543421510","after":"ee05cb41a4f9e63c54052447925930245d32c791","ref":"refs/heads/feature/ondrej/rearranging-tabs-ui","pushedAt":"2024-07-04T16:40:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"0nko","name":"Ondrej Ruttkay","path":"/0nko","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1522856?s=80&v=4"},"commit":{"message":"Revert unrelated changes","shortMessageHtmlLink":"Revert unrelated changes"}},{"before":null,"after":"172fa310f634dba223d8b0cbdb14226543421510","ref":"refs/heads/feature/ondrej/rearranging-tabs-ui","pushedAt":"2024-07-04T16:30:35.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"0nko","name":"Ondrej Ruttkay","path":"/0nko","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1522856?s=80&v=4"},"commit":{"message":"Add tab move handler","shortMessageHtmlLink":"Add tab move handler"}},{"before":null,"after":"e89ea7073ca740ee308fe28010ed618f89defa55","ref":"refs/heads/feature/craig/autofill_updated_copy_languages","pushedAt":"2024-07-04T16:27:07.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"CDRussell","name":"Craig Russell","path":"/CDRussell","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336281?s=80&v=4"},"commit":{"message":"Apply autofill translations for deleting all passwords","shortMessageHtmlLink":"Apply autofill translations for deleting all passwords"}},{"before":"c9127c1732d1d7a51e76794bb8592f00287fcdc9","after":"266ead0e8bf13a7881e0ef8235f9d722587838c7","ref":"refs/heads/feature/cris/duckplayer/create-module","pushedAt":"2024-07-04T14:46:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"CrisBarreiro","name":"Cris Barreiro","path":"/CrisBarreiro","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6297834?s=80&v=4"},"commit":{"message":"Add support for setValues and initialSetup (WIP)","shortMessageHtmlLink":"Add support for setValues and initialSetup (WIP)"}},{"before":"39b9224da062dffb1849ad85cded7b5503add15e","after":null,"ref":"refs/heads/feature/josh/fix-printing-exception","pushedAt":"2024-07-04T14:34:01.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"joshliebe","name":"Josh Leibstein","path":"/joshliebe","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3471025?s=80&v=4"}},{"before":"8874571d45ace5b77c85b0af9be210765d08ed2e","after":"27e5a285793c09317e2d306a8fb98fce0cc5c3da","ref":"refs/heads/develop","pushedAt":"2024-07-04T14:33:59.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"joshliebe","name":"Josh Leibstein","path":"/joshliebe","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3471025?s=80&v=4"},"commit":{"message":"Fix printing IllegalStateException (#4704)\n\nTask/Issue URL:\r\nhttps://app.asana.com/0/1200204095367872/1207700638247735/f\r\n\r\n### Description\r\nFixes an IllegalStateException that is thrown when a printing job is\r\nalready pending.\r\n\r\n### Steps to test this PR\r\n\r\n_Printing pages_\r\n- [x] Visit a web site\r\n- [x] Select “Print Page\"\r\n- [x] Verify that you see “Print started” in logcat\r\n- [x] Print the page (I tested to PDF)\r\n- [x] Verify that the page prints successfully\r\n- [x] Verify that you see “Print finished” in logcat\r\n- [x] Repeat the above steps\r\n\r\n_Cancelling a print_\r\n- [x] Visit a web site\r\n- [x] Select “Print Page\"\r\n- [x] Verify that you see “Print started” in logcat\r\n- [x] Go back\r\n- [x] Verify that you see “Print finished” in logcat\r\n\r\n_Feature toggle (Disabled)_\r\n- [x] Point at the JSON blob linked in the task\r\n- [x] Visit a web site\r\n- [x] Select “Print Page\"\r\n- [x] Verify that you do not see “Print started” in logcat\r\n- [x] Go back\r\n- [x] Verify that you do not see “Print finished” in logcat","shortMessageHtmlLink":"Fix printing IllegalStateException (#4704)"}},{"before":"3a366711c82b47dd2a20c526f14247958af362ea","after":"39b9224da062dffb1849ad85cded7b5503add15e","ref":"refs/heads/feature/josh/fix-printing-exception","pushedAt":"2024-07-04T14:10:16.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"joshliebe","name":"Josh Leibstein","path":"/joshliebe","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3471025?s=80&v=4"},"commit":{"message":"Rename test","shortMessageHtmlLink":"Rename test"}},{"before":"e963caeac3ae3a4a653fa028bf82d1a5b907306b","after":null,"ref":"refs/heads/feature/noelia/remove_onboarding_temporary_pixels","pushedAt":"2024-07-04T11:20:48.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"nalcalag","name":"Noelia Alcala","path":"/nalcalag","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20798495?s=80&v=4"}},{"before":"7a5c3121a0fdb43f255a72db54970bdcc4d8c2a1","after":"8874571d45ace5b77c85b0af9be210765d08ed2e","ref":"refs/heads/develop","pushedAt":"2024-07-04T11:20:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"nalcalag","name":"Noelia Alcala","path":"/nalcalag","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20798495?s=80&v=4"},"commit":{"message":"Onboarding: Remove temporary pixels (#4716)\n\nTask/Issue URL: https://app.asana.com/0/0/1207706558947933/f\r\n\r\n### Description\r\nRemove temporary pixels from extended onboarding\r\n\r\n### Steps to test this PR\r\n\r\n_Preonboarding pixels removal_\r\n- Fresh install from branch\r\n- [ ] Check `m_preonboarding_intro_shown` is **not** fired\r\n- [ ] Check `m_preonboarding_intro_shown_unique` is fired\r\n- Tap on **_Let's do it_** button\r\n- [ ] Check `m_preonboarding_comparison_chart_shown` is **not** fired\r\n- [ ] Check `m_preonboarding_comparison_chart_shown_unique` is fired\r\n- Tap on **Choose your browser button**\r\n- Select DDG as default browser\r\n- [ ] Check `m_preonboarding_affirmation_shown` is **not** fired\r\n- [ ] Check `m_preonboarding_affirmation_shown_unique` is fired\r\n- Tap on **Start browsing button**\r\n- Select \"how to say duck in spanish\" search suggestion\r\n- [ ] Check `m_onboarding_search_say_duck` is **not** fired\r\n- Open a new tab\r\n- Go to a custom site from the search bar\r\n- [ ] Check `m_onboarding_visit_site_custom` is fired\r\n- Open new tab\r\n- Select **Surprise me** option\r\n- [ ] Check `m_onboarding_visit_site_surprise_me` is **not** fired\r\n\r\n### No UI changes","shortMessageHtmlLink":"Onboarding: Remove temporary pixels (#4716)"}},{"before":"e8ad85d61c09dd71434d4aaa8909f9c3b5811b28","after":null,"ref":"refs/heads/feature/lukasz/show-host-in-download-dialog","pushedAt":"2024-07-04T07:14:37.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"lmac012","name":"Lukasz Macionczyk","path":"/lmac012","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4212474?s=80&v=4"}},{"before":"54db6136158e468aab8792f837cabee0628fff3f","after":"7a5c3121a0fdb43f255a72db54970bdcc4d8c2a1","ref":"refs/heads/develop","pushedAt":"2024-07-04T07:14:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lmac012","name":"Lukasz Macionczyk","path":"/lmac012","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4212474?s=80&v=4"},"commit":{"message":"Show host in download confirmation dialog (#4706)\n\nTask/Issue URL:\r\nhttps://app.asana.com/0/1142021229838617/1207476479082856/f\r\n\r\n### Description\r\n\r\nThis PR modifies the download confirmation dialog to show host extracted\r\nfrom download url.\r\n\r\n### Steps to test this PR\r\n\r\n- [x] Smoke test triggering file download on a few different sites.\r\n\r\n### UI changes\r\n| Before | After |\r\n| ------ | ----- |\r\n\r\n![Screenshot_20240703_130800](https://github.com/duckduckgo/Android/assets/4212474/866ccbe3-e367-4c17-85c0-614ef5bc78e8)|![Screenshot_20240703_130346](https://github.com/duckduckgo/Android/assets/4212474/e5ed109e-1449-47d1-9f00-0000650fa989)|","shortMessageHtmlLink":"Show host in download confirmation dialog (#4706)"}},{"before":"ee92667085ba8f669c1766530d5b840240879c78","after":"c9127c1732d1d7a51e76794bb8592f00287fcdc9","ref":"refs/heads/feature/cris/duckplayer/create-module","pushedAt":"2024-07-03T22:00:52.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"CrisBarreiro","name":"Cris Barreiro","path":"/CrisBarreiro","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6297834?s=80&v=4"},"commit":{"message":"Handle openDuckPlayer message","shortMessageHtmlLink":"Handle openDuckPlayer message"}},{"before":"c5ae0f07268f966accc44865642f693b0eaa0f43","after":"0e8fb836b706ba35cad324514d5b88127739e2c9","ref":"refs/heads/feature/craig/update_library_appcompat","pushedAt":"2024-07-03T21:27:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"CDRussell","name":"Craig Russell","path":"/CDRussell","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336281?s=80&v=4"},"commit":{"message":"Fix tests to ensure correct usage of argumentCaptors and any() mockito functions","shortMessageHtmlLink":"Fix tests to ensure correct usage of argumentCaptors and any() mockit…"}},{"before":"050b3d52bef92a415559dcf6fd8a554a48a8c861","after":null,"ref":"refs/heads/fix/karl/vpn/geoswitching-race-condition","pushedAt":"2024-07-03T19:47:24.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"karlenDimla","name":"Karl Dimla","path":"/karlenDimla","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2943941?s=80&v=4"}},{"before":"7f4728b068c81d29e206060fb2e569db9981b1fd","after":"54db6136158e468aab8792f837cabee0628fff3f","ref":"refs/heads/develop","pushedAt":"2024-07-03T19:47:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"karlenDimla","name":"Karl Dimla","path":"/karlenDimla","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2943941?s=80&v=4"},"commit":{"message":"Fix geoswithing race condition (#4717)\n\nTask/Issue URL:\r\nhttps://app.asana.com/0/488551667048375/1207718554839880/f\r\n\r\n### Description\r\nFix issue in VPN Geoswitching where changing server sometimes doesn't\r\nget applied.\r\n\r\n### Steps to test this PR\r\nhttps://app.asana.com/0/1202552961248957/1207717605286620/f","shortMessageHtmlLink":"Fix geoswithing race condition (#4717)"}},{"before":"7badae22bbdd744f7b8b549f242a7eafe46583a5","after":"c5ae0f07268f966accc44865642f693b0eaa0f43","ref":"refs/heads/feature/craig/update_library_appcompat","pushedAt":"2024-07-03T15:56:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"CDRussell","name":"Craig Russell","path":"/CDRussell","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336281?s=80&v=4"},"commit":{"message":"Fix breaking changes around view tree lifecycle owner","shortMessageHtmlLink":"Fix breaking changes around view tree lifecycle owner"}},{"before":null,"after":"050b3d52bef92a415559dcf6fd8a554a48a8c861","ref":"refs/heads/fix/karl/vpn/geoswitching-race-condition","pushedAt":"2024-07-03T15:41:48.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"karlenDimla","name":"Karl Dimla","path":"/karlenDimla","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2943941?s=80&v=4"},"commit":{"message":"Fix bug in not restarting VPN when location changed in geoswitching","shortMessageHtmlLink":"Fix bug in not restarting VPN when location changed in geoswitching"}},{"before":"f853c015d9e88554240c11a82a5008143883ed8c","after":"7badae22bbdd744f7b8b549f242a7eafe46583a5","ref":"refs/heads/feature/craig/update_library_appcompat","pushedAt":"2024-07-03T15:30:30.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"CDRussell","name":"Craig Russell","path":"/CDRussell","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1336281?s=80&v=4"},"commit":{"message":"Fix breaking changes around view tree lifecycle owner","shortMessageHtmlLink":"Fix breaking changes around view tree lifecycle owner"}},{"before":"45dce8eafc8c4b18ed01ed6463213f1c71ece4e3","after":"e963caeac3ae3a4a653fa028bf82d1a5b907306b","ref":"refs/heads/feature/noelia/remove_onboarding_temporary_pixels","pushedAt":"2024-07-03T14:48:56.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"nalcalag","name":"Noelia Alcala","path":"/nalcalag","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20798495?s=80&v=4"},"commit":{"message":"fix tests","shortMessageHtmlLink":"fix tests"}},{"before":null,"after":"45dce8eafc8c4b18ed01ed6463213f1c71ece4e3","ref":"refs/heads/feature/noelia/remove_onboarding_temporary_pixels","pushedAt":"2024-07-03T14:12:32.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"nalcalag","name":"Noelia Alcala","path":"/nalcalag","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20798495?s=80&v=4"},"commit":{"message":"Moved new pixels to AppPixel class and remove OnboardingExperimentPixel class","shortMessageHtmlLink":"Moved new pixels to AppPixel class and remove OnboardingExperimentPix…"}},{"before":"f7bb1a172ec0c12e69329ee50b40cd50fb85bb05","after":null,"ref":"refs/heads/fix/karl/rmf/ppro/sub-status-active-fix","pushedAt":"2024-07-03T14:10:51.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"karlenDimla","name":"Karl Dimla","path":"/karlenDimla","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2943941?s=80&v=4"}},{"before":"9d09b6bf20228cf716625aba85c44fa5d1b565d1","after":"7f4728b068c81d29e206060fb2e569db9981b1fd","ref":"refs/heads/develop","pushedAt":"2024-07-03T14:10:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"karlenDimla","name":"Karl Dimla","path":"/karlenDimla","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2943941?s=80&v=4"},"commit":{"message":"Remove not-auto-renewable from ACTIVE mapping (#4715)\n\nTask/Issue URL:\r\nhttps://app.asana.com/0/1201462763415876/1207718752492279/f\r\n\r\n### Description\r\nPreviously, we map n`ot-auto-renewable` to `ACTIVE` and `EXPIRING`\r\nstates. For consistency with other platforms, considering we accept an\r\n`array` in `pproSubscriptionStatus` already, we don't need to map\r\n`not-auto-renewable` to 2 states anymore.\r\n\r\nTo fix this, we are only mapping `not-auto-renewable` to `ACTIVE` state.\r\n\r\n### Steps to test this PR\r\nQa-optional","shortMessageHtmlLink":"Remove not-auto-renewable from ACTIVE mapping (#4715)"}},{"before":"26dad78cbb857a4e0c8cc0079a5f25c0fabbfe0a","after":null,"ref":"refs/heads/feature/david/05-15-new_tab_extract_legacy_page","pushedAt":"2024-07-03T14:04:50.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"malmstein","name":"David González","path":"/malmstein","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/531613?s=80&v=4"}},{"before":"86541926ed139b1ab9733d7cedcd11125bea9607","after":"9d09b6bf20228cf716625aba85c44fa5d1b565d1","ref":"refs/heads/develop","pushedAt":"2024-07-03T14:04:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"malmstein","name":"David González","path":"/malmstein","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/531613?s=80&v=4"},"commit":{"message":"New Tab: Extract Legacy Page (#4567)\n\nTask/Issue URL: https://app.asana.com/0/72649045549333/1207111525225329\r\n\r\n### Description\r\nThis PR extracts the New Tab Page logic outside of BTF.\r\nThis is necessary for future work done to NTP.\r\n\r\n### Steps to test this PR\r\n_Smoke tests_\r\n- [ ] Install app and add some favourites\r\n- [ ] Verify bookmarks appear in Focused state from a site and in New\r\nTab Page\r\n\r\n---------\r\n\r\nCo-authored-by: Aitor Viana ","shortMessageHtmlLink":"New Tab: Extract Legacy Page (#4567)"}},{"before":"62a3de227561c9c5a1fbd40c413014d21ca016fa","after":"26dad78cbb857a4e0c8cc0079a5f25c0fabbfe0a","ref":"refs/heads/feature/david/05-15-new_tab_extract_legacy_page","pushedAt":"2024-07-03T13:49:31.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"malmstein","name":"David González","path":"/malmstein","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/531613?s=80&v=4"},"commit":{"message":"code cleaing","shortMessageHtmlLink":"code cleaing"}},{"before":"61a393fafb71931ed3668c60ab6ac0aff0a2ca5c","after":null,"ref":"refs/heads/fix/karl/vpn/custom-dns-vpn-screen-bug","pushedAt":"2024-07-03T13:45:29.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"karlenDimla","name":"Karl Dimla","path":"/karlenDimla","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2943941?s=80&v=4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEdzt5xgA","startCursor":null,"endCursor":null}},"title":"Activity · duckduckgo/Android"}