aboutsummaryrefslogtreecommitdiff
path: root/sway
AgeCommit message (Collapse)Author
2017-08-14Raise max ipc message size limit to 256 MBHummer12007
2017-08-09One moreDrew DeVault
2017-08-09Clean up fallthrough issuesDrew DeVault
2017-08-08Implement nonblocking IO in IPC serverIlya Lukyanov
Added client write buffer and handler for writable status on client socket.
2017-08-06Prevent race condition in the kill commandCalvin Lee
When killing views with `close_views` a use-after-free can sometimes occur because parent views are killed before their children. This commit makes `container_map` run functions on child containers before their parent, fixing the race. Fixes #1302
2017-07-26Remove test clipboard codeDrew DeVault
2017-07-12Use WLC v2 pointer interfaceScott Anderson
2017-07-11Add secucity config for FreeBSD.Johannes Lundberg
2017-07-10fix use-after-free bugTobias Blass
2017-07-04Make asciidoc (and man pages) optionalDrew DeVault
And remove it from the build
2017-07-01Do not add empty policiesMykyta Holubakha
Policy allocation failure is non-fatal
2017-07-01permit.c: check for NULL pointer dereferenceMykyta Holubakha
2017-07-01Add the 'clipboard' command to set the clipboardnyorain
2017-06-14Merge branch 'master' into server-decorationDrew DeVault
2017-06-14Force focus on unmanaged views during pointer testDrew DeVault
2017-06-14Fix Firefox address bar thingDrew DeVault
And probably some other stuff too
2017-06-07Implement Tray IconsCalvin Lee
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-06FreeBSD fixesjohalun
Increase _POSIX_SOURCE value where needed. Increase _XOPEN_SOURCE value where needed. Conditionally link to libcap (only on Linux). Possibly some trailing whitespace fixes (automatic).
2017-05-11Terminate when both suid bit and filecaps are setMykyta Holubakha
2017-05-11Initialise logging earlierMykyta Holubakha
2017-05-06Add missing send-event mode to sway-input(5)wdbw
Also, fix a small typo.
2017-05-04Add mouse button bindingsJosip Janzic
Adds support for bindings like: bindsym button3 floating toggle bindsym $mod+button3 floating toggle
2017-05-01document font commandZandr Martin
2017-04-29prevent crash when `layout auto` is missing argsZandr Martin
2017-04-29Set child border to background if not specifiedDrew DeVault
2017-04-29Support specifying fewer than 5 colorsDrew DeVault
This doesn't work, I'm not sure why. The color structs definitely get changed but if you specify fewer than 5, it renders with the defaults.
2017-04-28Implement KDE's server-side decoration protocolDrew DeVault
2017-04-26Fix handling of floating windowsDrew DeVault
2017-04-26Update sway(5)Drew DeVault
2017-04-26Implement no_focusDrew DeVault
Ref #2
2017-04-26Add -DVERSION flag for release version numbersSebastian Noack
2017-04-23Fix typo in sway(5)Calvin Lee
2017-04-19explicitly ignore unused return valueTomáš Čech
fixes issue#1182
2017-04-18Merge pull request #1181 from wasamasa/bugfix-initial-scratchpad-sizeDrew DeVault
Use i3's dimensions for initial scratchpad views
2017-04-18Merge pull request #1178 from 4e554c4c/forkDrew DeVault
Prevent sway from duplicating on a failed fork
2017-04-18Use i3's dimensions for initial scratchpad viewsVasilij Schneidermann
See https://github.com/i3/i3/blob/master/src/scratchpad.c#L196-L197
2017-04-18Prevent sway from duplicating on a failed forkCalvin Lee
Also remove a useless `sway_log` and replace it with a pipe
2017-04-18Implement and document `move [to] scratchpad`Vasilij Schneidermann
2017-04-16Handle symlinks as IPC security targetsJerzi Kaminsky
- When policies are allocated, the ipc target path goes through symlink resolution. The result is used as the canonical for matching pids to policies at runtime. In particular, this matches up with the target of the `/proc/<pid>/exe`. - There's a possible race condition if this isn't done correctly, read below. Originally, validate_ipc_target() always tried to resolve its argument for symlinks, and returned a parogram target string if it validates. This created a possible race condition with security implications. The problem is that get_feature_policy() first independently resolved the policy target in order to check whether a policy already exists. If it didn't find any, it called alloc_feature_policy() which called validate_ipc_target() which resolved the policy target again. In the time between the two checks, the symlink could be altered, and a lucky attacker could fool the program into thinking that a policy doesn't exist for a target, and then switch the symlink to point at another file. At the very least this could allow him to create two policies for the same program target, and possibly to bypass security by associating the permissions for one target with another, or force default permissions to apply to a target for which a more specific rule has been configured. So we don't that. Instead, the policy target is resolved once and that result is used for the rest of the lookup/creation process.
2017-04-16Add validate_ipc_target()Jerzi Kaminsky
2017-04-16Move get_feature_policy to sway/security.cJerzi Kaminsky
2017-04-16Rename get_policy to get_feature_policyJerzi Kaminsky
2017-04-16Disambiguate get_*_policy() and get_*_policy_mask()Jerzi Kaminsky
2017-04-14Fix style in sway-bar(5) manpageJerzi Kaminsky
2017-04-14Remain compat with libinput < 1.7.0Jerzi Kaminsky
2017-04-12Implement more thourough nvidia config checkDrew DeVault
2017-04-12Downgrade nvidia proprietary driver warningDrew DeVault
2017-04-10Merge branch 'master' into pretty-print-swaymsgDrew DeVault
2017-04-08Merge pull request #1150 from JerziKaminsky/cmake_find_libcapDrew DeVault
Add libcap check to CMake
2017-04-07Add `-t get_marks` and use more i3-like marksCalvin Lee
In i3 every mark is unique and one mark cannot be used in more than one window, sway behavior has been amended to match this. `swaymsg -t get_marks` will now return an array of all marks used in sway. See #98