~whereswaldon/gio-x

ref: b0198a1b547035c76d814b60de9aec3fce6353a8 gio-x/component d---------
component: document and refactor tooltip types

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: add tooltip iconbutton wrapper

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: fix tooltip delayed animation

This commit updates the animation code for the TipArea to
minimize the number of screen invalidations required to
animate the appearance of the contextual content. In the
process, this commit fixes some bugs with the TipArea.

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: add TipArea for displaying tooltips

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: implement tooltip component visually

This commit introduces a pre-styled tooltip component. It does not
include logic for displaying tooltips on hover or other interactions.

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: fixed flickering when w1 is approaching zero size in some circumstances in Resize

Signed-off-by: pierre <pierre.curto@gmail.com>
component: added Resizer widget

Signed-off-by: pierre <pierre.curto@gmail.com>
component: fix package godoc

The comment at the top of shadow.go was being used as the
package-level documentation in some cases (gopls).

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
fix: prevent multiple simultaneous menus

This fixes a bug in which a ContextArea could display its
contextual widget twice if the user right-clicked quickly
while the area was open.

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: fix screenshot URLs in README

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: document new types in README

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: add Menu and associated types

This commit introduces a context menu type based on the material.io
Menu component, as well as a number of auxiliary types that are useful
in conjunction with it. In particular:

- Shadow creates drop shadows for rounded rectangles (based on Egon
  Elbre's work).
- Surface is a simple rounded rectangle with a background color and
  a drop shadow.
- Divider implements the material.io divider and can easily be used
  within surfaces or Menus to separate content.
- ContextArea defines an area that will display a widget if right-clicked.
  This is useful to show context menus, but can be used to display anything.
- MenuItem provides a pre-configured menu element that respects material
  specifications. You can also provide any layout.Widget as a menu element.

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: make SimpleIconAction work without passing *material.Theme

The theme was only ever used because we used the material.IconButton
helper function, and did not build a material.IconButtonStyle directly.
No values were ever really used from it.

Signed-off-by: Fabian Geiselhart <me@f4814n.de>
component,eventx,outlay,scroll: update pkg docs

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
all: update READMEs with new project info

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: update README with new package name

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
all: update to new op.SaveState method names

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: remove dangling references to old pkg name

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
all: create go.mod and go.sum

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
component: merge materials repo, rename pkg, and organize files

Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>