My goal was to find out what properties/methods of UI of Cinnamon I can access from javascript code. In the javascript code of Cinnamon I see e.g. (applet.js):
const St = imports.gi.St;
...
this._applet_label = new St.Label({ reactive: true,
track_hover: true,
style_class: 'applet-label'});
In the Cinnamon code from https://github.com/linuxmint/cinnamon I've found st-label.h with:
struct _StLabel
{
/*< private >*/
StWidget parent_instance;
StLabelPrivate *priv;
};
struct _StLabelClass
{
StWidgetClass parent_class;
};
But I could not find the code for the binding from _StLabel to St.Label. How do I find all methods, variables from binded C UI libraries I can use in javascript code?
For const Tooltips = imports.ui.tooltips; I see tooltips.js in js/ui folder. However how gi.St is found by javascript engine?
In particular I want to change the font of the label (via style_class or even better size, color etc. separately via their own objects/properties/methods). I could not find such code in Cinnamon applets sources, I've found font change is commonly made via themes by the user, but I want more fine-grained control.