Commit Graph

435 Commits

Author SHA1 Message Date
Jonny Buchanan
b3076019c8 - Added checkSocialContext to TimelineOptions instead of hardcoding it for profile timelines
- Fixed Community Tweets being treated as Retweets
- Fixed handling timelines in Communities tabs
- Replaced hardcoding of the primary column selector

Options:
- Fixed options textarea styles
- Fixed background in macOS Safari options popup in dark mode
- Apply other settings changes after options input changes
2025-06-15 18:55:44 +10:00
Jonny Buchanan
c6ce159f34 Cache processing of all Tweet timeline item handling 2025-06-14 15:41:08 +10:00
Jonny Buchanan
33fb01ff22 Fixed Retweeted Quote Tweets not appearing in the Retweets timeline 2025-06-14 15:40:36 +10:00
Jonny Buchanan
dafaafd930 Changes from v4.12.3 2025-06-14 14:33:36 +10:00
Jonny Buchanan
bfd15c51cd Changed how the React Native stylesheet is observed for relevant rules 2025-06-12 07:39:49 +10:00
Jonny Buchanan
f80d24c74b Use Twitter's own hover colours when restoring the theme colour 2025-06-12 07:39:08 +10:00
Jonny Buchanan
c577422094 Add missing leading call for the sidebar container observer 2025-06-03 17:59:36 +10:00
Jonny Buchanan
f684b862fa Fix from v4.12.2 2025-06-03 11:21:33 +10:00
Jonny Buchanan
4fc7eed580 Reorganise the page script 2025-06-01 22:37:43 +10:00
Jonny Buchanan
ab85ad9bb5 Run the page script in the MAIN world and communicate with it via BroadcastChannel instead of having it monitor a <script> tag 2025-06-01 22:37:28 +10:00
Jonny Buchanan
15b33a6d55 Change content, options and page scripts to use the new v5 config storage format
- All page script settings are now stored in a single settings object
- All other top-level config is for extension-internal settings
- Renamed old settings which were marked with comments in types.d.ts

Background script
- Open welcome (new installs) or updated (v4 → v5) page post-install
- Migrate v4 user settings to new v5 format on update

Page script:
- Removed userscript pragma
- Renamed page script config variable to 'settings'

Scripts:
- Moved utility and script API functions to lib.js
- Updated copy script to copy all *.mv*.* files in the root dir
- Added a clean script and command to remove files which correspond to a *.mv*.* file
2025-06-01 18:18:27 +10:00
Jonny Buchanan
09b5e7b72d Release v4.12.1
- Fixed restored Tweet source and link headlines not displaying in some browsers
2025-06-01 14:50:02 +10:00
Jonny Buchanan
17d078e639 Fixed restored Tweet sources and link headlines not displaying in some browsers 2025-06-01 14:48:39 +10:00
Jonny Buchanan
dab3344b15 Release v4.12.0
- Added an "Enabled" option to allow extension functionality to be turned off from its own options - when disabled, the icon in the toolbar will have a ⏻ badge (Safari) or be greyed out (all other browsers)
- Added an option to restore the Tweet source label in focused Tweets (enabled by default)
- Added hiding the "Upgrade to Premium+ to write longer posts" Premium upsell
- Changed the options for hiding Premium replies to all be "Show" options so they're easier to understand - if a Premium reply matches any of your "Show" options, it will be shown
- Split the option for showing Premium replies from verified orgs into separate options for Business and Government accounts
- Fixed the same Tweets being repeatedly re-checked in focused Tweet timelines when new Tweets are added - should improve performance in long Tweet threads
- Fixed flash of initial X loading logo
- Fixed verified Government accounts getting the Twitter Blue check
- Fixed the options in the Number of followers dropdown not being localised
- Fixed the desktop nav font size option applying to the notifications count
2025-05-31 19:35:38 +10:00
Jonny Buchanan
84ceb7d7b1 Fixed the desktop nav font size option applying to the notifications count 2025-05-31 19:09:20 +10:00
Jonny Buchanan
e9e68814c1 Hide the "Upgrade to Premium+ to write longer posts" Premium upsell
Added some more hook classes to help avoid false positives

Closes #481
Closes #501
2025-05-31 17:11:59 +10:00
Jonny Buchanan
bd604e4a7a Fixed verified Government accounts getting the Twitter Blue check
Reworked options for hiding Premium replies to use all "Show" options
Simplified logic for showing allowed Premium replies
Split the option for showing verified orgs into Business and Government options
Fixed the numbers in the Show accounts with over ${number} followers option not being localised
2025-05-31 16:47:04 +10:00
Jonny Buchanan
c75e01f50f Rename 'tnt' things to 'cpft' (finally) 2025-05-31 11:00:06 +10:00
Jonny Buchanan
01fa86347b Hide more custom UI elements when the extension is disabled 2025-05-31 10:53:48 +10:00
Jonny Buchanan
d2125632a0 Fix the current page not being processed on open Twitter pages when extension functionality is enabled 2025-05-31 10:29:11 +10:00
Jonny Buchanan
4bed7b236e Added an option to restore the Tweet source label in focused Tweets (enabled by default)
Fixed the same Tweets being repeatedly re-checked in focused Tweet timelines when new Tweets are added
Refactored focused Tweet tweaks which were previously working around being called repeatedly
Hide UI elements we add to focused tweets when the extension is disabled after adding them

Closes #737
2025-05-31 10:28:10 +10:00
Jonny Buchanan
7a54fbd193 Added an "Enabled" option to allow extension functionality to be toggled off and on without having to disable it in your browser's extension management UI
- Pulled lastFlexDirection state up so it can be reset
- Added a globalObservers scope object so global functionality can be disabled
- Refactored observeElement:
  - Use Maps of disconnectables instead of lists
  - Now handles adding disconnectables to the appropriate scope object itself
  - Automatically disconnects any observer with the same name when observing an element
  - Disconnectables are now automatically removed from their scope object when disconnected
  - A leading call of the callback is now an explicit option which must be opted into
- Made CSS functions remove their stylesheets when disabled
- Reset state in main() so initial setup runs again when re-enabled
- Extracted settings sync setup out of main() so it always runs to receive enabled status changes
- Added a background script to update the browser action icon to match enabled state

Also:

- Fixed flash of X logo on initial load by handling the logo
  - Handle this synchronously in the content script
  - Reflect enabled and replaceLogo settings in localStorage

Closes #514
2025-05-29 13:37:08 +10:00
Jonny Buchanan
d0e54a9d75 Release v4.11.1
- Hid another new Premium upsell in Premium user profiles
2025-05-26 16:06:46 +10:00
Jonny Buchanan
7990265348 Hide another new Premium upsell 2025-05-23 14:34:37 +10:00
Jonny Buchanan
52de4d1c19 Release v4.11.0
- Added an option to hide the Live bar in the mobile timeline when someone you follow is broadcasting
- Added an option to hide the Live with X box in the desktop sidebar
- Added an option to hide the What's happening box in the desktop sidebar
- Added an option to hide Who to follow and other suggested follow boxes in the desktop sidebar
- Moved these to a new Sidebar options group, as they don't all belong in the Remove algorithmic content group
- Added changing "Live on X" to "Live on Twitter" when Replace X branding changes is enabled
- Added hiding promoted trends
- Added hiding Install button cards in some Grok tweets
- Added hiding Ask Grok button in Tweets
- Added hiding a new premium upsell in the desktop sidebar
- Fixed a link headline restoration false positive on Install button cards in Grok tweets
- Fixed hiding the ad in What's happening when not hiding sidebar contents
- Fixed Japanese translation wording and sentence endings
- Increased timeout waiting for the "you aren't verified yet" premium upsell to appear in your own profile
- Removed the Hide Pro nav option, as it's no longer applicable
2025-05-17 03:52:39 +10:00
Jonny Buchanan
a861074949 Quick workaround for an error which stops us starting up if you refresh on a page with a broken <title>, e.g. Bookmarks 2025-05-17 03:48:27 +10:00
Jonny Buchanan
b080052f6f Fixed the Premium upsell in Home sidebar being detected as What's happening
Apply the Show Relevant people setting when using hideSuggestedFollows
Fixed hideSuggestedFollows hiding the entire sidebar in individual Tweet pages
2025-05-17 03:40:23 +10:00
Jonny Buchanan
b0a360aef6 Inceased the timeout waiting for the "you aren't verified yet" premium upsell to appear in your own profile 2025-05-17 02:29:33 +10:00
Jonny Buchanan
6f2a312cce Hide promoted trends anywhere, not just in What's happening 2025-05-11 23:34:46 +10:00
Jonny Buchanan
67d73908c9 Hide Ask Grok button in Tweets 2025-05-03 15:16:32 +10:00
Jonny Buchanan
c59a701ce2 Hid a new premium upsell in the desktop sidebar 2025-05-02 11:22:37 +10:00
Jonny Buchanan
516ae0f2c2 Hide Install button cards in some Grok tweets
Made link headline restoration ignore Install button cards in Grok tweets
2025-05-02 11:22:10 +10:00
Jonny Buchanan
155b72f650 Added an option to hide the live broadcast bar in the mobile timeline when someone you follow is hosting
Added an option to hide the Live with X box in the desktop sidebar
Added an option to hide the What's happening box in the desktop sidebar
Added an option to hide Who to follow and other suggested follow boxes in the desktop sidebar
Moved these to a new Sidebar options group, as they don't all belong in the Remove algorithmic content group
Change "Live on X" to "Live on Twitter" when Replace X branding changes is enabled

Closes #227
Closes #587
2025-05-02 11:20:34 +10:00
Jonny Buchanan
b705a2e445 Remove Hide Pro nav option, as it's no longer applicable 2025-05-01 16:11:18 +10:00
Jonny Buchanan
13b84ab4b5 Hide promoted trends in What's happening when sidebar contents aren't being hidden 2025-04-30 04:10:13 +10:00
Jonny Buchanan
d4eb698b78 When not hiding sidebar contents, fix hiding the ad in What's happening if you're not using any other config which requires the sidebar to be observed 2025-04-28 16:25:30 +10:00
Jonny Buchanan
2fc1fb0f28 Release v4.10.1
- Hide the ad in What's happening when not hiding sidebar contents
- Hide the ad at the top of Explore when not hiding Explore's contents
- Hide a new "This profile is verified" Premium upsell when viewing a Premium profile
- Hide a new Premium Analytics upsell in your own profile when not hiding sidebar contents
- Hide a new hovercard Premium upsell on desktop
- Fixed hiding the Premium upsell in the Home sidebar when not hiding sidebar contents
- Fixed hiding the user's own replies if they have Premium, when hiding Premium replies in threads
- Process blue checks in the sidebar user box when not hiding sidebar contents
- Process blue checks in Explore when not hiding Explore's contents
- Don't run on URLs used for OAuth authorization
2025-04-28 02:24:10 +10:00
Jonny Buchanan
5b01e37038 Hide a new hovercard Premium upsell on desktop 2025-04-28 02:15:05 +10:00
Jonny Buchanan
ac674faf64 Observe the explore timeline to process blue checks when not hiding Explore's contents 2025-04-28 02:03:50 +10:00
Jonny Buchanan
88ecb0716a Refactor visible sidebar code
Process the blue checks in the Relevant people box
Fixed multiple sidebar What's happening observers being created
2025-04-28 02:03:21 +10:00
Jonny Buchanan
7a9dc56f90 Revert "Added an option to hide the new Your Analytics nav item (default: enabled)" 2025-04-28 00:45:12 +10:00
Jonny Buchanan
39fa1b6d87 Wait for the sidebar aside user box to load separately 2025-04-28 00:40:35 +10:00
Jonny Buchanan
dfcc3d8532 Process blue checks in Who to follow in the sidebar
Handle the Explore page's sidebar differently
2025-04-26 16:23:01 +10:00
Jonny Buchanan
fc4bc0c405 Re-hide the ad in What's happening when the sidebar timeline refreshes 2025-04-26 16:08:56 +10:00
Jonny Buchanan
ee1700cee7 Hide the ad in What's happening when sidebar contents aren't being hidden
Fixes #648
2025-04-26 15:40:57 +10:00
Jonny Buchanan
1f499bc051 Hide the ad at the top of Explore when not hiding Explore contents 2025-04-26 14:38:01 +10:00
Jonny Buchanan
a2448cb35b Don't run on URLs used for OAuth authorization 2025-03-29 16:25:26 +10:00
Jonny Buchanan
1bf2ea1a3a Added an option to hide the new Your Analytics nav item (default: enabled)
Hid a new Premium Analytics upsell in your own profile when sidebar contents aren't being hidden
2025-03-29 02:34:00 +10:00
Jonny Buchanan
df070f8771 Hid a new "This profile is verified" upsell in premium profiles 2025-03-14 10:08:51 +10:00
Jonny Buchanan
45123cf516 Fixed hiding the Premium upsell in the Home sidebar when not hiding all sidebar contents 2025-03-14 10:08:14 +10:00