blob: e0e3bec121664055d6a384c790fb505c396b1f9e [file] [log] [blame]
// Copyright 2020 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_ANDROID_FEED_V2_FEED_SERVICE_BRIDGE_H_
#define CHROME_BROWSER_ANDROID_FEED_V2_FEED_SERVICE_BRIDGE_H_
#include <string>
#include "base/android/jni_android.h"
#include "components/feed/core/v2/public/types.h"
#include "components/feed/core/v2/public/unread_content_observer.h"
#include "url/gurl.h"
namespace feed {
// Native access to |FeedServiceBridge| in Java.
class FeedServiceBridge {
public:
static std::string GetLanguageTag();
static DisplayMetrics GetDisplayMetrics();
static void ClearAll();
static bool IsEnabled();
static void PrefetchImage(const GURL& url);
static uint64_t GetReliabilityLoggingId();
};
class JavaUnreadContentObserver : public UnreadContentObserver {
public:
JavaUnreadContentObserver(
base::android::ScopedJavaGlobalRef<jobject> j_observer);
~JavaUnreadContentObserver() override;
void HasUnreadContentChanged(bool has_unread_content) override;
void Destroy(JNIEnv*);
private:
base::android::ScopedJavaGlobalRef<jobject> obj_;
};
} // namespace feed
#endif // CHROME_BROWSER_ANDROID_FEED_V2_FEED_SERVICE_BRIDGE_H_