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

Issue 18334003: Linux status icon for Ubuntu Unity (Closed)

Created:
7 years, 5 months ago by sidharthms
Modified:
7 years, 4 months ago
CC:
chromium-reviews, tfarina, oshima+watch_chromium.org, Pete Williamson, Mark Seaborn
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Visibility:
Public.

Description

App Indicator implementation App Indicator has been implemented as part of libgtk2ui (since app indicators use gtk). A StatusIconLinux interface has been created alongside linux_ui interface since we don't want gtk2ui library to depend on the "browser" target (where status_icon.h is). This interface will be used by implementions of linux_ui (e.g. libgtk2ui) to support status icons. AppIndicatorIcon is such an implementation (part of libgtk2ui) which enables app indicator support. App indicators require us to pass in a GtkMenu (they will not be shown without a menu) and so some "tools" have been added to create a GtkMenu from a menu model (similar to GtkMenu implementation). App indicators do not support setting the icon from a pixbuf and so we have to create a temporary icon file and pass in the icon directory to libappindicator. Note: This does not support updating the app indicator menus automatically when the menu-model is changed externally (i.e. if the change is not due to a menu item click). BUG=258651 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=212476

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : Menu destruction check added #

Patch Set 4 : Moved resources #

Patch Set 5 : Oops! wrong cl! restored move #

Patch Set 6 : #

Patch Set 7 : #

Total comments: 13

Patch Set 8 : #

Patch Set 9 : moved skia utils to skia_utils_gtk2 #

Total comments: 14

Patch Set 10 : #

Total comments: 2

Patch Set 11 : #

Patch Set 12 : #

Patch Set 13 : file restored #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+1242 lines, -69 lines) Patch
M chrome/browser/status_icons/status_icon.h View 1 2 3 1 chunk +6 lines, -0 lines 0 comments Download
M chrome/browser/status_icons/status_icon.cc View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
A chrome/browser/ui/libgtk2ui/app_indicator_icon.h View 1 1 chunk +83 lines, -0 lines 0 comments Download
A chrome/browser/ui/libgtk2ui/app_indicator_icon.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +383 lines, -0 lines 0 comments Download
M chrome/browser/ui/libgtk2ui/gtk2_ui.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/ui/libgtk2ui/gtk2_ui.cc View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +24 lines, -0 lines 0 comments Download
M chrome/browser/ui/libgtk2ui/gtk2_util.h View 1 2 3 4 5 6 7 8 3 chunks +21 lines, -3 lines 0 comments Download
M chrome/browser/ui/libgtk2ui/gtk2_util.cc View 1 2 3 4 5 6 7 8 3 chunks +68 lines, -57 lines 3 comments Download
M chrome/browser/ui/libgtk2ui/libgtk2ui.gyp View 2 chunks +4 lines, -0 lines 0 comments Download
A chrome/browser/ui/libgtk2ui/menu_util.h View 1 2 3 4 5 6 7 1 chunk +56 lines, -0 lines 0 comments Download
A chrome/browser/ui/libgtk2ui/menu_util.cc View 1 2 3 4 5 6 7 1 chunk +260 lines, -0 lines 0 comments Download
M chrome/browser/ui/libgtk2ui/skia_utils_gtk2.h View 1 2 3 4 5 6 7 8 2 chunks +10 lines, -0 lines 0 comments Download
M chrome/browser/ui/libgtk2ui/skia_utils_gtk2.cc View 1 2 3 4 5 6 7 8 2 chunks +105 lines, -0 lines 0 comments Download
A chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +51 lines, -0 lines 0 comments Download
A chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.cc View 1 2 3 4 5 6 7 8 9 1 chunk +50 lines, -0 lines 0 comments Download
A + chrome/browser/ui/views/status_icons/status_tray_linux.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +7 lines, -7 lines 0 comments Download
M chrome/browser/ui/views/status_icons/status_tray_linux.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +25 lines, -2 lines 0 comments Download
M chrome/chrome_browser_ui.gypi View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +9 lines, -0 lines 0 comments Download
M ui/linux_ui/linux_ui.h View 1 2 3 4 5 6 7 8 9 2 chunks +7 lines, -0 lines 0 comments Download
M ui/linux_ui/linux_ui.gyp View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
A ui/linux_ui/status_icon_linux.h View 1 2 3 4 5 6 7 8 9 1 chunk +52 lines, -0 lines 0 comments Download
A ui/linux_ui/status_icon_linux.cc View 1 2 3 4 5 6 7 8 9 1 chunk +14 lines, -0 lines 0 comments Download

Messages

Total messages: 22 (0 generated)
sidharthms
7 years, 5 months ago (2013-07-10 21:23:08 UTC) #1
Elliot Glaysher
https://codereview.chromium.org/18334003/diff/21001/chrome/browser/ui/libgtk2ui/app_indicator_icon.cc File chrome/browser/ui/libgtk2ui/app_indicator_icon.cc (right): https://codereview.chromium.org/18334003/diff/21001/chrome/browser/ui/libgtk2ui/app_indicator_icon.cc#newcode22 chrome/browser/ui/libgtk2ui/app_indicator_icon.cc:22: typedef enum {/*< prefix=APP_INDICATOR_CATEGORY >*/ Please remove /* style ...
7 years, 5 months ago (2013-07-10 22:55:03 UTC) #2
sidharthms
https://codereview.chromium.org/18334003/diff/21001/chrome/browser/ui/libgtk2ui/app_indicator_icon.cc File chrome/browser/ui/libgtk2ui/app_indicator_icon.cc (right): https://codereview.chromium.org/18334003/diff/21001/chrome/browser/ui/libgtk2ui/app_indicator_icon.cc#newcode22 chrome/browser/ui/libgtk2ui/app_indicator_icon.cc:22: typedef enum {/*< prefix=APP_INDICATOR_CATEGORY >*/ On 2013/07/10 22:55:03, Elliot ...
7 years, 5 months ago (2013-07-11 05:15:12 UTC) #3
Elliot Glaysher
https://codereview.chromium.org/18334003/diff/21001/chrome/browser/ui/libgtk2ui/gtk2_util.cc File chrome/browser/ui/libgtk2ui/gtk2_util.cc (right): https://codereview.chromium.org/18334003/diff/21001/chrome/browser/ui/libgtk2ui/gtk2_util.cc#newcode95 chrome/browser/ui/libgtk2ui/gtk2_util.cc:95: const SkBitmap GdkPixbufToImageSkia(GdkPixbuf* pixbuf) { On 2013/07/11 05:15:12, sidharthms ...
7 years, 5 months ago (2013-07-11 21:35:08 UTC) #4
sidharthms
https://codereview.chromium.org/18334003/diff/21001/chrome/browser/ui/libgtk2ui/gtk2_util.cc File chrome/browser/ui/libgtk2ui/gtk2_util.cc (right): https://codereview.chromium.org/18334003/diff/21001/chrome/browser/ui/libgtk2ui/gtk2_util.cc#newcode95 chrome/browser/ui/libgtk2ui/gtk2_util.cc:95: const SkBitmap GdkPixbufToImageSkia(GdkPixbuf* pixbuf) { On 2013/07/11 21:35:08, Elliot ...
7 years, 5 months ago (2013-07-12 01:12:14 UTC) #5
Elliot Glaysher
lgtm; please wait for sky and atwilson's lgtms too.
7 years, 5 months ago (2013-07-12 22:37:36 UTC) #6
Pete Williamson
A quick drive by comment... https://codereview.chromium.org/18334003/diff/48001/chrome/browser/ui/libgtk2ui/gtk2_util.cc File chrome/browser/ui/libgtk2ui/gtk2_util.cc (right): https://codereview.chromium.org/18334003/diff/48001/chrome/browser/ui/libgtk2ui/gtk2_util.cc#newcode43 chrome/browser/ui/libgtk2ui/gtk2_util.cc:43: const std::string& target) { ...
7 years, 5 months ago (2013-07-13 00:32:01 UTC) #7
Elliot Glaysher
https://codereview.chromium.org/18334003/diff/48001/chrome/browser/ui/libgtk2ui/gtk2_util.cc File chrome/browser/ui/libgtk2ui/gtk2_util.cc (right): https://codereview.chromium.org/18334003/diff/48001/chrome/browser/ui/libgtk2ui/gtk2_util.cc#newcode43 chrome/browser/ui/libgtk2ui/gtk2_util.cc:43: const std::string& target) { On 2013/07/13 00:32:01, Pete Williamson ...
7 years, 5 months ago (2013-07-15 17:35:41 UTC) #8
sky
https://codereview.chromium.org/18334003/diff/48001/chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h File chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h (right): https://codereview.chromium.org/18334003/diff/48001/chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h#newcode13 chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h:13: class StatusIconLinuxWrapper : public StatusIcon, Description? https://codereview.chromium.org/18334003/diff/48001/chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h#newcode45 chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h:45: }; ...
7 years, 5 months ago (2013-07-15 20:41:09 UTC) #9
sidharthms
https://codereview.chromium.org/18334003/diff/48001/chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h File chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h (right): https://codereview.chromium.org/18334003/diff/48001/chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h#newcode13 chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h:13: class StatusIconLinuxWrapper : public StatusIcon, On 2013/07/15 20:41:10, sky ...
7 years, 5 months ago (2013-07-16 01:12:05 UTC) #10
sky
LGTM
7 years, 5 months ago (2013-07-16 13:15:35 UTC) #11
Andrew T Wilson (Slow)
*/status_icons/* lgtm
7 years, 5 months ago (2013-07-17 14:55:13 UTC) #12
Andrew T Wilson (Slow)
https://codereview.chromium.org/18334003/diff/61001/chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h File chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h (right): https://codereview.chromium.org/18334003/diff/61001/chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h#newcode13 chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h:13: // Wraper class for StatusIconLinux that implements the standard ...
7 years, 5 months ago (2013-07-17 14:55:21 UTC) #13
sidharthms
https://codereview.chromium.org/18334003/diff/61001/chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h File chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h (right): https://codereview.chromium.org/18334003/diff/61001/chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h#newcode13 chrome/browser/ui/views/status_icons/status_icon_linux_wrapper.h:13: // Wraper class for StatusIconLinux that implements the standard ...
7 years, 5 months ago (2013-07-17 23:03:01 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/sidharthms@chromium.org/18334003/84001
7 years, 5 months ago (2013-07-17 23:09:06 UTC) #15
commit-bot: I haz the power
Sorry for I got bad news for ya. Compile failed with a clobber build on ...
7 years, 5 months ago (2013-07-18 00:57:17 UTC) #16
dewittj
On 2013/07/18 00:57:17, I haz the power (commit-bot) wrote: > Sorry for I got bad ...
7 years, 5 months ago (2013-07-18 16:47:37 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/sidharthms@chromium.org/18334003/116001
7 years, 5 months ago (2013-07-18 18:36:05 UTC) #18
commit-bot: I haz the power
Change committed as 212476
7 years, 5 months ago (2013-07-18 23:58:34 UTC) #19
Mark Seaborn
https://chromiumcodereview.appspot.com/18334003/diff/116001/chrome/browser/ui/libgtk2ui/gtk2_util.cc File chrome/browser/ui/libgtk2ui/gtk2_util.cc (right): https://chromiumcodereview.appspot.com/18334003/diff/116001/chrome/browser/ui/libgtk2ui/gtk2_util.cc#newcode14 chrome/browser/ui/libgtk2ui/gtk2_util.cc:14: #include "ui/base/keycodes/keyboard_code_conversion_x.cc" This should be ".h", not ".cc"! I ...
7 years, 5 months ago (2013-07-27 04:38:20 UTC) #20
sidharthms
https://chromiumcodereview.appspot.com/18334003/diff/116001/chrome/browser/ui/libgtk2ui/gtk2_util.cc File chrome/browser/ui/libgtk2ui/gtk2_util.cc (right): https://chromiumcodereview.appspot.com/18334003/diff/116001/chrome/browser/ui/libgtk2ui/gtk2_util.cc#newcode14 chrome/browser/ui/libgtk2ui/gtk2_util.cc:14: #include "ui/base/keycodes/keyboard_code_conversion_x.cc" Oh! I'm not sure how it got ...
7 years, 4 months ago (2013-07-27 07:50:23 UTC) #21
Mark Seaborn
7 years, 4 months ago (2013-07-27 16:28:43 UTC) #22
Message was sent while issue was closed.
https://chromiumcodereview.appspot.com/18334003/diff/116001/chrome/browser/ui...
File chrome/browser/ui/libgtk2ui/gtk2_util.cc (right):

https://chromiumcodereview.appspot.com/18334003/diff/116001/chrome/browser/ui...
chrome/browser/ui/libgtk2ui/gtk2_util.cc:14: #include
"ui/base/keycodes/keyboard_code_conversion_x.cc"
On 2013/07/27 07:50:24, sidharthms wrote:
> Oh! I'm not sure how it got through the commit queue. Anyway I'll get
> it fixed asap.

It's OK, I've prepared a fix: https://codereview.chromium.org/20900002/

I should have just done that without complaining on this review first. :-)

Powered by Google App Engine
This is Rietveld 408576698