layershell: Fix keyboard focus grabs (#4968) (#6394)

This commit is contained in:
outfoxxed 2024-06-11 10:35:30 -07:00 committed by GitHub
parent 1c388e52fb
commit 21b9e31bf4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 103 additions and 73 deletions

View file

@ -34,40 +34,41 @@ class CLayerSurface {
WP<CLayerShellResource> layerSurface;
wl_list link;
bool keyboardExclusive = false;
// the header providing the enum type cannot be imported here
int interactivity = 0;
SP<CWLSurface> surface;
SP<CWLSurface> surface;
bool mapped = false;
uint32_t layer = 0;
bool mapped = false;
uint32_t layer = 0;
int monitorID = -1;
int monitorID = -1;
bool fadingOut = false;
bool readyToDelete = false;
bool noProcess = false;
bool noAnimations = false;
bool fadingOut = false;
bool readyToDelete = false;
bool noProcess = false;
bool noAnimations = false;
bool forceBlur = false;
bool forceBlurPopups = false;
int xray = -1;
bool ignoreAlpha = false;
float ignoreAlphaValue = 0.f;
bool dimAround = false;
bool forceBlur = false;
bool forceBlurPopups = false;
int xray = -1;
bool ignoreAlpha = false;
float ignoreAlphaValue = 0.f;
bool dimAround = false;
std::optional<std::string> animationStyle;
std::optional<std::string> animationStyle;
PHLLSREF self;
PHLLSREF self;
CBox geometry = {0, 0, 0, 0};
Vector2D position;
std::string szNamespace = "";
std::unique_ptr<CPopup> popupHead;
CBox geometry = {0, 0, 0, 0};
Vector2D position;
std::string szNamespace = "";
std::unique_ptr<CPopup> popupHead;
void onDestroy();
void onMap();
void onUnmap();
void onCommit();
void onDestroy();
void onMap();
void onUnmap();
void onCommit();
private:
struct {
@ -83,4 +84,4 @@ class CLayerSurface {
bool operator==(const CLayerSurface& rhs) const {
return layerSurface == rhs.layerSurface && monitorID == rhs.monitorID;
}
};
};