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