Skip to content

To-do list. #1

@DrewNaylor

Description

@DrewNaylor
  • Switch to Lucene.NET from NuGet.
    The project currently uses version 3.0.3, so I'll have to use that version. This'll reduce storage space usage and make updating dependencies easier: https://github.com/apache/lucenenet
  • Use MadMilkman.Ini/libinidotnet instead of the file that falls under the Code Project Open License
    That license isn't a free software license.
  • Rename the project
    I wanted to call it "Swell Shell", but that was kinda already taken by swell.sh. Maybe Hardboiled-Shell would work. Actually, I think weastroshell can work.
  • Port to .NET 5 and GTK#'s .NET Core implementation
    I'd also like to eventually port to GTK4 once either GTK# or gir.core support it. Right now it works on Windows under .NET Framework, though it has a titlebar and I'm not sure if it's supposed to or not. I'll get rid of the titlebar on the panel.
  • Make sure it can be built for ARM.
  • Have the panel's windows be undecorated.
    There's a file related to the menu plugin that has commented-out code for "Decorated=False" or something like that. Should work, I hope. Edit: It works, but the panel doesn't go all the way to the top of the monitor for some reason.
  • Allow the plugins to be loaded from DLLs and move them to their own .csproj files.
    Currently they're part of the panel project and even reference it with "using", but I want to ensure that it's easy to add, update, remove, and replace plugins for end users. In particular, I noticed that the menu plugin has a .cs file in the folder containing the plugins folder. Edit: oh wait, the menu is importing the core project, not the panel project. Still, they need to be in their own DLLs.
  • Create a "spacer" plugin that expands to fill available space. Will be particularly useful if this project turns out to be good enough for me to use as the navigation bar for Retiled, as there needs to be space between Back, Start, and Search (will need to figure out a way to allow the user to specify how wide a spacer gets at maximum, to prevent buttons from being too far apart). Hopefully it will be, because I can already think of a more unique use case thanks to allowing different panels with different plugins on different monitors: a Continuum reimplementation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions