diff --git a/bazaar/ChromiumBrowser/ClientApp.cpp b/bazaar/ChromiumBrowser/ClientApp.cpp index 906751e20..20cac9607 100644 --- a/bazaar/ChromiumBrowser/ClientApp.cpp +++ b/bazaar/ChromiumBrowser/ClientApp.cpp @@ -15,13 +15,17 @@ void ClientApp::OnBeforeCommandLineProcessing(const CefString& process_type, Cef command_line->AppendSwitch("disable-pinch"); #ifdef PLATFORM_LINUX - Upp::String fp = Upp::GetExeDirFile("libpepflashplayer.so"); - if (Upp::FileExists(fp)) command_line->AppendSwitchWithValue("ppapi-flash-path", ~fp); + const char flash_name[] = "libpepflashplayer.so"; #elif defined(PLATFORM_WIN32) - Upp::String fp = Upp::GetExeDirFile("pepflashplayer.dll"); - if (Upp::FileExists(fp)) command_line->AppendSwitchWithValue("ppapi-flash-path", ~fp); + const char flash_name[] = "pepflashplayer.dll"; #endif + Upp::String fp = Upp::GetExeDirFile(flash_name); + if (Upp::FileExists(fp)){ + command_line->AppendSwitchWithValue("ppapi-flash-path", ~fp); + Upp::String fv = ParseJSON(LoadFile(Upp::GetExeDirFile("manifest.json")))["version"]; + command_line->AppendSwitchWithValue("ppapi-flash-version", fv.IsEmpty() ? "30.0.0.154" : ~fv); + } } diff --git a/bazaar/ChromiumBrowser/src.tpp/ChromiumBrowser_en-us.tpp b/bazaar/ChromiumBrowser/src.tpp/ChromiumBrowser_en-us.tpp index 5b2b81539..bf0bf379d 100644 --- a/bazaar/ChromiumBrowser/src.tpp/ChromiumBrowser_en-us.tpp +++ b/bazaar/ChromiumBrowser/src.tpp/ChromiumBrowser_en-us.tpp @@ -1,4 +1,5 @@ topic ""; +[2 $$0,0#00000000000000000000000000000000:Default] [i448;a25;kKO9;2 $$1,0#37138531426314131252341829483380:class] [l288;2 $$2,2#27521748481378242620020725143825:desc] [0 $$3,0#96390100711032703541132217272105:end] @@ -8,7 +9,6 @@ topic ""; [l288;i1121;b17;O9;~~~.1408;2 $$7,0#10431211400427159095818037425705:param] [i448;b42;O9;2 $$8,8#61672508125594000341940100500538:tparam] [b42;2 $$9,9#13035079074754324216151401829390:normal] -[2 $$0,0#00000000000000000000000000000000:Default] [{_}%EN-US [ {{10000@(113.42.0) [s0; [*@7;4 ChromiumBrowser]]}}&] [s0;i448;a25;kKO9;%- [@(0.0.255)3 class][3 _][*3 ChromiumBrowser][3 _:_][@(0.0.255)3 public][3 _][*@3;3 C @@ -71,79 +71,10 @@ it&] [s0;i150;O0; before you run compiled application, copy asset files and libraries to the output directory. Please check [C Release] and [C Resources] subdirectories from CEF to see the list of required -files. It should look like this:&] -[s0; &] -[s0; -|ChromiumBrowserExample&] -[s0; -|├── cef`_100`_percent.pak&] -[s0; -|├── cef`_200`_percent.pak&] -[s0; -|├── cef`_extensions.pak&] -[s0; -|├── cef.pak&] -[s0; -|├── chrome`-sandbox&] -[s0; -|├── ChromiumBrowserExample&] -[s0; -|├── devtools`_resources.pak&] -[s0; -|├── icudtl.dat&] -[s0; -|├── libcef.so&] -[s0; -|├── libwidevinecdmadapter.so&] -[s0; -|├── locales&] -[s0; -|│__ ├── am.pak&] -[s0; -|│__ ├── ar.pak&] -[s0; -|│__ ├── bg.pak&] -[s0; -|│__ ├── bn.pak&] -[s0; -|│__ ├── ca.pak&] -[s0; -|│__ ├── cs.pak&] -[s0; -|│__ ├── da.pak&] -[s0; -|│__ ├── de.pak&] -[s0; -|│__ ├── el.pak&] -[s0; -|│__ ├── en`-GB.pak&] -[s0; -|│__ ├── en`-US.pak&] -[s0; -|│__ ├── es`-419.pak&] -[s0; -|│__ ├── es.pak&] -[s0; -|│__ ├── et.pak&] -[s0; -|│__ ├── fa.pak&] -[s0; -|│__ ├── fil.pak&] -[s0; -|│__ ├── fi.pak&] -[s0; -|│__ ├── fr.pak&] -[s0; -|│__ ├── gu.pak&] -[s0; -|│__ ├── he.pak&] -[s0; -|│__ ├── hi.pak&] -[s0; -|│__ ├── hr.pak&] -[s0; -|│__ ├── hu.pak&] -[s0; -|│__ ├── id.pak&] -[s0; -|│__ ├── it.pak&] -[s0; -|│__ ├── ja.pak&] -[s0; -|│__ ├── kn.pak&] -[s0; -|│__ ├── ko.pak&] -[s0; -|│__ ├── lt.pak&] -[s0; -|│__ ├── lv.pak&] -[s0; -|│__ ├── ml.pak&] -[s0; -|│__ ├── mr.pak&] -[s0; -|│__ ├── ms.pak&] -[s0; -|│__ ├── nb.pak&] -[s0; -|│__ ├── nl.pak&] -[s0; -|│__ ├── pl.pak&] -[s0; -|│__ ├── pt`-BR.pak&] -[s0; -|│__ ├── pt`-PT.pak&] -[s0; -|│__ ├── ro.pak&] -[s0; -|│__ ├── ru.pak&] -[s0; -|│__ ├── sk.pak&] -[s0; -|│__ ├── sl.pak&] -[s0; -|│__ ├── sr.pak&] -[s0; -|│__ ├── sv.pak&] -[s0; -|│__ ├── sw.pak&] -[s0; -|│__ ├── ta.pak&] -[s0; -|│__ ├── te.pak&] -[s0; -|│__ ├── th.pak&] -[s0; -|│__ ├── tr.pak&] -[s0; -|│__ ├── uk.pak&] -[s0; -|│__ ├── vi.pak&] -[s0; -|│__ ├── zh`-CN.pak&] -[s0; -|│__ └── zh`-TW.pak&] -[s0; -|├── natives`_blob.bin&] -[s0; -|└── snapshot`_blob.bin&] -[s0; &] +files&] [s0;i150;O0; if you need Flash plugin, install google chrome browser -and copy [C libpepflashplayer.so] from [C `~/.config/google`-chrome/PepperFlash/] -to the output directory&] +and copy [C libpepflashplayer.so] and [C manifest.json] from [C `~/.config/google`-chro +me/PepperFlash/] to the output directory&] [s0;* &] [ {{10000F(128)G(128)@1 [s0; [* Building CEF application on Windows]]}}&] [s0; &] @@ -173,84 +104,16 @@ er`\Release]&] [s0; [C -|C:`\MyApps`\cef`_binary`_3.3239.1700.g385b2d4`_windows32`\Release]&] [s0;i150;O0; open ChromiumBrowserExample from Bazaar and try to compile it&] -[s0;i150;O0; before you run compiled application, copy asset files -and libraries to the output directory. Please check [C Resources] -and [C Release] or [C Debug] subdirectory from CEF to see the list -of required files. Your application directory should look like -this:&] -[s0; &] -[s0; -|-|ChromiumBrowserExample&] -[s0; -|-|│ cef.pak&] -[s0; -|-|│ cef`_100`_percent.pak&] -[s0; -|-|│ cef`_200`_percent.pak&] -[s0; -|-|│ ChromiumBrowserExample.exe&] -[s0; -|-|│ d3dcompiler`_43.dll&] -[s0; -|-|│ d3dcompiler`_47.dll&] -[s0; -|-|│ devtools`_resources.pak&] -[s0; -|-|│ icudtl.dat&] -[s0; -|-|│ libcef.dll&] -[s0; -|-|│ libEGL.dll&] -[s0; -|-|│ libGLESv2.dll&] -[s0; -|-|│ natives`_blob.bin&] -[s0; -|-|│ snapshot`_blob.bin&] -[s0; -|-|└───locales&] -[s0; -|-| am.pak&] -[s0; -|-| ar.pak&] -[s0; -|-| bg.pak&] -[s0; -|-| bn.pak&] -[s0; -|-| ca.pak&] -[s0; -|-| cs.pak&] -[s0; -|-| da.pak&] -[s0; -|-| de.pak&] -[s0; -|-| el.pak&] -[s0; -|-| en`-GB.pak&] -[s0; -|-| en`-US.pak&] -[s0; -|-| es`-419.pak&] -[s0; -|-| es.pak&] -[s0; -|-| et.pak&] -[s0; -|-| fa.pak&] -[s0; -|-| fi.pak&] -[s0; -|-| fil.pak&] -[s0; -|-| fr.pak&] -[s0; -|-| gu.pak&] -[s0; -|-| he.pak&] -[s0; -|-| hi.pak&] -[s0; -|-| hr.pak&] -[s0; -|-| hu.pak&] -[s0; -|-| id.pak&] -[s0; -|-| it.pak&] -[s0; -|-| ja.pak&] -[s0; -|-| kn.pak&] -[s0; -|-| ko.pak&] -[s0; -|-| lt.pak&] -[s0; -|-| lv.pak&] -[s0; -|-| ml.pak&] -[s0; -|-| mr.pak&] -[s0; -|-| ms.pak&] -[s0; -|-| nb.pak&] -[s0; -|-| nl.pak&] -[s0; -|-| pl.pak&] -[s0; -|-| pt`-BR.pak&] -[s0; -|-| pt`-PT.pak&] -[s0; -|-| ro.pak&] -[s0; -|-| ru.pak&] -[s0; -|-| sk.pak&] -[s0; -|-| sl.pak&] -[s0; -|-| sr.pak&] -[s0; -|-| sv.pak&] -[s0; -|-| sw.pak&] -[s0; -|-| ta.pak&] -[s0; -|-| te.pak&] -[s0; -|-| th.pak&] -[s0; -|-| tr.pak&] -[s0; -|-| uk.pak&] -[s0; -|-| vi.pak&] -[s0; -|-| zh`-CN.pak&] -[s0; -|-| zh`-TW.pak&] -[s0; &] +[s0; before you run compiled application, copy asset files and libraries +to the output directory. Please check [C Resources] and [C Release] +or [C Debug] subdirectory from CEF to see the list of required +files (you can skip `*.lib files)&] [s0;i150;O0; if you need Flash plugin, install google chrome browser -and copy [C pepflashplayer.dll] from `"[C c:`\Program Files (x86)`\Google`\Chrome`\App -lication`\xxx`\PepperFlash]`" to the output directory&] +and copy [C pepflashplayer.dll] and [C manifest.json] from `"[C C:`\Users`\USER`_NAME`\A +ppData`\Local`\Google`\Chrome`\User Data`\PepperFlash`\XX.X.X.XXX`\]`" +to the output directory. Make sure you use file for correct architecture +(x86/x64). 64`-bit Flash library won`'t work with 32`-bit CEF +and vice versa.&] [s0; &] [ {{10000F(128)G(128)@1 [s0; [* Final remarks]]}}&] [s0;i150;O0; CEF is multiprocess and multithreaded library. Your diff --git a/bazaar/ChromiumBrowserExample/ChromiumBrowserExample.exe.manifest b/bazaar/ChromiumBrowserExample/ChromiumBrowserExample.exe.manifest new file mode 100644 index 000000000..20457d752 --- /dev/null +++ b/bazaar/ChromiumBrowserExample/ChromiumBrowserExample.exe.manifest @@ -0,0 +1,28 @@ + + + Chromium Browser Example + + + + + + + + + + + + + + + + + + + + + + diff --git a/bazaar/ChromiumBrowserExample/ChromiumBrowserExample.rc b/bazaar/ChromiumBrowserExample/ChromiumBrowserExample.rc new file mode 100644 index 000000000..74d24e6fc --- /dev/null +++ b/bazaar/ChromiumBrowserExample/ChromiumBrowserExample.rc @@ -0,0 +1,4 @@ +5555 ICON DISCARDABLE "icon.ico" +#define RT_MANIFEST 24 +#define APP_MANIFEST 1 +APP_MANIFEST RT_MANIFEST ChromiumBrowserExample.exe.manifest" \ No newline at end of file diff --git a/bazaar/ChromiumBrowserExample/ChromiumBrowserExample.upp b/bazaar/ChromiumBrowserExample/ChromiumBrowserExample.upp index 64783fe0c..8f6df97cd 100644 --- a/bazaar/ChromiumBrowserExample/ChromiumBrowserExample.upp +++ b/bazaar/ChromiumBrowserExample/ChromiumBrowserExample.upp @@ -20,6 +20,8 @@ file Utils.h, Utils.cpp, Main readonly separator, + ChromiumBrowserExample.exe.manifest, + ChromiumBrowserExample.rc, ChromiumBrowserExample.iml, ChromiumBrowserExample.lay, ChromiumBrowserExample.h, diff --git a/bazaar/ChromiumBrowserExample/icon.ico b/bazaar/ChromiumBrowserExample/icon.ico index 597064653..3105f5e5a 100644 Binary files a/bazaar/ChromiumBrowserExample/icon.ico and b/bazaar/ChromiumBrowserExample/icon.ico differ