X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fopenbox.hh;h=976a49774ed2261cc51370d147d6accc3c812a9f;hb=c645416035d64cc959d1dd0e937b31b07489e54b;hp=1489ffb744b1af37301053cbf99b5a3f794529cb;hpb=efc875f5f273f3a5f62ae5c2937a771167740442;p=chaz%2Fopenbox diff --git a/src/openbox.hh b/src/openbox.hh index 1489ffb7..976a4977 100644 --- a/src/openbox.hh +++ b/src/openbox.hh @@ -121,6 +121,9 @@ private: //! The action interface through which all user-available actions occur OBActions *_actions; + //! Run the application in synchronous mode? (for debugging) + bool _sync; + //! The running state of the window manager RunState _state; @@ -133,6 +136,19 @@ private: //! The configuration of the application. TEMPORARY otk::Configuration _config; + //! The client with input focus + /*! + Updated by the clients themselves. + */ + OBClient *_focused_client; + + //! The screen with input focus + /*! + Updated by the clients when they update the Openbox::focused_client + property. + */ + OBScreen *_focused_screen; + //! Parses the command line used when executing this application void parseCommandLine(int argv, char **argv); //! Displays the version string to stdout @@ -203,6 +219,18 @@ public: //! Finds an OBClient based on its window id OBClient *findClient(Window window); + //! The client with input focus + inline OBClient *focusedClient() { return _focused_client; } + + //! Change the client which has focus. + /*! + This is called by the clients themselves when their focus state changes. + */ + void setFocusedClient(OBClient *c); + + //! The screen with input focus + inline OBScreen *focusedScreen() { return _focused_screen; } + //! Requests that the window manager exit /*! Causes the Openbox::eventLoop function to stop looping, so that the window