diff options
author | rathnor <rathnor> | 2002-12-04 14:16:42 (GMT) |
---|---|---|
committer | rathnor <rathnor> | 2002-12-04 14:16:42 (GMT) |
commit | 9acaeba68093d1cb6b9daa3abd64d84af99413e5 (patch) | |
tree | 9de1d67b59fa39aa4576670bb457741995935dd8 /src | |
parent | 16e45f8be9b6fe312d6c5fa089c3ed40455203ba (diff) | |
download | fluxbox-9acaeba68093d1cb6b9daa3abd64d84af99413e5.zip fluxbox-9acaeba68093d1cb6b9daa3abd64d84af99413e5.tar.bz2 |
fixing indentation due to ifdef (and resulting unbalanced brackets).
Diffstat (limited to 'src')
-rw-r--r-- | src/Workspace.cc | 482 |
1 files changed, 241 insertions, 241 deletions
diff --git a/src/Workspace.cc b/src/Workspace.cc index 4cc098f..3c7ce96 100644 --- a/src/Workspace.cc +++ b/src/Workspace.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: Workspace.cc,v 1.37 2002/12/01 13:42:05 rathnor Exp $ | 25 | // $Id: Workspace.cc,v 1.38 2002/12/04 14:16:42 rathnor Exp $ |
26 | 26 | ||
27 | #include "Workspace.hh" | 27 | #include "Workspace.hh" |
28 | 28 | ||
@@ -447,8 +447,8 @@ void Workspace::setName(const std::string &name) { | |||
447 | char tname[128]; | 447 | char tname[128]; |
448 | sprintf(tname, I18n::instance()-> | 448 | sprintf(tname, I18n::instance()-> |
449 | getMessage( | 449 | getMessage( |
450 | FBNLS::WorkspaceSet, FBNLS::WorkspaceDefaultNameFormat, | 450 | FBNLS::WorkspaceSet, FBNLS::WorkspaceDefaultNameFormat, |
451 | "Workspace %d"), m_id + 1); //m_id starts at 0 | 451 | "Workspace %d"), m_id + 1); //m_id starts at 0 |
452 | m_name = tname; | 452 | m_name = tname; |
453 | } | 453 | } |
454 | 454 | ||
@@ -543,327 +543,327 @@ void Workspace::placeWindow(FluxboxWindow *win) { | |||
543 | 543 | ||
544 | while (((screen->getColPlacementDirection() == BScreen::BOTTOMTOP) ? | 544 | while (((screen->getColPlacementDirection() == BScreen::BOTTOMTOP) ? |
545 | #ifdef XINERAMA | 545 | #ifdef XINERAMA |
546 | test_y >= head_y : test_y + win_h <= (head_y + head_h)) && | 546 | test_y >= head_y : test_y + win_h <= (head_y + head_h) |
547 | #else // !XINERAMA | 547 | #else // !XINERAMA |
548 | test_y > 0 : test_y + win_h < (signed) screen->getHeight()) && | 548 | test_y > 0 : test_y + win_h < (signed) screen->getHeight() |
549 | #endif // XINERAMA | 549 | #endif // XINERAMA |
550 | ! placed) { | 550 | ) && ! placed) { |
551 | 551 | ||
552 | #ifdef XINERAMA | 552 | #ifdef XINERAMA |
553 | test_x = head_x; | 553 | test_x = head_x; |
554 | #else // !XINERAMA | 554 | #else // !XINERAMA |
555 | test_x = 0; | 555 | test_x = 0; |
556 | #endif // XINERAMA | 556 | #endif // XINERAMA |
557 | if (screen->getRowPlacementDirection() == BScreen::RIGHTLEFT) | 557 | if (screen->getRowPlacementDirection() == BScreen::RIGHTLEFT) |
558 | #ifdef XINERAMA | 558 | #ifdef XINERAMA |
559 | test_x = (head_x + head_w) - win_w - test_x; | 559 | test_x = (head_x + head_w) - win_w - test_x; |
560 | #else // !XINERAMA | 560 | #else // !XINERAMA |
561 | test_x = screen->getWidth() - win_w - test_x; | 561 | test_x = screen->getWidth() - win_w - test_x; |
562 | #endif // XINERAMA | 562 | #endif // XINERAMA |
563 | 563 | ||
564 | while (((screen->getRowPlacementDirection() == BScreen::RIGHTLEFT) ? | 564 | while (((screen->getRowPlacementDirection() == BScreen::RIGHTLEFT) ? |
565 | #ifdef XINERAMA | 565 | #ifdef XINERAMA |
566 | test_x >= head_x : test_x + win_w <= (head_x + head_w)) && | 566 | test_x >= head_x : test_x + win_w <= (head_x + head_w) |
567 | #else // !XINERAMA | 567 | #else // !XINERAMA |
568 | test_x > 0 : test_x + win_w < (signed) screen->getWidth()) && | 568 | test_x > 0 : test_x + win_w < (signed) screen->getWidth() |
569 | #endif // XINERAMA | 569 | #endif // XINERAMA |
570 | ! placed) { | 570 | ) && ! placed) { |
571 | 571 | ||
572 | placed = True; | 572 | placed = True; |
573 | 573 | ||
574 | Windows::iterator it = m_windowlist.begin(); | 574 | Windows::iterator it = m_windowlist.begin(); |
575 | Windows::iterator it_end = m_windowlist.end(); | 575 | Windows::iterator it_end = m_windowlist.end(); |
576 | 576 | ||
577 | for (; it != it_end && placed; ++it) { | 577 | for (; it != it_end && placed; ++it) { |
578 | curr_x = (*it)->getXFrame(); | 578 | curr_x = (*it)->getXFrame(); |
579 | curr_y = (*it)->getYFrame(); | 579 | curr_y = (*it)->getYFrame(); |
580 | curr_w = (*it)->getWidth() + screen->getBorderWidth2x(); | 580 | curr_w = (*it)->getWidth() + screen->getBorderWidth2x(); |
581 | curr_h = | 581 | curr_h = |
582 | (((*it)->isShaded()) | 582 | (((*it)->isShaded()) |
583 | ? (*it)->getTitleHeight() | 583 | ? (*it)->getTitleHeight() |
584 | : (*it)->getHeight()) + | 584 | : (*it)->getHeight()) + |
585 | screen->getBorderWidth2x(); | 585 | screen->getBorderWidth2x(); |
586 | 586 | ||
587 | if ((*it)->hasTab()) { | 587 | if ((*it)->hasTab()) { |
588 | if (! (*it)->isShaded()) { // not shaded window | 588 | if (! (*it)->isShaded()) { // not shaded window |
589 | switch(screen->getTabPlacement()) { | 589 | switch(screen->getTabPlacement()) { |
590 | case Tab::PTOP: | 590 | case Tab::PTOP: |
591 | curr_y -= screen->getTabHeight(); | 591 | curr_y -= screen->getTabHeight(); |
592 | case Tab::PBOTTOM: | 592 | case Tab::PBOTTOM: |
593 | curr_h += screen->getTabHeight(); | 593 | curr_h += screen->getTabHeight(); |
594 | break; | 594 | break; |
595 | case Tab::PLEFT: | 595 | case Tab::PLEFT: |
596 | curr_x -= (screen->isTabRotateVertical()) | 596 | curr_x -= (screen->isTabRotateVertical()) |
597 | ? screen->getTabHeight() | 597 | ? screen->getTabHeight() |
598 | : screen->getTabWidth(); | 598 | : screen->getTabWidth(); |
599 | case Tab::PRIGHT: | 599 | case Tab::PRIGHT: |
600 | curr_w += (screen->isTabRotateVertical()) | 600 | curr_w += (screen->isTabRotateVertical()) |
601 | ? screen->getTabHeight() | 601 | ? screen->getTabHeight() |
602 | : screen->getTabWidth(); | 602 | : screen->getTabWidth(); |
603 | break; | 603 | break; |
604 | case Tab::PNONE: | 604 | case Tab::PNONE: |
605 | break; | 605 | break; |
606 | } | 606 | } |
607 | } else { // shaded window | 607 | } else { // shaded window |
608 | if (screen->getTabPlacement() == Tab::PTOP) | 608 | if (screen->getTabPlacement() == Tab::PTOP) |
609 | curr_y -= screen->getTabHeight(); | 609 | curr_y -= screen->getTabHeight(); |
610 | curr_h += screen->getTabHeight(); | 610 | curr_h += screen->getTabHeight(); |
611 | } | 611 | } |
612 | } // tab cheking done | 612 | } // tab cheking done |
613 | 613 | ||
614 | if (curr_x < test_x + win_w && | 614 | if (curr_x < test_x + win_w && |
615 | curr_x + curr_w > test_x && | 615 | curr_x + curr_w > test_x && |
616 | curr_y < test_y + win_h && | 616 | curr_y < test_y + win_h && |
617 | curr_y + curr_h > test_y) { | 617 | curr_y + curr_h > test_y) { |
618 | placed = False; | 618 | placed = False; |
619 | } | 619 | } |
620 | } | 620 | } |
621 | 621 | ||
622 | if ((toolbar_x < test_x + win_w && | 622 | if ((toolbar_x < test_x + win_w && |
623 | toolbar_x + toolbar_w > test_x && | 623 | toolbar_x + toolbar_w > test_x && |
624 | toolbar_y < test_y + win_h && | 624 | toolbar_y < test_y + win_h && |
625 | toolbar_y + toolbar_h > test_y) | 625 | toolbar_y + toolbar_h > test_y) |
626 | #ifdef SLIT | 626 | #ifdef SLIT |
627 | || | 627 | || |
628 | (slit_x < test_x + win_w && | 628 | (slit_x < test_x + win_w && |
629 | slit_x + slit_w > test_x && | 629 | slit_x + slit_w > test_x && |
630 | slit_y < test_y + win_h && | 630 | slit_y < test_y + win_h && |
631 | slit_y + slit_h > test_y) | 631 | slit_y + slit_h > test_y) |
632 | #endif // SLIT | 632 | #endif // SLIT |
633 | ) | 633 | ) |
634 | placed = False; | 634 | placed = False; |
635 | 635 | ||
636 | if (placed) { | 636 | if (placed) { |
637 | place_x = test_x; | 637 | place_x = test_x; |
638 | place_y = test_y; | 638 | place_y = test_y; |
639 | 639 | ||
640 | break; | 640 | break; |
641 | } | 641 | } |
642 | 642 | ||
643 | test_x += change_x; | 643 | test_x += change_x; |
644 | } | 644 | } |
645 | 645 | ||
646 | test_y += change_y; | 646 | test_y += change_y; |
647 | } | 647 | } |
648 | 648 | ||
649 | break; } | 649 | break; } |
650 | 650 | ||
651 | case BScreen::COLSMARTPLACEMENT: { | 651 | case BScreen::COLSMARTPLACEMENT: { |
652 | #ifdef XINERAMA | 652 | #ifdef XINERAMA |
653 | test_x = head_x; | 653 | test_x = head_x; |
654 | #else // !XINERAMA | 654 | #else // !XINERAMA |
655 | test_x = 0; | 655 | test_x = 0; |
656 | #endif // XINERAMA | 656 | #endif // XINERAMA |
657 | if (screen->getRowPlacementDirection() == BScreen::RIGHTLEFT) | 657 | if (screen->getRowPlacementDirection() == BScreen::RIGHTLEFT) |
658 | #ifdef XINERAMA | 658 | #ifdef XINERAMA |
659 | test_x = (head_x + head_w) - win_w - test_x; | 659 | test_x = (head_x + head_w) - win_w - test_x; |
660 | #else // !XINERAMA | 660 | #else // !XINERAMA |
661 | test_x = screen->getWidth() - win_w - test_x; | 661 | test_x = screen->getWidth() - win_w - test_x; |
662 | #endif // XINERAMA | 662 | #endif // XINERAMA |
663 | 663 | ||
664 | while (((screen->getRowPlacementDirection() == BScreen::RIGHTLEFT) ? | 664 | while (((screen->getRowPlacementDirection() == BScreen::RIGHTLEFT) ? |
665 | #ifdef XINERAMA | 665 | #ifdef XINERAMA |
666 | test_x >= 0 : test_x + win_w <= (head_x + head_w)) && | 666 | test_x >= 0 : test_x + win_w <= (head_x + head_w) |
667 | #else // !XINERAMA | 667 | #else // !XINERAMA |
668 | test_x > 0 : test_x + win_w < (signed) screen->getWidth()) && | 668 | test_x > 0 : test_x + win_w < (signed) screen->getWidth() |
669 | #endif // XINERAMA | 669 | #endif // XINERAMA |
670 | ! placed) { | 670 | ) && ! placed) { |
671 | 671 | ||
672 | #ifdef XINERAMA | 672 | #ifdef XINERAMA |
673 | test_y = head_y; | 673 | test_y = head_y; |
674 | #else // !XINERAMA | 674 | #else // !XINERAMA |
675 | test_y = 0; | 675 | test_y = 0; |
676 | #endif // XINERAMA | 676 | #endif // XINERAMA |
677 | if (screen->getColPlacementDirection() == BScreen::BOTTOMTOP) | 677 | if (screen->getColPlacementDirection() == BScreen::BOTTOMTOP) |
678 | #ifdef XINERAMA | 678 | #ifdef XINERAMA |
679 | test_y = (head_y + head_h) - win_h - test_y; | 679 | test_y = (head_y + head_h) - win_h - test_y; |
680 | #else // !XINERAMA | 680 | #else // !XINERAMA |
681 | test_y = screen->getHeight() - win_h - test_y; | 681 | test_y = screen->getHeight() - win_h - test_y; |
682 | #endif // XINERAMA | 682 | #endif // XINERAMA |
683 | 683 | ||
684 | while (((screen->getColPlacementDirection() == BScreen::BOTTOMTOP) ? | 684 | while (((screen->getColPlacementDirection() == BScreen::BOTTOMTOP) ? |
685 | #ifdef XINERAMA | 685 | #ifdef XINERAMA |
686 | test_y >= head_y : test_y + win_h <= (head_y + head_h)) && | 686 | test_y >= head_y : test_y + win_h <= (head_y + head_h) |
687 | #else // !XINERAMA | 687 | #else // !XINERAMA |
688 | test_y > 0 : test_y + win_h < (signed) screen->getHeight()) && | 688 | test_y > 0 : test_y + win_h < (signed) screen->getHeight() |
689 | #endif // XINERAMA | 689 | #endif // XINERAMA |
690 | ! placed) { | 690 | ) && ! placed) { |
691 | placed = True; | 691 | placed = True; |
692 | 692 | ||
693 | Windows::iterator it = m_windowlist.begin(); | 693 | Windows::iterator it = m_windowlist.begin(); |
694 | Windows::iterator it_end = m_windowlist.end(); | 694 | Windows::iterator it_end = m_windowlist.end(); |
695 | for (; it != it_end && placed; ++it) { | 695 | for (; it != it_end && placed; ++it) { |
696 | curr_x = (*it)->getXFrame(); | 696 | curr_x = (*it)->getXFrame(); |
697 | curr_y = (*it)->getYFrame(); | 697 | curr_y = (*it)->getYFrame(); |
698 | curr_w = (*it)->getWidth() + screen->getBorderWidth2x(); | 698 | curr_w = (*it)->getWidth() + screen->getBorderWidth2x(); |
699 | curr_h = | 699 | curr_h = |
700 | (((*it)->isShaded()) | 700 | (((*it)->isShaded()) |
701 | ? (*it)->getTitleHeight() | 701 | ? (*it)->getTitleHeight() |
702 | : (*it)->getHeight()) + | 702 | : (*it)->getHeight()) + |
703 | screen->getBorderWidth2x();; | 703 | screen->getBorderWidth2x();; |
704 | 704 | ||
705 | if ((*it)->hasTab()) { | 705 | if ((*it)->hasTab()) { |
706 | if (! (*it)->isShaded()) { // not shaded window | 706 | if (! (*it)->isShaded()) { // not shaded window |
707 | switch(screen->getTabPlacement()) { | 707 | switch(screen->getTabPlacement()) { |
708 | case Tab::PTOP: | 708 | case Tab::PTOP: |
709 | curr_y -= screen->getTabHeight(); | 709 | curr_y -= screen->getTabHeight(); |
710 | case Tab::PBOTTOM: | 710 | case Tab::PBOTTOM: |
711 | curr_h += screen->getTabHeight(); | 711 | curr_h += screen->getTabHeight(); |
712 | break; | 712 | break; |
713 | case Tab::PLEFT: | 713 | case Tab::PLEFT: |
714 | curr_x -= (screen->isTabRotateVertical()) | 714 | curr_x -= (screen->isTabRotateVertical()) |
715 | ? screen->getTabHeight() | 715 | ? screen->getTabHeight() |
716 | : screen->getTabWidth(); | 716 | : screen->getTabWidth(); |
717 | case Tab::PRIGHT: | 717 | case Tab::PRIGHT: |
718 | curr_w += (screen->isTabRotateVertical()) | 718 | curr_w += (screen->isTabRotateVertical()) |
719 | ? screen->getTabHeight() | 719 | ? screen->getTabHeight() |
720 | : screen->getTabWidth(); | 720 | : screen->getTabWidth(); |
721 | break; | 721 | break; |
722 | default: | 722 | default: |
723 | #ifdef DEBUG | 723 | #ifdef DEBUG |
724 | cerr << __FILE__ << ":" <<__LINE__ << ": " << | 724 | cerr << __FILE__ << ":" <<__LINE__ << ": " << |
725 | "Unsupported Placement" << endl; | 725 | "Unsupported Placement" << endl; |
726 | #endif // DEBUG | 726 | #endif // DEBUG |
727 | break; | 727 | break; |
728 | } | ||
729 | } else { // shaded window | ||
730 | if (screen->getTabPlacement() == Tab::PTOP) | ||
731 | curr_y -= screen->getTabHeight(); | ||
732 | curr_h += screen->getTabHeight(); | ||
733 | } | ||
734 | } // tab cheking done | ||
735 | |||
736 | if (curr_x < test_x + win_w && | ||
737 | curr_x + curr_w > test_x && | ||
738 | curr_y < test_y + win_h && | ||
739 | curr_y + curr_h > test_y) { | ||
740 | placed = False; | ||
741 | } | ||
728 | } | 742 | } |
729 | } else { // shaded window | ||
730 | if (screen->getTabPlacement() == Tab::PTOP) | ||
731 | curr_y -= screen->getTabHeight(); | ||
732 | curr_h += screen->getTabHeight(); | ||
733 | } | ||
734 | } // tab cheking done | ||
735 | |||
736 | if (curr_x < test_x + win_w && | ||
737 | curr_x + curr_w > test_x && | ||
738 | curr_y < test_y + win_h && | ||
739 | curr_y + curr_h > test_y) { | ||
740 | placed = False; | ||
741 | } | ||
742 | } | ||
743 | 743 | ||
744 | if ((toolbar_x < test_x + win_w && | 744 | if ((toolbar_x < test_x + win_w && |
745 | toolbar_x + toolbar_w > test_x && | 745 | toolbar_x + toolbar_w > test_x && |
746 | toolbar_y < test_y + win_h && | 746 | toolbar_y < test_y + win_h && |
747 | toolbar_y + toolbar_h > test_y) | 747 | toolbar_y + toolbar_h > test_y) |
748 | #ifdef SLIT | 748 | #ifdef SLIT |
749 | || | 749 | || |
750 | (slit_x < test_x + win_w && | 750 | (slit_x < test_x + win_w && |
751 | slit_x + slit_w > test_x && | 751 | slit_x + slit_w > test_x && |
752 | slit_y < test_y + win_h && | 752 | slit_y < test_y + win_h && |
753 | slit_y + slit_h > test_y) | 753 | slit_y + slit_h > test_y) |
754 | #endif // SLIT | 754 | #endif // SLIT |
755 | ) | 755 | ) |
756 | placed = False; | 756 | placed = False; |
757 | 757 | ||
758 | if (placed) { | 758 | if (placed) { |
759 | place_x = test_x; | 759 | place_x = test_x; |
760 | place_y = test_y; | 760 | place_y = test_y; |
761 | } | 761 | } |
762 | 762 | ||
763 | test_y += change_y; | 763 | test_y += change_y; |
764 | } | 764 | } |
765 | 765 | ||
766 | test_x += change_x; | 766 | test_x += change_x; |
767 | } | 767 | } |
768 | 768 | ||
769 | break; } | 769 | break; } |
770 | } | 770 | } |
771 | 771 | ||
772 | // cascade placement or smart placement failed | 772 | // cascade placement or smart placement failed |
773 | if (! placed) { | 773 | if (! placed) { |
774 | #ifdef XINERAMA | 774 | #ifdef XINERAMA |
775 | if ((cascade_x > (head_w / 2)) || | 775 | if ((cascade_x > (head_w / 2)) || |
776 | (cascade_y > (head_h / 2))) | 776 | (cascade_y > (head_h / 2))) |
777 | #else // !XINERAMA | 777 | #else // !XINERAMA |
778 | if (((unsigned) cascade_x > (screen->getWidth() / 2)) || | 778 | if (((unsigned) cascade_x > (screen->getWidth() / 2)) || |
779 | ((unsigned) cascade_y > (screen->getHeight() / 2))) | 779 | ((unsigned) cascade_y > (screen->getHeight() / 2))) |
780 | #endif // XINERAMA | 780 | #endif // XINERAMA |
781 | 781 | ||
782 | cascade_x = cascade_y = 32; | 782 | cascade_x = cascade_y = 32; |
783 | #ifdef XINERAMA | 783 | #ifdef XINERAMA |
784 | place_x = head_x + cascade_x; | 784 | place_x = head_x + cascade_x; |
785 | place_y = head_y + cascade_y; | 785 | place_y = head_y + cascade_y; |
786 | #else // !XINERAMA | 786 | #else // !XINERAMA |
787 | place_x = cascade_x; | 787 | place_x = cascade_x; |
788 | place_y = cascade_y; | 788 | place_y = cascade_y; |
789 | #endif // XINERAMA | 789 | #endif // XINERAMA |
790 | cascade_x += win->getTitleHeight(); | 790 | cascade_x += win->getTitleHeight(); |
791 | cascade_y += win->getTitleHeight(); | 791 | cascade_y += win->getTitleHeight(); |
792 | } | 792 | } |
793 | 793 | ||
794 | #ifdef XINERAMA | 794 | #ifdef XINERAMA |
795 | if (place_x + win_w > (head_x + head_w)) | 795 | if (place_x + win_w > (head_x + head_w)) |
796 | place_x = head_x + ((head_w - win_w) / 2); | 796 | place_x = head_x + ((head_w - win_w) / 2); |
797 | if (place_y + win_h > (head_y + head_h)) | 797 | if (place_y + win_h > (head_y + head_h)) |
798 | place_y = head_y + ((head_h - win_h) / 2); | 798 | place_y = head_y + ((head_h - win_h) / 2); |
799 | #else // !XINERAMA | 799 | #else // !XINERAMA |
800 | if (place_x + win_w > (signed) screen->getWidth()) | 800 | if (place_x + win_w > (signed) screen->getWidth()) |
801 | place_x = (((signed) screen->getWidth()) - win_w) / 2; | 801 | place_x = (((signed) screen->getWidth()) - win_w) / 2; |
802 | if (place_y + win_h > (signed) screen->getHeight()) | 802 | if (place_y + win_h > (signed) screen->getHeight()) |
803 | place_y = (((signed) screen->getHeight()) - win_h) / 2; | 803 | place_y = (((signed) screen->getHeight()) - win_h) / 2; |
804 | #endif // XINERAMA | 804 | #endif // XINERAMA |
805 | 805 | ||
806 | // fix window placement, think of tabs | 806 | // fix window placement, think of tabs |
807 | if (win->hasTab()) { | 807 | if (win->hasTab()) { |
808 | if (screen->getTabPlacement() == Tab::PTOP) | 808 | if (screen->getTabPlacement() == Tab::PTOP) |
809 | place_y += screen->getTabHeight(); | 809 | place_y += screen->getTabHeight(); |
810 | else if (screen->getTabPlacement() == Tab::PLEFT) | 810 | else if (screen->getTabPlacement() == Tab::PLEFT) |
811 | place_x += (screen->isTabRotateVertical()) | 811 | place_x += (screen->isTabRotateVertical()) |
812 | ? screen->getTabHeight() | 812 | ? screen->getTabHeight() |
813 | : screen->getTabWidth(); | 813 | : screen->getTabWidth(); |
814 | } | 814 | } |
815 | 815 | ||
816 | win->configure(place_x, place_y, win->getWidth(), win->getHeight()); | 816 | win->configure(place_x, place_y, win->getWidth(), win->getHeight()); |
817 | } | 817 | } |
818 | 818 | ||
819 | 819 | ||
820 | void Workspace::raiseAndFillStack(Stack::iterator &stackit, const FluxboxWindow &w) { | 820 | void Workspace::raiseAndFillStack(Stack::iterator &stackit, const FluxboxWindow &w) { |
821 | if (w.getTransients().empty()) | 821 | if (w.getTransients().empty()) |
822 | return; | 822 | return; |
823 | 823 | ||
824 | std::list<FluxboxWindow *>::const_iterator it = w.getTransients().begin(); | 824 | std::list<FluxboxWindow *>::const_iterator it = w.getTransients().begin(); |
825 | std::list<FluxboxWindow *>::const_iterator it_end = w.getTransients().end(); | 825 | std::list<FluxboxWindow *>::const_iterator it_end = w.getTransients().end(); |
826 | for (; it != it_end; ++it) { | 826 | for (; it != it_end; ++it) { |
827 | *stackit++ = (*it)->getFrameWindow(); | 827 | *stackit++ = (*it)->getFrameWindow(); |
828 | 828 | ||
829 | screen->updateNetizenWindowRaise((*it)->getClientWindow()); | 829 | screen->updateNetizenWindowRaise((*it)->getClientWindow()); |
830 | 830 | ||
831 | if (! (*it)->isIconic()) { | 831 | if (! (*it)->isIconic()) { |
832 | Workspace *wkspc = screen->getWorkspace((*it)->getWorkspaceNumber()); | 832 | Workspace *wkspc = screen->getWorkspace((*it)->getWorkspaceNumber()); |
833 | wkspc->stackingList.remove((*it)); | 833 | wkspc->stackingList.remove((*it)); |
834 | wkspc->stackingList.push_front((*it)); | 834 | wkspc->stackingList.push_front((*it)); |
835 | } | 835 | } |
836 | 836 | ||
837 | 837 | ||
838 | } | 838 | } |
839 | 839 | ||
840 | it = w.getTransients().begin(); | 840 | it = w.getTransients().begin(); |
841 | for (; it != it_end; ++it) | 841 | for (; it != it_end; ++it) |
842 | raiseAndFillStack(stackit, *(*it)); | 842 | raiseAndFillStack(stackit, *(*it)); |
843 | 843 | ||
844 | 844 | ||
845 | } | 845 | } |
846 | 846 | ||
847 | void Workspace::lowerAndFillStack(Stack::iterator &stackit, const FluxboxWindow &win) { | 847 | void Workspace::lowerAndFillStack(Stack::iterator &stackit, const FluxboxWindow &win) { |
848 | if (win.getTransients().empty()) // nothing to lower and stack | 848 | if (win.getTransients().empty()) // nothing to lower and stack |
849 | return; | 849 | return; |
850 | 850 | ||
851 | std::list<FluxboxWindow *>::const_reverse_iterator it = win.getTransients().rbegin(); | 851 | std::list<FluxboxWindow *>::const_reverse_iterator it = win.getTransients().rbegin(); |
852 | std::list<FluxboxWindow *>::const_reverse_iterator it_end = win.getTransients().rend(); | 852 | std::list<FluxboxWindow *>::const_reverse_iterator it_end = win.getTransients().rend(); |
853 | for (; it != it_end; ++it) | 853 | for (; it != it_end; ++it) |
854 | lowerAndFillStack(stackit, *(*it)); | 854 | lowerAndFillStack(stackit, *(*it)); |
855 | 855 | ||
856 | it = win.getTransients().rbegin(); | 856 | it = win.getTransients().rbegin(); |
857 | 857 | ||
858 | for (; it != it_end; ++it) { | 858 | for (; it != it_end; ++it) { |
859 | (*stackit) = (*it)->getFrameWindow(); | 859 | (*stackit) = (*it)->getFrameWindow(); |
860 | ++stackit; | 860 | ++stackit; |
861 | screen->updateNetizenWindowLower((*it)->getClientWindow()); | 861 | screen->updateNetizenWindowLower((*it)->getClientWindow()); |
862 | if (! (*it)->isIconic()) { | 862 | if (! (*it)->isIconic()) { |
863 | Workspace *wkspc = screen->getWorkspace((*it)->getWorkspaceNumber()); | 863 | Workspace *wkspc = screen->getWorkspace((*it)->getWorkspaceNumber()); |
864 | wkspc->stackingList.remove((*it)); | 864 | wkspc->stackingList.remove((*it)); |
865 | wkspc->stackingList.push_back((*it)); | 865 | wkspc->stackingList.push_back((*it)); |
866 | } | 866 | } |
867 | } | 867 | } |
868 | 868 | ||
869 | } | 869 | } |