aboutsummaryrefslogtreecommitdiff
path: root/sway/desktop/wl_shell.c
AgeCommit message (Collapse)Author
2018-05-11Overhaul criteria implementationRyan Dwyer
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-10Damage borders when damaging viewemersion
2018-04-30Implement bordersRyan Dwyer
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-18Fullscreen fixes.Ryan Dwyer
2018-04-17Handle fullscreen flag when mapping a surface.Ryan Dwyer
2018-04-06Simplify damage tracking functions, use them in layer shellemersion
2018-04-05Fix xwayland unmanaged surfacesemersion
2018-04-05Implement shell viewsemersion
2018-04-04Remove unused SWAY_VIEW_TYPESemersion
2018-04-02Address review commentsemersion
2018-03-31Add sway_view_implemersion
2018-03-31Introduce common functions to create, map, unmap, destroy viewsemersion
2018-03-30Add lite damage trackingemersion
This skips the renderer if nothing has changed, and renders everything otherwise.
2018-03-29Revert "Merge pull request #1653 from swaywm/revert-1647-refactor-tree"Tony Crisci
This reverts commit 472e81f35d689d67cda241acafda91c688d61046, reversing changes made to 6b7841b11ff4cd35f54d69dc92029855893e5ce0.
2018-03-29Revert "Refactor tree"Drew DeVault
2018-03-29arrange windowsTony Crisci
2018-03-29more renaming thingsTony Crisci
2018-03-29rename container functionsTony Crisci
2018-03-29move tree includes to their own directoryTony Crisci
2018-02-25Use focus for new windows xwayland/wl_shellDrew DeVault
2018-01-20add kill commandTony Crisci
2018-01-14render wl-shell and xwayland viewsTony Crisci
2018-01-05sway: change all sway_log to wlr_logDominique Martinet
2017-12-27desktop: use wlr-surface commitTony Crisci
2017-12-18remove verbose commit loggingTony Crisci
2017-12-12sway input deviceTony Crisci
2017-12-10set focus on new windowTony Crisci
2017-12-06view activateTony Crisci
2017-12-05view set positionTony Crisci
2017-12-03wl-shell: class instead of app_idTony Crisci
2017-12-03wl-shell: dimensions to sizeTony Crisci
2017-12-03basic wl-shellTony Crisci
2017-12-03sway wl_shellTony Crisci