Top | ![]() |
![]() |
![]() |
![]() |
const char * | shell_app_get_id () |
GDesktopAppInfo * | shell_app_get_app_info () |
ClutterActor * | shell_app_create_icon_texture () |
const char * | shell_app_get_name () |
const char * | shell_app_get_description () |
gboolean | shell_app_is_window_backed () |
void | shell_app_activate_window () |
void | shell_app_activate () |
void | shell_app_activate_full () |
void | shell_app_open_new_window () |
gboolean | shell_app_can_open_new_window () |
ShellAppState | shell_app_get_state () |
gboolean | shell_app_request_quit () |
guint | shell_app_get_n_windows () |
GSList * | shell_app_get_windows () |
GSList * | shell_app_get_pids () |
gboolean | shell_app_is_on_workspace () |
gboolean | shell_app_launch () |
void | shell_app_launch_action () |
int | shell_app_compare_by_name () |
int | shell_app_compare () |
void | shell_app_update_window_actions () |
void | shell_app_update_app_actions () |
gboolean | shell_app_get_busy () |
This object wraps a GDesktopAppInfo, providing methods and signals primarily useful for running applications.
ClutterActor * shell_app_create_icon_texture (ShellApp *app
,int size
);
Look up the icon for this application, and create a ClutterTexture for it at the given size.
gboolean
shell_app_is_window_backed (ShellApp *app
);
A window backed application is one which represents just an open window, i.e. there's no .desktop file assocation, so we don't know how to launch it again.
void shell_app_activate_window (ShellApp *app
,MetaWindow *window
,guint32 timestamp
);
Bring all windows for the given app to the foreground,
but ensure that window
is on top. If window
is NULL
,
the window with the most recent user time for the app
will be used.
This function has no effect if app
is not currently running.
void
shell_app_activate (ShellApp *app
);
Like shell_app_activate_full()
, but using the default workspace and
event timestamp.
void shell_app_activate_full (ShellApp *app
,int workspace
,guint32 timestamp
);
Perform an appropriate default action for operating on this application, dependent on its current state. For example, if the application is not currently running, launch it. If it is running, activate the most recently used NORMAL window (or if that window has a transient, the most recently used transient for that window).
app |
a ShellApp |
|
workspace |
launch on this workspace, or -1 for default. Ignored if activating an existing window |
|
timestamp |
Event timestamp |
void shell_app_open_new_window (ShellApp *app
,int workspace
);
Request that the application create a new window.
gboolean
shell_app_can_open_new_window (ShellApp *app
);
Returns TRUE
if the app supports opening a new window through
shell_app_open_new_window()
(ie, if calling that function will
result in actually opening a new window and not something else,
like presenting the most recently active one)
gboolean
shell_app_request_quit (ShellApp *app
);
Initiate an asynchronous request to quit this application. The application may interact with the user, and the user might cancel the quit request from the application UI.
This operation may not be supported for all applications.
GSList *
shell_app_get_windows (ShellApp *app
);
Get the windows which are associated with this application. The returned list will be sorted first by whether they're on the active workspace, then by whether they're visible, and finally by the time the user last interacted with them.
gboolean shell_app_is_on_workspace (ShellApp *app
,MetaWorkspace *workspace
);
gboolean shell_app_launch (ShellApp *app
,guint timestamp
,int workspace
,gboolean discrete_gpu
,GError **error
);
timestamp |
Event timestamp, or 0 for current event timestamp |
|
workspace |
Start on this workspace, or -1 for default |
|
discrete_gpu |
Whether to start on the discrete GPU |
|
error |
A GError |
void shell_app_launch_action (ShellApp *app
,const char *action_name
,guint timestamp
,int workspace
);
app |
the ShellApp |
|
action_name |
the name of the action to launch (as obtained by
|
|
timestamp |
Event timestamp, or 0 for current event timestamp |
|
workspace |
Start on this workspace, or -1 for default |
int shell_app_compare_by_name (ShellApp *app
,ShellApp *other
);
Order two applications by name.
int shell_app_compare (ShellApp *app
,ShellApp *other
);
Compare one ShellApp instance to another, in the following way:
Running applications sort before not-running applications.
If one of them has non-minimized windows and the other does not, the one with visible windows is first.
Finally, the application which the user interacted with most recently compares earlier.
void shell_app_update_window_actions (ShellApp *app
,MetaWindow *window
);
void shell_app_update_app_actions (ShellApp *app
,MetaWindow *window
);