Remix.run Logo
MarsIronPI a day ago

I like the hints API, especially that it can hint on browser elements. However, power users may find it desirable to be able to use the hints system to select arbitrary kinds of elements. Perhaps you could extend the hint functionality to allow callers to pass a CSS selector that determines what elements get hinted? One use case is to write a command that lets the user choose an element and copy its text.

probablyrobert a day ago | parent [-]

You can use CSS selectors already! https://glide-browser.app/hints#excmds

I've used it to add keymappings so that hints only apply to certain kinds of buttons on a page, e.g. https://github.com/RobertCraigie/dotfiles/blob/ecfd6f66e8a77...

MarsIronPI a day ago | parent [-]

Ah, I missed that option, sorry. I was looking at `glide.hints.show'. Are CSS selectors usable with that function? The documentation doesn't say so. Also, would you consider making it return a promise instead of taking a callback? I think that would be more ergonomic.

probablyrobert a day ago | parent [-]

ah yeah sorry about that, the API docs aren't quite complete yet.

I'd recommend just looking at the glide.d.ts[0], it should be pretty readable (I hope).

Yes the TS API supports it as well with the `selector` property:

``` glide.hints.show({ selector: "..." }); ```

> Also, would you consider making it return a promise instead of taking a callback? I think that would be more ergonomic.

The reason it doesn't return a Promise directly is because the hints that are generated are not static, try scrolling while hints are active and you'll see them refresh.

So the return type would have to be something else to work well with this functionality imo.

[0]: https://github.com/glide-browser/glide/blob/8171c5c2af000b71...