Stop menus from being double shown.
[chromium-blink-merge.git] / ui / views / views.gyp
blobebec3c71bf5bb8c493464900568b79f82dc5b8e9
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5   'variables': {
6     'chromium_code': 1,
7   },
8   'target_defaults': {
9     'conditions': [
10       ['use_aura==1', {
11         'sources/': [ ['exclude', '_win\\.(h|cc)$'] ],
12         'dependencies': [ '../aura/aura.gyp:aura', ],
13       }],
14       ['OS!="linux" or chromeos==1', {
15         'sources/': [ ['exclude', '_linux\\.(h|cc)$'] ],
16       }],
17     ],
18   },
19   'targets': [
20     {
21       'target_name': 'views',
22       'type': '<(component)',
23       'dependencies': [
24         '../../base/base.gyp:base',
25         '../../base/base.gyp:base_i18n',
26         '../../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
27         '../../skia/skia.gyp:skia',
28         '../../third_party/icu/icu.gyp:icui18n',
29         '../../third_party/icu/icu.gyp:icuuc',
30         '../../url/url.gyp:url_lib',
31         '../base/strings/ui_strings.gyp:ui_strings',
32         '../compositor/compositor.gyp:compositor',
33         '../native_theme/native_theme.gyp:native_theme',
34         '../ui.gyp:ui',
35         '../ui.gyp:ui_resources',
36       ],
37       'defines': [
38         'VIEWS_IMPLEMENTATION',
39       ],
40       'sources': [
41         # All .cc, .h under views, except unittests
42         'accessibility/native_view_accessibility.cc',
43         'accessibility/native_view_accessibility.h',
44         'accessibility/native_view_accessibility_win.cc',
45         'accessibility/native_view_accessibility_win.h',
46         'accessible_pane_view.cc',
47         'accessible_pane_view.h',
48         'animation/bounds_animator.cc',
49         'animation/bounds_animator.h',
50         'animation/scroll_animator.cc',
51         'animation/scroll_animator.h',
52         'background.cc',
53         'background.h',
54         'border.cc',
55         'border.h',
56         'bubble/bubble_border.cc',
57         'bubble/bubble_border.h',
58         'bubble/bubble_delegate.cc',
59         'bubble/bubble_delegate.h',
60         'bubble/bubble_frame_view.cc',
61         'bubble/bubble_frame_view.h',
62         'bubble/tray_bubble_view.cc',
63         'bubble/tray_bubble_view.h',
64         'button_drag_utils.cc',
65         'button_drag_utils.h',
66         'color_chooser/color_chooser_listener.h',
67         'color_chooser/color_chooser_view.cc',
68         'color_chooser/color_chooser_view.h',
69         'color_constants.cc',
70         'color_constants.h',
71         'context_menu_controller.h',
72         'controls/button/blue_button.cc',
73         'controls/button/blue_button.h',
74         'controls/button/button.cc',
75         'controls/button/button.h',
76         'controls/button/button_dropdown.cc',
77         'controls/button/button_dropdown.h',
78         'controls/button/checkbox.cc',
79         'controls/button/checkbox.h',
80         'controls/button/custom_button.cc',
81         'controls/button/custom_button.h',
82         'controls/button/image_button.cc',
83         'controls/button/image_button.h',
84         'controls/button/label_button.cc',
85         'controls/button/label_button.h',
86         'controls/button/label_button_border.cc',
87         'controls/button/label_button_border.h',
88         'controls/button/menu_button.cc',
89         'controls/button/menu_button.h',
90         'controls/button/menu_button_listener.h',
91         'controls/button/radio_button.cc',
92         'controls/button/radio_button.h',
93         'controls/button/text_button.cc',
94         'controls/button/text_button.h',
95         'controls/combobox/combobox.cc',
96         'controls/combobox/combobox.h',
97         'controls/combobox/combobox_listener.h',
98         'controls/combobox/native_combobox_views.cc',
99         'controls/combobox/native_combobox_views.h',
100         'controls/combobox/native_combobox_win.cc',
101         'controls/combobox/native_combobox_win.h',
102         'controls/combobox/native_combobox_wrapper.h',
103         'controls/focusable_border.cc',
104         'controls/focusable_border.h',
105         'controls/glow_hover_controller.cc',
106         'controls/glow_hover_controller.h',
107         'controls/image_view.cc',
108         'controls/image_view.h',
109         'controls/label.cc',
110         'controls/label.h',
111         'controls/link.cc',
112         'controls/link.h',
113         'controls/link_listener.h',
114         'controls/menu/display_change_listener_aura.cc',
115         'controls/menu/menu.cc',
116         'controls/menu/menu.h',
117         'controls/menu/menu_2.cc',
118         'controls/menu/menu_2.h',
119         'controls/menu/menu_config.cc',
120         'controls/menu/menu_config.h',
121         'controls/menu/menu_config_views.cc',
122         'controls/menu/menu_config_win.cc',
123         'controls/menu/menu_controller.cc',
124         'controls/menu/menu_controller.h',
125         'controls/menu/menu_controller_aura.cc',
126         'controls/menu/menu_controller_delegate.h',
127         'controls/menu/menu_controller_win.cc',
128         'controls/menu/menu_delegate.cc',
129         'controls/menu/menu_delegate.h',
130         'controls/menu/menu_host.cc',
131         'controls/menu/menu_host.h',
132         'controls/menu/menu_host_root_view.cc',
133         'controls/menu/menu_host_root_view.h',
134         'controls/menu/menu_insertion_delegate_win.h',
135         'controls/menu/menu_item_view.cc',
136         'controls/menu/menu_item_view.h',
137         'controls/menu/menu_listener.cc',
138         'controls/menu/menu_listener.h',
139         'controls/menu/menu_model_adapter.cc',
140         'controls/menu/menu_model_adapter.h',
141         'controls/menu/menu_runner.cc',
142         'controls/menu/menu_runner.h',
143         'controls/menu/menu_scroll_view_container.cc',
144         'controls/menu/menu_scroll_view_container.h',
145         'controls/menu/menu_separator.h',
146         'controls/menu/menu_separator_views.cc',
147         'controls/menu/menu_separator_win.cc',
148         'controls/menu/menu_win.cc',
149         'controls/menu/menu_win.h',
150         'controls/menu/menu_wrapper.h',
151         'controls/menu/native_menu_win.cc',
152         'controls/menu/native_menu_win.h',
153         'controls/menu/menu_image_util.cc',
154         'controls/menu/menu_image_util.h',
155         'controls/menu/submenu_view.cc',
156         'controls/menu/submenu_view.h',
157         'controls/message_box_view.cc',
158         'controls/message_box_view.h',
159         'controls/native_control.cc',
160         'controls/native_control.h',
161         'controls/native_control_win.cc',
162         'controls/native_control_win.h',
163         'controls/native/native_view_host.cc',
164         'controls/native/native_view_host.h',
165         'controls/native/native_view_host_aura.cc',
166         'controls/native/native_view_host_aura.h',
167         'controls/native/native_view_host_win.cc',
168         'controls/native/native_view_host_win.h',
169         'controls/prefix_delegate.h',
170         'controls/prefix_selector.cc',
171         'controls/prefix_selector.h',
172         'controls/progress_bar.cc',
173         'controls/progress_bar.h',
174         'controls/resize_area.cc',
175         'controls/resize_area.h',
176         'controls/resize_area_delegate.h',
177         'controls/scroll_view.cc',
178         'controls/scroll_view.h',
179         'controls/scrollbar/base_scroll_bar.cc',
180         'controls/scrollbar/base_scroll_bar.h',
181         'controls/scrollbar/base_scroll_bar_button.cc',
182         'controls/scrollbar/base_scroll_bar_button.h',
183         'controls/scrollbar/base_scroll_bar_thumb.cc',
184         'controls/scrollbar/base_scroll_bar_thumb.h',
185         'controls/scrollbar/bitmap_scroll_bar.cc',
186         'controls/scrollbar/bitmap_scroll_bar.h',
187         'controls/scrollbar/kennedy_scroll_bar.cc',
188         'controls/scrollbar/kennedy_scroll_bar.h',
189         'controls/scrollbar/native_scroll_bar_views.cc',
190         'controls/scrollbar/native_scroll_bar_views.h',
191         'controls/scrollbar/native_scroll_bar_wrapper.h',
192         'controls/scrollbar/native_scroll_bar.cc',
193         'controls/scrollbar/native_scroll_bar.h',
194         'controls/scrollbar/overlay_scroll_bar.cc',
195         'controls/scrollbar/overlay_scroll_bar.h',
196         'controls/scrollbar/scroll_bar.cc',
197         'controls/scrollbar/scroll_bar.h',
198         'controls/separator.cc',
199         'controls/separator.h',
200         'controls/single_split_view.cc',
201         'controls/single_split_view.h',
202         'controls/single_split_view_listener.h',
203         'controls/slide_out_view.cc',
204         'controls/slide_out_view.h',
205         'controls/slider.cc',
206         'controls/slider.h',
207         'controls/styled_label.cc',
208         'controls/styled_label.h',
209         'controls/styled_label_listener.h',
210         'controls/tabbed_pane/tabbed_pane.cc',
211         'controls/tabbed_pane/tabbed_pane.h',
212         'controls/tabbed_pane/tabbed_pane_listener.h',
213         'controls/table/table_header.cc',
214         'controls/table/table_header.h',
215         'controls/table/table_utils.cc',
216         'controls/table/table_utils.h',
217         'controls/table/table_view.cc',
218         'controls/table/table_view.h',
219         'controls/table/table_view_observer.h',
220         'controls/table/table_view_row_background_painter.h',
221         'controls/textfield/native_textfield_views.cc',
222         'controls/textfield/native_textfield_views.h',
223         'controls/textfield/native_textfield_win.cc',
224         'controls/textfield/native_textfield_win.h',
225         'controls/textfield/native_textfield_wrapper.h',
226         'controls/textfield/textfield.cc',
227         'controls/textfield/textfield.h',
228         'controls/textfield/textfield_controller.cc',
229         'controls/textfield/textfield_controller.h',
230         'controls/textfield/textfield_views_model.cc',
231         'controls/textfield/textfield_views_model.h',
232         'controls/throbber.cc',
233         'controls/throbber.h',
234         'controls/tree/tree_view.cc',
235         'controls/tree/tree_view.h',
236         'controls/tree/tree_view_controller.cc',
237         'controls/tree/tree_view_controller.h',
238         'corewm/base_focus_rules.cc',
239         'corewm/base_focus_rules.h',
240         'corewm/capture_controller.cc',
241         'corewm/capture_controller.h',
242         'corewm/compound_event_filter.cc',
243         'corewm/compound_event_filter.h',
244         'corewm/corewm_switches.cc',
245         'corewm/corewm_switches.h',
246         'corewm/cursor_manager.cc',
247         'corewm/cursor_manager.h',
248         'corewm/focus_controller.cc',
249         'corewm/focus_controller.h',
250         'corewm/focus_rules.h',
251         'corewm/image_grid.cc',
252         'corewm/image_grid.h',
253         'corewm/input_method_event_filter.cc',
254         'corewm/input_method_event_filter.h',
255         'corewm/native_cursor_manager.h',
256         'corewm/native_cursor_manager_delegate.h',
257         'corewm/shadow.cc',
258         'corewm/shadow.h',
259         'corewm/shadow_controller.cc',
260         'corewm/shadow_controller.h',
261         'corewm/shadow_types.cc',
262         'corewm/shadow_types.h',
263         'corewm/tooltip_controller.cc',
264         'corewm/tooltip_controller.h',
265         'corewm/visibility_controller.cc',
266         'corewm/visibility_controller.h',
267         'corewm/window_animations.cc',
268         'corewm/window_animations.h',
269         'corewm/window_modality_controller.cc',
270         'corewm/window_modality_controller.h',
271         'corewm/window_util.cc',
272         'corewm/window_util.h',
273         'debug_utils.cc',
274         'debug_utils.h',
275         'drag_controller.h',
276         'drag_utils.cc',
277         'drag_utils.h',
278         'focus/accelerator_handler.h',
279         'focus/accelerator_handler_aura.cc',
280         'focus/accelerator_handler_win.cc',
281         'focus/external_focus_tracker.cc',
282         'focus/external_focus_tracker.h',
283         'focus/focus_manager.cc',
284         'focus/focus_manager.h',
285         'focus/focus_manager_delegate.h',
286         'focus/focus_manager_factory.cc',
287         'focus/focus_manager_factory.h',
288         'focus/focus_search.cc',
289         'focus/focus_search.h',
290         'focus/view_storage.cc',
291         'focus/view_storage.h',
292         'focus/widget_focus_manager.cc',
293         'focus/widget_focus_manager.h',
294         'focus_border.cc',
295         'focus_border.h',
296         'ime/input_method_base.cc',
297         'ime/input_method_base.h',
298         'ime/input_method_bridge.cc',
299         'ime/input_method_bridge.h',
300         'ime/input_method_delegate.h',
301         'ime/input_method.h',
302         'ime/mock_input_method.cc',
303         'ime/mock_input_method.h',
304         'layout/box_layout.cc',
305         'layout/box_layout.h',
306         'layout/fill_layout.cc',
307         'layout/fill_layout.h',
308         'layout/grid_layout.cc',
309         'layout/grid_layout.h',
310         'layout/layout_constants.h',
311         'layout/layout_manager.cc',
312         'layout/layout_manager.h',
313         'metrics.cc',
314         'metrics.h',
315         'metrics_aura.cc',
316         'metrics_win.cc',
317         'mouse_constants.cc',
318         'mouse_constants.h',
319         'mouse_watcher.cc',
320         'mouse_watcher.h',
321         'mouse_watcher_view_host.cc',
322         'mouse_watcher_view_host.h',
323         'native_theme_delegate.h',
324         'painter.cc',
325         'painter.h',
326         'repeat_controller.cc',
327         'repeat_controller.h',
328         'round_rect_painter.cc',
329         'round_rect_painter.h',
330         'shadow_border.cc',
331         'shadow_border.h',
332         'touchui/touch_editing_menu.cc',
333         'touchui/touch_editing_menu.h',
334         'touchui/touch_selection_controller_impl.cc',
335         'touchui/touch_selection_controller_impl.h',
336         'view.cc',
337         'view.h',
338         'view_constants.cc',
339         'view_constants.h',
340         'view_constants_aura.cc',
341         'view_constants_aura.h',
342         'view_aura.cc',
343         'view_model.cc',
344         'view_model.h',
345         'view_model_utils.cc',
346         'view_model_utils.h',
347         'view_win.cc',
348         'views_delegate.cc',
349         'views_delegate.h',
350         'widget/aero_tooltip_manager.cc',
351         'widget/aero_tooltip_manager.h',
352         'widget/child_window_message_processor.cc',
353         'widget/child_window_message_processor.h',
354         'widget/desktop_aura/desktop_activation_client.cc',
355         'widget/desktop_aura/desktop_activation_client.h',
356         'widget/desktop_aura/desktop_cursor_loader_updater.h',
357         'widget/desktop_aura/desktop_cursor_loader_updater_aurax11.cc',
358         'widget/desktop_aura/desktop_cursor_loader_updater_aurax11.h',
359         'widget/desktop_aura/desktop_dispatcher_client.cc',
360         'widget/desktop_aura/desktop_dispatcher_client.h',
361         'widget/desktop_aura/desktop_drag_drop_client_aurax11.cc',
362         'widget/desktop_aura/desktop_drag_drop_client_aurax11.h',
363         'widget/desktop_aura/desktop_drag_drop_client_win.cc',
364         'widget/desktop_aura/desktop_drag_drop_client_win.h',
365         'widget/desktop_aura/desktop_drop_target_win.cc',
366         'widget/desktop_aura/desktop_drop_target_win.h',
367         'widget/desktop_aura/desktop_focus_rules.cc',
368         'widget/desktop_aura/desktop_focus_rules.h',
369         'widget/desktop_aura/desktop_layout_manager.cc',
370         'widget/desktop_aura/desktop_layout_manager.h',
371         'widget/desktop_aura/desktop_native_cursor_manager.cc',
372         'widget/desktop_aura/desktop_native_cursor_manager.h',
373         'widget/desktop_aura/desktop_native_widget_aura.cc',
374         'widget/desktop_aura/desktop_native_widget_aura.h',
375         'widget/desktop_aura/desktop_root_window_host.h',
376         'widget/desktop_aura/desktop_root_window_host_win.cc',
377         'widget/desktop_aura/desktop_root_window_host_win.h',
378         'widget/desktop_aura/desktop_root_window_host_x11.cc',
379         'widget/desktop_aura/desktop_root_window_host_x11.h',
380         'widget/desktop_aura/desktop_screen.h',
381         'widget/desktop_aura/desktop_screen_ozone.cc',
382         'widget/desktop_aura/desktop_screen_position_client.cc',
383         'widget/desktop_aura/desktop_screen_position_client.h',
384         'widget/desktop_aura/desktop_screen_win.cc',
385         'widget/desktop_aura/desktop_screen_win.h',
386         'widget/desktop_aura/desktop_screen_x11.cc',
387         'widget/desktop_aura/x11_desktop_handler.cc',
388         'widget/desktop_aura/x11_desktop_handler.h',
389         'widget/desktop_aura/x11_desktop_window_move_client.cc',
390         'widget/desktop_aura/x11_desktop_window_move_client.h',
391         'widget/desktop_aura/x11_whole_screen_move_loop.cc',
392         'widget/desktop_aura/x11_whole_screen_move_loop.h',
393         'widget/desktop_aura/x11_whole_screen_move_loop_delegate.h',
394         'widget/desktop_aura/x11_window_event_filter.cc',
395         'widget/desktop_aura/x11_window_event_filter.h',
396         'widget/drop_helper.cc',
397         'widget/drop_helper.h',
398         'widget/drop_target_win.cc',
399         'widget/drop_target_win.h',
400         'widget/root_view.cc',
401         'widget/root_view.h',
402         'widget/tooltip_manager_aura.cc',
403         'widget/tooltip_manager_aura.h',
404         'widget/tooltip_manager_win.cc',
405         'widget/tooltip_manager_win.h',
406         'widget/tooltip_manager.cc',
407         'widget/tooltip_manager.h',
408         'widget/monitor_win.cc',
409         'widget/monitor_win.h',
410         'widget/native_widget.h',
411         'widget/native_widget_aura.cc',
412         'widget/native_widget_aura.h',
413         'widget/native_widget_aura_window_observer.cc',
414         'widget/native_widget_aura_window_observer.h',
415         'widget/native_widget_delegate.h',
416         'widget/native_widget_private.h',
417         'widget/native_widget_win.cc',
418         'widget/native_widget_win.h',
419         'widget/widget.cc',
420         'widget/widget.h',
421         'widget/widget_aura_utils.cc',
422         'widget/widget_aura_utils.h',
423         'widget/widget_delegate.cc',
424         'widget/widget_delegate.h',
425         'widget/widget_deletion_observer.cc',
426         'widget/widget_deletion_observer.h',
427         'widget/widget_hwnd_utils.cc',
428         'widget/widget_hwnd_utils.h',
429         'widget/widget_observer.h',
430         'widget/window_reorderer.cc',
431         'widget/window_reorderer.h',
432         'win/appbar.cc',
433         'win/appbar.h',
434         'win/fullscreen_handler.cc',
435         'win/fullscreen_handler.h',
436         'win/hwnd_message_handler.cc',
437         'win/hwnd_message_handler.h',
438         'win/hwnd_message_handler_delegate.h',
439         'win/hwnd_util.h',
440         'win/hwnd_util_aurawin.cc',
441         'win/hwnd_util_win.cc',
442         'win/scoped_fullscreen_visibility.cc',
443         'win/scoped_fullscreen_visibility.h',
444         'window/client_view.cc',
445         'window/client_view.h',
446         'window/custom_frame_view.cc',
447         'window/custom_frame_view.h',
448         'window/dialog_client_view.cc',
449         'window/dialog_client_view.h',
450         'window/dialog_delegate.cc',
451         'window/dialog_delegate.h',
452         'window/frame_background.cc',
453         'window/frame_background.h',
454         'window/native_frame_view.cc',
455         'window/native_frame_view.h',
456         'window/non_client_view.cc',
457         'window/non_client_view.h',
458         'window/window_resources.h',
459         'window/window_shape.cc',
460         'window/window_shape.h',
461       ],
462       'include_dirs': [
463         '../../third_party/wtl/include',
464       ],
465       'conditions': [
466         ['use_aura==1', {
467           'sources!': [
468             'controls/native_control.cc',
469             'controls/native_control.h',
470             'controls/scrollbar/bitmap_scroll_bar.cc',
471             'controls/scrollbar/bitmap_scroll_bar.h',
472             'controls/table/table_view_observer.h',
473             'widget/aero_tooltip_manager.cc',
474             'widget/aero_tooltip_manager.h',
475             'widget/child_window_message_processor.cc',
476             'widget/child_window_message_processor.h',
477             'widget/tooltip_manager_win.cc',
478             'widget/tooltip_manager_win.h',
479           ],
480           'conditions': [
481             ['OS=="mac"', {
482               'sources/': [
483                 ['exclude', 'mouse_watcher.cc'],
484                 ['exclude', 'controls/menu/'],
485                 ['exclude', 'controls/scrollbar/'],
486                 ['exclude', 'focus/accelerator_handler_aura.cc'],
487               ],
488             }],
489             ['OS=="win"', {
490               'sources/': [
491                 ['include', 'controls/menu/menu_insertion_delegate_win.h'],
492                 ['include', 'controls/menu/native_menu_win.cc'],
493                 ['include', 'controls/menu/native_menu_win.h'],
494                 ['include', 'widget/desktop_aura/desktop_screen_win.cc'],
495                 ['include', 'widget/desktop_aura/desktop_drag_drop_client_win.cc'],
496                 ['include', 'widget/desktop_aura/desktop_drop_target_win.cc'],
497                 ['include', 'widget/desktop_aura/desktop_root_window_host_win.cc'],
498                 ['include', 'widget/monitor_win.cc'],
499                 ['include', 'widget/monitor_win.h'],
500                 ['include', 'win/appbar.cc'],
501                 ['include', 'win/appbar.h'],
502               ],
503             }],
504           ],
505         }],
506         ['use_aura==0', {
507           'sources/': [
508             ['exclude', 'corewm'],
509             ['exclude', 'widget/desktop_aura'],
510             ['exclude', 'widget/window_reorderer.h'],
511             ['exclude', 'widget/window_reorderer.cc'],
512           ],
513           'sources!': [
514             'widget/native_widget_aura_window_observer.cc',
515             'widget/native_widget_aura_window_observer.h',
516             'widget/widget_aura_utils.cc',
517             'widget/widget_aura_utils.h',
518           ],
519         }],
520         ['chromeos==1', {
521           'sources/': [
522             ['exclude', 'widget/desktop_aura'],
523           ],
524         }],
525         ['use_ash==0', {
526           'sources!': [
527             'bubble/tray_bubble_view.cc',
528             'bubble/tray_bubble_view.h',
529           ],
530         }],
531         ['use_aura==0 and OS=="win"', {
532           'sources!': [
533             'controls/menu/menu_config_views.cc',
534             'controls/menu/menu_separator_views.cc',
535           ],
536         }],
537         ['use_aura==1 and OS=="win"', {
538           'sources/': [
539             ['include', 'controls/menu/menu_config_win.cc'],
540             ['include', 'controls/menu/menu_separator_win.cc'],
541             ['include', 'accessibility/native_view_accessibility_win.cc'],
542             ['include', 'accessibility/native_view_accessibility_win.h'],
543           ],
544         }],
545         ['use_aura==1 and OS=="linux" and chromeos==0', {
546           'dependencies': [
547             '../ui.gyp:shell_dialogs',
548             '../linux_ui/linux_ui.gyp:linux_ui',
549           ],
550         }],
551         ['OS=="win"', {
552           'dependencies': [
553             # For accessibility
554             '../../third_party/iaccessible2/iaccessible2.gyp:iaccessible2',
555           ],
556           'include_dirs': [
557             '../../third_party/wtl/include',
558           ],
559           'link_settings': {
560             'msvs_settings': {
561               'VCLinkerTool': {
562                 'DelayLoadDLLs': [
563                   'user32.dll',
564                 ],
565               },
566             },
567           },
568           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
569           'msvs_disabled_warnings': [ 4267, ],
570         }],
571         ['OS!="win"', {
572           'sources!': [
573             'controls/menu/menu_wrapper.h',
574             'controls/menu/menu_2.cc',
575             'controls/menu/menu_2.h',
576             'win/fullscreen_handler.cc',
577             'win/fullscreen_handler.h',
578             'win/hwnd_message_handler.cc',
579             'win/hwnd_message_handler.h',
580             'win/hwnd_message_handler_delegate.h',
581             'win/scoped_fullscreen_visibility.cc',
582             'win/scoped_fullscreen_visibility.h',
583             'widget/widget_hwnd_utils.cc',
584             'widget/widget_hwnd_utils.h',
585           ],
586         }],
587       ],
588     }, # target_name: views
589     {
590       'target_name': 'views_test_support',
591       'type': 'static_library',
592       'dependencies': [
593         '../../base/base.gyp:base',
594         '../../ipc/ipc.gyp:test_support_ipc',
595         '../../skia/skia.gyp:skia',
596         '../../testing/gtest.gyp:gtest',
597         '../ui.gyp:ui',
598         'views',
599       ],
600       'include_dirs': [
601         '..',
602       ],
603       'sources': [
604         'corewm/tooltip_controller_test_helper.cc',
605         'corewm/tooltip_controller_test_helper.h',
606         'test/capture_tracking_view.cc',
607         'test/capture_tracking_view.h',
608         'test/child_modal_window.cc',
609         'test/child_modal_window.h',
610         'test/desktop_test_views_delegate.cc',
611         'test/desktop_test_views_delegate.h',
612         'test/test_views.cc',
613         'test/test_views.h',
614         'test/test_views_delegate.cc',
615         'test/test_views_delegate.h',
616         'test/test_widget_observer.cc',
617         'test/test_widget_observer.h',
618         'test/views_test_base.cc',
619         'test/views_test_base.h',
620       ],
621       'conditions': [
622         ['use_aura==1', {
623           'dependencies': [
624             '../aura/aura.gyp:aura_test_support',
625             '../compositor/compositor.gyp:compositor',
626           ],
627         }, {  # use_aura==0
628           'sources!': [
629             'corewm/tooltip_controller_test_helper.cc',
630             'corewm/tooltip_controller_test_helper.h',
631             'test/child_modal_window.cc',
632             'test/child_modal_window.h',
633           ],
634         }],
635       ],
636     },  # target_name: views_test_support
637     {
638       'target_name': 'views_with_content_test_support',
639       'type': 'static_library',
640       'dependencies': [
641         '../../base/base.gyp:base',
642         '../../content/content.gyp:content',
643         '../../content/content.gyp:test_support_content',
644         '../../ipc/ipc.gyp:test_support_ipc',
645         '../../skia/skia.gyp:skia',
646         '../../testing/gtest.gyp:gtest',
647         '../ui.gyp:ui',
648         'controls/webview/webview.gyp:webview',
649         'views_test_support',
650         'views',
651       ],
652       'include_dirs': [
653         '..',
654       ],
655       'sources': [
656         'test/webview_test_helper.cc',
657         'test/webview_test_helper.h',
658       ],
659     },  # target_name: views_with_content_test_support
660     {
661       'target_name': 'views_unittests',
662       'type': 'executable',
663       'dependencies': [
664         '../../base/base.gyp:base',
665         '../../base/base.gyp:base_i18n',
666         '../../base/base.gyp:test_support_base',
667         # TODO(jcivelli): ideally the resource needed by views would be
668         #                 factored out. (for some reason it pulls in a bunch
669         #                 unrelated things like v8, sqlite nss...).
670         '../../chrome/chrome_resources.gyp:packed_resources',
671         '../../skia/skia.gyp:skia',
672         '../../testing/gmock.gyp:gmock',
673         '../../testing/gtest.gyp:gtest',
674         '../../third_party/icu/icu.gyp:icui18n',
675         '../../third_party/icu/icu.gyp:icuuc',
676         '../../url/url.gyp:url_lib',
677         '../base/strings/ui_strings.gyp:ui_strings',
678         '../compositor/compositor.gyp:compositor',
679         '../compositor/compositor.gyp:compositor_test_support',
680         '../ui.gyp:ui',
681         '../ui.gyp:ui_resources',
682         '../ui.gyp:ui_test_support',
683         'views',
684         'views_test_support',
685       ],
686       'include_dirs': [
687         '..',
688       ],
689       'sources': [
690         'accessible_pane_view_unittest.cc',
691         'animation/bounds_animator_unittest.cc',
692         'bubble/bubble_border_unittest.cc',
693         'bubble/bubble_delegate_unittest.cc',
694         'bubble/bubble_frame_view_unittest.cc',
695         'controls/button/custom_button_unittest.cc',
696         'controls/button/image_button_unittest.cc',
697         'controls/button/label_button_unittest.cc',
698         'controls/combobox/native_combobox_views_unittest.cc',
699         'controls/label_unittest.cc',
700         'controls/menu/menu_model_adapter_unittest.cc',
701         'controls/native/native_view_host_aura_unittest.cc',
702         'controls/native/native_view_host_unittest.cc',
703         'controls/prefix_selector_unittest.cc',
704         'controls/progress_bar_unittest.cc',
705         'controls/scrollbar/scrollbar_unittest.cc',
706         'controls/scroll_view_unittest.cc',
707         'controls/single_split_view_unittest.cc',
708         'controls/slider_unittest.cc',
709         'controls/styled_label_unittest.cc',
710         'controls/tabbed_pane/tabbed_pane_unittest.cc',
711         'controls/table/table_utils_unittest.cc',
712         'controls/table/table_view_unittest.cc',
713         'controls/table/test_table_model.cc',
714         'controls/table/test_table_model.h',
715         'controls/textfield/native_textfield_views_unittest.cc',
716         'controls/textfield/textfield_views_model_unittest.cc',
717         'controls/tree/tree_view_unittest.cc',
718         'corewm/capture_controller_unittest.cc',
719         'corewm/compound_event_filter_unittest.cc',
720         'corewm/cursor_manager_unittest.cc',
721         'corewm/focus_controller_unittest.cc',
722         'corewm/image_grid_unittest.cc',
723         'corewm/input_method_event_filter_unittest.cc',
724         'corewm/shadow_controller_unittest.cc',
725         'corewm/tooltip_controller_unittest.cc',
726         'corewm/visibility_controller_unittest.cc',
727         'corewm/window_animations_unittest.cc',
728         'corewm/window_util_unittest.cc',
729         'focus/focus_manager_test.h',
730         'focus/focus_manager_test.cc',
731         'focus/focus_manager_unittest.cc',
732         'focus/focus_manager_unittest_win.cc',
733         'focus/focus_traversal_unittest.cc',
734         'ime/input_method_bridge_unittest.cc',
735         'layout/box_layout_unittest.cc',
736         'layout/grid_layout_unittest.cc',
737         'touchui/touch_selection_controller_impl_unittest.cc',
738         'view_model_unittest.cc',
739         'view_model_utils_unittest.cc',
740         'view_unittest.cc',
741         'window/dialog_client_view_unittest.cc',
742         'window/dialog_delegate_unittest.cc',
743         'widget/desktop_aura/desktop_native_widget_aura_unittest.cc',
744         'widget/desktop_aura/desktop_screen_position_client_unittest.cc',
745         'widget/native_widget_aura_unittest.cc',
746         'widget/native_widget_unittest.cc',
747         'widget/native_widget_win_unittest.cc',
748         'widget/widget_unittest.cc',
749         'widget/window_reorderer_unittest.cc',
750         'run_all_unittests.cc',
751       ],
752       'conditions': [
753         ['chromeos==0', {
754           'sources!': [
755             'touchui/touch_selection_controller_impl_unittest.cc',
756           ],
757         }, { # use_chromeos==1
758           'sources/': [
759             ['exclude', 'ime/input_method_bridge_unittest.cc'],
760             ['exclude', 'widget/desktop_aura'],
761           ],
762         }],
763         ['OS=="win"', {
764           'link_settings': {
765             'libraries': [
766               '-limm32.lib',
767               '-loleacc.lib',
768             ]
769           },
770           'include_dirs': [
771             '../third_party/wtl/include',
772           ],
773         }],
774         ['OS=="win" and win_use_allocator_shim==1', {
775           'dependencies': [
776             '../../base/allocator/allocator.gyp:allocator',
777           ],
778         }],
779         ['OS=="linux" and linux_use_tcmalloc==1', {
780            # See http://crbug.com/162998#c4 for why this is needed.
781           'dependencies': [
782             '../../base/allocator/allocator.gyp:allocator',
783           ],
784         }],
785         [ 'use_aura==1', {
786           'dependencies': [
787             '../aura/aura.gyp:aura_test_support',
788           ],
789           'sources!': [
790             'widget/native_widget_win_unittest.cc',
791           ],
792         }, {  # use_aura==0
793           'sources!': [
794             'controls/native/native_view_host_aura_unittest.cc',
795             'widget/native_widget_aura_unittest.cc',
796           ],
797           'sources/': [
798             ['exclude', 'corewm'],
799             ['exclude', 'ime/input_method_bridge_unittest.cc'],
800             ['exclude', 'widget/desktop_aura'],
801             ['exclude', 'widget/window_reorderer_unittest.cc']
802           ],
803         }],
804       ],
805     },  # target_name: views_unittests
806     {
807       'target_name': 'views_examples_lib',
808       'type': '<(component)',
809       'dependencies': [
810         '../../base/base.gyp:base',
811         '../../chrome/chrome_resources.gyp:packed_resources',
812         '../../skia/skia.gyp:skia',
813         '../../third_party/icu/icu.gyp:icui18n',
814         '../../third_party/icu/icu.gyp:icuuc',
815         '../ui.gyp:ui',
816         '../ui.gyp:ui_resources',
817         'views',
818       ],
819       'include_dirs': [
820         '..',
821       ],
822       'defines': [
823         'VIEWS_EXAMPLES_IMPLEMENTATION',
824       ],
825       'sources': [
826         'examples/bubble_example.cc',
827         'examples/bubble_example.h',
828         'examples/button_example.cc',
829         'examples/button_example.h',
830         'examples/checkbox_example.cc',
831         'examples/checkbox_example.h',
832         'examples/combobox_example.cc',
833         'examples/combobox_example.h',
834         'examples/double_split_view_example.cc',
835         'examples/double_split_view_example.h',
836         'examples/example_base.cc',
837         'examples/example_base.h',
838         'examples/example_combobox_model.cc',
839         'examples/example_combobox_model.h',
840         'examples/examples_window.cc',
841         'examples/examples_window.h',
842         'examples/label_example.cc',
843         'examples/label_example.h',
844         'examples/link_example.cc',
845         'examples/link_example.h',
846         'examples/message_box_example.cc',
847         'examples/message_box_example.h',
848         'examples/menu_example.cc',
849         'examples/menu_example.h',
850         'examples/multiline_example.cc',
851         'examples/multiline_example.h',
852         'examples/progress_bar_example.cc',
853         'examples/progress_bar_example.h',
854         'examples/radio_button_example.cc',
855         'examples/radio_button_example.h',
856         'examples/scroll_view_example.cc',
857         'examples/scroll_view_example.h',
858         'examples/single_split_view_example.cc',
859         'examples/single_split_view_example.h',
860         'examples/slider_example.cc',
861         'examples/slider_example.h',
862         'examples/tabbed_pane_example.cc',
863         'examples/tabbed_pane_example.h',
864         'examples/table_example.cc',
865         'examples/table_example.h',
866         'examples/text_example.cc',
867         'examples/text_example.h',
868         'examples/textfield_example.cc',
869         'examples/textfield_example.h',
870         'examples/throbber_example.cc',
871         'examples/throbber_example.h',
872         'examples/tree_view_example.cc',
873         'examples/tree_view_example.h',
874         'examples/views_examples_export.h',
875         'examples/widget_example.cc',
876         'examples/widget_example.h',
877       ],
878       'conditions': [
879         ['OS=="win"', {
880           'include_dirs': [
881             '../third_party/wtl/include',
882           ],
883           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
884           'msvs_disabled_warnings': [ 4267, ],
885         }],
886       ],
887     },  # target_name: views_examples_lib
888     {
889       'target_name': 'views_examples_exe',
890       'type': 'executable',
891       'sources': [
892         'examples/examples_main.cc',
893       ],
894     },  # target_name: views_examples_exe
895     {
896       'target_name': 'views_examples_with_content_lib',
897       'type': '<(component)',
898       'dependencies': [
899         '../../base/base.gyp:base',
900         '../../base/base.gyp:base_i18n',
901         '../../chrome/chrome_resources.gyp:packed_resources',
902         '../../content/content.gyp:content',
903         '../../skia/skia.gyp:skia',
904         '../../third_party/icu/icu.gyp:icui18n',
905         '../../third_party/icu/icu.gyp:icuuc',
906         '../../url/url.gyp:url_lib',
907         '../ui.gyp:ui',
908         '../ui.gyp:ui_resources',
909         'controls/webview/webview.gyp:webview',
910         'views',
911       ],
912       'include_dirs': [
913         '..',
914       ],
915       'defines': [
916         'VIEWS_EXAMPLES_WITH_CONTENT_IMPLEMENTATION',
917       ],
918       'sources': [
919         'examples/bubble_example.cc',
920         'examples/bubble_example.h',
921         'examples/button_example.cc',
922         'examples/button_example.h',
923         'examples/checkbox_example.cc',
924         'examples/checkbox_example.h',
925         'examples/combobox_example.cc',
926         'examples/combobox_example.h',
927         'examples/double_split_view_example.cc',
928         'examples/double_split_view_example.h',
929         'examples/example_base.cc',
930         'examples/example_base.h',
931         'examples/example_combobox_model.cc',
932         'examples/example_combobox_model.h',
933         'examples/examples_window_with_content.cc',
934         'examples/examples_window_with_content.h',
935         'examples/label_example.cc',
936         'examples/label_example.h',
937         'examples/link_example.cc',
938         'examples/link_example.h',
939         'examples/message_box_example.cc',
940         'examples/message_box_example.h',
941         'examples/menu_example.cc',
942         'examples/menu_example.h',
943         'examples/multiline_example.cc',
944         'examples/multiline_example.h',
945         'examples/progress_bar_example.cc',
946         'examples/progress_bar_example.h',
947         'examples/radio_button_example.cc',
948         'examples/radio_button_example.h',
949         'examples/scroll_view_example.cc',
950         'examples/scroll_view_example.h',
951         'examples/single_split_view_example.cc',
952         'examples/single_split_view_example.h',
953         'examples/slider_example.cc',
954         'examples/slider_example.h',
955         'examples/tabbed_pane_example.cc',
956         'examples/tabbed_pane_example.h',
957         'examples/table_example.cc',
958         'examples/table_example.h',
959         'examples/text_example.cc',
960         'examples/text_example.h',
961         'examples/textfield_example.cc',
962         'examples/textfield_example.h',
963         'examples/throbber_example.cc',
964         'examples/throbber_example.h',
965         'examples/tree_view_example.cc',
966         'examples/tree_view_example.h',
967         'examples/views_examples_with_content_export.h',
968         'examples/webview_example.cc',
969         'examples/webview_example.h',
970         'examples/widget_example.cc',
971         'examples/widget_example.h',
972       ],
973       'conditions': [
974         ['OS=="win"', {
975           'include_dirs': [
976             '../third_party/wtl/include',
977           ],
978           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
979           'msvs_disabled_warnings': [ 4267, ],
980         }],
981       ],
982     },  # target_name: views_examples_with_content_lib
983     {
984       'target_name': 'views_examples_with_content_exe',
985       'type': 'executable',
986       'dependencies': [
987         '../../base/base.gyp:base',
988         '../../base/base.gyp:base_i18n',
989         '../../chrome/chrome_resources.gyp:packed_resources',
990         '../../content/content.gyp:content',
991         '../../content/content.gyp:content_shell_lib',
992         '../../content/content.gyp:test_support_content',
993         '../../skia/skia.gyp:skia',
994         '../../third_party/icu/icu.gyp:icui18n',
995         '../../third_party/icu/icu.gyp:icuuc',
996         '../ui.gyp:ui',
997         '../ui.gyp:ui_resources',
998         'views',
999         'views_examples_with_content_lib',
1000         'views_test_support'
1001       ],
1002       'include_dirs': [
1003         '../..',
1004       ],
1005       'sources': [
1006         '../../content/app/startup_helper_win.cc',
1007         'examples/content_client/examples_browser_main_parts.cc',
1008         'examples/content_client/examples_browser_main_parts.h',
1009         'examples/content_client/examples_content_browser_client.cc',
1010         'examples/content_client/examples_content_browser_client.h',
1011         'examples/content_client/examples_main_delegate.cc',
1012         'examples/content_client/examples_main_delegate.h',
1013         'examples/content_client/examples_main.cc',
1014       ],
1015       'conditions': [
1016         ['OS=="win"', {
1017           'link_settings': {
1018             'libraries': [
1019               '-limm32.lib',
1020               '-loleacc.lib',
1021             ]
1022           },
1023           'msvs_settings': {
1024             'VCManifestTool': {
1025               'AdditionalManifestFiles': [
1026                 'examples\\views_examples.exe.manifest',
1027               ],
1028             },
1029             'VCLinkerTool': {
1030               'SubSystem': '2',  # Set /SUBSYSTEM:WINDOWS
1031             },
1032           },
1033           'dependencies': [
1034             '../../sandbox/sandbox.gyp:sandbox',
1035           ],
1036         }],
1037         ['use_aura==1', {
1038           'dependencies': [
1039             '../compositor/compositor.gyp:compositor',
1040           ],
1041         }],
1042         ['OS=="win"', {
1043           'sources/': [
1044             # This is needed because the aura rule strips it from the default
1045             # sources list.
1046             ['include', '^../../content/app/startup_helper_win.cc'],
1047           ],
1048         }],
1049       ],
1050     },  # target_name: views_examples_with_content_exe
1051   ],