Skip to content

Tron wallet connect#1678

Merged
gemcoder21 merged 6 commits intomainfrom
tron-wallet-connect
Feb 16, 2026
Merged

Tron wallet connect#1678
gemcoder21 merged 6 commits intomainfrom
tron-wallet-connect

Conversation

@0xh3rman
Copy link
Contributor

@0xh3rman 0xh3rman commented Feb 5, 2026

  • Wired WalletConnect to support Tron signMessage/signTransaction/sendTransaction and updated transaction mappings.
  • Added tron_method_version: "v1" sessionProperties on approval when Tron is supported.
  • Ensured Tron signer is used for signData and response decoding preserves JSON types (booleans).

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @0xh3rman, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly expands the application's blockchain capabilities by integrating comprehensive support for the Tron network. It introduces new transaction types, extends metadata structures to accommodate Tron-specific data like raw hexadecimal transaction details, and exposes dedicated WalletConnect methods for signing and sending Tron transactions. These changes ensure that the application can now seamlessly interact with Tron-based wallets and process Tron transactions, broadening its utility for users engaging with the Tron ecosystem.

Highlights

  • Tron Transaction Support: Full integration of Tron as a supported blockchain for wallet connection and transaction processing, allowing the system to recognize and handle Tron-specific transactions.
  • Extended Tron Metadata: The TransactionLoadMetadata and GemTransactionLoadMetadata enums now include an optional rawDataHex field for Tron transactions, enhancing the detail and flexibility of transaction data handling.
  • New WalletConnect Methods: Introduction of tronSignMessage, tronSignTransaction, and tronSendTransaction methods to facilitate Tron-specific interactions via WalletConnect, enabling a broader range of operations.
  • Signer Updates: The TronSigner has been updated to accommodate the new metadata structure for Tron and includes a new signData function, improving its capability to sign various Tron-related data.
  • Core Subproject Update: A core subproject's commit hash has been updated, indicating a dependency refresh likely to support the newly introduced Tron functionalities.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • Features/WalletConnector/Sources/WalletConnector/Services/WalletConnectorSigner.swift
    • Added support for .tron transactions in the switch transaction statements for signing and sending logic.
  • Packages/ChainServices/WalletConnectorService/Extensions/WalletConnectTransaction+ChainServices.swift
    • Extended WalletConnectTransaction to include a .tron case for mapping Tron transaction data and output types.
  • Packages/ChainServices/WalletConnectorService/WalletConnectorTransaction.swift
    • Introduced a new case tron(String, TransferDataOutputType) to the WalletConnectorTransaction enum, formally defining Tron as a supported transaction type.
  • Packages/GemstonePrimitives/Sources/Extensions/GemTransactionLoadMetadata+GemstonePrimitives.swift
    • Modified the .tron case to include rawDataHex as a new parameter, and updated the mapping from TransactionLoadMetadata to GemTransactionLoadMetadata accordingly.
  • Packages/Primitives/Sources/TransactionLoadMetadata.swift
    • Added rawDataHex: String? to the .tron case in the TransactionLoadMetadata enum.
    • Updated the getBlockNumber() method to correctly destructure the .tron case with the new rawDataHex parameter.
  • Packages/Primitives/Sources/WalletConnector.swift
    • Added new WalletConnectionMethods for Tron: tronSignMessage, tronSignTransaction, and tronSendTransaction.
  • Packages/Signer/Sources/Chains/TronSigner.swift
    • Modified the signTransaction method's guard case .tron to destructure the new rawDataHex parameter.
    • Added a new signData function that delegates to ChainSigner.
    • Modified the signStake method's guard case .tron to destructure the new rawDataHex parameter.
  • core
    • Updated the subproject commit hash from 01384bd91d0a73dcaee8012663c91971b828faf3 to b452c557f90cc8c8ef00f1f824493262be7648e7.
Activity
  • No specific activity (comments, reviews, or progress updates) has been recorded for this pull request yet.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds support for Tron wallet connections. The changes span across multiple packages to integrate Tron-specific transaction signing and handling. I've found a critical issue in TronSigner.swift that could lead to infinite recursion. I've also noted an opportunity to refactor duplicated code in WalletConnectorSigner.swift to improve maintainability. Other changes to add Tron support seem correct.

@0xh3rman 0xh3rman marked this pull request as ready for review February 5, 2026 10:45
@0xh3rman
Copy link
Contributor Author

0xh3rman commented Feb 9, 2026

Testing dapp: https://react-app.reown.com

@0xh3rman 0xh3rman force-pushed the tron-wallet-connect branch from dfcc777 to 1ec6041 Compare February 16, 2026 14:40
@gemcoder21 gemcoder21 merged commit d6edbe7 into main Feb 16, 2026
1 check passed
@gemcoder21 gemcoder21 deleted the tron-wallet-connect branch February 16, 2026 19:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants