diff --git a/src/main/java/de/bps/onyx/plugin/run/OnyxRunController.java b/src/main/java/de/bps/onyx/plugin/run/OnyxRunController.java
index 49e251e66f7d6d1f1a5b11df7c26116bea35f893..97f5095de75954eec8c2be015bea78daf40e7ab0 100644
--- a/src/main/java/de/bps/onyx/plugin/run/OnyxRunController.java
+++ b/src/main/java/de/bps/onyx/plugin/run/OnyxRunController.java
@@ -38,7 +38,6 @@ import org.olat.core.gui.components.form.flexible.FormUIFactory;
 import org.olat.core.gui.components.form.flexible.elements.FormLink;
 import org.olat.core.gui.components.form.flexible.impl.FormBasicController;
 import org.olat.core.gui.components.form.flexible.impl.FormEvent;
-import org.olat.core.gui.components.htmlsite.HtmlStaticPageComponent;
 import org.olat.core.gui.components.link.Link;
 import org.olat.core.gui.components.link.LinkFactory;
 import org.olat.core.gui.components.velocity.VelocityContainer;
@@ -380,19 +379,11 @@ public class OnyxRunController extends BasicController {
 			if (baseContainer == null || baseContainer.resolve(sDisclaimer) == null) {
 				showWarning("disclaimer.file.invalid", sDisclaimer);
 			} else {
-				// screenreader do not like iframes, display inline
-				if (getWindowControl().getWindowBackOffice().getWindowManager().isForScreenReader()) {
-					HtmlStaticPageComponent disclaimerComp = new HtmlStaticPageComponent("disc", baseContainer);
-					vc.put("disc", disclaimerComp);
-					disclaimerComp.setCurrentURI(sDisclaimer);
-					vc.contextPut("hasDisc", Boolean.TRUE);
-				} else {
-					iFrameCtr = new IFrameDisplayController(ureq, getWindowControl(), baseContainer);
-					listenTo(iFrameCtr);// dispose automatically
-					vc.put("disc", iFrameCtr.getInitialComponent());
-					iFrameCtr.setCurrentURI(sDisclaimer);
-					vc.contextPut("hasDisc", Boolean.TRUE);
-				}
+				iFrameCtr = new IFrameDisplayController(ureq, getWindowControl(), baseContainer);
+				listenTo(iFrameCtr);// dispose automatically
+				vc.put("disc", iFrameCtr.getInitialComponent());
+				iFrameCtr.setCurrentURI(sDisclaimer);
+				vc.contextPut("hasDisc", Boolean.TRUE);
 			}
 		}
 	}
diff --git a/src/main/java/de/tuchemnitz/wizard/workflows/coursecreation/model/CourseCreationConfiguration.java b/src/main/java/de/tuchemnitz/wizard/workflows/coursecreation/model/CourseCreationConfiguration.java
index 3a63ca5e4bb1de0cf1debb5c22d5c6c6240a4025..4b1a1851278d43ca2515af0c24da53c373b0151b 100644
--- a/src/main/java/de/tuchemnitz/wizard/workflows/coursecreation/model/CourseCreationConfiguration.java
+++ b/src/main/java/de/tuchemnitz/wizard/workflows/coursecreation/model/CourseCreationConfiguration.java
@@ -37,8 +37,6 @@ import org.apache.velocity.context.Context;
 import org.olat.catalog.CatalogEntry;
 import org.olat.core.commons.editor.htmleditor.WysiwygFactory;
 import org.olat.core.gui.GlobalSettings;
-import org.olat.core.gui.components.Component;
-import org.olat.core.gui.components.ComponentRenderer;
 import org.olat.core.gui.components.velocity.VelocityContainer;
 import org.olat.core.gui.control.winmgr.AJAXFlags;
 import org.olat.core.gui.render.RenderResult;
@@ -354,9 +352,6 @@ public class CourseCreationConfiguration {
 		GlobalSettings globalSettings = new GlobalSettings() {
 			public int getFontSize() { return 100;}
 			public AJAXFlags getAjaxFlags() { return new EmptyAJAXFlags();}
-			public ComponentRenderer getComponentRendererFor(Component source) {
-				return null;
-			}
 			public boolean isIdDivsForced() { return false; }
 		};
 		
diff --git a/src/main/java/org/olat/basesecurity/AuthHelper.java b/src/main/java/org/olat/basesecurity/AuthHelper.java
index 13ea9f7f317e85ecc45c2d979c1d14ef76134d84..d0a26e7093b6441a3a74f0b31eb7325d577de1ec 100644
--- a/src/main/java/org/olat/basesecurity/AuthHelper.java
+++ b/src/main/java/org/olat/basesecurity/AuthHelper.java
@@ -65,7 +65,6 @@ import org.olat.core.util.UserSession;
 import org.olat.core.util.WebappHelper;
 import org.olat.core.util.i18n.I18nManager;
 import org.olat.core.util.i18n.I18nModule;
-import org.olat.core.util.prefs.Preferences;
 import org.olat.core.util.session.UserSessionManager;
 import org.olat.login.AuthBFWCParts;
 import org.olat.login.GuestBFWCParts;
@@ -455,16 +454,6 @@ public class AuthHelper {
 	 * @param ureq
 	 */
 	private static void setAjaxModeFor(UserRequest ureq) {
-		Preferences prefs = ureq.getUserSession().getGuiPreferences();
-		
-		Boolean web2aEnabled = (Boolean) prefs.get(WindowManager.class, "web2a-beta-on");
-		// first check for web2a mode which wants ajax off
-		if (web2aEnabled != null && web2aEnabled.booleanValue()) {
-			Windows.getWindows(ureq).getWindowManager().setForScreenReader(true);		
-			Windows.getWindows(ureq).getWindowManager().setAjaxEnabled(false);
-			return;
-		}
-		
 		Boolean ajaxOn = (Boolean) ureq.getUserSession().getGuiPreferences().get(WindowManager.class, "ajax-beta-on");
 		//if user does not have an gui preference it will be only enabled if globally on and browser is capable
 		if (ajaxOn != null) {
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_ar.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_ar.properties
index 4525c982b2a735b8dde564e3fb1092b297d5879a..1fc8ce99cf9f395a247d5c4000421944ee24803b 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_ar.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_ar.properties
@@ -85,7 +85,5 @@ warn.beta.feature=\u0627\u0646\u062A\u0628\u0627\u0647\! \u0647\u0630\u0647 \u06
 warn.header=\u062A\u062D\u0630\u064A\u0631
 warn.notdispatched=\u0647\u0630\u0647 \u0627\u0644\u0635\u0641\u062D\u0629 \u062A\u0645 \u062A\u0639\u062F\u064A\u0644\u0647\u0627\u060C \u064A\u0631\u062C\u0649 \u0645\u0644\u0627\u062D\u0638\u0629 \u0623\u064A\u0629 \u0631\u0633\u0627\u0626\u0644 \u062C\u062F\u064A\u062F\u0629.
 warn.reload=\u0645\u0646 \u0641\u0636\u0644\u0643 \u0644\u0627 \u062A\u0633\u062A\u062E\u062F\u0645 \u0632\u0631 "\u0625\u0639\u0627\u062F\u0629 \u0627\u0644\u062A\u062D\u0645\u064A\u0644" \u0623\u0648 \u0632\u0631 "\u0627\u0644\u0639\u0648\u062F\u0629" \u0641\u0649 \u0627\u0644\u0645\u062A\u0635\u0641\u062D \u0627\u0644\u062E\u0627\u0635 \u0628\u0643.
-web.2a.updated=\u062A\u0645 \u0627\u0644\u062A\u062D\u062F\u064A\u062B
-web.2a.updated.alt=\u062A\u062D\u062F\u064A\u062B \u0648\u0627\u062C\u0647\u0629 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645
 welcome=\u0645\u0631\u062D\u0628\u0627\u064B
 yes=\u0646\u0639\u0645
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_de.properties
index c21e038516ecf302209d829b2978b935d4478405..e804c17798001b99bb51b06c6a1d8ccbbb3a0101 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_de.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_de.properties
@@ -102,6 +102,4 @@ warn.header=Achtung
 warn.notdispatched=Diese Seite wurde ver\u00E4ndert. Bitte beachten Sie allf\u00E4llige Meldungen.
 warn.reload=Bitte benutzen Sie nicht den `Neu Laden` oder `Zur\u00FCck` Button Ihres Browsers. 
 welcome=Willkommen
-web.2a.updated=Aktualisiert
-web.2a.updated.alt=Aktualisiertes GUI Element
 yes=Ja
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_en.properties
index 8e236350daaa696ef3fb26adc93f90f1ad94b6cf..bc184fbc119f25118478853e13b51265a50dbaab 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_en.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_en.properties
@@ -97,8 +97,6 @@ user.guest=Guest
 warn.beta.feature=Attention\! This is a beta feature. Be aware that using this feature might result in unexpected behavior.
 warn.header=Warning
 warn.notdispatched=This page has been modified. Please consider any new messages.
-warn.reload=Please do not use the `Reload` or `Back` button of your browser. 
-web.2a.updated=Updated
-web.2a.updated.alt=Updated GUI element
+warn.reload=Please do not use the `Reload` or `Back` button of your browser.
 welcome=Welcome
 yes=Yes
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_fr.properties
index 4a93f193ac1ddf15b540509fcc53fb865cb564f0..4d9c06f8bc7af9b92c45f04d7b6aa246245d933b 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_fr.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_fr.properties
@@ -100,8 +100,6 @@ user.guest=invit\u00E9
 warn.beta.feature=Attention\! Cette fonction se trouve dans la phase d'essai. Veuillez noter que des erreurs peuvent appara\u00EEtre si cette fonction est utilis\u00E9e.
 warn.header=Attention
 warn.notdispatched=Cette page a \u00E9t\u00E9 modifi\u00E9e. Veuillez tenir compte d'\u00E9ventuels messages.
-warn.reload=Veuillez ne pas cliquer sur `Actualiser` ou `Pr\u00E9c\u00E9dent` de votre navigateur. 
-web.2a.updated=Actualis\u00E9
-web.2a.updated.alt=\u00C9l\u00E9ment GUI actualis\u00E9
+warn.reload=Veuillez ne pas cliquer sur `Actualiser` ou `Pr\u00E9c\u00E9dent` de votre navigateur.
 welcome=Bienvenue
 yes=Oui
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_it.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_it.properties
index 610b7db5c1e065010fde102c4992fc6401844060..83101b248b23506cb92cc4798e167e6f34423783 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_it.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_it.properties
@@ -88,7 +88,5 @@ warn.beta.feature=Attenzione\! Questa funzione \u00E8 ancora in fase di sperimen
 warn.header=Attenzione
 warn.notdispatched=Questa pagina \u00E8 stata modificata. Tenga conto di eventuali avvisi, p.f.
 warn.reload=Non utilizzi i pulsanti `Ricarica` o `Torna indietro` del Suo browser.
-web.2a.updated=Attualizzato
-web.2a.updated.alt=Elemento GUI attualizzato
 welcome=Benvenuta/o
 yes=S\u00EC
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_jp.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_jp.properties
index 756188ca420933e3ee8d2233e6360993229086f1..43d1bd1b4f6b55bda0f875faf82d56eedd33126f 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_jp.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_jp.properties
@@ -85,7 +85,5 @@ warn.beta.feature=\u6CE8\u610F\! \u3053\u308C\u306F\u30D9\u30FC\u30BF\u7248\u306
 warn.header=\u8B66\u544A
 warn.notdispatched=\u3053\u306E\u30DA\u30FC\u30B8\u306F\u3001\u4FEE\u6B63\u3055\u308C\u307E\u3057\u305F\u3002\u65B0\u3057\u3044\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u8003\u3048\u3066\u304F\u3060\u3055\u3044\u3002
 warn.reload=\u3042\u306A\u305F\u306E\u30D6\u30E9\u30A6\u30B6\u306E\u300C\u66F4\u65B0\u300D\u307E\u305F\u306F\u300C\u623B\u308B\u300D\u30DC\u30BF\u30F3\u3092\u4F7F\u7528\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002
-web.2a.updated=\u66F4\u65B0
-web.2a.updated.alt=GUI\u30A8\u30EC\u30E1\u30F3\u30C8\u66F4\u65B0
 welcome=\u3088\u3046\u3053\u305D
 yes=Yes
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_nl_NL.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_nl_NL.properties
index 62917bd823a103df1b3bacbced0aa0d8459712d3..ee70e504af0278fdbbe9703c2302e7c70f86e32e 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_nl_NL.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_nl_NL.properties
@@ -85,7 +85,5 @@ warn.beta.feature=Let op\! Deze functie bevindt zich in de ontwikkelingsfase. Ge
 warn.header=Waarschuwing
 warn.notdispatched=Deze pagina is gewijzigd. Er kunnen nieuwe berichten zijn.
 warn.reload=Gebruik a.u.b. niet de `Verversen` of `terug` knop van uw browser.
-web.2a.updated=ge\u00FCpdatet
-web.2a.updated.alt=ge\u00FCpdatet GUI element
 welcome=Welkom
 yes=Ja
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_pl.properties
index c200b6036d9125c1da9925bf361c47c4d0121934..2407cb922e63dd9205440e453db761afe17088f6 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_pl.properties
@@ -91,7 +91,5 @@ warn.beta.feature=Uwaga, funkcja w fazie beta\! B\u0105d\u017A \u015Bwiadomy, \u
 warn.header=Ostrze\u017Cenie
 warn.notdispatched=Ta strona zosta\u0142a zmodyfikowana.
 warn.reload=Nie u\u017Cywaj przycisk\u00F3w "wstecz" i "od\u015Bwie\u017C" w swojej przegl\u0105darce.
-web.2a.updated=Zaktualizowano
-web.2a.updated.alt=Zaktualizowano element GUI
 welcome=Witaj
 yes=Tak
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_pt_BR.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_pt_BR.properties
index a2cf510468bc2ae6defe9379f989a52194f04a06..0aad0f95f95e17cd909ea9179b59b86193904d40 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_pt_BR.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_pt_BR.properties
@@ -101,7 +101,5 @@ warn.beta.feature=\=Aten\u00E7\u00E3o\! Essa \u00E9 uma fun\u00E7\u00E3o experim
 warn.header=Aviso
 warn.notdispatched=Esta p\u00E1gina foi modificada. Favor considerar poss\u00EDveis mensagens.
 warn.reload=Favor n\u00E3o usar a tecla `Atualizar` ou `Voltar` do seu browser.
-web.2a.updated=Alterado
-web.2a.updated.alt=Elemento GUI alterado
 welcome=Bemvindo
 yes=Sim
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_ru.properties
index 8b150f2c3602603ea55101a5454a37b784500182..e9342c73a306407f65dba8f4e2557d4b688f6b7e 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_ru.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_ru.properties
@@ -89,7 +89,5 @@ warn.beta.feature=\u0412\u043D\u0438\u043C\u0430\u043D\u0438\u0435\! \u042D\u044
 warn.header=\u041F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u0435
 warn.notdispatched=\u042D\u0442\u0430 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430 \u0431\u044B\u043B\u0430 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0430. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u0440\u0438\u043C\u0438\u0442\u0435 \u0432\u043E \u0432\u043D\u0438\u043C\u0430\u043D\u0438\u0435 \u043B\u044E\u0431\u044B\u0435 \u043D\u043E\u0432\u044B\u0435 \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F.
 warn.reload=\u041F\u043E\u0436\u0430\u0439\u043B\u0443\u0441\u0442\u0430, \u043D\u0435 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 \u0442\u0430\u043A\u0438\u0435 \u043A\u043D\u043E\u043F\u043A\u0438 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430 \u043A\u0430\u043A `\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0435` \u0438\u043B\u0438 `\u041D\u0430\u0437\u0430\u0434`. 
-web.2a.updated=\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u043E
-web.2a.updated.alt=\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u043D\u044B\u0439 \u044D\u043B\u0435\u043C\u0435\u043D\u0442 \u0438\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430
 welcome=\u0414\u043E\u0431\u0440\u043E \u043F\u043E\u0436\u0430\u043B\u043E\u0432\u0430\u0442\u044C
 yes=\u0414\u0430
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_zh_CN.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_zh_CN.properties
index a0c0a676187b1477d1870762a16209b193e100e4..3babdbde8c17deaee30c6c970afe391be2fe263f 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_zh_CN.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_zh_CN.properties
@@ -85,7 +85,5 @@ warn.beta.feature=\u6CE8\u610F\uFF01\u8FD9\u662F\u6D4B\u8BD5\u7248\u3002\u8981\u
 warn.header=\u8B66\u544A
 warn.notdispatched=\u8BE5\u9875\u5DF2\u7ECF\u88AB\u4FEE\u6539.\u8BF7\u8003\u8651\u53EF\u80FD\u7684\u6D88\u606F\u3002
 warn.reload=\u8BF7\u4E0D\u8981\u4F7F\u7528\u6D4F\u89C8\u5668\u7684`\u5237\u65B0`\u6216`\u8FD4\u56DE`\u6309\u94AE\u3002
-web.2a.updated=\u5DF2\u66F4\u65B0
-web.2a.updated.alt=GUI\u5143\u7D20\u5347\u7EA7
 welcome=\u6B22\u8FCE
 yes=\u662F
diff --git a/src/main/java/org/olat/core/commons/fullWebApp/BaseFullWebappController.java b/src/main/java/org/olat/core/commons/fullWebApp/BaseFullWebappController.java
index 6ffcc633ecdddf5bdfbc3e1d65931202db96f0d4..ec4d00cd83745a9604bd098593b16456dc597448 100644
--- a/src/main/java/org/olat/core/commons/fullWebApp/BaseFullWebappController.java
+++ b/src/main/java/org/olat/core/commons/fullWebApp/BaseFullWebappController.java
@@ -276,7 +276,6 @@ public class BaseFullWebappController extends BasicController implements ChiefCo
 		// out the correct value
 		mainVc.contextPut("theme", w.getGuiTheme());
 		mainVc.contextPut("globalSettings", winman.getGlobalSettings());
-		mainVc.contextPut("isScreenReader", winman.isForScreenReader());
 		// also add the optional theme javascript 
 		addThemeJS();
 
diff --git a/src/main/java/org/olat/core/commons/modules/singlepage/SinglePageController.java b/src/main/java/org/olat/core/commons/modules/singlepage/SinglePageController.java
index 8068683ba22f2dd38d6c9284b8f29db6af24b123..e2bad3c7631db384155600deafcc8d691b573a6b 100644
--- a/src/main/java/org/olat/core/commons/modules/singlepage/SinglePageController.java
+++ b/src/main/java/org/olat/core/commons/modules/singlepage/SinglePageController.java
@@ -93,7 +93,6 @@ public class SinglePageController extends BasicController implements CloneableCo
 	private String g_curURI;
 	// save constructor args to remember if we open a site in a new window
 	private String g_fileName;
-	private boolean g_inIframe;
 	private boolean g_allowRelativeLinks;
 	private VFSContainer g_rootContainer;
 	private VFSContainer g_new_rootContainer;
@@ -152,7 +151,6 @@ public class SinglePageController extends BasicController implements CloneableCo
 		// g_fileName : initial file name given (no root correction), e.g. bla.html or f/g/blu.html
 		// always use non-iframe mode for screenreaders
 		this.deliveryOptions = config;
-		this.g_inIframe = !getWindowControl().getWindowBackOffice().getWindowManager().isForScreenReader();
 		this.g_allowRelativeLinks = allowRelativeLinks;
 		this.g_fileName = fileName;
 		this.g_rootContainer = rootContainer;
@@ -206,7 +204,7 @@ public class SinglePageController extends BasicController implements CloneableCo
 		// a) configured as to be displayed in iframe and not in braille mode
 		// b) page is a direct jump in (unclear why not in this case, code was like that)
 		// c) when page type can not be inline rendered (e.g. when page is a pdf file)
-		if (g_inIframe || jumpIn || !HtmlStaticPageComponent.isFileTypeSupported(startURI)) {
+		if (jumpIn || !HtmlStaticPageComponent.isFileTypeSupported(startURI)) {
 			idc = new IFrameDisplayController(ureq, getWindowControl(), g_new_rootContainer, contextResourcable, deliveryOptions);
 			listenTo(idc);
 			
@@ -279,11 +277,7 @@ public class SinglePageController extends BasicController implements CloneableCo
 						CoreLoggingResourceable.wrapSpUri(newUri));
 			}
 		} else if (source == htmlEditorController) {
-			if (g_inIframe) {
-				idc.setCurrentURI(g_curURI);
-			} else {	
-				cpc.setCurrentURI(g_curURI);
-			}
+			idc.setCurrentURI(g_curURI);
 			mainPanel.setContent(myContent);
 		} else if (source == cpc) {
 			if (event instanceof OlatCmdEvent) {
diff --git a/src/main/java/org/olat/core/gui/GlobalSettings.java b/src/main/java/org/olat/core/gui/GlobalSettings.java
index 06155786a5b4bf7513128690311be944951a9fbe..2a6d9b335122dfe3db9a91b7fcba12de8dc11970 100644
--- a/src/main/java/org/olat/core/gui/GlobalSettings.java
+++ b/src/main/java/org/olat/core/gui/GlobalSettings.java
@@ -25,8 +25,6 @@
 */
 package org.olat.core.gui;
 
-import org.olat.core.gui.components.Component;
-import org.olat.core.gui.components.ComponentRenderer;
 import org.olat.core.gui.control.winmgr.AJAXFlags;
 
 /**
@@ -42,19 +40,12 @@ public interface GlobalSettings {
 	/**
 	 * @return fontsize relative to applied theme
 	 */
-	public abstract int getFontSize();
+	public int getFontSize();
 
 	/**
 	 * @return Returns the ajaxFlags.
 	 */
-	public abstract AJAXFlags getAjaxFlags();
-	
-	/**
-	 * Get the renderer for a specific component
-	 * @param source
-	 * @return
-	 */
-	public ComponentRenderer getComponentRendererFor(Component source);
+	public AJAXFlags getAjaxFlags();
 
 	/**
 	 * only used by the renderer if in debug mode!
@@ -63,5 +54,4 @@ public interface GlobalSettings {
 	 */
 	public boolean isIdDivsForced();
 	
-	
 }
\ No newline at end of file
diff --git a/src/main/java/org/olat/core/gui/WindowManager.java b/src/main/java/org/olat/core/gui/WindowManager.java
index 963fef6be23721f00e32c5d88e3b05039a4f6bfa..59bd52c73a7282b5f589d0c4a2e04ef701424227 100644
--- a/src/main/java/org/olat/core/gui/WindowManager.java
+++ b/src/main/java/org/olat/core/gui/WindowManager.java
@@ -65,19 +65,12 @@ public interface WindowManager extends Disposable {
 	
 	public void setAjaxEnabled(boolean enabled);
 	
-	public void setForScreenReader(boolean forScreenReader);
-	
 	public void setHighLightingEnabled(boolean enabled);
 
 	/**
 	 * @param fontSize relative to default font size
 	 */
 	public void setFontSize(int fontSize);
-
-	/**
-	 * @return
-	 */
-	public boolean isForScreenReader();
 	
 	/**
 	 * whether or not ajax mode ("web 2.0") is enabled. should only called by controllers to determine whether they can offer additional ui capabilites due to ajax turned on.
diff --git a/src/main/java/org/olat/core/gui/control/guistack/GuiStackSimpleImpl.java b/src/main/java/org/olat/core/gui/control/guistack/GuiStackSimpleImpl.java
deleted file mode 100644
index 1bff7dd5e7e72b27a9589fea21f55f4620fe962d..0000000000000000000000000000000000000000
--- a/src/main/java/org/olat/core/gui/control/guistack/GuiStackSimpleImpl.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/**
-* OLAT - Online Learning and Training<br>
-* http://www.olat.org
-* <p>
-* Licensed under the Apache License, Version 2.0 (the "License"); <br>
-* you may not use this file except in compliance with the License.<br>
-* You may obtain a copy of the License at
-* <p>
-* http://www.apache.org/licenses/LICENSE-2.0
-* <p>
-* Unless required by applicable law or agreed to in writing,<br>
-* software distributed under the License is distributed on an "AS IS" BASIS, <br>
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
-* See the License for the specific language governing permissions and <br>
-* limitations under the License.
-* <p>
-* Copyright (c) since 2004 at Multimedia- & E-Learning Services (MELS),<br>
-* University of Zurich, Switzerland.
-* <hr>
-* <a href="http://www.openolat.org">
-* OpenOLAT - Online Learning and Training</a><br>
-* This file has been modified by the OpenOLAT community. Changes are licensed
-* under the Apache 2.0 license as the original file.  
-* <p>
-*/ 
-package org.olat.core.gui.control.guistack;
-
-import org.olat.core.gui.components.Component;
-import org.olat.core.gui.components.panel.StackedPanel;
-import org.olat.core.gui.components.panel.SimpleStackedPanel;
-import org.olat.core.gui.components.velocity.VelocityContainer;
-import org.olat.core.util.Util;
-
-/**
- * Description:<br>
- * TODO: Felix Jost Class Description for Trans
- * 
- * <P>
- * Initial Date: 24.01.2007 <br>
- * @author Felix Jost, http://www.goodsolutions.ch
- */
-public class GuiStackSimpleImpl implements GuiStack {
-	private static final String VELOCITY_ROOT = Util.getPackageVelocityRoot(GuiStackSimpleImpl.class);
-	
-	private StackedPanel contentPanel;
-	
-	/**
-	 * 
-	 */
-	public GuiStackSimpleImpl(Component initialComponent) {
-		contentPanel = new SimpleStackedPanel("simpleguistack");
-		contentPanel.setContent(initialComponent);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.olat.core.gui.control.GuiStack#pushModalDialog(java.lang.String, org.olat.core.gui.components.Component)
-	 */
-	public void pushModalDialog(Component content) {
-		// wrap the component into a modal foreground dialog with alpha-blended-background
-		VelocityContainer inset = new VelocityContainer("simpleinset", VELOCITY_ROOT + "/simpleinset.html", null, null);
-		inset.put("cont", content);
-		contentPanel.pushContent(inset);
-	}
-
-	@Override
-	public void pushCallout(Component content, String targetId) {
-		pushModalDialog(content);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.olat.core.gui.control.GuiStack#pushContent(org.olat.core.gui.components.Component)
-	 */
-	public void pushContent(Component newContent) {
-		contentPanel.pushContent(newContent);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.olat.core.gui.control.GuiStack#popContent()
-	 */
-	public void popContent() {
-		contentPanel.popContent();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.olat.core.gui.control.GuiStack#getPanel()
-	 */
-	public StackedPanel getPanel() {
-		return contentPanel;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.olat.core.gui.control.GuiStack#getModalPanel()
-	 */
-	public StackedPanel getModalPanel() {
-		return null;
-	}
-
-}
diff --git a/src/main/java/org/olat/core/gui/control/guistack/_content/simpleinset.html b/src/main/java/org/olat/core/gui/control/guistack/_content/simpleinset.html
deleted file mode 100644
index 12e2d54d07a3e35ed41eedbac8366102733d1e8e..0000000000000000000000000000000000000000
--- a/src/main/java/org/olat/core/gui/control/guistack/_content/simpleinset.html
+++ /dev/null
@@ -1,3 +0,0 @@
-<div style="margin:50px">
-$r.render("cont")
-</div>
\ No newline at end of file
diff --git a/src/main/java/org/olat/core/gui/control/winmgr/ScreenReaderHandlerInstance.java b/src/main/java/org/olat/core/gui/control/winmgr/ScreenReaderHandlerInstance.java
deleted file mode 100644
index 21712f805fc79fffbdf9a5f760c0bb0d7147e4a6..0000000000000000000000000000000000000000
--- a/src/main/java/org/olat/core/gui/control/winmgr/ScreenReaderHandlerInstance.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/**
-* OLAT - Online Learning and Training<br>
-* http://www.olat.org
-* <p>
-* Licensed under the Apache License, Version 2.0 (the "License"); <br>
-* you may not use this file except in compliance with the License.<br>
-* You may obtain a copy of the License at
-* <p>
-* http://www.apache.org/licenses/LICENSE-2.0
-* <p>
-* Unless required by applicable law or agreed to in writing,<br>
-* software distributed under the License is distributed on an "AS IS" BASIS, <br>
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
-* See the License for the specific language governing permissions and <br>
-* limitations under the License.
-* <p>
-* Copyright (c) since 2004 at Multimedia- & E-Learning Services (MELS),<br>
-* University of Zurich, Switzerland.
-* <hr>
-* <a href="http://www.openolat.org">
-* OpenOLAT - Online Learning and Training</a><br>
-* This file has been modified by the OpenOLAT community. Changes are licensed
-* under the Apache 2.0 license as the original file.  
-* <p>
-*/ 
-package org.olat.core.gui.control.winmgr;
-
-import org.apache.commons.lang.StringEscapeUtils;
-import org.olat.core.gui.components.Component;
-import org.olat.core.gui.components.ComponentRenderer;
-import org.olat.core.gui.render.RenderResult;
-import org.olat.core.gui.render.Renderer;
-import org.olat.core.gui.render.RenderingState;
-import org.olat.core.gui.render.StringOutput;
-import org.olat.core.gui.render.URLBuilder;
-import org.olat.core.gui.render.intercept.InterceptHandlerInstance;
-import org.olat.core.gui.translator.PackageTranslator;
-import org.olat.core.gui.translator.Translator;
-import org.olat.core.util.i18n.I18nModule;
-
-/**
- * Description:<br>
- * TODO: 
- * 
- * <P>
- * Initial Date: 02.02.2007 <br>
- * @author Felix Jost, http://www.goodsolutions.ch
- */
-public class ScreenReaderHandlerInstance implements InterceptHandlerInstance {
-
-	/**
-	 * 
-	 */
-	public ScreenReaderHandlerInstance() {
-		// created for one render cycle.
-	}
-
-	/* (non-Javadoc)
-	 * @see org.olat.core.gui.render.intercept.InterceptHandlerInstance#createInterceptComponentRenderer(org.olat.core.gui.components.ComponentRenderer)
-	 */
-	public ComponentRenderer createInterceptComponentRenderer(final ComponentRenderer originalRenderer) {
-		return new ComponentRenderer(){
-
-			public void render(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderResult renderResult, String[] args) {
-				//source.getChangedExplanationObject
-				if (source.isDomReplaceable() && source.isDirtyForUser() && isLargestDirty(source)) {
-					Translator trans = translator;
-					Component parent = source.getParent();
-					while (trans == null) {
-						if (parent == null) {
-							// Ups, on top of component tree and still no translator found? Use default.
-							trans = new PackageTranslator("org.olat.core", I18nModule.getDefaultLocale());
-						} else {
-							trans = parent.getTranslator();
-							parent = parent.getParent();							
-						}
-					}
-					sb.append("<fieldset><legend><a accesskey=\"u\" href=\"#updated\" title=\"");
-					sb.append(StringEscapeUtils.escapeHtml(trans.translate("web.2a.updated.alt")));
-					sb.append("\">");
-					sb.append(trans.translate("web.2a.updated"));
-					sb.append("</a></legend>");
-					originalRenderer.render(renderer, sb, source, ubu, translator, renderResult, args);
-					sb.append("</fieldset>");
-				} else {
-					originalRenderer.render(renderer, sb, source, ubu, translator, renderResult, args);
-				}
-			}
-
-			private boolean isLargestDirty(Component source) {
-				// check if this component is dirty, and also if there is no parent element that is dirty
-				Component cur = source;
-				boolean outerDirty = false;
-				while (!outerDirty && (cur = cur.getParent())!= null) {
-					outerDirty = cur.isDomReplaceable() && cur.isDirty();
-				}
-				return !outerDirty;
-			}
-
-			public void renderHeaderIncludes(Renderer renderer, StringOutput sb, Component source, URLBuilder ubu, Translator translator, RenderingState rstate) {
-				// nothing
-			}
-
-			public void renderBodyOnLoadJSFunctionCall(Renderer renderer, StringOutput sb, Component source, RenderingState rstate) {
-				// nothing
-			}};
-	}
-
-}
diff --git a/src/main/java/org/olat/core/gui/control/winmgr/WindowBackOfficeImpl.java b/src/main/java/org/olat/core/gui/control/winmgr/WindowBackOfficeImpl.java
index b8e838f4e731869b403565c37bcb8d0b46c2f952..8726a4465c8eb7c238c70b13dbe998dd1c9addd6 100644
--- a/src/main/java/org/olat/core/gui/control/winmgr/WindowBackOfficeImpl.java
+++ b/src/main/java/org/olat/core/gui/control/winmgr/WindowBackOfficeImpl.java
@@ -51,7 +51,6 @@ import org.olat.core.gui.control.WindowBackOffice;
 import org.olat.core.gui.control.WindowControl;
 import org.olat.core.gui.control.guistack.GuiStack;
 import org.olat.core.gui.control.guistack.GuiStackNiceImpl;
-import org.olat.core.gui.control.guistack.GuiStackSimpleImpl;
 import org.olat.core.gui.control.pushpoll.WindowCommand;
 import org.olat.core.gui.control.util.ZIndexWrapper;
 import org.olat.core.gui.dev.controller.DevelopmentController;
@@ -114,20 +113,13 @@ public class WindowBackOfficeImpl implements WindowBackOffice {
 		linkedInterceptHandler = new InterceptHandler() {
 			public InterceptHandlerInstance createInterceptHandlerInstance() {
 				InterceptHandler debugH = debug_interceptHandler;
-				InterceptHandler screenReaderH = winmgrImpl.getScreenreader_interceptHandler();
 				InterceptHandler inlineTranslationH = inlineTranslation_interceptHandler;
-				
 				final InterceptHandlerInstance debugI = debugH == null? null: debugH.createInterceptHandlerInstance(); 
-				final InterceptHandlerInstance screenReaderI = screenReaderH == null? null: screenReaderH.createInterceptHandlerInstance();
 				final InterceptHandlerInstance inlineTranslationI = (inlineTranslationH == null ? null : inlineTranslationH.createInterceptHandlerInstance());
-				
 				return new InterceptHandlerInstance() {
-
 					public ComponentRenderer createInterceptComponentRenderer(ComponentRenderer originalRenderer) {
 						ComponentRenderer toUse = originalRenderer;
-						if (screenReaderI != null) {
-							toUse = screenReaderI.createInterceptComponentRenderer(toUse);
-						}
+
 						if (winmgrImpl.isShowDebugInfo() && debugI != null) {
 							toUse = debugI.createInterceptComponentRenderer(toUse);
 						}
@@ -137,9 +129,6 @@ public class WindowBackOfficeImpl implements WindowBackOffice {
 						return toUse;
 					}};
 			}};
-		
-		
-		
 	}
 
 	/* (non-Javadoc)
@@ -342,22 +331,15 @@ public class WindowBackOfficeImpl implements WindowBackOffice {
 	/* (non-Javadoc)
 	 * @see org.olat.core.gui.control.WindowBackOffice#createGuiStack(org.olat.core.gui.components.Component)
 	 */
+	@Override
 	public GuiStack createGuiStack(Component initialComponent) {
-		// only needed for a on-screen mode change = only for demo purposes.
-		// normally the following code is appropriate:
-
-		GuiStack gsh;
-		if (winmgrImpl.isForScreenReader()) {
-			gsh = new GuiStackSimpleImpl(initialComponent);
-		} else {
-			gsh = new GuiStackNiceImpl(this, initialComponent);			
-		}
-		return gsh;
+		return new GuiStackNiceImpl(this, initialComponent);
 	}
 
 	/* (non-Javadoc)
 	 * @see org.olat.core.gui.control.WindowBackOffice#invokeLater(java.lang.Runnable)
 	 */
+	@Override
 	public void invokeLater(Runnable runnable) {
 		// brasato:::: verify that this is now as it should be.
 		// improve by handling those tasks after a ongoing dispatch/render is finished,
@@ -382,10 +364,12 @@ public class WindowBackOfficeImpl implements WindowBackOffice {
 		
 	}
 
+	@Override
 	public void addCycleListener(GenericEventListener gel) {
 		cycleListeners.add(gel);
 	}
-	
+
+	@Override
 	public void removeCycleListener(GenericEventListener gel) {
 		// Since we use a CopyOnWriteArrayList it is save to remove an event
 		// listener even when we are in the fireCycleEvent() method at the same time
diff --git a/src/main/java/org/olat/core/gui/control/winmgr/WindowManagerImpl.java b/src/main/java/org/olat/core/gui/control/winmgr/WindowManagerImpl.java
index e613b0cd5cbd43cabe475fd68846b02bd0f247c3..819646a505918b53a09374cdad40ff495a98932f 100644
--- a/src/main/java/org/olat/core/gui/control/winmgr/WindowManagerImpl.java
+++ b/src/main/java/org/olat/core/gui/control/winmgr/WindowManagerImpl.java
@@ -27,25 +27,19 @@
 package org.olat.core.gui.control.winmgr;
 
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.List;
-import java.util.Map;
 
 import org.olat.core.CoreSpringFactory;
 import org.olat.core.gui.GlobalSettings;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.WindowManager;
 import org.olat.core.gui.WindowSettings;
-import org.olat.core.gui.components.Component;
-import org.olat.core.gui.components.ComponentRenderer;
 import org.olat.core.gui.control.ChiefController;
 import org.olat.core.gui.control.WindowBackOffice;
 import org.olat.core.gui.control.creator.ControllerCreator;
 import org.olat.core.gui.control.generic.popup.PopupBrowserWindow;
 import org.olat.core.gui.control.generic.popup.PopupBrowserWindowController;
 import org.olat.core.gui.control.generic.popup.PopupBrowserWindowControllerCreator;
-import org.olat.core.gui.render.intercept.InterceptHandler;
-import org.olat.core.gui.render.intercept.InterceptHandlerInstance;
 import org.olat.core.helpers.Settings;
 import org.olat.core.manager.BasicManager;
 
@@ -58,100 +52,45 @@ public class WindowManagerImpl extends BasicManager implements WindowManager {
 	
 	private List<WindowBackOfficeImpl> wbos = new ArrayList<WindowBackOfficeImpl>();
 	
-	// experimental!
-	
 	private GlobalSettings globalSettings;
 	private boolean ajaxEnabled = false;
 	
-	private boolean forScreenReader = false;
 	private boolean showDebugInfo = false;
 	private boolean idDivsForced = false;
 
-	
 	private int fontSize = 100; // default width
 
 	private int wboId = 0;
-	
-	private InterceptHandler screenreader_interceptHandler = null;
-	
-	private Map<Class<? extends Component>,ComponentRenderer> screenReaderRenderers = new HashMap<>();
 
 	private PopupBrowserWindowControllerCreator pbwcc;
 	
 	public WindowManagerImpl() {
-		
-		this.pbwcc = (PopupBrowserWindowControllerCreator) 
+		pbwcc = (PopupBrowserWindowControllerCreator) 
 			CoreSpringFactory.getBean(PopupBrowserWindowControllerCreator.class);
-		
-		
-		
+
 		final AJAXFlags aflags = new AJAXFlags(this);
 		globalSettings = new GlobalSettings() {
-
+			@Override
 			public int getFontSize() {
 				return WindowManagerImpl.this.getFontSize();
 			}
-
+			@Override
 			public AJAXFlags getAjaxFlags() {
 				return aflags;
 			}
-			
-			public ComponentRenderer getComponentRendererFor(Component source) {
-				return WindowManagerImpl.this.getComponentRendererFor(source);
-			}
-
+			@Override
 			public boolean isIdDivsForced() {
 				return WindowManagerImpl.this.isIdDivsForced();
 			}
 		};
 	}
-	
-	public void setForScreenReader(boolean forScreenReader) {
-		this.forScreenReader = forScreenReader;
-		if (forScreenReader) {
-			screenreader_interceptHandler = new InterceptHandler() {
 
-				public InterceptHandlerInstance createInterceptHandlerInstance() {
-					return new ScreenReaderHandlerInstance();		
-				}};
-		} else {
-			screenreader_interceptHandler = null;
-		}
-	}
-	
-
-	
-	
-	
-	/**
-	 * @param source
-	 * @return
-	 */
-	protected ComponentRenderer getComponentRendererFor(Component source) {
-		ComponentRenderer compRenderer;
-		// to do: let "source - renderer pairs" be configured via spring for each mode like
-		// default, accessibility, printing
-		if (isForScreenReader()) {
-			ComponentRenderer cr = screenReaderRenderers.get(source.getClass());
-			if (cr != null) {
-				compRenderer = cr;
-			} else {
-				compRenderer = source.getHTMLRendererSingleton();
-			}
-		} else {
-			compRenderer = source.getHTMLRendererSingleton();
-		}
-		return compRenderer;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.olat.core.gui.WindowManager#getGlobalSettings()
-	 */
+	@Override
 	public GlobalSettings getGlobalSettings() {
 		return globalSettings;
 	}
 	
-	
+	@Override
 	public void setAjaxWanted(UserRequest ureq, boolean enabled) {
 		boolean globalOk = Settings.isAjaxGloballyOn();
 		boolean browserOk = !Settings.isBrowserAjaxBlacklisted(ureq);
@@ -162,6 +101,7 @@ public class WindowManagerImpl extends BasicManager implements WindowManager {
 	/**
 	 * @return Returns the ajaxEnabled.
 	 */
+	@Override
 	public boolean isAjaxEnabled() {
 		return ajaxEnabled;
 	}
@@ -173,16 +113,15 @@ public class WindowManagerImpl extends BasicManager implements WindowManager {
 	 * sets the ajax on/off flag, -ignoring the browser-
 	 * @param enabled if true, ajax is on, renderers can render their links to post to the background frame and so on
 	 */
+	@Override
 	public void setAjaxEnabled(boolean enabled) {
 		this.ajaxEnabled  = enabled;
 		for (WindowBackOfficeImpl wboImpl : wbos) {
 			wboImpl.setAjaxEnabled(enabled);
 		}			
 	}
-	
-	/* (non-Javadoc)
-	 * @see org.olat.core.gui.WindowManager#setHighLightingEnabled(boolean)
-	 */
+
+	@Override
 	public void setHighLightingEnabled(boolean enabled) {
 		for (WindowBackOfficeImpl wboImpl : wbos) {
 			wboImpl.setHighLightingEnabled(enabled);
@@ -209,37 +148,28 @@ public class WindowManagerImpl extends BasicManager implements WindowManager {
 		return fontSize;
 	}
 
+	@Override
 	public void setFontSize(int fontSize) {
-		
 		this.fontSize = fontSize;
 	}
 
-	public boolean isForScreenReader() {
-		return forScreenReader;
-	}
-
 	/* (non-Javadoc)
 	 * @see org.olat.core.gui.WindowManager#createWindowBackOffice(java.lang.String, org.olat.core.gui.control.ChiefController)
 	 */
+	@Override
 	public WindowBackOffice createWindowBackOffice(String windowName, ChiefController owner, WindowSettings settings) {
 		WindowBackOfficeImpl wbo = new WindowBackOfficeImpl(this, windowName, owner, wboId++, settings);
 		wbos.add(wbo);
 		return wbo;
 	}
 
-	/**
-	 * 
-	 */
+	@Override
 	public void dispose() {
 		for (WindowBackOfficeImpl wboImpl : wbos) {
 			wboImpl.dispose();
 		}		
 	}
 
-	protected InterceptHandler getScreenreader_interceptHandler() {
-		return screenreader_interceptHandler;
-	}
-
 	protected boolean isShowDebugInfo() {
 		return showDebugInfo;
 	}
@@ -281,6 +211,4 @@ public class WindowManagerImpl extends BasicManager implements WindowManager {
 	public boolean isIdDivsForced() {
 		return idDivsForced;
 	}
-
-	
-}
+}
\ No newline at end of file
diff --git a/src/main/java/org/olat/core/gui/dev/controller/DevelopmentController.java b/src/main/java/org/olat/core/gui/dev/controller/DevelopmentController.java
index 511829a114ba5501c3923d3108dab5eaa66402a9..d2902bd7ab1a8006ee904f719945d56a2bf83a4a 100644
--- a/src/main/java/org/olat/core/gui/dev/controller/DevelopmentController.java
+++ b/src/main/java/org/olat/core/gui/dev/controller/DevelopmentController.java
@@ -78,7 +78,6 @@ public class DevelopmentController extends BasicController {
 	private Link web10Link;
 	private Link web20Link;
 	private Link web20hlLink;
-	private Link web21Link;
 	
 	private Link showJson;
 	private Link showComponentTree;
@@ -119,12 +118,9 @@ public class DevelopmentController extends BasicController {
 		modes.add(web10Link = LinkFactory.deAjaxify(LinkFactory.createLink("web10", myContent, this)));
 		modes.add(web20Link = LinkFactory.deAjaxify(LinkFactory.createLink("web20", myContent, this)));
 		modes.add(web20hlLink = LinkFactory.deAjaxify(LinkFactory.createLink("web20hl", myContent, this)));
-		modes.add(web21Link = LinkFactory.deAjaxify(LinkFactory.createLink("web21", myContent, this)));	
 		modes.add(debugLink = LinkFactory.deAjaxify(LinkFactory.createLink("debug", myContent, this)));		
 		modes.add(showJson = LinkFactory.deAjaxify(LinkFactory.createLink("showJson", myContent, this)));
-		if (winMgrImpl.isForScreenReader()) {
-			chosenMode = web21Link;
-		} else if (winMgrImpl.isAjaxEnabled()) {
+		if (winMgrImpl.isAjaxEnabled()) {
 			chosenMode = web20Link;			
 		} else {			
 			chosenMode = web10Link;			
@@ -196,7 +192,6 @@ public class DevelopmentController extends BasicController {
 			// choose regular mode
 			winMgrImpl.setShowDebugInfo(false);
 			winMgrImpl.setAjaxEnabled(false);
-			winMgrImpl.setForScreenReader(false);
 			winMgrImpl.setHighLightingEnabled(false);
 			winMgrImpl.setShowJSON(false);
 			winMgrImpl.setIdDivsForced(false);
@@ -206,7 +201,6 @@ public class DevelopmentController extends BasicController {
 			// enable ajax / generic-dom-replacement GDR mode
 			winMgrImpl.setShowDebugInfo(false);
 			winMgrImpl.setAjaxEnabled(true);
-			winMgrImpl.setForScreenReader(false);
 			winMgrImpl.setHighLightingEnabled(false);
 			winMgrImpl.setShowJSON(false);
 			winMgrImpl.setIdDivsForced(false);
@@ -216,31 +210,16 @@ public class DevelopmentController extends BasicController {
 			// ajax mode with highlighting
 			winMgrImpl.setShowDebugInfo(false);
 			winMgrImpl.setAjaxEnabled(true);
-			winMgrImpl.setForScreenReader(false);
 			winMgrImpl.setHighLightingEnabled(true);
 			winMgrImpl.setShowJSON(false);
 			//brasato:: setIdDivsForced is removed!! check if it works
 			winMgrImpl.setIdDivsForced(false);
 			chosenMode = web20hlLink;
 			updateUI();
-		} else if (source == web21Link) {
-			// enable screenreader support:
-			// - different html templates where appropriate.
-			// - different Component-renderers where appropriate.
-			// - mark changed components with jump-marker and allow usage of accesskey
-			winMgrImpl.setShowDebugInfo(false);
-			winMgrImpl.setAjaxEnabled(false);
-			winMgrImpl.setForScreenReader(true);
-			winMgrImpl.setHighLightingEnabled(false);
-			winMgrImpl.setShowJSON(false);
-			winMgrImpl.setIdDivsForced(false);
-			chosenMode = web21Link;
-			updateUI();
 		} else if (source == debugLink) {
 			// debug mode requires web 1.0 mode at the moment
 			winMgrImpl.setShowDebugInfo(true);
 			winMgrImpl.setAjaxEnabled(false);
-			winMgrImpl.setForScreenReader(false);
 			winMgrImpl.setHighLightingEnabled(false);
 			winMgrImpl.setShowJSON(false);
 			winMgrImpl.setIdDivsForced(false);
@@ -259,7 +238,6 @@ public class DevelopmentController extends BasicController {
 		} else if (source == showJson) {
 			winMgrImpl.setShowDebugInfo(false);
 			winMgrImpl.setAjaxEnabled(true);
-			winMgrImpl.setForScreenReader(false);
 			winMgrImpl.setHighLightingEnabled(true);
 			winMgrImpl.setShowJSON(true);
 			winMgrImpl.setIdDivsForced(false);
@@ -292,7 +270,7 @@ public class DevelopmentController extends BasicController {
 	private void updateComponentTree() {
 		Window win = wboImpl.getWindow();
 		StringOutput sb = new StringOutput();
-		renderDebugInfo(win.getContentPane(), sb, true);
+		renderDebugInfo(win.getContentPane(), sb);
 		myContent.contextPut("compdump", sb.toString());
 	}
 	
@@ -318,7 +296,7 @@ public class DevelopmentController extends BasicController {
 	 * used by velocityrenderdecorator
 	 * @param target
 	 */
-	private void renderDebugInfo(Component root, StringOutput target, boolean showDebugInfo) {
+	private void renderDebugInfo(Component root, StringOutput target) {
 		target.append("<div>");
 		int cnt = cntTree(root);
 		int size = DefaultController.getControllerCount();
@@ -411,16 +389,4 @@ public class DevelopmentController extends BasicController {
 		}
 		return cnt;
 	}
-}
-
-class ControllerInfo {
-	private List<Component> listeningTo;
-	
-	ControllerInfo(Controller controller) {
-		listeningTo = new ArrayList<Component>();
-	}
-	
-	void addListeningComponent(Component listener) {
-		listeningTo.add(listener);
-	}
 }
\ No newline at end of file
diff --git a/src/main/java/org/olat/core/gui/dev/controller/_content/index.html b/src/main/java/org/olat/core/gui/dev/controller/_content/index.html
index 4f758bcccf6fa029682c1be7936a4ebfe8dafdfc..4f0d0fdfc355f4f43ac0c97d9e92725a75b001dd 100644
--- a/src/main/java/org/olat/core/gui/dev/controller/_content/index.html
+++ b/src/main/java/org/olat/core/gui/dev/controller/_content/index.html
@@ -13,7 +13,6 @@
 				<li #if ($web20Active) class="active" #end>$r.render("web20")</li>
 				<li #if ($web20hlActive) class="active" #end>$r.render("web20hl")</li>
 				<li #if ($showJsonActive) class="active" #end>$r.render("showJson")</li>
-				<li #if ($web21Active) class="active" #end>$r.render("web21")</li>
 			</ul>
 		</fieldset>
 		<fieldset class="clearfix small">
diff --git a/src/main/java/org/olat/core/gui/render/Renderer.java b/src/main/java/org/olat/core/gui/render/Renderer.java
index 5ac8fbd4c8337e26864087aa88faae80c24fa09b..ec4f6effdbf724b608a4dfe837172885f8209c8b 100644
--- a/src/main/java/org/olat/core/gui/render/Renderer.java
+++ b/src/main/java/org/olat/core/gui/render/Renderer.java
@@ -43,11 +43,11 @@ import org.olat.core.util.WebappHelper;
  */
 public class Renderer {
 
-	private URLBuilder urlBuilder;
-	private Translator translator;
-	private ComponentCollection renderContainer;
-	private RenderResult renderResult;
-	private GlobalSettings globalSettings;
+	private final URLBuilder urlBuilder;
+	private final Translator translator;
+	private final ComponentCollection renderContainer;
+	private final RenderResult renderResult;
+	private final GlobalSettings globalSettings;
 
 	/**
 	 * @param renderContainer is used as a starting node for searching a component
@@ -281,8 +281,7 @@ public class Renderer {
 	}
 
 	private ComponentRenderer findComponentRenderer(Component toRender) {
-		ComponentRenderer cr = globalSettings.getComponentRendererFor(toRender);
-		return cr;
+		return toRender.getHTMLRendererSingleton();
 	}
 	
 	/**
diff --git a/src/main/java/org/olat/core/util/SessionInfo.java b/src/main/java/org/olat/core/util/SessionInfo.java
index b6767f3989b9f159fdecd384922edba681ea61ee..c786608ca6d7a4eb78c875ace40e93106f1dd306 100644
--- a/src/main/java/org/olat/core/util/SessionInfo.java
+++ b/src/main/java/org/olat/core/util/SessionInfo.java
@@ -295,7 +295,6 @@ public class SessionInfo implements Serializable {
 		if (ureq != null) {
 			// calculate ajax delivery mode
 			if (Windows.getWindows(ureq).getWindowManager().isAjaxEnabled()) deliveryMode = "web 2.0";
-			if (Windows.getWindows(ureq).getWindowManager().isForScreenReader()) deliveryMode = "web 2.a";
 		}
 		this.webMode = deliveryMode;
 	}
diff --git a/src/main/java/org/olat/course/nodes/iq/IQRunController.java b/src/main/java/org/olat/course/nodes/iq/IQRunController.java
index a999a4e6de9f1c5df78bb67c794d069de311b4d3..2f37b2db2c554812cf147bdf06bf03597b494fcb 100644
--- a/src/main/java/org/olat/course/nodes/iq/IQRunController.java
+++ b/src/main/java/org/olat/course/nodes/iq/IQRunController.java
@@ -35,7 +35,6 @@ import org.olat.core.CoreSpringFactory;
 import org.olat.core.commons.fullWebApp.LayoutMain3ColsController;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.Component;
-import org.olat.core.gui.components.htmlsite.HtmlStaticPageComponent;
 import org.olat.core.gui.components.link.Link;
 import org.olat.core.gui.components.link.LinkFactory;
 import org.olat.core.gui.components.panel.Panel;
@@ -323,19 +322,11 @@ public class IQRunController extends BasicController implements GenericEventList
 					showWarning("disclaimer.file.invalid", sDisclaimer);
 				} else {
 					//screenreader do not like iframes, display inline
-					if (getWindowControl().getWindowBackOffice().getWindowManager().isForScreenReader()) {
-						HtmlStaticPageComponent disclaimerComp = new HtmlStaticPageComponent("disc", baseContainer);
-						myContent.put("disc", disclaimerComp);
-						disclaimerComp.setCurrentURI(sDisclaimer);
-						myContent.contextPut("hasDisc", Boolean.TRUE);
-					} else {
-						iFrameCtr = new IFrameDisplayController(ureq, getWindowControl(), baseContainer);
-						listenTo(iFrameCtr);//dispose automatically
-						myContent.put("disc", iFrameCtr.getInitialComponent());
-						iFrameCtr.setCurrentURI(sDisclaimer);
-						myContent.contextPut("hasDisc", Boolean.TRUE);
-					}
-
+					iFrameCtr = new IFrameDisplayController(ureq, getWindowControl(), baseContainer);
+					listenTo(iFrameCtr);//dispose automatically
+					myContent.put("disc", iFrameCtr.getInitialComponent());
+					iFrameCtr.setCurrentURI(sDisclaimer);
+					myContent.contextPut("hasDisc", Boolean.TRUE);
 				}
 			}
 		}
diff --git a/src/main/java/org/olat/course/nodes/ta/DropboxScoringViewController.java b/src/main/java/org/olat/course/nodes/ta/DropboxScoringViewController.java
index cc45572d8b1e2ce20abb5a34882f033596339e14..16a41e2cbc9dd7a86f07a4cd476009a74acca019 100644
--- a/src/main/java/org/olat/course/nodes/ta/DropboxScoringViewController.java
+++ b/src/main/java/org/olat/course/nodes/ta/DropboxScoringViewController.java
@@ -38,7 +38,6 @@ import org.olat.core.commons.modules.bc.vfs.OlatRootFolderImpl;
 import org.olat.core.commons.services.notifications.SubscriptionContext;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.Component;
-import org.olat.core.gui.components.htmlsite.HtmlStaticPageComponent;
 import org.olat.core.gui.components.link.Link;
 import org.olat.core.gui.components.link.LinkFactory;
 import org.olat.core.gui.components.velocity.VelocityContainer;
@@ -67,7 +66,6 @@ import org.olat.core.util.mail.MailContextImpl;
 import org.olat.core.util.mail.MailManager;
 import org.olat.core.util.mail.MailerResult;
 import org.olat.core.util.resource.OresHelper;
-import org.olat.core.util.vfs.LocalFolderImpl;
 import org.olat.core.util.vfs.Quota;
 import org.olat.core.util.vfs.QuotaManager;
 import org.olat.core.util.vfs.callbacks.VFSSecurityCallback;
@@ -219,33 +217,16 @@ public class DropboxScoringViewController extends BasicController {
 			File fTaskfolder = new File(FolderConfig.getCanonicalRoot()
 				+ TACourseNode.getTaskFolderPathRelToFolderRoot(userCourseEnv.getCourseEnvironment(), node));
 			if (assignedTask.toLowerCase().endsWith(".html") || assignedTask.toLowerCase().endsWith(".htm") || assignedTask.toLowerCase().endsWith(".txt")) {
-
-				if (getWindowControl().getWindowBackOffice().getWindowManager().isForScreenReader()) {
-					// render content for screenreaders always inline
-					HtmlStaticPageComponent cpc = new HtmlStaticPageComponent("cpc", new LocalFolderImpl(fTaskfolder));
-					cpc.setCurrentURI(assignedTask);
-					
-					removeAsListenerAndDispose(cmc);
-					cmc = new CloseableModalController(getWindowControl(), translate("close"), cpc);
-					listenTo(cmc);
-					
-					cmc.activate();
-				} else {
-					
-					// render content for other users always in iframe
-					removeAsListenerAndDispose(iFrameCtr);
-					iFrameCtr = new IFrameDisplayController(ureq, getWindowControl(), fTaskfolder);
-					listenTo(iFrameCtr);
-					
-					iFrameCtr.setCurrentURI(assignedTask);				
-					
-					removeAsListenerAndDispose(cmc);
-					cmc = new CloseableModalController(getWindowControl(), translate("close"), iFrameCtr.getInitialComponent());
-					listenTo(cmc);
-
-					cmc.activate();
-				}
-
+				// render content for other users always in iframe
+				removeAsListenerAndDispose(iFrameCtr);
+				iFrameCtr = new IFrameDisplayController(ureq, getWindowControl(), fTaskfolder);
+				listenTo(iFrameCtr);
+				iFrameCtr.setCurrentURI(assignedTask);				
+				
+				removeAsListenerAndDispose(cmc);
+				cmc = new CloseableModalController(getWindowControl(), translate("close"), iFrameCtr.getInitialComponent());
+				listenTo(cmc);
+				cmc.activate();
 			} else {
 				ureq.getDispatchResult().setResultingMediaResource(new FileMediaResource(new File(fTaskfolder, assignedTask)));
 			}
diff --git a/src/main/java/org/olat/gui/control/_content/dmztopnav.html b/src/main/java/org/olat/gui/control/_content/dmztopnav.html
index f090a17a9e3c55dfffa355d80cc5e51e648e38fa..52cf0bfc1b092dbf7758ed071ca62e197b1c330a 100644
--- a/src/main/java/org/olat/gui/control/_content/dmztopnav.html
+++ b/src/main/java/org/olat/gui/control/_content/dmztopnav.html
@@ -16,11 +16,6 @@
 						<i class="o_icon o_icon_help o_icon-fw"></i> $r.translate("topnav.help")
 					</a>
 				</li>
-				<li>
-					<a href="javascript:$r.contextHelpJSCommand("org.olat.login","accessibility.html")" title="$r.translateWithPackage("org.olat.login","menu.accessibility.alt")" class="o_label">
-						<i class="o_icon o_icon_accessibility o_icon-fw"></i> <span>$r.translateWithPackage("org.olat.login","menu.accessibility")</span>
-					</a>
-				</li>
 				<li>
 					<a href="javascript:$r.contextHelpJSCommand("org.olat.login","browsercheck.html")" title="$r.translateWithPackage("org.olat.login","menu.check.alt")" class="o_label">
 						<i class="o_icon o_icon_browsercheck o_icon-fw"></i> <span>$r.translateWithPackage("org.olat.login","menu.check")</span>
diff --git a/src/main/java/org/olat/login/_chelp/accessibility.html b/src/main/java/org/olat/login/_chelp/accessibility.html
deleted file mode 100644
index c97c982ce06e0574b049f89ff25af0f3ab3458e2..0000000000000000000000000000000000000000
--- a/src/main/java/org/olat/login/_chelp/accessibility.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<br/> 
-<h3>$r.translate("accessibility.title")</h3>
-<p>
-	$r.translate("accessibility.intro")<br/>
-</p>
-<h4>$r.translate("accesskey.title")</h4>
-<p>
-	$r.translate("accessibility.accesskeys") $r.translate("accessibility.accesskeys1")<br/>
-	$r.translate("accessibility.accesskeys2")
-</p>
-<p>
-	<a href="http://en.wikipedia.org/wiki/Access_key" target="_blank" class="o_link_extern"><i class="o_icon o_icon_external_link"> </i> $r.translate("accessibility.accesskeys.browsers")</a>
-</p>
-<p>
-	$r.translate("accessibility.accesskeys4")
-<p>
-<ul>
-	<li>0: $r.translate("accesskey.top")</li>
-	<li>
-		n: $r.translate("accesskey.nav")
-		<ul>
-			<li>$r.translate("accesskey.sites")</li>
-			<li>$r.translate("accesskey.tabs")</li>
-		</ul>
-	</li>
-	<li>o: $r.translate("accesskey.topnav")</li>
-	<li>m: $r.translate("accesskey.menu")</li>
-	<li>c: $r.translate("accesskey.content")</li>
-	<li>t: $r.translate("accesskey.tools")</li>
-	<li>a: $r.translate("accesskey.table")</li>
-	<li>d: $r.translate("accesskey.modal")</li>
-	<li>b: $r.translate("accesskey.back")</li>
-</ul>
-<br/> 
-<h4>$r.translate("accessibility.web2amode.title")</h4>
-<p>
-	$r.translate("accessibility.web2amode.1") 
-	$r.translate("accessibility.web2amode.2") 
-	$r.translate("accessibility.web2amode.enable") 
-</p>
-<p>
-	$r.translate("accessibility.web2amode.accesskeys")
-</p>
- 	<ul>
-		<li>$r.translate("accesskey.changes")</li>
-	</ul>
-<br />
-<h4>$r.translate("accessibility.fontsize.title")</h4>
-	<p>
-		$r.translate("accessibility.fontsize.1") $r.translate("accessibility.fontsize.2") $r.translate("accessibility.fontsize.change") 
-	</p>
-
-	
\ No newline at end of file
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_ar.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_ar.properties
index e1511ea0a24b343b33de4dd04a2459423bcb5e81..3428cd14330a614f8f43d38b22352727d73c997a 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_ar.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_ar.properties
@@ -93,8 +93,6 @@ login.notavailable=\u062A\u062D\u0645\u064A\u0644 \u0632\u0627\u0626\u062F \u063
 
 menu.about=\u0639\u0646 \u0623\u0648\u0644\u0627\u062A
 menu.about.alt=\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0639\u0646 \u0623\u0648\u0644\u0627\u062A
-menu.accessibility=\u0633\u0647\u0648\u0644\u0629 \u0627\u0644\u0648\u0635\u0648\u0644
-menu.accessibility.alt=\u0645\u0639\u0644\u0648\u0645\u0627\u062A \u0639\u0646 \u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0623\u0648\u0644\u0627\u062A \u0644\u0644\u0623\u0634\u062E\u0627\u0635 \u0636\u0639\u0627\u0641 \u0627\u0644\u0628\u0635\u0631.
 menu.check=\u0641\u062D\u0635 \u0627\u0644\u0645\u062A\u0635\u0641\u062D
 menu.check.alt=\u0627\u0641\u062D\u0635 \u0645\u0627 \u0625\u0630\u0627 \u0643\u0627\u0646 \u0627\u0644\u0645\u062A\u0635\u0641\u062D \u0627\u0644\u062E\u0627\u0635 \u0628\u0643 \u062A\u0645 \u0625\u0639\u062F\u0627\u062F\u0647 \u0628\u0634\u0643\u0644 \u0635\u062D\u064A\u062D.
 menu.guest=\u062F\u062E\u0648\u0644 \u0632\u0627\u0626\u0631
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_bg.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_bg.properties
index e180d365ff553bd73f32fa866967ccf63b92a12b..9f7c01a4f1fa42d7e596d5b4f81264ab75355e1a 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_bg.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_bg.properties
@@ -92,8 +92,6 @@ login.notavailable=\u041F\u0440\u0435\u0442\u043E\u0432\u0430\u0440\u0432\u0430\
 
 menu.about=\u0417\u0430 \u0441\u0438\u0441\u0442\u0435\u043C\u0430\u0442\u0430
 menu.about.alt=\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u0437\u0430 \u0441\u0438\u0441\u0442\u0435\u043C\u0430\u0442\u0430
-menu.accessibility=\u0414\u043E\u0441\u0442\u044A\u043F\u043D\u043E\u0441\u0442
-menu.accessibility.alt=\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u0437\u0430 \u0438\u0437\u043F\u043E\u043B\u0437\u0432\u0430\u043D\u0435 \u043D\u0430 \u0441\u0438\u0441\u0442\u0435\u043C\u0430\u0442\u0430 \u0437\u0430 \u0445\u043E\u0440\u0430 \u0441 \u0443\u0432\u0440\u0435\u0434\u0435\u043D\u043E \u0437\u0440\u0435\u043D\u0438\u0435.
 menu.check=\u041F\u0440\u043E\u0432\u0435\u0440\u043A\u0430 \u043D\u0430 \u0431\u0440\u0430\u0443\u0437\u044A\u0440
 menu.check.alt=\u041F\u0440\u043E\u0432\u0435\u0440\u0435\u0442\u0435 \u0434\u0430\u043B\u0438 \u0432\u0430\u0448\u0438\u044F\u0442 \u0431\u0440\u0430\u0443\u0437\u044A\u0440 \u0435 \u043A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043D \u043F\u0440\u0430\u0432\u0438\u043B\u043D\u043E
 menu.guest=\u0414\u043E\u0441\u0442\u044A\u043F \u0437\u0430 \u0433\u043E\u0441\u0442
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_cs.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_cs.properties
index 921667a98cfe578ec1fa1d5aeb7f5aceb880eefa..9f3472356dedff361af4bcdfb137c18347d28cd2 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_cs.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_cs.properties
@@ -90,8 +90,6 @@ login.notavailable=Server nereaguje. Zkuste to pros\u00EDm pozd\u011Bji.
 
 menu.about=O OpenOLATu
 menu.about.alt=Informace o OpenOLATu
-menu.accessibility=P\u0159\u00EDstupnost
-menu.accessibility.alt=Informace o pou\u017E\u00EDv\u00E1n\u00ED OpenOLATu pro slabozrak\u00E9 u\u017Eivatele.
 menu.check=Zkou\u0161ka prohl\u00ED\u017Ee\u010De
 menu.check.alt=Zkontroluje, zda je prohl\u00ED\u017Ee\u010D spr\u00E1vn\u011B nastaven
 menu.guest=P\u0159\u00EDstup pro hosty
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_de.properties
index 8ae9efc501a29bb1e4440b910a6507c2e3d92bc6..21729f77496a7dcd18a3f85c789742e2ecdd55c1 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_de.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_de.properties
@@ -119,8 +119,6 @@ login.customfootermsg=
 
 menu.about=\u00DCber OpenOLAT
 menu.about.alt=Informationen zu OpenOLAT
-menu.accessibility=Barrierefreiheit
-menu.accessibility.alt=Informationen \u00FCber die Verwendung von OpenOLAT f\u00FCr sehbehinderte Personen
 menu.check=Browsercheck
 menu.check.alt=Pr\u00FCfen Sie, ob Ihr Browser korrekt konfiguriert ist
 menu.guest=Gastzugang
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_el.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_el.properties
index d0c29623424cd41002fe6b8a1fc9fc18881de282..b1a593e48662fc8eb45a01ab506c15c9bc7f7287 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_el.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_el.properties
@@ -96,8 +96,6 @@ login.notavailable=\u03A5\u03C0\u03B5\u03C1\u03C6\u03CC\u03C1\u03C4\u03C9\u03C3\
 
 menu.about=\u03A3\u03C7\u03B5\u03C4\u03B9\u03BA\u03AC \u03BC\u03B5 \u03C4\u03BF OpenOLAT
 menu.about.alt=\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2 \u03B3\u03B9\u03B1 \u03C4\u03BF OpenOLAT
-menu.accessibility=\u03A0\u03C1\u03BF\u03C3\u03B2\u03B1\u03C3\u03B9\u03BC\u03CC\u03C4\u03B7\u03C4\u03B1
-menu.accessibility.alt=\u03A0\u03BB\u03B7\u03C1\u03BF\u03C6\u03BF\u03C1\u03AF\u03B5\u03C2 \u03B3\u03B9\u03B1 \u03C4\u03B7 \u03C7\u03C1\u03AE\u03C3\u03B7 \u03C4\u03BF\u03C5 OpenOLAT \u03C3\u03B5 \u03AC\u03C4\u03BF\u03BC\u03B1 \u03BC\u03B5 \u03C0\u03C1\u03BF\u03B2\u03BB\u03AE\u03BC\u03B1\u03C4\u03B1 \u03CC\u03C1\u03B1\u03C3\u03B7\u03C2
 menu.check=\u0388\u03BB\u03B5\u03B3\u03C7\u03BF\u03C2 \u03C6\u03C5\u03BB\u03BB\u03BF\u03BC\u03B5\u03C4\u03C1\u03B7\u03C4\u03AE (browser)
 menu.check.alt=\u0395\u03BB\u03AD\u03B3\u03BE\u03C4\u03B5 \u03B5\u03AC\u03BD \u03BF browser \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C3\u03C9\u03C3\u03C4\u03AC \u03C1\u03C5\u03B8\u03BC\u03B9\u03C3\u03BC\u03AD\u03BD\u03BF\u03C2
 menu.guest=\u03A0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7 \u03C9\u03C2 \u03B5\u03C0\u03B9\u03C3\u03BA\u03AD\u03C0\u03C4\u03B7\u03C2
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_en.properties
index d9316effe8864ede8b7bcc3592bee408fe20c720..fbf6426ca5e33ebfa26b2cc0497cc416fd7cc589 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_en.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_en.properties
@@ -116,8 +116,6 @@ mail.pwd.subject=Password changed
 mail.pwd.body=The password for your OpenOLAT account {0} with the email address {1} has been changed by {2}.\n\n\nIf you do not agree with this change or if you think your account has been compromised by third parties, please contact support immediately at {3} or use the Link {4} to change the password again.
 menu.about=About OpenOLAT
 menu.about.alt=Information on OpenOLAT
-menu.accessibility=Accessibility
-menu.accessibility.alt=Information on using OpenOLAT for visually impaired people
 menu.check=Browser check
 menu.check.alt=Check if your browser is properly configured
 menu.guest=Guest access
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_es.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_es.properties
index d39e300f7506b07a631e97571a785be8188eeda4..1252ce3407c04626eb96b29300628f844b59ad9b 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_es.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_es.properties
@@ -92,8 +92,6 @@ login.notavailable=El servidor se encuentra sobrecargado. Por favor, intente m\u
 
 menu.about=Sobre OpenOLAT
 menu.about.alt=Informaci\u00F3n sobre OpenOLAT
-menu.accessibility=Accesibilidad
-menu.accessibility.alt=Informaci\u00F3n sobre el uso de OpenOLAT para personas con discapacidad visual
 menu.check=Comprobaci\u00F3n de navegador
 menu.check.alt=Comprueba si tu navegador est\u00E1 correctamente configurado
 menu.guest=Acceso invitado
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_fr.properties
index a83338c22d9665facd67d030967da0f21d1183ea..6f1fdc8e7d1951bdae26ecc0380e41137ece5729 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_fr.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_fr.properties
@@ -113,8 +113,6 @@ mail.pwd.body=Le mot de passe de votre compte OpenOLAT {0} avec l'adresse e-mail
 mail.pwd.subject=Mot de passe chang\u00E9
 menu.about=A propos d'OpenOLAT
 menu.about.alt=Informations sur OpenOLAT
-menu.accessibility=Accessibilit\u00E9
-menu.accessibility.alt=Informations sur l'utilisation d'OpenOLAT pour les personnes mal voyantes.
 menu.check=Contr\u00F4le du navigateur
 menu.check.alt=Assurez-vous que votre navigateur est configur\u00E9 correctement
 menu.guest=Acc\u00E8s invit\u00E9(e)
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_it.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_it.properties
index b7cdd5938e78f76ffe833f43b4f322b9ca25f784..2b8d977bb99175021247ac6211a238fc9a8ba44b 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_it.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_it.properties
@@ -99,8 +99,6 @@ login.custommsg=
 
 menu.about=OpenOLAT
 menu.about.alt=Informazioni su OpenOLAT
-menu.accessibility=Accessibilit\u00E0
-menu.accessibility.alt=Informazioni sull'accessibilit\u00E0 a OpenOLAT per i portatori di handicap visivo
 menu.check=Verifica del browser
 menu.check.alt=Si informi sulla corretta configurazione del Suo browser.
 menu.guest=Accesso come ospite
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_jp.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_jp.properties
index 740d4612896e5c4e4c4529faaf8a83853e0a2542..cf61eeb6b5217a5098ac214dbe407dfeb74f9d76 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_jp.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_jp.properties
@@ -75,7 +75,6 @@ login.form=OpenOLAT\u30ED\u30B0\u30A4\u30F3
 login.intro=\u3042\u306A\u305F\u306EOpenOLAT\u30E6\u30FC\u30B6\u540D\u304A\u3088\u3073\u30D1\u30B9\u30EF\u30FC\u30C9\u3067\u30ED\u30B0\u30A4\u30F3\u3057\u3066\u304F\u3060\u3055\u3044\u3002
 login.notavailable=\u30B5\u30FC\u30D0\u306E\u30AA\u30FC\u30D0\u30FC\u30ED\u30FC\u30C9\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u5F8C\u307B\u3069\u3001\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002
 menu.about=OpenOLAT\u306B\u3064\u3044\u3066
-menu.accessibility=\u30A2\u30AF\u30BB\u30B7\u30D3\u30EA\u30C6\u30A3
 menu.check=\u30D6\u30E9\u30A6\u30B6\u30C1\u30A7\u30C3\u30AF
 menu.guest=\u30B2\u30B9\u30C8\u30A2\u30AF\u30BB\u30B9
 menu.guest.alt=\u30B2\u30B9\u30C8\u3068\u3057\u3066\u30ED\u30B0\u30A4\u30F3\u3059\u308B
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_nl_NL.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_nl_NL.properties
index aa8f148ab8daed3edb5b2b590e73d5fd1eabf97f..c121d1118b49c5a1449bddb1e54b22751b7fe325 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_nl_NL.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_nl_NL.properties
@@ -98,8 +98,6 @@ login.notavailable=De server is overbelast. Gelieve het later opnieuw te probere
 
 menu.about=Over OpenOLAT
 menu.about.alt=Informatie over OpenOLAT
-menu.accessibility=Toegankelijkheid
-menu.accessibility.alt=Informatie over het gebruik van OpenOLAT voor slechtziende personen
 menu.check=Browser check
 menu.check.alt=Kijk na of uw browser op de correcte manier geconfigureerd is
 menu.guest=Gasttoegang
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_pl.properties
index 54bea581d929c1ffe2f3b31216a22c32f36aa37c..2e72b9dec89120b8df07bb5fe26d325cdfe7addf 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_pl.properties
@@ -89,8 +89,6 @@ login.notavailable=Serwer jest przeci\u0105\u017Cony. Spr\u00F3buj ponownie p\u0
 
 menu.about=O OpenOLAT
 menu.about.alt=Informacje o OpenOLAT
-menu.accessibility=Dost\u0119pno\u015B\u0107
-menu.accessibility.alt=Informacje o korzystaniu z OpenOLAT przez osoby niedowidz\u0105ce
 menu.check=Informacje o przegl\u0105darce
 menu.check.alt=Sprawd\u017A czy twoja przegl\u0105darka jest odpowiednio skonfigurowana
 menu.guest=Dost\u0119p jako go\u015B\u0107
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_pt_BR.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_pt_BR.properties
index a9acfcba491155e0d53a239f0730c8ec22ce79ab..e974c3d7140b031548aca82c25f7da481d447470 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_pt_BR.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_pt_BR.properties
@@ -111,8 +111,6 @@ mail.pwd.body=A senha para a sua conta OpenOLAT {0} com o endere\u00E7o de e-mai
 mail.pwd.subject=Senha alterada
 menu.about=Sobre o OpenOLAT
 menu.about.alt=Informa\u00E7\u00E3o sobre o OpenOLAT
-menu.accessibility=Acessibilidade
-menu.accessibility.alt=Informa\u00E7\u00E3o sobre a utiliza\u00E7\u00E3o do OpenOLAT para pessoas com defici\u00EAncia visual
 menu.check=Verifica\u00E7\u00E3o do Browser 
 menu.check.alt=Verificar se seu browser est\u00E1 configurado corretamente
 menu.guest=Acesso ao Convidado
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_ru.properties
index 241663d56cee88288e80e7267d0995114f718111..ad9a07a2f7871ae1e6cb7a7ff4c5b51baa02666c 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_ru.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_ru.properties
@@ -92,8 +92,6 @@ login.notavailable=\u0412 \u043D\u0430\u0441\u0442\u043E\u044F\u0449\u0435\u0435
 
 menu.about=\u041E\u0431 OLAT
 menu.about.alt=\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E \u0441\u0438\u0441\u0442\u0435\u043C\u0435 OLAT
-menu.accessibility=\u0414\u043E\u0441\u0442\u0443\u043F\u043D\u043E\u0441\u0442\u044C
-menu.accessibility.alt=\u0418\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044F \u043E\u0431 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0438 OLAT \u043B\u044E\u0434\u044C\u043C\u0438 \u0441 \u043D\u0430\u0440\u0443\u0448\u0435\u043D\u0438\u044F\u043C\u0438 \u0437\u0440\u0435\u043D\u0438\u044F
 menu.check=\u041F\u0440\u043E\u0432\u0435\u0440\u043A\u0430 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430
 menu.check.alt=\u041F\u0440\u043E\u0432\u0435\u0440\u044C\u0442\u0435, \u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u043E \u043B\u0438 \u043D\u0430\u0441\u0442\u0440\u043E\u0435\u043D \u0412\u0430\u0448  \u0431\u0440\u0430\u0443\u0437\u0435\u0440
 menu.guest=\u0413\u043E\u0441\u0442\u044C
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_zh_CN.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_zh_CN.properties
index 97d26e3770f8cdbb0fe9a4412489823e93e3cf74..d43d33bd354348980cf713b2d51a0efd236b7bda 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_zh_CN.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_zh_CN.properties
@@ -92,8 +92,6 @@ login.notavailable=\u670D\u52A1\u5668\u8D85\u65F6\u3002\u8BF7\u7A0D\u540E\u91CD\
 
 menu.about=\u5173\u4E8EOLAT
 menu.about.alt=OLAT\u4FE1\u606F
-menu.accessibility=\u53EF\u8BBF\u95EE\u6027
-menu.accessibility.alt=\u5173\u4E8E\u89C6\u529B\u51CF\u5F31\u7684\u4EBA\u4F7F\u7528OLAT\u7684\u8BF4\u660E\u3002
 menu.check=\u6D4F\u89C8\u5668\u68C0\u6D4B
 menu.check.alt=\u68C0\u6D4B\u4F60\u7684\u6D4F\u89C8\u5668\u914D\u7F6E\u60C5\u51B5
 menu.guest=\u6E38  \u5BA2
diff --git a/src/main/java/org/olat/login/_i18n/LocalStrings_zh_TW.properties b/src/main/java/org/olat/login/_i18n/LocalStrings_zh_TW.properties
index d84bbdbd00603cf59446437a1f863ed065a05dac..d8028c2b2397dc38af5ea4426bfbacc835cc2cfa 100644
--- a/src/main/java/org/olat/login/_i18n/LocalStrings_zh_TW.properties
+++ b/src/main/java/org/olat/login/_i18n/LocalStrings_zh_TW.properties
@@ -92,8 +92,6 @@ login.notavailable=\u4F3A\u670D\u5668\u8D85\u904E\u8CA0\u8F09\u3002\u8ACB\u7A0D\
 
 menu.about=\u95DC\u65BC OpenOLAT
 menu.about.alt=\u95DC\u65BC OpenOLAT \u7684\u8CC7\u8A0A
-menu.accessibility=\u7121\u969C\u7919
-menu.accessibility.alt=\u95DC\u65BC\u8996\u969C\u4EBA\u58EB\u4F7F\u7528 OpenOLAT \u7684\u8CC7\u8A0A
 menu.check=\u700F\u89BD\u5668\u6AA2\u67E5
 menu.check.alt=\u6AA2\u67E5\u60A8\u7684\u700F\u89BD\u5668\u662F\u5426\u5DF2\u6B63\u78BA\u5730\u8A2D\u5B9A\u4E86
 menu.guest=\u8A2A\u5BA2\u5B58\u53D6
diff --git a/src/main/java/org/olat/modules/cp/CPDisplayController.java b/src/main/java/org/olat/modules/cp/CPDisplayController.java
index a7f77f17a75be042945db7e89c8a4a1ae078cffc..3da58b86b54c682b4c9ee04d2af6c8c76fffa621 100644
--- a/src/main/java/org/olat/modules/cp/CPDisplayController.java
+++ b/src/main/java/org/olat/modules/cp/CPDisplayController.java
@@ -126,18 +126,11 @@ public class CPDisplayController extends BasicController implements Activateable
 		//TODO:gs:a
 		//may add an additional config for disabling, enabling IFrame style or not in CP mode
 		//but always disable IFrame display when in screenreader mode (no matter whether style gets ugly)
-		if (getWindowControl().getWindowBackOffice().getWindowManager().isForScreenReader()) {
-			cpComponent = new HtmlStaticPageComponent("", rootContainer);
-			cpComponent.addListener(this);
-			myContent.put("cpContent", cpComponent);
-			myContent.contextPut("isIframeDelivered", Boolean.FALSE);
-		} else {
-			cpContentCtr = new IFrameDisplayController(ureq, getWindowControl(),rootContainer, null, ores, deliveryOptions);
-			cpContentCtr.setAllowDownload(true);
-			listenTo(cpContentCtr);
-			myContent.put("cpContent", cpContentCtr.getInitialComponent());
-			myContent.contextPut("isIframeDelivered", Boolean.TRUE);
-		}
+		cpContentCtr = new IFrameDisplayController(ureq, getWindowControl(),rootContainer, null, ores, deliveryOptions);
+		cpContentCtr.setAllowDownload(true);
+		listenTo(cpContentCtr);
+		myContent.put("cpContent", cpContentCtr.getInitialComponent());
+		myContent.contextPut("isIframeDelivered", Boolean.TRUE);
 
 		// even if we do not show the menu, we need to build parse the manifest and
 		// find the first node to display at startup
diff --git a/src/main/java/org/olat/modules/cp/WebsiteDisplayController.java b/src/main/java/org/olat/modules/cp/WebsiteDisplayController.java
index 44512a46cc6ffd73f2ef8dc1f1143481dfe539fc..abeff53ba0506c86283dde42ac8efaed46cdbc8d 100644
--- a/src/main/java/org/olat/modules/cp/WebsiteDisplayController.java
+++ b/src/main/java/org/olat/modules/cp/WebsiteDisplayController.java
@@ -27,7 +27,6 @@ package org.olat.modules.cp;
 
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.Component;
-import org.olat.core.gui.components.htmlsite.HtmlStaticPageComponent;
 import org.olat.core.gui.control.Event;
 import org.olat.core.gui.control.WindowControl;
 import org.olat.core.gui.control.controller.BasicController;
@@ -53,31 +52,20 @@ public class WebsiteDisplayController extends BasicController {
 	 */
 	public WebsiteDisplayController(UserRequest ureq, WindowControl wControl, VFSContainer rootContainer, String startUri) {
 		super(ureq, wControl);
-		if (getWindowControl().getWindowBackOffice().getWindowManager().isForScreenReader()) {
-			HtmlStaticPageComponent display = new HtmlStaticPageComponent("display", rootContainer);
-			display.setCurrentURI(startUri);			
-			putInitialPanel(display);
-		} else {
-			IFrameDisplayController iframeCtr = new IFrameDisplayController(ureq, wControl, rootContainer);
-			iframeCtr.setCurrentURI(startUri);
-			listenTo(iframeCtr);
-			putInitialPanel(iframeCtr.getInitialComponent());
-		}
+		
+		IFrameDisplayController iframeCtr = new IFrameDisplayController(ureq, wControl, rootContainer);
+		iframeCtr.setCurrentURI(startUri);
+		listenTo(iframeCtr);
+		putInitialPanel(iframeCtr.getInitialComponent());
 	}
 
-	/**
-	 * @see org.olat.core.gui.control.DefaultController#event(org.olat.core.gui.UserRequest,
-	 *      org.olat.core.gui.components.Component, org.olat.core.gui.control.Event)
-	 */
+	@Override
 	public void event(UserRequest ureq, Component source, Event event) {
 		//
 	}
 
-	/**
-	 * @see org.olat.core.gui.control.DefaultController#doDispose(boolean)
-	 */
+	@Override
 	protected void doDispose() {
 		// auto disposed by basic controller
 	}
-
-}
+}
\ No newline at end of file
diff --git a/src/main/java/org/olat/search/service/indexer/ContextHelpIndexer.java b/src/main/java/org/olat/search/service/indexer/ContextHelpIndexer.java
index af1a03af5d9b8746ace1bd797c46c1ae9d94049b..32ec43946854771a272c7761e585e246ccfb542b 100644
--- a/src/main/java/org/olat/search/service/indexer/ContextHelpIndexer.java
+++ b/src/main/java/org/olat/search/service/indexer/ContextHelpIndexer.java
@@ -33,8 +33,6 @@ import org.apache.lucene.document.Document;
 import org.apache.velocity.context.Context;
 import org.olat.core.commons.contextHelp.ContextHelpModule;
 import org.olat.core.gui.GlobalSettings;
-import org.olat.core.gui.components.Component;
-import org.olat.core.gui.components.ComponentRenderer;
 import org.olat.core.gui.components.velocity.VelocityContainer;
 import org.olat.core.gui.control.winmgr.AJAXFlags;
 import org.olat.core.gui.render.EmptyURLBuilder;
@@ -151,11 +149,6 @@ public class ContextHelpIndexer extends AbstractHierarchicalIndexer {
 			return empty;
 		}
 
-		@Override
-		public ComponentRenderer getComponentRendererFor(Component source) {
-			return null;
-		}
-
 		@Override
 		public boolean isIdDivsForced() {
 			return false;
diff --git a/src/main/java/org/olat/user/ChangePrefsController.java b/src/main/java/org/olat/user/ChangePrefsController.java
index 8ab4028f660dc72fe1d9983e61caded67d94ab95..f09e67e8ff03243c60468504d9a1790f63174161 100644
--- a/src/main/java/org/olat/user/ChangePrefsController.java
+++ b/src/main/java/org/olat/user/ChangePrefsController.java
@@ -191,16 +191,10 @@ class SpecialPrefsForm extends FormBasicController {
 		useAjaxCheckbox = ureq.getUserSession().getRoles().isUserManager();
 		// initialize checkbox keys depending on useAjaxCheckbox flag
 		if (useAjaxCheckbox) {
-			keys = new String[]{"ajax", "web2a"}; 
+			keys = new String[]{"ajax"}; 
 			values = new String[] {
 					translate("ajaxon.label"),
-					translate("accessibility.web2aMode.label")
 			};			
-		} else {
-			keys = new String[]{"web2a"}; 
-			values = new String[] {
-					translate("accessibility.web2aMode.label")
-			};
 		}
 		
 		resumeKeys = new String[]{"none", "auto", "ondemand"}; 
@@ -229,7 +223,6 @@ class SpecialPrefsForm extends FormBasicController {
 		if (useAjaxCheckbox) {
 			prefs.put(WindowManager.class, "ajax-beta-on", prefsElement.getSelectedKeys().contains("ajax"));
 		}
-		prefs.put(WindowManager.class, "web2a-beta-on", prefsElement.getSelectedKeys().contains("web2a"));
 		
 		if(resumeElement != null) {
 			prefs.put(WindowManager.class, "resume-prefs", resumeElement.getSelectedKey());
@@ -268,8 +261,10 @@ class SpecialPrefsForm extends FormBasicController {
 		setFormTitle("title.prefs.special");
 		setFormContextHelp(this.getClass().getPackage().getName(), "home-prefs-special.html", "help.hover.home.prefs.special");
 		
-		prefsElement = uifactory.addCheckboxesVertical("prefs", "title.prefs.accessibility", formLayout, keys, values, 1);
-		prefsElement.setElementCssClass("o_sel_home_settings_accessibility");
+		if(keys != null) {
+			prefsElement = uifactory.addCheckboxesHorizontal("prefs", "title.prefs.accessibility", formLayout, keys, values);
+			prefsElement.setElementCssClass("o_sel_home_settings_accessibility");
+		}
 
 		if(historyModule.isResumeEnabled()) {
 			resumeElement = uifactory.addRadiosVertical("resume", "resume.label", formLayout, resumeKeys, resumeValues);
@@ -293,12 +288,10 @@ class SpecialPrefsForm extends FormBasicController {
 	}
 
 	private void update() {
-		Boolean web2a = (Boolean) prefs.get(WindowManager.class, "web2a-beta-on");
 		Boolean ajax  = (Boolean) prefs.get(WindowManager.class, "ajax-beta-on");
 		if (useAjaxCheckbox) {
 			prefsElement.select("ajax", ajax == null ? true: ajax.booleanValue());
 		}
-		prefsElement.select("web2a", web2a == null ? false: web2a.booleanValue());
 		boolean landingPageVisible = true;
 		if(resumeElement != null) {
 			String resumePrefs = (String)prefs.get(WindowManager.class, "resume-prefs");
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_ar.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_ar.properties
index 26860c05b78119e4dbd9265c7f8b04e8e15d09bb..5e405154232d5afb50c9d07ef7ad037fe7a20b92 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_ar.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_ar.properties
@@ -2,7 +2,6 @@
 Failed=\u0641\u0634\u0644 \u0641\u0649 \u062A\u062D\u0645\u064A\u0644 \u0627\u0644\u0645\u0644\u0641.
 NoImage=\u0644\u0627 \u064A\u0645\u0643\u0646 \u062A\u062D\u0645\u064A\u0644 \u0647\u0630\u0627 \u0627\u0644\u0645\u0644\u0641 \u0643\u0635\u0648\u0631\u0629.
 ULLimitExceeded=\u064A\u062C\u0628 \u0623\u0646 \u0644\u0627 \u062A\u062A\u062C\u0627\u0648\u0632 \u0627\u0644\u0635\u0648\u0631\u0629 {0} \u0643\u064A\u0644\u0648 \u0628\u0627\u064A\u062A.
-accessibility.web2aMode.label=\u0648\u0636\u0639 \u0648\u064A\u0628 2.0 \u0644\u0642\u0627\u0631\u0626 \u0628\u0631\u0627\u064A\u0644 \u0646\u0634\u0637
 action.choose=\u0627\u062E\u062A\u064A\u0627\u0631
 ajaxon.global.label=\u0639\u0644\u0649 \u0645\u0633\u062A\u0648\u0649 \u0627\u0644\u0646\u0638\u0627\u0645 AJAX \u062A\u0646\u0634\u064A\u0637 \u0637\u0631\u064A\u0642\u0629
 ajaxon.label=\u0639\u0644\u0649 \u0645\u0633\u062A\u0648\u0649 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645 AJAX \u062A\u0646\u0634\u064A\u0637
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_bg.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_bg.properties
index e73dab1ceeda833a2e7049721087dd1c9b832d00..6f23bc16ce204ce7e78ae119741fb4ef9c5e4e0b 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_bg.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_bg.properties
@@ -2,7 +2,6 @@
 Failed=\u041A\u0430\u0447\u0432\u0430\u043D\u0435\u0442\u043E \u043D\u0430 \u0444\u0430\u0439\u043B \u043D\u0435 \u0441\u0435 \u043E\u0441\u044A\u0449\u0435\u0441\u0442\u0432\u0438.
 NoImage=\u0422\u043E\u0437\u0438 \u0444\u0430\u0439\u043B\u043E\u0432 \u0444\u043E\u0440\u043C\u0430\u0442 \u043D\u0435 \u043C\u043E\u0436\u0435 \u0434\u0430 \u0431\u044A\u0434\u0435 \u043A\u0430\u0447\u0435\u043D \u043A\u0430\u0442\u043E \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435.
 ULLimitExceeded=\u0412\u0430\u0448\u0435\u0442\u043E \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \u043D\u0435 \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u043D\u0430\u0434\u0432\u0438\u0448\u0430\u0432\u0430 {0} \u043A\u0438\u043B\u043E\u0431\u0430\u0439\u0442\u0430.
-accessibility.web2aMode.label=\u0420\u0435\u0436\u0438\u043C \u0423\u0435\u0431 2.\u0430 \u0437\u0430 \u0431\u0440\u0430\u0438\u043B\u043E\u0432 \u0447\u0435\u0442\u0435\u0446 \u0430\u043A\u0442\u0438\u0432\u0435\u043D
 action.choose=\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435
 ajaxon.global.label=\u0420\u0435\u0436\u0438\u043C\u044A\u0442 AJAX \u0435 \u0430\u043A\u0442\u0438\u0432\u0435\u043D \u043D\u0430 \u0441\u0438\u0441\u0442\u0435\u043C\u043D\u043E \u043D\u0438\u0432\u043E
 ajaxon.label=\u0420\u0435\u0436\u0438\u043C\u044A\u0442 AJAX \u0435 \u0430\u043A\u0442\u0438\u0432\u0435\u043D \u043D\u0430 \u043F\u043E\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043B\u0441\u043A\u043E \u043D\u0438\u0432\u043E
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_cs.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_cs.properties
index cd32fbde468199de960c25f031084f50232b46ab..9d66cfb9357cc4ad34775df35d60509420a6091f 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_cs.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_cs.properties
@@ -2,7 +2,6 @@
 Failed=P\u0159id\u00E1n\u00ED souboru selhalo.
 NoImage=Tento typ souboru nem\u016F\u017Ee b\u00FDt p\u0159id\u00E1n jako obr\u00E1zek.
 ULLimitExceeded=Velikost obr\u00E1zku nesm\u00ED p\u0159ekro\u010Dit {0} kByte.
-accessibility.web2aMode.label=Web 2.a m\u00F3d pro slabozrak\u00E9 aktivov\u00E1n
 action.choose=Vybrat
 ajaxon.global.label=AJAX m\u00F3d automaticky aktivov\u00E1n
 ajaxon.label=AJAX beta verze (rychlej\u0161\u00ED zobrazov\u00E1n\u00ED str\u00E1nek)
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_de.properties
index c6f6715f5e7a2d86d7973773e9ef5432e9a3a81e..27d30067735a5183c8a35237944f0848388baf9d 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_de.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_de.properties
@@ -2,7 +2,6 @@
 Failed=Die \u00DCbermittlung der Datei ist fehlgeschlagen.
 NoImage=Dieses Dateiformat kann nicht als Bild hochgeladen werden.
 ULLimitExceeded=Das Bild darf nicht gr\u00F6sser als {0} kByte sein.
-accessibility.web2aMode.label=Web 2.a Modus f\u00FCr Brailleger\u00E4te
 action.choose=W\u00E4hlen
 ajaxon.global.label=AJAX-Modus ist auf Systemebene eingeschaltet
 ajaxon.label=AJAX-Modus
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_el.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_el.properties
index 80116b122d55a26e8d3f6156bfdd5fc3be90ed51..f6ed5d9706354577979402f939d10af00d21a56e 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_el.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_el.properties
@@ -2,7 +2,6 @@
 Failed=\u03A4\u03BF \u03B1\u03BD\u03AD\u03B2\u03B1\u03C3\u03BC\u03B1 \u03C4\u03BF\u03C5 \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF\u03C5 \u03B1\u03C0\u03AD\u03C4\u03C5\u03C7\u03B5.
 NoImage=\u0391\u03C5\u03C4\u03CC \u03C4\u03BF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF \u03B4\u03B5\u03BD \u03BC\u03C0\u03BF\u03C1\u03B5\u03AF \u03BD\u03B1 \u03B1\u03BD\u03AD\u03B2\u03B5\u03B9 \u03C9\u03C2 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1.
 ULLimitExceeded=\u03A4\u03BF \u03BC\u03AD\u03B3\u03B5\u03B8\u03BF\u03C2 \u03C4\u03B7\u03C2 \u03B5\u03B9\u03BA\u03CC\u03BD\u03B1\u03C2 \u03B4\u03B5\u03BD \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C5\u03C0\u03B5\u03C1\u03B2\u03B1\u03AF\u03BD\u03B5\u03B9 \u03C4\u03B1 {0} kByte.
-accessibility.web2aMode.label=\u039B\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 Web 2.a \u03B3\u03B9\u03B1 \u03B1\u03BD\u03B1\u03B3\u03BD\u03CE\u03C3\u03C4\u03B5\u03C2 braille \u03B5\u03BD\u03B5\u03C1\u03B3\u03AE
 action.choose=\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE
 ajaxon.global.label=\u039B\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 AJAX \u03B5\u03BD\u03B5\u03C1\u03B3\u03AE \u03C3\u03B5 \u03B5\u03C0\u03AF\u03C0\u03B5\u03B4\u03BF \u03C3\u03C5\u03C3\u03C4\u03AE\u03BC\u03B1\u03C4\u03BF\u03C2
 ajaxon.label=\u039B\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 AJAX \u03B5\u03BD\u03B5\u03C1\u03B3\u03AE \u03C3\u03B5 \u03B5\u03C0\u03AF\u03C0\u03B5\u03B4\u03BF \u03C7\u03C1\u03AE\u03C3\u03C4\u03B7
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_en.properties
index 6e1a973b53ddfe259307e97c4d70a38d842796f0..322bacec52f0e68904838eea906d0eff3b5639be 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_en.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_en.properties
@@ -2,7 +2,6 @@
 Failed=File upload failed.
 NoImage=This file format cannot be uploaded as image.
 ULLimitExceeded=Your image must not exceed {0} kByte.
-accessibility.web2aMode.label=Web 2.a mode for braille readers
 action.choose=Select
 ajaxon.global.label=AJAX mode active on system level
 ajaxon.label=AJAX mode
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_es.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_es.properties
index 70ba447774e646c575f1a81d2162986837fcef00..49c541f279dcebf4636681080001e94c35829cd2 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_es.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_es.properties
@@ -2,7 +2,6 @@
 Failed=Fallo en la carga del archivo
 NoImage=Este formato de archivo no puede subirse como imagen.
 ULLimitExceeded=La imagen no puede sobrepasar los {0} kByte.
-accessibility.web2aMode.label=El modo Web 2.a para lectores Braille se ha activado
 action.choose=Seleccionar
 ajaxon.global.label=Modo AJAX seleccionado para el sistema entero
 ajaxon.label=Modo AJAX seleccionado por este usuario
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_fr.properties
index f7f0742ae49a0af2934199860a2fd58c34d98336..9704433cd305c5fda8226a849ff87ac544efa974 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_fr.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_fr.properties
@@ -2,7 +2,6 @@
 Failed=La transmission du fichier a \u00E9chou\u00E9.
 NoImage=L'image ne peut pas \u00EAtre transmise sous ce format de fichier.
 ULLimitExceeded=L'image ne doit pas d\u00E9passer {0} KB.
-accessibility.web2aMode.label=Mode Web 2.a pour les appareils Braille
 action.choose=S\u00E9lectionner
 ajaxon.global.label=Le mode AJAX est activ\u00E9 au niveau syst\u00E8me
 ajaxon.label=Mode AJAX
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_it.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_it.properties
index 000daa8202778c1f2ed2919bcd564ed427d85d27..5daa6d3b29f4a477ba1aa3cab1ec756631333ca8 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_it.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_it.properties
@@ -2,7 +2,6 @@
 Failed=Il caricamento del file non \u00E8 riuscito.
 NoImage=Il formato del file non ne permette il caricamento come immagine.
 ULLimitExceeded=L'immagine non pu\u00F2 superare i {0} kByte.
-accessibility.web2aMode.label=Modalit\u00E0 Web 2.a per apparecchi Braille
 action.choose=Selezionare
 ajaxon.global.label=La modalit\u00E0 AJAX \u00E8 attivata come standard
 ajaxon.label=Modalit\u00E0 AJAX
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_nl_NL.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_nl_NL.properties
index 5381b4e462b4afe6eb38a23956fc37a74c07d1dc..45f248b6ce8ed441cf87b36c5f60ab7e3274ed79 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_nl_NL.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_nl_NL.properties
@@ -2,7 +2,6 @@
 Failed=Uploaden bestand mislukt.
 NoImage=Deze bestandsindeling kan niet worden ge\u00FCpload als afbeelding.
 ULLimitExceeded=Uw afbeelding mag niet groter zijn dan {0} kByte.
-accessibility.web2aMode.label=Web 2.a-modus voor braille leestoestel is actief
 action.choose=Kies
 ajaxon.global.label=AJAX-modus is actief op systeemniveau
 ajaxon.label=AJAX-modus is actief op gebruikersniveau
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_pl.properties
index 5f373c568c2aca141c0bc4a448d90fa0c73c025b..c6c85fc6e0c3a407b08eaea019e2fd0712ea4c98 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_pl.properties
@@ -2,7 +2,6 @@
 Failed=Nie uda\u0142o si\u0119 przekaza\u0107 pliku.
 NoImage=Ten format pliku nie mo\u017Ce zosta\u0107 przekazany jako obrazek.
 ULLimitExceeded=Rozmiar obrazka nie mo\u017Ce przekracza\u0107 {0} KB.
-accessibility.web2aMode.label=Tryb Web 2.a dla os\u00F3b czytaj\u0105cych braillem jest aktywny
 action.choose=Wybierz
 ajaxon.global.label=Tryb AJAX jest aktywny dla ca\u0142ego systemu
 ajaxon.label=Tryb AJAX jest aktywny na poziomie u\u017Cytkownika
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_pt_BR.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_pt_BR.properties
index 4f4cde48222d7cef6bb73135f29f76ee9e90b34c..f5ffd4bf3f9e8871c17c182732896791604b8122 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_pt_BR.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_pt_BR.properties
@@ -2,7 +2,6 @@
 Failed=Falha na carga do arquivo. 
 NoImage=Este formato de arquivo n\u00E3o pode ser carregado como imagem.
 ULLimitExceeded=A imagem n\u00E3o pode exceder {0} kByte.
-accessibility.web2aMode.label=Modo Web 2.a para leitor em braille ativo
 action.choose=Selecionar
 ajaxon.global.label=Modo AJAX ativo em todo o sistema
 ajaxon.label=Modo AJAX ativo \u00E0 nivel de usu\u00E1rio
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_ru.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_ru.properties
index 3617095d53fb240525e6baaf1309faa1aa64d8c7..cb573dbd68726ce4ca19b010c40a47681e2cf5b1 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_ru.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_ru.properties
@@ -2,7 +2,6 @@
 Failed=\u041F\u0435\u0440\u0435\u0441\u044B\u043B\u043A\u0430 \u0444\u0430\u0439\u043B\u0430 \u043D\u0435 \u0443\u0434\u0430\u043B\u0430\u0441\u044C. 
 NoImage=\u0424\u0430\u0439\u043B \u0432 \u0434\u0430\u043D\u043D\u043E\u043C \u0444\u043E\u0440\u043C\u0430\u0442\u0435 \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043D \u0432 \u043A\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0438\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F. 
 ULLimitExceeded=\u0418\u0437\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u0435 \u043D\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u043F\u0440\u0435\u0432\u044B\u0448\u0430\u0442\u044C {0} \u041A\u0431\u0430\u0439\u0442.
-accessibility.web2aMode.label=\u0412\u0435\u0431 2.\u0430 \u043C\u043E\u0434\u0443\u0441 \u0430\u043A\u0442\u0438\u0432\u0438\u0440\u043E\u0432\u0430\u043D \u0434\u043B\u044F \u0447\u0442\u0435\u043D\u0438\u044F \u043F\u043E \u0441\u0438\u0441\u0442\u0435\u043C\u0435 \u0411\u0440\u0430\u0439\u043B\u044F
 action.choose=\u0412\u044B\u0431\u0440\u0430\u0442\u044C
 ajaxon.global.label=AJAX-\u043C\u043E\u0434\u0443\u0441 \u0430\u043A\u0442\u0438\u0432\u0438\u0440\u043E\u0432\u0430\u043D \u043D\u0430 \u0443\u0440\u043E\u0432\u043D\u0435 \u0441\u0438\u0441\u0442\u0435\u043C\u044B
 ajaxon.label=AJAX-\u043C\u043E\u0434\u0443\u0441 \u0430\u043A\u0442\u0438\u0432\u0438\u0440\u043E\u0432\u0430\u043D \u043D\u0430 \u0443\u0440\u043E\u0432\u043D\u0435 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_zh_CN.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_zh_CN.properties
index 869295623d7d172f0237754129199437e95feb27..90565438246590b5fb89a2772bc74ddb664bc209 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_zh_CN.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_zh_CN.properties
@@ -2,7 +2,6 @@
 Failed=\u6587\u4EF6\u4E0A\u4F20\u5931\u8D25
 NoImage=\u8BE5\u683C\u5F0F\u7684\u56FE\u7247\u4E0D\u80FD\u4E0A\u4F20
 ULLimitExceeded=\u56FE\u7247\u4E0D\u80FD\u8D85\u8FC7 {0} kByte\u3002
-accessibility.web2aMode.label=\u4E3A\u76F2\u6587\u8BFB\u7740\u5F00\u542Fweb2.a\u6A21\u5F0F
 action.choose=\u8BF7\u9009\u62E9
 ajaxon.global.label=\u7CFB\u7EDF\u4E2DAJAX\u6A21\u5F0F\u5F00\u542F
 ajaxon.label=AJAX\u6A21\u5F0F
diff --git a/src/main/java/org/olat/user/_i18n/LocalStrings_zh_TW.properties b/src/main/java/org/olat/user/_i18n/LocalStrings_zh_TW.properties
index eec25197ee2b14fd4ff3ccd79762c2a40a80775b..6cde121ca7d21fbce0055c9e062825c9f106dcfd 100644
--- a/src/main/java/org/olat/user/_i18n/LocalStrings_zh_TW.properties
+++ b/src/main/java/org/olat/user/_i18n/LocalStrings_zh_TW.properties
@@ -2,7 +2,6 @@
 Failed=\u6A94\u6848\u4E0A\u50B3\u5931\u6557\u3002
 NoImage=\u9019\u500B\u6A94\u6848\u683C\u5F0F\u4E0D\u80FD\u88AB\u7576\u6210\u5716\u7247\u4E0A\u50B3\u3002
 ULLimitExceeded=\u60A8\u7684\u5716\u7247\u4E0D\u80FD\u8D85\u904E {0} kByte\u3002
-accessibility.web2aMode.label=\u4F9B(\u76F2\u4EBA\u7528)\u5E03\u62C9\u8036\u9EDE\u5B57\u6CD5\u95B1\u8B80\u5668\u4F7F\u7528\u7684 Web 2.a \u6A21\u5F0F
 action.choose=\u9078\u64C7
 ajaxon.global.label=AJAX \u6A21\u5F0F\u555F\u7528\u5728\u7CFB\u7D71\u5C64\u7D1A
 ajaxon.label=AJAX \u6A21\u5F0F