Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce Table of Content Without Intense JS Invasion #1237

Draft
wants to merge 12 commits into
base: main
Choose a base branch
from

Commits on Nov 7, 2024

  1. Introduce QWebEngine Javascript Infrastructure

    Setup for TOC Javascript/CSS Injection
    ShaopengLin committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    09cd9d6 View commit details
    Browse the repository at this point in the history
  2. Introduce KiwixWebChannelObject.{h, cpp}

    Add channel to communicate between web page and Qt
    ShaopengLin committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    2143e92 View commit details
    Browse the repository at this point in the history
  3. Enter tableofcontentbar.{h,cpp,ui}

    Re-enabled ToggleTOCAction to display the bar.
    ShaopengLin committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    4620a3b View commit details
    Browse the repository at this point in the history
  4. Ensure ReadingList&TOC display states are consistency

    Only one should be in checked state.
    ShaopengLin committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    5f74621 View commit details
    Browse the repository at this point in the history
  5. Signal Current TOC Parsed from JS

    Signal emits the collected header JSON. Parsing delegated to JS due to better DOM manipulations.
    ShaopengLin committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    a60f676 View commit details
    Browse the repository at this point in the history
  6. Connect Sidebar to Display Table Of Content

    Recursively load the header JSON.
    ShaopengLin committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    8e45c85 View commit details
    Browse the repository at this point in the history
  7. Navigate to Header On Click in TOC

    Upon signaling, use JS to navigate, as helps avoid wrong url setting given the asynchronism.
    ShaopengLin committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    77a5e56 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    bdfbffa View commit details
    Browse the repository at this point in the history
  9. Add Hide Button to TOC

    ShaopengLin committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    3a07518 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    df59543 View commit details
    Browse the repository at this point in the history
  11. Proper Styling to TOC

    ShaopengLin committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    f389411 View commit details
    Browse the repository at this point in the history
  12. Add Tooltip to TOC

    Elided item text is expanded here.
    ShaopengLin committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    6d4aca1 View commit details
    Browse the repository at this point in the history