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

Side by Side Diff: chrome/browser/chromeos/dom_ui/menu_ui.cc

Issue 6250123: WebUI: Change DOMUI to WebUI in two chromeos classes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: avi review Created 9 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/chromeos/dom_ui/menu_ui.h" 5 #include "chrome/browser/chromeos/dom_ui/menu_ui.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
11 #include "base/json/json_writer.h" 11 #include "base/json/json_writer.h"
12 #include "base/message_loop.h" 12 #include "base/message_loop.h"
13 #include "base/singleton.h" 13 #include "base/singleton.h"
14 #include "base/string_number_conversions.h" 14 #include "base/string_number_conversions.h"
15 #include "base/string_piece.h" 15 #include "base/string_piece.h"
16 #include "base/utf_string_conversions.h" 16 #include "base/utf_string_conversions.h"
17 #include "base/values.h" 17 #include "base/values.h"
18 #include "base/weak_ptr.h" 18 #include "base/weak_ptr.h"
19 #include "chrome/browser/browser_thread.h" 19 #include "chrome/browser/browser_thread.h"
20 #include "chrome/browser/chromeos/views/domui_menu_widget.h"
21 #include "chrome/browser/chromeos/views/native_menu_domui.h" 20 #include "chrome/browser/chromeos/views/native_menu_domui.h"
21 #include "chrome/browser/chromeos/views/webui_menu_widget.h"
22 #include "chrome/browser/dom_ui/web_ui_util.h" 22 #include "chrome/browser/dom_ui/web_ui_util.h"
23 #include "chrome/browser/tab_contents/tab_contents.h" 23 #include "chrome/browser/tab_contents/tab_contents.h"
24 #include "chrome/browser/tab_contents/tab_contents_delegate.h" 24 #include "chrome/browser/tab_contents/tab_contents_delegate.h"
25 #include "chrome/common/url_constants.h" 25 #include "chrome/common/url_constants.h"
26 #include "chrome/common/chrome_switches.h" 26 #include "chrome/common/chrome_switches.h"
27 #include "chrome/common/jstemplate_builder.h" 27 #include "chrome/common/jstemplate_builder.h"
28 #include "gfx/canvas_skia.h" 28 #include "gfx/canvas_skia.h"
29 #include "gfx/favicon_size.h" 29 #include "gfx/favicon_size.h"
30 #include "gfx/font.h" 30 #include "gfx/font.h"
31 #include "grit/app_resources.h" 31 #include "grit/app_resources.h"
(...skipping 364 matching lines...) Expand 10 before | Expand all | Expand 10 after
396 std::string index_str; 396 std::string index_str;
397 bool success = values->GetString(0, &index_str); 397 bool success = values->GetString(0, &index_str);
398 DCHECK(success); 398 DCHECK(success);
399 std::string activation; 399 std::string activation;
400 success = values->GetString(1, &activation); 400 success = values->GetString(1, &activation);
401 DCHECK(success); 401 DCHECK(success);
402 402
403 int index; 403 int index;
404 success = base::StringToInt(index_str, &index); 404 success = base::StringToInt(index_str, &index);
405 DCHECK(success); 405 DCHECK(success);
406 chromeos::DOMUIMenuControl* control = GetMenuControl(); 406 chromeos::WebUIMenuControl* control = GetMenuControl();
407 if (control) { 407 if (control) {
408 ui::MenuModel* model = GetMenuModel(); 408 ui::MenuModel* model = GetMenuModel();
409 DCHECK(model); 409 DCHECK(model);
410 DCHECK_GE(index, 0); 410 DCHECK_GE(index, 0);
411 DCHECK(activation == "close_and_activate" || 411 DCHECK(activation == "close_and_activate" ||
412 activation == "activate_no_close") << activation; 412 activation == "activate_no_close") << activation;
413 if (model->IsEnabledAt(index)) { 413 if (model->IsEnabledAt(index)) {
414 control->Activate(model, 414 control->Activate(model,
415 index, 415 index,
416 activation == "close_and_activate" ? 416 activation == "close_and_activate" ?
417 chromeos::DOMUIMenuControl::CLOSE_AND_ACTIVATE : 417 chromeos::WebUIMenuControl::CLOSE_AND_ACTIVATE :
418 chromeos::DOMUIMenuControl::ACTIVATE_NO_CLOSE); 418 chromeos::WebUIMenuControl::ACTIVATE_NO_CLOSE);
419 } 419 }
420 } 420 }
421 } 421 }
422 422
423 void MenuHandler::HandleOpenSubmenu(const ListValue* values) { 423 void MenuHandler::HandleOpenSubmenu(const ListValue* values) {
424 CHECK_EQ(2U, values->GetSize()); 424 CHECK_EQ(2U, values->GetSize());
425 std::string index_str; 425 std::string index_str;
426 bool success = values->GetString(0, &index_str); 426 bool success = values->GetString(0, &index_str);
427 DCHECK(success); 427 DCHECK(success);
428 std::string y_str; 428 std::string y_str;
429 success = values->GetString(1, &y_str); 429 success = values->GetString(1, &y_str);
430 DCHECK(success); 430 DCHECK(success);
431 int index; 431 int index;
432 success = base::StringToInt(index_str, &index); 432 success = base::StringToInt(index_str, &index);
433 DCHECK(success); 433 DCHECK(success);
434 int y; 434 int y;
435 success = base::StringToInt(y_str, &y); 435 success = base::StringToInt(y_str, &y);
436 DCHECK(success); 436 DCHECK(success);
437 chromeos::DOMUIMenuControl* control = GetMenuControl(); 437 chromeos::WebUIMenuControl* control = GetMenuControl();
438 if (control) 438 if (control)
439 control->OpenSubmenu(index, y); 439 control->OpenSubmenu(index, y);
440 } 440 }
441 441
442 void MenuHandler::HandleCloseSubmenu(const ListValue* values) { 442 void MenuHandler::HandleCloseSubmenu(const ListValue* values) {
443 chromeos::DOMUIMenuControl* control = GetMenuControl(); 443 chromeos::WebUIMenuControl* control = GetMenuControl();
444 if (control) 444 if (control)
445 control->CloseSubmenu(); 445 control->CloseSubmenu();
446 } 446 }
447 447
448 void MenuHandler::HandleMoveInputToSubmenu(const ListValue* values) { 448 void MenuHandler::HandleMoveInputToSubmenu(const ListValue* values) {
449 chromeos::DOMUIMenuControl* control = GetMenuControl(); 449 chromeos::WebUIMenuControl* control = GetMenuControl();
450 if (control) 450 if (control)
451 control->MoveInputToSubmenu(); 451 control->MoveInputToSubmenu();
452 } 452 }
453 453
454 void MenuHandler::HandleMoveInputToParent(const ListValue* values) { 454 void MenuHandler::HandleMoveInputToParent(const ListValue* values) {
455 chromeos::DOMUIMenuControl* control = GetMenuControl(); 455 chromeos::WebUIMenuControl* control = GetMenuControl();
456 if (control) 456 if (control)
457 control->MoveInputToParent(); 457 control->MoveInputToParent();
458 } 458 }
459 459
460 void MenuHandler::HandleCloseAll(const ListValue* values) { 460 void MenuHandler::HandleCloseAll(const ListValue* values) {
461 chromeos::DOMUIMenuControl* control = GetMenuControl(); 461 chromeos::WebUIMenuControl* control = GetMenuControl();
462 if (control) 462 if (control)
463 control->CloseAll(); 463 control->CloseAll();
464 } 464 }
465 465
466 void MenuHandler::HandleModelUpdated(const ListValue* values) { 466 void MenuHandler::HandleModelUpdated(const ListValue* values) {
467 ui::MenuModel* model = GetMenuModel(); 467 ui::MenuModel* model = GetMenuModel();
468 if (model) 468 if (model)
469 static_cast<chromeos::MenuUI*>(dom_ui_)->ModelUpdated(model); 469 static_cast<chromeos::MenuUI*>(dom_ui_)->ModelUpdated(model);
470 } 470 }
471 471
472 void MenuHandler::HandleLog(const ListValue* values) { 472 void MenuHandler::HandleLog(const ListValue* values) {
473 CHECK_EQ(1U, values->GetSize()); 473 CHECK_EQ(1U, values->GetSize());
474 std::string msg; 474 std::string msg;
475 bool success = values->GetString(0, &msg); 475 bool success = values->GetString(0, &msg);
476 DCHECK(success); 476 DCHECK(success);
477 DVLOG(1) << msg; 477 DVLOG(1) << msg;
478 } 478 }
479 479
480 void MenuHandler::UpdatePreferredSize(const gfx::Size& new_size) { 480 void MenuHandler::UpdatePreferredSize(const gfx::Size& new_size) {
481 if (!loaded_) 481 if (!loaded_)
482 return; 482 return;
483 chromeos::DOMUIMenuControl* control = GetMenuControl(); 483 chromeos::WebUIMenuControl* control = GetMenuControl();
484 if (control) 484 if (control)
485 control->SetSize(new_size); 485 control->SetSize(new_size);
486 } 486 }
487 487
488 void MenuHandler::LoadingStateChanged(TabContents* contents) { 488 void MenuHandler::LoadingStateChanged(TabContents* contents) {
489 chromeos::DOMUIMenuControl* control = GetMenuControl(); 489 chromeos::WebUIMenuControl* control = GetMenuControl();
490 if (control && !contents->is_loading()) { 490 if (control && !contents->is_loading()) {
491 loaded_ = true; 491 loaded_ = true;
492 control->OnLoad(); 492 control->OnLoad();
493 HandleModelUpdated(NULL); 493 HandleModelUpdated(NULL);
494 } 494 }
495 } 495 }
496 496
497 } // namespace 497 } // namespace
498 498
499 namespace chromeos { 499 namespace chromeos {
500 500
501 //////////////////////////////////////////////////////////////////////////////// 501 ////////////////////////////////////////////////////////////////////////////////
502 // 502 //
503 // MenuHandlerBase 503 // MenuHandlerBase
504 // 504 //
505 //////////////////////////////////////////////////////////////////////////////// 505 ////////////////////////////////////////////////////////////////////////////////
506 506
507 chromeos::DOMUIMenuControl* MenuHandlerBase::GetMenuControl() { 507 chromeos::WebUIMenuControl* MenuHandlerBase::GetMenuControl() {
508 DOMUIMenuWidget* widget = 508 WebUIMenuWidget* widget =
509 chromeos::DOMUIMenuWidget::FindDOMUIMenuWidget( 509 chromeos::WebUIMenuWidget::FindWebUIMenuWidget(
510 dom_ui_->tab_contents()->GetNativeView()); 510 dom_ui_->tab_contents()->GetNativeView());
511 if (widget) 511 if (widget)
512 return widget->domui_menu(); // NativeMenuDOMUI implements DOMUIMenuControl 512 return widget->domui_menu(); // NativeMenuDOMUI implements WebUIMenuControl
513 else 513 else
514 return NULL; 514 return NULL;
515 } 515 }
516 516
517 ui::MenuModel* MenuHandlerBase::GetMenuModel() { 517 ui::MenuModel* MenuHandlerBase::GetMenuModel() {
518 DOMUIMenuControl* control = GetMenuControl(); 518 WebUIMenuControl* control = GetMenuControl();
519 if (control) 519 if (control)
520 return control->GetMenuModel(); 520 return control->GetMenuModel();
521 else 521 else
522 return NULL; 522 return NULL;
523 } 523 }
524 524
525 //////////////////////////////////////////////////////////////////////////////// 525 ////////////////////////////////////////////////////////////////////////////////
526 // 526 //
527 // MenuUI 527 // MenuUI
528 // 528 //
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
586 item = CreateMenuItem(model, index, "check", 586 item = CreateMenuItem(model, index, "check",
587 &max_icon_width, &has_accelerator); 587 &max_icon_width, &has_accelerator);
588 break; 588 break;
589 default: 589 default:
590 // TODO(oshima): We don't support BUTTOM_ITEM for now. 590 // TODO(oshima): We don't support BUTTOM_ITEM for now.
591 NOTREACHED(); 591 NOTREACHED();
592 continue; 592 continue;
593 } 593 }
594 items->Set(index, item); 594 items->Set(index, item);
595 } 595 }
596 DOMUIMenuWidget* widget = 596 WebUIMenuWidget* widget =
597 chromeos::DOMUIMenuWidget::FindDOMUIMenuWidget( 597 chromeos::WebUIMenuWidget::FindWebUIMenuWidget(
598 tab_contents()->GetNativeView()); 598 tab_contents()->GetNativeView());
599 DCHECK(widget); 599 DCHECK(widget);
600 json_model.SetInteger("maxIconWidth", max_icon_width); 600 json_model.SetInteger("maxIconWidth", max_icon_width);
601 json_model.SetBoolean("isRoot", widget->is_root()); 601 json_model.SetBoolean("isRoot", widget->is_root());
602 json_model.SetBoolean("hasAccelerator", has_accelerator); 602 json_model.SetBoolean("hasAccelerator", has_accelerator);
603 CallJavascriptFunction(L"updateModel", json_model); 603 CallJavascriptFunction(L"updateModel", json_model);
604 } 604 }
605 605
606 DictionaryValue* MenuUI::CreateMenuItem(const ui::MenuModel* model, 606 DictionaryValue* MenuUI::CreateMenuItem(const ui::MenuModel* model,
607 int index, 607 int index,
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
655 655
656 ChromeURLDataManager::DataSource* MenuUI::CreateDataSource() { 656 ChromeURLDataManager::DataSource* MenuUI::CreateDataSource() {
657 return CreateMenuUIHTMLSource(NULL, 657 return CreateMenuUIHTMLSource(NULL,
658 chrome::kChromeUIMenu, 658 chrome::kChromeUIMenu,
659 "Menu" /* class name */, 659 "Menu" /* class name */,
660 kNoExtraResource, 660 kNoExtraResource,
661 kNoExtraResource); 661 kNoExtraResource);
662 } 662 }
663 663
664 } // namespace chromeos 664 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/dom_ui/menu_ui.h ('k') | chrome/browser/chromeos/dom_ui/network_menu_ui.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698