wlmaker
Loading...
Searching...
No Matches
Macros | Functions | Variables
xdg_popup.c File Reference
#include "xdg_popup.h"
#include <libbase/libbase.h>
#include <stdbool.h>
#include <stdlib.h>
#include <wayland-server-protocol.h>
#include <wlr/types/wlr_compositor.h>
#include <wlr/types/wlr_scene.h>
#include <wlr/types/wlr_xdg_shell.h>
#include <wlr/util/box.h>
#include <wlr/version.h>
Include dependency graph for xdg_popup.c:

Functions

static void handle_reposition (struct wl_listener *listener_ptr, void *data_ptr)
 
static void handle_destroy (struct wl_listener *listener_ptr, void *data_ptr)
 
static void handle_new_popup (struct wl_listener *listener_ptr, void *data_ptr)
 
static void _wlmaker_xdg_popup_element_destroy (wlmtk_element_t *element_ptr)
 
static void handle_surface_commit (struct wl_listener *listener_ptr, void *data_ptr)
 
wlmaker_xdg_popup_twlmaker_xdg_popup_create (struct wlr_xdg_popup *wlr_xdg_popup_ptr, struct wlr_seat *wlr_seat_ptr)
 
void wlmaker_xdg_popup_destroy (wlmaker_xdg_popup_t *wlmaker_xdg_popup_ptr)
 

Variables

static const wlmtk_element_vmt_t _wlmaker_xdg_popup_element_vmt
 

Detailed Description

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Function Documentation

◆ _wlmaker_xdg_popup_element_destroy()

void _wlmaker_xdg_popup_element_destroy ( wlmtk_element_t element_ptr)
static

Implementation of wlmtk_element_vmt_t::destroy. Virtual dtor.

Parameters
element_ptr

◆ handle_destroy()

void handle_destroy ( struct wl_listener *  listener_ptr,
void *  data_ptr 
)
static

Handles popup destruction: Removes from parent, and destroy.

◆ handle_new_popup()

void handle_new_popup ( struct wl_listener *  listener_ptr,
void *  data_ptr 
)
static

Handles further popups. Creates them and adds them to parent's content.

◆ handle_reposition()

void handle_reposition ( struct wl_listener *  listener_ptr,
void *  data_ptr 
)
static

Handles repositioning.

◆ handle_surface_commit()

void handle_surface_commit ( struct wl_listener *  listener_ptr,
void *  data_ptr 
)
static

Handles commit for the popup's surface.

◆ wlmaker_xdg_popup_create()

wlmaker_xdg_popup_t * wlmaker_xdg_popup_create ( struct wlr_xdg_popup *  wlr_xdg_popup_ptr,
struct wlr_seat *  wlr_seat_ptr 
)

Creates a popup.

Returns
Popup handle or NULL on error.

◆ wlmaker_xdg_popup_destroy()

void wlmaker_xdg_popup_destroy ( wlmaker_xdg_popup_t wlmaker_xdg_popup_ptr)

Destroys the popup.

Parameters
wlmaker_xdg_popup_ptr

Variable Documentation

◆ _wlmaker_xdg_popup_element_vmt

const wlmtk_element_vmt_t _wlmaker_xdg_popup_element_vmt
static
Initial value:
= {
}
static void _wlmaker_xdg_popup_element_destroy(wlmtk_element_t *element_ptr)
Definition xdg_popup.c:224

Virtual method table of the parent's wlmtk_element_t.