aboutsummaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAge
...
* ipc-server: add display destroy listener and remove ipc_terminateLibravatar Dominique Martinet2018-07-04
| | | | | | | | | | | | | | | | | | | | | | | | | wl_event_source_remove() is illegal after display has been destroyed, so just destroy everything when we still can. ==20392==ERROR: AddressSanitizer: heap-use-after-free on address 0x607000001240 at pc 0x00000048e86e bp 0x7ffe4b557e00 sp 0x7ffe4b557df0 READ of size 8 at 0x607000001240 thread T0 #0 0x48e86d in wl_list_insert ../common/list.c:149 #1 0x7fdf673d4d7d in wl_event_source_remove src/event-loop.c:487 #2 0x41b742 in ipc_terminate ../sway/ipc-server.c:94 #3 0x40b1ad in main ../sway/main.c:440 #4 0x7fdf6664c18a in __libc_start_main ../csu/libc-start.c:308 #5 0x409359 in _start (/opt/wayland/bin/sway+0x409359) 0x607000001240 is located 48 bytes inside of 72-byte region [0x607000001210,0x607000001258) freed by thread T0 here: #0 0x7fdf692c4880 in __interceptor_free (/lib64/libasan.so.5+0xee880) #1 0x7fdf673d371a in wl_display_destroy src/wayland-server.c:1097 previously allocated by thread T0 here: #0 0x7fdf692c4c48 in malloc (/lib64/libasan.so.5+0xeec48) #1 0x7fdf673d4d9e in wl_event_loop_create src/event-loop.c:522 #2 0x40acb2 in main ../sway/main.c:363 #3 0x7fdf6664c18a in __libc_start_main ../csu/libc-start.c:308
* idle_inhibit: move server data to its own structLibravatar Dominique Martinet2018-07-02
|
* idle_inhibit: stop inhibitor when views become invisibleLibravatar Dominique Martinet2018-07-02
|
* Add idle inhibit unstable v1 supportLibravatar Dominique Martinet2018-07-02
|
* sway views: add helpers to get view and layer from wlr_surfaceLibravatar Dominique Martinet2018-06-30
|
* Merge remote-tracking branch 'upstream/master' into atomicLibravatar Ryan Dwyer2018-06-30
|\
| * Revert "Don't unmaximize floating views"Libravatar Rostislav Pehlivanov2018-06-30
| | | | | | | | This reverts commit 97672295ed50d1d6272876c4a3b6b5607cab05c6.
* | Render saved buffers with the surface's dimensionsLibravatar Ryan Dwyer2018-06-29
| |
* | Merge remote-tracking branch 'upstream/master' into atomicLibravatar Ryan Dwyer2018-06-29
|\|
| * Merge branch 'master' into xwayland-wants-floatLibravatar Ryan Dwyer2018-06-27
| |\
| | * layer_shell: order destroying before sway_outputLibravatar Dominique Martinet2018-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | Both sway_output and sway_layer_shell listen to wlr's output destroy event, but sway_layer_shell needs to access into sway_output's data strucure and needs to be destroyed first. Resolve this by making sway_layer_shell listen to a new event that happens at start of sway_output's destroy handler
| * | Automatically float xwayland windowsLibravatar emersion2018-06-18
| | |
* | | Add comment about usage to arrange_windows declarationLibravatar Ryan Dwyer2018-06-29
| | |
* | | Replace list_empty with a simple alternativeLibravatar Ryan Dwyer2018-06-29
| | |
* | | Allow views to skip configuresLibravatar Ryan Dwyer2018-06-27
| | | | | | | | | | | | | | | To do this properly, the transaction queue will only be processed if it can be completely processed.
* | | Fix memleak in container_get_boxLibravatar Ryan Dwyer2018-06-27
| | | | | | | | | | | | | | | | | | | | | Rather than allocate a structure and expect callers to free it, take a pointer to an existing struct as an argument. This function is no longer called anywhere though.
* | | Remove transaction_add_damageLibravatar Ryan Dwyer2018-06-27
| | | | | | | | | | | | Instead, damage each container when applying the transaction.
* | | Remove incorrect assertion and supporting codeLibravatar Ryan Dwyer2018-06-26
| | | | | | | | | | | | | | | Children can exist when destroying a container, such as when destroying the last output. Sway is not terminating in that case.
* | | Rename view's free callback to destroyLibravatar Ryan Dwyer2018-06-26
| | |
* | | Damage output when a fullscreen view unmapsLibravatar Ryan Dwyer2018-06-26
| | | | | | | | | | | | | | | Also moved the arranging into view_unmap to avoid excessive code duplication.
* | | Implement transaction timings debugLibravatar Ryan Dwyer2018-06-25
| | | | | | | | | | | | Launch sway with SWAY_DEBUG=txn_timings to enable it.
* | | Implement atomic layout updates for xwayland viewsLibravatar Ryan Dwyer2018-06-24
| | |
* | | Force transactions to complete in orderLibravatar Ryan Dwyer2018-06-24
| | | | | | | | | | | | | | | This forces transactions to complete in order by using a singly linked list stored in the sway server.
* | | Fix crash when deleting last child in a tabbed or stacked containerLibravatar Ryan Dwyer2018-06-23
| | | | | | | | | | | | | | | There was no `current` child because the container was destroyed. This makes it fall back to looking in the parent's current children list.
* | | Merge remote-tracking branch 'upstream/master' into atomicLibravatar Ryan Dwyer2018-06-23
|\ \ \ | | |/ | |/|
| * | Perform (partial) server initialization before dropping privileges.Libravatar Tobias Blass2018-06-19
| |/ | | | | | | | | | | | | | | Some operations during backend creation (e.g. becoming DRM master) require CAP_SYS_ADMIN privileges. At this point, sway has dropped them already, though. This patch splits the privileged part of server_init into its own function and calls it before dropping its privileges. This fixes the bug with minimal security implications.
* | Implement atomic layout updates for tree operationsLibravatar Ryan Dwyer2018-06-23
| | | | | | | | | | This implements atomic layout updates for when views map, reparent or unmap.
* | Preserve buffers during transactionsLibravatar Ryan Dwyer2018-06-18
| | | | | | | | | | * Also fix parts of the rendering where it was rendering the pending state instead of current.
* | Merge remote-tracking branch 'upstream/master' into atomicLibravatar Ryan Dwyer2018-06-18
|\|
| * Fix keyboard shortcut handling inconsistenciesLibravatar frsfnrrg2018-06-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Ensure that modifier keys are identified even when the next key does not produce a keysym. This requires that modifier change tracking be done for each sway_shortcut_state. * Permit regular and --release shortcuts on the same key combination. Distinct bindings are identified for press and release cases; note that the release binding needs to be identified for both key press and key release events. * Maintain ascending sort order for the shortcut state list, and keep track of the number of pressed key ids, for simpler (and hence faster) searching of the list of key bindings. * Move binding duplicate detection into get_active_binding to avoid duplicating error messages.
| * Sort binding key listsLibravatar frsfnrrg2018-06-12
| | | | | | | | | | | | | | Sort the list comprising the set of keys for the binding in ascending order. (Keyboard shortcuts depend only on the set of simultaneously pressed keys, not their order, so this change should have no external effect.) This simplifies comparisons between bindings.
* | Merge remote-tracking branch 'upstream/master' into atomicLibravatar Ryan Dwyer2018-06-11
|\|
| * Merge pull request #2124 from emersion/drag-icons1.0-alpha.3Libravatar Drew DeVault2018-06-09
| |\ | | | | | | Render drag icons
| | * Render drag iconsLibravatar emersion2018-06-09
| | |
| * | Implement gaps (PR #2047)Libravatar Nate Symer2018-06-09
| |/
* | Refactor everything that needs to arrange windowsLibravatar Ryan Dwyer2018-06-09
| | | | | | | | | | | | | | | | | | | | * The arrange_foo functions are now replaced with arrange_and_commit, or with manually created transactions and arrange_windows x2. * The arrange functions are now only called from the highest level functions rather than from both high level and low level functions. * Due to the previous point, view_set_fullscreen_raw and view_set_fullscreen are both merged into one function again. * Floating and fullscreen are now working with transactions.
* | Make main properties be the pending stateLibravatar Ryan Dwyer2018-06-09
| |
* | WIP: Atomic layout updates ground workLibravatar Ryan Dwyer2018-06-09
|/
* Restore workspaces to outputs based on priorityLibravatar Brian Ashworth2018-06-08
|
* swaylock: implement ^U to clear bufferLibravatar Dominique Martinet2018-06-08
| | | | | | | The whole state->xcb.modifiers thing didn't work at all (always 0) The xkb doc says "[xkb_state_serialize_mods] should not be used in regular clients; please use the xkb_state_mod_*_is_active API instead" so here it is
* Switch output storing from list_t to wl_listLibravatar Brian Ashworth2018-06-06
|
* Store sway_outputs so that they can be reenabledLibravatar Brian Ashworth2018-06-06
|
* Refactor cmd_output to use config_subcommandLibravatar Brian Ashworth2018-06-03
|
* Address emersion's feedback on peek_lineLibravatar Brian Ashworth2018-06-02
|
* Address first round of review for generic blocksLibravatar Brian Ashworth2018-06-02
|
* Support braces on next line for config blocksLibravatar Brian Ashworth2018-06-02
|
* Make command block implementation genericLibravatar Brian Ashworth2018-06-02
|
* Comment to explain sway_shortcut_state listsLibravatar frsfnrrg2018-06-01
|
* Rewrite shortcut handling code to avoid hardcoded valuesLibravatar frsfnrrg2018-06-01
| | | | | | | | | The same shortcut algorithm is now used for keycodes, raw keysyms, and translated keysyms. Pressed keysyms are now stored in association with the keycodes that generated them. Modifier keycodes (and associated keysyms) are identified retroactively by the subsequent change to the modifier flags.
* Fix mpv damage issue when unfullscreening into floatingLibravatar Ryan Dwyer2018-06-01
|