Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(191)

Side by Side Diff: Source/core/rendering/RenderNamedFlowThread.cpp

Issue 22417002: Rename ASSERT_NO_EXCEPTION_STATE and IGNORE_EXCEPTION_STATE (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2012 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 594 matching lines...) Expand 10 before | Expand all | Expand 10 after
605 605
606 LayoutUnit logicalTopForRenderer = region->logicalTopOfFlowThreadCon tentRect(boundingBox); 606 LayoutUnit logicalTopForRenderer = region->logicalTopOfFlowThreadCon tentRect(boundingBox);
607 LayoutUnit logicalBottomForRenderer = region->logicalBottomOfFlowThr eadContentRect(boundingBox); 607 LayoutUnit logicalBottomForRenderer = region->logicalBottomOfFlowThr eadContentRect(boundingBox);
608 608
609 // if the bounding box of the current element doesn't intersect the region box 609 // if the bounding box of the current element doesn't intersect the region box
610 // close the current range only if the start element began inside th e region, 610 // close the current range only if the start element began inside th e region,
611 // otherwise just move the start position after this node and keep s kipping them until we found a proper start position. 611 // otherwise just move the start position after this node and keep s kipping them until we found a proper start position.
612 if (!boxIntersectsRegion(logicalTopForRenderer, logicalBottomForRend erer, logicalTopForRegion, logicalBottomForRegion)) { 612 if (!boxIntersectsRegion(logicalTopForRenderer, logicalBottomForRend erer, logicalTopForRegion, logicalBottomForRegion)) {
613 if (foundStartPosition) { 613 if (foundStartPosition) {
614 if (!startsAboveRegion) { 614 if (!startsAboveRegion) {
615 if (range->intersectsNode(node, IGNORE_EXCEPTION_STATE)) 615 if (range->intersectsNode(node, IGNORE_EXCEPTION))
616 range->setEndBefore(node, IGNORE_EXCEPTION_STATE); 616 range->setEndBefore(node, IGNORE_EXCEPTION);
617 rangeObjects.append(range->cloneRange(IGNORE_EXCEPTION_S TATE)); 617 rangeObjects.append(range->cloneRange(IGNORE_EXCEPTION)) ;
618 range = Range::create(contentNode->document()); 618 range = Range::create(contentNode->document());
619 startsAboveRegion = true; 619 startsAboveRegion = true;
620 } else 620 } else
621 skipOverOutsideNodes = true; 621 skipOverOutsideNodes = true;
622 } 622 }
623 if (skipOverOutsideNodes) 623 if (skipOverOutsideNodes)
624 range->setStartAfter(node, IGNORE_EXCEPTION_STATE); 624 range->setStartAfter(node, IGNORE_EXCEPTION);
625 foundStartPosition = false; 625 foundStartPosition = false;
626 continue; 626 continue;
627 } 627 }
628 628
629 // start position 629 // start position
630 if (logicalTopForRenderer < logicalTopForRegion && startsAboveRegion ) { 630 if (logicalTopForRenderer < logicalTopForRegion && startsAboveRegion ) {
631 if (renderer->isText()) { // Text crosses region top 631 if (renderer->isText()) { // Text crosses region top
632 // for Text elements, just find the last textbox that is con tained inside the region and use its start() offset as start position 632 // for Text elements, just find the last textbox that is con tained inside the region and use its start() offset as start position
633 RenderText* textRenderer = toRenderText(renderer); 633 RenderText* textRenderer = toRenderText(renderer);
634 for (InlineTextBox* box = textRenderer->firstTextBox(); box; box = box->nextTextBox()) { 634 for (InlineTextBox* box = textRenderer->firstTextBox(); box; box = box->nextTextBox()) {
635 if (offsetTop + box->logicalBottom() < logicalTopForRegi on) 635 if (offsetTop + box->logicalBottom() < logicalTopForRegi on)
636 continue; 636 continue;
637 range->setStart(Position(toText(node), box->start())); 637 range->setStart(Position(toText(node), box->start()));
638 startsAboveRegion = false; 638 startsAboveRegion = false;
639 break; 639 break;
640 } 640 }
641 } else { // node crosses region top 641 } else { // node crosses region top
642 // for all elements, except Text, just set the start positio n to be before their children 642 // for all elements, except Text, just set the start positio n to be before their children
643 startsAboveRegion = true; 643 startsAboveRegion = true;
644 range->setStart(Position(node, Position::PositionIsBeforeChi ldren)); 644 range->setStart(Position(node, Position::PositionIsBeforeChi ldren));
645 } 645 }
646 } else { // node starts inside region 646 } else { // node starts inside region
647 // for elements that start inside the region, set the start posi tion to be before them. If we found one, we will just skip the others until 647 // for elements that start inside the region, set the start posi tion to be before them. If we found one, we will just skip the others until
648 // the range is closed. 648 // the range is closed.
649 if (startsAboveRegion) { 649 if (startsAboveRegion) {
650 startsAboveRegion = false; 650 startsAboveRegion = false;
651 range->setStartBefore(node, IGNORE_EXCEPTION_STATE); 651 range->setStartBefore(node, IGNORE_EXCEPTION);
652 } 652 }
653 } 653 }
654 skipOverOutsideNodes = false; 654 skipOverOutsideNodes = false;
655 foundStartPosition = true; 655 foundStartPosition = true;
656 656
657 // end position 657 // end position
658 if (logicalBottomForRegion < logicalBottomForRenderer && (endsBelowR egion || (!endsBelowRegion && !node->isDescendantOf(lastEndNode)))) { 658 if (logicalBottomForRegion < logicalBottomForRenderer && (endsBelowR egion || (!endsBelowRegion && !node->isDescendantOf(lastEndNode)))) {
659 // for Text elements, just find just find the last textbox that is contained inside the region and use its start()+len() offset as end position 659 // for Text elements, just find just find the last textbox that is contained inside the region and use its start()+len() offset as end position
660 if (renderer->isText()) { // Text crosses region bottom 660 if (renderer->isText()) { // Text crosses region bottom
661 RenderText* textRenderer = toRenderText(renderer); 661 RenderText* textRenderer = toRenderText(renderer);
(...skipping 13 matching lines...) Expand all
675 } else { // node crosses region bottom 675 } else { // node crosses region bottom
676 // for all elements, except Text, just set the start positio n to be after their children 676 // for all elements, except Text, just set the start positio n to be after their children
677 range->setEnd(Position(node, Position::PositionIsAfterChildr en)); 677 range->setEnd(Position(node, Position::PositionIsAfterChildr en));
678 endsBelowRegion = true; 678 endsBelowRegion = true;
679 lastEndNode = node; 679 lastEndNode = node;
680 } 680 }
681 } else { // node ends inside region 681 } else { // node ends inside region
682 // for elements that ends inside the region, set the end positio n to be after them 682 // for elements that ends inside the region, set the end positio n to be after them
683 // allow this end position to be changed only by other elements that are not descendants of the current end node 683 // allow this end position to be changed only by other elements that are not descendants of the current end node
684 if (endsBelowRegion || (!endsBelowRegion && !node->isDescendantO f(lastEndNode))) { 684 if (endsBelowRegion || (!endsBelowRegion && !node->isDescendantO f(lastEndNode))) {
685 range->setEndAfter(node, IGNORE_EXCEPTION_STATE); 685 range->setEndAfter(node, IGNORE_EXCEPTION);
686 endsBelowRegion = false; 686 endsBelowRegion = false;
687 lastEndNode = node; 687 lastEndNode = node;
688 } 688 }
689 } 689 }
690 } 690 }
691 if (foundStartPosition || skipOverOutsideNodes) 691 if (foundStartPosition || skipOverOutsideNodes)
692 rangeObjects.append(range); 692 rangeObjects.append(range);
693 } 693 }
694 } 694 }
695 695
696 } 696 }
OLDNEW
« no previous file with comments | « Source/core/rendering/RenderMediaControlsChromium.cpp ('k') | Source/core/rendering/style/SVGRenderStyle.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698