d9de5b8758
This implements the following command to set/unset a user idle inhibitor for a view: `inhibit_idle focus|fullscreen|open|none|visible` The modes are as follows: - focus: inhibited when the view is focused by any seat - fullscreen: inhibited when the view is fullscreen (or a descendant of a fullscreen container) and is visible on any output - open: inhibited until the view is closed or the inhibitor is unset or changed - none: unsets any user set idle inhibitors for the view - visible: inhibited when the view is visible on any output This should have no effect on idle inhibitors set by the applications themselves and those should still work as intended. Since this operates on the view in the handler context, it is possible to set it on the currently focused view, on any existing view with criteria, or for any future view with for_window.
214 lines
5 KiB
Meson
214 lines
5 KiB
Meson
sway_sources = files(
|
|
'commands.c',
|
|
'config.c',
|
|
'criteria.c',
|
|
'decoration.c',
|
|
'ipc-json.c',
|
|
'ipc-server.c',
|
|
'main.c',
|
|
'security.c',
|
|
'server.c',
|
|
'swaynag.c',
|
|
'xdg_decoration.c',
|
|
|
|
'desktop/desktop.c',
|
|
'desktop/idle_inhibit_v1.c',
|
|
'desktop/layer_shell.c',
|
|
'desktop/output.c',
|
|
'desktop/render.c',
|
|
'desktop/transaction.c',
|
|
'desktop/xdg_shell_v6.c',
|
|
'desktop/xdg_shell.c',
|
|
|
|
'input/input-manager.c',
|
|
'input/seat.c',
|
|
'input/seatop_default.c',
|
|
'input/seatop_down.c',
|
|
'input/seatop_move_floating.c',
|
|
'input/seatop_move_tiling.c',
|
|
'input/seatop_resize_floating.c',
|
|
'input/seatop_resize_tiling.c',
|
|
'input/cursor.c',
|
|
'input/keyboard.c',
|
|
'input/switch.c',
|
|
|
|
'config/bar.c',
|
|
'config/output.c',
|
|
'config/seat.c',
|
|
'config/input.c',
|
|
|
|
'commands/assign.c',
|
|
'commands/bar.c',
|
|
'commands/bind.c',
|
|
'commands/border.c',
|
|
'commands/client.c',
|
|
'commands/create_output.c',
|
|
'commands/default_border.c',
|
|
'commands/default_floating_border.c',
|
|
'commands/default_orientation.c',
|
|
'commands/exit.c',
|
|
'commands/exec.c',
|
|
'commands/exec_always.c',
|
|
'commands/floating.c',
|
|
'commands/floating_minmax_size.c',
|
|
'commands/floating_modifier.c',
|
|
'commands/focus.c',
|
|
'commands/focus_follows_mouse.c',
|
|
'commands/focus_on_window_activation.c',
|
|
'commands/focus_wrapping.c',
|
|
'commands/font.c',
|
|
'commands/for_window.c',
|
|
'commands/force_display_urgency_hint.c',
|
|
'commands/force_focus_wrapping.c',
|
|
'commands/fullscreen.c',
|
|
'commands/gaps.c',
|
|
'commands/hide_edge_borders.c',
|
|
'commands/inhibit_idle.c',
|
|
'commands/kill.c',
|
|
'commands/mark.c',
|
|
'commands/opacity.c',
|
|
'commands/include.c',
|
|
'commands/input.c',
|
|
'commands/layout.c',
|
|
'commands/mode.c',
|
|
'commands/mouse_warping.c',
|
|
'commands/move.c',
|
|
'commands/no_focus.c',
|
|
'commands/nop.c',
|
|
'commands/output.c',
|
|
'commands/popup_during_fullscreen.c',
|
|
'commands/reload.c',
|
|
'commands/rename.c',
|
|
'commands/resize.c',
|
|
'commands/scratchpad.c',
|
|
'commands/seat.c',
|
|
'commands/seat/attach.c',
|
|
'commands/seat/cursor.c',
|
|
'commands/seat/fallback.c',
|
|
'commands/seat/hide_cursor.c',
|
|
'commands/seat/pointer_constraint.c',
|
|
'commands/set.c',
|
|
'commands/show_marks.c',
|
|
'commands/smart_borders.c',
|
|
'commands/smart_gaps.c',
|
|
'commands/split.c',
|
|
'commands/sticky.c',
|
|
'commands/swaybg_command.c',
|
|
'commands/swaynag_command.c',
|
|
'commands/swap.c',
|
|
'commands/tiling_drag.c',
|
|
'commands/tiling_drag_threshold.c',
|
|
'commands/title_align.c',
|
|
'commands/title_format.c',
|
|
'commands/titlebar_border_thickness.c',
|
|
'commands/titlebar_padding.c',
|
|
'commands/unmark.c',
|
|
'commands/urgent.c',
|
|
'commands/workspace.c',
|
|
'commands/workspace_layout.c',
|
|
'commands/ws_auto_back_and_forth.c',
|
|
'commands/xwayland.c',
|
|
|
|
'commands/bar/bind.c',
|
|
'commands/bar/binding_mode_indicator.c',
|
|
'commands/bar/colors.c',
|
|
'commands/bar/font.c',
|
|
'commands/bar/gaps.c',
|
|
'commands/bar/height.c',
|
|
'commands/bar/hidden_state.c',
|
|
'commands/bar/icon_theme.c',
|
|
'commands/bar/id.c',
|
|
'commands/bar/mode.c',
|
|
'commands/bar/modifier.c',
|
|
'commands/bar/output.c',
|
|
'commands/bar/pango_markup.c',
|
|
'commands/bar/position.c',
|
|
'commands/bar/separator_symbol.c',
|
|
'commands/bar/status_command.c',
|
|
'commands/bar/status_edge_padding.c',
|
|
'commands/bar/status_padding.c',
|
|
'commands/bar/strip_workspace_numbers.c',
|
|
'commands/bar/strip_workspace_name.c',
|
|
'commands/bar/swaybar_command.c',
|
|
'commands/bar/tray_bind.c',
|
|
'commands/bar/tray_output.c',
|
|
'commands/bar/tray_padding.c',
|
|
'commands/bar/workspace_buttons.c',
|
|
'commands/bar/wrap_scroll.c',
|
|
|
|
'commands/input/accel_profile.c',
|
|
'commands/input/click_method.c',
|
|
'commands/input/drag.c',
|
|
'commands/input/drag_lock.c',
|
|
'commands/input/dwt.c',
|
|
'commands/input/events.c',
|
|
'commands/input/left_handed.c',
|
|
'commands/input/map_from_region.c',
|
|
'commands/input/map_to_output.c',
|
|
'commands/input/middle_emulation.c',
|
|
'commands/input/natural_scroll.c',
|
|
'commands/input/pointer_accel.c',
|
|
'commands/input/repeat_delay.c',
|
|
'commands/input/repeat_rate.c',
|
|
'commands/input/scroll_button.c',
|
|
'commands/input/scroll_factor.c',
|
|
'commands/input/scroll_method.c',
|
|
'commands/input/tap.c',
|
|
'commands/input/tap_button_map.c',
|
|
'commands/input/xkb_capslock.c',
|
|
'commands/input/xkb_layout.c',
|
|
'commands/input/xkb_model.c',
|
|
'commands/input/xkb_numlock.c',
|
|
'commands/input/xkb_options.c',
|
|
'commands/input/xkb_rules.c',
|
|
'commands/input/xkb_variant.c',
|
|
|
|
'commands/output/background.c',
|
|
'commands/output/disable.c',
|
|
'commands/output/dpms.c',
|
|
'commands/output/enable.c',
|
|
'commands/output/mode.c',
|
|
'commands/output/position.c',
|
|
'commands/output/scale.c',
|
|
'commands/output/subpixel.c',
|
|
'commands/output/transform.c',
|
|
|
|
'tree/arrange.c',
|
|
'tree/container.c',
|
|
'tree/node.c',
|
|
'tree/root.c',
|
|
'tree/view.c',
|
|
'tree/workspace.c',
|
|
'tree/output.c',
|
|
)
|
|
|
|
sway_deps = [
|
|
cairo,
|
|
gdk_pixbuf,
|
|
jsonc,
|
|
libevdev,
|
|
libinput,
|
|
math,
|
|
pango,
|
|
pcre,
|
|
pixman,
|
|
server_protos,
|
|
wayland_server,
|
|
wlroots,
|
|
xkbcommon,
|
|
]
|
|
|
|
if have_xwayland
|
|
sway_sources += 'desktop/xwayland.c'
|
|
sway_deps += xcb
|
|
endif
|
|
|
|
executable(
|
|
'sway',
|
|
sway_sources,
|
|
include_directories: [sway_inc],
|
|
dependencies: sway_deps,
|
|
link_with: [lib_sway_common],
|
|
install: true
|
|
)
|