1
mirror of https://github.com/revanced/revanced-integrations synced 2025-11-19 03:23:27 +01:00

Compare commits

...

202 Commits

Author SHA1 Message Date
semantic-release-bot
2ee18fce69 chore(release): 0.106.0 [skip ci]
# [0.106.0](https://github.com/revanced/revanced-integrations/compare/v0.105.0...v0.106.0) (2023-05-01)

### Bug Fixes

* **youtube/general-ads:** remove broken ad filter ([#355](https://github.com/revanced/revanced-integrations/issues/355)) ([061ebc6](061ebc6546))
* **youtube/return-youtube-dislike:** support old UI layouts ([#378](https://github.com/revanced/revanced-integrations/issues/378)) ([d3f8fb9](d3f8fb9739))
* **youtube/spoof-signature-verification:** more fixes for subtitle window positions  ([#374](https://github.com/revanced/revanced-integrations/issues/374)) ([8cc1b6e](8cc1b6ea4a))
* **youtube:** no longer need to restart the app after changing `copy-video-url` or `downloads` patch ([#372](https://github.com/revanced/revanced-integrations/issues/372)) ([6b15514](6b15514885))

### Features

* add appreciation message for new contributors ([78d56d4](78d56d4fe1))
* **youtube/general-ads:** hide multiple audio track button on video player overlay ([#377](https://github.com/revanced/revanced-integrations/issues/377)) ([7fc7336](7fc73368f1))
* **youtube/general-ads:** hide new type of ad ([15f9c90](15f9c90941))
* **youtube/hide-get-premium:** hide get premium advertisements under video player ([#376](https://github.com/revanced/revanced-integrations/issues/376)) ([36fd284](36fd2844c4))
* **youtube/spoof-app-version:** user selectable version to spoof ([#375](https://github.com/revanced/revanced-integrations/issues/375)) ([f6f6c93](f6f6c93c57))
2023-05-01 17:05:55 +00:00
oSumAtrIX
e774be0f05 chore: merge branch dev to main (#373) 2023-05-01 19:03:55 +02:00
LisoUseInAIKyrios
8a7098cce4 refactor(youtube/return-youtube-dislike): simplify branching (#379) 2023-05-01 15:12:31 +04:00
semantic-release-bot
a93a704c22 chore(release): 0.106.0-dev.7 [skip ci]
# [0.106.0-dev.7](https://github.com/revanced/revanced-integrations/compare/v0.106.0-dev.6...v0.106.0-dev.7) (2023-05-01)

### Bug Fixes

* **youtube/general-ads:** remove broken ad filter ([#355](https://github.com/revanced/revanced-integrations/issues/355)) ([061ebc6](061ebc6546))
2023-05-01 04:31:35 +00:00
johnconner122
061ebc6546 fix(youtube/general-ads): remove broken ad filter (#355) 2023-05-01 06:29:44 +02:00
semantic-release-bot
0c6b22e929 chore(release): 0.106.0-dev.6 [skip ci]
# [0.106.0-dev.6](https://github.com/revanced/revanced-integrations/compare/v0.106.0-dev.5...v0.106.0-dev.6) (2023-05-01)

### Features

* **youtube/general-ads:** hide multiple audio track button on video player overlay ([#377](https://github.com/revanced/revanced-integrations/issues/377)) ([7fc7336](7fc73368f1))
2023-05-01 04:28:19 +00:00
LisoUseInAIKyrios
7fc73368f1 feat(youtube/general-ads): hide multiple audio track button on video player overlay (#377) 2023-05-01 06:26:12 +02:00
semantic-release-bot
8923fa9fd6 chore(release): 0.106.0-dev.5 [skip ci]
# [0.106.0-dev.5](https://github.com/revanced/revanced-integrations/compare/v0.106.0-dev.4...v0.106.0-dev.5) (2023-04-30)

### Features

* **youtube/general-ads:** hide new type of ad ([15f9c90](15f9c90941))
2023-04-30 21:16:57 +00:00
oSumAtrIX
15f9c90941 feat(youtube/general-ads): hide new type of ad 2023-04-30 23:13:39 +02:00
semantic-release-bot
c8784a5966 chore(release): 0.106.0-dev.4 [skip ci]
# [0.106.0-dev.4](https://github.com/revanced/revanced-integrations/compare/v0.106.0-dev.3...v0.106.0-dev.4) (2023-04-30)

### Bug Fixes

* **youtube/return-youtube-dislike:** support old UI layouts ([#378](https://github.com/revanced/revanced-integrations/issues/378)) ([d3f8fb9](d3f8fb9739))
2023-04-30 19:43:40 +00:00
LisoUseInAIKyrios
d3f8fb9739 fix(youtube/return-youtube-dislike): support old UI layouts (#378) 2023-04-30 23:41:13 +04:00
semantic-release-bot
ff0d64287c chore(release): 0.106.0-dev.3 [skip ci]
# [0.106.0-dev.3](https://github.com/revanced/revanced-integrations/compare/v0.106.0-dev.2...v0.106.0-dev.3) (2023-04-30)

### Features

* **youtube/hide-get-premium:** hide get premium advertisements under video player ([#376](https://github.com/revanced/revanced-integrations/issues/376)) ([36fd284](36fd2844c4))
2023-04-30 18:36:38 +00:00
LisoUseInAIKyrios
36fd2844c4 feat(youtube/hide-get-premium): hide get premium advertisements under video player (#376) 2023-04-30 22:34:37 +04:00
oSumAtrIX
0de83fff0e chore: update gradle and dependencies 2023-04-30 05:27:21 +02:00
semantic-release-bot
24a609288f chore(release): 0.106.0-dev.2 [skip ci]
# [0.106.0-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.106.0-dev.1...v0.106.0-dev.2) (2023-04-30)

### Features

* add appreciation message for new contributors ([78d56d4](78d56d4fe1))
2023-04-30 01:17:18 +00:00
oSumAtrIX
78d56d4fe1 feat: add appreciation message for new contributors 2023-04-30 03:15:36 +02:00
semantic-release-bot
27fdcfff08 chore(release): 0.106.0-dev.1 [skip ci]
# [0.106.0-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.105.1-dev.2...v0.106.0-dev.1) (2023-04-28)

### Features

* **youtube/spoof-app-version:** user selectable version to spoof ([#375](https://github.com/revanced/revanced-integrations/issues/375)) ([f6f6c93](f6f6c93c57))
2023-04-28 17:53:58 +00:00
LisoUseInAIKyrios
f6f6c93c57 feat(youtube/spoof-app-version): user selectable version to spoof (#375) 2023-04-28 21:52:09 +04:00
semantic-release-bot
a661dac623 chore(release): 0.105.1-dev.2 [skip ci]
## [0.105.1-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.105.1-dev.1...v0.105.1-dev.2) (2023-04-28)

### Bug Fixes

* **youtube/spoof-signature-verification:** more fixes for subtitle window positions  ([#374](https://github.com/revanced/revanced-integrations/issues/374)) ([8cc1b6e](8cc1b6ea4a))
2023-04-28 08:51:38 +00:00
LisoUseInAIKyrios
8cc1b6ea4a fix(youtube/spoof-signature-verification): more fixes for subtitle window positions (#374) 2023-04-28 12:49:41 +04:00
semantic-release-bot
829895874b chore(release): 0.105.1-dev.1 [skip ci]
## [0.105.1-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.105.0...v0.105.1-dev.1) (2023-04-28)

### Bug Fixes

* **youtube:** no longer need to restart the app after changing `copy-video-url` or `downloads` patch ([#372](https://github.com/revanced/revanced-integrations/issues/372)) ([6b15514](6b15514885))
2023-04-28 06:18:05 +00:00
LisoUseInAIKyrios
6b15514885 fix(youtube): no longer need to restart the app after changing copy-video-url or downloads patch (#372)
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-04-28 10:16:08 +04:00
semantic-release-bot
5b53e02613 chore(release): 0.105.0 [skip ci]
# [0.105.0](https://github.com/revanced/revanced-integrations/compare/v0.104.0...v0.105.0) (2023-04-27)

### Bug Fixes

* **youtube/minimized-playback:** disable minimized playback for shorts ([#371](https://github.com/revanced/revanced-integrations/issues/371)) ([df4b03f](df4b03fed5))
* **youtube/return-youtube-dislike:** fix dislikes using wrong font if dark mode is enabled during video playback ([#368](https://github.com/revanced/revanced-integrations/issues/368)) ([3b37a3b](3b37a3b41f))
* **youtube/spoof-signature-verification:** additional fixes for subtitle window positions ([#369](https://github.com/revanced/revanced-integrations/issues/369)) ([6f2ae31](6f2ae313cf))

### Features

* **youtube/sponsorblock:** automatically hide skip button ([#365](https://github.com/revanced/revanced-integrations/issues/365)) ([75dad2f](75dad2f307))
2023-04-27 21:37:45 +00:00
oSumAtrIX
2deacc5035 chore: merge branch dev to main (#370) 2023-04-27 23:35:22 +02:00
oSumAtrIX
46d70a3e00 refactor: use better method name 2023-04-27 21:08:32 +02:00
semantic-release-bot
91ce39378a chore(release): 0.105.0-dev.2 [skip ci]
# [0.105.0-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.105.0-dev.1...v0.105.0-dev.2) (2023-04-27)

### Bug Fixes

* **youtube/minimized-playback:** disable minimized playback for shorts ([#371](https://github.com/revanced/revanced-integrations/issues/371)) ([df4b03f](df4b03fed5))
2023-04-27 13:40:41 +00:00
LisoUseInAIKyrios
df4b03fed5 fix(youtube/minimized-playback): disable minimized playback for shorts (#371) 2023-04-27 17:38:52 +04:00
semantic-release-bot
9f8063880c chore(release): 0.105.0-dev.1 [skip ci]
# [0.105.0-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.104.1-dev.2...v0.105.0-dev.1) (2023-04-26)

### Features

* **youtube/sponsorblock:** automatically hide skip button ([#365](https://github.com/revanced/revanced-integrations/issues/365)) ([75dad2f](75dad2f307))
2023-04-26 08:33:11 +00:00
LisoUseInAIKyrios
75dad2f307 feat(youtube/sponsorblock): automatically hide skip button (#365)
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-04-26 12:31:27 +04:00
semantic-release-bot
80dc8f0421 chore(release): 0.104.1-dev.2 [skip ci]
## [0.104.1-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.104.1-dev.1...v0.104.1-dev.2) (2023-04-25)

### Bug Fixes

* **youtube/spoof-signature-verification:** additional fixes for subtitle window positions ([#369](https://github.com/revanced/revanced-integrations/issues/369)) ([6f2ae31](6f2ae313cf))
2023-04-25 13:24:36 +00:00
LisoUseInAIKyrios
6f2ae313cf fix(youtube/spoof-signature-verification): additional fixes for subtitle window positions (#369) 2023-04-25 17:22:52 +04:00
semantic-release-bot
cb7063b2b3 chore(release): 0.104.1-dev.1 [skip ci]
## [0.104.1-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.104.0...v0.104.1-dev.1) (2023-04-25)

### Bug Fixes

* **youtube/return-youtube-dislike:** fix dislikes using wrong font if dark mode is enabled during video playback ([#368](https://github.com/revanced/revanced-integrations/issues/368)) ([3b37a3b](3b37a3b41f))
2023-04-25 12:50:21 +00:00
LisoUseInAIKyrios
3b37a3b41f fix(youtube/return-youtube-dislike): fix dislikes using wrong font if dark mode is enabled during video playback (#368) 2023-04-25 16:48:01 +04:00
semantic-release-bot
13e4be8567 chore(release): 0.104.0 [skip ci]
# [0.104.0](https://github.com/revanced/revanced-integrations/compare/v0.103.0...v0.104.0) (2023-04-24)

### Bug Fixes

* **spoof-wifi-connection:** fixed crash when wifi is disabled ([#363](https://github.com/revanced/revanced-integrations/issues/363)) ([7fc8e88](7fc8e882d8))
* **youtube/hide-video-action-buttons:** fix hide action buttons not working for some users ([#366](https://github.com/revanced/revanced-integrations/issues/366)) ([246deb1](246deb1602))
* **youtube/sponsorblock:** Include milliseconds in the voting menu ([#362](https://github.com/revanced/revanced-integrations/issues/362)) ([6952c50](6952c50595))

### Features

* **youtube/wide-searchbar:** rename patch ([8493f57](8493f57879))
* **youtube:** remove non working patch `hide-my-mix` ([436a84e](436a84ee07))
2023-04-24 15:37:05 +00:00
oSumAtrIX
be7b6f2a20 chore: merge branch dev to main (#364) 2023-04-24 17:35:18 +02:00
semantic-release-bot
b9f6c62060 chore(release): 0.104.0-dev.1 [skip ci]
# [0.104.0-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.103.1-dev.2...v0.104.0-dev.1) (2023-04-24)

### Features

* **youtube/wide-searchbar:** rename patch ([2320880](2320880a42))
* **youtube:** bump compatibility to `18.15.40` ([#367](https://github.com/revanced/revanced-integrations/issues/367)) ([52a3193](52a3193087))
* **youtube:** remove non working patch `hide-my-mix` ([98edcdd](98edcdd589))
2023-04-24 17:33:46 +02:00
oSumAtrIX
8493f57879 feat(youtube/wide-searchbar): rename patch 2023-04-24 17:33:45 +02:00
oSumAtrIX
436a84ee07 feat(youtube): remove non working patch hide-my-mix 2023-04-24 17:33:45 +02:00
semantic-release-bot
f2603d3d79 chore(release): 0.103.1-dev.2 [skip ci]
## [0.103.1-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.103.1-dev.1...v0.103.1-dev.2) (2023-04-23)

### Bug Fixes

* **youtube/hide-video-action-buttons:** fix hide action buttons not working for some users ([#366](https://github.com/revanced/revanced-integrations/issues/366)) ([afd9b6e](afd9b6e305))
2023-04-24 17:33:45 +02:00
LisoUseInAIKyrios
246deb1602 fix(youtube/hide-video-action-buttons): fix hide action buttons not working for some users (#366) 2023-04-24 17:33:45 +02:00
semantic-release-bot
050766de1d chore(release): 0.103.1-dev.1 [skip ci]
## [0.103.1-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.103.0...v0.103.1-dev.1) (2023-04-22)

### Bug Fixes

* **youtube/sponsorblock:** Include milliseconds in the voting menu ([#362](https://github.com/revanced/revanced-integrations/issues/362)) ([1ada30d](1ada30d5c9))
2023-04-24 17:33:44 +02:00
cane
6952c50595 fix(youtube/sponsorblock): Include milliseconds in the voting menu (#362) 2023-04-24 17:33:44 +02:00
LisoUseInAIKyrios
7fc8e882d8 fix(spoof-wifi-connection): fixed crash when wifi is disabled (#363) 2023-04-24 17:33:43 +02:00
semantic-release-bot
a61148cac2 chore(release): 0.103.0 [skip ci]
# [0.103.0](https://github.com/revanced/revanced-integrations/compare/v0.102.0...v0.103.0) (2023-04-21)

### Bug Fixes

* minor syntax error ([8797765](8797765efa))
* **youtube/general-ads:** hide new types of ads ([#339](https://github.com/revanced/revanced-integrations/issues/339)) ([6528d44](6528d444b4))
* **youtube/hide-video-action-buttons:** fix 'hide share button' ([#360](https://github.com/revanced/revanced-integrations/issues/360)) ([a2af2c0](a2af2c0c9f))
* **youtube/return-youtube-dislike:** fix error toast when voting ([#349](https://github.com/revanced/revanced-integrations/issues/349)) ([e3d923d](e3d923d564))
* **youtube/return-youtube-dislike:** render dislikes when scrolling into the screen ([#350](https://github.com/revanced/revanced-integrations/issues/350)) ([41c07f7](41c07f77f4))
* **youtube/return-youtube-dislike:** stale dislike data shown after opening / closing the app during shorts playback ([#356](https://github.com/revanced/revanced-integrations/issues/356)) ([212e4f2](212e4f2ce4))
* **youtube/settings:** fix dialog not shown if dismissed with back button ([584de16](584de16236))
* **youtube/sponsorblock:** always show the video time without segments using left to right layout ([#359](https://github.com/revanced/revanced-integrations/issues/359)) ([86c2789](86c27890ad))
* **youtube/sponsorblock:** change default behavior to better match the browser ([#353](https://github.com/revanced/revanced-integrations/issues/353)) ([b959c8e](b959c8ef98))
* **youtube/sponsorblock:** settings do not show default behavior ([#351](https://github.com/revanced/revanced-integrations/issues/351)) ([6dbccfd](6dbccfd472))
* **youtube/sponsorblock:** update HTTP user agent ([#344](https://github.com/revanced/revanced-integrations/issues/344)) ([3025103](3025103014))

### Features

* **youtube/general-ads:** block new type of ad ([6265a91](6265a91841))
* **youtube/general-ads:** hide new type of ad ([5ba4cbd](5ba4cbd4e0))
* **youtube/general-ads:** hide new type of ad ([f818490](f8184905bd))
* **youtube/general-ads:** hide new type of movie offer ad ([da7b669](da7b669c97))
* **youtube/settings:** disable preference control if the feature is turned off.  show a dialog explaining side effects of some patches ([#328](https://github.com/revanced/revanced-integrations/issues/328)) ([a0ad968](a0ad968aaa))
* **youtube/sponsorblock:** skip to video highlight ([#352](https://github.com/revanced/revanced-integrations/issues/352)) ([03f09cf](03f09cf7bc))
* **youtube:** user selectable default video speed and quality ([#354](https://github.com/revanced/revanced-integrations/issues/354)) ([14223f4](14223f40b5))
2023-04-21 13:49:05 +00:00
oSumAtrIX
c2ff0c45ab chore: merge branch dev to main (#361) 2023-04-21 15:47:23 +02:00
semantic-release-bot
587689ed7b chore(release): 0.103.0-dev.7 [skip ci]
# [0.103.0-dev.7](https://github.com/revanced/revanced-integrations/compare/v0.103.0-dev.6...v0.103.0-dev.7) (2023-04-20)

### Bug Fixes

* **youtube/hide-video-action-buttons:** fix 'hide share button' ([#360](https://github.com/revanced/revanced-integrations/issues/360)) ([a2af2c0](a2af2c0c9f))
2023-04-20 06:43:27 +00:00
LisoUseInAIKyrios
a2af2c0c9f fix(youtube/hide-video-action-buttons): fix 'hide share button' (#360) 2023-04-20 10:41:36 +04:00
semantic-release-bot
f7c3543d4f chore(release): 0.103.0-dev.6 [skip ci]
# [0.103.0-dev.6](https://github.com/revanced/revanced-integrations/compare/v0.103.0-dev.5...v0.103.0-dev.6) (2023-04-19)

### Bug Fixes

* **youtube/sponsorblock:** always show the video time without segments using left to right layout ([#359](https://github.com/revanced/revanced-integrations/issues/359)) ([86c2789](86c27890ad))
2023-04-19 09:32:27 +00:00
LisoUseInAIKyrios
86c27890ad fix(youtube/sponsorblock): always show the video time without segments using left to right layout (#359) 2023-04-19 13:30:46 +04:00
semantic-release-bot
2ea55af9ce chore(release): 0.103.0-dev.5 [skip ci]
# [0.103.0-dev.5](https://github.com/revanced/revanced-integrations/compare/v0.103.0-dev.4...v0.103.0-dev.5) (2023-04-19)

### Bug Fixes

* **youtube/return-youtube-dislike:** render dislikes when scrolling into the screen ([#350](https://github.com/revanced/revanced-integrations/issues/350)) ([41c07f7](41c07f77f4))
2023-04-19 06:37:56 +00:00
LisoUseInAIKyrios
41c07f77f4 fix(youtube/return-youtube-dislike): render dislikes when scrolling into the screen (#350)
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-04-19 10:36:10 +04:00
semantic-release-bot
48050c1c50 chore(release): 0.103.0-dev.4 [skip ci]
# [0.103.0-dev.4](https://github.com/revanced/revanced-integrations/compare/v0.103.0-dev.3...v0.103.0-dev.4) (2023-04-18)

### Bug Fixes

* minor syntax error ([8797765](8797765efa))
2023-04-18 00:01:33 +00:00
oSumAtrIX
8797765efa fix: minor syntax error 2023-04-18 01:59:32 +02:00
semantic-release-bot
fb8442823e chore(release): 0.103.0-dev.3 [skip ci]
# [0.103.0-dev.3](https://github.com/revanced/revanced-integrations/compare/v0.103.0-dev.2...v0.103.0-dev.3) (2023-04-17)

### Features

* **youtube/general-ads:** hide new type of movie offer ad ([da7b669](da7b669c97))
2023-04-17 23:57:37 +00:00
oSumAtrIX
da7b669c97 feat(youtube/general-ads): hide new type of movie offer ad 2023-04-18 01:55:33 +02:00
semantic-release-bot
4d9b41ca3a chore(release): 0.103.0-dev.2 [skip ci]
# [0.103.0-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.103.0-dev.1...v0.103.0-dev.2) (2023-04-16)

### Features

* **youtube/sponsorblock:** skip to video highlight ([#352](https://github.com/revanced/revanced-integrations/issues/352)) ([03f09cf](03f09cf7bc))
2023-04-16 18:20:16 +00:00
LisoUseInAIKyrios
03f09cf7bc feat(youtube/sponsorblock): skip to video highlight (#352) 2023-04-16 22:18:32 +04:00
semantic-release-bot
76a01d1b7c chore(release): 0.103.0-dev.1 [skip ci]
# [0.103.0-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.102.0...v0.103.0-dev.1) (2023-04-16)

### Bug Fixes

* **youtube/general-ads:** hide new types of ads ([#339](https://github.com/revanced/revanced-integrations/issues/339)) ([6528d44](6528d444b4))
* **youtube/return-youtube-dislike:** fix error toast when voting ([#349](https://github.com/revanced/revanced-integrations/issues/349)) ([e3d923d](e3d923d564))
* **youtube/return-youtube-dislike:** stale dislike data shown after opening / closing the app during shorts playback ([#356](https://github.com/revanced/revanced-integrations/issues/356)) ([212e4f2](212e4f2ce4))
* **youtube/settings:** fix dialog not shown if dismissed with back button ([584de16](584de16236))
* **youtube/sponsorblock:** change default behavior to better match the browser ([#353](https://github.com/revanced/revanced-integrations/issues/353)) ([b959c8e](b959c8ef98))
* **youtube/sponsorblock:** settings do not show default behavior ([#351](https://github.com/revanced/revanced-integrations/issues/351)) ([6dbccfd](6dbccfd472))
* **youtube/sponsorblock:** update HTTP user agent ([#344](https://github.com/revanced/revanced-integrations/issues/344)) ([3025103](3025103014))

### Features

* **youtube/general-ads:** block new type of ad ([6265a91](6265a91841))
* **youtube/general-ads:** hide new type of ad ([5ba4cbd](5ba4cbd4e0))
* **youtube/general-ads:** hide new type of ad ([f818490](f8184905bd))
* **youtube/settings:** disable preference control if the feature is turned off.  show a dialog explaining side effects of some patches ([#328](https://github.com/revanced/revanced-integrations/issues/328)) ([a0ad968](a0ad968aaa))
* **youtube:** user selectable default video speed and quality ([#354](https://github.com/revanced/revanced-integrations/issues/354)) ([14223f4](14223f40b5))
2023-04-16 17:32:01 +00:00
LisoUseInAIKyrios
14223f40b5 feat(youtube): user selectable default video speed and quality (#354)
Co-authored-by: johnconner122 <107796137+johnconner122@users.noreply.github.com>
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-04-16 19:27:39 +02:00
oSumAtrIX
5ba4cbd4e0 feat(youtube/general-ads): hide new type of ad 2023-04-16 19:27:39 +02:00
LisoUseInAIKyrios
212e4f2ce4 fix(youtube/return-youtube-dislike): stale dislike data shown after opening / closing the app during shorts playback (#356) 2023-04-16 19:27:38 +02:00
LisoUseInAIKyrios
b959c8ef98 fix(youtube/sponsorblock): change default behavior to better match the browser (#353) 2023-04-16 19:27:38 +02:00
oSumAtrIX
6265a91841 feat(youtube/general-ads): block new type of ad 2023-04-16 19:27:37 +02:00
LisoUseInAIKyrios
6dbccfd472 fix(youtube/sponsorblock): settings do not show default behavior (#351) 2023-04-16 19:27:37 +02:00
LisoUseInAIKyrios
e3d923d564 fix(youtube/return-youtube-dislike): fix error toast when voting (#349) 2023-04-16 19:27:36 +02:00
LisoUseInAIKyrios
80ae9ebbd2 refactor(youtube/settings): remove code that is no longer needed 2023-04-16 19:27:36 +02:00
LisoUseInAIKyrios
584de16236 fix(youtube/settings): fix dialog not shown if dismissed with back button 2023-04-16 19:27:35 +02:00
LisoUseInAIKyrios
a0ad968aaa feat(youtube/settings): disable preference control if the feature is turned off. show a dialog explaining side effects of some patches (#328)
Co-authored-by: semantic-release-bot <semantic-release-bot@martynus.net>
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-04-16 19:27:31 +02:00
LisoUseInAIKyrios
d4de3f6819 refactor(youtube/video-information): include video speed (#345) 2023-04-16 19:26:53 +02:00
oSumAtrIX
22e453706d chore: bump dependencies 2023-04-16 19:26:53 +02:00
oSumAtrIX
bbb07ec9c8 ci: use correct checkmark syntax in PR body 2023-04-16 19:26:52 +02:00
LisoUseInAIKyrios
3025103014 fix(youtube/sponsorblock): update HTTP user agent (#344) 2023-04-16 19:26:52 +02:00
LisoUseInAIKyrios
e3529cfcec refactor(youtube/sponsorblock): improve various implementations (#308)
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-04-16 19:26:52 +02:00
johnconner122
6528d444b4 fix(youtube/general-ads): hide new types of ads (#339) 2023-04-16 19:26:51 +02:00
oSumAtrIX
f8184905bd feat(youtube/general-ads): hide new type of ad 2023-04-16 19:26:51 +02:00
semantic-release-bot
5981e99e56 chore(release): 0.102.0 [skip ci]
# [0.102.0](https://github.com/revanced/revanced-integrations/compare/v0.101.1...v0.102.0) (2023-04-13)

### Features

* **youtube/spoof-signature-verification:** enable by default ([#357](https://github.com/revanced/revanced-integrations/issues/357)) ([214f2c8](214f2c89c2))
2023-04-13 19:30:49 +00:00
Robert
214f2c89c2 feat(youtube/spoof-signature-verification): enable by default (#357) 2023-04-13 21:28:57 +02:00
semantic-release-bot
a7ae215bf7 chore(release): 0.101.1 [skip ci]
## [0.101.1](https://github.com/revanced/revanced-integrations/compare/v0.101.0...v0.101.1) (2023-04-13)

### Bug Fixes

* **youtube/spoof-signature-verification:** additional fixes for subtitle locations ([#346](https://github.com/revanced/revanced-integrations/issues/346)) ([eeddb59](eeddb59b08))
* **youtube/spoof-signature-verification:** fixed subtitles in wrong location ([#343](https://github.com/revanced/revanced-integrations/issues/343)) ([1a0a6ee](1a0a6ee90b))
* **youtube/spoof-signature-verification:** spoof videos in playlists ([86bedb2](86bedb2183))
2023-04-13 04:14:47 +00:00
LisoUseInAIKyrios
eeddb59b08 fix(youtube/spoof-signature-verification): additional fixes for subtitle locations (#346)
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-04-13 06:10:52 +02:00
LisoUseInAIKyrios
1a0a6ee90b fix(youtube/spoof-signature-verification): fixed subtitles in wrong location (#343) 2023-04-13 06:10:51 +02:00
oSumAtrIX
86bedb2183 fix(youtube/spoof-signature-verification): spoof videos in playlists 2023-04-13 06:10:50 +02:00
semantic-release-bot
5b9682522e chore(release): 0.101.0 [skip ci]
# [0.101.0](https://github.com/revanced/revanced-integrations/compare/v0.100.1...v0.101.0) (2023-03-29)

### Bug Fixes

* **youtube/remember-playback-speed:**  allow to not remember playback speed ([#338](https://github.com/revanced/revanced-integrations/issues/338)) ([7627e5d](7627e5d057))
* **youtube/return-youtube-dislike:** fix right to left text layout ([#333](https://github.com/revanced/revanced-integrations/issues/333)) ([2dd1431](2dd14313a6))
* **youtube/return-youtube-dislike:** layout fix for low dpi devices ([#335](https://github.com/revanced/revanced-integrations/issues/335)) ([46e0272](46e0272f9e))
* **youtube/spoof-signature-verification:** fix audio during home feed video playback ([#336](https://github.com/revanced/revanced-integrations/issues/336)) ([68d0930](68d09305b9))

### Features

* **youtube/spoof-signature-verification:** automatic signature spoofing ([d16980e](d16980ef2f))
2023-03-29 04:28:34 +00:00
oSumAtrIX
6d32dff400 chore: merge branch dev to main (#334) 2023-03-29 06:26:45 +02:00
semantic-release-bot
5cb5656324 chore(release): 0.101.0-dev.2 [skip ci]
# [0.101.0-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.101.0-dev.1...v0.101.0-dev.2) (2023-03-19)

### Bug Fixes

* **youtube/remember-playback-speed:**  allow to not remember playback speed ([#338](https://github.com/revanced/revanced-integrations/issues/338)) ([7627e5d](7627e5d057))
2023-03-19 22:02:40 +00:00
LisoUseInAIKyrios
7627e5d057 fix(youtube/remember-playback-speed): allow to not remember playback speed (#338)
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-19 23:00:34 +01:00
oSumAtrIX
0810f84c4c ci: add dependency section when opening a PR 2023-03-19 22:58:15 +01:00
semantic-release-bot
8301fa07fd chore(release): 0.101.0-dev.1 [skip ci]
# [0.101.0-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.100.2-dev.3...v0.101.0-dev.1) (2023-03-17)

### Features

* **youtube/spoof-signature-verification:** automatic signature spoofing ([d16980e](d16980ef2f))
2023-03-17 18:00:46 +00:00
LisoUseInAIKyrios
d16980ef2f feat(youtube/spoof-signature-verification): automatic signature spoofing
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-17 21:59:04 +04:00
semantic-release-bot
83510e51b3 chore(release): 0.100.2-dev.3 [skip ci]
## [0.100.2-dev.3](https://github.com/revanced/revanced-integrations/compare/v0.100.2-dev.2...v0.100.2-dev.3) (2023-03-15)

### Bug Fixes

* **youtube/spoof-signature-verification:** fix audio during home feed video playback ([#336](https://github.com/revanced/revanced-integrations/issues/336)) ([68d0930](68d09305b9))
2023-03-15 17:41:14 +00:00
LisoUseInAIKyrios
68d09305b9 fix(youtube/spoof-signature-verification): fix audio during home feed video playback (#336)
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-15 21:39:18 +04:00
semantic-release-bot
dc5c1b45ba chore(release): 0.100.2-dev.2 [skip ci]
## [0.100.2-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.100.2-dev.1...v0.100.2-dev.2) (2023-03-14)

### Bug Fixes

* **youtube/return-youtube-dislike:** layout fix for low dpi devices ([#335](https://github.com/revanced/revanced-integrations/issues/335)) ([46e0272](46e0272f9e))
2023-03-14 22:46:09 +00:00
LisoUseInAIKyrios
46e0272f9e fix(youtube/return-youtube-dislike): layout fix for low dpi devices (#335) 2023-03-15 02:44:05 +04:00
semantic-release-bot
69ccb5fc05 chore(release): 0.100.2-dev.1 [skip ci]
## [0.100.2-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.100.1...v0.100.2-dev.1) (2023-03-14)

### Bug Fixes

* **youtube/return-youtube-dislike:** fix right to left text layout ([#333](https://github.com/revanced/revanced-integrations/issues/333)) ([2dd1431](2dd14313a6))
2023-03-14 18:54:35 +00:00
LisoUseInAIKyrios
2dd14313a6 fix(youtube/return-youtube-dislike): fix right to left text layout (#333) 2023-03-14 22:52:45 +04:00
LisoUseInAIKyrios
5e518855d1 fixing LTR layout 2023-03-14 22:40:05 +04:00
semantic-release-bot
52ac4acff3 chore(release): 0.100.1 [skip ci]
## [0.100.1](https://github.com/revanced/revanced-integrations/compare/v0.100.0...v0.100.1) (2023-03-14)

### Bug Fixes

* minor syntax issue ([1e1504d](1e1504d118))
2023-03-14 15:28:44 +00:00
oSumAtrIX
a08bc53828 chore: merge branch dev to main (#332) 2023-03-14 16:26:48 +01:00
semantic-release-bot
5d7dc94d8d chore(release): 0.100.1-dev.1 [skip ci]
## [0.100.1-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.100.0...v0.100.1-dev.1) (2023-03-14)

### Bug Fixes

* minor syntax issue ([1e1504d](1e1504d118))
2023-03-14 15:25:08 +00:00
oSumAtrIX
1e1504d118 fix: minor syntax issue 2023-03-14 16:23:20 +01:00
semantic-release-bot
393d6e62f2 chore(release): 0.100.0 [skip ci]
# [0.100.0](https://github.com/revanced/revanced-integrations/compare/v0.99.0...v0.100.0) (2023-03-14)

### Bug Fixes

* **youtube/general-ads:** hide any kind of buttoned ad ([0b3508b](0b3508bd8d))
* **youtube/general-ads:** hide chapters in video description ([#326](https://github.com/revanced/revanced-integrations/issues/326)) ([f31e3a0](f31e3a02a0))
* **youtube/hide-floating-microphone-button:** reboot when changing settings ([919f285](919f2855ed))
* **youtube/remember-video-quality:** treat any connection as wifi except mobile and bluetooth ([1f90f7b](1f90f7b9cc))
* **youtube/return-youtube-dislike:** improve segmented like/dislike layout ([416c695](416c695837))

### Features

* **youtube/general-ads:** do not hide components in library tab ([3c00e58](3c00e58c13))
* **youtube/general-ads:** hide image shelf from search results ([db6ce55](db6ce55477))
* **youtube/general-ads:** hide new type of ad ([844bc3b](844bc3b24f))
* **youtube/general-ads:** hide new type of ad ([#331](https://github.com/revanced/revanced-integrations/issues/331)) ([7e64e05](7e64e05709))
* **youtube/hide-autoplay-button:** do not disable autoplay button when hidden ([519c2bd](519c2bd511))
* **youtube:** `hide-floating-microphone-button` patch ([cb77e96](cb77e96da9))
* **youtube:** remove `custom-video-buffer` patch ([#1718](https://github.com/revanced/revanced-integrations/issues/1718)) ([d5919a8](d5919a8a2c))
2023-03-14 15:01:22 +00:00
oSumAtrIX
1361595076 chore: merge branch dev to main (#324) 2023-03-14 15:59:09 +01:00
semantic-release-bot
2f5c839613 chore(release): 0.100.0-dev.6 [skip ci]
# [0.100.0-dev.6](https://github.com/revanced/revanced-integrations/compare/v0.100.0-dev.5...v0.100.0-dev.6) (2023-03-14)

### Bug Fixes

* **youtube/hide-floating-microphone-button:** reboot when changing settings ([919f285](919f2855ed))
* **youtube/remember-video-quality:** treat any connection as wifi except mobile and bluetooth ([1f90f7b](1f90f7b9cc))
* **youtube/return-youtube-dislike:** improve segmented like/dislike layout ([416c695](416c695837))

### Features

* **youtube/general-ads:** hide new type of ad ([844bc3b](844bc3b24f))
* **youtube/general-ads:** hide new type of ad ([#331](https://github.com/revanced/revanced-integrations/issues/331)) ([7e64e05](7e64e05709))
* **youtube:** remove `custom-video-buffer` patch ([#1718](https://github.com/revanced/revanced-integrations/issues/1718)) ([d5919a8](d5919a8a2c))
2023-03-14 14:30:11 +00:00
johnconner122
7e64e05709 feat(youtube/general-ads): hide new type of ad (#331)
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-14 15:26:31 +01:00
oSumAtrIX
d5919a8a2c feat(youtube): remove custom-video-buffer patch (#1718) 2023-03-14 15:26:30 +01:00
oSumAtrIX
844bc3b24f feat(youtube/general-ads): hide new type of ad 2023-03-14 15:26:30 +01:00
oSumAtrIX
67fa87051f chore: fix logging message 2023-03-14 15:26:30 +01:00
oSumAtrIX
1f90f7b9cc fix(youtube/remember-video-quality): treat any connection as wifi except mobile and bluetooth 2023-03-14 15:26:29 +01:00
semantic-release-bot
0c725218fd chore(release): 0.100.0-dev.6 [skip ci]
# [0.100.0-dev.6](https://github.com/revanced/revanced-integrations/compare/v0.100.0-dev.5...v0.100.0-dev.6) (2023-02-26)

### Bug Fixes

* **youtube/hide-floating-microphone-button:** reboot when changing settings ([919f285](919f2855ed))
2023-03-14 15:26:00 +01:00
LisousEinaiKyrios
416c695837 fix(youtube/return-youtube-dislike): improve segmented like/dislike layout 2023-03-14 15:26:00 +01:00
oSumAtrIX
919f2855ed fix(youtube/hide-floating-microphone-button): reboot when changing settings
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-27 00:23:59 +01:00
semantic-release-bot
040ba24640 chore(release): 0.100.0-dev.5 [skip ci]
# [0.100.0-dev.5](https://github.com/revanced/revanced-integrations/compare/v0.100.0-dev.4...v0.100.0-dev.5) (2023-02-26)

### Features

* **youtube/hide-autoplay-button:** do not disable autoplay button when hidden ([519c2bd](519c2bd511))
* **youtube:** `hide-floating-microphone-button` patch ([cb77e96](cb77e96da9))
2023-02-26 22:17:18 +00:00
oSumAtrIX
a1d4fabaaf refactor(youtube/settings): remove unused code
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-26 23:15:36 +01:00
oSumAtrIX
66bcf12dc6 refactor(youtube/settings): remove deprecated settings
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-26 23:15:35 +01:00
oSumAtrIX
7dc6bb4428 refactor(youtube/settings): use default parameter
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-26 23:15:35 +01:00
oSumAtrIX
24162934ba refactor(youtube/hide-timestamp): use better descriptions
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-26 23:15:35 +01:00
oSumAtrIX
cb77e96da9 feat(youtube): hide-floating-microphone-button patch
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-26 23:15:34 +01:00
oSumAtrIX
519c2bd511 feat(youtube/hide-autoplay-button): do not disable autoplay button when hidden
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-26 23:15:34 +01:00
semantic-release-bot
8a8924ab09 chore(release): 0.100.0-dev.4 [skip ci]
# [0.100.0-dev.4](https://github.com/revanced/revanced-integrations/compare/v0.100.0-dev.3...v0.100.0-dev.4) (2023-02-26)

### Bug Fixes

* **youtube/general-ads:** hide any kind of buttoned ad ([0b3508b](0b3508bd8d))
2023-02-26 21:19:20 +00:00
oSumAtrIX
0b3508bd8d fix(youtube/general-ads): hide any kind of buttoned ad
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-26 22:17:31 +01:00
semantic-release-bot
db60d983e5 chore(release): 0.100.0-dev.3 [skip ci]
# [0.100.0-dev.3](https://github.com/revanced/revanced-integrations/compare/v0.100.0-dev.2...v0.100.0-dev.3) (2023-02-25)

### Bug Fixes

* **youtube/general-ads:** hide chapters in video description ([#326](https://github.com/revanced/revanced-integrations/issues/326)) ([f31e3a0](f31e3a02a0))
2023-02-25 15:26:37 +00:00
johnconner122
f31e3a02a0 fix(youtube/general-ads): hide chapters in video description (#326) 2023-02-25 16:24:45 +01:00
semantic-release-bot
f758b09676 chore(release): 0.100.0-dev.2 [skip ci]
# [0.100.0-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.100.0-dev.1...v0.100.0-dev.2) (2023-02-24)

### Features

* **youtube/general-ads:** do not hide components in library tab ([3c00e58](3c00e58c13))
2023-02-24 23:13:28 +00:00
oSumAtrIX
3c00e58c13 feat(youtube/general-ads): do not hide components in library tab
This reverts commit fd975ecd

Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-25 00:09:48 +01:00
semantic-release-bot
0b83be989b chore(release): 0.100.0-dev.1 [skip ci]
# [0.100.0-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.99.0...v0.100.0-dev.1) (2023-02-24)

### Features

* **youtube/general-ads:** hide image shelf from search results ([db6ce55](db6ce55477))
2023-02-24 03:16:12 +00:00
oSumAtrIX
db6ce55477 feat(youtube/general-ads): hide image shelf from search results
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-24 04:14:08 +01:00
semantic-release-bot
0b1b6b3682 chore(release): 0.99.0 [skip ci]
# [0.99.0](https://github.com/revanced/revanced-integrations/compare/v0.98.0...v0.99.0) (2023-02-24)

### Bug Fixes

* **youtube/general-ads:** check for quick actions in path instead of component identifier ([476902e](476902e9ce))
* **youtube/general-ads:** use correct setting to hide related videos in quick actions ([e626bd0](e626bd08c1))
* **youtube/general-ads:** use correct setting to hide related videos in quick actions ([05bfc68](05bfc68907))

### Features

* **youtube/general-ads:** hide quick actions in fullscreen ([ae862cb](ae862cbac6))
* **youtube/general-ads:** hide related videos in quick action ([cfc571c](cfc571c12c))
* **youtube/return-youtube-dislike:** support for shorts ([#312](https://github.com/revanced/revanced-integrations/issues/312)) ([0aef5e6](0aef5e60e2))
* **youtube:** remove patch `open-links-directly` ([dce882b](dce882b128))
2023-02-24 02:49:24 +00:00
oSumAtrIX
b612cbf2c0 chore: merge branch dev to main (#323) 2023-02-24 03:47:25 +01:00
semantic-release-bot
10fff6a0b8 chore(release): 0.99.0-dev.4 [skip ci]
# [0.99.0-dev.4](https://github.com/revanced/revanced-integrations/compare/v0.99.0-dev.3...v0.99.0-dev.4) (2023-02-24)

### Bug Fixes

* **youtube/general-ads:** check for quick actions in path instead of component identifier ([476902e](476902e9ce))
* **youtube/general-ads:** use correct setting to hide related videos in quick actions ([e626bd0](e626bd08c1))
* **youtube/general-ads:** use correct setting to hide related videos in quick actions ([05bfc68](05bfc68907))
2023-02-24 02:30:21 +00:00
oSumAtrIX
e626bd08c1 fix(youtube/general-ads): use correct setting to hide related videos in quick actions
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-24 03:28:27 +01:00
oSumAtrIX
476902e9ce fix(youtube/general-ads): check for quick actions in path instead of component identifier
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-24 03:28:26 +01:00
oSumAtrIX
05bfc68907 fix(youtube/general-ads): use correct setting to hide related videos in quick actions
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-24 03:28:26 +01:00
semantic-release-bot
c3364226b8 chore(release): 0.99.0-dev.3 [skip ci]
# [0.99.0-dev.3](https://github.com/revanced/revanced-integrations/compare/v0.99.0-dev.2...v0.99.0-dev.3) (2023-02-24)

### Features

* **youtube/return-youtube-dislike:** support for shorts ([#312](https://github.com/revanced/revanced-integrations/issues/312)) ([0aef5e6](0aef5e60e2))
2023-02-24 02:01:49 +00:00
LisoUseInAIKyrios
0aef5e60e2 feat(youtube/return-youtube-dislike): support for shorts (#312)
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-24 02:59:32 +01:00
semantic-release-bot
fb1a69a7ba chore(release): 0.99.0-dev.2 [skip ci]
# [0.99.0-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.99.0-dev.1...v0.99.0-dev.2) (2023-02-23)

### Features

* **youtube/general-ads:** hide quick actions in fullscreen ([ae862cb](ae862cbac6))
* **youtube/general-ads:** hide related videos in quick action ([cfc571c](cfc571c12c))
2023-02-23 12:33:42 +00:00
oSumAtrIX
cfc571c12c feat(youtube/general-ads): hide related videos in quick action
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-23 13:31:15 +01:00
oSumAtrIX
ae862cbac6 feat(youtube/general-ads): hide quick actions in fullscreen
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-23 13:30:49 +01:00
oSumAtrIX
178b90b490 ci: fix backmerge direction
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-22 16:40:05 +01:00
semantic-release-bot
4b052b19a3 chore(release): 0.99.0-dev.1 [skip ci]
# [0.99.0-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.98.0...v0.99.0-dev.1) (2023-02-22)

### Features

* **youtube:** remove patch `open-links-directly` ([dce882b](dce882b128))
2023-02-22 15:37:04 +00:00
oSumAtrIX
dce882b128 feat(youtube): remove patch open-links-directly
The patch did not serve any real purpose

Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-22 16:23:06 +01:00
semantic-release-bot
ccb5d81d46 chore(release): 0.98.0 [skip ci]
# [0.98.0](https://github.com/revanced/revanced-integrations/compare/v0.97.0...v0.98.0) (2023-02-22)

### Bug Fixes

* remove nullable annotation in Kotlin code ([b5a29fd](b5a29fdce1))
* **twitter:** make `hide-ads` patch compatible with any version ([6655988](665598836a))
* **youtube/hide-watch-in-vr:** fix descriptions ([96fcc0b](96fcc0b1c7))

### Features

* **twitter:** `hide-recommended-users` patch ([96eea3d](96eea3d4fc))
* **youtube/general-ads:** hide channel bar ([35c4266](35c4266e8b))
* **youtube/general-ads:** hide full-screen feed banner ([da1572c](da1572c28d))
* **youtube/general-ads:** hide horizontal video shelf ([fd975ec](fd975ecd2a))
* **youtube/open-links-directly:** skip every redirect url ([2d73b8b](2d73b8b29b))
2023-02-22 05:51:41 +00:00
oSumAtrIX
5ed7170018 chore: merge branch dev to main (#321) 2023-02-22 06:49:37 +01:00
oSumAtrIX
621ef63d86 ci: add backmerge target branch
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-22 06:45:15 +01:00
semantic-release-bot
37c0cc04c4 chore(release): 0.98.0-dev.5 [skip ci]
# [0.98.0-dev.5](https://github.com/revanced/revanced-integrations/compare/v0.98.0-dev.4...v0.98.0-dev.5) (2023-02-22)

### Features

* **youtube/open-links-directly:** skip every redirect url ([2d73b8b](2d73b8b29b))
2023-02-22 05:11:24 +00:00
oSumAtrIX
5749a1dd65 refactor(youtube/hide-info-cards): fix casing
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-22 06:09:37 +01:00
oSumAtrIX
2d73b8b29b feat(youtube/open-links-directly): skip every redirect url
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-22 06:09:36 +01:00
semantic-release-bot
85cae1e5d6 chore(release): 0.98.0-dev.4 [skip ci]
# [0.98.0-dev.4](https://github.com/revanced/revanced-integrations/compare/v0.98.0-dev.3...v0.98.0-dev.4) (2023-02-22)

### Bug Fixes

* remove nullable annotation in Kotlin code ([b5a29fd](b5a29fdce1))
2023-02-22 04:44:49 +00:00
oSumAtrIX
b5a29fdce1 fix: remove nullable annotation in Kotlin code
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-22 05:42:37 +01:00
semantic-release-bot
1809d1bbf9 chore(release): 0.98.0-dev.3 [skip ci]
# [0.98.0-dev.3](https://github.com/revanced/revanced-integrations/compare/v0.98.0-dev.2...v0.98.0-dev.3) (2023-02-22)

### Bug Fixes

* **twitter:** make `hide-ads` patch compatible with any version ([6655988](665598836a))

### Features

* **twitter:** `hide-recommended-users` patch ([96eea3d](96eea3d4fc))
2023-02-22 04:40:57 +00:00
oSumAtrIX
96eea3d4fc feat(twitter): hide-recommended-users patch
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-22 05:38:27 +01:00
oSumAtrIX
665598836a fix(twitter): make hide-ads patch compatible with any version
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-22 05:38:26 +01:00
oSumAtrIX
f1e6cbcdf1 chore: update dependencies
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-22 05:33:42 +01:00
oSumAtrIX
24d7e47844 ci: use new semantic-release-backmerge option
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-20 05:25:02 +01:00
semantic-release-bot
f6573521ba chore(release): 0.98.0-dev.2 [skip ci]
# [0.98.0-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.98.0-dev.1...v0.98.0-dev.2) (2023-02-20)

### Bug Fixes

* **youtube/hide-watch-in-vr:** fix descriptions ([96fcc0b](96fcc0b1c7))

### Features

* **youtube/general-ads:** hide channel bar ([35c4266](35c4266e8b))
* **youtube/general-ads:** hide horizontal video shelf ([fd975ec](fd975ecd2a))
2023-02-20 04:18:21 +00:00
oSumAtrIX
c320384066 refactor(youtube): remove dead code
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-20 05:16:20 +01:00
oSumAtrIX
45c3f6e774 refactor(youtube): separate patches into two
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-20 05:16:20 +01:00
oSumAtrIX
e040b7de2f refactor(youtube/general-ads): correct settings name
Syncing with 1a96d79356e0432cfcf6287cdebbad8227eef6d1 from revanced-patches

Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-20 05:16:19 +01:00
oSumAtrIX
96fcc0b1c7 fix(youtube/hide-watch-in-vr): fix descriptions
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-20 05:16:19 +01:00
oSumAtrIX
35c4266e8b feat(youtube/general-ads): hide channel bar
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-20 05:16:19 +01:00
oSumAtrIX
fd975ecd2a feat(youtube/general-ads): hide horizontal video shelf
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-20 05:16:18 +01:00
semantic-release-bot
a857b9db6f chore(release): 0.98.0-dev.1 [skip ci]
# [0.98.0-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.97.0...v0.98.0-dev.1) (2023-02-18)

### Features

* **youtube/general-ads:** hide full-screen feed banner ([da1572c](da1572c28d))
2023-02-18 21:09:33 +00:00
oSumAtrIX
39e3d046f3 chore: merge branch main to dev 2023-02-18 22:06:55 +01:00
oSumAtrIX
da1572c28d feat(youtube/general-ads): hide full-screen feed banner
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-18 22:00:44 +01:00
semantic-release-bot
3f5e27d6b1 chore(release): 0.97.0 [skip ci]
# [0.97.0](https://github.com/revanced/revanced-integrations/compare/v0.96.2...v0.97.0) (2023-02-14)

### Bug Fixes

* **youtube/general-ads:** block other kind of survey ([cdf43ef](cdf43efcf2))

### Features

* **youtube/general-ads:** hide web search results ([9df1e46](9df1e460c5))
2023-02-14 14:02:41 +00:00
oSumAtrIX
3e113b6ab0 chore: merge branch dev to main (#320) 2023-02-14 15:00:30 +01:00
semantic-release-bot
0904f3c78a chore(release): 0.97.0-dev.1 [skip ci]
# [0.97.0-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.96.2...v0.97.0-dev.1) (2023-02-14)

### Bug Fixes

* **youtube/general-ads:** block other kind of survey ([cdf43ef](cdf43efcf2))

### Features

* **youtube/general-ads:** hide web search results ([9df1e46](9df1e460c5))
2023-02-14 13:59:04 +00:00
oSumAtrIX
9df1e460c5 feat(youtube/general-ads): hide web search results
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-14 14:56:47 +01:00
oSumAtrIX
cdf43efcf2 fix(youtube/general-ads): block other kind of survey 2023-02-14 14:56:47 +01:00
semantic-release-bot
370f331330 chore(release): 0.96.2 [skip ci]
## [0.96.2](https://github.com/revanced/revanced-integrations/compare/v0.96.1...v0.96.2) (2023-02-13)

### Bug Fixes

* **youtube/general-ads:** do not hide chapters when hiding preview comments ([cfb7aab](cfb7aab779))
* **youtube/general-ads:** use correct setting for `BlockRule` ([#316](https://github.com/revanced/revanced-integrations/issues/316)) ([7225bc3](7225bc3c48))
2023-02-13 21:44:11 +00:00
oSumAtrIX
622aa1dcaa chore: merge branch dev to main (#319) 2023-02-13 22:41:31 +01:00
semantic-release-bot
5071082fde chore(release): 0.96.2-dev.2 [skip ci]
## [0.96.2-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.96.2-dev.1...v0.96.2-dev.2) (2023-02-13)

### Bug Fixes

* **youtube/general-ads:** do not hide chapters when hiding preview comments ([cfb7aab](cfb7aab779))
2023-02-13 21:35:24 +00:00
oSumAtrIX
71b558ba6a ci: update dependencies and target node version (#318) 2023-02-13 22:32:29 +01:00
Palm
9cea77ac59 ci: fix step name typo 2023-02-13 20:56:56 +07:00
Palm
b47b7cbc22 ci: target specific node version 2023-02-13 10:45:17 +07:00
Palm
25d51179cc ci: update dependencies 2023-02-13 10:44:45 +07:00
Palm
2e0758b3c8 ci: do not override dependency versions on install 2023-02-13 10:44:07 +07:00
oSumAtrIX
85bf637078 chore: merge branch dev to main (#317) 2023-02-13 03:36:08 +01:00
oSumAtrIX
cfb7aab779 fix(youtube/general-ads): do not hide chapters when hiding preview comments
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-13 03:31:01 +01:00
semantic-release-bot
0def31b2dd chore(release): 0.96.2-dev.1 [skip ci]
## [0.96.2-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.96.1...v0.96.2-dev.1) (2023-02-11)

### Bug Fixes

* **youtube/general-ads:** use correct setting for `BlockRule` ([#316](https://github.com/revanced/revanced-integrations/issues/316)) ([7225bc3](7225bc3c48))
2023-02-11 13:51:25 +00:00
johnconner122
7225bc3c48 fix(youtube/general-ads): use correct setting for BlockRule (#316) 2023-02-11 14:49:33 +01:00
semantic-release-bot
7d136e550c chore(release): 0.96.1 [skip ci]
## [0.96.1](https://github.com/revanced/revanced-integrations/compare/v0.96.0...v0.96.1) (2023-02-11)

### Bug Fixes

* **youtube/minimized-playback:** disable when playing shorts ([1dd84a3](1dd84a3785))
2023-02-11 00:36:55 +00:00
oSumAtrIX
70170e24ce chore: merge branch dev to main (#315) 2023-02-11 01:34:48 +01:00
semantic-release-bot
1864372298 chore(release): 0.96.1-dev.1 [skip ci]
## [0.96.1-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.96.0...v0.96.1-dev.1) (2023-02-11)

### Bug Fixes

* **youtube/minimized-playback:** disable when playing shorts ([1dd84a3](1dd84a3785))
2023-02-11 00:27:39 +00:00
oSumAtrIX
1dd84a3785 fix(youtube/minimized-playback): disable when playing shorts
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-11 01:25:48 +01:00
semantic-release-bot
512d747ec8 chore(release): 0.96.0 [skip ci]
# [0.96.0](https://github.com/revanced/revanced-integrations/compare/v0.95.0...v0.96.0) (2023-02-10)

### Features

* **youtube/general-ads:** hide pill to view products ([43e419e](43e419e6a6))
2023-02-10 22:28:00 +00:00
oSumAtrIX
e16d3a7284 chore: merge branch dev to main (#314) 2023-02-10 23:26:15 +01:00
semantic-release-bot
4469d1f3c4 chore(release): 0.96.0-dev.1 [skip ci]
# [0.96.0-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.95.0...v0.96.0-dev.1) (2023-02-10)

### Features

* **youtube/general-ads:** hide pill to view products ([43e419e](43e419e6a6))
2023-02-10 18:43:43 +00:00
oSumAtrIX
43e419e6a6 feat(youtube/general-ads): hide pill to view products
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-10 19:41:21 +01:00
oSumAtrIX
f67216ad9d chore: merge branch dev to main (#313) 2023-02-10 05:59:18 +01:00
oSumAtrIX
2e9d3fc63f refactor(youtube/microg-support): make use of MICROG_VENDOR field
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-06 23:07:19 +01:00
semantic-release-bot
d16153408c chore(release): 0.95.0 [skip ci]
# [0.95.0](https://github.com/revanced/revanced-integrations/compare/v0.94.1...v0.95.0) (2023-02-03)

### Features

* `spoof-wifi-connection` patch ([#297](https://github.com/revanced/revanced-integrations/issues/297)) ([293eae4](293eae4a46))
* spoof-wifi-connection patch ([6679e6e](6679e6ee45))
* **youtube:** `hide-player-buttons` patch ([d5bcef2](d5bcef2cdb))
2023-02-03 03:54:09 +00:00
oSumAtrIX
73d5400486 chore: merge branch dev to main (#310) 2023-02-03 04:52:05 +01:00
semantic-release-bot
e698e8c524 chore(release): 0.95.0-dev.2 [skip ci]
# [0.95.0-dev.2](https://github.com/revanced/revanced-integrations/compare/v0.95.0-dev.1...v0.95.0-dev.2) (2023-02-03)

### Features

* **youtube:** `hide-player-buttons` patch ([d5bcef2](d5bcef2cdb))
2023-02-03 03:43:13 +00:00
oSumAtrIX
d5bcef2cdb feat(youtube): hide-player-buttons patch
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-03 04:39:38 +01:00
oSumAtrIX
5ca042a602 refactor(youtube): remove obsolete fix-playback patch
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-02-01 20:57:48 +01:00
semantic-release-bot
319a234df6 chore(release): 0.95.0-dev.1 [skip ci]
# [0.95.0-dev.1](https://github.com/revanced/revanced-integrations/compare/v0.94.1...v0.95.0-dev.1) (2023-02-01)

### Features

* `spoof-wifi-connection` patch ([#297](https://github.com/revanced/revanced-integrations/issues/297)) ([293eae4](293eae4a46))
* spoof-wifi-connection patch ([6679e6e](6679e6ee45))
2023-02-01 19:55:36 +00:00
oSumAtrIX
293eae4a46 feat: spoof-wifi-connection patch (#297) 2023-02-01 20:52:40 +01:00
Linus789
dc1faa94e0 fix unregisterNetworkCallback throwing exception when the callback has not been registered
todo: squash
2023-01-31 15:04:14 +01:00
semantic-release-bot
2e6c73e4b5 chore(release): 0.94.1 [skip ci]
## [0.94.1](https://github.com/revanced/revanced-integrations/compare/v0.94.0...v0.94.1) (2023-01-29)

### Bug Fixes

* **youtube/sponsorblock:** fix saving and loading settings ([#304](https://github.com/revanced/revanced-integrations/issues/304)) ([49aedae](49aedae3fc))
* **youtube:** resolve duplicate preference keys ([#307](https://github.com/revanced/revanced-integrations/issues/307)) ([27d1392](27d1392a73))
2023-01-29 10:14:32 +00:00
oSumAtrIX
f50346aff2 chore: merge branch dev to main (#309) 2023-01-29 11:12:08 +01:00
github-actions[bot]
530260e248 chore: merge branch dev to main (#306)
Co-authored-by: LisoUseInAIKyrios <118716522+LisoUseInAIKyrios@users.noreply.github.com>
Co-authored-by: semantic-release-bot <semantic-release-bot@martynus.net>
2023-01-28 20:07:01 +01:00
oSumAtrIX
84257a7348 Apply suggestions from code review [skip ci] 2023-01-23 02:46:27 +01:00
Linus789
6679e6ee45 feat: spoof-wifi-connection patch 2023-01-21 23:20:57 +01:00
123 changed files with 8370 additions and 5071 deletions

2
.github/config.yml vendored Normal file
View File

@@ -0,0 +1,2 @@
firstPRMergeComment: >
Thank you for contributing to ReVanced. Join us on [Discord](https://revanced.app/discord) if you want to receive a contributor role.

View File

@@ -21,5 +21,10 @@ jobs:
with:
destination_branch: 'main'
pr_title: 'chore: ${{ env.MESSAGE }}'
pr_body: 'This pull request will ${{ env.MESSAGE }}.'
pr_draft: true
pr_body: |
This pull request will ${{ env.MESSAGE }}.
## Dependencies before merge
- [ ] https://github.com/revanced/revanced-patches
pr_draft: true

View File

@@ -3,7 +3,7 @@ name: Release
on:
workflow_dispatch:
push:
branches:
branches:
- main
- dev
pull_request:
@@ -16,7 +16,7 @@ jobs:
name: Release
runs-on: ubuntu-latest
steps:
- name: Cancel previou runs
- name: Cancel previous runs
uses: styfle/cancel-workflow-action@0.11.0
- name: Checkout
uses: actions/checkout@v3
@@ -33,11 +33,11 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: "latest"
node-version: "18"
cache: 'npm'
- name: Setup semantic-release
run: npm install semantic-release@19.0.5 @saithodev/semantic-release-backmerge @semantic-release/git @semantic-release/changelog gradle-semantic-release-plugin@1.7.4 -D
run: npm install
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.REPOSITORY_PUSH_ACCESS }}
run: npx semantic-release
run: npm exec semantic-release

View File

@@ -34,7 +34,7 @@
[
"@saithodev/semantic-release-backmerge",
{
branches: [{from: "main", to: "dev"}],
backmergeBranches: [{"from": "main", "to": "dev"}],
clearWorkspace: true
}
]

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,3 @@
import java.io.FileInputStream
import java.util.Properties
plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
@@ -46,8 +43,8 @@ android {
dependencies {
compileOnly(project(mapOf("path" to ":dummy")))
compileOnly("androidx.annotation:annotation:1.5.0")
compileOnly("androidx.appcompat:appcompat:1.5.1")
compileOnly("androidx.annotation:annotation:1.6.0")
compileOnly("androidx.appcompat:appcompat:1.7.0-alpha02")
compileOnly("com.squareup.okhttp3:okhttp:5.0.0-alpha.11")
compileOnly("com.squareup.retrofit2:retrofit:2.9.0")
}

View File

@@ -20,6 +20,8 @@
# hide the original source file name.
#-renamesourcefileattribute SourceFile
-dontobfuscate
-dontoptimize
-keepattributes * # https://www.guardsquare.com/manual/configuration/attributes
-keep class app.revanced.** {
*;
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,60 +1,31 @@
package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
import app.revanced.integrations.utils.LogHelper;
final class ButtonsPatch extends Filter {
private final BlockRule actionButtonsRule;
private final BlockRule dislikeRule;
private final BlockRule actionBarRule;
private final BlockRule[] rules;
public ButtonsPatch() {
BlockRule like = new BlockRule(SettingsEnum.HIDE_LIKE_BUTTON, "|like_button");
dislikeRule = new BlockRule(SettingsEnum.HIDE_DISLIKE_BUTTON, "dislike_button");
BlockRule download = new BlockRule(SettingsEnum.HIDE_DOWNLOAD_BUTTON, "download_button");
actionButtonsRule = new BlockRule(SettingsEnum.HIDE_ACTION_BUTTON, "ContainerType|video_action_button");
BlockRule playlist = new BlockRule(SettingsEnum.HIDE_PLAYLIST_BUTTON, "save_to_playlist_button");
rules = new BlockRule[]{like, dislikeRule, download, actionButtonsRule, playlist};
actionBarRule = new BlockRule(null, "video_action_bar");
this.pathRegister.registerAll(
like,
dislikeRule,
download,
playlist
pathRegister.registerAll(
new BlockRule(SettingsEnum.HIDE_LIKE_DISLIKE_BUTTON, "|like_button", "dislike_button"),
new BlockRule(SettingsEnum.HIDE_DOWNLOAD_BUTTON, "download_button"),
new BlockRule(SettingsEnum.HIDE_PLAYLIST_BUTTON, "save_to_playlist_button"),
new BlockRule(SettingsEnum.HIDE_CLIP_BUTTON, "|clip_button.eml|"),
new BlockRule(SettingsEnum.HIDE_ACTION_BUTTONS, "ContainerType|video_action_button", "|CellType|CollectionType|CellType|ContainerType|button.eml|")
);
}
private boolean hideActionBar() {
for (BlockRule rule : rules) if (!rule.isEnabled()) return false;
private boolean canHideActionBar() {
for (BlockRule rule : pathRegister) if (!rule.isEnabled()) return false;
return true;
}
@Override
public boolean filter(final String path, final String identifier) {
if (hideActionBar() && actionBarRule.check(identifier).isBlocked()) return true;
// If everything is hidden, then also hide the video bar itself.
if (canHideActionBar() && actionBarRule.check(identifier).isBlocked()) return true;
var currentIsActionButton = actionButtonsRule.check(path).isBlocked();
if (dislikeRule.check(path).isBlocked()) ActionButton.doNotBlockCounter = 4;
if (currentIsActionButton && ActionButton.doNotBlockCounter-- > 0) {
if (SettingsEnum.HIDE_SHARE_BUTTON.getBoolean()) {
LogHelper.printDebug(() -> "Hiding share button");
return true;
} else return false;
}
if ((currentIsActionButton && ActionButton.doNotBlockCounter <= 0 && actionButtonsRule.isEnabled()) || pathRegister.contains(path)) {
LogHelper.printDebug(() -> "Blocked: " + path);
return true;
} else return false;
}
static class ActionButton {
public static int doNotBlockCounter = 4;
return pathRegister.contains(path);
}
}

View File

@@ -9,7 +9,7 @@ final class CommentsPatch extends Filter {
var comments = new BlockRule(SettingsEnum.HIDE_COMMENTS_SECTION, "video_metadata_carousel", "_comments");
var previewComment = new BlockRule(
SettingsEnum.HIDE_PREVIEW_COMMENT,
"carousel_item",
"|carousel_item",
"comments_entry_point_teaser",
"comments_entry_point_simplebox"
);

View File

@@ -1,25 +1,21 @@
package app.revanced.integrations.patches;
import android.content.Context;
import android.widget.Toast;
import static app.revanced.integrations.utils.StringRef.str;
import app.revanced.integrations.sponsorblock.StringRef;
import app.revanced.integrations.utils.LogHelper;
import app.revanced.integrations.utils.ReVancedUtils;
public class CopyVideoUrlPatch {
public static void copyUrl(Boolean withTimestamp) {
try {
String url = String.format("https://youtu.be/%s", VideoInformation.getCurrentVideoId());
String url = String.format("https://youtu.be/%s", VideoInformation.getVideoId());
if (withTimestamp) {
long seconds = VideoInformation.getVideoTime() / 1000;
url += String.format("?t=%s", seconds);
}
Context context = ReVancedUtils.getContext();
ReVancedUtils.setClipboard(url);
if (context != null) Toast.makeText(context, StringRef.str("share_copy_url_success"), Toast.LENGTH_SHORT).show();
ReVancedUtils.showToastShort(str("share_copy_url_success"));
} catch (Exception e) {
LogHelper.printException(() -> "Failed to generate video url", e);
}

View File

@@ -1,40 +0,0 @@
package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
import app.revanced.integrations.utils.LogHelper;
public final class FixPlaybackPatch {
private static Thread currentThread = null;
private static String videoId;
public static void newVideoLoaded(final String videoId) {
if (!SettingsEnum.FIX_PLAYBACK.getBoolean()) return;
if (videoId.equals(FixPlaybackPatch.videoId)) return;
else FixPlaybackPatch.videoId = videoId;
if (currentThread != null) {
currentThread.interrupt();
}
currentThread = new Thread(() -> {
try {
while (true) {
var currentVideoTime = VideoInformation.getVideoTime();
if (currentVideoTime > -1) {
VideoInformation.seekTo(Integer.MAX_VALUE);
VideoInformation.seekTo(currentVideoTime);
return;
}
Thread.sleep(10);
}
} catch (InterruptedException e) {
LogHelper.printDebug(() -> "Thread was interrupted");
}
});
currentThread.start();
}
}

View File

@@ -1,13 +1,10 @@
package app.revanced.integrations.patches;
import android.view.View;
import app.revanced.integrations.settings.SettingsEnum;
public class FullscreenPanelsRemoverPatch {
public static int getFullscreenPanelsVisibility() {
return SettingsEnum.HIDE_FULLSCREEN_PANELS.getBoolean() ? View.GONE : View.VISIBLE;
}
}

View File

@@ -26,23 +26,31 @@ public final class GeneralAdsPatch extends Filter {
var subscribersCommunityGuidelines = new BlockRule(SettingsEnum.ADREMOVER_SUBSCRIBERS_COMMUNITY_GUIDELINES_REMOVAL, "sponsorships_comments_upsell");
var channelMemberShelf = new BlockRule(SettingsEnum.ADREMOVER_CHANNEL_MEMBER_SHELF_REMOVAL, "member_recognition_shelf");
var compactBanner = new BlockRule(SettingsEnum.ADREMOVER_COMPACT_BANNER_REMOVAL, "compact_banner");
var inFeedSurvey = new BlockRule(SettingsEnum.ADREMOVER_FEED_SURVEY_REMOVAL, "in_feed_survey");
var inFeedSurvey = new BlockRule(SettingsEnum.ADREMOVER_FEED_SURVEY_REMOVAL, "in_feed_survey", "slimline_survey");
var medicalPanel = new BlockRule(SettingsEnum.ADREMOVER_MEDICAL_PANEL_REMOVAL, "medical_panel");
var paidContent = new BlockRule(SettingsEnum.ADREMOVER_PAID_CONTENT_REMOVAL, "paid_content_overlay");
var merchandise = new BlockRule(SettingsEnum.ADREMOVER_MERCHANDISE_REMOVAL, "product_carousel");
var infoPanel = new BlockRule(SettingsEnum.ADREMOVER_INFO_PANEL_REMOVAL, "publisher_transparency_panel", "single_item_information_panel");
var latestPosts = new BlockRule(SettingsEnum.ADREMOVER_HIDE_LATEST_POSTS, "post_shelf");
var channelGuidelines = new BlockRule(SettingsEnum.ADREMOVER_HIDE_CHANNEL_GUIDELINES, "channel_guidelines_entry_banner");
var artistCard = new BlockRule(SettingsEnum.HIDE_ARTIST_CARD, "official_card");
var audioTrackButton = new BlockRule(SettingsEnum.HIDE_AUDIO_TRACK_BUTTON, "multi_feed_icon_button");
var artistCard = new BlockRule(SettingsEnum.HIDE_ARTIST_CARDS, "official_card");
var selfSponsor = new BlockRule(SettingsEnum.ADREMOVER_SELF_SPONSOR_REMOVAL, "cta_shelf_card");
var chapterTeaser = new BlockRule(SettingsEnum.ADREMOVER_CHAPTER_TEASER_REMOVAL, "expandable_metadata");
var chapterTeaser = new BlockRule(SettingsEnum.ADREMOVER_CHAPTER_TEASER_REMOVAL, "expandable_metadata", "macro_markers_carousel");
var viewProducts = new BlockRule(SettingsEnum.ADREMOVER_VIEW_PRODUCTS, "product_item", "products_in_video");
var webLinkPanel = new BlockRule(SettingsEnum.ADREMOVER_WEB_SEARCH_RESULTS, "web_link_panel");
var channelBar = new BlockRule(SettingsEnum.ADREMOVER_CHANNEL_BAR, "channel_bar");
var relatedVideos = new BlockRule(SettingsEnum.ADREMOVER_RELATED_VIDEOS, "fullscreen_related_videos");
var quickActions = new BlockRule(SettingsEnum.ADREMOVER_QUICK_ACTIONS, "quick_actions");
var imageShelf = new BlockRule(SettingsEnum.ADREMOVER_IMAGE_SHELF, "image_shelf");
var graySeparator = new BlockRule(SettingsEnum.ADREMOVER_GRAY_SEPARATOR,
"cell_divider" // layout residue (gray line above the buttoned ad),
);
var buttonedAd = new BlockRule(SettingsEnum.ADREMOVER_BUTTONED_REMOVAL,
"video_display_full_buttoned_layout",
"_buttoned_layout",
"full_width_square_image_layout",
"_ad_with",
"video_display_button_group_layout",
"landscape_image_wide_button_layout"
);
var generalAds = new BlockRule(
@@ -51,7 +59,15 @@ public final class GeneralAdsPatch extends Filter {
"banner_text_icon",
"square_image_layout",
"watch_metadata_app_promo",
"video_display_full_layout"
"video_display_full_layout",
"hero_promo_image",
"statement_banner",
"carousel_footered_layout",
"text_image_button_layout",
"primetime_promo",
"product_details",
"full_width_portrait_image_layout",
"brand_video_shelf"
);
var movieAds = new BlockRule(
SettingsEnum.ADREMOVER_MOVIE_REMOVAL,
@@ -59,26 +75,34 @@ public final class GeneralAdsPatch extends Filter {
"compact_movie",
"horizontal_movie_shelf",
"movie_and_show_upsell_card",
"compact_tvfilm_item"
"compact_tvfilm_item",
"offer_module_root"
);
this.pathRegister.registerAll(
generalAds,
buttonedAd,
channelBar,
communityPosts,
paidContent,
latestPosts,
movieAds,
chapterTeaser,
communityGuidelines,
quickActions,
relatedVideos,
compactBanner,
inFeedSurvey,
viewProducts,
medicalPanel,
merchandise,
infoPanel,
channelGuidelines,
audioTrackButton,
artistCard,
selfSponsor,
webLinkPanel,
imageShelf,
subscribersCommunityGuidelines,
channelMemberShelf
);

View File

@@ -3,8 +3,7 @@ package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
public class HideAutoplayButtonPatch {
public static boolean isButtonShown() {
return SettingsEnum.HIDE_AUTOPLAY_BUTTON.getBoolean() == false;
return !SettingsEnum.HIDE_AUTOPLAY_BUTTON.getBoolean();
}
}

View File

@@ -0,0 +1,9 @@
package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
public final class HideFloatingMicrophoneButtonPatch {
public static boolean hideFloatingMicrophoneButton(final boolean original) {
return SettingsEnum.HIDE_FLOATING_MICROPHONE_BUTTON.getBoolean() || original;
}
}

View File

@@ -0,0 +1,12 @@
package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
public class HideGetPremiumPatch {
/**
* Injection point.
*/
public static boolean hideGetPremiumView() {
return SettingsEnum.HIDE_GET_PREMIUM.getBoolean();
}
}

View File

@@ -1,16 +1,15 @@
package app.revanced.integrations.patches;
import android.view.View;
import app.revanced.integrations.settings.SettingsEnum;
public class HideInfocardsPatch {
public static void hideInfocardsIncognito(View view) {
public class HideInfoCardsPatch {
public static void hideInfoCardsIncognito(View view) {
if (!SettingsEnum.HIDE_INFO_CARDS.getBoolean()) return;
view.setVisibility(View.GONE);
}
public static boolean hideInfocardsMethodCall() {
public static boolean hideInfoCardsMethodCall() {
return SettingsEnum.HIDE_INFO_CARDS.getBoolean();
}
}

View File

@@ -1,14 +0,0 @@
package app.revanced.integrations.patches;
import android.view.View;
import app.revanced.integrations.adremover.AdRemoverAPI;
import app.revanced.integrations.settings.SettingsEnum;
public class HideMixPlaylistsPatch {
public static void hideMixPlaylists(View view) {
if (!SettingsEnum.HIDE_MIX_PLAYLISTS.getBoolean()) return;
AdRemoverAPI.HideViewWithLayout1dp(view);
}
}

View File

@@ -0,0 +1,11 @@
package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
public final class HidePlayerButtonsPatch {
public static boolean hideButtons() {
return SettingsEnum.HIDE_PLAYER_BUTTONS.getBoolean();
}
}

View File

@@ -1,20 +0,0 @@
package app.revanced.integrations.patches;
import android.view.View;
import app.revanced.integrations.adremover.AdRemoverAPI;
import app.revanced.integrations.settings.SettingsEnum;
public class HideReelsPatch {
/**
* Used by app.revanced.patches.youtube.layout.reels.patch.HideReelsPatch
*
* @param view
*/
public static void HideReel(View view) {
if (SettingsEnum.HIDE_REEL_BUTTON.getBoolean()) {
AdRemoverAPI.HideViewWithLayout1dp(view);
}
}
}

View File

@@ -0,0 +1,9 @@
package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
public class HideSeekbarPatch {
public static boolean hideSeekbar() {
return SettingsEnum.HIDE_SEEKBAR.getBoolean();
}
}

View File

@@ -1,10 +0,0 @@
package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
public class HideTimeAndSeekbarPatch {
//Used by app.revanced.patches.youtube.layout.hidetimeandseekbar.patch.HideTimeAndSeekbarPatch
public static boolean hideTimeAndSeekbar() {
return SettingsEnum.HIDE_TIME_AND_SEEKBAR.getBoolean();
}
}

View File

@@ -0,0 +1,9 @@
package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
public class HideTimestampPatch {
public static boolean hideTimestamp() {
return SettingsEnum.HIDE_TIMESTAMP.getBoolean();
}
}

View File

@@ -2,9 +2,8 @@ package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
public class HideWatchinVRPatch {
//Used by app.revanced.patches.youtube.layout.watchinvr.patch.HideWatchinVRPatch
public static boolean hideWatchinVR() {
public class HideWatchInVRPatch {
public static boolean hideWatchInVR() {
return SettingsEnum.HIDE_WATCH_IN_VR.getBoolean();
}
}

View File

@@ -1,9 +1,6 @@
package app.revanced.integrations.patches;
import static app.revanced.integrations.utils.ReVancedUtils.getContext;
import android.content.Context;
import app.revanced.integrations.utils.ReVancedUtils;
import app.revanced.integrations.utils.ThemeHelper;
public class LithoThemePatch {
@@ -44,29 +41,15 @@ public class LithoThemePatch {
}
private static int getBlackColor() {
if (blackColor == 0) blackColor = getColor("yt_black1");
if (blackColor == 0) blackColor = ReVancedUtils.getResourceColor("yt_black1");
return blackColor;
}
private static int getWhiteColor() {
if (whiteColor == 0) whiteColor = getColor("yt_white1");
if (whiteColor == 0) whiteColor = ReVancedUtils.getResourceColor("yt_white1");
return whiteColor;
}
/**
* Determines the color for a color resource.
*
* @param name The color resource name.
* @return The value of the color.
*/
private static int getColor(String name) {
Context context = getContext();
return context != null ? context.getColor(context.getResources()
.getIdentifier(name, "color", context.getPackageName())
) : 0;
}
private static boolean anyEquals(int value, int... of) {
for (int v : of) if (value == v) return true;
return false;

View File

@@ -1,12 +1,12 @@
package app.revanced.integrations.patches;
import static app.revanced.integrations.sponsorblock.StringRef.str;
import static app.revanced.integrations.utils.StringRef.str;
import android.annotation.TargetApi;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.widget.Toast;
import java.util.Objects;
@@ -15,13 +15,13 @@ import app.revanced.integrations.utils.ReVancedUtils;
public class MicroGSupport {
private static final String MICROG_VENDOR = "com.mgoogle";
private static final String MICROG_PACKAGE_NAME = "com.mgoogle.android.gms";
private static final String MICROG_PACKAGE_NAME = MICROG_VENDOR + ".android.gms";
private static final String VANCED_MICROG_DOWNLOAD_LINK = "https://github.com/TeamVanced/VancedMicroG/releases/latest";
private static final String DONT_KILL_MY_APP_LINK = "https://dontkillmyapp.com";
private static final Uri VANCED_MICROG_PROVIDER = Uri.parse("content://com.mgoogle.android.gsf.gservices/prefix");
private static final Uri VANCED_MICROG_PROVIDER = Uri.parse("content://" + MICROG_VENDOR + ".android.gsf.gservices/prefix");
private static void startIntent(Context context, String uriString, String message) {
Toast.makeText(context, message, Toast.LENGTH_LONG).show();
ReVancedUtils.showToastLong(message);
var intent = new Intent(Intent.ACTION_VIEW);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
@@ -29,6 +29,7 @@ public class MicroGSupport {
context.startActivity(intent);
}
@TargetApi(26)
public static void checkAvailability() {
var context = Objects.requireNonNull(ReVancedUtils.getContext());
@@ -42,10 +43,11 @@ public class MicroGSupport {
System.exit(0);
}
try (var client = context.getContentResolver().acquireContentProviderClient(VANCED_MICROG_PROVIDER)) {
if (client != null) return;
LogHelper.printInfo(() -> "Vanced MicroG is not running in the background");
startIntent(context, DONT_KILL_MY_APP_LINK, str("microg_not_running_warning"));
}
}
}
}

View File

@@ -1,11 +1,17 @@
package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
import app.revanced.integrations.shared.PlayerType;
public class MinimizedPlaybackPatch {
public static boolean isMinimizedPlaybackEnabled() {
return SettingsEnum.ENABLE_MINIMIZED_PLAYBACK.getBoolean();
public static boolean isPlaybackNotShort() {
return !PlayerType.getCurrent().isNoneOrHidden();
}
public static boolean overrideMinimizedPlaybackAvailable() {
// This could be done entirely in the patch,
// but having a unique method to search for makes manually inspecting the patched apk much easier.
return true;
}
}

View File

@@ -1,12 +0,0 @@
package app.revanced.integrations.patches;
import app.revanced.integrations.settings.SettingsEnum;
public class NewActionbarPatch {
//Used by app.revanced.patches.youtube.layout.widesearchbar.patch.WideSearchbarPatch
public static boolean getNewActionBar() {
return SettingsEnum.WIDE_SEARCHBAR.getBoolean(); // TODO: maybe this has to be inverted
}
}

View File

@@ -1,18 +0,0 @@
package app.revanced.integrations.patches;
import java.net.URLDecoder;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import app.revanced.integrations.settings.SettingsEnum;
public class OpenLinksDirectlyPatch {
public static String parseRedirectUri(String uri) {
if (SettingsEnum.OPEN_LINKS_DIRECTLY.getBoolean()) {
Matcher matcher = Pattern.compile("&q=(http.+?)&v=").matcher(uri);
return matcher.find() ? URLDecoder.decode(matcher.group(1)) : uri;
}
return uri;
}
}

View File

@@ -28,7 +28,7 @@ public class PlayerTypeHookPatch {
LogHelper.printException(() -> "Unknown PlayerType encountered: " + type);
} else {
PlayerType.setCurrent(newType);
LogHelper.printDebug(() -> "YouTubePlayerOverlaysLayout player type was updated to " + newType);
LogHelper.printDebug(() -> "PlayerType was updated to: " + newType);
}
}
}

View File

@@ -1,39 +1,202 @@
package app.revanced.integrations.patches;
import static app.revanced.integrations.returnyoutubedislike.ReturnYouTubeDislike.Vote;
import android.text.Editable;
import android.text.Spannable;
import android.text.Spanned;
import android.text.TextWatcher;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import java.lang.ref.WeakReference;
import java.util.concurrent.atomic.AtomicReference;
import app.revanced.integrations.returnyoutubedislike.ReturnYouTubeDislike;
import app.revanced.integrations.settings.SettingsEnum;
import app.revanced.integrations.shared.PlayerType;
import app.revanced.integrations.utils.LogHelper;
import app.revanced.integrations.utils.ReVancedUtils;
/**
* Used by app.revanced.patches.youtube.layout.returnyoutubedislike.patch.ReturnYouTubeDislikePatch
*/
public class ReturnYouTubeDislikePatch {
/**
* Called when the video id changes
* Resource identifier of old UI dislike button.
*/
public static void newVideoLoaded(String videoId) {
ReturnYouTubeDislike.newVideoLoaded(videoId);
}
private static final int OLD_UI_DISLIKE_BUTTON_RESOURCE_ID
= ReVancedUtils.getResourceIdentifier("dislike_button", "id");
/**
* Called when a litho text component is created
* Dislikes text label used by old UI.
*/
public static void onComponentCreated(Object conversionContext, AtomicReference<Object> textRef) {
ReturnYouTubeDislike.onComponentCreated(conversionContext, textRef);
}
@NonNull
private static WeakReference<TextView> oldUITextViewRef = new WeakReference<>(null);
/**
* Called when the like/dislike button is clicked
*
* @param vote -1 (dislike), 0 (none) or 1 (like)
* Original old UI 'Dislikes' text before patch modifications.
* Required to reset the dislikes when changing videos and RYD is not available.
* Set only once during the first load.
*/
public static void sendVote(int vote) {
for (ReturnYouTubeDislike.Vote v : ReturnYouTubeDislike.Vote.values()) {
if (v.value == vote) {
ReturnYouTubeDislike.sendVote(v);
private static Spanned oldUIOriginalSpan;
/**
* Replacement span that contains dislike value. Used by {@link #oldUiTextWatcher}.
*/
@Nullable
private static Spanned oldUIReplacementSpan;
/**
* Old UI dislikes can be set multiple times by YouTube.
* To prevent it from reverting changes made here, this listener overrides any future changes YouTube makes.
*/
private static final TextWatcher oldUiTextWatcher = new TextWatcher() {
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
public void afterTextChanged(Editable s) {
if (oldUIReplacementSpan == null || oldUIReplacementSpan.toString().equals(s.toString())) {
return;
}
s.replace(0, s.length(), oldUIReplacementSpan);
}
};
private static void updateOldUIDislikesTextView() {
TextView oldUITextView = oldUITextViewRef.get();
if (oldUITextView == null) {
return;
}
oldUIReplacementSpan = ReturnYouTubeDislike.getDislikesSpanForRegularVideo(oldUIOriginalSpan, false);
if (!oldUIReplacementSpan.equals(oldUITextView.getText())) {
oldUITextView.setText(oldUIReplacementSpan);
}
}
/**
* Injection point. Called on main thread.
*
* Used when spoofing the older app versions of {@link SpoofAppVersionPatch}.
*/
public static void setOldUILayoutDislikes(int buttonViewResourceId, @NonNull TextView textView) {
try {
if (!SettingsEnum.RYD_ENABLED.getBoolean()
|| buttonViewResourceId != OLD_UI_DISLIKE_BUTTON_RESOURCE_ID) {
return;
}
if (oldUIOriginalSpan == null) {
// Use value of the first instance, as it appears TextViews can be recycled
// and might contain dislikes previously added by the patch.
oldUIOriginalSpan = (Spanned) textView.getText();
}
oldUITextViewRef = new WeakReference<>(textView);
// No way to check if a listener is already attached, so remove and add again.
textView.removeTextChangedListener(oldUiTextWatcher);
textView.addTextChangedListener(oldUiTextWatcher);
updateOldUIDislikesTextView();
} catch (Exception ex) {
LogHelper.printException(() -> "setOldUILayoutDislikes failure", ex);
}
}
/**
* Injection point.
*/
public static void newVideoLoaded(@NonNull String videoId) {
try {
if (!SettingsEnum.RYD_ENABLED.getBoolean()) return;
ReturnYouTubeDislike.newVideoLoaded(videoId);
} catch (Exception ex) {
LogHelper.printException(() -> "newVideoLoaded failure", ex);
}
}
/**
* Injection point.
*
* Called when a litho text component is initially created,
* and also when a Span is later reused again (such as scrolling off/on screen).
*
* This method is sometimes called on the main thread, but it usually is called _off_ the main thread.
* This method can be called multiple times for the same UI element (including after dislikes was added).
*
* @param textRef Cache reference to the like/dislike char sequence,
* which may or may not be the same as the original span parameter.
* If dislikes are added, the atomic reference must be set to the replacement span.
* @param original Original span that was created or reused by Litho.
* @return The original span (if nothing should change), or a replacement span that contains dislikes.
*/
@NonNull
public static CharSequence onLithoTextLoaded(@NonNull Object conversionContext,
@NonNull AtomicReference<CharSequence> textRef,
@NonNull CharSequence original) {
try {
if (!SettingsEnum.RYD_ENABLED.getBoolean() || PlayerType.getCurrent().isNoneOrHidden()) {
return original;
}
String conversionContextString = conversionContext.toString();
final boolean isSegmentedButton;
if (conversionContextString.contains("|segmented_like_dislike_button.eml|")) {
isSegmentedButton = true;
} else if (conversionContextString.contains("|dislike_button.eml|")) {
isSegmentedButton = false;
} else {
return original;
}
Spanned replacement = ReturnYouTubeDislike.getDislikesSpanForRegularVideo((Spannable) original, isSegmentedButton);
textRef.set(replacement);
return replacement;
} catch (Exception ex) {
LogHelper.printException(() -> "onLithoTextLoaded failure", ex);
}
return original;
}
/**
* Injection point.
*
* Called when a Shorts dislike Spanned is created.
*/
public static Spanned onShortsComponentCreated(Spanned original) {
try {
if (!SettingsEnum.RYD_ENABLED.getBoolean()) {
return original;
}
return ReturnYouTubeDislike.getDislikeSpanForShort(original);
} catch (Exception ex) {
LogHelper.printException(() -> "onShortsComponentCreated failure", ex);
}
return original;
}
/**
* Injection point.
*
* Called when the user likes or dislikes.
*
* @param vote int that matches {@link ReturnYouTubeDislike.Vote#value}
*/
public static void sendVote(int vote) {
try {
if (!SettingsEnum.RYD_ENABLED.getBoolean()) {
return;
}
for (Vote v : Vote.values()) {
if (v.value == vote) {
ReturnYouTubeDislike.sendVote(v);
updateOldUIDislikesTextView();
return;
}
}
LogHelper.printException(() -> "Unknown vote type: " + vote);
} catch (Exception ex) {
LogHelper.printException(() -> "sendVote failure", ex);
}
}
}

Some files were not shown because too many files have changed in this diff Show More