chromium/chrome/browser/ui/views/commerce/price_tracking_email_dialog_view.cc

// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "chrome/browser/ui/views/commerce/price_tracking_email_dialog_view.h"

#include "base/functional/callback_helpers.h"
#include "base/metrics/user_metrics.h"
#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/bookmarks/bookmark_model_factory.h"
#include "chrome/browser/feature_engagement/tracker_factory.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/signin/identity_manager_factory.h"
#include "chrome/browser/ui/bookmarks/bookmark_editor.h"
#include "chrome/browser/ui/chrome_pages.h"
#include "chrome/browser/ui/scoped_tabbed_browser_displayer.h"
#include "chrome/browser/ui/views/chrome_layout_provider.h"
#include "components/bookmarks/browser/bookmark_model.h"
#include "components/bookmarks/browser/bookmark_utils.h"
#include "components/commerce/core/pref_names.h"
#include "components/commerce/core/price_tracking_utils.h"
#include "components/feature_engagement/public/feature_constants.h"
#include "components/feature_engagement/public/tracker.h"
#include "components/prefs/pref_service.h"
#include "components/signin/public/base/consent_level.h"
#include "components/signin/public/identity_manager/account_info.h"
#include "components/signin/public/identity_manager/identity_manager.h"
#include "components/strings/grit/components_strings.h"
#include "content/public/browser/web_contents.h"
#include "content/public/common/referrer.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/metadata/metadata_impl_macros.h"
#include "ui/base/mojom/dialog_button.mojom.h"
#include "ui/base/window_open_disposition.h"
#include "ui/views/controls/styled_label.h"
#include "ui/views/layout/flex_layout_view.h"
#include "ui/views/view_class_properties.h"
#include "ui/views/view_tracker.h"
#include "ui/views/view_utils.h"

DEFINE_ELEMENT_IDENTIFIER_VALUE(kPriceTrackingEmailConsentDialogId);

namespace {

// The margin separating the two paragraphs in this dialog.
constexpr int kParagraphMargin =;

const char kPriceTrackingHelpLink[] =;

std::unique_ptr<views::StyledLabel> CreateBodyLabel(std::u16string& body_text) {}

}  // namespace

PriceTrackingEmailDialogView::PriceTrackingEmailDialogView(
    View* anchor_view,
    content::WebContents* web_contents,
    Profile* profile)
    :{}

PriceTrackingEmailDialogView::~PriceTrackingEmailDialogView() = default;

void PriceTrackingEmailDialogView::OpenHelpArticle() {}

void PriceTrackingEmailDialogView::OpenSettings() {}

void PriceTrackingEmailDialogView::OnAccepted() {}

void PriceTrackingEmailDialogView::OnCanceled() {}

void PriceTrackingEmailDialogView::OnClosed() {}

BEGIN_METADATA()

// PriceTrackingEmailDialogCoordinator
PriceTrackingEmailDialogCoordinator::PriceTrackingEmailDialogCoordinator(
    views::View* anchor_view)
    :{}

PriceTrackingEmailDialogCoordinator::~PriceTrackingEmailDialogCoordinator() =
    default;

void PriceTrackingEmailDialogCoordinator::OnWidgetDestroying(
    views::Widget* widget) {}

void PriceTrackingEmailDialogCoordinator::Show(
    content::WebContents* web_contents,
    Profile* profile,
    base::OnceClosure on_dialog_closing_callback) {}

void PriceTrackingEmailDialogCoordinator::Hide() {}

PriceTrackingEmailDialogView* PriceTrackingEmailDialogCoordinator::GetBubble()
    const {}

bool PriceTrackingEmailDialogCoordinator::IsShowing() {}