Tony Crisci
66a975038c
add doc to sway_seat_get_focus_inactive()
2018-02-20 19:01:02 -05:00
Tony Crisci
f0ca2cb5c3
use quotes for container include
2018-02-17 19:05:17 -05:00
Tony Crisci
083e11ac7c
fix build for latest api
2018-02-14 15:08:10 -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
145b4fdf58
use bfs iterator to collect focus stack
2018-02-10 16:52:45 -05:00
Tony Crisci
bfd2e85364
refactor workspace.h
2018-02-10 15:15:27 -05:00
Tony Crisci
a7d49da239
separate seat get focus and seat get focus inactive
2018-02-07 18:17:57 -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
8231f99c12
Remove include/sway/old/
2018-01-30 20:51:57 -05:00
Drew DeVault
a686fb07ae
Execute pending commands when Xwayland is ready
2018-01-30 20:01:49 -05: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
emersion
0c58673c6a
Merge pull request #1574 from acrisci/config-refactor
...
Command criteria
2018-01-22 01:16:23 +01:00
Tony Crisci
5505d84ac2
criteria cleanup
2018-01-21 14:11:41 -05:00
Tony Crisci
0e3eae4baa
view interface
2018-01-21 09:09:53 -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
9f54cd8935
copy config references for input and seat
2018-01-17 09:49:02 -05:00
Tony Crisci
83ddd2d9db
render override redirect
2018-01-14 13:19:21 -05:00
Dominique Martinet
c83900593d
config: add 'set' command
2018-01-05 15:36:20 +01:00
Drew DeVault
91313d3847
Merge pull request #1539 from acrisci/bindings
...
Bindings
2018-01-04 09:47:36 -05:00
Tony Crisci
b01a53abfb
Merge branch 'wlroots' into bindings
2018-01-04 08:00:22 -05:00
Tony Crisci
50e791cadb
binding release
2018-01-04 07:25:52 -05: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
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
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
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
88bcd43ebf
seat fallback config
2017-12-17 10:39:22 -05:00
Tony Crisci
0256cd1473
fix keyboard hotplugging
2017-12-16 19:16:00 -05:00
Tony Crisci
f16aa3c0ad
rename config apply cmds
2017-12-16 12:14:24 -05:00
Tony Crisci
d3d3604760
fix header includes
2017-12-16 08:33:22 -05:00
Tony Crisci
9fa70ce426
Merge branch 'wlroots' into feature/input
2017-12-16 07:33:23 -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
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
163edc5a90
sway input device
2017-12-12 08:29:37 -05: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
609f63934a
basic keyboard
2017-12-10 15:01:09 -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
e69b052a6d
working pointer motion
2017-12-10 08:48:44 -05:00
Tony Crisci
7c67bea942
sway xcursor manager
2017-12-09 11:51:28 -05: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
c25ad5e7c4
Merge branch 'wlroots' into output-config
2017-12-06 19:11:46 +01: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
Drew DeVault
3fe64482bb
Merge pull request #1498 from emersion/config
...
Add minimal config subsystem
2017-12-05 12:35:51 -05:00
emersion
7e81d304a3
Remove wlc includes
2017-12-05 18:21:48 +01: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
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
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
Tony Crisci
421f49fe03
basic get_tree
2017-12-03 08:33:52 -05:00
Drew DeVault
8caabe59c2
Handle view destruction properly
2017-11-25 16:30:15 -05:00
Drew DeVault
a57d462926
Fix rendering issues, wire up some xdg listeners
2017-11-25 15:49:10 -05:00
Drew DeVault
ce1936bc65
Arrange windows on desktop
2017-11-25 11:19:25 -05:00
Drew DeVault
7753a0ec75
Wire up IPC server
2017-11-22 21:37:07 -05:00
Drew DeVault
d7d21bb0f8
Add initial command subsystem (untested)
...
Need to spin up the IPC server to test this
2017-11-22 21:20:41 -05:00
Drew DeVault
4ca1e77fdb
Add views to tree and render them
2017-11-22 21:06:08 -05:00
Drew DeVault
aeda2e077f
Add workspace to outputs
2017-11-22 20:39:50 -05:00
Dominique Martinet
b8f8de27b8
wlr_data_device header update
...
wlroots 6a7560 renamed the header file
2017-11-23 00:19:11 +01:00
Drew DeVault
db4fb1c85c
Add outputs to the tree
2017-11-19 17:04:28 -05:00
Drew DeVault
733993a651
Move everything to sway/old/
2017-11-18 11:22:02 -05:00
Drew DeVault
0c8491f7d0
Initial (awful) pass on xdg shell support
2017-11-11 18:06:50 -05:00
Drew DeVault
1efd5f819f
Wire up output frame loop
2017-11-11 14:41:18 -05:00
Drew DeVault
7eafcc75f6
Initialize outputs from backend and add to tree
2017-11-11 11:58:43 -05:00
Drew DeVault
0f45fad18c
Establish sway input submodule
2017-11-11 09:09:17 -05:00
Drew DeVault
c3457de28a
Fix build yml files
2017-11-11 09:09:17 -05:00
Drew DeVault
7c448b4081
Fire up the wlroots backend and run the event loop
2017-11-11 09:08:50 -05:00
Drew DeVault
6d83a59b46
Merge pull request #1263 from nyorain/master
...
Implement get_clipboard ipc message
2017-10-08 11:05:54 -04:00
Scott Anderson
c29e5bbde8
Use WLC v2 pointer interface
2017-07-12 16:39:14 +12:00
nyorain
c0f2acce4e
Rework get_clipboard implementation
2017-07-07 21:51:34 +02:00
nyorain
02c75ebe37
Implement ipc get_clipboard
2017-07-07 15:38:45 +02:00
nyorain
60fa626116
Add the 'clipboard' command to set the clipboard
2017-07-01 18:35:42 +02:00
Drew DeVault
298f56353e
Merge branch 'master' into server-decoration
2017-06-14 18:53:40 -04:00
Calvin Lee
843ad38b3c
Implement Tray Icons
...
This commit implements the StatusNotifierItem protocol, and enables
swaybar to show tray icons. It also uses `xembedsniproxy` in order to
communicate with xembed applications.
The tray is completely optional, and can be disabled on compile time
with the `enable-tray` option. Or on runtime with the bar config option
`tray_output none`.
Overview of changes:
In swaybar very little is changed outside the tray subfolder except
that all events are now polled in `event_loop.c`, this creates no
functional difference.
Six bar configuration options were added, these are detailed in
sway-bar(5)
The tray subfolder is where all protocol implementation takes place and
is organised as follows:
tray/sni_watcher.c:
This file contains the StatusNotifierWatcher. It keeps track of
items and hosts and reports when they come or go.
tray/tray.c
This file contains the StatusNotifierHost. It keeps track of
sway's version of the items and represents the tray itself.
tray/sni.c
This file contains the StatusNotifierItem struct and all
communication with individual items.
tray/icon.c
This file implements the icon theme protocol. It allows for
finding icons by name, rather than by pixmap.
tray/dbus.c
This file allows for asynchronous DBus communication.
See #986 #343
2017-06-07 17:49:16 -07:00
Drew DeVault
a5c07dde6a
Implement KDE's server-side decoration protocol
2017-04-28 20:32:05 -04:00
Drew DeVault
51143a75af
Implement no_focus
...
Ref #2
2017-04-26 15:29:42 -04:00
Jerzi Kaminsky
bfb99235e3
Move get_feature_policy to sway/security.c
2017-04-16 17:09:53 +03:00
Jerzi Kaminsky
cf5e764c7f
Disambiguate get_*_policy() and get_*_policy_mask()
2017-04-16 17:09:53 +03:00
Drew DeVault
5d3a02a7c6
Merge branch 'master' into pretty-print-swaymsg
2017-04-10 07:17:47 -04:00
Calvin Lee
069d37f987
Improve criteria handling
...
This commit changes how commands decide what container to act on.
Commands get the current container though `current_container`, a global
defined in sway/commands.c. If a criteria is given before a command,
then the following command will be run once for every container the
criteria matches with a reference to the matching container in
'current_container'. Commands should use this instead of
`get_focused_container()` from now on.
This commit also fixes a few (minor) mistakes made in implementing marks
such as non-escaped arrows in sway(5) and calling the "mark" command
"floating" by accident. It also cleans up `criteria.c` in a few places.
2017-04-05 22:07:23 -06:00
Calvin Lee
2445d27960
Impliment i3-style marks
...
This commit adds three commands to sway: `show_marks`, `mark` and
`unmark`. Marks are displayed right-aligned in the window border as i3
does. Marks may be found using criteria.
Fixes #1007
2017-04-03 11:48:37 -06:00
Drew DeVault
60ce81e06a
Add pretty printing to swaymsg
...
If stdout is a tty, it will pretty print unless -r (--raw) is given.
Sample outputs:
```
~/s/s/build > ./bin/swaymsg fullscreen toggle
Error: Permission denied for fullscreen toggle via IPC
~/s/s/build > ./bin/swaymsg -t get_workspaces
Workspace 3:三
Output: DVI-I-1
Layout: splith
Workspace 1:一 (off-screen)
Output: HDMI-A-1
Layout: splith
Workspace 5:五 (focused)
Output: HDMI-A-1
Layout: splith
~/s/s/build > ./bin/swaymsg -t get_inputs
Input device Metadot - Das Keyboard Das Keyboard
Type: Keyboard
Sway ID: 9456:320:Metadot_-_Das_Keyboard_Das_Keyb
Input device Wacom Intuos S 2 Pen
Type: Tablet tool
Sway ID: 1386:827:Wacom_Intuos_S_2
Input device Wacom Intuos S 2 Pad
Type: Tablet pad
Sway ID: 1386:827:Wacom_Intuos_S_2
Input device Logitech Gaming Mouse G502
Type: Keyboard, Mouse
Sway ID: 1133:49277:Logitech_Gaming_Mous
~/s/s/build > ./bin/swaymsg -t get_outputs
Output DVI-I-1
Geometry: 1920x1080 @ 3840,0
Scale factor: 1x
Workspace: 3:三
Output DVI-D-1
Geometry: 1920x1080 @ 0,0
Scale factor: 1x
Workspace: 4:四
Output HDMI-A-1
Geometry: 1920x1080 @ 1920,0
Scale factor: 1x
Workspace: 5:五
```
2017-04-03 07:27:25 -04:00
Zandr Martin
18450dd16a
deprecate new_window and new_float commands
2017-03-09 14:56:15 -05:00
Calvin Lee
b35782bcad
i3 feature support: Moving flotaing containers
...
This commit lets the 'move' command apply to floating containers as well
as tiled ones. The command may be appended with a number of pixels and
then optionally the string `px` (like '10 px') in order to move the
container more or fewer than the standard ten pixels.
2017-03-01 11:00:16 -07:00
Drew DeVault
126ce571da
Read configs from /etc/sway/security.d/*
2017-02-20 07:51:31 -05:00
Drew DeVault
eabfb6c559
Add * policies and fix bug
2017-02-20 06:48:33 -05:00
Drew DeVault
b10721b89e
Add initial support code for new IPC security
2017-02-20 06:11:56 -05:00
Mykyta Holubakha
e714fbcbec
Add window instance support
2017-01-19 03:14:59 +02:00
willakat
4c06a10004
Merge branch 'master' into master
2017-01-14 19:40:02 +01:00
Daniel Kessler
eda4bad725
Add output wrapping
...
This fixes issue #733 . Now if the user focuses output right but is at
the rightmost monitor, the focus will wrap the the leftmost monitor.
This commit adds a new function, swayc_opposite_output, which selects
the opposite output given a position and a direction. Now, when calling
output_by_name, we first check if there is an adjacent output to switch
to. If that fails, we call swayc_opposite_output to handle wrapping.
2017-01-13 16:06:10 -08:00
Frantisek Fladung
c04819e8c0
Implement hide_edge_borders smart (like in i3 4.13)
2017-01-12 12:40:28 +01:00
wil
1f47c58d63
simplification of apply_auto_layout
...
Achieved by introducing auto_group_bounds function that produces
the start/end indexes of a group inside an auto layot container.
2017-01-07 20:26:46 +01:00
wil
bd415029ba
Moved auto_* layout functions from resize.c to layout.c
2017-01-07 17:41:15 +01:00
wil
704b2db050
Merge branch 'master' of https://github.com/willakat/sway
2017-01-01 22:02:19 +01:00
wil
97f70987d7
[fix] cleanups suggested by Sway community
2017-01-01 21:52:49 +01:00
wil
a62048f15d
changed "layout promote" command to "move first"
...
This is more consistent with other Sway semantics.
2017-01-01 19:53:53 +01:00
Drew DeVault
c01b898398
Fix inline is_auto_layout
2017-01-01 12:36:47 -05:00
wil
a0aa8d9780
cleanup in auto layouts
...
- added L_AUTO_FIRST/LAST instead of using explicit layouts.
- when switching between auto layout that don't share the same major axis, invert the
width/height of their child views to preserve their relative proportions.
2016-12-29 20:31:30 +01:00
wil
0ff9fe9a7a
introduce next/prev as a direction for focus/move commands.
2016-12-29 20:31:30 +01:00
wil
97f7d47413
Added Awesome/Monad type "auto" layouts
2016-12-29 20:31:30 +01:00
Drew DeVault
1172566d4e
Change how security config is loaded
2016-12-17 15:21:57 -05:00
D.B
35b8d185ac
fix layout switching (was broken because of workspace_layout)
...
For workspace containers, swayc_change_layout also changes ->layout alongside
->workspace_layout when it's a sensible thing to do. There is an additional test
for 'layout toggle' command which ensures that containers will be tiled
horizontally after toggling from tabbed or stacked.
2016-12-04 08:31:34 -05:00
D.B
6fb4b6737a
add workspace_layout to container
...
Add swayc_change_layout function, which changes either layout or
workspace_layout, depending on the container type.
2016-12-04 08:31:34 -05:00
Drew DeVault
d353da248b
Add ipc connection feature policy controls
2016-12-02 18:09:19 -05:00
Drew DeVault
62dad7148f
Enforce IPC security policy
2016-12-02 17:55:03 -05:00
Drew DeVault
c8dc4925d1
Add IPC security policy command handlers
2016-12-02 17:34:26 -05:00
Drew DeVault
e9e1a6a409
Add IPC policy to config
...
Also reduces enum abuse, cc @minus7
2016-12-02 16:08:45 -05:00
Drew DeVault
39cf9a82f7
Enforce command policies
2016-12-02 08:17:45 -05:00
Drew DeVault
f23880b1fd
Add support for command policies in config file
2016-12-02 08:10:03 -05:00
Drew DeVault
76cab04b4d
Implement permit and reject commands
2016-12-01 21:36:43 -05:00
Drew DeVault
2675293200
Implement policy lookups
2016-12-01 19:58:11 -05:00
Drew DeVault
44cc0ef125
Add config related code and initial headers
2016-12-01 19:38:36 -05:00
D.B
58eb7ac19f
change bar colors from char[10] to *char
...
This commit removes has_* booleans from bar color struct. It also
generalizes of functions in commands/bar/colors.c.
2016-11-02 21:07:04 +01:00
D.B
ad4d21d60b
add bar colours for focused_(workspace|statusline|separator)
...
If these aren't defined in config, color settings without 'focused_'
prefix are used as a fallback.
2016-11-02 18:58:33 +01:00
D.B
39ee0ec552
use urgent_ws color in swaybar if binding_mode is undefined
2016-11-02 18:58:33 +01:00
Michał Winiarski
e8d8abfbb5
Add left_handed support for input devices
...
Some users may want to switch buttons on their input devices, turns out
libinput already supports it. Let's add a support for it in our config.
Signed-off-by: Michał Winiarski <knr@hardline.pl>
2016-10-25 22:06:23 +02:00
Drew DeVault
4cba91803e
Revert "Fixes dealing with workspace_layout and related bugs [rfc]"
2016-10-12 21:26:06 -04:00
D.B
571321a1d8
add workspace_layout, ensure ws is always L_HORIZ
...
Add swayc_change_layout function, which changes either layout or
workspace_layout, depending on the container type. Workspace being
always L_HORIZ makes this much more i3-compatible.
2016-10-11 09:16:59 +02:00
D.B
d3f5ac8cbb
add force_focus_wrapping option
2016-10-07 08:12:14 +02:00
Nicolas Cornu
37065cd0c4
add click on title_bar to focus a container
2016-10-06 20:23:46 +02:00
Zandr Martin
7d947fdb95
add unique IDs to containers
2016-09-21 21:05:09 -05:00