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

Side by Side Diff: chrome/browser/ui/cocoa/toolbar/reload_button_cocoa.mm

Issue 2361153002: cocoa browser: remove non-material toolbar support (Closed)
Patch Set: Created 4 years, 2 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 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 #import "chrome/browser/ui/cocoa/toolbar/reload_button_cocoa.h" 5 #import "chrome/browser/ui/cocoa/toolbar/reload_button_cocoa.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "chrome/app/chrome_command_ids.h" 10 #include "chrome/app/chrome_command_ids.h"
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 [pendingReloadTimer_ invalidate]; 82 [pendingReloadTimer_ invalidate];
83 pendingReloadTimer_ = nil; 83 pendingReloadTimer_ = nil;
84 } 84 }
85 85
86 - (void)updateTag:(NSInteger)anInt { 86 - (void)updateTag:(NSInteger)anInt {
87 if ([self tag] == anInt) 87 if ([self tag] == anInt)
88 return; 88 return;
89 89
90 // Forcibly remove any stale tooltip which is being displayed. 90 // Forcibly remove any stale tooltip which is being displayed.
91 [self removeAllToolTips]; 91 [self removeAllToolTips];
92 id cell = [self cell];
93 [self setTag:anInt]; 92 [self setTag:anInt];
94 93
95 // The old way of doing things.
96 if (!ui::MaterialDesignController::IsModeMaterial()) {
97 if (anInt == IDC_RELOAD) {
98 [cell setImageID:IDR_RELOAD
99 forButtonState:image_button_cell::kDefaultState];
100 [cell setImageID:IDR_RELOAD_H
101 forButtonState:image_button_cell::kHoverState];
102 [cell setImageID:IDR_RELOAD_P
103 forButtonState:image_button_cell::kPressedState];
104 // The stop button has a disabled image but the reload button doesn't. To
105 // unset it we have to explicilty change the image ID to 0.
106 [cell setImageID:0
107 forButtonState:image_button_cell::kDisabledState];
108 [self setToolTip:l10n_util::GetNSStringWithFixup(IDS_TOOLTIP_RELOAD)];
109 } else if (anInt == IDC_STOP) {
110 [cell setImageID:IDR_STOP
111 forButtonState:image_button_cell::kDefaultState];
112 [cell setImageID:IDR_STOP_H
113 forButtonState:image_button_cell::kHoverState];
114 [cell setImageID:IDR_STOP_P
115 forButtonState:image_button_cell::kPressedState];
116 [cell setImageID:IDR_STOP_D
117 forButtonState:image_button_cell::kDisabledState];
118 [self setToolTip:l10n_util::GetNSStringWithFixup(IDS_TOOLTIP_STOP)];
119 } else {
120 NOTREACHED();
121 }
122 return;
123 }
124
125 [self resetButtonStateImages]; 94 [self resetButtonStateImages];
126 if (anInt == IDC_RELOAD) { 95 if (anInt == IDC_RELOAD) {
127 [self setToolTip:l10n_util::GetNSStringWithFixup(IDS_TOOLTIP_RELOAD)]; 96 [self setToolTip:l10n_util::GetNSStringWithFixup(IDS_TOOLTIP_RELOAD)];
128 } else if (anInt == IDC_STOP) { 97 } else if (anInt == IDC_STOP) {
129 [self setToolTip:l10n_util::GetNSStringWithFixup(IDS_TOOLTIP_STOP)]; 98 [self setToolTip:l10n_util::GetNSStringWithFixup(IDS_TOOLTIP_STOP)];
130 } else { 99 } else {
131 NOTREACHED(); 100 NOTREACHED();
132 } 101 }
133 } 102 }
134 103
(...skipping 12 matching lines...) Expand all
147 // that reload mode is desired and disable the button. 116 // that reload mode is desired and disable the button.
148 if (isLoading) { 117 if (isLoading) {
149 [self invalidatePendingReloadTimer]; 118 [self invalidatePendingReloadTimer];
150 [self updateTag:IDC_STOP]; 119 [self updateTag:IDC_STOP];
151 } else if (force) { 120 } else if (force) {
152 [self invalidatePendingReloadTimer]; 121 [self invalidatePendingReloadTimer];
153 [self updateTag:IDC_RELOAD]; 122 [self updateTag:IDC_RELOAD];
154 } else if ([self tag] == IDC_STOP && 123 } else if ([self tag] == IDC_STOP &&
155 !pendingReloadTimer_ && 124 !pendingReloadTimer_ &&
156 [[self cell] isMouseInside]) { 125 [[self cell] isMouseInside]) {
157 id cell = [self cell]; 126 [self resetButtonStateImages];
158 if (ui::MaterialDesignController::IsModeMaterial()) { 127 NSImage* disabledStopImage =
159 [self resetButtonStateImages]; 128 [[self cell] imageForState:image_button_cell::kDisabledState
160 NSImage* disabledStopImage = 129 view:self];
161 [[self cell] imageForState:image_button_cell::kDisabledState 130 [[self cell] setImage:disabledStopImage
162 view:self];
163 [cell setImage:disabledStopImage
164 forButtonState:image_button_cell::kDefaultState];
165 [cell setImage:disabledStopImage
166 forButtonState:image_button_cell::kHoverState];
167 [cell setImage:disabledStopImage
168 forButtonState:image_button_cell::kPressedState];
169 } else {
170 [cell setImageID:IDR_STOP_D
171 forButtonState:image_button_cell::kDefaultState]; 131 forButtonState:image_button_cell::kDefaultState];
172 [cell setImageID:IDR_STOP_D 132 [[self cell] setImage:disabledStopImage
173 forButtonState:image_button_cell::kDisabledState];
174 [cell setImageID:IDR_STOP_D
175 forButtonState:image_button_cell::kHoverState]; 133 forButtonState:image_button_cell::kHoverState];
176 [cell setImageID:IDR_STOP_D 134 [[self cell] setImage:disabledStopImage
177 forButtonState:image_button_cell::kPressedState]; 135 forButtonState:image_button_cell::kPressedState];
178 }
179 pendingReloadTimer_ = 136 pendingReloadTimer_ =
180 [NSTimer timerWithTimeInterval:kPendingReloadTimeout 137 [NSTimer timerWithTimeInterval:kPendingReloadTimeout
181 target:self 138 target:self
182 selector:@selector(forceReloadState:) 139 selector:@selector(forceReloadState:)
183 userInfo:nil 140 userInfo:nil
184 repeats:NO]; 141 repeats:NO];
185 // Must add the timer to |NSRunLoopCommonModes| because 142 // Must add the timer to |NSRunLoopCommonModes| because
186 // it should run in |NSEventTrackingRunLoopMode| as well as 143 // it should run in |NSEventTrackingRunLoopMode| as well as
187 // |NSDefaultRunLoopMode|. 144 // |NSDefaultRunLoopMode|.
188 [[NSRunLoop currentRunLoop] addTimer:pendingReloadTimer_ 145 [[NSRunLoop currentRunLoop] addTimer:pendingReloadTimer_
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
300 257
301 @end // ReloadButton 258 @end // ReloadButton
302 259
303 @implementation ReloadButton (Testing) 260 @implementation ReloadButton (Testing)
304 261
305 + (void)setPendingReloadTimeout:(NSTimeInterval)seconds { 262 + (void)setPendingReloadTimeout:(NSTimeInterval)seconds {
306 kPendingReloadTimeout = seconds; 263 kPendingReloadTimeout = seconds;
307 } 264 }
308 265
309 @end 266 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698