Tony Crisci
874f009866
move tree includes to their own directory
7 years ago
Drew DeVault
8d6bce02af
Address review feedback
7 years ago
Drew DeVault
68cfa7ef67
Render layer surfaces and respect exclusive zone
7 years ago
Drew DeVault
0c8a64942e
Add initial layer shell skeleton
7 years ago
emersion
01beee5826
Update wlroots API
...
Breaking changes in wlr_xdg_shell_v6 and wlr_renderer have been
made upstream.
7 years ago
Tony Crisci
02804584e5
ipc new window event
7 years ago
Drew DeVault
8ad26c8afd
Send surface enter/leave events
7 years ago
Tony Crisci
ac8269d536
take seat param for handle_command and rename
7 years ago
Tony Crisci
66d1e0b313
basic layout command
7 years ago
Tony Crisci
4b3aa59b8b
rename new_input listener on input-manager
7 years ago
Tony Crisci
316effd7b1
make handle_output_destroy() static
7 years ago
Tony Crisci
66a975038c
add doc to sway_seat_get_focus_inactive()
7 years ago
Tony Crisci
f0ca2cb5c3
use quotes for container include
7 years ago
Tony Crisci
083e11ac7c
fix build for latest api
7 years ago
Tony Crisci
7dfbf06de9
output destroy
7 years ago
Tony Crisci
06c71f115b
input device destroy
7 years ago
Tony Crisci
946d9459c5
get swayc in direction
7 years ago
Tony Crisci
93084c9cf8
remove old focus member
7 years ago
Tony Crisci
145b4fdf58
use bfs iterator to collect focus stack
7 years ago
Tony Crisci
bfd2e85364
refactor workspace.h
7 years ago
Tony Crisci
a7d49da239
separate seat get focus and seat get focus inactive
7 years ago
Tony Crisci
5151502298
basic focus overhaul
7 years ago
Drew DeVault
b28602aa74
Implement workspaces
7 years ago
Drew DeVault
8231f99c12
Remove include/sway/old/
7 years ago
Drew DeVault
a686fb07ae
Execute pending commands when Xwayland is ready
7 years ago
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
7 years ago
emersion
0c58673c6a
Merge pull request #1574 from acrisci/config-refactor
...
Command criteria
7 years ago
Tony Crisci
5505d84ac2
criteria cleanup
7 years ago
Tony Crisci
0e3eae4baa
view interface
7 years ago
Tony Crisci
6a1d71b8b8
basic command criteria
7 years ago
Tony Crisci
c353e01c85
add kill command
7 years ago
Tony Crisci
cc3c713889
seat config handler context
7 years ago
Tony Crisci
9e0595f26b
input config handler context
7 years ago
Tony Crisci
9f54cd8935
copy config references for input and seat
7 years ago
Tony Crisci
83ddd2d9db
render override redirect
7 years ago
Dominique Martinet
c83900593d
config: add 'set' command
7 years ago
Drew DeVault
91313d3847
Merge pull request #1539 from acrisci/bindings
...
Bindings
7 years ago
Tony Crisci
b01a53abfb
Merge branch 'wlroots' into bindings
7 years ago
Tony Crisci
50e791cadb
binding release
7 years ago
emersion
ead3f1e676
Allow to configure outputs by their identifier
7 years ago
emersion
21c61f1c09
Refactor output command, add output enable
7 years ago
Tony Crisci
eea80e7276
keyboard translate keysyms
7 years ago
Tony Crisci
ba69f06695
binding config
7 years ago
Tony Crisci
f2985000f3
ipc get_inputs
7 years ago
Tony Crisci
a949d7de5a
Merge branch 'wlroots' into feature/input
7 years ago
Drew DeVault
eb4f66f785
Merge pull request #1526 from emersion/fractional-output-scale
...
Add support for fractional output scale
7 years ago
emersion
c815d6d1a9
Add support for fractional output scale
7 years ago
emersion
4e2ab53119
Add IPC get_outputs
7 years ago
Tony Crisci
88bcd43ebf
seat fallback config
7 years ago
Tony Crisci
0256cd1473
fix keyboard hotplugging
7 years ago
Tony Crisci
f16aa3c0ad
rename config apply cmds
7 years ago
Tony Crisci
d3d3604760
fix header includes
7 years ago
Tony Crisci
9fa70ce426
Merge branch 'wlroots' into feature/input
7 years ago
Tony Crisci
9eecbb5d8a
xkb config
7 years ago
Tony Crisci
92fef27eaa
basic configuration
7 years ago
emersion
a4619e98c4
Update output containers on output layout change
7 years ago
emersion
d293c42942
Update output container box in event handler
7 years ago
emersion
c7abb77f22
Listen to output layout change
7 years ago
emersion
f3d880b0ec
Add scale and transform events to sway_output
7 years ago
Tony Crisci
c173d30b92
seat configuration
7 years ago
Tony Crisci
163edc5a90
sway input device
7 years ago
Tony Crisci
462a451328
input config
7 years ago
Tony Crisci
9ae906cd37
sway pointer
7 years ago
Tony Crisci
4d449743c5
keyboard remove
7 years ago
Tony Crisci
609f63934a
basic keyboard
7 years ago
Tony Crisci
21626e8153
seat focus on button press
7 years ago
Tony Crisci
0fdecb4d3a
Merge branch 'wlroots' into feature/input
7 years ago
Tony Crisci
e69b052a6d
working pointer motion
7 years ago
Tony Crisci
7c67bea942
sway xcursor manager
7 years ago
Tony Crisci
d76e745b73
input include directory
7 years ago
Tony Crisci
ec7fc42a00
sway cursor
7 years ago
Tony Crisci
f6f63f60d6
basic input manager and seat
7 years ago
Tony Crisci
21ce20885a
rename input to input-manager
7 years ago
emersion
8764dc26c6
Add new_output_config, update root container size on output hotplug
7 years ago
emersion
c25ad5e7c4
Merge branch 'wlroots' into output-config
7 years ago
Tony Crisci
338a0399f8
input skeleton
7 years ago
Tony Crisci
47f268d8fa
view activate
7 years ago
emersion
68ae989cee
Init, merge output config params, use wlr_output_layout
7 years ago
emersion
aaae59026f
Add output config
7 years ago
Drew DeVault
3fe64482bb
Merge pull request #1498 from emersion/config
...
Add minimal config subsystem
7 years ago
emersion
7e81d304a3
Remove wlc includes
7 years ago
Tony Crisci
8bdf3b1b02
view set position
7 years ago
emersion
90f7f1a0e6
Add minimal config subsystem
7 years ago
Tony Crisci
0896b68675
Merge branch 'wlroots' into feature/xwayland
7 years ago
Tony Crisci
1870f116ba
xwayland shell
7 years ago
Tony Crisci
9afcfd44c4
wl-shell: class instead of app_id
7 years ago
Tony Crisci
823f6ee122
Merge branch 'wlroots' into feature/wl-shell
7 years ago
Tony Crisci
8239067da4
basic wl-shell
7 years ago
Tony Crisci
802e7392f8
use "size" instead of "dimensions"
7 years ago
Tony Crisci
59db38ce17
sway wl_shell
7 years ago
Tony Crisci
421f49fe03
basic get_tree
7 years ago
Drew DeVault
8caabe59c2
Handle view destruction properly
7 years ago
Drew DeVault
a57d462926
Fix rendering issues, wire up some xdg listeners
7 years ago
Drew DeVault
ce1936bc65
Arrange windows on desktop
7 years ago
Drew DeVault
7753a0ec75
Wire up IPC server
7 years ago
Drew DeVault
d7d21bb0f8
Add initial command subsystem (untested)
...
Need to spin up the IPC server to test this
7 years ago
Drew DeVault
4ca1e77fdb
Add views to tree and render them
7 years ago
Drew DeVault
aeda2e077f
Add workspace to outputs
7 years ago
Dominique Martinet
b8f8de27b8
wlr_data_device header update
...
wlroots 6a7560 renamed the header file
7 years ago
Drew DeVault
db4fb1c85c
Add outputs to the tree
7 years ago
Drew DeVault
733993a651
Move everything to sway/old/
7 years ago
Drew DeVault
0c8491f7d0
Initial (awful) pass on xdg shell support
7 years ago
Drew DeVault
1efd5f819f
Wire up output frame loop
7 years ago
Drew DeVault
7eafcc75f6
Initialize outputs from backend and add to tree
7 years ago
Drew DeVault
0f45fad18c
Establish sway input submodule
7 years ago
Drew DeVault
c3457de28a
Fix build yml files
7 years ago
Drew DeVault
7c448b4081
Fire up the wlroots backend and run the event loop
7 years ago
Drew DeVault
6d83a59b46
Merge pull request #1263 from nyorain/master
...
Implement get_clipboard ipc message
7 years ago
Scott Anderson
c29e5bbde8
Use WLC v2 pointer interface
8 years ago
nyorain
c0f2acce4e
Rework get_clipboard implementation
8 years ago
nyorain
02c75ebe37
Implement ipc get_clipboard
8 years ago
nyorain
60fa626116
Add the 'clipboard' command to set the clipboard
8 years ago
Drew DeVault
298f56353e
Merge branch 'master' into server-decoration
8 years ago
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
8 years ago
Drew DeVault
a5c07dde6a
Implement KDE's server-side decoration protocol
8 years ago
Drew DeVault
51143a75af
Implement no_focus
...
Ref #2
8 years ago
Jerzi Kaminsky
bfb99235e3
Move get_feature_policy to sway/security.c
8 years ago
Jerzi Kaminsky
cf5e764c7f
Disambiguate get_*_policy() and get_*_policy_mask()
8 years ago
Drew DeVault
5d3a02a7c6
Merge branch 'master' into pretty-print-swaymsg
8 years ago
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.
8 years ago
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
8 years ago
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:五
```
8 years ago
Zandr Martin
18450dd16a
deprecate new_window and new_float commands
8 years ago
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.
8 years ago
Drew DeVault
126ce571da
Read configs from /etc/sway/security.d/*
8 years ago
Drew DeVault
eabfb6c559
Add * policies and fix bug
8 years ago
Drew DeVault
b10721b89e
Add initial support code for new IPC security
8 years ago
Mykyta Holubakha
e714fbcbec
Add window instance support
8 years ago
willakat
4c06a10004
Merge branch 'master' into master
8 years ago
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.
8 years ago
Frantisek Fladung
c04819e8c0
Implement hide_edge_borders smart (like in i3 4.13)
8 years ago
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.
8 years ago
wil
bd415029ba
Moved auto_* layout functions from resize.c to layout.c
8 years ago
wil
704b2db050
Merge branch 'master' of https://github.com/willakat/sway
8 years ago
wil
97f70987d7
[fix] cleanups suggested by Sway community
8 years ago
wil
a62048f15d
changed "layout promote" command to "move first"
...
This is more consistent with other Sway semantics.
8 years ago
Drew DeVault
c01b898398
Fix inline is_auto_layout
8 years ago
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.
8 years ago
wil
0ff9fe9a7a
introduce next/prev as a direction for focus/move commands.
8 years ago
wil
97f7d47413
Added Awesome/Monad type "auto" layouts
8 years ago
Drew DeVault
1172566d4e
Change how security config is loaded
8 years ago
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.
8 years ago
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.
8 years ago
Drew DeVault
d353da248b
Add ipc connection feature policy controls
8 years ago
Drew DeVault
62dad7148f
Enforce IPC security policy
8 years ago
Drew DeVault
c8dc4925d1
Add IPC security policy command handlers
8 years ago
Drew DeVault
e9e1a6a409
Add IPC policy to config
...
Also reduces enum abuse, cc @minus7
8 years ago
Drew DeVault
39cf9a82f7
Enforce command policies
8 years ago
Drew DeVault
f23880b1fd
Add support for command policies in config file
8 years ago
Drew DeVault
76cab04b4d
Implement permit and reject commands
8 years ago