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

Wlroots taskbar #2046

Draft
wants to merge 97 commits into
base: work/gfgit/wayland_taskbar
Choose a base branch
from

Commits on Mar 26, 2024

  1. TaskBar: forward declare

    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    ed9eab5 View commit details
    Browse the repository at this point in the history
  2. TaskBar: new ILXQtTaskbarAbstractBackend

    This is an abstract interface to operate windows
    and workspaces
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    d683aef View commit details
    Browse the repository at this point in the history
  3. ILXQtTaskbarAbstractBackend: add supportsAction() method

    - Move WindowProperty enum to lxqttaskbartypes.h
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    6fc94c9 View commit details
    Browse the repository at this point in the history
  4. TaskBar: add X11 backend

    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    2fbcb78 View commit details
    Browse the repository at this point in the history
  5. TaskBar: new LXQtTaskBarProxyModel

    This model will manage the tasks shown
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    1cf81a6 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    10be817 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    c9f0cae View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    2629ce1 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    a09e65b View commit details
    Browse the repository at this point in the history
  10. TaskBar: use backend to close and raise window

    Also use it to get window icon
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    1b013db View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    17132e0 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    80d666e View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    6d2217c View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    be807cc View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    d2fc42e View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    cc84e94 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    a597c92 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    0f0b404 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    ca91544 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    fb332d7 View commit details
    Browse the repository at this point in the history
  21. LXQtPanel: rework calculatePopupWindowPos()

    - Don't rely on global screen coordinates
    
    - This will be needed for future Wayland port,
      Where we don't have global screen coordinates
    
    - Keep compatible behavior on X11
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    934acf1 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    616c8de View commit details
    Browse the repository at this point in the history
  23. ILXQtTaskbarAbstractBackend: new Geometry window property

    This new window propery flag is needed to notify geometry changes
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    5a36d25 View commit details
    Browse the repository at this point in the history
  24. Move ILXQtTaskbarAbstractBackend to panel directory

    - It is now a global instance
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    f1d981f View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    a891f84 View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    1500200 View commit details
    Browse the repository at this point in the history
  27. ILXQtTaskbarAbstractBackend: add dummy implementation

    This will be used to avoid crashing panel in case no backend could be
    created.
    A warning message will be printed in this case.
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    a7a6e5d View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    0d4190a View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    82bcd4b View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    01306fe View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    94d5443 View commit details
    Browse the repository at this point in the history
  32. DesktopSwitch: port to ILXQtTaskbarAbstractBackend

    - Clarify desktop index range
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    774cd7a View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    2002ec8 View commit details
    Browse the repository at this point in the history
  34. DesktopSwitchConfiguration: port to ILXQtTaskBarAbstractBackend TODO

    TODO: this will disable changing desktop names
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    ac9634e View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    e7f3140 View commit details
    Browse the repository at this point in the history
  36. TaskBar: add experimental KWin Wayland backend

    NOTE: works only on KWin
    
    - Choose backend at runtime
    - Windows filter logic is re-evaluated on window property changes
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    757bbf1 View commit details
    Browse the repository at this point in the history
  37. Configuration menu
    Copy the full SHA
    6bb3b16 View commit details
    Browse the repository at this point in the history
  38. Configuration menu
    Copy the full SHA
    ec178e3 View commit details
    Browse the repository at this point in the history
  39. LXQtTaskBarPlasmaWindowManagment: fix destructor TODO

    TODO: is this correct?
    Seems to call wl_proxy_destroy underneath
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    70dbc38 View commit details
    Browse the repository at this point in the history
  40. Configuration menu
    Copy the full SHA
    b4b7c13 View commit details
    Browse the repository at this point in the history
  41. LXQtPanel: workaround KAcceleratorManager changing button text FIXME …

    …TODO
    
    TODO: is this correct approach?
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    fc55f28 View commit details
    Browse the repository at this point in the history
  42. LXQtPanel: use LayerShell on Wayland

    layer_shell protocol allows to aks for placement on Wayland
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    43ee044 View commit details
    Browse the repository at this point in the history
  43. Configuration menu
    Copy the full SHA
    fc29364 View commit details
    Browse the repository at this point in the history
  44. LXQtPanel: partially fix alignment on Wayland TODO

    TODO: after changing length to pixels and back to percent
    alignment is ignored and always kept to right
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    0126653 View commit details
    Browse the repository at this point in the history
  45. Add desktop file to be recognized by KWin Wayland

    NOTE: absolute path is needed inside .desktop file for this to work
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    cbd9a26 View commit details
    Browse the repository at this point in the history
  46. LXQtTaskbarWaylandBackend: return only accepted windows

    - reloadWindows() force removal and readding of windows
    
    This fixes changing windows grouping settings and adding taskbar plugin
    AFTER panel is started.
    Both situations resulted in empty taskbar previously
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    81f5e1d View commit details
    Browse the repository at this point in the history
  47. Configuration menu
    Copy the full SHA
    076d36a View commit details
    Browse the repository at this point in the history
  48. Configuration menu
    Copy the full SHA
    5b22d8d View commit details
    Browse the repository at this point in the history
  49. Configuration menu
    Copy the full SHA
    bc1c267 View commit details
    Browse the repository at this point in the history
  50. Configuration menu
    Copy the full SHA
    a28763f View commit details
    Browse the repository at this point in the history
  51. Configuration menu
    Copy the full SHA
    77527ee View commit details
    Browse the repository at this point in the history
  52. ColorPicker: use XDG Desktop Portal on Wayland TODO

    TODO: show error message when not supported
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    a91c1bb View commit details
    Browse the repository at this point in the history
  53. Configuration menu
    Copy the full SHA
    c52d6a5 View commit details
    Browse the repository at this point in the history
  54. CMake: move panel WM backends to separate libraries

    - QTime is included to fix build errors
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    94cb67a View commit details
    Browse the repository at this point in the history
  55. LXQtTaskbarWaylandBackend: fix QTime inclusion TODO

    Now it's fixed corretly
    
    TODO: merge with previous commit
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    35705e3 View commit details
    Browse the repository at this point in the history
  56. LXQtPanel: set LayerShellQt KeyboardInteractivityOnDemand

    Set layer shell keyboard interactivity on-demand
    gfgit committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    e065073 View commit details
    Browse the repository at this point in the history
  57. Configuration menu
    Copy the full SHA
    a4fff49 View commit details
    Browse the repository at this point in the history
  58. Configuration menu
    Copy the full SHA
    8365ef9 View commit details
    Browse the repository at this point in the history
  59. Configuration menu
    Copy the full SHA
    dbdbdd7 View commit details
    Browse the repository at this point in the history
  60. Configuration menu
    Copy the full SHA
    11cdbaf View commit details
    Browse the repository at this point in the history
  61. Updates

    marcusbritanicus committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    dc5a16c View commit details
    Browse the repository at this point in the history
  62. Configuration menu
    Copy the full SHA
    5a02666 View commit details
    Browse the repository at this point in the history
  63. Few more updates

    marcusbritanicus committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    e247e5b View commit details
    Browse the repository at this point in the history

Commits on Mar 27, 2024

  1. Configuration menu
    Copy the full SHA
    c6b353f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a01b215 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6ed1031 View commit details
    Browse the repository at this point in the history
  4. 11 Configuration menu
    Copy the full SHA
    8ae41f3 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c6b68c0 View commit details
    Browse the repository at this point in the history
  6. Fix various warnings

    marcusbritanicus committed Mar 27, 2024
    Configuration menu
    Copy the full SHA
    5f8e723 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    565567f View commit details
    Browse the repository at this point in the history

Commits on Mar 28, 2024

  1. 2 Configuration menu
    Copy the full SHA
    41ee2b2 View commit details
    Browse the repository at this point in the history

Commits on Mar 29, 2024

  1. Configuration menu
    Copy the full SHA
    09fddbe View commit details
    Browse the repository at this point in the history
  2. Refactor LXQtTaskbarWlrootsBackend

    Instead of using LXQtTaskbarWlrootsWindow* pointers, it's easier to
    store and use WId a.k.a quintptr which are derived from the address of
    the LXQtTaskbarWlrootsWindow pointer. This way, it's trivial to retrieve
    the underlying pointer with a reinterpret_cast<...>().
    
    Also, switch to using std::find(...) to search a given WId in windows.
    Use a dedicated function to erase a WId from windows: eraseWindow(...).
    marcusbritanicus committed Mar 29, 2024
    Configuration menu
    Copy the full SHA
    e53254e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    fa1defa View commit details
    Browse the repository at this point in the history

Commits on Mar 31, 2024

  1. Configuration menu
    Copy the full SHA
    5b25762 View commit details
    Browse the repository at this point in the history

Commits on Apr 4, 2024

  1. Configuration menu
    Copy the full SHA
    c3d0531 View commit details
    Browse the repository at this point in the history

Commits on Apr 11, 2024

  1. Get wlroots backend compiling

    marcusbritanicus authored and gfgit committed Apr 11, 2024
    Configuration menu
    Copy the full SHA
    87c7327 View commit details
    Browse the repository at this point in the history
  2. Fix a few implementation issues

    marcusbritanicus authored and gfgit committed Apr 11, 2024
    Configuration menu
    Copy the full SHA
    e68edc8 View commit details
    Browse the repository at this point in the history
  3. Updates

    marcusbritanicus authored and gfgit committed Apr 11, 2024
    Configuration menu
    Copy the full SHA
    141c3ed View commit details
    Browse the repository at this point in the history
  4. Update tasks list on window closed

    marcusbritanicus authored and gfgit committed Apr 11, 2024
    Configuration menu
    Copy the full SHA
    f0c55a6 View commit details
    Browse the repository at this point in the history
  5. Few more updates

    marcusbritanicus authored and gfgit committed Apr 11, 2024
    Configuration menu
    Copy the full SHA
    a69f61c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    9f72a3b View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    a581c9e View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    0d14635 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    d517f9b View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    4034f25 View commit details
    Browse the repository at this point in the history
  11. Fix various warnings

    marcusbritanicus authored and gfgit committed Apr 11, 2024
    Configuration menu
    Copy the full SHA
    5cf1d8a View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    4d696cb View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    d4d014e View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    1163a85 View commit details
    Browse the repository at this point in the history
  15. Refactor LXQtTaskbarWlrootsBackend

    Instead of using LXQtTaskbarWlrootsWindow* pointers, it's easier to
    store and use WId a.k.a quintptr which are derived from the address of
    the LXQtTaskbarWlrootsWindow pointer. This way, it's trivial to retrieve
    the underlying pointer with a reinterpret_cast<...>().
    
    Also, switch to using std::find(...) to search a given WId in windows.
    Use a dedicated function to erase a WId from windows: eraseWindow(...).
    marcusbritanicus authored and gfgit committed Apr 11, 2024
    Configuration menu
    Copy the full SHA
    cbc9d99 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    d19aff4 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    6cdf8c3 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    bf283bf View commit details
    Browse the repository at this point in the history

Commits on Apr 18, 2024

  1. Configuration menu
    Copy the full SHA
    92577e9 View commit details
    Browse the repository at this point in the history

Commits on Apr 22, 2024

  1. Configuration menu
    Copy the full SHA
    b10a5da View commit details
    Browse the repository at this point in the history

Commits on Apr 23, 2024

  1. Configuration menu
    Copy the full SHA
    b1cb8c3 View commit details
    Browse the repository at this point in the history