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

Side by Side Diff: third_party/WebKit/Source/core/frame/UseCounter.cpp

Issue 1585383003: Add deprecation message for -webkit-background-composite (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Google, Inc. All rights reserved. 2 * Copyright (C) 2012 Google, 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 688 matching lines...) Expand 10 before | Expand all | Expand 10 after
699 if (!host) 699 if (!host)
700 return; 700 return;
701 701
702 if (!host->useCounter().hasRecordedMeasurement(feature)) { 702 if (!host->useCounter().hasRecordedMeasurement(feature)) {
703 host->useCounter().recordMeasurement(feature); 703 host->useCounter().recordMeasurement(feature);
704 ASSERT(!deprecationMessage(feature).isEmpty()); 704 ASSERT(!deprecationMessage(feature).isEmpty());
705 frame->console().addMessage(ConsoleMessage::create(DeprecationMessageSou rce, WarningMessageLevel, deprecationMessage(feature))); 705 frame->console().addMessage(ConsoleMessage::create(DeprecationMessageSou rce, WarningMessageLevel, deprecationMessage(feature)));
706 } 706 }
707 } 707 }
708 708
709 void UseCounter::showDeprecationWarning(const LocalFrame* frame, CSSPropertyID c ssPropertyID)
710 {
711 if (!frame || !frame->host())
712 return;
713
714 String message = deprecationMessage(cssPropertyID);
715 if (!message.isEmpty())
716 frame->console().addMessage(ConsoleMessage::create(DeprecationMessageSou rce, WarningMessageLevel, message));
717 }
718
709 void UseCounter::countDeprecation(ExecutionContext* context, Feature feature) 719 void UseCounter::countDeprecation(ExecutionContext* context, Feature feature)
710 { 720 {
711 if (!context) 721 if (!context)
712 return; 722 return;
713 if (context->isDocument()) { 723 if (context->isDocument()) {
714 UseCounter::countDeprecation(*toDocument(context), feature); 724 UseCounter::countDeprecation(*toDocument(context), feature);
715 return; 725 return;
716 } 726 }
717 if (context->isWorkerGlobalScope()) 727 if (context->isWorkerGlobalScope())
718 toWorkerGlobalScope(context)->countDeprecation(feature); 728 toWorkerGlobalScope(context)->countDeprecation(feature);
719 } 729 }
720 730
721 void UseCounter::countDeprecation(const Document& document, Feature feature) 731 void UseCounter::countDeprecation(const Document& document, Feature feature)
722 { 732 {
723 UseCounter::countDeprecation(document.frame(), feature); 733 UseCounter::countDeprecation(document.frame(), feature);
724 } 734 }
725 735
726 void UseCounter::countDeprecationIfNotPrivateScript(v8::Isolate* isolate, Execut ionContext* context, Feature feature) 736 void UseCounter::countDeprecationIfNotPrivateScript(v8::Isolate* isolate, Execut ionContext* context, Feature feature)
727 { 737 {
728 if (DOMWrapperWorld::current(isolate).isPrivateScriptIsolatedWorld()) 738 if (DOMWrapperWorld::current(isolate).isPrivateScriptIsolatedWorld())
729 return; 739 return;
730 UseCounter::countDeprecation(context, feature); 740 UseCounter::countDeprecation(context, feature);
731 } 741 }
732 742
733 static const char* milestoneString(int milestone) 743 static const char* milestoneString(int milestone)
734 { 744 {
735 switch (milestone) { 745 switch (milestone) {
736 case 50: 746 case 50:
737 return "M50, around April 2016"; 747 return "M50, around April 2016";
748 case 51:
749 return "M51, around June 2016";
738 case 53: 750 case 53:
739 return "M53, around September 2016"; 751 return "M53, around September 2016";
740 } 752 }
741 753
742 ASSERT_NOT_REACHED(); 754 ASSERT_NOT_REACHED();
743 return nullptr; 755 return nullptr;
744 } 756 }
745 757
746 static String replacedBy(const char* feature, const char* replacement) 758 static String replacedBy(const char* feature, const char* replacement)
747 { 759 {
748 return String::format("%s is deprecated. Please use %s instead.", feature, r eplacement); 760 return String::format("%s is deprecated. Please use %s instead.", feature, r eplacement);
749 } 761 }
750 762
751 static String willBeRemoved(const char* feature, int milestone, const char* deta ils) 763 static String willBeRemoved(const char* feature, int milestone, const char* deta ils)
752 { 764 {
753 return String::format("%s is deprecated and will be removed in %s. See https ://www.chromestatus.com/features/%s for more details.", feature, milestoneString (milestone), details); 765 return String::format("%s is deprecated and will be removed in %s. See https ://www.chromestatus.com/features/%s for more details.", feature, milestoneString (milestone), details);
754 } 766 }
755 767
756 static String replacedWillBeRemoved(const char* feature, const char* replacement , int milestone, const char* details) 768 static String replacedWillBeRemoved(const char* feature, const char* replacement , int milestone, const char* details)
757 { 769 {
758 return String::format("%s is deprecated and will be removed in %s. Please us e %s instead. See https://www.chromestatus.com/features/%s for more details.", f eature, milestoneString(milestone), replacement, details); 770 return String::format("%s is deprecated and will be removed in %s. Please us e %s instead. See https://www.chromestatus.com/features/%s for more details.", f eature, milestoneString(milestone), replacement, details);
759 } 771 }
760 772
773 String UseCounter::deprecationMessage(CSSPropertyID cssPropertyID)
774 {
775 switch (cssPropertyID) {
776 case CSSPropertyWebkitBackgroundComposite:
777 return willBeRemoved("'-webkit-background-composite'", 51, "660729945600 8192");
778 default:
779 return emptyString();
780 }
781 }
782
761 String UseCounter::deprecationMessage(Feature feature) 783 String UseCounter::deprecationMessage(Feature feature)
762 { 784 {
763 switch (feature) { 785 switch (feature) {
764 // Quota 786 // Quota
765 case PrefixedStorageInfo: 787 case PrefixedStorageInfo:
766 return replacedBy("'window.webkitStorageInfo'", "'navigator.webkitTempor aryStorage' or 'navigator.webkitPersistentStorage'"); 788 return replacedBy("'window.webkitStorageInfo'", "'navigator.webkitTempor aryStorage' or 'navigator.webkitPersistentStorage'");
767 789
768 // Keyboard Event (DOM Level 3) 790 // Keyboard Event (DOM Level 3)
769 case KeyboardEventKeyLocation: 791 case KeyboardEventKeyLocation:
770 return replacedWillBeRemoved("'KeyboardEvent.keyLocation'", "'KeyboardEv ent.location'", 50, "4997403308457984"); 792 return replacedWillBeRemoved("'KeyboardEvent.keyLocation'", "'KeyboardEv ent.location'", 50, "4997403308457984");
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
1017 UseCounter* UseCounter::getFrom(const StyleSheetContents* sheetContents) 1039 UseCounter* UseCounter::getFrom(const StyleSheetContents* sheetContents)
1018 { 1040 {
1019 // FIXME: We may want to handle stylesheets that have multiple owners 1041 // FIXME: We may want to handle stylesheets that have multiple owners
1020 // https://crbug.com/242125 1042 // https://crbug.com/242125
1021 if (sheetContents && sheetContents->hasSingleOwnerNode()) 1043 if (sheetContents && sheetContents->hasSingleOwnerNode())
1022 return getFrom(sheetContents->singleOwnerDocument()); 1044 return getFrom(sheetContents->singleOwnerDocument());
1023 return 0; 1045 return 0;
1024 } 1046 }
1025 1047
1026 } // namespace blink 1048 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698