Merge pull request #1933 from akallabeth/android-localized-assets

Android localized assets
This commit is contained in:
Martin Fleisz 2014-07-07 09:46:00 +02:00
commit 190cd55e45
38 changed files with 1595 additions and 436 deletions

View File

@ -11,8 +11,10 @@ package com.freerdp.freerdpcore.presentation;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.IllegalFormatException;
import java.util.Locale;
import com.freerdp.freerdpcore.services.LibFreeRDP;
@ -21,10 +23,12 @@ import android.content.pm.PackageManager.NameNotFoundException;
import android.content.res.Configuration;
import android.os.Build;
import android.os.Bundle;
import android.util.Log;
import android.webkit.WebView;
public class AboutActivity extends Activity {
private static final String TAG = "FreeRDPCore.AboutActivity";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@ -47,6 +51,18 @@ public class AboutActivity extends Activity {
try
{
String filename = ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_LARGE) ? "about.html" : "about_phone.html";
Locale def = Locale.getDefault();
String prefix = def.getLanguage().toLowerCase(def);
String file = prefix + "_about_page/" + filename;
InputStream is;
try {
is = getAssets().open(file);
is.close();
} catch (IOException e) {
Log.e(TAG, "Missing localized asset " + file, e);
file = "about_page/" + filename;
}
BufferedReader r = new BufferedReader(new InputStreamReader(getAssets().open("about_page/" + filename)));
String line;
while ((line = r.readLine()) != null) {
@ -70,6 +86,22 @@ public class AboutActivity extends Activity {
about_html="Nothing here ;(";
}
webview.getSettings().setJavaScriptEnabled(true);
webview.loadDataWithBaseURL("file:///android_asset/about_page/", about_html, "text/html", null, "about:blank");
Locale def = Locale.getDefault();
String prefix = def.getLanguage().toLowerCase(def);
String base = "file:///android_asset/";
String dir = prefix + "_about_page/";
String file = dir + about_html;
try {
InputStream is = getAssets().open(dir);
is.close();
dir = base + dir;
} catch (IOException e) {
Log.e(TAG, "Missing localized asset " + dir, e);
dir = "file:///android_asset/about_page/";
}
webview.loadDataWithBaseURL(dir, about_html, "text/html", null,
"about:blank");
}
}

View File

@ -12,10 +12,15 @@ package com.freerdp.freerdpcore.presentation;
import android.app.Activity;
import android.content.res.Configuration;
import android.os.Bundle;
import android.util.Log;
import android.webkit.WebView;
import java.io.IOException;
import java.io.InputStream;
import java.util.Locale;
public class HelpActivity extends Activity {
private static final String TAG = "FreeRDPCore.HelpActivity";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@ -23,7 +28,28 @@ public class HelpActivity extends Activity {
WebView webview = new WebView(this);
setContentView(webview);
String filename = ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_LARGE) ? "gestures.html" : "gestures_phone.html";
webview.loadUrl("file:///android_asset/help_page/" + filename);
String filename;
if ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_LARGE)
filename = "gestures.html";
else
filename = "gestures_phone.html";
webview.getSettings().setJavaScriptEnabled(true);
Locale def = Locale.getDefault();
String prefix = def.getLanguage().toLowerCase(def);
String base = "file:///android_asset/";
String dir = prefix + "_help_page/"
+ filename;
try {
InputStream is = getAssets().open(dir);
is.close();
dir = base + dir;
} catch (IOException e) {
Log.e(TAG, "Missing localized asset " + dir, e);
dir = "file:///android_asset/help_page/" + filename;
}
webview.loadUrl(dir);
}
}

View File

@ -3,13 +3,16 @@
Copyright 2013 Thincast Technologies GmbH, Author: Martin Fleisz
This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
package com.freerdp.freerdpcore.presentation;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Locale;
import com.freerdp.freerdpcore.R;
import com.freerdp.freerdpcore.application.GlobalApp;
@ -48,225 +51,198 @@ import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.ListView;
public class HomeActivity extends Activity
{
public class HomeActivity extends Activity {
private final static String ADD_BOOKMARK_PLACEHOLDER = "add_bookmark";
private ListView listViewBookmarks;
private WebView webViewGetStarted;
private Button clearTextButton;
private EditText superBarEditText;
private BookmarkArrayAdapter manualBookmarkAdapter;
private SeparatedListAdapter separatedListAdapter;
private PlaceholderBookmark addBookmarkPlaceholder;
private PlaceholderBookmark addBookmarkPlaceholder;
private static final String TAG = "HomeActivity";
private static final String PARAM_SUPERBAR_TEXT = "superbar_text";
private String sectionLabelBookmarks;
@Override
public void onCreate(Bundle savedInstanceState)
{
setTitle(R.string.title_home);
public void onCreate(Bundle savedInstanceState) {
setTitle(R.string.title_home);
super.onCreate(savedInstanceState);
setContentView(R.layout.home);
long heapSize = Runtime.getRuntime().maxMemory();
Log.i(TAG, "Max HeapSize: " + heapSize);
Log.i(TAG, "App data folder: " + getFilesDir().toString());
Log.i(TAG, "App data folder: " + getFilesDir().toString());
// load strings
sectionLabelBookmarks = getResources().getString(R.string.section_bookmarks);
sectionLabelBookmarks = getResources().getString(R.string.section_bookmarks);
// create add bookmark/quick connect bookmark placeholder
addBookmarkPlaceholder = new PlaceholderBookmark();
addBookmarkPlaceholder.setName(ADD_BOOKMARK_PLACEHOLDER);
addBookmarkPlaceholder.setLabel(getResources().getString(R.string.list_placeholder_add_bookmark));
// check for passed .rdp file and open it in a new bookmark
Intent caller = getIntent();
Uri callParameter = caller.getData();
if (Intent.ACTION_VIEW.equals(caller.getAction()) && callParameter != null)
{
if (Intent.ACTION_VIEW.equals(caller.getAction()) && callParameter != null) {
String refStr = ConnectionReference.getFileReference(callParameter.getPath());
Bundle bundle = new Bundle();
bundle.putString(BookmarkActivity.PARAM_CONNECTION_REFERENCE, refStr);
Intent bookmarkIntent = new Intent(this.getApplicationContext(), BookmarkActivity.class);
bookmarkIntent.putExtras(bundle);
bookmarkIntent.putExtras(bundle);
startActivity(bookmarkIntent);
}
// load views
clearTextButton = (Button) findViewById(R.id.clear_search_btn);
superBarEditText = (EditText) findViewById(R.id.superBarEditText);
listViewBookmarks = (ListView) findViewById(R.id.listViewBookmarks);
webViewGetStarted = (WebView) findViewById(R.id.webViewWelcome);
superBarEditText = (EditText) findViewById(R.id.superBarEditText);
listViewBookmarks = (ListView) findViewById(R.id.listViewBookmarks);
String filename = ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_LARGE) ? "welcome.html" : "welcome_phone.html";
webViewGetStarted.loadUrl("file:///android_asset/welcome_page/" + filename);
// set listeners for the list view
Locale def = Locale.getDefault();
String prefix = def.getLanguage().toLowerCase(def);
String base = "file:///android_asset/";
String dir = prefix + "_help_page/"
+ filename;
try {
InputStream is = getAssets().open(dir);
is.close();
dir = base + dir;
} catch (IOException e) {
Log.e(TAG, "Missing localized asset " + dir, e);
dir = "file:///android_asset/help_page/" + filename;
}
// set listeners for the list view
listViewBookmarks.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String curSection = separatedListAdapter.getSectionForPosition(position);
Log.v(TAG, "Clicked on item id " + separatedListAdapter.getItemId(position) + " in section " + curSection);
if(curSection == sectionLabelBookmarks)
{
String refStr = view.getTag().toString();
if(curSection == sectionLabelBookmarks) {
String refStr = view.getTag().toString();
if (ConnectionReference.isManualBookmarkReference(refStr) ||
ConnectionReference.isHostnameReference(refStr))
{
ConnectionReference.isHostnameReference(refStr)) {
Bundle bundle = new Bundle();
bundle.putString(SessionActivity.PARAM_CONNECTION_REFERENCE, refStr);
bundle.putString(SessionActivity.PARAM_CONNECTION_REFERENCE, refStr);
Intent sessionIntent = new Intent(view.getContext(), SessionActivity.class);
sessionIntent.putExtras(bundle);
startActivity(sessionIntent);
Intent sessionIntent = new Intent(view.getContext(), SessionActivity.class);
sessionIntent.putExtras(bundle);
startActivity(sessionIntent);
// clear any search text
superBarEditText.setText("");
superBarEditText.clearFocus();
}
else if (ConnectionReference.isPlaceholderReference(refStr))
{
} else if (ConnectionReference.isPlaceholderReference(refStr)) {
// is this the add bookmark placeholder?
if (ConnectionReference.getPlaceholder(refStr).equals(ADD_BOOKMARK_PLACEHOLDER))
{
Intent bookmarkIntent = new Intent(view.getContext(), BookmarkActivity.class);
startActivity(bookmarkIntent);
if (ConnectionReference.getPlaceholder(refStr).equals(ADD_BOOKMARK_PLACEHOLDER)) {
Intent bookmarkIntent = new Intent(view.getContext(), BookmarkActivity.class);
startActivity(bookmarkIntent);
}
}
}
}
});
listViewBookmarks.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
listViewBookmarks.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
// if the selected item is not a session item (tag == null) and not a quick connect entry
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
// if the selected item is not a session item (tag == null) and not a quick connect entry
// (not a hostname connection reference) inflate the context menu
View itemView = ((AdapterContextMenuInfo)menuInfo).targetView;
String refStr = itemView.getTag() != null ? itemView.getTag().toString() : null;
if (refStr != null && !ConnectionReference.isHostnameReference(refStr) && !ConnectionReference.isPlaceholderReference(refStr))
{
String refStr = itemView.getTag() != null ? itemView.getTag().toString() : null;
if (refStr != null && !ConnectionReference.isHostnameReference(refStr) && !ConnectionReference.isPlaceholderReference(refStr)) {
getMenuInflater().inflate(R.menu.bookmark_context_menu, menu);
menu.setHeaderTitle(getResources().getString(R.string.menu_title_bookmark));
menu.setHeaderTitle(getResources().getString(R.string.menu_title_bookmark));
}
}
}
});
superBarEditText.addTextChangedListener(new SuperBarTextWatcher());
superBarEditText.addTextChangedListener(new SuperBarTextWatcher());
clearTextButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
superBarEditText.setText("");
}
});
webViewGetStarted.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
if (url.endsWith("new_connection"))
{
Intent bookmarkIntent = new Intent(getApplicationContext(), BookmarkActivity.class);
startActivity(bookmarkIntent);
return true;
}
return false;
superBarEditText.setText("");
}
});
});
}
@Override
public boolean onSearchRequested() {
superBarEditText.requestFocus();
return true;
}
@Override
public boolean onContextItemSelected(MenuItem aItem) {
// get connection reference
AdapterContextMenuInfo menuInfo = (AdapterContextMenuInfo)aItem.getMenuInfo();
String refStr = menuInfo.targetView.getTag().toString();
AdapterContextMenuInfo menuInfo = (AdapterContextMenuInfo)aItem.getMenuInfo();
String refStr = menuInfo.targetView.getTag().toString();
// refer to http://tools.android.com/tips/non-constant-fields why we can't use switch/case here ..
int itemId = aItem.getItemId();
if (itemId == R.id.bookmark_connect)
{
if (itemId == R.id.bookmark_connect) {
Bundle bundle = new Bundle();
bundle.putString(SessionActivity.PARAM_CONNECTION_REFERENCE, refStr);
Intent sessionIntent = new Intent(this, SessionActivity.class);
sessionIntent.putExtras(bundle);
bundle.putString(SessionActivity.PARAM_CONNECTION_REFERENCE, refStr);
Intent sessionIntent = new Intent(this, SessionActivity.class);
sessionIntent.putExtras(bundle);
startActivity(sessionIntent);
startActivity(sessionIntent);
return true;
}
else if (itemId == R.id.bookmark_edit)
{
} else if (itemId == R.id.bookmark_edit) {
Bundle bundle = new Bundle();
bundle.putString(BookmarkActivity.PARAM_CONNECTION_REFERENCE, refStr);
Intent bookmarkIntent = new Intent(this.getApplicationContext(), BookmarkActivity.class);
bookmarkIntent.putExtras(bundle);
bookmarkIntent.putExtras(bundle);
startActivity(bookmarkIntent);
return true;
}
else if (itemId == R.id.bookmark_delete)
{
if(ConnectionReference.isManualBookmarkReference(refStr))
{
} else if (itemId == R.id.bookmark_delete) {
if(ConnectionReference.isManualBookmarkReference(refStr)) {
long id = ConnectionReference.getManualBookmarkId(refStr);
GlobalApp.getManualBookmarkGateway().delete(id);
manualBookmarkAdapter.remove(id);
separatedListAdapter.notifyDataSetChanged();
}
else
{
} else {
assert false;
}
showWelcomeScreenOrBookmarkList();
// clear super bar text
superBarEditText.setText("");
return true;
}
return true;
}
return false;
}
}
@Override
protected void onResume() {
super.onResume();
Log.v(TAG, "HomeActivity.onResume");
// create bookmark cursor adapter
manualBookmarkAdapter = new BookmarkArrayAdapter(this, R.layout.bookmark_list_item, GlobalApp.getManualBookmarkGateway().findAll());
// add add bookmark item to manual adapter
manualBookmarkAdapter.insert(addBookmarkPlaceholder, 0);
// attach all adapters to the separatedListView adapter and assign it to the list view
separatedListAdapter = new SeparatedListAdapter(this);
separatedListAdapter.addSection(sectionLabelBookmarks, manualBookmarkAdapter);
listViewBookmarks.setAdapter(separatedListAdapter);
// show welcome screen in case we have a first-time user
showWelcomeScreenOrBookmarkList();
listViewBookmarks.setAdapter(separatedListAdapter);
// if we have a filter text entered cause an update to be caused here
String filter = superBarEditText.getText().toString();
if (filter.length() > 0)
@ -283,54 +259,46 @@ public class HomeActivity extends Activity
separatedListAdapter = null;
manualBookmarkAdapter = null;
}
@Override
public void onBackPressed()
{
// if back was pressed - ask the user if he really wants to exit
if (GlobalSettings.getAskOnExit())
{
public void onBackPressed() {
// if back was pressed - ask the user if he really wants to exit
if (GlobalSettings.getAskOnExit()) {
final CheckBox cb = new CheckBox(this);
cb.setChecked(!GlobalSettings.getAskOnExit());
cb.setText(R.string.dlg_dont_show_again);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.dlg_title_exit)
.setMessage(R.string.dlg_msg_exit)
.setView(cb)
.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which)
{
GlobalSettings.setAskOnExit(!cb.isChecked());
finish();
}
public void onClick(DialogInterface dialog, int which) {
GlobalSettings.setAskOnExit(!cb.isChecked());
finish();
}
})
.setNegativeButton(R.string.no, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which)
{
GlobalSettings.setAskOnExit(!cb.isChecked());
dialog.dismiss();
}
public void onClick(DialogInterface dialog, int which) {
GlobalSettings.setAskOnExit(!cb.isChecked());
dialog.dismiss();
}
})
.create()
.show();
}
else
{
.show();
} else {
super.onBackPressed();
}
}
@Override
protected void onSaveInstanceState(Bundle outState)
{
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putString(PARAM_SUPERBAR_TEXT, superBarEditText.getText().toString());
}
@Override
protected void onRestoreInstanceState(Bundle inState)
{
protected void onRestoreInstanceState(Bundle inState) {
super.onRestoreInstanceState(inState);
superBarEditText.setText(inState.getString(PARAM_SUPERBAR_TEXT));
}
@ -347,45 +315,29 @@ public class HomeActivity extends Activity
// refer to http://tools.android.com/tips/non-constant-fields why we can't use switch/case here ..
int itemId = item.getItemId();
if (itemId == R.id.newBookmark)
{
if (itemId == R.id.newBookmark) {
Intent bookmarkIntent = new Intent(this, BookmarkActivity.class);
startActivity(bookmarkIntent);
}
else if (itemId == R.id.appSettings)
{
startActivity(bookmarkIntent);
} else if (itemId == R.id.appSettings) {
Intent settingsIntent = new Intent(this, ApplicationSettingsActivity.class);
startActivity(settingsIntent);
}
else if (itemId == R.id.help)
{
} else if (itemId == R.id.help) {
Intent helpIntent = new Intent(this, HelpActivity.class);
startActivity(helpIntent);
}
else if (itemId == R.id.about)
{
} else if (itemId == R.id.about) {
Intent aboutIntent = new Intent(this, AboutActivity.class);
startActivity(aboutIntent);
}
return true;
}
private void showWelcomeScreenOrBookmarkList()
{
listViewBookmarks.setVisibility(View.VISIBLE);
webViewGetStarted.setVisibility(View.GONE);
}
private class SuperBarTextWatcher implements TextWatcher
{
private class SuperBarTextWatcher implements TextWatcher {
@Override
public void afterTextChanged(Editable s) {
if(separatedListAdapter != null)
{
if(separatedListAdapter != null) {
String text = s.toString();
if(text.length() > 0)
{
if(text.length() > 0) {
ArrayList<BookmarkBase> computers_list = GlobalApp.getQuickConnectHistoryGateway().findHistory(text);
computers_list.addAll(GlobalApp.getManualBookmarkGateway().findByLabelOrHostnameLike(text));
manualBookmarkAdapter.replaceItems(computers_list);
@ -393,13 +345,11 @@ public class HomeActivity extends Activity
qcBm.setLabel(text);
qcBm.setHostname(text);
manualBookmarkAdapter.insert(qcBm, 0);
}
else
{
} else {
manualBookmarkAdapter.replaceItems(GlobalApp.getManualBookmarkGateway().findAll());
manualBookmarkAdapter.insert(addBookmarkPlaceholder, 0);
}
separatedListAdapter.notifyDataSetChanged();
}
}
@ -410,6 +360,6 @@ public class HomeActivity extends Activity
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
}
}
}

View File

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View File

@ -23,7 +23,7 @@ body {
font: 100%%/1.4 Helvetica;
background-color:#E9EBF8;
height: 100%%; width: 100%%; margin: 0;
background-image:url(back.jpg);
background-image:url(../background.jpg);
background-position:center;
text-align:center;
@ -153,7 +153,7 @@ a:hover, a:active, a:focus { /* this group of selectors will give a keyboard nav
<h2>aFreeRDP </br>Remote Desktop Client</h2>
</div>
<p>
<img src="FreeRDP_Logo.png" width="30%%"></p>
<img src="../FreeRDP_Logo.png" width="30%%"></p>
<div id="introduction">
aFreeRDP is an open source client

View File

@ -23,7 +23,7 @@ body {
font: 100%%/1 Helvetica;
background-color:#E9EBF8;
height: 100%%; width: 100%%; margin: 0;
background-image:url(back.jpg);
background-image:url(../background.jpg);
background-position:center;
text-align:center;
@ -155,7 +155,7 @@ a:hover, a:active, a:focus { /* this group of selectors will give a keyboard nav
<h2>aFreeRDP</br>Remote Desktop Client</h2>
</div>
<p>
<img src="FreeRDP_Logo.png" width="25%%"></p>
<img src="../FreeRDP_Logo.png" width="25%%"></p>
<div id="introduction">
<b>aFreeRDP</b> is an open source client for Windows Remote Services using Remote Desktop Protocol (RDP) in order to remotely access your Windows desktop.</div>

View File

Before

Width:  |  Height:  |  Size: 140 KiB

After

Width:  |  Height:  |  Size: 140 KiB

View File

@ -0,0 +1,202 @@
<html>
<head>
<meta name='viewport' content='width=device-width; initial-scale=1.0; maximum-scale=1.0;' />
<script language="javascript">
function toggle() {
var ele = document.getElementById("toggleText");
var text = document.getElementById("displayText");
if(ele.style.display == "block") {
ele.style.display = "none";
text.innerHTML = "show";
}
else {
ele.style.display = "block";
text.innerHTML = "<b>hide</b>";
}
}
</script>
<style type="text/css">
@charset "utf-8";
body {
font: 100%%/1.4 Helvetica;
background-color:#E9EBF8;
height: 100%%; width: 100%%; margin: 0;
background-image:url(../background.jpg);
background-position:center;
text-align:center;
}
.centered-table {
margin-left: auto;
margin-right: auto;
}
#headline{
background-color:#353639;
opacity:0.9;
color:FFF;
text-align:center;
}
#footer{
padding-top:10px;
}
#footer img{
padding top:10 px;
}
#article{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%%;
padding-bottom:0.1%%;
border-radius: 15px;
border-top-left-radius:0px;
border-top-right-radius:0px;
color:#000;
margin: 10px auto;
position:relative;
}
#introduction_headline{
width:inherit;
background-color:#353639;
opacity:0.9;
color:FFF;
text-align:center;
border-bottom-left-radius:15px;
border-bottom-right-radius:15px;
}
#introduction{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%%;
padding-bottom:0.1%%;
border-radius: 10px;
color:#000;
}
#container
{
margin-left: auto;
margin-right: auto;
width: 50em;
width:420px;
}
/* ~~ Element/tag selectors ~~ */
ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
padding: 0;
margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
margin-top: 0; /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
padding-right: 1px;
padding-left: 1px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method. */
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
border: none;
alignment: right;}
}
/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
/*a:link {
color:#414958;
text-decoration: underline; unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
text-decoration: none;}
a:link { color:#0000FF; }
* {
-webkit-touch-callout: none;
-webkit-user-select: none; /* Disable selection/Copy of UIWebView */
}
</style>
</head>
<body>
<div id="container">
<div id="introduction_headline">
<h2>aFreeRDP </br>Remote Desktop Client</h2>
</div>
<p>
<img src="../FreeRDP_Logo.png" width="30%%"></p>
<div id="introduction">
aFreeRDP ist ein Open Source Programm
mit nativer Unterstützung des Remote Desktop Protocol (RDP) um einen entfernten Zugriff auf Windows Desktops zu ermöglichen.</div>
<div id="article">
<div id="headline"><h3>Versions Information</h3></div>
<p>
<table class="centered-table" border=0 cellspacing=1 cellpadding=3 >
<tr>
<td>aFreeRDP Version</td> <td>%1$s</td> </tr>
<tr> <td>System Version</td> <td>%2$s</td> </tr>
<tr> <td>Model</td> <td>%3$s</td> </tr>
</table>
</p>
</div>
<div id="article">
<div id="headline">
<h3>Credits</h3>
</div>
aFreeRDP ist ein Teil von <a href="http://www.freerdp.com/">FreeRDP</a>
</div>
<div id="article">
<div id="headline">
<h3>Lizenz</h3>
</div>
This program is free software; you can redistribute it and/or modify it under the terms of the Mozilla Public License, v. 2.0.
You can obtain an online version of the License from <a href="http://mozilla.org/MPL/2.0/">http://mozilla.org/MPL/2.0/</a>.
</p>
<p>
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
</p>
<p>
A copy of the product's source code can be obtained from the FreeRDP GitHub repository at <a
href="https://github.com/FreeRDP/FreeRDP">https://github.com/FreeRDP/FreeRDP</a>.<br />
</p>
<br></div>
</body>
</html>

View File

@ -0,0 +1,201 @@
<html>
<head>
<meta name='viewport' content='width=device-width; initial-scale=1.0; maximum-scale=1.0;' />
<script language="javascript">
function toggle() {
var ele = document.getElementById("toggleText");
var text = document.getElementById("displayText");
if(ele.style.display == "block") {
ele.style.display = "none";
text.innerHTML = "show";
}
else {
ele.style.display = "block";
text.innerHTML = "<b>hide</b>";
}
}
</script>
<style type="text/css">
@charset "utf-8";
body {
font: 100%%/1 Helvetica;
background-color:#E9EBF8;
height: 100%%; width: 100%%; margin: 0;
background-image:url(../background.jpg);
background-position:center;
text-align:center;
}
.centered-table {
margin-left: auto;
margin-right: auto;
}
#headline{
background-color:#353639;
opacity:0.9;
color:FFF;
text-align:center;
}
#footer{
padding-top:10px;
}
#footer img{
padding top:10 px;
}
#article{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%%;
padding-bottom:0.1%%;
border-radius: 15px;
border-top-left-radius:0px;
border-top-right-radius:0px;
color:#000;
margin: 10px auto;
position:relative;
}
#introduction_headline{
width:inherit;
background-color:#353639;
opacity:0.9;
color:FFF;
text-align:center;
border-bottom-left-radius:15px;
border-bottom-right-radius:15px;
}
#introduction{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%%;
padding-bottom:0.1%%;
border-radius: 10px;
color:#000;
}
#container
{
margin-left: auto;
margin-right: auto;
width:300px;
}
/* ~~ Element/tag selectors ~~ */
ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
padding: 0;
margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
margin-top: 0; /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
padding-right: 1px;
padding-left: 1px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method. */
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
border: none;
alignment: right;}
}
/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
/*a:link {
color:#414958;
text-decoration: underline; unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
text-decoration: none;}
a:link { color:#0000FF; }
* {
-webkit-touch-callout: none;
-webkit-user-select: none; /* Disable selection/Copy of UIWebView */
}
}
</style>
</head>
<body>
<div id="container">
<div id="introduction_headline">
<h2>aFreeRDP</br>Remote Desktop Client</h2>
</div>
<p>
<img src="../FreeRDP_Logo.png" width="25%%"></p>
<div id="introduction">
aFreeRDP ist ein Open Source Programm
mit nativer Unterstützung des Remote Desktop Protocol (RDP) um einen entfernten Zugriff auf Windows Desktops zu ermöglichen.</div>
<div id="article">
<div id="headline"><h3>Versions Information</h3></div>
<p>
<table class="centered-table" border=0 cellspacing=1 cellpadding=3 >
<tr>
<td>aFreeRDP Version</td> <td>%1$s</td> </tr>
<tr> <td>System Version</td> <td>%2$s</td> </tr>
<tr> <td>Model</td> <td>%3$s</td> </tr>
</table>
</p>
</div>
<div id="article">
<div id="headline">
<h3>Credits</h3>
</div>
aFreeRDP ist ein Teil von <a href="http://www.freerdp.com/">FreeRDP</a>
</div>
<div id="article">
<div id="headline">
<h3>Lizenz</h3>
</div>
This program is free software; you can redistribute it and/or modify it under the terms of the Mozilla Public License, v. 2.0.
You can obtain an online version of the License from <a href="http://mozilla.org/MPL/2.0/">http://mozilla.org/MPL/2.0/</a>.
</p>
<p>
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
</p>
<p>
A copy of the product's source code can be obtained from the FreeRDP GitHub repository at <a
href="https://github.com/FreeRDP/FreeRDP">https://github.com/FreeRDP/FreeRDP</a>.<br />
</p> </div>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1,159 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;" />
<title>Help</title>
<style type="text/css">
@charset "utf-8";
#container{
text-align:center;
}
body{
margin:0;
padding:<length> 0 0 0;
font: 100%/1.4 Helvetica;
background-image:url(../background.jpg);
background-position:center;
color:#000;
}
#headline{
background-color:#353639;
opacity:0.9;
color:#000;
text-align:center;
}
#article{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%;
padding-bottom:0.1%;
border-radius: 15px;
border-top-left-radius:0px;
border-top-right-radius:0px;
color:#000;
margin: 10px auto;
position:relative;
}
#header{
height:auto;
width:100%;
background-color:#353639;
padding-bottom:5px;
padding-left:5px;
padding-right:5px;
padding-top:10px;
position: fixed;
top: 0;
left: 0;
height:40px;
overflow:visible;
min-width:400px;
z-index:20;
}
#content{
padding-top:70px;
z-index:-20;
max-width:420px;
}
/* ~~ Element/tag selectors ~~ */
ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
padding: 0;
margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
margin-top: 0; /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
padding-right: 1px;
padding-left: 1px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method.
*/
color:#000;
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
border: none;
}
/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
/*a:link {
color:#414958;
text-decoration: underline; unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
text-decoration: none;}
* {
-webkit-touch-callout: none;
-webkit-user-select: none; /* Disable selection/Copy of UIWebView */
}
</style>
</head>
<body>
<div id="container">
<center>
<div id="header">
<a href="gestures.html"><img src="nav_gestures.png"></a>
<a href="toolbar.html"><img src="nav_toolbar.png"></a>
<a href="touch_pointer.html"><img src="nav_touch_pointer.png"></a>
</div>
<div id="content">
<h1>Gesten</h1>
<p>
aFreeRDP ist für Touch Geräte entwickelt worden.
Diese Gesten lassen sie die häufigsten Operationen mit ihren Fingern durchführen.</p>
<p> <img src="gestures.png"></p>
</div>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

View File

@ -0,0 +1,159 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;" />
<title>Help</title>
<style type="text/css">
@charset "utf-8";
#container{
text-align:center;
color:#000;}
body{
margin:0;
padding:<length> 0 0 0;
font: 100% Helvetica;
background-image:url(../background.jpg);
background-position:center;
}
#headline{
background-color:#353639;
opacity:0.9;
color:FFF;
text-align:center;
}
#article{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%;
padding-bottom:0.1%;
border-radius: 15px;
border-top-left-radius:0px;
border-top-right-radius:0px;
color:#000;
margin: 10px auto;
position:relative;
}
#header{
width:100%;
background-color:#353639;
padding-bottom:1px;
padding-left:5px;
padding-right:5px;
padding-top:5px;
position: fixed;
top: 0;
left: 0;
height:30px;
min-width:250px;
z-index:20;
}
#content{
padding-top:40px;
z-index:-20;
max-width:300px;
}
/* ~~ Element/tag selectors ~~ */
ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
padding: 0;
margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
margin-top: 0; /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
padding-right: 1px;
padding-left: 1px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method.
*/
color:#000;
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
border: none;
}
/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
/*a:link {
color:#414958;
text-decoration: underline; unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
text-decoration: none;}
* {
-webkit-touch-callout: none;
-webkit-user-select: none; /* Disable selection/Copy of UIWebView */
}
</style>
</head>
<body>
<div id="container">
<center>
<div id="header">
<a href="gestures_phone.html"><img src="nav_gestures.png" height="90%"></a>
<a href="toolbar_phone.html"><img src="nav_toolbar.png" height="90%"></a>
<a href="touch_pointer_phone.html"><img src="nav_touch_pointer.png" height="90%""></a>
</div>
<div id="content">
<h2>Gesten</h2>
<p>
aFreeRDP ist für Touch Geräte entwickelt worden.
Diese Gesten lassen sie die häufigsten Operationen mit ihren Fingern durchführen.</p>
<p> <img src="gestures_phone.png"></p>
</div>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@ -0,0 +1,178 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;" />
<title>Help</title>
<style type="text/css">
@charset "utf-8";
#container{
text-align:center;
color:#FFFFFF;}
body{
margin:0;
padding:<length> 0 0 0;
font: 100%/1.4 Helvetica;
background-image:url(../background.jpg);
background-position:center;
}
#headline{
background-color:#353639;
color:#FFF;
text-align:center;
}
#article{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%;
padding-bottom:0.1%;
border-radius: 15px;
border-top-left-radius:0px;
border-top-right-radius:0px;
color:#000;
margin: 10px auto;
position:relative;
}
#header{
height:auto;
width:100%;
background-color:#353639;
padding-bottom:5px;
padding-left:5px;
padding-right:5px;
padding-top:10px;
position: fixed;
top: 0;
left: 0;
height:40px;
overflow:visible;
min-width:400px;
z-index:20;
}
#content{
padding-top:70px;
z-index:-20;
max-width:420px;
}
/* ~~ Element/tag selectors ~~ */
ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
padding: 0;
margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
margin-top: 0; /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
padding-right: 1px;
padding-left: 1px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method.
*/
color:#000;
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
border: none;
}
/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
/*a:link {
color:#414958;
text-decoration: underline; unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
text-decoration: none;}
* {
-webkit-touch-callout: none;
-webkit-user-select: none; /* Disable selection/Copy of UIWebView */
}
</style>
</head>
<body>
<div id="container">
<center>
<div id="header">
<a href="gestures.html"><img src="nav_gestures.png"></a>
<a href="toolbar.html"><img src="nav_toolbar.png"></a>
<a href="touch_pointer.html"><img src="nav_touch_pointer.png"></a>
</div>
<div id="content">
<h1>Toolbar</h1>
<p>
With the toolbar you'll be able to display and hide the main tools in your session. This allows together with the touch pointer and the gestures an intuitiv workflow for remote computing on touch sensitive screens.
</p>
<p><img src="toolbar.png"></p>
<div id="article">
<div id="headline">
<h3><span style="color:white">Tastatur</span></h3></div>
Zeige/verstecke die standard und die erweiterte Tastatur mit Funktionstasten</div>
<div id="article">
<div id="headline"><h3><span style="color:white">Touch Zeiger</span></h3></div>
Zeige/verstecke den gesten gesteuerten Zeiger</div>
<div id="article">
<div id="headline"><h3><span style="color:white">Beenden</span></h3></div>
Beende die aktuelle Sitzung. Seihen sie sich bewusst, dass das Beenden kein Logout ist.</div>
</div>
</div></center>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -0,0 +1,176 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;" />
<title>Help</title>
<style type="text/css">
@charset "utf-8";
#container{
text-align:center;
color:#FFFFFF;}
body{
margin:0;
padding:<length> 0 0 0;
font: 100% Helvetica;
background-image:url(../background.jpg);
background-position:center;
}
#headline{
background-color:#353639;
opacity:0.9;
color:FFF;
text-align:center;
}
#article{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%;
padding-bottom:0.1%;
border-radius: 15px;
border-top-left-radius:0px;
border-top-right-radius:0px;
color:#000;
margin: 10px auto;
position:relative;
}
#header{
width:100%;
background-color:#353639;
padding-bottom:1px;
padding-left:5px;
padding-right:5px;
padding-top:5px;
position: fixed;
top: 0;
left: 0;
height:30px;
min-width:250px;
z-index:20;
}
#content{
padding-top:40px;
z-index:-20;
max-width:300px;
}
/* ~~ Element/tag selectors ~~ */
ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
padding: 0;
margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
margin-top: 0; /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
padding-right: 1px;
padding-left: 1px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method.
*/
color:#000;
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
border: none;
}
/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
/*a:link {
color:#414958;
text-decoration: underline; unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
text-decoration: none;}
* {
-webkit-touch-callout: none;
-webkit-user-select: none; /* Disable selection/Copy of UIWebView */
}
</style>
</head>
<body>
<div id="container">
<center>
<div id="header">
<a href="gestures_phone.html"><img src="nav_gestures.png" height="90%"></a>
<a href="toolbar_phone.html"><img src="nav_toolbar.png" height="90%"></a>
<a href="touch_pointer_phone.html"><img src="nav_touch_pointer.png" height="90%""></a>
</div>
<div id="content">
<h2>Toolbar</h2>
<p>
With the toolbar you'll be able to display and hide the main tools in your session. This allows together with the touch pointer and the gestures an intuitiv workflow for remote computing on touch sensitive screens.
</p>
<p><img src="toolbar_phone.png"></p>
<div id="article">
<div id="headline">
<h4><span style="color:white">Tastatur</h4></span></div>
Zeige/verstecke die standard und die erweiterte Tastatur mit Funktionstasten</div>
<div id="article">
<div id="headline"><h4><span style="color:white">Touch Zeiger</h4></div>
Zeige/verstecke den gesten gesteuerten Zeiger</div>
<div id="article">
<div id="headline"><h4><span style="color:white">Beenden</span></h4></div>
Beende die aktuelle Sitzung. Seihen sie sich bewusst, dass das Beenden kein Logout ist.
</div>
</div></center>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

View File

@ -0,0 +1,164 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;" />
<title>Help</title>
<style type="text/css">
@charset "utf-8";
#container{
text-align:center;
color:#FFFFFF;}
body{
margin:0;
padding:<length> 0 0 0;
font: 100%/1.4 Helvetica;
background-image:url(../background.jpg);
background-position:center;
}
#headline{
background-color:#353639;
opacity:0.9;
color:FFF;
text-align:center;
}
#article{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%;
padding-bottom:0.1%;
border-radius: 15px;
border-top-left-radius:0px;
border-top-right-radius:0px;
color:#000;
margin: 10px auto;
position:relative;
}
#header{
height:auto;
width:100%;
background-color:#353639;
padding-bottom:5px;
padding-left:5px;
padding-right:5px;
padding-top:10px;
position: fixed;
top: 0;
left: 0;
height:40px;
overflow:visible;
min-width:400px;
z-index:20;
}
#content{
padding-top:70px;
z-index:-20;
max-width:420px;
}
/* ~~ Element/tag selectors ~~ */
ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
padding: 0;
margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
margin-top: 0; /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
padding-right: 1px;
padding-left: 1px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method.
*/
color:#000;
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
border: none;
}
/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
/*a:link {
color:#414958;
text-decoration: underline; unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
text-decoration: none;}
* {
-webkit-touch-callout: none;
-webkit-user-select: none; /* Disable selection/Copy of UIWebView */
}
</style>
</head>
<body>
<div id="container">
<center>
<div id="header">
<a href="gestures.html"><img src="nav_gestures.png"></a>
<a href="toolbar.html"><img src="nav_toolbar.png"></a>
<a href="touch_pointer.html"><img src="nav_touch_pointer.png"></a>
</div>
<div id="content">
<h1>Touch Pointer</h1>
<p><img src="touch_pointer.png">
</div>
</center>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

View File

@ -0,0 +1,161 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;" />
<title>Help</title>
<style type="text/css">
@charset "utf-8";
#container{
text-align:center;
color:#FFFFFF;}
body{
margin:0;
padding:<length> 0 0 0;
font: 100% Helvetica;
background-image:url(../background.jpg);
background-position:center;
}
#headline{
background-color:#353639;
opacity:0.9;
color:FFF;
text-align:center;
}
#article{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%;
padding-bottom:0.1%;
border-radius: 15px;
border-top-left-radius:0px;
border-top-right-radius:0px;
color:#000;
margin: 10px auto;
position:relative;
}
#header{
width:100%;
background-color:#353639;
padding-bottom:1px;
padding-left:5px;
padding-right:5px;
padding-top:5px;
position: fixed;
top: 0;
left: 0;
height:30px;
min-width:250px;
z-index:20;
}
#content{
padding-top:40px;
z-index:-20;
max-width:300px;
}
/* ~~ Element/tag selectors ~~ */
ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
padding: 0;
margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
margin-top: 0; /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
padding-right: 1px;
padding-left: 1px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method.
*/
color:#000;
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
border: none;
}
/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
/*a:link {
color:#414958;
text-decoration: underline; unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
text-decoration: none;}
* {
-webkit-touch-callout: none;
-webkit-user-select: none; /* Disable selection/Copy of UIWebView */
}
</style>
</head>
<body>
<div id="container">
<center>
<div id="header">
<a href="gestures_phone.html"><img src="nav_gestures.png" height="90%"></a>
<a href="toolbar_phone.html"><img src="nav_toolbar.png" height="90%"></a>
<a href="touch_pointer_phone.html"><img src="nav_touch_pointer.png" height="90%""></a>
</div>
<div id="content">
<h2>Touch Pointer</h2>
<p><img src="touch_pointer_phone.png">
</p>
</div>
</center>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 140 KiB

View File

@ -21,7 +21,7 @@ body{
margin:0;
padding:<length> 0 0 0;
font: 100%/1.4 Helvetica;
background-image:url(back.jpg);
background-image:url(../background.jpg);
background-position:center;
color:#000;

View File

@ -21,7 +21,7 @@ body{
margin:0;
padding:<length> 0 0 0;
font: 100% Helvetica;
background-image:url(back.jpg);
background-image:url(../background.jpg);
background-position:center;

View File

@ -21,7 +21,7 @@ body{
margin:0;
padding:<length> 0 0 0;
font: 100%/1.4 Helvetica;
background-image:url(back.jpg);
background-image:url(../background.jpg);
background-position:center;

View File

@ -21,7 +21,7 @@ body{
margin:0;
padding:<length> 0 0 0;
font: 100% Helvetica;
background-image:url(back.jpg);
background-image:url(../background.jpg);
background-position:center;

View File

@ -21,7 +21,7 @@ body{
margin:0;
padding:<length> 0 0 0;
font: 100%/1.4 Helvetica;
background-image:url(back.jpg);
background-image:url(../background.jpg);
background-position:center;

View File

@ -21,7 +21,7 @@ body{
margin:0;
padding:<length> 0 0 0;
font: 100% Helvetica;
background-image:url(back.jpg);
background-image:url(../background.jpg);
background-position:center;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 140 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

View File

@ -1,128 +0,0 @@
<html>
<head>
<meta name='viewport' content='width=device-width; initial-scale=1.0; maximum-scale=1.0;' />
<style type="text/css">
@charset "utf-8";
body {
font: 100%/1.4 Helvetica;
background-color:#E9EBF8;
height: 100%; width: 100%; margin: 0;
background-image:url(back.jpg);
}
/* ~~ Element/tag selectors ~~ */
h1, h2, h3, h4, h5, h6, p {
margin-top: 0; /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
padding-right: 1px;
padding-left: 1px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method. */
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
border: none;
alignment: right;}
/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
/*a:link {
color:#414958;
text-decoration: underline; unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
text-decoration: none;}
#number
{
margin-left:0%;
opacity:0.9;
background:#DDD;
}
#content
{
margin-left: auto;
margin-right: auto;
width:420px;
}
#headline{
width:inherit;
background-color:#353639;
border-radius: 15px;
color:FFF;
text-align:center;
border-bottom-left-radius:0px;
border-bottom-right-radius:0px;
}
#article{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%;
padding-bottom:0.1%;
border-radius: 18px;
position:relative;
}
#text{
margin-left:30px;
position:static;
margin-bottom:3%;
margin-top:3%;
}
#button{
padding-top:10px;
padding-bottom:10px;
}
a:link { color:#0000FF; }
* {
-webkit-touch-callout: none;
-webkit-user-select: none; /* Disable selection/Copy of UIWebView */
}
</style>
</head>
<body>
<div id="content">
<div id="article">
<div id="headline">
<h1>New Connection</h1>
</div><div id="text">
You can specify your own connection settings - just hit the button below or choose "New Connection" from the application menu.</div>
<div id="button">
<center><a href="new_connection"><img src="new_connection.png"></a><center></a>
</div>
</div>
</div>
</body>
</html>

View File

@ -1,121 +0,0 @@
<html>
<head>
<meta name='viewport' content='width=device-width; initial-scale=1.0; maximum-scale=1.0;' />
<style type="text/css">
@charset "utf-8";
body {
font: 100%/1 Helvetica;
background-color:#E9EBF8;
height: 100%; width: 100%; margin: 0;
background-image:url(back.jpg);
}
/* ~~ Element/tag selectors ~~ */
h1, h2, h3, h4, h5, h6, p {
margin-top: 0; /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
padding-right: 1px;
padding-left: 1px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method. */
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
border: none;
alignment: right;}
/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
/*a:link {
color:#414958;
text-decoration: underline; unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
text-decoration: none;}
#number
{
margin-left:0%;
opacity:0.9;
background:#DDD;
}
#content
{
margin-left: auto;
margin-right: auto;
width:300px;
}
#headline{
width:inherit;
background-color:#353639;
border-radius: 15px;
color:FFF;
text-align:center;
border-bottom-left-radius:0px;
border-bottom-right-radius:0px;
}
#article{
background-color:#FFFFFF;
opacity: 0.8;
z-index:0;
margin-bottom:3%;
padding-bottom:0.1%;
border-radius: 18px;
position:relative;
}
#text{
margin-left:30px;
position:static;
margin-bottom:3%;
margin-top:3%;
}
#button{
padding-top:10px;
padding-bottom:10px;
}
a:link { color:#0000FF; }
* {
-webkit-touch-callout: none;
-webkit-user-select: none; /* Disable selection/Copy of UIWebView */
}
</style>
</head>
<body>
<div id="content">
<div id="article">
<div id="headline">
<h2>New Connection</h2>
</div><div id="text">
You can specify your own connection settings - just hit the button below or choose "New Connection" from the application menu.</div>
<div id="button">
<center><a href="new_connection"><img src="new_connection.png"></a><center></a>
</div>
</div>
</div>
</body>
</html>