OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
61 WebPopupMenu* WebPopupMenu::create(WebWidgetClient* client) | 61 WebPopupMenu* WebPopupMenu::create(WebWidgetClient* client) |
62 { | 62 { |
63 // Pass the WebPopupMenuImpl's self-reference to the caller. | 63 // Pass the WebPopupMenuImpl's self-reference to the caller. |
64 return adoptRef(new WebPopupMenuImpl(client)).leakRef(); | 64 return adoptRef(new WebPopupMenuImpl(client)).leakRef(); |
65 } | 65 } |
66 | 66 |
67 // WebWidget ------------------------------------------------------------------ | 67 // WebWidget ------------------------------------------------------------------ |
68 | 68 |
69 WebPopupMenuImpl::WebPopupMenuImpl(WebWidgetClient* client) | 69 WebPopupMenuImpl::WebPopupMenuImpl(WebWidgetClient* client) |
70 : m_client(client) | 70 : m_client(client) |
| 71 // Set to impossible point so we always get the first mouse position. |
| 72 , m_lastMousePosition(WebPoint(-1, -1)) |
71 , m_widget(0) | 73 , m_widget(0) |
72 { | 74 { |
73 // Set to impossible point so we always get the first mouse position. | |
74 m_lastMousePosition = WebPoint(-1, -1); | |
75 } | 75 } |
76 | 76 |
77 WebPopupMenuImpl::~WebPopupMenuImpl() | 77 WebPopupMenuImpl::~WebPopupMenuImpl() |
78 { | 78 { |
79 if (m_widget) | 79 if (m_widget) |
80 m_widget->setClient(0); | 80 m_widget->setClient(0); |
81 } | 81 } |
82 | 82 |
83 void WebPopupMenuImpl::initialize(FramelessScrollView* widget, const WebRect& bo
unds) | 83 void WebPopupMenuImpl::initialize(FramelessScrollView* widget, const WebRect& bo
unds) |
84 { | 84 { |
(...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
388 ASSERT(widget == m_widget); | 388 ASSERT(widget == m_widget); |
389 if (m_widget) { | 389 if (m_widget) { |
390 m_widget->setClient(0); | 390 m_widget->setClient(0); |
391 m_widget = 0; | 391 m_widget = 0; |
392 } | 392 } |
393 if (m_client) | 393 if (m_client) |
394 m_client->closeWidgetSoon(); | 394 m_client->closeWidgetSoon(); |
395 } | 395 } |
396 | 396 |
397 } // namespace blink | 397 } // namespace blink |
OLD | NEW |