CinnamonWindowTracker

CinnamonWindowTracker — Associate windows with applications

Synopsis

struct              CinnamonWindowTrackerClass;
CinnamonWindowTracker * cinnamon_window_tracker_get_default
                                                        (void);
CinnamonApp *       cinnamon_window_tracker_get_window_app
                                                        (CinnamonWindowTracker *tracker,
                                                         MetaWindow *metawin);
CinnamonApp *       cinnamon_window_tracker_get_app_from_pid
                                                        (CinnamonWindowTracker *tracker,
                                                         int pid);
gboolean            cinnamon_window_tracker_is_window_interesting
                                                        (MetaWindow *window);
GSList *            cinnamon_window_tracker_get_startup_sequences
                                                        (CinnamonWindowTracker *tracker);
const char *        cinnamon_startup_sequence_get_id    (CinnamonStartupSequence *sequence);
CinnamonApp *       cinnamon_startup_sequence_get_app   (CinnamonStartupSequence *sequence);
const char *        cinnamon_startup_sequence_get_name  (CinnamonStartupSequence *sequence);
gboolean            cinnamon_startup_sequence_get_completed
                                                        (CinnamonStartupSequence *sequence);
ClutterActor *      cinnamon_startup_sequence_create_icon
                                                        (CinnamonStartupSequence *sequence,
                                                         guint size);
                    CinnamonStartupSequence;

Object Hierarchy

  GBoxed
   +----CinnamonStartupSequence

Description

Maintains a mapping from windows to applications (.desktop file ids). It currently implements this with some heuristics on the WM_CLASS X11 property (and some static override regexps); in the future, we want to have it also track through startup-notification.

Details

struct CinnamonWindowTrackerClass

struct CinnamonWindowTrackerClass {
  GObjectClass parent_class;
};

cinnamon_window_tracker_get_default ()

CinnamonWindowTracker * cinnamon_window_tracker_get_default
                                                        (void);

Returns :

The global CinnamonWindowTracker instance. [transfer none]

cinnamon_window_tracker_get_window_app ()

CinnamonApp *       cinnamon_window_tracker_get_window_app
                                                        (CinnamonWindowTracker *tracker,
                                                         MetaWindow *metawin);

tracker :

An app monitor instance

metawin :

A MetaWindow

Returns :

Application associated with window. [transfer full]

cinnamon_window_tracker_get_app_from_pid ()

CinnamonApp *       cinnamon_window_tracker_get_app_from_pid
                                                        (CinnamonWindowTracker *tracker,
                                                         int pid);

Look up the application corresponding to a process.

pid :

A Unix process identifier

Returns :

A CinnamonApp, or NULL if none. [transfer none]

cinnamon_window_tracker_is_window_interesting ()

gboolean            cinnamon_window_tracker_is_window_interesting
                                                        (MetaWindow *window);

The CinnamonWindowTracker associates certain kinds of windows with applications; however, others we don't want to appear in places where we want to give a list of windows for an application, such as the alt-tab dialog.

An example of a window we don't want to show is the root desktop window. We skip all override-redirect types, and also exclude other window types like tooltip explicitly, though generally most of these should be override-redirect.

Returns :

TRUE iff a window is "interesting"

cinnamon_window_tracker_get_startup_sequences ()

GSList *            cinnamon_window_tracker_get_startup_sequences
                                                        (CinnamonWindowTracker *tracker);

Returns :

Currently active startup sequences. [transfer none][element-type CinnamonStartupSequence]

cinnamon_startup_sequence_get_id ()

const char *        cinnamon_startup_sequence_get_id    (CinnamonStartupSequence *sequence);

cinnamon_startup_sequence_get_app ()

CinnamonApp *       cinnamon_startup_sequence_get_app   (CinnamonStartupSequence *sequence);

sequence :

A CinnamonStartupSequence

Returns :

The application being launched, or NULL if unknown. [transfer none]

cinnamon_startup_sequence_get_name ()

const char *        cinnamon_startup_sequence_get_name  (CinnamonStartupSequence *sequence);

cinnamon_startup_sequence_get_completed ()

gboolean            cinnamon_startup_sequence_get_completed
                                                        (CinnamonStartupSequence *sequence);

cinnamon_startup_sequence_create_icon ()

ClutterActor *      cinnamon_startup_sequence_create_icon
                                                        (CinnamonStartupSequence *sequence,
                                                         guint size);

size :

Size in pixels of icon

Returns :

A new ClutterTexture containing an icon for the sequence. [transfer none]

CinnamonStartupSequence

typedef struct _CinnamonStartupSequence CinnamonStartupSequence;