don't handle additional configure events, minor behavior changes
This commit is contained in:
parent
e1a4a23a51
commit
e06823dc40
1 changed files with 13 additions and 5 deletions
18
mew.c
18
mew.c
|
@ -58,7 +58,7 @@ static size_t cursor;
|
|||
static struct item *items = NULL;
|
||||
static struct item *matches, *matchend;
|
||||
static struct item *prev, *curr, *next, *sel;
|
||||
static int running = 1;
|
||||
static int running = 0;
|
||||
|
||||
static struct wl_display *display;
|
||||
static struct wl_compositor *compositor;
|
||||
|
@ -176,7 +176,7 @@ loadfonts(void)
|
|||
die("no fonts could be loaded");
|
||||
|
||||
lrpad = drw->font->height;
|
||||
bh = drw->font->height + (2 * scale);
|
||||
bh = drw->font->height + 2;
|
||||
lines = MAX(lines, 0);
|
||||
mh = (lines + 1) * bh;
|
||||
promptw = (prompt && *prompt) ? TEXTW(prompt) - lrpad / 4 : 0;
|
||||
|
@ -764,6 +764,9 @@ static void
|
|||
layer_surface_handle_configure(void *data, struct zwlr_layer_surface_v1 *layer_surface,
|
||||
uint32_t serial, uint32_t width, uint32_t height)
|
||||
{
|
||||
if (mw / scale == width && mh / scale == height)
|
||||
return;
|
||||
|
||||
mw = width * scale;
|
||||
mh = height * scale;
|
||||
inputw = mw / 3; /* input width: ~33% of output width */
|
||||
|
@ -788,6 +791,12 @@ surface_handle_preferred_scale(void *data,
|
|||
{
|
||||
scale = factor;
|
||||
loadfonts();
|
||||
|
||||
/* FIXME:
|
||||
* Use a callback to ensure the 'configure' event
|
||||
* is sent before the draw, which changes the dimensions
|
||||
* properly for the update in scale.
|
||||
*/
|
||||
zwlr_layer_surface_v1_set_size(layer_surface, 0, mh / scale);
|
||||
redraw();
|
||||
}
|
||||
|
@ -987,11 +996,10 @@ setup(void)
|
|||
ZWLR_LAYER_SURFACE_V1_ANCHOR_LEFT | ZWLR_LAYER_SURFACE_V1_ANCHOR_RIGHT);
|
||||
zwlr_layer_surface_v1_set_exclusive_zone(layer_surface, -1);
|
||||
zwlr_layer_surface_v1_set_keyboard_interactivity(layer_surface, true);
|
||||
zwlr_layer_surface_v1_add_listener(layer_surface,
|
||||
&layer_surface_listener, NULL);
|
||||
zwlr_layer_surface_v1_add_listener(layer_surface, &layer_surface_listener, NULL);
|
||||
|
||||
wl_surface_commit(surface);
|
||||
wl_display_roundtrip(display);
|
||||
running = 1;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue