diff options
author | rathnor <rathnor> | 2003-05-04 16:55:40 (GMT) |
---|---|---|
committer | rathnor <rathnor> | 2003-05-04 16:55:40 (GMT) |
commit | b10dc8434b4faa7c4b9be82c00f1c4e141eab0c4 (patch) | |
tree | c8155258f61711b3f90dcbe3c02011323f5d12c7 | |
parent | cd3379270b388cbfe5040d43a4c90f976c06e1b7 (diff) | |
download | fluxbox_pavel-b10dc8434b4faa7c4b9be82c00f1c4e141eab0c4.zip fluxbox_pavel-b10dc8434b4faa7c4b9be82c00f1c4e141eab0c4.tar.bz2 |
add session.ignoreBorder to ignore border for movement events
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | RoadMap | 9 | ||||
-rw-r--r-- | src/Window.cc | 14 | ||||
-rw-r--r-- | src/fluxbox.cc | 3 | ||||
-rw-r--r-- | src/fluxbox.hh | 6 |
5 files changed, 26 insertions, 8 deletions
@@ -1,6 +1,8 @@ | |||
1 | (Format: Year/Month/Day) | 1 | (Format: Year/Month/Day) |
2 | Changes for 0.9.2: | 2 | Changes for 0.9.2: |
3 | *03/05/04: | 3 | *03/05/04: |
4 | * add session.ignoreBorder - ignores window border with movement (Simon) | ||
5 | fluxbox.hh/cc Window.cc | ||
4 | * Fix warping with multiple screens (Simon) | 6 | * Fix warping with multiple screens (Simon) |
5 | Window.cc | 7 | Window.cc |
6 | * Set many key events/commands to act on the screen the mouse is on, | 8 | * Set many key events/commands to act on the screen the mouse is on, |
@@ -99,20 +99,20 @@ Bugfixes/lower priority: | |||
99 | Release: 0.9.2 | 99 | Release: 0.9.2 |
100 | Approx Date: 5 May, 2003 | 100 | Approx Date: 5 May, 2003 |
101 | Major Features: | 101 | Major Features: |
102 | + Integration of Remember patch (Simon) | 102 | * Integration of Remember patch (Simon) |
103 | * Transparency (Henrik) | 103 | * Transparency (Henrik) |
104 | Minor Features: | 104 | Minor Features: |
105 | - more keybinding actions (Both) | 105 | - more keybinding actions (Both) |
106 | * directional focus movement (Simon) | 106 | * directional focus movement (Simon) |
107 | - fix up focus issues (Simon) | 107 | = fix up focus issues (Simon) |
108 | * snap to windows (Simon) | 108 | * snap to windows (Simon) |
109 | - improved command-line help option (Henrik) | 109 | - improved command-line help option (Henrik) |
110 | = pixmap buttons (Henrik) | 110 | = pixmap buttons (Henrik) |
111 | + Shaped menu/slit/toolbar (Henrik) | 111 | + Shaped menu/slit/toolbar (Henrik) |
112 | Bugfixes/lower priority: | 112 | Bugfixes/lower priority: |
113 | - Bugs from 0.9.1 (Both) | 113 | - Bugs from 0.9.1 (Both) |
114 | - stop window moving from borders (Simon) | 114 | * stop window moving from borders (Simon) |
115 | - Focus acts sloppy on window close/warp (Simon) | 115 | = Focus acts sloppy on window close/warp (Simon) |
116 | 116 | ||
117 | ---------------------------------------------------------- | 117 | ---------------------------------------------------------- |
118 | Release: 0.9.3 | 118 | Release: 0.9.3 |
@@ -121,6 +121,7 @@ Major Features: | |||
121 | - Xinerama (Simon) | 121 | - Xinerama (Simon) |
122 | - XRandr (Henrik) | 122 | - XRandr (Henrik) |
123 | Minor Features: | 123 | Minor Features: |
124 | - Add some sort of program launch function (Simon) | ||
124 | - more powerful autogroup matching (?) | 125 | - more powerful autogroup matching (?) |
125 | - nls updating (layers, toolbar) (Both) | 126 | - nls updating (layers, toolbar) (Both) |
126 | Bugfixes/lower priority: | 127 | Bugfixes/lower priority: |
diff --git a/src/Window.cc b/src/Window.cc index fb7b169..bd930db 100644 --- a/src/Window.cc +++ b/src/Window.cc | |||
@@ -22,7 +22,7 @@ | |||
22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
23 | // DEALINGS IN THE SOFTWARE. | 23 | // DEALINGS IN THE SOFTWARE. |
24 | 24 | ||
25 | // $Id: Window.cc,v 1.157 2003/05/04 13:55:39 rathnor Exp $ | 25 | // $Id: Window.cc,v 1.158 2003/05/04 16:55:40 rathnor Exp $ |
26 | 26 | ||
27 | #include "Window.hh" | 27 | #include "Window.hh" |
28 | 28 | ||
@@ -2253,6 +2253,18 @@ void FluxboxWindow::motionNotifyEvent(XMotionEvent &me) { | |||
2253 | } | 2253 | } |
2254 | bool inside_titlebar = (m_frame.titlebar() == me.window || m_frame.label() == me.window || | 2254 | bool inside_titlebar = (m_frame.titlebar() == me.window || m_frame.label() == me.window || |
2255 | m_frame.handle() == me.window || m_frame.window() == me.window); | 2255 | m_frame.handle() == me.window || m_frame.window() == me.window); |
2256 | |||
2257 | if (Fluxbox::instance()->getIgnoreBorder() | ||
2258 | && !(me.state & Mod1Mask) // really should check for exact matches | ||
2259 | && !(isMoving() || isResizing())) { | ||
2260 | int borderw = screen.rootTheme().borderWidth(); | ||
2261 | if (me.x_root < (m_frame.x() + borderw) || | ||
2262 | me.y_root < (m_frame.y() + borderw) || | ||
2263 | me.x_root > (m_frame.x() + (int)m_frame.width() + borderw) || | ||
2264 | me.y_root > (m_frame.y() + (int)m_frame.height() + borderw)) | ||
2265 | return; | ||
2266 | } | ||
2267 | |||
2256 | WinClient *client = 0; | 2268 | WinClient *client = 0; |
2257 | if (!inside_titlebar) { | 2269 | if (!inside_titlebar) { |
2258 | // determine if we're in titlebar | 2270 | // determine if we're in titlebar |
diff --git a/src/fluxbox.cc b/src/fluxbox.cc index 6b7d427..d26d8b3 100644 --- a/src/fluxbox.cc +++ b/src/fluxbox.cc | |||
@@ -22,7 +22,7 @@ | |||
22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
23 | // DEALINGS IN THE SOFTWARE. | 23 | // DEALINGS IN THE SOFTWARE. |
24 | 24 | ||
25 | // $Id: fluxbox.cc,v 1.126 2003/05/04 13:07:00 rathnor Exp $ | 25 | // $Id: fluxbox.cc,v 1.127 2003/05/04 16:55:40 rathnor Exp $ |
26 | 26 | ||
27 | #include "fluxbox.hh" | 27 | #include "fluxbox.hh" |
28 | 28 | ||
@@ -365,6 +365,7 @@ Fluxbox::Fluxbox(int argc, char **argv, const char *dpy_name, const char *rcfile | |||
365 | m_fbatoms(new FbAtoms()), | 365 | m_fbatoms(new FbAtoms()), |
366 | m_resourcemanager(), m_screen_rm(), | 366 | m_resourcemanager(), m_screen_rm(), |
367 | m_rc_tabs(m_resourcemanager, true, "session.tabs", "Session.Tabs"), | 367 | m_rc_tabs(m_resourcemanager, true, "session.tabs", "Session.Tabs"), |
368 | m_rc_ignoreborder(m_resourcemanager, false, "session.ignoreBorder", "Session.IgnoreBorder"), | ||
368 | m_rc_colors_per_channel(m_resourcemanager, 4, | 369 | m_rc_colors_per_channel(m_resourcemanager, 4, |
369 | "session.colorsPerChannel", "Session.ColorsPerChannel"), | 370 | "session.colorsPerChannel", "Session.ColorsPerChannel"), |
370 | m_rc_numlayers(m_resourcemanager, 13, "session.numLayers", "Session.NumLayers"), | 371 | m_rc_numlayers(m_resourcemanager, 13, "session.numLayers", "Session.NumLayers"), |
diff --git a/src/fluxbox.hh b/src/fluxbox.hh index ee60094..35f7c79 100644 --- a/src/fluxbox.hh +++ b/src/fluxbox.hh | |||
@@ -22,7 +22,7 @@ | |||
22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
23 | // DEALINGS IN THE SOFTWARE. | 23 | // DEALINGS IN THE SOFTWARE. |
24 | 24 | ||
25 | // $Id: fluxbox.hh,v 1.51 2003/04/27 04:28:04 rathnor Exp $ | 25 | // $Id: fluxbox.hh,v 1.52 2003/05/04 16:55:40 rathnor Exp $ |
26 | 26 | ||
27 | #ifndef FLUXBOX_HH | 27 | #ifndef FLUXBOX_HH |
28 | #define FLUXBOX_HH | 28 | #define FLUXBOX_HH |
@@ -99,6 +99,8 @@ public: | |||
99 | 99 | ||
100 | enum FocusModel { SLOPPYFOCUS=0, SEMISLOPPYFOCUS, CLICKTOFOCUS }; | 100 | enum FocusModel { SLOPPYFOCUS=0, SEMISLOPPYFOCUS, CLICKTOFOCUS }; |
101 | 101 | ||
102 | inline const Bool getIgnoreBorder() const { return *m_rc_ignoreborder; } | ||
103 | |||
102 | inline const std::vector<Fluxbox::Titlebar>& getTitlebarRight() const { return *m_rc_titlebar_right; } | 104 | inline const std::vector<Fluxbox::Titlebar>& getTitlebarRight() const { return *m_rc_titlebar_right; } |
103 | inline const std::vector<Fluxbox::Titlebar>& getTitlebarLeft() const { return *m_rc_titlebar_left; } | 105 | inline const std::vector<Fluxbox::Titlebar>& getTitlebarLeft() const { return *m_rc_titlebar_left; } |
104 | inline const std::string &getStyleFilename() const { return *m_rc_stylefile; } | 106 | inline const std::string &getStyleFilename() const { return *m_rc_stylefile; } |
@@ -216,7 +218,7 @@ private: | |||
216 | ResourceManager m_resourcemanager, m_screen_rm; | 218 | ResourceManager m_resourcemanager, m_screen_rm; |
217 | 219 | ||
218 | //--- Resources | 220 | //--- Resources |
219 | Resource<bool> m_rc_tabs; | 221 | Resource<bool> m_rc_tabs, m_rc_ignoreborder; |
220 | Resource<int> m_rc_colors_per_channel, m_rc_numlayers; | 222 | Resource<int> m_rc_colors_per_channel, m_rc_numlayers; |
221 | Resource<std::string> m_rc_stylefile, | 223 | Resource<std::string> m_rc_stylefile, |
222 | m_rc_menufile, m_rc_keyfile, m_rc_slitlistfile, | 224 | m_rc_menufile, m_rc_keyfile, m_rc_slitlistfile, |