Skip to content

docs(android-uikit): reframe thread subscription coverage - #521

Open
hritika-cometchat wants to merge 3 commits into
mainfrom
docs/pin-save-docs-reframe
Open

docs(android-uikit): reframe thread subscription coverage#521
hritika-cometchat wants to merge 3 commits into
mainfrom
docs/pin-save-docs-reframe

Conversation

@hritika-cometchat

@hritika-cometchat hritika-cometchat commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

What

Reframes the Android UI Kit's thread-subscription docs: the standalone guide is folded into the threaded-messages guide, and the feature-gate wording is dropped now that the gate no longer sits on UIKitSettings.

Pairs with cometchat-team/uikit-android#913, which moves the gate out of UIKitSettings and flips it to default-ON for parity with React and React Native.

Changes

Removed as stale — these documented API that #913 deletes:

ui-kit/android/methods.mdx Removed
UIKitSettings table row setEnableThreadSubscription"Opt in… Default false"
Feature-flags table row CometChatUIKit.isThreadSubscriptionEnabled()

Restructuredguide-thread-subscription.mdx (157 lines) is deleted and its content merged into guide-threaded-messages.mdx (+113), with the nav entry nested under Threaded Conversations in docs.json. Subscription is a behaviour of threads, not a separate feature, so it reads better in one place.

Rewordedcore-features.mdx, message-list.mdx, events.mdx and threaded-messages-header.mdx now describe the feature as enabled by default, with the per-surface controls (setThreadSubscriptionOptionVisibility / hideThreadSubscriptionOption, setThreadSubscriptionVisibility / hideThreadSubscription) as the way to hide a surface.

ui-kit/react/core-features.mdx gets a matching blurb so web and Android describe the feature the same way.

Merge order

Land this with or after uikit-android#913 — until that ships, these pages describe behaviour the released v6.0.8 kit doesn't have.

🤖 Generated with Claude Code

hritika-cometchat and others added 3 commits September 11, 2026 18:23
- Android: drop the `setEnableThreadSubscription` / `isThreadSubscriptionEnabled`
  init-time gate from the UI Kit settings docs; the feature is documented as
  available out of the box.
- Android: fold the standalone Thread Subscription guide into the Threaded
  Messages guide as a `Thread Subscription` section, remove the nav entry and
  add a redirect to the new anchor.
- Android: keep a separate Thread Subscription entry in core features next to
  Threaded Conversations, pointing at the merged guide section.
- React: add a Thread Subscription subsection under Threaded Conversations in
  core features, linking the message list option and thread header bell.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
- message-list: `setThreadSubscriptionOptionVisibility()` no longer
  footnoted as depending on a thread-subscription feature gate.
- threaded-messages-header: same for the subscription bell row in the
  XML/Compose parity table.
- core-features: restore the blank line before `## Threaded Conversations`
  so the heading renders after the Rich Text Formatting table.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…tions

Demote the core-features `Thread Subscription` heading from `##` to `###`
so it reads as a subsection of Threaded Conversations, matching how the
React UI Kit core-features page is structured.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@mintlify

mintlify Bot commented Sep 11, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
cometchat 🟢 Ready View Preview Sep 11, 2026, 2:36 PM

💡 Tip: Enable Automations to automatically generate PRs for you.

shreeyajoshi-cometchat added a commit that referenced this pull request Sep 14, 2026
…guide

Matches the structure Android (#521) and React Native
(#516) landed on: thread subscription is a behaviour of
threads, not a separate feature, so it reads better in one place.

- Delete guide-thread-subscription.mdx, merging it into
  guide-threaded-messages.mdx as a "Thread Subscription" section with
  its subsections demoted a level.
- Drop the nav entry and add a docs.json redirect to the new anchor.
- Repoint the 8 inbound links; the three deep links keep their
  #turning-the-feature-off anchor.
- Remove the "Copy and Localization" string table for parity — no
  other platform documents per-feature localization keys in a guide,
  and ios/localize.mdx already points at the repo as the key list.
  The VoiceOver-only label it documented is kept as a Behavior bullet.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
shreeyajoshi-cometchat added a commit that referenced this pull request Sep 14, 2026
…ntrols

Drops the app-wide CometChatThreadSubscriptionConfig gate from the docs,
matching React Native (#516, which removes its equivalent
ThreadSubscriptionConfig) and Android (#521, which removes
setEnableThreadSubscription without documenting the replacement). The
per-surface hide flags are the documented control surface on every kit.

- Remove the "Turning the Feature Off" section.
- State on-by-default and the not-a-dashboard-flag caveat under
  "The Surfaces", where the hide flags are introduced.
- Drop the gate line from the kit's-gate code comment, keeping the
  parentMessageId == 0 rule the snippet exists to explain.
- Repoint core-features, message-list and message-header at the
  per-surface flags.

The app-wide path was never documented for iOS, so no published
integration relies on it; UIKitSettings.enable(threadSubscription:) and
CometChatUIKit.isThreadSubscriptionEnabled() appear nowhere on main.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@shreeyajoshi-cometchat

shreeyajoshi-cometchat commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

Following this PR's structure on iOS in #519 — the standalone guide is now folded into guide-threaded-messages.mdx with a redirect, same as here. Thanks for setting the shape.

One thing I'd like to confirm rather than assume, because iOS has now matched it and I want to be sure we all meant to land here.

After this PR, CometChatThreadSubscriptionConfig is documented nowhere.

uikit-android#913 removes setEnableThreadSubscription / isThreadSubscriptionEnabled() and adds CometChatThreadSubscriptionConfig.setEnabled(false) as the replacement. This PR correctly removes the two stale methods.mdx rows, but the new class isn't documented in its place — the prose now describes only setThreadSubscriptionOptionVisibility / setThreadSubscriptionVisibility.

So an integrator has no documented way to turn the feature off app-wide. The visibility methods are per-instance: to remove it everywhere they'd set flags on every CometChatMessageList and every thread header, on every screen, and remember it for each new one.

Worth noting Android is the platform where this actually bites. setEnableThreadSubscription(true) was documented here — the init snippet in guide-thread-subscription.mdx, the UIKitSettings row in methods.mdx:77, the feature-flags row at :430, plus prose in core-features.mdx, message-list.mdx and threaded-messages-header.mdx. Anyone who followed those docs would have that call in their init, and #913 removes it while flipping the default to ON — so an existing opt-out would stop working and the replacement isn't in the docs. (On iOS the app-wide path was never published, which is why we were comfortable matching you.)

Same situation on React Native in #516, which removes ThreadSubscriptionConfig from its docs while the class stays exported from packages/ChatUiKit/src/index.ts.

So the question is just: is "per-surface flags are the documented control surface, the global gate is deliberately undocumented" the intended position across all three kits?

If yes — fine, iOS is aligned and nothing needs to change here.

If no, all three PRs need a short "turning the feature off" note and I'm happy to restore the iOS one.

cc @hritika-cometchat @suraj-chauhan-cometchat

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants