Skip to content

jqcorreia/super

Repository files navigation

super

Press <super> to do stuff!

Build Instructions

git submodule init`
git submodule update`
odin build -
./super

Dependencies

  • libschrift - font rendering
  • resvg - svg rendering
  • libwayland - wayland support
  • libxkbcomp - keyboard state handling (some day we will remove this)

Devlog

  • working layer and window surfaces
  • semblance of an engine with abstracted canvas creation
  • rudimentary shader map
  • keyboard input
  • keyboard event controller
  • keyboard with deadkeys and keyboard state
  • Font manager (fc-list based)
  • Primitive text rendering (libschrift based)
  • Use proper font metrics based on previous glyph (leftSideBearing et al)
  • fix WAYLAND_DEBUG crashing (prolly wayland-odin's fault)
  • Basic label widget
  • make state global ffs
  • organize shaders
  • Widgets! Kinda
  • Scrollable lists
  • Proper text rendering with glyph caching
  • Rudimentary text box input
  • Fix error where number of list items is too small.
  • Implement applications source
  • Implement secrets source
  • Add clipboard support (used wl-copy)
  • Fix list flickering and weird alpha (disabled blend toggling)
  • Fix window layer - fixed, and setup max and min sized, now it's proper modal
  • Investigate modal vs layer
  • Image (PNG, JPEG) rendering
  • Image (SVG) rendering
  • BIG GOAL: Make it as usable as tudo so I can daily drive this
  • Load correct sized icons with load hints
  • Keyboard repeat (some edge cases may not work, but it's usable)
  • Colored text
  • Embed some assets like default font
  • Implement list selected item/index mechanics
  • List scroll along with selection
  • Layout manager, dumb, simple one, please... - !
  • Implement theming -- !
  • Implement tmux sessions source
  • Make a UI package properly usable
  • Check why egl.CreateContext() allocates so much memory!
  • Mouse input
  • Multiple canvas support. Dunno why no work...
  • Window/Surface resize, push EGL creation to configure()
  • Port platform and renderer to Vulkan

! == ongoing

About

Press <super> to do stuff!

Resources

Stars

Watchers

Forks

Packages

No packages published