aboutsummaryrefslogtreecommitdiff
path: root/sway/commands
AgeCommit message (Collapse)Author
2017-12-27Refactor output command, add output enableemersion
2017-12-19error on not enough input/seat args for cmdTony Crisci
2017-12-18Merge branch 'wlroots' into feature/inputTony Crisci
2017-12-18improve xkb command loggingTony Crisci
2017-12-18Add support for fractional output scaleemersion
2017-12-17seat fallback configTony Crisci
2017-12-16set keyboard config at runtimeTony Crisci
2017-12-16expect exactly one xkb argTony Crisci
2017-12-16rename config apply cmdsTony Crisci
2017-12-16Merge branch 'wlroots' into feature/inputTony Crisci
2017-12-15xkb configTony Crisci
2017-12-14basic configurationTony Crisci
2017-12-14Use strtol instead of atoi in output commandemersion
2017-12-14Fail if unknown output subcommandemersion
2017-12-14Replace refresh_rate and position by mode in output commandemersion
2017-12-12Update output container box in event handleremersion
2017-12-12seat configurationTony Crisci
2017-12-12config cleanupTony Crisci
2017-12-11input configTony Crisci
2017-12-09Remove output from layoutemersion
2017-12-06Add new_output_config, update root container size on output hotplugemersion
2017-12-06Merge branch 'wlroots' into output-configemersion
2017-12-06Init, merge output config params, use wlr_output_layoutemersion
2017-12-06Add output configemersion
2017-12-05Add include commandemersion
2017-12-05Add minimal config subsystememersion
2017-12-04Add exec and exec_always commandsemersion
2017-11-22Add initial command subsystem (untested)Drew DeVault
Need to spin up the IPC server to test this
2017-11-18Move everything to sway/old/Drew DeVault
2017-11-11Wire up output frame loopDrew DeVault
2017-10-08Fix #1291Drew DeVault
2017-10-08Merge pull request #1263 from nyorain/masterDrew DeVault
Implement get_clipboard ipc message
2017-10-06Fix move to named workspaceslbonn
The command parsing did not handle workspaces with spaces in their name (like it's done in `cmd_workspace`)
2017-10-05Clean up output commandCalvin Lee
Plugs memory leaks during failure of the output command and in other circumstances and fixes `bg` option. Fixes #1381
2017-10-03Fix issue #1287Jonas Karlsson
All variables without a $ prefix lost their last character due to off by one error
2017-07-12Use WLC v2 pointer interfaceScott Anderson
2017-07-10fix use-after-free bugTobias Blass
2017-07-07Implement ipc get_clipboardnyorain
2017-07-01permit.c: check for NULL pointer dereferenceMykyta Holubakha
2017-07-01Add the 'clipboard' command to set the clipboardnyorain
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-04Add mouse button bindingsJosip Janzic
Adds support for bindings like: bindsym button3 floating toggle bindsym $mod+button3 floating toggle
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-26Implement no_focusDrew DeVault
Ref #2
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-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.