void CompositorSettings::setCompositor(QWaylandCompositor *compositor) { Q_D(CompositorSettings); if (d->compositor == compositor) return; if (d->compositor) disconnect(compositor, SIGNAL(defaultInputDeviceChanged()), this, SLOT(_q_setupKeymap())); if (compositor) { connect(compositor, SIGNAL(defaultInputDeviceChanged()), this, SLOT(_q_setupKeymap())); d->_q_setupKeymap(); } d->compositor = compositor; Q_EMIT compositorChanged(); }
void CompositorSettings::setKeymap(Keymap *keymap) { Q_D(CompositorSettings); if (d->keymap == keymap) return; if (d->keymap) { disconnect(keymap, SIGNAL(rulesChanged()), this, SLOT(_q_setupKeymap())); disconnect(keymap, SIGNAL(modelChanged()), this, SLOT(_q_setupKeymap())); disconnect(keymap, SIGNAL(layoutChanged()), this, SLOT(_q_setupKeymap())); disconnect(keymap, SIGNAL(variantChanged()), this, SLOT(_q_setupKeymap())); disconnect(keymap, SIGNAL(optionsChanged()), this, SLOT(_q_setupKeymap())); } if (keymap) { connect(keymap, SIGNAL(rulesChanged()), this, SLOT(_q_setupKeymap())); connect(keymap, SIGNAL(modelChanged()), this, SLOT(_q_setupKeymap())); connect(keymap, SIGNAL(layoutChanged()), this, SLOT(_q_setupKeymap())); connect(keymap, SIGNAL(variantChanged()), this, SLOT(_q_setupKeymap())); connect(keymap, SIGNAL(optionsChanged()), this, SLOT(_q_setupKeymap())); d->_q_setupKeymap(); } d->keymap = keymap; Q_EMIT keymapChanged(); }