aboutsummaryrefslogtreecommitdiff
path: root/rootston/xdg_shell.c
AgeCommit message (Collapse)Author
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-06rootston: add keybinding to toggle decoration modeemersion
2018-08-02Merge pull request #1053 from emersion/xdg-decorationDrew DeVault
Add xdg-decoration-unstable-v1 support
2018-07-29rootston: focus newly-created surfacesIlia Bozhinov
Whenever a new surface is created, we have to update the cursor focus, even if there's no input event. So, we generate one motion event, and reuse the code to update the proper cursor focus. We need to do this for all surface roles - toplevels, popups, subsurfaces. Fixes #1162
2018-07-28Add xdg-decoration-unstable-v1 supportemersion
2018-07-09util: add wlr_ prefix to log symbolsemersion
2018-06-01Add wlr_surface_get_geometryMarkus Ongyerth
This function defaults and clips the xdg-surface geometry to the bounding box of the surface + its subsurfaces, as specified by the protocol spec.
2018-05-30rootston: xdg-shell*: Fix get_size() for newly-mapped viewsGenki Sky
The user-visible issue is that newly-mapped xdg-shell* windows would sometimes start with their top-left-corner, rather than their center, in the center of the screen. This is because get_size() would conservatively fall back on (width, height) == (0, 0) if both set_window_geometry() had not been called, and it found view->wlr_surface to be NULL. But, view->wlr_surface is only set to non-NULL in view_map(). We call get_size() before this. Fortunately, the wlr_surface in question is accessible via view->xdg_shell{,_v6}->surface, so always fall back on that. We can assert its presence instead of further falling back on (width, height) == (0, 0). Signed-off-by: Genki Sky <sky@genki.is>
2018-05-04Fix a rootston crash when a client creates non-topmost popupsemersion
2018-04-23Finish forward-porting @acrisci's positioner workDrew DeVault
2018-03-27Address feedbackDrew DeVault
2018-03-27Merge pull request #754 from emersion/popup-map-unmap-damageTony Crisci
[WIP] xdg-shell: damage view when popup is mapped/unmapped
2018-03-27rootston: damage view when xdg-popup is mapped/unmappedemersion
2018-03-27xdg-shell: don't destroy role resources on unmap, move toplevel fieldsemersion
Ports 5233801530c5ccc95699a12ba7da2d7ce58c952c and 334bab543d6688769a86374a1ddd3d3b36e619b4 to xdg-shell stable.
2018-03-24unified xdg-surface closeTony Crisci
2018-03-15xdg-shell: add map/unmap supportemersion
2018-03-12rootston: add destroy to view interfaceemersion
2018-03-09rootston: add view_map and view_unmapemersion
2018-02-25rootston: add view_createGuido Günther
so we can do basic view setup. Will be used to initialize alpha.
2018-02-14xdg-shell stable: copy-pasta implementationDominique Martinet