OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 #include "chrome/browser/themes/browser_theme_pack.h" | 5 #include "chrome/browser/themes/browser_theme_pack.h" |
6 | 6 |
| 7 #include "app/data_pack.h" |
7 #include "app/resource_bundle.h" | 8 #include "app/resource_bundle.h" |
8 #include "base/data_pack.h" | |
9 #include "base/stl_util-inl.h" | 9 #include "base/stl_util-inl.h" |
10 #include "base/string_util.h" | 10 #include "base/string_util.h" |
11 #include "base/thread_restrictions.h" | 11 #include "base/thread_restrictions.h" |
12 #include "base/utf_string_conversions.h" | 12 #include "base/utf_string_conversions.h" |
13 #include "base/values.h" | 13 #include "base/values.h" |
14 #include "chrome/browser/browser_thread.h" | 14 #include "chrome/browser/browser_thread.h" |
15 #include "chrome/browser/themes/browser_theme_provider.h" | 15 #include "chrome/browser/themes/browser_theme_provider.h" |
16 #include "gfx/codec/png_codec.h" | 16 #include "gfx/codec/png_codec.h" |
17 #include "gfx/skbitmap_operations.h" | 17 #include "gfx/skbitmap_operations.h" |
18 #include "grit/app_resources.h" | 18 #include "grit/app_resources.h" |
(...skipping 344 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
363 | 363 |
364 // The BrowserThemePack is now in a consistent state. | 364 // The BrowserThemePack is now in a consistent state. |
365 return pack; | 365 return pack; |
366 } | 366 } |
367 | 367 |
368 // static | 368 // static |
369 scoped_refptr<BrowserThemePack> BrowserThemePack::BuildFromDataPack( | 369 scoped_refptr<BrowserThemePack> BrowserThemePack::BuildFromDataPack( |
370 FilePath path, const std::string& expected_id) { | 370 FilePath path, const std::string& expected_id) { |
371 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 371 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
372 scoped_refptr<BrowserThemePack> pack(new BrowserThemePack); | 372 scoped_refptr<BrowserThemePack> pack(new BrowserThemePack); |
373 pack->data_pack_.reset(new base::DataPack); | 373 pack->data_pack_.reset(new app::DataPack); |
374 | 374 |
375 if (!pack->data_pack_->Load(path)) { | 375 if (!pack->data_pack_->Load(path)) { |
376 LOG(ERROR) << "Failed to load theme data pack."; | 376 LOG(ERROR) << "Failed to load theme data pack."; |
377 return NULL; | 377 return NULL; |
378 } | 378 } |
379 | 379 |
380 base::StringPiece pointer; | 380 base::StringPiece pointer; |
381 if (!pack->data_pack_->GetStringPiece(kHeaderID, &pointer)) | 381 if (!pack->data_pack_->GetStringPiece(kHeaderID, &pointer)) |
382 return NULL; | 382 return NULL; |
383 pack->header_ = reinterpret_cast<BrowserThemePackHeader*>(const_cast<char*>( | 383 pack->header_ = reinterpret_cast<BrowserThemePackHeader*>(const_cast<char*>( |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
441 resources[kSourceImagesID] = base::StringPiece( | 441 resources[kSourceImagesID] = base::StringPiece( |
442 reinterpret_cast<const char*>(source_images_), | 442 reinterpret_cast<const char*>(source_images_), |
443 source_count * sizeof(*source_images_)); | 443 source_count * sizeof(*source_images_)); |
444 | 444 |
445 AddRawImagesTo(image_memory_, &resources); | 445 AddRawImagesTo(image_memory_, &resources); |
446 | 446 |
447 RawImages reencoded_images; | 447 RawImages reencoded_images; |
448 RepackImages(prepared_images_, &reencoded_images); | 448 RepackImages(prepared_images_, &reencoded_images); |
449 AddRawImagesTo(reencoded_images, &resources); | 449 AddRawImagesTo(reencoded_images, &resources); |
450 | 450 |
451 return base::DataPack::WritePack(path, resources); | 451 return app::DataPack::WritePack(path, resources); |
452 } | 452 } |
453 | 453 |
454 bool BrowserThemePack::GetTint(int id, color_utils::HSL* hsl) const { | 454 bool BrowserThemePack::GetTint(int id, color_utils::HSL* hsl) const { |
455 if (tints_) { | 455 if (tints_) { |
456 for (int i = 0; i < kTintArraySize; ++i) { | 456 for (int i = 0; i < kTintArraySize; ++i) { |
457 if (tints_[i].id == id) { | 457 if (tints_[i].id == id) { |
458 hsl->h = tints_[i].h; | 458 hsl->h = tints_[i].h; |
459 hsl->s = tints_[i].s; | 459 hsl->s = tints_[i].s; |
460 hsl->l = tints_[i].l; | 460 hsl->l = tints_[i].l; |
461 return true; | 461 return true; |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
576 colors_(NULL), | 576 colors_(NULL), |
577 display_properties_(NULL), | 577 display_properties_(NULL), |
578 source_images_(NULL) { | 578 source_images_(NULL) { |
579 } | 579 } |
580 | 580 |
581 void BrowserThemePack::BuildHeader(const Extension* extension) { | 581 void BrowserThemePack::BuildHeader(const Extension* extension) { |
582 header_ = new BrowserThemePackHeader; | 582 header_ = new BrowserThemePackHeader; |
583 header_->version = kThemePackVersion; | 583 header_->version = kThemePackVersion; |
584 | 584 |
585 // TODO(erg): Need to make this endian safe on other computers. Prerequisite | 585 // TODO(erg): Need to make this endian safe on other computers. Prerequisite |
586 // is that base::DataPack removes this same check. | 586 // is that app::DataPack removes this same check. |
587 #if defined(__BYTE_ORDER) | 587 #if defined(__BYTE_ORDER) |
588 // Linux check | 588 // Linux check |
589 COMPILE_ASSERT(__BYTE_ORDER == __LITTLE_ENDIAN, | 589 COMPILE_ASSERT(__BYTE_ORDER == __LITTLE_ENDIAN, |
590 datapack_assumes_little_endian); | 590 datapack_assumes_little_endian); |
591 #elif defined(__BIG_ENDIAN__) | 591 #elif defined(__BIG_ENDIAN__) |
592 // Mac check | 592 // Mac check |
593 #error DataPack assumes little endian | 593 #error DataPack assumes little endian |
594 #endif | 594 #endif |
595 header_->little_endian = 1; | 595 header_->little_endian = 1; |
596 | 596 |
(...skipping 444 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1041 hsl.h = tints_[i].h; | 1041 hsl.h = tints_[i].h; |
1042 hsl.s = tints_[i].s; | 1042 hsl.s = tints_[i].s; |
1043 hsl.l = tints_[i].l; | 1043 hsl.l = tints_[i].l; |
1044 return hsl; | 1044 return hsl; |
1045 } | 1045 } |
1046 } | 1046 } |
1047 } | 1047 } |
1048 | 1048 |
1049 return BrowserThemeProvider::GetDefaultTint(id); | 1049 return BrowserThemeProvider::GetDefaultTint(id); |
1050 } | 1050 } |
OLD | NEW |