2014-04-30 15:55 GMT+02:00 Jeremie BOUSQUET <[email protected]>:

>
>
>
> 2014-04-30 15:24 GMT+02:00 Jeremie BOUSQUET <[email protected]>:
>
> Hi,
>>
>> This is a very complex subject, I read the proposal but it's difficult to
>> choose ... Some thoughts below, more than answers. I'm in now way a css
>> expert anyway :)
>>
>> There could be some additional info on extensions repository, telling you
>> what is the "favorite skin" of an existing application. Something like
>> "Best viewed with Flamingo-style skin". For this example, you would put
>> most efforts on the look of the app under flamingo skin, and just minimal
>> maintenance on how it looks with colibri (ie, check that functionalities
>> are fulfilled, even if display is not optimal). Whatever the solution
>> (branch not branch var1 2 3 4 ...), it's always a logical branch in terms
>> of maintenance/validation, so it's always a cost for the application owner.
>>
>> Sometimes the line between pure presentation and "feature" is blurred.
>> For example creating items from a pop-up (modal), to me it's not something
>> that should depend on the skin. It only depends on your app. And it's
>> already possible without bootstrap or flamingo, "bundled in XE" (like,
>> users creation form).
>> The way you display form fields is pure presentation
>> (grid/columns/vertical/horizontal), but it's difficult to anticipate some
>> semantic meaning of your fields when you use vertical layout / colibri,
>> that would affect how you display them in a grid with bootstrap.
>> Going back to your examples in [1], (i) and (ii) screenshots, from the
>> bootstrap version I could define that there is a "title" zone (left
>> column), an "assignment" zone (left column, over 2 sub-columns), a "status"
>> zone (right column), and a "description" zone (below). I would use those
>> names as css classes, then assign them a style according to the skin
>> (bootstrap grids and whatever I want or nothing in colibri). But this I can
>> only define once I migrated to a grid display, from the original view with
>> colibri (vertical layout), I think I'd never have though about such
>> structure. But putting in place this structure with proper css classes is a
>> good thing for my app, whatever the skin. The fact that it won't improve
>> the display in colibri is not an issue, at least it will not destroy
>> anything. Putting directly the bootstrap "col-*" css classes in my html,
>> has no semantics, mixes presentation with source, and has no benefit apart
>> realizing a strong dependency to bootstrap which is not good for the future.
>>
>> Another question maybe, will colibri be considered an old skin, or an
>> alternative skin ? Usually xwiki team supports only one skin at a time
>> (after some kind of deprecation period), but the problem is that skins like
>> colibri have a longer life-cycle and are more customized by users than
>> older skins used to be (at least, I think).
>> Currently in extension repository there are not so much "full" skins
>> (custom or standard), there are quite a few colorthemes for colibri though,
>> maybe because it's quite easy to create and package a color theme, but it's
>> not so easy to create and package a complete xwiki skin. If creating and
>> packaging skins gets easier (which is an objective I suppose, and is
>> already easier than before), logically there should be more and more custom
>> skins available. It would become even more difficult to solve the problem
>> of presentation of an application depending on the skin.
>>
>> It would be interesting to know what real use of colibri skin is made by
>> existing applications.
>> To explain : in my app (mail archive), I used when I could css classes
>> described by the vertical layout standard ("xform", etc). And I started to
>> implement using velocity variables for colors coming from the ColorTheme,
>> to adapt to the one selected. Apart from that, for the most "customized"
>> views (like the topics view with answers), I generated completely custom
>> HTML and specific css classes - I do not rely at all on colibri for this,
>> except for the colors, because there's nothing fitting my needs in colibri
>> (or in extensions I know). For these pages I completely assume skin
>> compatibility, but at the same time I have nothing to do, except maybe add
>> some mappings with bootstrap classes to improve display, if needed.
>>
>> All this reminds me of a discussion started by Denis on the same topic
>> [2]. I tend to share the same view as Denis about this, that having more
>> standard ways of producing html in xwiki could help solving nicely most
>> issues with skins compatibilities.
>> For example $doc.display is nice, but does only a very small part of the
>> job it could do IMHO. So I started to write some velocity macros to
>> generate form fields from both an XClass field definition, and the
>> translation page prefix. Don't know if it's a good way to go, but based on
>> some naming rules for fields translations (like, prefix.fieldname.hint,
>> prefix.fieldname.label, etc...), if a translation exist or not, I display a
>> field with or without xHint, label, etc. I also have a macro that you can
>> pass an array of field names and that displays the corresponding form with
>> vertical layout. Many things are missing, and the number of arguments of
>> those macros is a bit big (but most of them are optional), but it allowed
>> me to removed many boilerplate html (or boilerplate (% %) sequences,
>> alternatively) from most of my pages with forms. And I like the fact that
>> if a translation for a hint is not available in a language, then it's just
>> not displayed, and I don't have to code this condition everywhere.
>>
>
> For example, #showFieldsFromPropClassName, with some divs to group some
> fields that can be displayed/hidden:
>
> https://github.com/xwiki-contrib/xwiki-application-mailarchive/blob/master/xwiki-contrib-mailarchive-admin-ui/src/main/resources/MailArchiveCode/AdminSheet.xml#L178-L191
>

... and related translations for the whole admin page, including some error
cases:
https://github.com/xwiki-contrib/xwiki-application-mailarchive/blob/master/xwiki-contrib-mailarchive-admin-ui/src/main/resources/MailArchiveCode/Translations.xml#L38-L79


>
>
>> Regarding my second remark about semantics, what would be missing is some
>> macro to create a group of fields (ie a fieldset) with a specific css class
>> (as that one can't be generic and depends on your app always and on the
>> meaning of the fields). The semantics of fields do not always relate with
>> where you display them and how they are grouped, but usually, as a good
>> practice, it should.
>> Maybe such macros already exist (maybe in AWM), but they're not published
>> as a public api (or I'm not aware of it).
>>
>> To sum up moving to a new skin should not unlock new functionalities in
>> your app, or else I think you're relying too much on this new skin. It
>> should just unlock new ways of presenting your app UI. I'm more in favor of
>> var3 (relying on a standard), as the parts mostly concerned are forms, and
>> such a standard already exists for forms. If there's a way to have it
>> cleanly adapt for colibri and flaming, and maybe introduce only new rules
>> that may be implemented only with flamingo, I think it could work / be
>> enough. If the standard is materialized by some sort of xwiki api, and
>> applications rely on the standard, and the skins rely on the api, then you
>> lower the maintenance activities.
>>
>> BR,
>> Jeremie
>>
>> [1]
>> http://design.xwiki.org/xwiki/bin/view/Proposal/ApplicationPresentation
>> [2] http://markmail.org/message/shd55qxt7w56ypy3
>>
>>
>>
>>
>>
>> 2014-04-16 14:08 GMT+02:00 Ecaterina Moraru (Valica) <[email protected]>:
>>
>> Hi,
>>>
>>> With the new Flamingo skin and with the design investigations done on
>>> existing Applications, there are more and more questions related to:
>>> * how will the applications be displayed on the new skin, while
>>> conserving
>>> the same look on the old skin;
>>> * how much an application should preserve previous functionality and how
>>> many efforts are we putting in adapting the functionality for new
>>> layouts;
>>> * when do we create a new application vs. when do we retire one;
>>> * etc.
>>>
>>> This question applies in general to applications and you can also read
>>> some
>>> discussions about applications like Panels [1] or ColorThemes [2].
>>>
>>> In this thread I want to discuss some variants related to application's
>>> presentation:
>>>
>>> http://design.xwiki.org/xwiki/bin/view/Proposal/ApplicationPresentation#HVariants
>>>
>>> I am interested in our position regarding this topic and if we have like
>>> a
>>> 'standard' solution or if the answer depends on the application in cause.
>>>
>>> Thanks,
>>> Caty
>>>
>>> [1] http://design.xwiki.org/xwiki/bin/view/Proposal/PanelsImprovements
>>> [2]
>>> http://design.xwiki.org/xwiki/bin/view/Proposal/ColorThemeforFlamingo
>>> _______________________________________________
>>> devs mailing list
>>> [email protected]
>>> http://lists.xwiki.org/mailman/listinfo/devs
>>>
>>
>>
>
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to