diff options
Diffstat (limited to 'src/Window.cc')
-rw-r--r-- | src/Window.cc | 31 |
1 files changed, 14 insertions, 17 deletions
diff --git a/src/Window.cc b/src/Window.cc index b5ef439..3920367 100644 --- a/src/Window.cc +++ b/src/Window.cc | |||
@@ -22,20 +22,22 @@ | |||
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.219 2003/08/19 16:13:25 fluxgen Exp $ | 25 | // $Id: Window.cc,v 1.220 2003/08/24 10:46:56 fluxgen Exp $ |
26 | 26 | ||
27 | #include "Window.hh" | 27 | #include "Window.hh" |
28 | 28 | ||
29 | |||
30 | #include "FbTk/StringUtil.hh" | ||
31 | #include "FbTk/TextButton.hh" | ||
32 | #include "FbTk/Compose.hh" | ||
33 | #include "FbTk/EventManager.hh" | ||
34 | |||
29 | #include "WinClient.hh" | 35 | #include "WinClient.hh" |
30 | #include "I18n.hh" | 36 | #include "I18n.hh" |
31 | #include "fluxbox.hh" | 37 | #include "fluxbox.hh" |
32 | #include "Screen.hh" | 38 | #include "Screen.hh" |
33 | #include "StringUtil.hh" | ||
34 | #include "Netizen.hh" | ||
35 | #include "FbWinFrameTheme.hh" | 39 | #include "FbWinFrameTheme.hh" |
36 | #include "MenuTheme.hh" | 40 | #include "MenuTheme.hh" |
37 | #include "FbTk/TextButton.hh" | ||
38 | #include "EventManager.hh" | ||
39 | #include "FbAtoms.hh" | 41 | #include "FbAtoms.hh" |
40 | #include "RootTheme.hh" | 42 | #include "RootTheme.hh" |
41 | #include "Workspace.hh" | 43 | #include "Workspace.hh" |
@@ -793,14 +795,11 @@ bool FluxboxWindow::removeClient(WinClient &client) { | |||
793 | 795 | ||
794 | /// returns WinClient of window we're searching for | 796 | /// returns WinClient of window we're searching for |
795 | WinClient *FluxboxWindow::findClient(Window win) { | 797 | WinClient *FluxboxWindow::findClient(Window win) { |
796 | std::list<WinClient *>::iterator it = m_clientlist.begin(); | 798 | ClientList::iterator it = find_if(clientList().begin(), |
797 | std::list<WinClient *>::iterator it_end = m_clientlist.end(); | 799 | clientList().end(), |
798 | for (; it != it_end; ++it) { | 800 | FbTk::Compose(bind2nd(equal_to<Window>(), win), |
799 | if ((*it)->window() == win) | 801 | mem_fun(&WinClient::window))); |
800 | return (*it); | 802 | return (it == clientList().end() ? 0 : *it); |
801 | } | ||
802 | // failure | ||
803 | return 0; | ||
804 | } | 803 | } |
805 | 804 | ||
806 | /// raise and focus next client | 805 | /// raise and focus next client |
@@ -2197,10 +2196,8 @@ void FluxboxWindow::propertyNotifyEvent(Atom atom) { | |||
2197 | // TODO: this property notify should be handled by winclient | 2196 | // TODO: this property notify should be handled by winclient |
2198 | // but for now we'll justhave to update all transient info | 2197 | // but for now we'll justhave to update all transient info |
2199 | //bool was_transient = isTransient(); | 2198 | //bool was_transient = isTransient(); |
2200 | ClientList::iterator it = clientList().begin(); | 2199 | for_each(clientList().begin(), clientList().end(), |
2201 | ClientList::iterator it_end = clientList().end(); | 2200 | mem_fun(&WinClient::updateTransientInfo)); |
2202 | for (; it != it_end; it++) | ||
2203 | (*it)->updateTransientInfo(); | ||
2204 | reconfigure(); | 2201 | reconfigure(); |
2205 | // TODO: this is broken whilst we don't know which client | 2202 | // TODO: this is broken whilst we don't know which client |
2206 | // update our layer to be the same layer as our transient for | 2203 | // update our layer to be the same layer as our transient for |