Commit graph

1715 commits

Author SHA1 Message Date
Tony Crisci
e5491bf498 rename container destroy func 2018-03-29 18:17:03 -04:00
Tony Crisci
ed2cedb544 rename layout init 2018-03-29 17:13:37 -04:00
Tony Crisci
eca029f218 more renaming things 2018-03-29 17:06:29 -04:00
Tony Crisci
b90099b4b7 rename container functions 2018-03-29 16:40:40 -04:00
Drew DeVault
941ca5c8fd Maximize xdg shell surfaces on creation
Makes them look better yo

In the future we might want to only do this for tiled windows, and let
floating windows do their own thing.
2018-03-29 15:40:15 -04:00
Tony Crisci
83d09cf594 remove swayc_t typedef 2018-03-29 14:31:10 -04:00
Tony Crisci
874f009866 move tree includes to their own directory 2018-03-29 14:21:42 -04:00
Drew DeVault
8d6bce02af Address review feedback 2018-03-28 18:11:03 -04:00
Drew DeVault
68cfa7ef67 Render layer surfaces and respect exclusive zone 2018-03-28 16:42:13 -04:00
Drew DeVault
0c8a64942e Add initial layer shell skeleton 2018-03-28 15:47:22 -04:00
Drew DeVault
1e604f3e35 Update input events per swaywm/wlroots#765 2018-03-28 12:22:45 -04:00
Drew DeVault
53df5889d5 Fix lingering xdg shell issues 2018-03-27 15:54:34 -04:00
Drew DeVault
cbb2e3308e Update API to match latest wlroots 2018-03-27 13:28:43 -04:00
emersion
01beee5826
Update wlroots API
Breaking changes in wlr_xdg_shell_v6 and wlr_renderer have been
made upstream.
2018-03-19 23:31:18 +01:00
emersion
1004915796
Update rendering code for wlroots matrix redesign 2018-03-15 21:22:34 +01:00
emersion
4ab5506064
ipc: add output modes 2018-03-12 13:48:42 +01:00
Dominique Martinet
95963e4a1f xwayland: do not send surface configure when no width/height
The code in apply_horiz_layout systematically does `set_position`
then `set_size`, so for new windows there is an invalid call.

For old windows there are two calls when only one is needed,
with the current code set_position could not send any surface
configure without impact, but in the future it might be needed?
Native wayland surfaces do not need to know where they are (the
set_position handled only updates the sway internal view variable),
why does X11 window need that?
2018-03-03 16:37:14 +01:00
Tony Crisci
02804584e5 ipc new window event 2018-02-27 19:53:15 -05:00
Drew DeVault
3c80498891 Utilize wlr_xwayland_surface_is_unmanaged 2018-02-27 08:26:18 -05:00
Tony Crisci
ad879c99e0 ipc show focused container 2018-02-26 19:07:59 -05:00
Drew DeVault
4b781356a4 Fix wlr_render_with_matrix call
This takes an alpha parameter now.
2018-02-26 19:04:57 -05:00
Drew DeVault
265378270a Revert "Multiple output coords by scale"
This reverts commit 94f8bdf081.
2018-02-25 17:55:49 -05:00
Drew DeVault
94f8bdf081 Multiple output coords by scale 2018-02-25 17:54:28 -05:00
Drew DeVault
8ad26c8afd Send surface enter/leave events 2018-02-25 17:23:36 -05:00
Drew DeVault
61c1c3e7af Use focus for new windows xwayland/wl_shell 2018-02-25 12:55:19 -05:00
Drew DeVault
669f91b991 Document updates to the output command 2018-02-25 11:35:31 -05:00
Tony Crisci
1cca3965f3 static bfs queue 2018-02-24 14:30:47 -05:00
Tony Crisci
2154b7c7d6 add config handlers 2018-02-24 13:34:47 -05:00
Tony Crisci
7262bf655f remove checks for command handlers 2018-02-24 13:22:57 -05:00
Tony Crisci
5b219a1598 separate config directives and commands 2018-02-24 13:20:34 -05:00
Tony Crisci
ac8269d536 take seat param for handle_command and rename 2018-02-24 12:50:24 -05:00
Tony Crisci
66d1e0b313 basic layout command 2018-02-22 18:37:14 -05:00
Tony Crisci
bcb870bcf2 bug: fix crash on focus up 2018-02-20 19:47:48 -05:00
Tony Crisci
23e9f5dc35 use wl_container_of() in output destroy callback 2018-02-20 19:21:32 -05:00
Tony Crisci
4b3aa59b8b rename new_input listener on input-manager 2018-02-20 19:09:38 -05:00
Tony Crisci
316effd7b1 make handle_output_destroy() static 2018-02-20 19:06:56 -05:00
Tony Crisci
4c4cc9c999 remove old comments 2018-02-20 19:04:03 -05:00
Tony Crisci
b88f06e70a bugfix: get right layout box for rendering views 2018-02-19 17:55:16 -05:00
Tony Crisci
176d24f02d choose adjacent container between outputs 2018-02-17 19:03:21 -05:00
Tony Crisci
fb37e80225 basic move focus in direction across outputs 2018-02-17 18:33:02 -05:00
Tony Crisci
80927985fb fix output rendering issue 2018-02-17 16:30:32 -05:00
Tony Crisci
7c089442c3 use box projection function 2018-02-17 15:18:21 -05:00
Tony Crisci
9510a20fcd arrange windows after output add 2018-02-17 13:32:04 -05:00
Tony Crisci
a3ae67af4e basic focus in direction 2018-02-14 17:12:21 -05:00
Tony Crisci
52670c636c basic focus (without direction) 2018-02-14 16:47:23 -05:00
Tony Crisci
780d9fe1e3 cleanup layout.c 2018-02-14 15:23:56 -05:00
Tony Crisci
083e11ac7c fix build for latest api 2018-02-14 15:08:10 -05:00
Tony Crisci
c6cb87be19 output damage fix 2018-02-14 14:55:38 -05:00
Tony Crisci
7dfbf06de9 output destroy 2018-02-14 14:51:51 -05:00
Tony Crisci
06c71f115b input device destroy 2018-02-14 14:47:59 -05:00
Tony Crisci
946d9459c5 get swayc in direction 2018-02-14 14:30:27 -05:00
Tony Crisci
93084c9cf8 remove old focus member 2018-02-10 19:53:50 -05:00
Tony Crisci
ce3a1b3922 properly pick next focus 2018-02-10 18:19:53 -05:00
Tony Crisci
145b4fdf58 use bfs iterator to collect focus stack 2018-02-10 16:52:45 -05:00
Tony Crisci
095ddb1561 fix build for output damage 2018-02-10 16:13:08 -05:00
Tony Crisci
a7d49da239 separate seat get focus and seat get focus inactive 2018-02-07 18:17:57 -05:00
Tony Crisci
7d8f2c52aa make index_child static 2018-02-06 18:54:10 -05:00
Tony Crisci
5151502298 basic focus overhaul 2018-02-04 14:08:54 -05:00
Drew DeVault
b28602aa74 Implement workspaces 2018-01-30 23:09:21 -05:00
Drew DeVault
a686fb07ae Execute pending commands when Xwayland is ready 2018-01-30 20:01:49 -05:00
Dominique Martinet
6259831d31 commands/reload: remove unimplemented 'load_swaybars' call 2018-01-22 07:26:40 +01:00
Dominique Martinet
5766f426aa config reload: destroy old seat when removed from config
This adds new sway_seat_destroy and sway_cursor_destroy helpers
and compare new and old config on free
2018-01-22 07:26:37 +01:00
Dominique Martinet
869be4378d commands: add 'reload' command 2018-01-22 07:25:23 +01:00
emersion
0c58673c6a
Merge pull request #1574 from acrisci/config-refactor
Command criteria
2018-01-22 01:16:23 +01:00
Tony Crisci
beb3805cf0 dont allow kill command in config 2018-01-21 19:13:11 -05:00
Tony Crisci
38a1628a76 clear handler context before ipc command 2018-01-21 14:21:32 -05:00
Tony Crisci
c3fc0d446f cmd-kill: use sway_assert when no container 2018-01-21 14:15:10 -05:00
Tony Crisci
5505d84ac2 criteria cleanup 2018-01-21 14:11:41 -05:00
Drew DeVault
a6bc46eea9 Remove sway/old/ 2018-01-21 12:21:57 -05:00
Drew DeVault
c933781fac
Merge pull request #1570 from acrisci/config-references
Copy input config references
2018-01-21 11:17:07 -05:00
Tony Crisci
6b03b1205d implement property criteria 2018-01-21 09:17:51 -05:00
Tony Crisci
0e3eae4baa view interface 2018-01-21 09:09:53 -05:00
Tony Crisci
1156523ccf run all commands with focused container context 2018-01-21 08:46:31 -05:00
Tony Crisci
6a1d71b8b8 basic command criteria 2018-01-20 16:21:45 -05:00
Tony Crisci
c353e01c85 add kill command 2018-01-20 14:10:11 -05:00
Tony Crisci
cc3c713889 seat config handler context 2018-01-20 11:44:34 -05:00
Tony Crisci
9e0595f26b input config handler context 2018-01-20 11:34:57 -05:00
Tony Crisci
2bf76509f8 update for new wlr-keyboard modifiers 2018-01-17 11:47:27 -05:00
Tony Crisci
9f54cd8935 copy config references for input and seat 2018-01-17 09:49:02 -05:00
Tony Crisci
ddc49ede46 xwm handle map and unmap 2018-01-15 09:38:05 -05:00
Tony Crisci
83ddd2d9db render override redirect 2018-01-14 13:19:21 -05:00
Tony Crisci
2ce1d8d6cd render wl-shell and xwayland views 2018-01-14 11:47:48 -05:00
Tony Crisci
619254db76 subsurface input 2018-01-14 10:50:20 -05:00
Tony Crisci
76ce629198 xdg-popups 2018-01-14 10:47:19 -05:00
Tony Crisci
4c8c9b29e4 render xdg surface 2018-01-14 10:35:56 -05:00
Dominique Martinet
67985e9031 sway: change all sway_log to wlr_log 2018-01-05 23:39:46 +01:00
Dominique Martinet
c83900593d config: add 'set' command 2018-01-05 15:36:20 +01:00
Dominique Martinet
19ddb70a32 fixup free config use free_sway_binding 2018-01-05 00:07:34 +01:00
Dominique Martinet
9a326be7f8 config: leak sanitizer pass
Add free for everything that's implemented right now.
Will need to add more as the implementations are re-added.
2018-01-05 00:07:34 +01:00
Dominique Martinet
f5b33cb4b6 fix typos in comments/messages; add shutting down message 2018-01-05 00:07:34 +01:00
Dominique Martinet
28b8ea9f1e cmd_input: cleanup around current_input_config
- Restore old one if we weren't part of a block (should be NULL anyway)
- Check current_input_config got properly allocated
- free temporary current_input_config when done using it
2018-01-05 00:07:34 +01:00
Dominique Martinet
afca73b6fc apply_input_config: restore previous current_input_config
This is important for freeing the proper one at end of block
2018-01-05 00:07:34 +01:00
Drew DeVault
91313d3847
Merge pull request #1539 from acrisci/bindings
Bindings
2018-01-04 09:47:36 -05:00
Drew DeVault
bc7011db3c
Merge pull request #1543 from emersion/output-config-by-identifier
Allow to configure outputs by their identifier
2018-01-04 09:47:04 -05:00
Tony Crisci
b01a53abfb Merge branch 'wlroots' into bindings 2018-01-04 08:00:22 -05:00
Tony Crisci
8b4eb5d7d1 cleanup bindings 2018-01-04 07:54:14 -05:00
Tony Crisci
50e791cadb binding release 2018-01-04 07:25:52 -05:00
Calvin Lee
7196f59db0 Consolidate WLR and Sway logging
See #1390
2017-12-31 14:32:28 -07:00
emersion
ead3f1e676
Allow to configure outputs by their identifier 2017-12-29 19:04:16 +01:00
Tony Crisci
bd3ca70e3d fix nitpicks 2017-12-29 09:11:15 -05:00
Tony Crisci
62b7ab3959 overwrite old bindings 2017-12-28 18:50:22 -05:00
Tony Crisci
0b8481f41a fix keyboard_execute_bindcode 2017-12-28 16:52:12 -05:00
Tony Crisci
8d567cd062 bindcode 2017-12-28 16:24:23 -05:00
Tony Crisci
27cd633b40 run compositor bindings last 2017-12-27 19:07:17 -05:00
Tony Crisci
ccaedf5b15 run binding command 2017-12-27 15:25:16 -05:00
emersion
21c61f1c09
Refactor output command, add output enable 2017-12-27 21:23:30 +01:00
Tony Crisci
d941246d58 match user bindsym 2017-12-27 15:17:01 -05:00
Tony Crisci
daad222337 compositor bindings 2017-12-27 13:31:31 -05:00
Tony Crisci
eea80e7276 keyboard translate keysyms 2017-12-27 13:20:28 -05:00
Tony Crisci
ba69f06695 binding config 2017-12-27 12:31:06 -05:00
Drew DeVault
e1c5adc918
Merge pull request #1535 from martinetd/libinput
Libinput config
2017-12-27 08:04:06 -08:00
Tony Crisci
2f7e435c6f desktop: use wlr-surface commit 2017-12-27 10:10:13 -05:00
Dominique Martinet
f3d8df45fc seat_configure_pointer: apply libinput config
Restore the code that used to be in config.c:apply_input_config() pre-wlroots
2017-12-24 20:54:48 +01:00
Tony Crisci
63f7fb9517 cleanup 2017-12-20 06:12:08 -05:00
Tony Crisci
f35575f71d handle keymap not found 2017-12-19 05:36:17 -05:00
Tony Crisci
39e7871a85 dont set cursor image on motion 2017-12-19 05:28:06 -05:00
Tony Crisci
5c036a3eac error on not enough input/seat args for cmd 2017-12-19 05:26:55 -05:00
Tony Crisci
730af5e721 use snprintf to get identifier len 2017-12-19 04:57:42 -05:00
Tony Crisci
9df4a2c7a8 document fallback seat 2017-12-19 04:52:03 -05:00
Tony Crisci
f2985000f3 ipc get_inputs 2017-12-18 14:27:38 -05:00
Tony Crisci
a949d7de5a Merge branch 'wlroots' into feature/input 2017-12-18 11:01:11 -05:00
Tony Crisci
a87960711a Merge branch 'feature/input' of github.com:acrisci/sway into feature/input 2017-12-18 10:45:04 -05:00
Tony Crisci
4c436a1a6f remove assumption of one device per identifier 2017-12-18 10:44:51 -05:00
Tony Crisci
483ede0146 improve xkb command logging 2017-12-18 10:44:25 -05:00
Drew DeVault
eb4f66f785
Merge pull request #1526 from emersion/fractional-output-scale
Add support for fractional output scale
2017-12-18 09:21:30 -05:00
emersion
c815d6d1a9
Add support for fractional output scale 2017-12-18 14:13:07 +01:00
emersion
4e2ab53119
Add IPC get_outputs 2017-12-18 14:06:03 +01:00
Tony Crisci
41e71d950a remove verbose commit logging 2017-12-18 07:13:02 -05:00
Drew DeVault
b0291d126f Fix compile error 2017-12-17 21:00:17 -05:00
Tony Crisci
a27736adcd cleanup input-manager 2017-12-17 10:44:53 -05:00
Tony Crisci
88bcd43ebf seat fallback config 2017-12-17 10:39:22 -05:00
Tony Crisci
e27eff8a29 send keyboard enter on keyboard configuration 2017-12-17 08:30:20 -05:00
Tony Crisci
c41801b75e set keyboard config at runtime 2017-12-16 20:06:58 -05:00
Tony Crisci
0256cd1473 fix keyboard hotplugging 2017-12-16 19:16:00 -05:00
Tony Crisci
9e4fc7253e get device id correctly 2017-12-16 14:03:58 -05:00
Tony Crisci
b0ed1ad28d device add/remove logging 2017-12-16 13:16:58 -05:00
Tony Crisci
24e2406429 strip whitespace for device id 2017-12-16 13:00:31 -05:00
Tony Crisci
b8261ab24b expect exactly one xkb arg 2017-12-16 12:40:58 -05:00
Tony Crisci
f16aa3c0ad rename config apply cmds 2017-12-16 12:14:24 -05:00
Tony Crisci
f4a5a0ead4 put seat and input config in their own files 2017-12-16 11:25:59 -05:00
Tony Crisci
2624f55f8d input and seat command docs 2017-12-16 08:19:33 -05:00
Tony Crisci
b3a0309f26 fix logging issue for new wlroots 2017-12-16 07:39:22 -05:00
Tony Crisci
9fa70ce426 Merge branch 'wlroots' into feature/input 2017-12-16 07:33:23 -05:00
Tony Crisci
030fcb64da keyboard cleanup 2017-12-16 07:21:21 -05:00
Tony Crisci
9eecbb5d8a xkb config 2017-12-15 05:22:51 -05:00
Tony Crisci
92fef27eaa basic configuration 2017-12-14 11:11:56 -05: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
ec2fd6e5c0
Handle output remove 2017-12-13 21:47:37 +01:00
emersion
a4619e98c4
Update output containers on output layout change 2017-12-13 15:52:18 +01:00
emersion
d293c42942
Update output container box in event handler 2017-12-12 21:09:51 +01:00
emersion
c7abb77f22
Listen to output layout change 2017-12-12 20:02:01 +01:00
emersion
f3d880b0ec
Add scale and transform events to sway_output 2017-12-12 19:40:17 +01:00
Tony Crisci
c173d30b92 seat configuration 2017-12-12 10:55:20 -05:00
Tony Crisci
538903bc5a config cleanup 2017-12-12 09:03:58 -05:00
Tony Crisci
163edc5a90 sway input device 2017-12-12 08:29:37 -05:00
emersion
475a0132a9
Use custom modes when output has no mode 2017-12-11 21:47:40 +01:00
Tony Crisci
462a451328 input config 2017-12-11 07:55:01 -05:00
Tony Crisci
9ae906cd37 sway pointer 2017-12-10 16:57:38 -05:00
Tony Crisci
4d449743c5 keyboard remove 2017-12-10 15:37:17 -05:00
Tony Crisci
5e9ee32d63 set focus on new window 2017-12-10 15:13:27 -05:00
Tony Crisci
609f63934a basic keyboard 2017-12-10 15:01:09 -05:00
Tony Crisci
6339c4f161 remove pointer device 2017-12-10 13:28:04 -05:00
Tony Crisci
21626e8153 seat focus on button press 2017-12-10 11:11:47 -05:00
Tony Crisci
0fdecb4d3a Merge branch 'wlroots' into feature/input 2017-12-10 10:25:56 -05:00
Tony Crisci
5f644d78fc button and axis events 2017-12-10 10:08:16 -05:00
Tony Crisci
e69b052a6d working pointer motion 2017-12-10 08:48:44 -05:00
Tony Crisci
9333a7eb53 working xcursor 2017-12-09 14:06:00 -05:00
Tony Crisci
7c67bea942 sway xcursor manager 2017-12-09 11:51:28 -05:00
emersion
4a14aa9ad9
Remove output from layout 2017-12-09 15:48:52 +01:00
Tony Crisci
d76e745b73 input include directory 2017-12-08 08:07:47 -05:00
Tony Crisci
ec7fc42a00 sway cursor 2017-12-08 08:04:03 -05:00
Tony Crisci
f6f63f60d6 basic input manager and seat 2017-12-07 09:58:32 -05:00
Tony Crisci
21ce20885a rename input to input-manager 2017-12-07 07:35:10 -05:00
emersion
8764dc26c6
Add new_output_config, update root container size on output hotplug 2017-12-06 19:45:43 +01:00
emersion
41dd291612
Use wlr_output_layout_get_box 2017-12-06 19:23:43 +01:00
emersion
7c5d8c553c
Simplify free calls, use wlr_output_set_scale 2017-12-06 19:16:12 +01:00
emersion
c25ad5e7c4
Merge branch 'wlroots' into output-config 2017-12-06 19:11:46 +01:00
Drew DeVault
ab36a5a4d7
Merge pull request #1501 from emersion/command-include
Add include command
2017-12-06 12:10:24 -05:00
Tony Crisci
338a0399f8 input skeleton 2017-12-06 08:28:46 -05:00
Tony Crisci
47f268d8fa view activate 2017-12-06 07:34:33 -05: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
emersion
9aeda82477
Add include command 2017-12-05 18:47:57 +01:00
Drew DeVault
3fe64482bb
Merge pull request #1498 from emersion/config
Add minimal config subsystem
2017-12-05 12:35:51 -05:00
Tony Crisci
8bdf3b1b02 view set position 2017-12-05 11:02:31 -05:00
emersion
90f7f1a0e6
Add minimal config subsystem 2017-12-05 10:40:55 +01:00
emersion
514c819ff9
Add exec and exec_always commands 2017-12-04 22:43:49 +01:00
Tony Crisci
0896b68675 Merge branch 'wlroots' into feature/xwayland 2017-12-04 07:32:25 -05:00
Tony Crisci
1870f116ba xwayland shell 2017-12-04 07:28:47 -05:00
Tony Crisci
9afcfd44c4 wl-shell: class instead of app_id 2017-12-03 17:00:17 -05:00
Tony Crisci
6a694853e5 wl-shell: dimensions to size 2017-12-03 14:23:23 -05:00
Tony Crisci
823f6ee122 Merge branch 'wlroots' into feature/wl-shell 2017-12-03 14:22:06 -05:00
Tony Crisci
8239067da4 basic wl-shell 2017-12-03 14:21:26 -05:00
Tony Crisci
802e7392f8 use "size" instead of "dimensions" 2017-12-03 11:01:44 -05:00
Tony Crisci
59db38ce17 sway wl_shell 2017-12-03 10:49:13 -05:00
Drew DeVault
b6f4120afc
Merge pull request #1489 from acrisci/feature/basic-get-tree
basic get_tree
2017-12-03 08:55:39 -05:00
Tony Crisci
9220225f1d remove unused timespec_to_msec 2017-12-03 08:42:47 -05:00
Tony Crisci
421f49fe03 basic get_tree 2017-12-03 08:33:52 -05:00