wayland: remove Object::num_requests
This commit is contained in:
parent
19bd17c7dc
commit
0ac1bb8507
76 changed files with 168 additions and 486 deletions
|
|
@ -199,7 +199,7 @@ impl IpcVtable for ClipboardIpc {
|
|||
}
|
||||
|
||||
fn create_xwm_source(client: &Rc<Client>) -> Self::Source {
|
||||
WlDataSource::new(WlDataSourceId::NONE, client, true)
|
||||
WlDataSource::new(WlDataSourceId::NONE, client, true, 3)
|
||||
}
|
||||
|
||||
fn set_seat_selection(
|
||||
|
|
@ -287,18 +287,14 @@ impl IpcVtable for ClipboardIpc {
|
|||
}
|
||||
|
||||
object_base! {
|
||||
WlDataDevice;
|
||||
self = WlDataDevice;
|
||||
|
||||
START_DRAG => start_drag,
|
||||
SET_SELECTION => set_selection,
|
||||
RELEASE => release,
|
||||
RELEASE => release if self.version >= 2,
|
||||
}
|
||||
|
||||
impl Object for WlDataDevice {
|
||||
fn num_requests(&self) -> u32 {
|
||||
RELEASE + 1
|
||||
}
|
||||
|
||||
fn break_loops(&self) {
|
||||
break_device_loops::<ClipboardIpc>(self);
|
||||
self.seat.remove_data_device(self);
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ impl WlDataDeviceManager {
|
|||
parser: MsgParser<'_, '_>,
|
||||
) -> Result<(), WlDataDeviceManagerError> {
|
||||
let req: CreateDataSource = self.client.parse(self, parser)?;
|
||||
let res = Rc::new(WlDataSource::new(req.id, &self.client, false));
|
||||
let res = Rc::new(WlDataSource::new(req.id, &self.client, false, self.version));
|
||||
track!(self.client, res);
|
||||
self.client.add_client_obj(&res)?;
|
||||
Ok(())
|
||||
|
|
@ -106,17 +106,13 @@ impl Global for WlDataDeviceManagerGlobal {
|
|||
simple_add_global!(WlDataDeviceManagerGlobal);
|
||||
|
||||
object_base! {
|
||||
WlDataDeviceManager;
|
||||
self = WlDataDeviceManager;
|
||||
|
||||
CREATE_DATA_SOURCE => create_data_source,
|
||||
GET_DATA_DEVICE => get_data_device,
|
||||
}
|
||||
|
||||
impl Object for WlDataDeviceManager {
|
||||
fn num_requests(&self) -> u32 {
|
||||
GET_DATA_DEVICE + 1
|
||||
}
|
||||
}
|
||||
impl Object for WlDataDeviceManager {}
|
||||
|
||||
simple_add_obj!(WlDataDeviceManager);
|
||||
|
||||
|
|
|
|||
|
|
@ -168,20 +168,16 @@ impl WlDataOffer {
|
|||
}
|
||||
|
||||
object_base! {
|
||||
WlDataOffer;
|
||||
self = WlDataOffer;
|
||||
|
||||
ACCEPT => accept,
|
||||
RECEIVE => receive,
|
||||
DESTROY => destroy,
|
||||
FINISH => finish,
|
||||
SET_ACTIONS => set_actions,
|
||||
FINISH => finish if self.device.version >= 3,
|
||||
SET_ACTIONS => set_actions if self.device.version >= 3,
|
||||
}
|
||||
|
||||
impl Object for WlDataOffer {
|
||||
fn num_requests(&self) -> u32 {
|
||||
SET_ACTIONS + 1
|
||||
}
|
||||
|
||||
fn break_loops(&self) {
|
||||
break_offer_loops::<ClipboardIpc>(self);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,15 +30,17 @@ const INVALID_SOURCE: u32 = 1;
|
|||
pub struct WlDataSource {
|
||||
pub id: WlDataSourceId,
|
||||
pub data: SourceData<ClipboardIpc>,
|
||||
pub version: u32,
|
||||
pub tracker: Tracker<Self>,
|
||||
}
|
||||
|
||||
impl WlDataSource {
|
||||
pub fn new(id: WlDataSourceId, client: &Rc<Client>, is_xwm: bool) -> Self {
|
||||
pub fn new(id: WlDataSourceId, client: &Rc<Client>, is_xwm: bool, version: u32) -> Self {
|
||||
Self {
|
||||
id,
|
||||
tracker: Default::default(),
|
||||
data: SourceData::new(client, is_xwm),
|
||||
version,
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -196,18 +198,14 @@ impl WlDataSource {
|
|||
}
|
||||
|
||||
object_base! {
|
||||
WlDataSource;
|
||||
self = WlDataSource;
|
||||
|
||||
OFFER => offer,
|
||||
DESTROY => destroy,
|
||||
SET_ACTIONS => set_actions,
|
||||
SET_ACTIONS => set_actions if self.version >= 3,
|
||||
}
|
||||
|
||||
impl Object for WlDataSource {
|
||||
fn num_requests(&self) -> u32 {
|
||||
SET_ACTIONS + 1
|
||||
}
|
||||
|
||||
fn break_loops(&self) {
|
||||
break_source_loops::<ClipboardIpc>(self);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -113,18 +113,14 @@ impl Global for ZwpPrimarySelectionDeviceManagerV1Global {
|
|||
simple_add_global!(ZwpPrimarySelectionDeviceManagerV1Global);
|
||||
|
||||
object_base! {
|
||||
ZwpPrimarySelectionDeviceManagerV1;
|
||||
self = ZwpPrimarySelectionDeviceManagerV1;
|
||||
|
||||
CREATE_SOURCE => create_source,
|
||||
GET_DEVICE => get_data_device,
|
||||
DESTROY => destroy,
|
||||
}
|
||||
|
||||
impl Object for ZwpPrimarySelectionDeviceManagerV1 {
|
||||
fn num_requests(&self) -> u32 {
|
||||
DESTROY + 1
|
||||
}
|
||||
}
|
||||
impl Object for ZwpPrimarySelectionDeviceManagerV1 {}
|
||||
|
||||
simple_add_obj!(ZwpPrimarySelectionDeviceManagerV1);
|
||||
|
||||
|
|
|
|||
|
|
@ -231,17 +231,13 @@ impl IpcVtable for PrimarySelectionIpc {
|
|||
}
|
||||
|
||||
object_base! {
|
||||
ZwpPrimarySelectionDeviceV1;
|
||||
self = ZwpPrimarySelectionDeviceV1;
|
||||
|
||||
SET_SELECTION => set_selection,
|
||||
DESTROY => destroy,
|
||||
}
|
||||
|
||||
impl Object for ZwpPrimarySelectionDeviceV1 {
|
||||
fn num_requests(&self) -> u32 {
|
||||
DESTROY + 1
|
||||
}
|
||||
|
||||
fn break_loops(&self) {
|
||||
break_device_loops::<PrimarySelectionIpc>(self);
|
||||
self.seat.remove_primary_selection_device(self);
|
||||
|
|
|
|||
|
|
@ -63,17 +63,13 @@ impl ZwpPrimarySelectionOfferV1 {
|
|||
}
|
||||
|
||||
object_base! {
|
||||
ZwpPrimarySelectionOfferV1;
|
||||
self = ZwpPrimarySelectionOfferV1;
|
||||
|
||||
RECEIVE => receive,
|
||||
DESTROY => destroy,
|
||||
}
|
||||
|
||||
impl Object for ZwpPrimarySelectionOfferV1 {
|
||||
fn num_requests(&self) -> u32 {
|
||||
DESTROY + 1
|
||||
}
|
||||
|
||||
fn break_loops(&self) {
|
||||
break_offer_loops::<PrimarySelectionIpc>(self);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -80,17 +80,13 @@ impl ZwpPrimarySelectionSourceV1 {
|
|||
}
|
||||
|
||||
object_base! {
|
||||
ZwpPrimarySelectionSourceV1;
|
||||
self = ZwpPrimarySelectionSourceV1;
|
||||
|
||||
OFFER => offer,
|
||||
DESTROY => destroy,
|
||||
}
|
||||
|
||||
impl Object for ZwpPrimarySelectionSourceV1 {
|
||||
fn num_requests(&self) -> u32 {
|
||||
DESTROY + 1
|
||||
}
|
||||
|
||||
fn break_loops(&self) {
|
||||
break_source_loops::<PrimarySelectionIpc>(self);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue