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

[PTRun][OneNote] Improve the OneNote plugin #36813

Open
wants to merge 14 commits into
base: main
Choose a base branch
from

Conversation

Odotocodot
Copy link

@Odotocodot Odotocodot commented Jan 11, 2025

Summary of the Pull Request

This pull request improves the OneNote plugin by adding new features such as a notebook explorer and the ability to quickly create new notebooks, section groups, sections and pages.

base menu notebook explorer

PR Checklist

Detailed Description of the Pull Request / Additional comments

List of all new features:

  • View notes hierarchically (called notebook explorer)
    • This allows users to open all item types (not just pages) in OneNote from PTRun.
  • Quickly create new notebooks, section groups, sections and pages.
  • Search items by their title only.
  • Search pages only in a specific notebook, section group or section.
  • View recently edited pages.
  • New icons (option to match PowerToys theme or use colored icons).
  • The ability to see whether an item has unread changes.

This adds new plugin specific keywords:

Keyword Description
nb:\ Access the notebook explorer
rp: Quickly view recent pages
* Search items by title
> Search pages within an item (Only works in notebook explorer)

New settings:

  • Show an icon for items with unread changes.
  • Show encrypted sections (even if they are unlocked)
  • Show the recycle bin section group
  • Create coloured icons for notebooks and sections
  • COM Object timeout.
    • The delay before the COM object is removed from memory after user input. Creating a COM object is a slow process.
    • This setting is fine left as default, so can potential be removed if too confusing.
    • This is a work around given there is no api to know when the run window is opened or closed.

This also changes package dependencies, one of them is that LazyCache is not used so the lines mention below may not be needed any more.

<!-- HACK: Microsoft.Extensions.Hosting is referenced, even if it is not used, to force dll versions to be the same as in other projects. Really only needed since OneNote uses the LazyCache and NLog dependencies, which references older assemblies. -->
<PackageReference Include="Microsoft.Extensions.Hosting" />

Also as stated in #29348, this pull request is essentially porting non conflicting features from this OneNote plugin directly into PowerToys Run.

Validation Steps Performed

Manually tested:

  • Creating new items
  • Search capabilites
  • Correct icons and text displayed

@Odotocodot
Copy link
Author

@microsoft-github-policy-service agree

@Odotocodot Odotocodot requested a review from a team as a code owner January 18, 2025 12:49
Copy link
Collaborator

@jaimecbernardo jaimecbernardo left a comment

Choose a reason for hiding this comment

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

Hi, thank you for opening this PR. Was about to review, but I think you did a bad merge here. The changes in the PR are totalling 413 files: https://github.com/microsoft/PowerToys/pull/36813/files

image

Can you please fix the branch so that it only shows the actual changes that this PR is bringing in? Please let me know if you need some help doing this.

@Odotocodot
Copy link
Author

Odotocodot commented Jan 19, 2025

Oh, something went awry during my rebase. Yes, please any help will be much appreciated.

@Odotocodot Odotocodot force-pushed the feature/improve-onenote-plugin-2 branch from 2a26239 to 22403c5 Compare January 19, 2025 23:54
@Odotocodot
Copy link
Author

I have fixed the branch now!

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.

2 participants