win: Fix notify icon and context menu.

This commit is contained in:
Cheng Zhao 2014-07-11 19:42:53 +08:00
parent b4ba149662
commit b2afe7b3bf
5 changed files with 17 additions and 11 deletions

View file

@ -13,6 +13,7 @@
#include "ui/gfx/icon_util.h"
#include "ui/gfx/point.h"
#include "ui/gfx/rect.h"
#include "ui/views/controls/menu/menu_runner.h"
namespace atom {
@ -60,8 +61,16 @@ void NotifyIcon::HandleClickEvent(const gfx::Point& cursor_pos,
if (!SetForegroundWindow(window_))
return;
menu_.reset(new Menu2(menu_model_));
menu_->RunContextMenuAt(cursor_pos);
menu_runner_.reset(new views::MenuRunner(menu_model_));
views::MenuRunner::RunResult result = menu_runner_->RunMenuAt(
NULL,
NULL,
gfx::Rect(cursor_pos, gfx::Size()),
views::MenuItemView::TOPLEFT,
ui::MENU_SOURCE_MOUSE,
views::MenuRunner::HAS_MNEMONICS | views::MenuRunner::CONTEXT_MENU);
if (result == views::MenuRunner::MENU_DELETED)
LOG(ERROR) << "Menu deleted when running";
}
void NotifyIcon::ResetIcon() {