aboutsummaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)AuthorLines
2018-05-11Implement IPC get_seats commandFurkan Sahin-1/+5
2018-05-11Implement __focused__ criteriaFurkan Sahin-0/+2
2018-05-09Overhaul criteria implementationFurkan Sahin-28/+66
The criteria struct now uses properties for each token type rather than the list_t list of tokens. The reason for this is that different token types have different data types: pcre, string and number to name a few. This solution should be more flexible moving forward. A bonus of this is that criteria is now easier to understand when looking at the struct definition. The criteria parser has been rewritten because the previous one didn't support valueless pairs (eg. [class="foo" floating]). Criteria now has types. Types at the moment are CT_COMMAND, CT_ASSIGN_WORKSPACE and CT_ASSIGN_OUTPUT. i3 uses types as well. Previously the assign command was creating a criteria with 'move to workspace <name>' as its command, but this caused the window to appear briefly on the focused workspace before being moved to the assigned workspace. It now creates the view directly in the assigned workspace. Each view will only execute a given criteria once. This is achieved by storing a list of executed criteria in the view. This is the same strategy used by i3. Escaping now works properly. Previously you could do things like [class="Fire\"fox"] and the stored value would be 'Fire\"fox', but it should be (and now is) 'Fire"fox'. The public functions in criteria.c are now all prefixed with criteria_. Xwayland views now listen to the set_title, set_class and set_window_type events and criteria will be run when these happen. XDG shell has none of these events so it continues to update the title in handle_commit. Each view type's get_prop function has been split into get_string_prop and get_int_prop because some properties like the X11 window ID and window type are numeric. The following new criteria tokens are now supported: * id (X11 window ID) * instance * tiling * workspace
2018-05-05Damage borders when damaging viewFurkan Sahin-3/+3
2018-05-05Implement pango supportFurkan Sahin-0/+1
Implements support for the pango: prefix in the font command. Closes #1903.
2018-05-05Move code for re-arranging after font height change into a common placeFurkan Sahin-1/+4
2018-05-05Implement title_formatFurkan Sahin-3/+14
This implements the title_format command, with a new placeholder %shell which gets substituted with the view type (xwayland, xdg_shell_v6 or wl_shell). Example config: for_window [title=".*"] title_format %title (class=%class instance=%instance shell=%shell)
2018-05-03Convert border_colors.text to float[4]Furkan Sahin-1/+1
2018-05-03Change comment formatFurkan Sahin-1/+1
2018-05-03Calculate config->font_height based on existing container titlesFurkan Sahin-2/+16
2018-05-02Render titlesFurkan Sahin-1/+10
2018-05-01Restore view_update_position()Furkan Sahin-0/+2
2018-05-01Move docblock and fix indenting of switch/case.Furkan Sahin-0/+4
2018-04-30Implement bordersFurkan Sahin-9/+16
Implements rendering of borders. Title text is still to do. Implements the following configuration directives: * client.focused * client.focused_inactive * client.unfocused * client.urgent * border * default_border
2018-04-30Remove arrange_windows()Furkan Sahin-2/+0
After the refactor, this function is no longer called.
2018-04-28Refactor arrange_windows()Furkan Sahin-3/+23
Replaces arrange_windows() with arrange_root(), arrange_output(), arrange_workspace() and arrange_children_of(). Also makes fullscreen views save and restore their dimensions, which allows it to preserve any custom resize and is also a requirement for floating views once they are implemented.
2018-04-24Add map_from_region commandFurkan Sahin-1/+9
2018-04-26Remove sway_container.workspace_layoutFurkan Sahin-4/+0
Fixes #1716.
2018-04-25Merge branch 'master' into criteria-commandsFurkan Sahin-1/+7
2018-04-24Fix a bunch of swaybar memory leaksFurkan Sahin-1/+4
2018-04-24Update wording about unmanaged/unmapped viewsFurkan Sahin-1/+1
2018-04-23Implement rename workspace commandFurkan Sahin-0/+1
This implements the following commands: * rename workspace to new_name * rename workspace old_name to new_name * rename workspace number n to new_name
2018-04-21Default to current time when triggering cursor eventsFurkan Sahin-1/+1
2018-04-20Improved key handling in swaylockFurkan Sahin-0/+3
Make escape clear buffer Add indicator states for ctrl,shift,super et al Add CapsLock indicator
2018-04-19Merge branch 'master' into fullscreenFurkan Sahin-0/+4
2018-04-18Make key repeat configurableFurkan Sahin-0/+4
This creates two input commands for configuring the repeat delay and rate. Example config: input "myidentifier" { repeat_delay 250 repeat_rate 25 }
2018-04-18Fullscreen fixes.Furkan Sahin-0/+1
2018-04-17Create sway_workspace struct.Furkan Sahin-3/+9
2018-04-17Feedback for fullscreen.Furkan Sahin-2/+0
2018-04-16Implement fullscreen.Furkan Sahin-0/+14
2018-04-12swaylock: Securely zero-out password.Furkan Sahin-2/+1
- Replace char* with static array. Any chars > 1024 will be discarded. - mlock() password buffer so it can't be written to swap. - Clear password buffer after auth succeeds or fails. This is basically the same treatment I gave the 0.15 branch in https://github.com/swaywm/sway/pull/1519
2018-04-10Clean up cursor simulation code.Furkan Sahin-1/+2
2018-04-10Implement cursor event simulation with sway commands.Furkan Sahin-1/+3
2018-04-08Merge pull request #1769 from acrisci/focus-inactive-fixesFurkan Sahin-2/+14
Focus inactive fixes
2018-04-0880charFurkan Sahin-1/+2
2018-04-08Add input "identifier" map_to_output "identifier"Furkan Sahin-1/+4
2018-04-08Merge branch 'wlroots' into focus-inactive-fixesFurkan Sahin-1/+3
2018-04-08Fix cursor motion issuesFurkan Sahin-1/+1
Use only one canonical cursor x/y position and send cursor enter when mouse is warped. Tangentally related to #1714
2018-04-08Implement tablet tool supportFurkan Sahin-1/+3
2018-04-07seat focus inactive children foreachFurkan Sahin-0/+7
2018-04-07seat get focus inactive viewFurkan Sahin-2/+6
2018-04-07Give keyboard focus to unmanaged xwayland surfacesFurkan Sahin-0/+3
This fixes dmenu
2018-04-07Merge pull request #1756 from emersion/output-damageFurkan Sahin-12/+7
Fine-grained damage tracking
2018-04-07Merge pull request #1700 from swaywm/move-cmd-fullFurkan Sahin-1/+17
Implement move [left|right|up|down]
2018-04-06Revert "Break everything^W^WUse wlr_box for sway_container"Furkan Sahin-5/+8
2018-04-06Break everything^W^WUse wlr_box for sway_containerFurkan Sahin-8/+5
2018-04-06Add debug tree viewFurkan Sahin-1/+10
2018-04-06Simplify damage tracking functions, use them in layer shellFurkan Sahin-12/+7
2018-04-06Send surface enter/leave events to view childrenFurkan Sahin-0/+5
2018-04-05Fix wl_output enter/leave eventsFurkan Sahin-0/+1
Fixes #1739