aboutsummaryrefslogtreecommitdiff
path: root/include/sway
AgeCommit message (Collapse)Author
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-04-26Implement no_focusDrew DeVault
Ref #2
2017-04-16Move get_feature_policy to sway/security.cJerzi Kaminsky
2017-04-16Disambiguate get_*_policy() and get_*_policy_mask()Jerzi Kaminsky
2017-04-10Merge branch 'master' into pretty-print-swaymsgDrew DeVault
2017-04-05Improve criteria handlingCalvin Lee
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-03Impliment i3-style marksCalvin Lee
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-03Add pretty printing to swaymsgDrew DeVault
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-03-09deprecate new_window and new_float commandsZandr Martin
2017-03-01i3 feature support: Moving flotaing containersCalvin Lee
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-02-20Read configs from /etc/sway/security.d/*Drew DeVault
2017-02-20Add * policies and fix bugDrew DeVault
2017-02-20Add initial support code for new IPC securityDrew DeVault
2017-01-19Add window instance supportMykyta Holubakha
2017-01-14Merge branch 'master' into masterwillakat
2017-01-13Add output wrappingDaniel Kessler
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-12Implement hide_edge_borders smart (like in i3 4.13)Frantisek Fladung
2017-01-07simplification of apply_auto_layoutwil
Achieved by introducing auto_group_bounds function that produces the start/end indexes of a group inside an auto layot container.
2017-01-07Moved auto_* layout functions from resize.c to layout.cwil
2017-01-01Merge branch 'master' of https://github.com/willakat/swaywil
2017-01-01[fix] cleanups suggested by Sway communitywil
2017-01-01changed "layout promote" command to "move first"wil
This is more consistent with other Sway semantics.
2017-01-01Fix inline is_auto_layoutDrew DeVault
2016-12-29cleanup in auto layoutswil
- 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-29introduce next/prev as a direction for focus/move commands.wil
2016-12-29Added Awesome/Monad type "auto" layoutswil
2016-12-17Change how security config is loadedDrew DeVault
2016-12-04fix layout switching (was broken because of workspace_layout)D.B
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-04add workspace_layout to containerD.B
Add swayc_change_layout function, which changes either layout or workspace_layout, depending on the container type.
2016-12-02Add ipc connection feature policy controlsDrew DeVault
2016-12-02Enforce IPC security policyDrew DeVault
2016-12-02Add IPC security policy command handlersDrew DeVault
2016-12-02Add IPC policy to configDrew DeVault
Also reduces enum abuse, cc @minus7
2016-12-02Enforce command policiesDrew DeVault
2016-12-02Add support for command policies in config fileDrew DeVault
2016-12-01Implement permit and reject commandsDrew DeVault
2016-12-01Implement policy lookupsDrew DeVault
2016-12-01Add config related code and initial headersDrew DeVault
2016-11-02change bar colors from char[10] to *charD.B
This commit removes has_* booleans from bar color struct. It also generalizes of functions in commands/bar/colors.c.
2016-11-02add bar colours for focused_(workspace|statusline|separator)D.B
If these aren't defined in config, color settings without 'focused_' prefix are used as a fallback.
2016-11-02use urgent_ws color in swaybar if binding_mode is undefinedD.B
2016-10-25Add left_handed support for input devicesMichał Winiarski
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-12Revert "Fixes dealing with workspace_layout and related bugs [rfc]"Drew DeVault
2016-10-11add workspace_layout, ensure ws is always L_HORIZD.B
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-07add force_focus_wrapping optionD.B
2016-10-06add click on title_bar to focus a containerNicolas Cornu
2016-09-21add unique IDs to containersZandr Martin
2016-09-17add global `current_focus` pointerZandr Martin
2016-09-07squash commits, move enum into resize.cZandr Martin
2016-09-02Merge branch 'master' of git://github.com/SirCmpwn/sway into commands-refactorZandr Martin