Controls in which GNOME Shell states an action (like keybindings and gestures)
should be handled.
block action
allow action when in window mode,
e.g. when the focus is in an application window
allow action while the overview
is active
allow action when the screen
is locked, e.g. when the screen shield is shown
allow action in the unlock
dialog
allow action in the login screen
allow action when a system modal
dialog (e.g. authentication or session dialogs) is open
allow action in looking glass
allow action while a shell menu is open
always allow action
Object representing an application
This object wraps a #GDesktopAppInfo, providing methods and signals
primarily useful for running applications.
Like shell_app_activate_full(), but using the default workspace and
event timestamp.
a #ShellApp
This activates an action using 'org.freedesktop.Application' DBus interface.
This function will fail if this #ShellApp doesn't have a valid #GDesktopAppInfo
with a valid id.
the #ShellApp
the name of an action to activate
the parameter to the activation
Event timestamp, or 0 for current event timestamp
Start on this workspace, or -1 for default
a #GCancellable or %NULL
A #GAsyncReadyCallback to call when the request is satisfied.
User data to pass to @callback
Finish the asynchronous operation started by shell_app_activate_action()
and obtain its result.
whether the operation was successful
the #ShellApp
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).
a #ShellApp
launch on this workspace, or -1 for default. Ignored if
activating an existing window
Event 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.
a #ShellApp
Window to be focused
Event timestamp
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)
a #ShellApp
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.
A #ShellApp
Order two applications by name.
-1, 0, or 1; suitable for use as a comparison function
for e.g. g_slist_sort()
One app
The other app
Look up the icon for this application, and create a #ClutterActor
for it at the given size.
A floating #ClutterActor
The #GDesktopAppInfo for this app, or %NULL if backed by a window
a #ShellApp
Look up the icon for this application
A #GIcon
An unordered list of process identifiers associated with this application.
a #ShellApp
State of the application
a #ShellApp
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.
List of windows
A window backed application is one which represents just an open
window, i.e. there's no .desktop file association, so we don't know
how to launch it again.
Event timestamp, or 0 for current event timestamp
Start on this workspace, or -1 for default
the GPU to prefer launching on
the #ShellApp
the name of the action to launch (as obtained by
g_desktop_app_info_list_actions())
Event timestamp, or 0 for current event timestamp
Start on this workspace, or -1 for default
Request that the application create a new window.
a #ShellApp
open on this workspace, or -1 for default
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.
%TRUE if a quit request is supported for this application
A #ShellApp
The #GDBusActionGroup associated with this ShellApp, if any. See the
documentation of #GApplication and #GActionGroup for details.
The #GDesktopAppInfo associated with this ShellApp, if any.
Whether the application has marked itself as busy.
The #GIcon representing this ShellApp
The id of this application (a desktop filename, or a special string
like window:0xabcd1234)
The high-level state of the application, effectively whether it's
running or not, or transitioning between those states.
The global #ShellAppSystem singleton
Wrapper around g_desktop_app_info_search() that replaces results that
don't validate as UTF-8 with the empty string.
a
list of strvs. Free each item with g_strfreev() and free the outer
list with g_free().
the search string to use
Returns all installed apps, as a list of #GAppInfo
a list of #GAppInfo
describing all known applications. This memory is owned by the
#ShellAppSystem and should not be freed.
the #ShellAppSystem
Returns the set of applications which currently have at least one
open window. The returned list will be sorted by shell_app_compare().
Active applications
A #ShellAppSystem
Find a #ShellApp corresponding to an id.
The #ShellApp for id, or %NULL if none
Find a valid application whose .desktop file, without the extension
and properly canonicalized, matches @wmclass.
A #ShellApp for @wmclass
a #ShellAppSystem
A WM_CLASS value
Find a valid application corresponding to a given
heuristically determined application identifier
string, or %NULL if none.
A #ShellApp for @name
a #ShellAppSystem
Probable application identifier
Find a valid application whose .desktop file contains a
StartupWMClass entry matching @wmclass.
A #ShellApp for @wmclass
a #ShellAppSystem
A WM_CLASS value
Track application usage/state data
This class maintains some usage and state statistics for
applications by keeping track of the approximate time an application's
windows are focused, as well as the last workspace it was seen on.
This time tracking is implemented by watching for focus notifications,
and computing a time delta between them. Also we watch the
GNOME Session "StatusChanged" signal which by default is emitted after 5
minutes to signify idle.
The global #ShellAppUsage instance
Compare @id_a and @id_b based on frequency of use.
-1 if @id_a ranks higher than @id_b, 1 if @id_b ranks higher
than @id_a, and 0 if both rank equally.
the usage instance to request
ID of first app
ID of second app
List of applications
the usage instance to request
Blur effect for actors
#ShellBlurEffect is a blur implementation based on Clutter. It also has
an optional brightness property.
# Modes
#ShellBlurEffect can work in @SHELL_BLUR_MODE_BACKGROUND and @SHELL_BLUR_MODE_ACTOR
modes. The actor mode blurs the actor itself, and all of its children. The
background mode blurs the pixels beneath the actor, but not the actor itself.
@SHELL_BLUR_MODE_BACKGROUND can be computationally expensive, since the contents
beneath the actor cannot be cached, so beware of the performance implications
of using this blur mode.
The mode of blurring of the effect.
blur the actor contents, and its children
blur what's beneath the actor
Gets the edge of the monitor that the edge drag may start at.
the side that the edge drag may start at
a #ShellEdgeDragGesture
Sets the edge of the monitor that the edge drag may start at.
a #ShellEdgeDragGesture
the side
Edge that the gesture may start at. Defaults to the top edge.
The ::progress signal is emitted when the edge drag has moved
the progress of the gesture in pixels in the selected direction
An offscreen effect using GLSL
A #ShellGLSLEffect is a #ClutterOffscreenEffect that allows
running custom GLSL to the vertex and fragment stages of the
graphic pipeline.
Adds a GLSL snippet to the pipeline used for drawing the effect texture.
See #CoglSnippet for details.
This is only valid inside the a call to the build_pipeline() virtual
function.
a #ShellGLSLEffect
where to insert the code
GLSL declarations
GLSL code
whether Cogl code should be replaced by the custom shader
the location of the uniform named @name, that can be
passed to shell_glsl_effect_set_uniform_float().
a #ShellGLSLEffect
the uniform name
a #ShellGLSLEffect
the uniform location (as returned by shell_glsl_effect_get_uniform_location())
the number of components in the uniform (eg. 3 for a vec3)
the total number of floats in @value
the array of floats to set @uniform
a #ShellGLSLEffect
the uniform location (as returned by shell_glsl_effect_get_uniform_location())
Whether to transpose the matrix
the number of components in the uniform (eg. 3 for a vec3)
the total number of floats in @value
the array of floats to set @uniform
Gets the singleton global object that represents the desktop.
the singleton global object
Marks that we are currently doing work. This is used to to track
whether we are busy for the purposes of shell_global_run_at_leisure().
A count is kept and shell_global_end_work() must be called exactly
as many times as shell_global_begin_work().
the #ShellGlobal
Create a #GAppLaunchContext set up with the correct timestamp, and
targeted to activate on @workspace.
A new #GAppLaunchContext
A #ShellGlobal
the timestamp for the launch (or 0 for current time)
a workspace index, or -1 to indicate no specific one
Marks the end of work that we started with shell_global_begin_work().
If no other work is ongoing and functions have been added with
shell_global_run_at_leisure(), they will be run at the next
opportunity.
the #ShellGlobal
Gets app system.
the app system
Gets app usage.
the app usage
The #MetaBackend
The #MetaCompositor
The #MetaContext
the current X server time from the current Clutter, Gdk, or X
event. If called from outside an event handler, this may return
%Clutter.CURRENT_TIME (aka 0), or it may return a slightly
out-of-date timestamp.
A #ShellGlobal
The default #MetaDisplay
The default #StFocusManager
The shell maintains "persistent" state which will persist after
logout or reboot.
The value of a serialized property, or %NULL if none stored
a #ShellGlobal
Expected data type
Name of the property
Gets the pointer coordinates and current modifier key state.
the #ShellGlobal
the X coordinate of the pointer, in global coordinates
the Y coordinate of the pointer, in global coordinates
the current set of modifier keys that are pressed down
The shell maintains "runtime" state which does not persist across
logout or reboot.
The value of a serialized property, or %NULL if none stored
a #ShellGlobal
Expected data type
Name of the property
Get the global GSettings instance.
The GSettings object
A #ShellGlobal
The default #ClutterStage
Get the global #GDBusProxy instance for the switcheroo-control
daemon.
the #GDBusProxy for the daemon,
or %NULL on error.
A #ShellGlobal
Gets the list of #MetaWindowActor for the plugin's screen
the list of windows
The default #ShellWM
Gets window tracker.
the window tracker
The default #MetaWorkspaceManager
Show a system error notification. Use this function
when a user-initiated action results in a non-fatal problem
from causes that may not be under system control. For
example, an application crash.
a #ShellGlobal
Error message
Error details
Restart the current process. Only intended for development purposes.
A #ShellGlobal
Schedules a function to be called the next time the shell is idle.
Idle means here no animations, no redrawing, and no ongoing background
work. Since there is currently no way to hook into the Clutter master
clock and know when is running, the implementation here is somewhat
approximation. Animations may be detected as terminating early if they
can be drawn fast enough so that the event loop goes idle between frames.
The intent of this function is for performance measurement runs
where a number of actions should be run serially and each action is
timed individually. Using this function for other purposes will
interfere with the ability to use it for performance measurement so
should be avoided.
the #ShellGlobal
function to call at leisure
data to pass to @func
function to call to free @user_data
Change the value of serialized persistent state.
a #ShellGlobal
Name of the property
A #GVariant, or %NULL to unset
Change the value of serialized runtime state.
a #ShellGlobal
Name of the property
A #GVariant, or %NULL to unset
Sets the area of the stage that is responsive to mouse clicks when
we don't have a modal or grab.
the #ShellGlobal
a list of #MtkRectangle
describing the input region.
A colorization effect where lightness is inverted but
color is not.
#ShellInvertLightnessEffect is a sub-class of #ClutterEffect that enhances
the appearance of a clutter actor. Specifically it inverts the lightness
of a #ClutterActor (e.g., darker colors become lighter, white becomes black,
and white, black).
Creates a new #ShellInvertLightnessEffect to be used with
clutter_actor_add_effect()
the newly created
#ShellInvertLightnessEffect or %NULL. Use g_object_unref() when done.
Create new internal prompt base
new internal prompt
Called by implementation when the prompt is cancelled.
the internal prompt
Called by the implementation when the prompt completes. There are various
checks done. %TRUE is returned if the prompt actually should complete.
whether the prompt completed
the internal prompt
Get the prompt password text actor
the password actor
the internal prompt
Get the prompt password text actor
the password actor
the internal prompt
Set the prompt password confirmation text actor
the internal prompt
the confirm password actor
Set the prompt password text actor
the internal prompt
the password actor
Whether the choice check box is visible or not.
Text field for confirmation password
Whether the password confirm entry is visible or not.
Text field for password
Whether the password entry is visible or not.
Whether the warning label is visible or not.
a #ShellMountOperation
a #ShellMountOperation
a #GArray
a #ShellMountOperation
The found plugin or %NULL
Event recorder for performance measurement
ShellPerfLog provides a way for different parts of the code to
record information for subsequent analysis and interactive
exploration. Events exist of a timestamp, an event ID, and
arguments to the event.
Emphasis is placed on storing recorded events in a compact
fashion so log recording disturbs the execution of the program
as little as possible, however events should not be recorded
at too fine a granularity - an event that is recorded once
per frame or once per user action is appropriate, an event that
occurs many times per frame is not.
Arguments are identified by a D-Bus style signature; at the moment
only a limited number of event signatures are supported to
simplify the code.
Gets the global singleton performance log. This is initially disabled
and must be explicitly enabled with shell_perf_log_set_enabled().
the global singleton performance log
Adds a function that will be called before statistics are recorded.
The function would typically compute one or more statistics values
and call a function such as shell_perf_log_update_statistic_i()
to update the value that will be recorded.
a #ShellPerfLog
function to call before recording statistics
data to pass to @callback
function to call when @user_data is no longer needed
Calls all the update functions added with
shell_perf_log_add_statistics_callback() and then records events
for all statistics, followed by a perf.statisticsCollected event.
a #ShellPerfLog
Defines a performance event for later recording.
a #ShellPerfLog
name of the event. This should of the form
'<namespace>.<specific eventf'>, for example
'clutter.stagePaintDone'.
human readable description of the event.
signature defining the arguments that event takes.
This is a string of type characters, using the same characters
as D-Bus or GVariant. Only a very limited number of signatures
are supported: , '', 's', 'i', and 'x'. This mean respectively:
no arguments, one string, one 32-bit integer, and one 64-bit
integer.
Defines a statistic. A statistic is a numeric value that is stored
by the performance log and recorded periodically or when
shell_perf_log_collect_statistics() is called explicitly.
Code that defines a statistic should update it by calling
the update function for the particular data type of the statistic,
such as shell_perf_log_update_statistic_i(). This can be done
at any time, but would normally done inside a function registered
with shell_perf_log_add_statistics_callback(). These functions
are called immediately before statistics are recorded.
name of the statistic and of the corresponding event.
This should follow the same guidelines as for shell_perf_log_define_event()
human readable description of the statistic.
The type of the data stored for statistic. Must
currently be 'i' or 'x'.
Dump the definition of currently defined events and statistics, formatted
as JSON, to the specified output stream. The JSON output is an array,
with each element being a dictionary of the form:
{ name: <name of event>,
description: <description of string,
statistic: true } (only for statistics)
%TRUE if the dump succeeded. %FALSE if an IO error occurred
a #ShellPerfLog
output stream into which to write the event definitions
Writes the performance event log, formatted as JSON, to the specified
output stream. For performance reasons, the output stream passed
in should generally be a buffered (or memory) output stream, since
it will be written to in small pieces. The JSON output is an array
with the elements of the array also being arrays, of the form
'[' <time>, <event name> [, <event_arg>... ] ']'.
%TRUE if the dump succeeded. %FALSE if an IO error occurred
a #ShellPerfLog
output stream into which to write the event log
Records a performance event with no arguments.
a #ShellPerfLog
name of the event
Records a performance event with one 32-bit integer argument.
a #ShellPerfLog
name of the event
the argument
Records a performance event with one string argument.
a #ShellPerfLog
name of the event
the argument
Records a performance event with one 64-bit integer argument.
a #ShellPerfLog
name of the event
the argument
Replays the log by calling the given function for each event
in the log.
a #ShellPerfLog
function to call for each event in the log
data to pass to @replay_function
Sets whether events are currently being recorded.
a #ShellPerfLog
whether to record events
Updates the current value of an 32-bit integer statistic.
a #ShellPerfLog
name of the statistic
new value for the statistic
Updates the current value of an 64-bit integer statistic.
a #ShellPerfLog
name of the statistic
new value for the statistic
Grabs screenshots of areas and/or windows
The #ShellScreenshot object is used to take screenshots of screen
areas or windows and write them out as png files.
Composite a rectangle defined by x, y, width, height from the texture to a
pixbuf and write it as a PNG image into the stream.
the source texture
x coordinate of the rectangle
y coordinate of the rectangle
width of the rectangle, or -1 to use the full texture
height of the rectangle, or -1 to use the full texture
scale of the source texture
the cursor texture
x coordinate to put the cursor texture at, relative to the full
source texture
y coordinate to put the cursor texture at, relative to the full
source texture
scale of the cursor texture
the stream to write the PNG image into
function to call returning success or failure
the data to pass to callback function
Finish the asynchronous operation started by
shell_screenshot_composite_to_stream () and obtain its result.
a GdkPixbuf with the final image if the
operation was successful, or NULL on error.
the #GAsyncResult that was provided to the callback
Picks the pixel at @x, @y and returns its color as #CoglColor.
the #ShellScreenshot
The X coordinate to pick
The Y coordinate to pick
function to call returning success or failure
of the async grabbing
Finish the asynchronous operation started by shell_screenshot_pick_color()
and obtain its result.
whether the operation was successful
the #ShellScreenshot
the #GAsyncResult that was provided to the callback
the picked color
Takes a screenshot of the whole screen
in @stream as png image.
the #ShellScreenshot
Whether to include the cursor or not
The stream for the screenshot
function to call returning success or failure
of the async grabbing
the data to pass to callback function
Takes a screenshot of the passed in area and saves it
in @stream as png image.
the #ShellScreenshot
The X coordinate of the area
The Y coordinate of the area
The width of the area
The height of the area
The stream for the screenshot
function to call returning success or failure
of the async grabbing
the data to pass to callback function
Finish the asynchronous operation started by shell_screenshot_screenshot_area()
and obtain its result.
whether the operation was successful
the #ShellScreenshot
the #GAsyncResult that was provided to the callback
the area that was grabbed in screen coordinates
Finish the asynchronous operation started by shell_screenshot_screenshot()
and obtain its result.
whether the operation was successful
the #ShellScreenshot
the #GAsyncResult that was provided to the callback
the area that was grabbed in screen coordinates
Takes a screenshot of the whole screen as #ClutterContent.
the #ShellScreenshot
function to call returning success or failure
of the async grabbing
the data to pass to callback function
Finish the asynchronous operation started by
shell_screenshot_screenshot_stage_to_content() and obtain its result.
the #ClutterContent, or NULL
the #ShellScreenshot
the #GAsyncResult that was provided to the callback
location to store the content scale
location to store the cursor content
location to store the point at which to
draw the cursor content
location to store the cursor scale
Takes a screenshot of the focused window (optionally omitting the frame)
in @stream as png image.
the #ShellScreenshot
Whether to include the frame or not
Whether to include the cursor or not
The stream for the screenshot
function to call returning success or failure
of the async grabbing
the data to pass to callback function
Finish the asynchronous operation started by shell_screenshot_screenshot_window()
and obtain its result.
whether the operation was successful
the #ShellScreenshot
the #GAsyncResult that was provided to the callback
the area that was grabbed in screen coordinates
Pure "Z-axis" container class
A #ShellStack draws its children on top of each other,
aligned to the top left. It will be sized in width/height
according to the largest such dimension of its children, and
all children will be allocated that size. This differs
from #ClutterGroup which allocates its children their natural
size, even if that would overflow the size allocated to the stack.
Fakes a press and release on @icon. @event must be a
%CLUTTER_BUTTON_RELEASE, %CLUTTER_KEY_PRESS or %CLUTTER_KEY_RELEASE event.
Its relevant details will be passed on to the icon, but its
coordinates will be ignored; the click is
always made on the center of @icon.
a #ShellTrayIcon
the #ClutterEvent triggering the fake click
Creates a new window management interface by hooking into @plugin.
the new window-management interface
the #MetaPlugin
The plugin must call this after the user responded to the confirmation dialog.
the ShellWM
if the new configuration was OK
The plugin must call this when it has completed a window destroy effect.
the ShellWM
the MetaWindowActor actor
The plugin must call this when it has completed a window map effect.
the ShellWM
the MetaWindowActor actor
The plugin must call this when it has completed a window minimize effect.
the ShellWM
the MetaWindowActor actor
The plugin must call this when it has finished switching the
workspace.
the ShellWM
The plugin must call this when it has completed a window unminimize effect.
the ShellWM
the MetaWindowActor actor
Creates a close dialog for the given window.
The close dialog instance.
The window to create the dialog for
Creates an inhibit shortcuts dialog for the given window.
The inhibit shortcuts dialog instance.
The window to create the dialog for
Creates a ClutterActor drawing the texture of @window and adds it
to the container. If @window is already part of the preview, this
function will do nothing.
The newly created actor drawing @window
a #ShellWindowPreviewLayout
the #MetaWindow
Gets an array of all MetaWindows that were added to the layout
using shell_window_preview_layout_add_window(), ordered by the
insertion order.
The list of windows
a #ShellWindowPreviewLayout
Removes a MetaWindow @window from the preview which has been added
previously using shell_window_preview_layout_add_window().
If @window is not part of preview, this function will do nothing.
a #ShellWindowPreviewLayout
the #MetaWindow
Associate windows with applications
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.
The global #ShellWindowTracker instance
Look up the application corresponding to a process.
A #ShellApp, or %NULL if none
A #ShellAppSystem
A Unix process identifier
Currently active startup sequences
Application associated with window
An app monitor instance
A #MetaWindow
Synchronously load the contents of a file as a NUL terminated
string, validating it as UTF-8. Embedded NUL characters count as
invalid content.
File contents
UTF-8 encoded filename path
Creates a #GSource which is dispatched every time the system realtime clock
changes relative to the monotonic clock.
This typically happens after NTP synchronisation.
On error, a #GFileError will be returned. This happens if a timerfd cannot be
created.
Any callback attached to the returned #GSource must have type
#GSourceFunc.
the newly created #GSource, or %NULL on error
Walk over all open file descriptors. Check them for the FD_CLOEXEC flag.
If this flag is not set, log the offending file descriptor number.
It is important that gnome-shell's file descriptors are all marked CLOEXEC,
so that the shell's open file descriptors are not passed to child processes
that we launch.
Workaround for non-introspectability of gdk_pixbuf_from_data().
Attempts to translate the folder @name using translations provided
by .directory files.
a translated string or %NULL
the untranslated folder name
A wrapper around getuid() so that it can be used from JavaScript. This
function will always succeed.
the real user ID of the calling process
Gets the first week day for the current locale, expressed as a
number in the range 0..6, representing week days from Sunday to
Saturday.
A number representing the first week day for the current
locale
If the corresponding X11 display provides the passed extension, return %TRUE,
otherwise %FALSE. If there is no X11 display, %FALSE is passed.
A #MetaDisplay
An X11 extension
A wrapper around g_regex_escape_string() that takes its argument as
\0-terminated string rather than a byte-array that confuses gjs.
@str with all regex-special characters escaped
a UTF-8 string to escape
If @hidden is %TRUE, hide @actor from pick even with a mode of
%CLUTTER_PICK_ALL; if @hidden is %FALSE, unhide @actor.
A #ClutterActor
Whether @actor should be hidden from pick
A wrapper around g_spawn_async() with async-signal-safe implementation of
#GSpawnChildSetupFunc to launch a child program asynchronously resetting the
rlimit nofile on child setup.
the PID of the child on success, 0 if error is set
child's current working
directory, or %NULL to inherit parent's
child's argument vector
child's environment, or %NULL to inherit parent's
flags from #GSpawnFlags
A wrapper around g_spawn_async_with_fds() with async-signal-safe
implementation of #GSpawnChildSetupFunc to launch a child program
asynchronously resetting the rlimit nofile on child setup.
the PID of the child on success, 0 if error is set
child's current working
directory, or %NULL to inherit parent's
child's argument vector
child's environment, or %NULL to inherit parent's
flags from #GSpawnFlags
file descriptor to use for child's stdin, or `-1`
file descriptor to use for child's stdout, or `-1`
file descriptor to use for child's stderr, or `-1`
A wrapper around g_spawn_async_with_pipes() with async-signal-safe
implementation of #GSpawnChildSetupFunc to launch a child program
asynchronously resetting the rlimit nofile on child setup.
the PID of the child on success, 0 if error is set
child's current working
directory, or %NULL to inherit parent's
child's argument vector
child's environment, or %NULL to inherit parent's
flags from #GSpawnFlags
return location for file descriptor to write to child's stdin, or %NULL
return location for file descriptor to read child's stdout, or %NULL
return location for file descriptor to read child's stderr, or %NULL
A wrapper around g_spawn_async_with_pipes_and_fds() with async-signal-safe
implementation of #GSpawnChildSetupFunc to launch a child program
asynchronously resetting the rlimit nofile on child setup.
the PID of the child on success, 0 if error is set
child's current working
directory, or %NULL to inherit parent's, in the GLib file name encoding
child's argument
vector, in the GLib file name encoding; it must be non-empty and %NULL-terminated
child's environment, or %NULL to inherit parent's, in the GLib file
name encoding
flags from #GSpawnFlags
file descriptor to use for child's stdin, or `-1`
file descriptor to use for child's stdout, or `-1`
file descriptor to use for child's stderr, or `-1`
array of FDs from the parent
process to make available in the child process
array of FDs to remap
@source_fds to in the child process
number of FDs in @source_fds and @target_fds
return location for file descriptor to write to child's stdin, or %NULL
return location for file descriptor to read child's stdout, or %NULL
return location for file descriptor to read child's stderr, or %NULL
Translate @str according to the locale defined by LC_TIME; unlike
dcgettext(), the translations is still taken from the LC_MESSAGES
catalogue and not the LC_TIME one.
the translated string
String to translate
Implements libc standard WIFEXITED, that cannot be used JS
code.
TRUE if the process exited normally, FALSE otherwise
the status returned by wait() or waitpid()
the actual exit status of the process
Write a string to a GOutputStream as UTF-8. This is a workaround
for not having binary buffers in GJS.
%TRUE if write succeeded
a #GOutputStream
a UTF-8 string to write to @stream