On Wed, Jan 15, 2020, 19:29 Sven Meier <s...@meiers.net> wrote:

> I disagree, "hidden" has the perfect semantic for what we're doing with
> placeholders or other <div>s.
>

How about such CSS rule:

[data-wicket-placeholder][hidden]
{
  display : none !important;
}

?


> Sven
>
>
> On 15.01.20 11:44, Emond Papegaaij wrote:
> >>> According to my tests
> >>> textarea with hidden attribute works the same way as `display: none`
> >>> (latest Chrome, FF, Chromium)
> >>>
> > Maxim and Andrew: Yes, the display: none is very important. (That's
> > why it even has !important). The hidden attribute has the lowest
> > priority possible. Any matching CSS rule will override it's behavior.
> > For example, if you have this html:
> > <html>
> > <style>li { display: list-item; }</style>
> > <ul><li hidden>This will be visible</li></ul>
> > </html>
> > The li is visible, even though it has the hidden attribute. This is
> > not what we want. Keep in mind that this is about components with
> > isVisible() == false. The only reason we render something is because a
> > placeholder is needed for Ajax updates.
> >
> >> Additionally, I think we should not use just
> >> [hidden] {
> >> ...
> >> }
> >>
> >> in wicker-core.css because this will affect *all* elements in the page.
> And
> >> the applications may not want Wicket styling for their own hidden
> elements.
> >> The CSS rule should be namespaced with "wicket-something", like
> >> wicket-xyz[hidden] {...}
> > I totally agree with Martin here. hidden already has semantics, we
> > shouldn't tamper with that. Adding 'display: none!important' to hidden
> > breaks the behavior described above.
> >
> >>> 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)
> > The data-wicket-placeholder is indeed needed. All placeholders are
> > hidden, but not all hidden elements are placeholders. As stated above,
> > I'd vote against using the hidden attribute. We need something with a
> > wicket namespace here. We can have the CSS match
> > [data-wicket-placeholder], but I'm not a big fan of matching data
> > attributes in CSS.
> >
> > Best regards,
> > Emond
> >
> >>> 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