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

Side by Side Diff: chrome/browser/renderer_host/render_widget_host.cc

Issue 159586: This CL fixes issue 11480: Support GTK keyboard themes (emacs keybindings).... (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: '' Created 11 years, 4 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) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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/renderer_host/render_widget_host.h" 5 #include "chrome/browser/renderer_host/render_widget_host.h"
6 6
7 #include "base/histogram.h" 7 #include "base/histogram.h"
8 #include "base/message_loop.h" 8 #include "base/message_loop.h"
9 #include "base/keyboard_codes.h" 9 #include "base/keyboard_codes.h"
10 #include "chrome/browser/renderer_host/backing_store.h" 10 #include "chrome/browser/renderer_host/backing_store.h"
(...skipping 713 matching lines...) Expand 10 before | Expand all | Expand 10 after
724 << type << "). Ignoring event."; 724 << type << "). Ignoring event.";
725 } else { 725 } else {
726 bool processed = false; 726 bool processed = false;
727 if (!message.ReadBool(&iter, &processed)) 727 if (!message.ReadBool(&iter, &processed))
728 process()->ReceivedBadMessage(message.type()); 728 process()->ReceivedBadMessage(message.type());
729 729
730 KeyQueue::value_type front_item = key_queue_.front(); 730 KeyQueue::value_type front_item = key_queue_.front();
731 key_queue_.pop(); 731 key_queue_.pop();
732 732
733 if (!processed) { 733 if (!processed) {
734 UnhandledKeyboardEvent(front_item); 734 // Send the event back to the |view_| first, to give it a chance to
735 // handle it again.
736 if (!view_->UnhandledKeyboardEvent(front_item))
737 UnhandledKeyboardEvent(front_item);
735 738
736 // WARNING: This RenderWidgetHost can be deallocated at this point 739 // WARNING: This RenderWidgetHost can be deallocated at this point
737 // (i.e. in the case of Ctrl+W, where the call to 740 // (i.e. in the case of Ctrl+W, where the call to
738 // UnhandledKeyboardEvent destroys this RenderWidgetHost). 741 // UnhandledKeyboardEvent destroys this RenderWidgetHost).
739 } 742 }
740 } 743 }
741 } 744 }
742 } 745 }
743 746
744 void RenderWidgetHost::OnMsgFocus() { 747 void RenderWidgetHost::OnMsgFocus() {
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
855 858
856 // TODO(darin): do we need to do something else if our backing store is not 859 // TODO(darin): do we need to do something else if our backing store is not
857 // the same size as the advertised view? maybe we just assume there is a 860 // the same size as the advertised view? maybe we just assume there is a
858 // full paint on its way? 861 // full paint on its way?
859 BackingStore* backing_store = BackingStoreManager::Lookup(this); 862 BackingStore* backing_store = BackingStoreManager::Lookup(this);
860 if (!backing_store || (backing_store->size() != view_size)) 863 if (!backing_store || (backing_store->size() != view_size))
861 return; 864 return;
862 backing_store->ScrollRect(process_->process().handle(), bitmap, bitmap_rect, 865 backing_store->ScrollRect(process_->process().handle(), bitmap, bitmap_rect,
863 dx, dy, clip_rect, view_size); 866 dx, dy, clip_rect, view_size);
864 } 867 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698