OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2016 Google Inc. | 2 * Copyright 2016 Google Inc. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 #include "Viewer.h" | 8 #include "Viewer.h" |
9 | 9 |
10 #include "GMSlide.h" | 10 #include "GMSlide.h" |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
114 fWindow->registerTouchFunc(on_touch_handler, this); | 114 fWindow->registerTouchFunc(on_touch_handler, this); |
115 fWindow->registerUIStateChangedFunc(on_ui_state_changed_handler, this); | 115 fWindow->registerUIStateChangedFunc(on_ui_state_changed_handler, this); |
116 | 116 |
117 // add key-bindings | 117 // add key-bindings |
118 fCommands.addCommand('s', "Overlays", "Toggle stats display", [this]() { | 118 fCommands.addCommand('s', "Overlays", "Toggle stats display", [this]() { |
119 this->fDisplayStats = !this->fDisplayStats; | 119 this->fDisplayStats = !this->fDisplayStats; |
120 fWindow->inval(); | 120 fWindow->inval(); |
121 }); | 121 }); |
122 fCommands.addCommand('c', "Modes", "Toggle sRGB color mode", [this]() { | 122 fCommands.addCommand('c', "Modes", "Toggle sRGB color mode", [this]() { |
123 DisplayParams params = fWindow->getDisplayParams(); | 123 DisplayParams params = fWindow->getDisplayParams(); |
124 params.fColorSpace = (nullptr == params.fColorSpace) | 124 params.fProfileType = (kLinear_SkColorProfileType == params.fProfileType
) |
125 ? SkColorSpace::NewNamed(SkColorSpace::kSRGB_Named) : nullptr; | 125 ? kSRGB_SkColorProfileType : kLinear_SkColorProfileType; |
126 fWindow->setDisplayParams(params); | 126 fWindow->setDisplayParams(params); |
127 this->updateTitle(); | 127 this->updateTitle(); |
128 fWindow->inval(); | 128 fWindow->inval(); |
129 }); | 129 }); |
130 fCommands.addCommand(Window::Key::kRight, "Right", "Navigation", "Next slide
", [this]() { | 130 fCommands.addCommand(Window::Key::kRight, "Right", "Navigation", "Next slide
", [this]() { |
131 int previousSlide = fCurrentSlide; | 131 int previousSlide = fCurrentSlide; |
132 fCurrentSlide++; | 132 fCurrentSlide++; |
133 if (fCurrentSlide >= fSlides.count()) { | 133 if (fCurrentSlide >= fSlides.count()) { |
134 fCurrentSlide = 0; | 134 fCurrentSlide = 0; |
135 } | 135 } |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
250 | 250 |
251 | 251 |
252 Viewer::~Viewer() { | 252 Viewer::~Viewer() { |
253 fWindow->detach(); | 253 fWindow->detach(); |
254 delete fWindow; | 254 delete fWindow; |
255 } | 255 } |
256 | 256 |
257 void Viewer::updateTitle() { | 257 void Viewer::updateTitle() { |
258 SkString title("Viewer: "); | 258 SkString title("Viewer: "); |
259 title.append(fSlides[fCurrentSlide]->getName()); | 259 title.append(fSlides[fCurrentSlide]->getName()); |
260 | 260 if (kSRGB_SkColorProfileType == fWindow->getDisplayParams().fProfileType) { |
261 // TODO: For now, any color-space on the window means sRGB | |
262 if (fWindow->getDisplayParams().fColorSpace) { | |
263 title.append(" sRGB"); | 261 title.append(" sRGB"); |
264 } | 262 } |
265 title.append(kBackendTypeStrings[fBackendType]); | 263 title.append(kBackendTypeStrings[fBackendType]); |
266 fWindow->setTitle(title.c_str()); | 264 fWindow->setTitle(title.c_str()); |
267 } | 265 } |
268 | 266 |
269 void Viewer::setupCurrentSlide(int previousSlide) { | 267 void Viewer::setupCurrentSlide(int previousSlide) { |
270 if (fCurrentSlide == previousSlide) { | 268 if (fCurrentSlide == previousSlide) { |
271 return; // no change; do nothing | 269 return; // no change; do nothing |
272 } | 270 } |
(...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
561 bool newSplitScreen = stateValue.equals(kON); | 559 bool newSplitScreen = stateValue.equals(kON); |
562 if (newSplitScreen != fSplitScreen) { | 560 if (newSplitScreen != fSplitScreen) { |
563 fSplitScreen = newSplitScreen; | 561 fSplitScreen = newSplitScreen; |
564 fWindow->inval(); | 562 fWindow->inval(); |
565 updateUIState(); | 563 updateUIState(); |
566 } | 564 } |
567 } else { | 565 } else { |
568 SkDebugf("Unknown stateName: %s", stateName.c_str()); | 566 SkDebugf("Unknown stateName: %s", stateName.c_str()); |
569 } | 567 } |
570 } | 568 } |
OLD | NEW |