15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2011 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch#include "chrome/browser/ui/views/status_icons/status_tray_linux.h"
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#if !defined(OS_CHROMEOS)
8ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch#include "chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h"
958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#include "ui/views/linux_ui/linux_ui.h"
10ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
11ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben MurdochStatusTrayLinux::StatusTrayLinux() {
12ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch}
13ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
14ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben MurdochStatusTrayLinux::~StatusTrayLinux() {
15ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch}
16ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
17a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)StatusIcon* StatusTrayLinux::CreatePlatformStatusIcon(
18a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)    StatusIconType type,
19a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)    const gfx::ImageSkia& image,
20a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)    const base::string16& tool_tip) {
21a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)  return StatusIconLinuxWrapper::CreateWrappedStatusIcon(image, tool_tip);
22ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch}
23ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
24ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben MurdochStatusTray* StatusTray::Create() {
2558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  const views::LinuxUI* linux_ui = views::LinuxUI::instance();
26ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
27ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  // Only create a status tray if we can actually create status icons.
28ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  if (linux_ui && linux_ui->IsStatusIconSupported())
29ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch    return new StatusTrayLinux();
30ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  return NULL;
31ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch}
3258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#else  // defined(OS_CHROMEOS)
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)StatusTray* StatusTray::Create() {
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  return NULL;
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
36ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch#endif
37