cleanups. OBScreen almost ready for some action
Dana Jansens danakj@orodu.net
7 files changed,
32 insertions(+),
6 deletions(-)
M
otk/property.cc
→
otk/property.cc
@@ -30,7 +30,7 @@ _atoms[Atom_String] = XA_STRING;
_atoms[Atom_Utf8] = create("UTF8_STRING"); #ifdef HAVE_GETPID - _atoms[blackbox_pid] = create("_BLACKBOX_PID"); + _atoms[openbox_pid] = create("_OPENBOX_PID"); #endif // HAVE_GETPID _atoms[wm_colormap_windows] = create("WM_COLORMAP_WINDOWS");
M
otk/property.hh
→
otk/property.hh
@@ -34,7 +34,7 @@ Atom_String, //!< The atom which represents ascii strings
Atom_Utf8, //!< The atom which represents utf8-encoded strings #ifdef HAVE_GETPID - blackbox_pid, + openbox_pid, #endif // HAVE_GETPID // window hints
M
po/POTFILES.in
→
po/POTFILES.in
@@ -2,4 +2,5 @@ # List of source files containing translatable strings.
src/openbox.cc src/display.cc -src/client.cc+src/client.cc +src/screen.cc
M
src/bbwindow.cc
→
src/bbwindow.cc
@@ -1583,7 +1583,7 @@ * According to the ICCCM a client message is not sent for a resize, only a
* move. */ void BlackboxWindow::configure(int dx, int dy, - unsigned int dw, unsigned int dh) { + int dw, int dh) { bool send_event = ((frame.rect.x() != dx || frame.rect.y() != dy) && ! flags.moving);
M
src/bbwindow.hh
→
src/bbwindow.hh
@@ -384,7 +384,7 @@ void grabButtons(void);
void ungrabButtons(void); void installColormap(bool install); void restore(bool remap); - void configure(int dx, int dy, unsigned int dw, unsigned int dh); + void configure(int dx, int dy, int dw, int dh); void setWorkspace(unsigned int n); void changeBlackboxHints(const BlackboxHints *net); void restoreAttributes(void);
M
src/openbox.cc
→
src/openbox.cc
@@ -10,6 +10,8 @@ #include "otk/property.hh"
#include "otk/display.hh" extern "C" { +#include <X11/cursorfont.h> + #ifdef HAVE_STDIO_H # include <stdio.h> #endif // HAVE_STDIO_H@@ -96,7 +98,14 @@ sigaction(SIGINT, &action, (struct sigaction *) 0);
sigaction(SIGHUP, &action, (struct sigaction *) 0); _property = new otk::OBProperty(); - + + // create the mouse cursors we'll use + _cursors.session = XCreateFontCursor(otk::OBDisplay::display, XC_left_ptr); + _cursors.move = XCreateFontCursor(otk::OBDisplay::display, XC_fleur); + _cursors.ll_angle = XCreateFontCursor(otk::OBDisplay::display, XC_ll_angle); + _cursors.lr_angle = XCreateFontCursor(otk::OBDisplay::display, XC_lr_angle); + _cursors.ul_angle = XCreateFontCursor(otk::OBDisplay::display, XC_ul_angle); + _cursors.ur_angle = XCreateFontCursor(otk::OBDisplay::display, XC_ur_angle); _state = State_Normal; // done starting }
M
src/openbox.hh
→
src/openbox.hh
@@ -49,6 +49,16 @@ State_Normal, //!< The window manager is running in its normal state
State_Exiting //!< The window manager is exiting (being destroyed) }; + //! Mouse cursors used throughout Openbox + struct Cursors { + Cursor session; //!< The default mouse cursor + Cursor move; //!< For moving a window + Cursor ll_angle; //!< For resizing the bottom left corner of a window + Cursor lr_angle; //!< For resizing the bottom right corner of a window + Cursor ul_angle; //!< For resizing the top left corner of a window + Cursor ur_angle; //!< For resizing the right corner of a window + }; + //! A map for looking up a specific client class from the window id typedef std::map<Window, OBClient *> ClientMap;@@ -93,6 +103,9 @@
//! The running state of the window manager RunState _state; + //! Mouse cursors used throughout Openbox + Cursors _cursors; + //! When set to true, the Openbox::eventLoop function will stop and return bool _doshutdown;@@ -127,6 +140,9 @@ */
inline otk::OBTimerQueueManager *timerManager() { return &_timermanager; } inline const otk::OBProperty *property() const { return _property; } + + //! Returns the mouse cursors used throughout Openbox + inline const Cursors &cursor() const { return _cursors; } //! The main function of the Openbox class /*!