Drew DeVault
1e8faeec02
Pixel-perfect rendering
7 years ago
Drew DeVault
86ba0fc15d
Re-render bar on IPC updates
7 years ago
Drew DeVault
3399ad9840
Round up workspaces on each output
7 years ago
Drew DeVault
e5e8094dc3
Only utilize the configured outputs
7 years ago
Drew DeVault
5c9ad035db
Wire up basic IPC support
7 years ago
Drew DeVault
cab1352801
Start port of swaybar to layer shell
...
This starts up the event loop and wayland display and shims out the
basic top level rendering concepts. Also includes some changes to
incorporate pango into the 1.x codebase properly.
7 years ago
Tony Crisci
4c394a0e9e
address feedback
7 years ago
Tony Crisci
62d1b4cb96
fix container_get_in_direction name
7 years ago
Tony Crisci
eca029f218
more renaming things
7 years ago
Tony Crisci
b90099b4b7
rename container functions
7 years ago
Tony Crisci
83d09cf594
remove swayc_t typedef
7 years ago
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
Drew DeVault
d39bda76c4
Address review comments
7 years ago
Drew DeVault
e9922ec524
Remove obsolete client code
7 years ago
Drew DeVault
632bb948b7
Add solid-color rendering to swaybg
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
6becfc1431
update log.h for latest wlr
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
d4ddfec32e
common/log: finish removing most log functions
...
Keep sway_abort and sway_assert and convert them to use wlr_log
functions
7 years ago
Dominique Martinet
67985e9031
sway: change all sway_log to wlr_log
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
289ba64bde
Remove IPC_GET_PIXELS
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
Adam Mizerski
501c788f5f
Fix init_tray function declaration
...
This fixes compilation failure:
error: call to function 'init_tray' without a real prototype
7 years ago
Drew DeVault
6d83a59b46
Merge pull request #1263 from nyorain/master
...
Implement get_clipboard ipc message
7 years ago
akokshar@redhat.com
65022e1cbf
click_events as documented at https://i3wm.org/docs/i3bar-protocol.html
7 years ago
Calvin Lee
23f11d7c45
Allow swaylock indicator size to be configurable
8 years ago
Calvin Lee
62223e8fbb
Don't trust SNI names, fixes #1274
...
If an item doesn't have a well-formed name, it will not be added to the
tray.
8 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
33fdae2001
Remove Xembed Support
...
Xembed support is premature in sway and should be postponed. This commit
only removes swaybar starting xembedsniproxy, if users would like, they
can still start xembedsniproxy manually, however there will be no
official support.
8 years ago
Calvin Lee
1451ee8fd1
Reorganize Tray Code
...
Remove tray code from bar.c and render.c
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
8ecb490679
Make sway_abort() report location
8 years ago
Jerzi Kaminsky
c9694ee63d
Add resolve_path() to utils
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
Jerzi Kaminsky
709b53bd43
Fix location reported by sway_assert
8 years ago
Jerzi Kaminsky
eb3b1ec5f1
Fix variadic forwarding in sway_assert
...
_sway_assert is a variadic function which tries
to delegate to another variadic function. This
requires a vprintf-style variant of the delegate.
https://stackoverflow.com/a/150616
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