UWP – Jak zakázat zoomování WebView

Ovládací prvek WebView slouží k zobrazení webového obsahu uvnitř aplikace. Je potom jedno, zda používáte XAML a C# nebo HTML a JavaSciript, do WebView natáhnete webovou stránku a engine ji vykreslí.

Ve výchozím nastavení reaguje WebView na klasické zoomovací gesto „pinch“, kdy dvěma prsty od sebe nebo k sobě přibližujete, resp. oddalujete, vykreslený obsah. Co když ale chcete tuto možnost zakázat? WebView žádnou property, která by o zoomování rozhodovala, nemá, můžete ale upravit rovnou kód zobrazované stránky.

Přidejte do ní toto CSS:

Hotovo, WebView nyní nebude na „pinčování“ reagovat.

Testování Office add-inů na Macu

Doplňky Office už na Macu fungují. Co když ale chcete testovat aplikaci, kterou ještě nemáte ve Storu? Jde to, ale není to úpně intuitivní.

Microsoft minulý týden na Buildu oznámil, že doplňky Office fungují i v klientských aplikacích pro Mac OS. Uživatelé si tak mohou do svých Wordů, Excelů i PowerPointů instalovat doplňky z Office Storu, o nichž vývojáři prohlásili, že jsou připravené a funkční pro Mac. Aby to ale mohli s čistým svědomím udělat, musí je nejprve na jablečné platformě otestovat. Klasický sideloading přes sdílenou složku nebo app catalog, které známe z Windows, použít nejdou a nezbývá než se uchýlit k ruční práci.

Vezměte svůj soubor s manifestem (<cokoliv>.xml) a nahrajte ho do složky:

/Users/<username>/Library/Containers/com.microsoft.Word/Data/Documents/wef

Pokud wef neexistuje, je potřeba ji ručně vytvořit třeba pomocí mkdir.

A pak nakopírovat soubor třeba takto:

cp manifest.xml /Users/<username>/Library/Containers/com.microsoft.Word/Data/Documents/wef

Po spuštění Wordu (v tomto případě, pro Excel by se jenom v cestě nahradil název za com.microsoft.Excel) pak najdeme add-in v sekci „Developer Add-ins“.

image

Mazání příliš hlubokých adresářů

Tůně diskového prostoru našich počítačů mohou být hluboké a třeba takové Node.js se dokáže svou návazností balíčků zavrtat pořádně hluboko pod hladinu Céčka (nebo Déčka, /home, či jakkoliv jinak pojmenováváte svůj adresářový root).

node-packages

Na Windows to může zajít dokonce tak daleko, že vám systém nedovolí s takto hlubokou strukturou manipulovat, protože „Cesta je příliš dlouhá“.

image

Jak se potom nežádoucí složky zbavit? Způsobů je několik, mně se osvědčil tento:

  1. Otevřít cmd.
  2. Přejít dovnitř této složky, na co nejhlubší úroveň.
  3. Napsat:

    (včetně tečky na konci).
  4. Otevřít v Průzkumníku jednotku J.
  5. Smazat složku.

Jakmile je hotovo, stačí virtuální jednotku J zase odebrat:

V podstatě jsme právě vytáhli soubory z hlubin trošku víc na světlo a díky tomu nám systém dovolil je smazat.

Dokumentace k subst.

Příprava pro publikování do Windows Store cizím účtem

Aplikace do Windows Store mohou vývojáři samozřejmě publikovat sami na svůj účet, ale stále častější je scénář, kdy vyvinete aplikaci pro zákazníka (třetí stranu), předáte mu balíček a necháte jej, ať ji publikuje do Storu sám. Není to složité, ale zároveň to není ani několik kliknutí ve Visual Studiu. Pojďme si postup projít.

Continue reading

Chybí kandidát v hlavním balíčku

Snaha přesvědčit Visual Studio, aby vyrobilo balíček APPXBUNDLE, se může občas setkat s nepochopením v podobě chyby:

App manifest references the image ‚Assets\MojeAppka-square-310×310.png‘ which does not have a candidate in the main package.

Na první pohled nesmysl – když prohlédnu manifest, je v něm všechno v pořádku, však jsem taky obrázky a loga přes něj přiřazoval. Když se podívám do složky Assets, soubor tam je, ale má přívěšek .scale-100. A to je právě kámen úrazu.

Výchozí hodnota scale se pro UWP (tedy aplikace pro Windows 10) změnila na 200. Řešením je tedy doplnit patřičný soubor:

  1. Otevřít XXX.scale-100.png v grafickém editoru.
  2. Zdvojnásobit rozměry tak, aby původní obsah byl zachován uprostřed.
  3. Upravit pozadí, aby ladilo.
  4. Uložit jako XXX.scale-200.png.
  5. Opakovat pro všechny obrázky, které dělaly při tvorbě balíčku problémy.

uwp-scale

Zdroj: http://blogs.msdn.com/b/maartenb/archive/2015/10/06/missing-default-200-logos-and-appx3210.aspx

Povolujeme CORS v API

Jedna rychlovka – občas prostě chceme, aby naše API netrpělo omezením na same-origin policy prohlížeče, protože ho máme zabezpečené třeba pomocí OAuth a je nám jedno, kdo ho volá, dokud má správný access token. Řešením je CORS (Cross-Origin Resource Sharing).

Hlavičky, kterými server prohlížeči řekne, že je mu jedno, odkud požadavek přišel, a že umí přijímat kredence, jsou tyto: