summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* xwayland.c handle_map(): NULL out xsurface->data() to prevent crashing.Libravatar A. M. Joseph2019-10-17
| | | | | | | | | | When changing a surface from managed to unmanaged in handle_map(), the call to handle_destroy(.., view) causes the sway_xwayland_view pointed to by the untyped wlr_xwayland_surface.data field to become invalid garbage, yet the untyped wlr_xwayland_surface.data continues to point at it. In particular: view_get_*(view_from_wlr_surface(..)), even with appropriate NULL checking, will crash sway when this codepath is exercised (reliable test case: drop-down menus in Google Earth).
* Updates per wlroots layer shell changesLibravatar Drew DeVault2019-10-16
|
* Grimshot: a helper for screenshots within swayLibravatar Lauri2019-10-16
| | | | | | | | | | | | | | | | | | | | | | | | Usage: grimshot copy|save win|screen|area [FILE] Troubleshoot: grimshot check Requirements: - `grim`: screenshot utility for wayland - `slurp`: to select an area - `swaymsg`: to read properties of current window - `wl-copy`: clipboard utility - `jq`: json uliity to parse swaymsg output - `notify-send`: to show notifications Those are needed to be installed, if unsure, run `grimshot check` Examples: `grimshot copy win` - to copy current window `grimshot save area` - to select area and save it to default file (Pictures/Grimshot-$datetime.png) `grimshot save screen ~/screenshot.png` - to save screenshot under ~/screenshot.png `grimshot` - usage `grimshot check` - verify if tools are installed
* build: always use the project versionLibravatar Simon Ser2019-10-16
| | | | | | | | Don't use the latest tag, always use the project version for the version string. Because of version branches, getting the version from Git can be unreliable. Closes: https://github.com/swaywm/sway/issues/4631
* sway(5): move workspace_layout to config onlyLibravatar Rouven Czerwinski2019-10-16
| | | | | According to the source files, workspace_layout is a configuration only command, move it to the correct section within the man page.
* Update version to 1.2Libravatar Drew DeVault2019-10-12
|
* Update .github/FUNDING.ymlLibravatar Drew DeVault2019-10-11
|
* sway(5): Highlight valid values in the description of tiling_dragLibravatar Wieland Hoffmann2019-10-09
|
* sway(5): Add a missing verbLibravatar Wieland Hoffmann2019-10-09
|
* build: bump wlroots version to 0.8.1Libravatar Simon Ser2019-10-08
|
* build: remove rootston from wlroots subprojectLibravatar Tadeo Kondrak2019-10-02
| | | | Fixes an invalid option warning from Meson.
* Fix syntax in examples in sway-output(5)Libravatar Arkadiusz Hiler2019-10-02
| | | | | | | | Some examples use comma to separate x and y for setting the output position which is wrong. Let's change it to spaces, as correctly demonstrated in the `output <name> position|pos <X> <Y>` section.
* layer-shell: Fix damage tracking of nested popupsLibravatar Sebastian Krzyszkowiak2019-09-29
| | | | | | Popups are positioned relative to local surface coordinates of the parent surface. There's no need to consider values set with xdg_surface.set_window_geometry for parent surfaces.
* Fix direct scan-out flickeringLibravatar Simon Ser2019-09-26
| | | | | | | | | | | | | | | | | | | Sometimes when using direct scan-out, some flickering between the fullscreen app and the regular desktop could be seen. This happened because we called wlr_output_attach_render and then wlr_output_attach_buffer for direct scan-out. wlr_output_attach_render makes the OpenGL context current but also attaches the OpenGL buffer to the primary plane apparently (all of this happens inside eglMakeCurrent). This patch moves the scan-out logic outside of output_render, before wlr_output_attach_render. This lines it up with rootston's implementation. This also makes more sense since no rendering is involved when using direct scan-out. Sorry about that, I should've tested this with more clients. The new code has been tested with mpv and a GLFW demo.
* input: Add support for tablet protocol.Libravatar John Chadwick2019-09-25
| | | | | | Sway has basic support for drawing tablets, but does not expose properties such as pressure sensitivity. This implements the wlr tablet v2 protocol, providing tablet events to Wayland clients.
* Add support for fullscreen view direct scan-outLibravatar Simon Ser2019-09-25
|
* config.in: set default term to alacrittyLibravatar Drew DeVault2019-09-25
|
* build: update wlroots version, be more strictLibravatar Simon Ser2019-09-23
| | | | | | | wlroots versions are incompatible with each other. Often our users struggle with figuring out that their wlroots version is too old after a new release. Use a more strict version check to prevent building sway with incompatible wlroots versions.
* view: create container before selecting workspaceLibravatar Ronan Pigott2019-09-22
|
* Error out on unknown debug flagLibravatar Simon Ser2019-09-22
| | | | | Otehrwise it's pretty easy to misremember a flag and think damage=rerender is enabled when it's not.
* view: always populate pidLibravatar Brian Ashworth2019-09-20
| | | | | | | If the view was mapped as fullscreen or the view was assigned either a workspace or output, the pid was not being populated since it was occurring as part of the pid mapping check in select_workspace. This extracts the pid population and makes it so it is always executed
* swaybar: make status block text render in the same way as othersLibravatar xdavidwu2019-09-20
| | | | | | Other components like workspace button, status line (error or plain text) already render text at integer coords. This make status block also render text at integer coords.
* render: set surface as sampled for presentationLibravatar Ivan Molodetskikh2019-09-19
|
* swaymsg.1: fix typosLibravatar Martin Michlmayr2019-09-12
|
* sway-output.5: fix variable nameLibravatar Martin Michlmayr2019-09-11
| | | | | __foo__ is verbatim in scdoc, but we want the variable foo in italic, i.e. _foo_.
* swaymsg.1: fix description of --prettyLibravatar Martin Michlmayr2019-09-10
|
* Add Russian translation of the READMELibravatar Ivan Molodetskikh2019-09-09
|
* remove unused layer shell surface variableLibravatar Aleksis2019-09-07
|
* sway.5: clarify that a marks are unqiueLibravatar Brian Ashworth2019-09-05
| | | | | This just clarifies that a mark can only be set for a single window since they are used as unique identifiers
* Fix type (an -> and)Libravatar Nils ANDRÉ-CHANG2019-09-05
|
* Do not search for edges on subsurfaces, fix #4381Libravatar Versus Void2019-09-05
| | | | | | | Subsurfaces (in most cases popups) aren't decorated by sway and will never have any borders, but may be drawn beyond container boundaries producing false positive when searching for edge. So we want to skip edge search when handling mouse event on subsurface.
* swaybar: complete barconfig_update event handlingLibravatar Brian Ashworth2019-09-04
| | | | | | | | This adds complete support for the barconfig_update ipc event. This also changes the bar command and subcommand handlers to correctly emit the event. This makes it so all bar subcommands other than id and swaybar_command are dynamically changeable at runtime. sway-bar.5 has been updated accordingly
* seatop_default: only focus container on pressLibravatar Brian Ashworth2019-09-04
| | | | | | | | | | | | This matches i3's behavior of only focusing a container when pressed. This allows for `bindsym button1 nop`, `bindsym BTN_LEFT nop`, or `bindcode 272 nop` to be used to disable focusing when clicking on the title (or with additional flags to bind{code,sym} other portions of the container). Without this additional condition, the user would need both `bindsym button1 nop` and `bindsym --release button1 nop` to override both the pressed and released behavior.
* Add icon_theme_path to find_icon() search if setLibravatar Ben Brown2019-09-04
| | | | find_icon() will search in theme appropriate subdirs.
* Fix bar_state_update docsLibravatar xPMo2019-09-03
|
* Fix typo for the force/immediate option in xwayland_mode enumLibravatar Ben Brown2019-09-02
|
* man: document how to specify multiple xkb layouts and optionsLibravatar Simon Ser2019-09-02
| | | | This isn't described in xkeyboard-config(7).
* layer-shell: don't give focus to unmapped layer surfacesLibravatar Simon Ser2019-09-01
| | | | | | | | Focused layers are not cleared when destroyed, they are cleared on unmap. Giving focus to an unmapped layer surface is (1) incorrect and (2) triggers a use-after-free. Closes: https://github.com/swaywm/sway/issues/4517
* Ensure that seat->focused_layer is cleared on unmapLibravatar Kenny Levinsen2019-09-01
| | | | | The current seat may have changed between the last focus change and this unmap, so we need to scan through all seats to find our layer.
* seat: set cursor image only if no pointer cap previouslyLibravatar xdavidwu2019-08-31
| | | | | | This make seat_update_capabilities set cursor image only if there was no pointer cap before update. This avoid resetting cursor to left_ptr if an input device is removed.
* seat: avoid unneeded reloading xcursor themeLibravatar xdavidwu2019-08-31
| | | | | Load xcursor theme on configuring pointer or tablet tool only if there was no pointer cap before.
* Fix markup syntax in man pagesLibravatar Martin Michlmayr2019-08-31
|
* cmd_mode: don't reset to default after subcommandLibravatar Brian Ashworth2019-08-27
| | | | | | In cmd_mode, the mode is currently being reset to the default mode after a mode subcommand handler is executed. This stores and restores the mode instead
* chmod +x contrib/_incr_versionLibravatar Drew DeVault2019-08-27
|
* Add _incr_version to contrib/Libravatar Drew DeVault2019-08-27
|
* A layer-shell will only be focused if it is non-nullLibravatar asdfjkluiop2019-08-27
|
* Fix formatting for title_format in man 5 swayLibravatar Michael Aquilina2019-08-25
| | | | | Use explicit linebreaks to make scdoc use a separate line for each entry listed
* Update titlebar borders to match i3's current behavior.Libravatar Dark2019-08-24
|
* cmd_move: fix move to scratchpad hidden containerLibravatar Brian Ashworth2019-08-23
| | | | | | | | | When moving to a scratchpad hidden container (using `move [window|container] [to] mark <mark>`), this moves the container to the scratchpad (equivalent to `move [window|container] [to] scratchpad`). Previously, this would crash since the destination did not have a workspace.
* ipc: collapse multi-container command resultsLibravatar Laurent Bonnans2019-08-22
| | | | | | | | | Match i3's behavior and only return one status response per command, even if it applies to several nodes. Also returns an error if the criteria returns an empty match. Closes #4483