Commit graph

47 commits

Author SHA1 Message Date
Manuel Stoeckl
a23cdbbea1 Add 'output render_bit_depth [8|10]' command
This makes it possible to hint to the renderer and backends how many
bits per channel the buffers that the compositor draws windows onto
should have. Renderers and backends may deviate from this if they
do not support the formats with higher bit depth.
2021-11-23 15:51:54 +01:00
David Rosca
57d6f6f19e Add output modeline command
Only works with DRM backend.
2021-08-31 17:29:40 +02:00
Manuel Stoeckl
cb3c727632 Declare all struct cmd_handler arrays const
And make the functions handling these arrays use const types.
2021-02-04 09:49:06 +01:00
Simon Ser
5d692b0581 Add an adaptive_sync output command
This enables/disables adaptive synchronization on the output.

For now, the default is disabled because it might cause flickering on
some hardware if clients don't submit frames at regular enough
intervals. In the future an "auto" option will only enable adaptive sync
if a fullscreen client opts-in via a Wayland protocol.
2020-03-07 00:32:04 +01:00
Brian Ashworth
33a984bbc5 config: fix validation exit code and log level
This makes it so invalid configs will return the exit code 1 when the
validation flag is given. This also reduces the log level to SWAY_ERROR,
which makes it so only the errors are shown. If someone wants more
verbose output, the can use the -V/--verbose or -d/--debug flags.
Additionally, this also makes it so swaybg will not be spawned when
validating the config.
2020-02-11 16:02:11 +01:00
Ronan Pigott
6968fb3123 add scale_filter output config option 2019-11-29 18:13:37 +01:00
Ivan Molodetskikh
022df2542b output: add max_render_time 2019-11-17 20:18:42 +01:00
Brian Ashworth
92b22ee9ea cmd_output: support current output alias
Similar to seat command, this provides an alias for the current output.
Instead of the output name or identifier, `-` can be used to operate on
the focused output by name and `--` can be used to operate on the
focused output by its identifier. This will prevent operating on the
no-op output when using either alias.
2019-07-17 21:25:09 -04:00
Moelf
ed2e553b8d Implement output toggle
discussed in #4136, this can't handle wildcard but won't crash.
2019-05-14 00:11:04 -04:00
Brian Ashworth
75e7bd24cc swaybg: one instance for all outputs
This makes it so there will only be one swaybg instance running
instead of one per output. swaybg's cli has been changed to a xrandr
like interface, where you select an output and then change properties
for that output and then select another output and repeat. This also
makes it so swaybg is only killed and respawned when a background
changes or when reloading.
2019-04-04 20:08:21 +03:00
Geoff Greer
6e3046878d Add support for manually setting subpixel hinting on outputs.
Many laptop screens report unknown subpixel order. Allow users to manually set subpixel hinting to work around this.

Addresses https://github.com/swaywm/sway/issues/3163
2019-03-24 09:37:24 +02:00
Ryan Dwyer
42f8a038c9 Remove assumption that noop output will be called NOOP-1 2019-01-22 09:55:13 +01:00
Ryan Dwyer
7f8ea60e71 Don't allow noop output to be configured 2019-01-22 09:55:13 +01:00
M Stoeckl
1211a81aad Replace wlr_log with sway_log
This commit mostly duplicates the wlr_log functions, although
with a sway_* prefix. (This is very similar to PR #2009.)
However, the logging function no longer needs to be replaceable,
so sway_log_init's second argument is used to set the exit
callback for sway_abort.

wlr_log_init is still invoked in sway/main.c

This commit makes it easier to remove the wlroots dependency for
the helper programs swaymsg, swaybg, swaybar, and swaynag.
2019-01-21 12:59:42 +01:00
M Stoeckl
2a684cad5f Remove now-unused "input" argument of cmd_results_new
Patch tested by compiling with `__attribute__ ((format (printf, 2, 3)))`
applied to `cmd_results_new`.

String usage constants have been converted from pointers to arrays when
encountered. General handler format strings were sometimes modified to
include the old input string, especially for unknown command errors.
2019-01-14 08:05:29 -05:00
Ryan Dwyer
5dbbab7bdc Remove layout.c
When we have type safety we'll need to have functions for
workspace_add_tiling and so on. This means the existing container
functions will be just for containers, so they are being moved to
container.c. At this point layout.c doesn't contain much else, so I've
relocated everything and removed the file.

* container_swap and its static functions have been moved to the swap
command and made static.
* container_recursive_resize has been moved to the resize command and
made static.
* The following have been moved to container.c:
    * container_handle_fullscreen_reparent
    * container_insert_child
    * container_add_sibling
    * container_add_child
    * container_remove_child
    * container_replace_child
    * container_split
* enum movement_direction and sway_dir_to_wlr have been moved to util.c.

Side note: Several commands included layout.h which then included
root.h. With layout.h gone, root.h has to be included by those commands.
2018-08-26 12:05:16 +10:00
Brian Ashworth
bc7d332109 Reset outputs on reload 2018-07-20 22:17:20 -04:00
Brian Ashworth
9605ab45f1 Fix output wildcard handling 2018-07-20 12:32:29 -04:00
emersion
63b4bf5000
Update for swaywm/wlroots#1126 2018-07-09 22:54:30 +01:00
Brian Ashworth
e072fbc6d9 Switch output storing from list_t to wl_list 2018-06-06 20:11:24 -04:00
Brian Ashworth
a1b5b93d29 Store sway_outputs so that they can be reenabled 2018-06-06 20:11:24 -04:00
Brian Ashworth
51fa988be9 Address review comments for output subcommands 2018-06-03 10:29:00 -04:00
Brian Ashworth
5ea4a4d3ee Refactor cmd_output to use config_subcommand 2018-06-03 10:26:06 -04:00
Mattias Eriksson
8fbafbfab5 Idle handling for dpms/lockscreen et al
Swayidle handles idle events and allows
for dpms and lockscreen handling. It also
handles systemd sleep events, and can
raise a lockscreen on sleep

Fixes #541
2018-05-13 00:30:09 +02:00
Tony Crisci
dc8c9fbeb6 Revert "Merge pull request #1653 from swaywm/revert-1647-refactor-tree"
This reverts commit 472e81f35d, reversing
changes made to 6b7841b11f.
2018-03-29 23:41:33 -04:00
Drew DeVault
d0c7f66e95
Revert "Refactor tree" 2018-03-29 23:29:29 -04:00
Tony Crisci
b90099b4b7 rename container functions 2018-03-29 16:40:40 -04:00
Drew DeVault
68cfa7ef67 Render layer surfaces and respect exclusive zone 2018-03-28 16:42:13 -04:00
Dominique Martinet
67985e9031 sway: change all sway_log to wlr_log 2018-01-05 23:39:46 +01:00
emersion
ead3f1e676
Allow to configure outputs by their identifier 2017-12-29 19:04:16 +01:00
emersion
21c61f1c09
Refactor output command, add output enable 2017-12-27 21:23:30 +01:00
emersion
c815d6d1a9
Add support for fractional output scale 2017-12-18 14:13:07 +01:00
emersion
cba592b3d2
Use strtol instead of atoi in output command 2017-12-14 02:23:33 +01:00
emersion
9254c5a93f
Fail if unknown output subcommand 2017-12-14 00:50:01 +01:00
emersion
4d389f8b65
Replace refresh_rate and position by mode in output command 2017-12-14 00:45:47 +01:00
emersion
d293c42942
Update output container box in event handler 2017-12-12 21:09:51 +01:00
emersion
4a14aa9ad9
Remove output from layout 2017-12-09 15:48:52 +01:00
emersion
8764dc26c6
Add new_output_config, update root container size on output hotplug 2017-12-06 19:45:43 +01:00
emersion
68ae989cee
Init, merge output config params, use wlr_output_layout 2017-12-06 12:57:13 +01:00
emersion
aaae59026f
Add output config 2017-12-06 12:36:06 +01:00
Drew DeVault
733993a651 Move everything to sway/old/ 2017-11-18 11:22:02 -05:00
Calvin Lee
419a1087ac Clean up output command
Plugs memory leaks during failure of the output command and in other
circumstances and fixes `bg` option.

Fixes #1381
2017-10-05 20:46:31 -06:00
Drew DeVault
9aed9d9359 UnGNUify the codebase 2017-03-10 23:41:24 -05:00
Drew DeVault
10c8b73075 Handle calloc failures 2016-12-15 19:01:41 -05:00
Drew DeVault
248df18c24 Handle allocation failure in commands 2016-12-15 19:01:40 -05:00
Zandr Martin
65ace5dec5
merge in latest commits 2016-09-02 14:11:48 -05:00
Zandr Martin
b374c35758
refactor commands.c 2016-09-01 21:39:08 -05:00