Hello All,

According to my tests
textarea with hidden attribute works the same way as `display: none`
(latest Chrome, FF, Chromium)

hidden also hides all descendants

So I would vote for using `hidden="hidden"` for placeholders and preserving
`data-wicket-placeholder`
(due to hidden can be used in regular markup while
`data-wicket-placeholder` is clear way to determine the placeholders)

On Wed, 15 Jan 2020 at 04:55, Andrew Kondratev <and...@kondratev.pro> wrote:

> Hi Everyone!
>
> Is this "none !important" actually needed? Elements with hidden attribute
> are hidden by themselves, except the cases when they have some display
> overrides (see
> https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/hidden
> ).
> If developer/user does override he or she could take care of this by
> himself.
>
> If the only style in core css is this wicket--hidden the whole css is,
> probably unnecessary.
>
> ср, 15 янв. 2020 г. в 10:38, Sven Meier <s...@meiers.net>:
>
> > Hi Edmond,
> >
> > then I'll ask again:
> >
> > Why not render a "hidden" attribute and style it in the core css:
> >
> > |[hidden] { display: none !important}|
> >
> > We could get rid of the "data-wicket-placeholder" attribute as well, and
> > let wicket-ajax check on the "hidden" attribute instead.
> >
> > Sven
> >
> > On 14.01.20 21:06, Emond Papegaaij wrote:
> > >>   >Using the hidden attribute is no option either,
> > >>   >because it is overridden by any css that sets display.
> > >>
> > >> why is that a no-option, hidden elements can be styled too:
> > > Dropping the styling altogether will force our users to package their
> > > own styling for artifacts generated by Wicket. These styles are not to
> > > make your application look nice, but to make certain Wicket internals
> > > work as expected. In the case of wicket--hidden, not much else can be
> > > done than use 'display:none'. In the case of the Form parts, more
> > > elaborate styling is need to keep the extra fields hidden without
> > > using display:none. Why put the burden on the user of Wicket when we
> > > can package those styling ourselves? I can put the registration of the
> > > IHeaderContributor in a protected method in WebApplication. That way
> > > you can change the behavior in a subclass. You can already change the
> > > stylesheet if you need to.
> > >
> > >> Do you mean FormComponentFeedbackBorder's "color:red;" style?
> > >> I wouldn't want that to be located in a 'kitchen-sink' CSS file in the
> > >> future.
> > > Yes, that's the styling I meant. There are more examples. IMHO those
> > > are typical candidates for CSS classes, but without styling packaged
> > > with Wicket (like with FeedbackPanel). The styling is not going to
> > > match the users application anyway. Who would want to use red as a
> > > color for a border? Even for me, being colorblind, that color is way
> > > too saturated.
> > >
> > > Best regards,
> > > Emond
> > >
> > >> Have fun
> > >> Sven||
> > >> ||
> > >>
> > >>
> > >> On 14.01.20 20:31, Emond Papegaaij wrote:
> > >>> Hi,
> > >>>
> > >>> Sven, we do need styling to hide components.
> > >>> Component.renderPlaceholderTag renders an empty tag for whatever it
> > >>> reads from your markup. That fact that it is empty, does not mean it
> > >>> is invisible. For example, in my application I had empty list-items
> > >>> (li) popping up all over the place. Using the hidden attribute is no
> > >>> option either, because it is overridden by any css that sets display.
> > >>> We need something that takes precedence over most styling and hides
> > >>> the component for sure.
> > >>>
> > >>> Maxim, I didn't know about the application wide IHeaderContributors.
> > >>> I'll give that a try, it seems cleaner to me than overriding
> > >>> renderHead in Page.
> > >>>
> > >>> About the contents of the stylesheet, it will probably not contain
> > >>> much styling, but it will be more than just wicket--hidden. For
> > >>> example, the styling for the form submit handling markup needs to go
> > >>> there as well. I also found some other places with inline styling,
> > >>> like FormComponentFeedbackBorder. We need to decide what to do with
> > >>> those as well.
> > >>>
> > >>> Best regards,
> > >>> Emond
> > >>>
> > >>> On Tue, Jan 14, 2020 at 7:19 PM Sven Meier <s...@meiers.net> wrote:
> > >>>> Hi Maxim,
> > >>>>
> > >>>> an empty div with hidden inputs does not take any space.
> > >>>>
> > >>>> Try it with wicket-examples.
> > >>>>
> > >>>> Have fun
> > >>>> Sven
> > >>>>
> > >>>> Am 14. Januar 2020 18:07:23 MEZ schrieb Maxim Solodovnik <
> > solomax...@gmail.com>:
> > >>>>> I thought the main idea is to keep placeholder for any element both
> > >>>>> invisible and "take no space"
> > >>>>> hidden attribute might work instead of `display: none`
> > >>>>> The latter also hides all descendants [1], so I guess it should be
> > >>>>> preferable
> > >>>>>
> > >>>>> [1] https://developer.mozilla.org/en-US/docs/Web/CSS/display
> > >>>>>
> > >>>>> On Wed, 15 Jan 2020 at 00:01, Sven Meier <s...@meiers.net> wrote:
> > >>>>>
> > >>>>>> Hi,
> > >>>>>>
> > >>>>>> do we really need this CSS?
> > >>>>>>
> > >>>>>> AFAIK the 'hidden' markup from Form and Component placeholders do
> > not
> > >>>>>> need any styling actually, they look fine without it.
> > >>>>>> We should add a CSS class to the markup of course, but leave its
> > >>>>> styling
> > >>>>>> to each project.
> > >>>>>>
> > >>>>>> Cases in wicket-examples (UploadProgressBar, deprecated
> ModalWindow
> > >>>>> and
> > >>>>>> AjaxIndicatorAppender) could switch to a different solution (e.g.
> > >>>>> their
> > >>>>>> own CSS).
> > >>>>>>
> > >>>>>> If wicket-base.css contains ".wicket--hidden" only, the effort
> isn't
> > >>>>>> worth it IMHO.
> > >>>>>>
> > >>>>>> Sven
> > >>>>>>
> > >>>>>>
> > >>>>>> On 14.01.20 16:23, Maxim Solodovnik wrote:
> > >>>>>>> For example it can be added as
> > >>>>>>> `Application.get().getHeaderContributorListeners()`
> > >>>>>>>
> > >>>>>>> On Tue, 14 Jan 2020 at 16:03, Maxim Solodovnik
> > >>>>> <solomax...@gmail.com>
> > >>>>>> wrote:
> > >>>>>>>> `!important` is not the silver bullet (as well as inline style)
> > >>>>>>>>
> > >>>>>>>> `renderHead` is not as important as `onConfigure`, so I believe
> it
> > >>>>>>>> shouldn't be made mandatory
> > >>>>>>>> Maybe there is some `hackish` way to inject this css only once
> for
> > >>>>> any
> > >>>>>>>> component hierarchy?
> > >>>>>>>>
> > >>>>>>>> On Tue, 14 Jan 2020 at 15:55, Emond Papegaaij <
> > >>>>>> emond.papega...@gmail.com>
> > >>>>>>>> wrote:
> > >>>>>>>>
> > >>>>>>>>> Rendering components without a page will indeed require you to
> > >>>>> include
> > >>>>>>>>> the core css file yourself. I think that's better than adding
> the
> > >>>>> css
> > >>>>>>>>> file with every component, as that will impose a massive
> > >>>>> overhead.
> > >>>>>>>>> I've renamed the css file to wicket-core.css as suggested by
> > >>>>> Martin.
> > >>>>>>>>> The idea is to collect all styling used with wicket-core in
> this
> > >>>>> css
> > >>>>>>>>> file. I do not like the idea to use a behavior for adding the
> > >>>>>>>>> stylesheet, as that will increase the size of every page.
> Maybe a
> > >>>>>>>>> temporary behavior can be used, but that will need to be
> re-added
> > >>>>> on
> > >>>>>>>>> every render then. Maybe, we can add a check to
> super.renderHead,
> > >>>>> like
> > >>>>>>>>> we do with onConfgure and onInitialize?
> > >>>>>>>>>
> > >>>>>>>>> Using the hidden attribute is not a good idea, for the same
> > >>>>> reason as
> > >>>>>>>>> I chose to use !important in the css file: any matching css
> rule
> > >>>>> that
> > >>>>>>>>> is more specify will otherwise override the visibility and
> cause
> > >>>>> the
> > >>>>>>>>> component to be visible anyway (like display: flex).
> > >>>>>>>>>
> > >>>>>>>>> Best regards,
> > >>>>>>>>> Emond
> > >>>>>>>>>
> > >>>>>>>>> On Tue, Jan 14, 2020 at 9:10 AM Maxim Solodovnik
> > >>>>> <solomax...@gmail.com
> > >>>>>>>>> wrote:
> > >>>>>>>>>> The problem as I see it
> > >>>>>>>>>> The component will be rendered without page (and without CSS
> > >>>>> file
> > >>>>>>>>> itself)
> > >>>>>>>>>> so element with this class will actually be visible ....
> > >>>>>>>>>>
> > >>>>>>>>>> On Tue, 14 Jan 2020 at 15:08, Martin Grigorov
> > >>>>> <mgrigo...@apache.org>
> > >>>>>>>>> wrote:
> > >>>>>>>>>>> On Tue, Jan 14, 2020 at 10:01 AM Maxim Solodovnik <
> > >>>>>>>>> solomax...@gmail.com>
> > >>>>>>>>>>> wrote:
> > >>>>>>>>>>>
> > >>>>>>>>>>>> An related question:
> > >>>>>>>>>>>> Will this code
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>
> > >>>>>
> >
> `org.apache.wicket.core.util.string.ComponentRenderer.renderComponent(Component)`
> > >>>>>>>>>>>> work as expected?
> > >>>>>>>>>>>>
> > >>>>>>>>>>> This method will render the component with
> > >>>>> class="wicket--hidden" on
> > >>>>>>>>> its
> > >>>>>>>>>>> HTML element. With TagTester you can verify
> > >>>>>>>>>>> CSP checks are done only by the browsers.
> > >>>>>>>>>>>
> > >>>>>>>>>>>
> > >>>>>>>>>>>> On Tue, 14 Jan 2020 at 14:15, Maxim Solodovnik <
> > >>>>>>>>> solomax...@gmail.com>
> > >>>>>>>>>>>> wrote:
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>> Is this comment make sense:
> > >>>>>>>>>>>>>
> > >>>>>
> >
> https://github.com/apache/wicket/commit/6d91a6a9e5c1d955a53571f9fb0f76262ac5c5d2#r36784645
> > >>>>>>>>>>>>> ?
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> On Tue, 14 Jan 2020 at 14:13, Martin Grigorov <
> > >>>>>>>>> mgrigo...@apache.org>
> > >>>>>>>>>>>>> wrote:
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>> On Tue, Jan 14, 2020 at 9:05 AM Maxim Solodovnik <
> > >>>>>>>>>>> solomax...@gmail.com>
> > >>>>>>>>>>>>>> wrote:
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>> Wasn't aware of `hidden` attribute
> > >>>>>>>>>>>>>>> (and it seems to be widely supported
> > >>>>>>>>>>>>>>>
> > >>>>>
> >
> https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/hidden
> > >>>>>>>>>>>>>>> )
> > >>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> Thanks for the reference, Maxim!
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> It says "elements that are descendants of a hidden element
> > >>>>> are
> > >>>>>>>>> still
> > >>>>>>>>>>>>>> active, which means that script elements can still execute
> > >>>>> and
> > >>>>>>>>> form
> > >>>>>>>>>>>>>> elements can still submit" and this is different than
> > >>>>> display:
> > >>>>>>>>> none.
> > >>>>>>>>>>>>>> So we should stick with CSS display!
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>> Thanks :)
> > >>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>> On Tue, 14 Jan 2020 at 14:01, Martin Grigorov <
> > >>>>>>>>> mgrigo...@apache.org
> > >>>>>>>>>>>>>>> wrote:
> > >>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> Hi,
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> 1) I see that such CSS resource might be used for other
> > >>>>>>>>> needs, not
> > >>>>>>>>>>>>>> just
> > >>>>>>>>>>>>>>>> this particular case but would it be an option to use
> > >>>>>>>>> "hidden"
> > >>>>>>>>>>>>>> attribute
> > >>>>>>>>>>>>>>> in
> > >>>>>>>>>>>>>>>> this case instead of CSS "display" ?
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> 2) wicket-core.css instead of wicket-base.css ?
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> On Mon, Jan 13, 2020 at 9:43 PM <papega...@apache.org>
> > >>>>>>>>> wrote:
> > >>>>>>>>>>>>>>>>> This is an automated email from the ASF dual-hosted git
> > >>>>>>>>>>>> repository.
> > >>>>>>>>>>>>>>>>> papegaaij pushed a commit to branch csp
> > >>>>>>>>>>>>>>>>> in repository
> > >>>>>>>>> https://gitbox.apache.org/repos/asf/wicket.git
> > >>>>>>>>>>>>>>>>> The following commit(s) were added to refs/heads/csp by
> > >>>>>>>>> this
> > >>>>>>>>>>> push:
> > >>>>>>>>>>>>>>>>>         new 6d91a6a  WICKET-6725: replace display:none
> by
> > >>>>>>>>>>>>>> wicket--hidden
> > >>>>>>>>>>>>>>> css
> > >>>>>>>>>>>>>>>>> class
> > >>>>>>>>>>>>>>>>> 6d91a6a is described below
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> commit 6d91a6a9e5c1d955a53571f9fb0f76262ac5c5d2
> > >>>>>>>>>>>>>>>>> Author: Emond Papegaaij <emond.papega...@topicus.nl>
> > >>>>>>>>>>>>>>>>> AuthorDate: Mon Jan 13 20:43:01 2020 +0100
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>        WICKET-6725: replace display:none by
> > wicket--hidden
> > >>>>> css
> > >>>>>>>>>>> class
> > >>>>>>>>>>>>>>>>> ---
> > >>>>>>>>>>>>>>>>>     .../src/main/java/org/apache/wicket/Component.java
> > |  2
> > >>>>> +-
> > >>>>>>>>>>>>>>>>>     .../src/main/java/org/apache/wicket/Page.java
> |
> > 11
> > >>>>>>>>> +++++++
> > >>>>>>>>>>>>>>>>>     .../wicket/css/WicketBaseCSSResourceReference.java
> |
> > 36
> > >>>>>>>>>>>>>>>>> ++++++++++++++++++++++
> > >>>>>>>>>>>>>>>>>     .../java/org/apache/wicket/css/wicket-base.css
> >  |  3
> > >>>>> ++
> > >>>>>>>>>>>>>>>>>     .../apache/wicket/settings/ResourceSettings.java
>  |
> > 31
> > >>>>>>>>>>>>>>>>> +++++++++++++++++++
> > >>>>>>>>>>>>>>>>>     .../ajax/markup/html/AjaxIndicatorAppender.java
> > |  2
> > >>>>> +-
> > >>>>>>>>>>>>>>>>>     6 files changed, 83 insertions(+), 2 deletions(-)
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> diff --git
> > >>>>>>>>>>>>>>
> a/wicket-core/src/main/java/org/apache/wicket/Component.java
> > >>>>>>>>> b/wicket-core/src/main/java/org/apache/wicket/Component.java
> > >>>>>>>>>>>>>>>>> index 9da8ec5..d2da23b 100644
> > >>>>>>>>>>>>>>>>> ---
> > >>>>>>>>> a/wicket-core/src/main/java/org/apache/wicket/Component.java
> > >>>>>>>>>>>>>>>>> +++
> > >>>>>>>>> b/wicket-core/src/main/java/org/apache/wicket/Component.java
> > >>>>>>>>>>>>>>>>> @@ -2367,7 +2367,7 @@ public abstract class Component
> > >>>>>>>>>>>>>>>>>                    response.write(name);
> > >>>>>>>>>>>>>>>>>                    response.write(" id=\"");
> > >>>>>>>>>>>>>>>>>
> > response.write(getAjaxRegionMarkupId());
> > >>>>>>>>>>>>>>>>> -               response.write("\"
> style=\"display:none\"
> > >>>>>>>>>>>>>>>>> data-wicket-placeholder=\"\"></");
> > >>>>>>>>>>>>>>>>> +               response.write("\"
> > >>>>> class=\"wicket--hidden\"
> > >>>>>>>>>>>>>>>>> data-wicket-placeholder=\"\"></");
> > >>>>>>>>>>>>>>>>>                    response.write(name);
> > >>>>>>>>>>>>>>>>>                    response.write(">");
> > >>>>>>>>>>>>>>>>>            }
> > >>>>>>>>>>>>>>>>> diff --git
> > >>>>>>>>>>> a/wicket-core/src/main/java/org/apache/wicket/Page.java
> > >>>>>>>>>>>>>>>>> b/wicket-core/src/main/java/org/apache/wicket/Page.java
> > >>>>>>>>>>>>>>>>> index 3f0f5b5..3d70ad8 100644
> > >>>>>>>>>>>>>>>>> ---
> > >>>>> a/wicket-core/src/main/java/org/apache/wicket/Page.java
> > >>>>>>>>>>>>>>>>> +++
> > >>>>> b/wicket-core/src/main/java/org/apache/wicket/Page.java
> > >>>>>>>>>>>>>>>>> @@ -24,10 +24,13 @@ import java.util.Set;
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>     import
> > >>>>>>>>>>>> org.apache.wicket.authorization.UnauthorizedActionException;
> > >>>>>>>>>>>>>>>>>     import
> > org.apache.wicket.core.util.lang.WicketObjects;
> > >>>>>>>>>>>>>>>>> +import
> > >>>>>>>>> org.apache.wicket.css.WicketBaseCSSResourceReference;
> > >>>>>>>>>>>>>>>>>     import org.apache.wicket.feedback.FeedbackDelay;
> > >>>>>>>>>>>>>>>>>     import org.apache.wicket.markup.MarkupException;
> > >>>>>>>>>>>>>>>>>     import org.apache.wicket.markup.MarkupStream;
> > >>>>>>>>>>>>>>>>>     import org.apache.wicket.markup.MarkupType;
> > >>>>>>>>>>>>>>>>> +import org.apache.wicket.markup.head.CssHeaderItem;
> > >>>>>>>>>>>>>>>>> +import org.apache.wicket.markup.head.IHeaderResponse;
> > >>>>>>>>>>>>>>>>>     import org.apache.wicket.markup.html.WebPage;
> > >>>>>>>>>>>>>>>>>     import
> > >>>>>>>>> org.apache.wicket.markup.resolver.IComponentResolver;
> > >>>>>>>>>>>>>>>>>     import org.apache.wicket.model.IModel;
> > >>>>>>>>>>>>>>>>> @@ -1003,6 +1006,14 @@ public abstract class Page
> extends
> > >>>>>>>>>>>>>>> MarkupContainer
> > >>>>>>>>>>>>>>>>>                    }
> > >>>>>>>>>>>>>>>>>            }
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> +       @Override
> > >>>>>>>>>>>>>>>>> +       public void renderHead(IHeaderResponse
> response)
> > >>>>>>>>>>>>>>>>> +       {
> > >>>>>>>>>>>>>>>>> +               super.renderHead(response);
> > >>>>>>>>>>>>>>>>> +               response.render(
> > >>>>>>>>>>>>>>>>> +
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> >
> CssHeaderItem.forReference(getApplication().getResourceSettings().getWicketBaseCSS()));
> > >>>>>>>>>>>>>>>>> +       }
> > >>>>>>>>>>>>>>>>> +
> > >>>>>>>>>>>>>>>>>            /**
> > >>>>>>>>>>>>>>>>>             * THIS METHOD IS NOT PART OF THE WICKET
> > PUBLIC
> > >>>>>>>>> API. DO
> > >>>>>>>>>>>> NOT
> > >>>>>>>>>>>>>>> CALL.
> > >>>>>>>>>>>>>>>>>             *
> > >>>>>>>>>>>>>>>>> diff --git
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> >
> a/wicket-core/src/main/java/org/apache/wicket/css/WicketBaseCSSResourceReference.java
> > >>>>>
> >
> b/wicket-core/src/main/java/org/apache/wicket/css/WicketBaseCSSResourceReference.java
> > >>>>>>>>>>>>>>>>> new file mode 100644
> > >>>>>>>>>>>>>>>>> index 0000000..9247216
> > >>>>>>>>>>>>>>>>> --- /dev/null
> > >>>>>>>>>>>>>>>>> +++
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> >
> b/wicket-core/src/main/java/org/apache/wicket/css/WicketBaseCSSResourceReference.java
> > >>>>>>>>>>>>>>>>> @@ -0,0 +1,36 @@
> > >>>>>>>>>>>>>>>>> +/*
> > >>>>>>>>>>>>>>>>> + * Licensed to the Apache Software Foundation (ASF)
> > >>>>> under
> > >>>>>>>>> one
> > >>>>>>>>>>> or
> > >>>>>>>>>>>>>> more
> > >>>>>>>>>>>>>>>>> + * contributor license agreements.  See the NOTICE
> file
> > >>>>>>>>>>>> distributed
> > >>>>>>>>>>>>>>> with
> > >>>>>>>>>>>>>>>>> + * this work for additional information regarding
> > >>>>>>>>> copyright
> > >>>>>>>>>>>>>> ownership.
> > >>>>>>>>>>>>>>>>> + * The ASF licenses this file to You under the Apache
> > >>>>>>>>> License,
> > >>>>>>>>>>>>>> Version
> > >>>>>>>>>>>>>>>> 2.0
> > >>>>>>>>>>>>>>>>> + * (the "License"); you may not use this file except
> in
> > >>>>>>>>>>>> compliance
> > >>>>>>>>>>>>>>> with
> > >>>>>>>>>>>>>>>>> + * the License.  You may obtain a copy of the License
> at
> > >>>>>>>>>>>>>>>>> + *
> > >>>>>>>>>>>>>>>>> + *      http://www.apache.org/licenses/LICENSE-2.0
> > >>>>>>>>>>>>>>>>> + *
> > >>>>>>>>>>>>>>>>> + * Unless required by applicable law or agreed to in
> > >>>>>>>>> writing,
> > >>>>>>>>>>>>>> software
> > >>>>>>>>>>>>>>>>> + * distributed under the License is distributed on an
> > >>>>> "AS
> > >>>>>>>>> IS"
> > >>>>>>>>>>>>>> BASIS,
> > >>>>>>>>>>>>>>>>> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
> either
> > >>>>>>>>> express
> > >>>>>>>>>>>> or
> > >>>>>>>>>>>>>>>>> implied.
> > >>>>>>>>>>>>>>>>> + * See the License for the specific language governing
> > >>>>>>>>>>>> permissions
> > >>>>>>>>>>>>>> and
> > >>>>>>>>>>>>>>>>> + * limitations under the License.
> > >>>>>>>>>>>>>>>>> + */
> > >>>>>>>>>>>>>>>>> +package org.apache.wicket.css;
> > >>>>>>>>>>>>>>>>> +
> > >>>>>>>>>>>>>>>>> +import
> > >>>>>>>>> org.apache.wicket.request.resource.CssResourceReference;
> > >>>>>>>>>>>>>>>>> +
> > >>>>>>>>>>>>>>>>> +public final class WicketBaseCSSResourceReference
> > >>>>> extends
> > >>>>>>>>>>>>>>>>> CssResourceReference
> > >>>>>>>>>>>>>>>>> +{
> > >>>>>>>>>>>>>>>>> +       private static final long serialVersionUID =
> > >>>>>>>>>>>>>>>> 6795863553105608280L;
> > >>>>>>>>>>>>>>>>> +
> > >>>>>>>>>>>>>>>>> +       private static final
> > >>>>> WicketBaseCSSResourceReference
> > >>>>>>>>>>>>>> INSTANCE =
> > >>>>>>>>>>>>>>>> new
> > >>>>>>>>>>>>>>>>> WicketBaseCSSResourceReference();
> > >>>>>>>>>>>>>>>>> +
> > >>>>>>>>>>>>>>>>> +       public static WicketBaseCSSResourceReference
> > >>>>> get()
> > >>>>>>>>>>>>>>>>> +       {
> > >>>>>>>>>>>>>>>>> +               return INSTANCE;
> > >>>>>>>>>>>>>>>>> +       }
> > >>>>>>>>>>>>>>>>> +
> > >>>>>>>>>>>>>>>>> +       private WicketBaseCSSResourceReference()
> > >>>>>>>>>>>>>>>>> +       {
> > >>>>>>>>>>>>>>>>> +
> > >>>>> super(WicketBaseCSSResourceReference.class,
> > >>>>>>>>>>>>>>>>> "wicket-base.css");
> > >>>>>>>>>>>>>>>>> +       }
> > >>>>>>>>>>>>>>>>> +}
> > >>>>>>>>>>>>>>>>> diff --git
> > >>>>>>>>>>>>>>>>>
> > >>>>> a/wicket-core/src/main/java/org/apache/wicket/css/wicket-base.css
> > >>>>> b/wicket-core/src/main/java/org/apache/wicket/css/wicket-base.css
> > >>>>>>>>>>>>>>>>> new file mode 100644
> > >>>>>>>>>>>>>>>>> index 0000000..9bbdd63
> > >>>>>>>>>>>>>>>>> --- /dev/null
> > >>>>>>>>>>>>>>>>> +++
> > >>>>> b/wicket-core/src/main/java/org/apache/wicket/css/wicket-base.css
> > >>>>>>>>>>>>>>>>> @@ -0,0 +1,3 @@
> > >>>>>>>>>>>>>>>>> +.wicket--hidden {
> > >>>>>>>>>>>>>>>>> +       display: none!important;
> > >>>>>>>>>>>>>>>>> +}
> > >>>>>>>>>>>>>>>>> \ No newline at end of file
> > >>>>>>>>>>>>>>>>> diff --git
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> >
> a/wicket-core/src/main/java/org/apache/wicket/settings/ResourceSettings.java
> > >>>>>
> >
> b/wicket-core/src/main/java/org/apache/wicket/settings/ResourceSettings.java
> > >>>>>>>>>>>>>>>>> index b76fbcd..68317f4 100644
> > >>>>>>>>>>>>>>>>> ---
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> >
> a/wicket-core/src/main/java/org/apache/wicket/settings/ResourceSettings.java
> > >>>>>>>>>>>>>>>>> +++
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> >
> b/wicket-core/src/main/java/org/apache/wicket/settings/ResourceSettings.java
> > >>>>>>>>>>>>>>>>> @@ -29,12 +29,14 @@ import
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> org.apache.wicket.core.util.resource.locator.IResourceStreamLocator;
> > >>>>>>>>>>>>>>>>>     import
> > >>>>> org.apache.wicket.core.util.resource.locator.ResourceStreamLocator;
> > >>>>>>>>>>>>>>>>>     import
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> >
> org.apache.wicket.core.util.resource.locator.caching.CachingResourceStreamLocator;
> > >>>>>>>>>>>>>>>>>     import org.apache.wicket.css.ICssCompressor;
> > >>>>>>>>>>>>>>>>> +import
> > >>>>>>>>> org.apache.wicket.css.WicketBaseCSSResourceReference;
> > >>>>>>>>>>>>>>>>>     import
> > >>>>> org.apache.wicket.javascript.IJavaScriptCompressor;
> > >>>>>>>>>>>>>>>>>     import
> > >>>>>>>>> org.apache.wicket.markup.head.PriorityFirstComparator;
> > >>>>>>>>>>>>>>>>>     import
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> org.apache.wicket.markup.head.ResourceAggregator.RecordedHeaderItem;
> > >>>>>>>>>>>>>>>>>     import
> > >>>>>>>>> org.apache.wicket.markup.html.IPackageResourceGuard;
> > >>>>>>>>>>>>>>>>>     import
> > >>>>>>>>>>> org.apache.wicket.markup.html.SecurePackageResourceGuard;
> > >>>>>>>>>>>>>>>>>     import org.apache.wicket.request.http.WebResponse;
> > >>>>>>>>>>>>>>>>> +import
> > >>>>>>>>> org.apache.wicket.request.resource.CssResourceReference;
> > >>>>>>>>>>>>>>>>>     import
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> >
> org.apache.wicket.request.resource.caching.FilenameWithVersionResourceCachingStrategy;
> > >>>>>>>>>>>>>>>>>     import
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> org.apache.wicket.request.resource.caching.IResourceCachingStrategy;
> > >>>>>>>>>>>>>>>>>     import
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> > org.apache.wicket.request.resource.caching.NoOpResourceCachingStrategy;
> > >>>>>>>>>>>>>>>>> @@ -172,6 +174,8 @@ public class ResourceSettings
> > >>>>>>>>> implements
> > >>>>>>>>>>>>>>>>> IPropertiesFactoryContext
> > >>>>>>>>>>>>>>>>>                    false);
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>            private boolean encodeJSessionId = false;
> > >>>>>>>>>>>>>>>>> +
> > >>>>>>>>>>>>>>>>> +       private CssResourceReference wicketBaseCSS =
> > >>>>>>>>>>>>>>>>> WicketBaseCSSResourceReference.get();
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>            /**
> > >>>>>>>>>>>>>>>>>             * Configures Wicket's default
> > >>>>> ResourceLoaders.<br>
> > >>>>>>>>>>>>>>>>> @@ -770,4 +774,31 @@ public class ResourceSettings
> > >>>>>>>>> implements
> > >>>>>>>>>>>>>>>>> IPropertiesFactoryContext
> > >>>>>>>>>>>>>>>>>                    this.encodeJSessionId =
> > >>>>> encodeJSessionId;
> > >>>>>>>>>>>>>>>>>                    return this;
> > >>>>>>>>>>>>>>>>>            }
> > >>>>>>>>>>>>>>>>> +
> > >>>>>>>>>>>>>>>>> +       /**
> > >>>>>>>>>>>>>>>>> +        * Returns the resource reference of the base
> > >>>>>>>>> stylesheet
> > >>>>>>>>>>>> for
> > >>>>>>>>>>>>>>>>> Wicket. This stylesheet contains
> > >>>>>>>>>>>>>>>>> +        * some lowlevel styling used by Wicket.
> > >>>>>>>>>>>>>>>>> +        *
> > >>>>>>>>>>>>>>>>> +        * @return The resource reference of the base
> > >>>>>>>>> stylesheet
> > >>>>>>>>>>>> for
> > >>>>>>>>>>>>>>>>> Wicket.
> > >>>>>>>>>>>>>>>>> +        */
> > >>>>>>>>>>>>>>>>> +       public CssResourceReference getWicketBaseCSS()
> > >>>>>>>>>>>>>>>>> +       {
> > >>>>>>>>>>>>>>>>> +               return wicketBaseCSS;
> > >>>>>>>>>>>>>>>>> +       }
> > >>>>>>>>>>>>>>>>> +
> > >>>>>>>>>>>>>>>>> +       /**
> > >>>>>>>>>>>>>>>>> +        * Replaces the base stylesheet for Wicket.
> > >>>>>>>>> Changes made
> > >>>>>>>>>>>> to
> > >>>>>>>>>>>>>> the
> > >>>>>>>>>>>>>>>>> styling can break functionality
> > >>>>>>>>>>>>>>>>> +        * like {@link
> > >>>>>>>>>>>>>>> Component#setOutputMarkupPlaceholderTag(boolean)},
> > >>>>>>>>>>>>>>>>> causing components that should
> > >>>>>>>>>>>>>>>>> +        * not be visible to be displayed. Make sure
> the
> > >>>>>>>>>>>> replacement
> > >>>>>>>>>>>>>>>>> stylesheet has matching definitions
> > >>>>>>>>>>>>>>>>> +        * for the corresponding sections in the Wicket
> > >>>>>>>>> version.
> > >>>>>>>>>>>>>>>>> +        *
> > >>>>>>>>>>>>>>>>> +        * @param wicketBaseCSS
> > >>>>>>>>>>>>>>>>> +        *            The replacement styleheet.
> > >>>>>>>>>>>>>>>>> +        * @return {@code this} object for chaining
> > >>>>>>>>>>>>>>>>> +        */
> > >>>>>>>>>>>>>>>>> +       public ResourceSettings
> > >>>>>>>>>>>>>> setWicketBaseCSS(CssResourceReference
> > >>>>>>>>>>>>>>>>> wicketBaseCSS)
> > >>>>>>>>>>>>>>>>> +       {
> > >>>>>>>>>>>>>>>>> +               this.wicketBaseCSS = wicketBaseCSS;
> > >>>>>>>>>>>>>>>>> +               return this;
> > >>>>>>>>>>>>>>>>> +       }
> > >>>>>>>>>>>>>>>>>     }
> > >>>>>>>>>>>>>>>>> diff --git
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> >
> a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxIndicatorAppender.java
> > >>>>>
> >
> b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxIndicatorAppender.java
> > >>>>>>>>>>>>>>>>> index d0fee97..ab1c0a1 100644
> > >>>>>>>>>>>>>>>>> ---
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> >
> a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxIndicatorAppender.java
> > >>>>>>>>>>>>>>>>> +++
> > >>>>>>>>>>>>>>>>>
> > >>>>>
> >
> b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxIndicatorAppender.java
> > >>>>>>>>>>>>>>>>> @@ -95,7 +95,7 @@ public class AjaxIndicatorAppender
> > >>>>>>>>> extends
> > >>>>>>>>>>>>>> Behavior
> > >>>>>>>>>>>>>>>>>                    super.afterRender(component);
> > >>>>>>>>>>>>>>>>>                    final Response r =
> > >>>>> component.getResponse();
> > >>>>>>>>>>>>>>>>> -               r.write("<span style=\"display:none;\"
> > >>>>>>>>>>> class=\"");
> > >>>>>>>>>>>>>>>>> +               r.write("<span class=\"wicket--hidden\"
> > >>>>>>>>>>>> class=\"");
> > >>>>>>>>>>>>>>>>>                    r.write(getSpanClass());
> > >>>>>>>>>>>>>>>>>                    r.write("\" ");
> > >>>>>>>>>>>>>>>>>                    r.write("id=\"");
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>> --
> > >>>>>>>>>>>>>>> WBR
> > >>>>>>>>>>>>>>> Maxim aka solomax
> > >>>>>>>>>>>>>>>
> > >>>>>>>>>>>>> --
> > >>>>>>>>>>>>> WBR
> > >>>>>>>>>>>>> Maxim aka solomax
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>> --
> > >>>>>>>>>>>> WBR
> > >>>>>>>>>>>> Maxim aka solomax
> > >>>>>>>>>>>>
> > >>>>>>>>>> --
> > >>>>>>>>>> WBR
> > >>>>>>>>>> Maxim aka solomax
> > >>>>>>>> --
> > >>>>>>>> WBR
> > >>>>>>>> Maxim aka solomax
> > >>>>>>>>
> > >>>>> --
> > >>>>> WBR
> > >>>>> Maxim aka solomax
> >
>


-- 
WBR
Maxim aka solomax

Reply via email to