aboutsummaryrefslogtreecommitdiff
path: root/examples
AgeCommit message (Collapse)Author
2020-05-20examples: make output-power-management oneshot by defaultIlia Bozhinov
2020-05-01examples/dmabuf-capture: use getoptSimon Ser
This makes it a little bit less annoying to provide the right arguments. All options have reasonable defaults.
2020-04-21build: use dicts instead of get_variableSimon Ser
Closes: https://github.com/swaywm/wlroots/issues/1963
2020-03-25Prevent memory leak in copypaste of the screencopy exampleRabit
If someone want to use screencopy as is processing multiple screenshots - it could be hard to find this issue with shm.
2020-02-20keyboard-shortcuts-inhibit: Add client exampleMichael Weiser
Again, copy'n'search'n'replace the idle inhibit example to become a simple keyboard shortcuts inhibit example, adding the active and inactive events. Getting the initial inhibitor needs to be done later than for idle inhibit to avoid an error "xdg_surface has never been configured". Signed-off-by: Michael Weiser <michael.weiser@gmx.de>
2020-02-20examples: add output-power-management example clientGuido Günther
2020-02-08examples: Fix compositor-examplesScott Anderson
Due to the way the wlr_output API was changed, these examples would never get a frame event to start the rendering loop. We now commit the outputs to start it.
2020-01-24meson: Fix protocol includes for compositor examplesScott Anderson
2019-12-31virtual-pointer: Add support for the wlr-virtual-pointer-unstable-v1Josef Gajdusek
2019-12-23meson: Various improvementsScott Anderson
Bumps minimum version to 0.51.0 - Remove all intermediate static libraries. They serve no purpose and are just add a bunch of boilerplate for managing dependencies and options. It's now managed as a list of files which are compiled into libwlroots directly. - Use install_subdir instead of installing headers individually. I've changed my mind since I did that. Listing them out is annoying as hell, and it's easy to forget to do it. - Add not_found_message for all of our optional dependencies that have a meson option. It gives some hints about what option to pass and what the optional dependency is for. - Move all backend subdirectories into their own meson.build. This keeps some of the backend-specific build logic (especially rdp and session) more neatly separated off. - Don't overlink example clients with code they're not using. This was done by merging the protocol dictionaries and setting some variables containing the code and client header file. Example clients now explicitly mention what extension protocols they want to link to. - Split compositor example logic from client example logic. - Minor formatting changes
2019-11-20examples: set mode when creating shm objectJan Beich
$ screencopy shm_open failed failed to create buffer $ posixshmcontrol ls MODE OWNER GROUP SIZE PATH --------- foo foo 33177600 /wlroots-screencopy
2019-11-20Add -Wmissing-prototypesSimon Ser
This requires functions without a prototype definition to be static. This allows to detect dead code, export less symbols and put shared functions in headers.
2019-10-16build: simplify by using disabler depsSimon Ser
2019-10-08build: workaround for meson disabler object not working with if notSimon Ser
2019-08-12examples: remove duplicated conditionAntonin Décimo
2019-07-27Remove all wayland-server.h includesSimon Ser
The documentation for wayland-server.h says: > Use of this header file is discouraged. Prefer including > wayland-server-core.h instead, which does not include the server protocol > header and as such only defines the library PI, excluding the deprecated API > below. Replacing wayland-server.h with wayland-server-core.h allows us to drop the WL_HIDE_DEPRECATED declaration.
2019-06-02Remove orbital screenshooter and gamma-controlSimon Ser
These are undocumented, outdated protocols that have a better wlr-protocols equivalent.
2019-04-29examples: add fullscreening to foreign-toplevel.cIlia Bozhinov
2019-04-23output: refactor frame submission APISimon Ser
This is necessary for direct scan-out and other upcoming features. This patch changes the output API to look like the wl_surface API. Outputs now have some double-buffered state: the frame to be submitted (currently only wlr_renderer frames are supported) and the damaged region. To attach a pending frame, use wlr_output_attach_render. To set the pending damaged region, use wlr_output_set_damage. To submit the pending state, call wlr_output_commit. This will submit the pending frame to the backend. To migrate from the old API to the new one: - Replace wlr_output_make_current calls by wlr_output_attach_render - Replace wlr_output_swap_buffers calls by wlr_output_set_damage and wlr_output_commit
2019-03-01meson: enable more compiler warningsemersion
2019-01-29Fix two issues found with Clang's static analyzeremersion
2019-01-21Fix indentation in various filesemersion
2019-01-20Merge pull request #1476 from emersion/fullscreen-shellDrew DeVault
fullscreen-shell-v1: initial protocol implementation
2019-01-13Fix software cursor rendering for tinywl and some examplesAlexander Bakker
2019-01-07Simplify evdev includes on FreeBSD by relying on up-to-date packageJan Beich
As evdev-proto is installed by CI some files have been missed: ../examples/pointer-constraints.c:2:10: fatal error: 'linux/input-event-codes.h' file not found #include <linux/input-event-codes.h> ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ../examples/relative-pointer-unstable-v1.c:5:10: fatal error: 'linux/input-event-codes.h' file not found #include <linux/input-event-codes.h> ^~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-01-06fullscreen-shell-v1: initial protocol implementationemersion
2019-01-04Merge pull request #1432 from ForTheReallys/relative-pointersemersion
Relative pointers
2018-12-30examples/layer-shell.c: check popup exists before drawingIan Fan
2018-12-21relative_pointer: add relative-pointer examplerandom human
On left mouse button click, locks the cursor and renders relative motion events.
2018-12-08examples: add wlr_foreign_toplevel_management_v1 exampleIlia Bozhinov
2018-11-06examples: only link clients to wlroots if necessaryemersion
2018-11-06Use _POSIX_C_SOURCE, use shm_openemersion
2018-10-17Add epoll-shim dependency on FreeBSDsghctoma
On FreeBSD, epoll is provided as a 3rd-party library, so it needs to be added as a dependency.
2018-10-15render: fix meson including libdrmCole Mickens
2018-10-15Fix libdrm includesScott Anderson
This removes any assumptions about how the libdrm headers are installed, and uses the pkg-config include directories as we're "supposed to". This only adds a partial dependency, since we don't actually need to link against libdrm.
2018-10-12Assert read return value in examples/input-methodDrew DeVault
2018-10-09wlroots: add basic support for zwp_input_method_v2Dorota Czaplejewicz
Implemented basic input method functionality. Not included: popups, grabbing.
2018-10-09wlroots: add support for zwp_text_input_unstable_v3Dorota Czaplejewicz
2018-09-27Merge pull request #852 from Laaas/masterDrew DeVault
Implement pointer-constraints-unstable-v1 protocol
2018-09-26examples/pointer-constraints: style fixesemersion
2018-09-26Fix unknown cursor in layer-shell exampleemersion
2018-09-18export-dmabuf: disable hardware cursors if desiredemersion
Also make the frame resource inert when sending "ready".
2018-09-18Implement pointer-constraints protocol in wlroots and rootstonLas
2018-09-03Release pointers in examples/multi-pointerrandom human
2018-09-03Release registry pointer in examples/idlerandom human
2018-09-03Destroy layout after display in examples/output-layoutrandom human
2018-09-03Handle setting keymap in examples more securelyrandom human
2018-08-31Fix bugs listed by clang's static analyzerrandom human
A few pedantic changes and unused variables (1-4), and genuine bugs (5, 6). The reports with the corresponding files and lines numbers are as follows. 1. backend/libinput/tablet_pad.c@31,44,57 "Allocator sizeof operand mismatch" "Result of 'calloc' is converted to a pointer of type 'unsigned int', which is incompatible with sizeof operand type 'int'" 2. types/tablet_v2/wlr_tablet_v2_pad.c@371 "Allocator sizeof operand mismatch" "Result of 'calloc' is converted to a pointer of type 'uint32_t', which is incompatible with sizeof operand type 'int'" 3. types/wlr_cursor.c@335 "Dead initialization" "Value stored to 'dx'/'dy' during its initialization is never read" 4. rootston/xdg_shell.c@510 "Dead initialization" "Value stored to 'desktop' during its initialization is never read" 5. types/tablet_v2/wlr_tablet_v2_pad.c@475 "Dereference of null pointer" "Access to field 'strips' results in a dereference of a null pointer (loaded from field 'current_client')" The boolean logic was incorrect (c.f. the check in the following function). 6. examples/idle.c@163,174,182 "Uninitialized argument value" "1st function call argument is an uninitialized value" If close_timeout != 0, but simulate_activity_timeout >= close_timeout, the program would segfault at pthread_cancel(t1).
2018-08-30Fixes examples/dmabuf-capture being built with unmet dependenciesrandom human
Even if the libav* variables were disabler objects, the build targer dmabuf-capture was being built. Modified the script to support a generic solution.
2018-08-24Revert "Revert "Merge pull request #1194 from ascent12/meson_feature""Scott Anderson
This reverts commit 9c886f20b97b6ab1ac85b849f1fe7f16eb199ff0.