Skip to content

Commit 4253bbb

Browse files
committed
Assets for Semantic UI 2.2.13
1 parent a489209 commit 4253bbb

15 files changed

Lines changed: 98 additions & 27 deletions

File tree

assets/javascripts/semantic_ui/definitions/modules/dropdown.js

Lines changed: 49 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,13 @@ $.fn.dropdown = function(parameters) {
9797
module.setup.reference();
9898
}
9999
else {
100+
100101
module.setup.layout();
102+
103+
if(settings.values) {
104+
module.change.values(settings.values);
105+
}
106+
101107
module.refreshData();
102108

103109
module.save.defaults();
@@ -162,7 +168,7 @@ $.fn.dropdown = function(parameters) {
162168
observe: {
163169
select: function() {
164170
if(module.has.input()) {
165-
selectObserver.observe($input[0], {
171+
selectObserver.observe($module[0], {
166172
childList : true,
167173
subtree : true
168174
});
@@ -383,19 +389,16 @@ $.fn.dropdown = function(parameters) {
383389
reference: function() {
384390
module.debug('Dropdown behavior was called on select, replacing with closest dropdown');
385391
// replace module reference
386-
$module = $module.parent(selector.dropdown);
392+
$module = $module.parent(selector.dropdown);
393+
instance = $module.data(moduleNamespace);
394+
element = $module.get(0);
387395
module.refresh();
388396
module.setup.returnedObject();
389-
// invoke method in context of current instance
390-
if(methodInvoked) {
391-
instance = module;
392-
module.invoke(query);
393-
}
394397
},
395398
returnedObject: function() {
396399
var
397400
$firstModules = $allModules.slice(0, elementIndex),
398-
$lastModules = $allModules.slice(elementIndex + 1)
401+
$lastModules = $allModules.slice(elementIndex + 1)
399402
;
400403
// adjust all modules to use correct reference
401404
$allModules = $firstModules.add($module).add($lastModules);
@@ -913,6 +916,23 @@ $.fn.dropdown = function(parameters) {
913916
}
914917
},
915918

919+
change: {
920+
values: function(values) {
921+
if(!settings.allowAdditions) {
922+
module.clear();
923+
}
924+
module.debug('Creating dropdown with specified values', values);
925+
module.setup.menu({values: values});
926+
$.each(values, function(index, item) {
927+
if(item.selected == true) {
928+
module.debug('Setting initial selection to', item.value);
929+
module.set.selected(item.value);
930+
return true;
931+
}
932+
});
933+
}
934+
},
935+
916936
event: {
917937
change: function() {
918938
if(!internalChange) {
@@ -1081,7 +1101,22 @@ $.fn.dropdown = function(parameters) {
10811101
select: {
10821102
mutation: function(mutations) {
10831103
module.debug('<select> modified, recreating menu');
1084-
module.setup.select();
1104+
var
1105+
isSelectMutation = false
1106+
;
1107+
$.each(mutations, function(index, mutation) {
1108+
if($(mutation.target).is('select') || $(mutation.addedNodes).is('select')) {
1109+
isSelectMutation = true;
1110+
return true;
1111+
}
1112+
});
1113+
if(isSelectMutation) {
1114+
module.disconnect.selectObserver();
1115+
module.refresh();
1116+
module.setup.select();
1117+
module.set.selected();
1118+
module.observe.select();
1119+
}
10851120
}
10861121
},
10871122
menu: {
@@ -1619,6 +1654,9 @@ $.fn.dropdown = function(parameters) {
16191654
return $module.data(metadata.defaultValue);
16201655
},
16211656
placeholderText: function() {
1657+
if(settings.placeholder != 'auto' && typeof settings.placeholder == 'string') {
1658+
return settings.placeholder;
1659+
}
16221660
return $module.data(metadata.placeholderText) || '';
16231661
},
16241662
text: function() {
@@ -3044,7 +3082,7 @@ $.fn.dropdown = function(parameters) {
30443082
return $(event.target).closest($icon).length > 0;
30453083
},
30463084
alreadySetup: function() {
3047-
return ($module.is('select') && $module.parent(selector.dropdown).length > 0 && $module.prev().length === 0);
3085+
return ($module.is('select') && $module.parent(selector.dropdown).data(moduleNamespace) !== undefined && $module.prev().length === 0);
30483086
},
30493087
animating: function($subMenu) {
30503088
return ($subMenu)
@@ -3594,6 +3632,7 @@ $.fn.dropdown.settings = {
35943632
on : 'click', // what event should show menu action on item selection
35953633
action : 'activate', // action on item selection (nothing, activate, select, combo, hide, function(){})
35963634

3635+
values : false, // specify values to use for dropdown
35973636

35983637
apiSettings : false,
35993638
selectOnKeydown : true, // Whether selection should occur automatically when keyboard shortcuts used

assets/javascripts/semantic_ui/definitions/modules/modal.js

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -329,6 +329,9 @@ $.fn.modal = function(parameters) {
329329
module.hideOthers(module.showModal);
330330
}
331331
else {
332+
if(settings.allowMultiple && settings.detachable) {
333+
$module.detach().appendTo($dimmer);
334+
}
332335
settings.onShow.call(element);
333336
if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) {
334337
module.debug('Showing modal with css animations');
@@ -532,24 +535,41 @@ $.fn.modal = function(parameters) {
532535
},
533536

534537
cacheSizes: function() {
538+
$module.addClass(className.loading);
535539
var
536-
modalHeight = $module.outerHeight()
540+
scrollHeight = $module.prop('scrollHeight'),
541+
modalHeight = $module.outerHeight()
537542
;
538543
if(module.cache === undefined || modalHeight !== 0) {
539544
module.cache = {
540545
pageHeight : $(document).outerHeight(),
541546
height : modalHeight + settings.offset,
547+
scrollHeight : scrollHeight + settings.offset,
542548
contextHeight : (settings.context == 'body')
543549
? $(window).height()
544-
: $dimmable.height()
550+
: $dimmable.height(),
545551
};
552+
module.cache.topOffset = -(module.cache.height / 2);
546553
}
554+
$module.removeClass(className.loading);
547555
module.debug('Caching modal and container sizes', module.cache);
548556
},
549557

550558
can: {
551559
fit: function() {
552-
return ( ( module.cache.height + (settings.padding * 2) ) < module.cache.contextHeight);
560+
var
561+
contextHeight = module.cache.contextHeight,
562+
verticalCenter = module.cache.contextHeight / 2,
563+
topOffset = module.cache.topOffset,
564+
scrollHeight = module.cache.scrollHeight,
565+
height = module.cache.height,
566+
paddingHeight = settings.padding,
567+
startPosition = (verticalCenter + topOffset)
568+
;
569+
return (scrollHeight > height)
570+
? (startPosition + scrollHeight + paddingHeight < contextHeight)
571+
: (height + (paddingHeight * 2) < contextHeight)
572+
;
553573
}
554574
},
555575

@@ -664,7 +684,7 @@ $.fn.modal = function(parameters) {
664684
$module
665685
.css({
666686
top: '',
667-
marginTop: -(module.cache.height / 2)
687+
marginTop: module.cache.topOffset
668688
})
669689
;
670690
}
@@ -937,6 +957,7 @@ $.fn.modal.settings = {
937957
animating : 'animating',
938958
blurring : 'blurring',
939959
inverted : 'inverted',
960+
loading : 'loading',
940961
scrolling : 'scrolling',
941962
undetached : 'undetached'
942963
}

assets/javascripts/semantic_ui/definitions/modules/popup.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ $.fn.popup = function(parameters) {
125125
}
126126
if(settings.popup) {
127127
$popup.addClass(className.loading);
128-
$offsetParent = module.get.offsetParent($target);
128+
$offsetParent = module.get.offsetParent();
129129
$popup.removeClass(className.loading);
130130
if(settings.movePopup && module.has.popup() && module.get.offsetParent($popup)[0] !== $offsetParent[0]) {
131131
module.debug('Moving popup to the same offset parent as target');
@@ -139,7 +139,7 @@ $.fn.popup = function(parameters) {
139139
$offsetParent = (settings.inline)
140140
? module.get.offsetParent($target)
141141
: module.has.popup()
142-
? module.get.offsetParent($target)
142+
? module.get.offsetParent($popup)
143143
: $body
144144
;
145145
}

assets/stylesheets/semantic_ui/definitions/collections/menu.less

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,6 @@
221221

222222
/* Menu */
223223
.ui.menu .dropdown.item .menu {
224-
left: 0px;
225224
min-width: ~"calc(100% - 1px)";
226225
border-radius: 0em 0em @dropdownMenuBorderRadius @dropdownMenuBorderRadius;
227226
background: @dropdownBackground;

assets/stylesheets/semantic_ui/definitions/modules/dropdown.less

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -843,8 +843,8 @@ select.ui.dropdown {
843843
.ui.default.dropdown:not(.button) > .text {
844844
color: @defaultTextColor;
845845
}
846-
.ui.dropdown:not(.button) > input:focus + .default.text,
847-
.ui.default.dropdown:not(.button) > input:focus + .text {
846+
.ui.dropdown:not(.button) > input:focus ~ .default.text,
847+
.ui.default.dropdown:not(.button) > input:focus ~ .text {
848848
color: @defaultTextFocusColor;
849849
}
850850
/*--------------------

assets/stylesheets/semantic_ui/definitions/modules/modal.less

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -333,6 +333,12 @@
333333
States
334334
*******************************/
335335

336+
.ui.loading.modal {
337+
display: block;
338+
visibility: hidden;
339+
z-index: @loadingZIndex;
340+
}
341+
336342
.ui.active.modal {
337343
display: block;
338344
}

assets/stylesheets/semantic_ui/themes/bookish/elements/header.overrides

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
Overrides
33
*******************************/
44

5-
@import url(http://fonts.googleapis.com/css?family=Karma);
5+
@import url(https://fonts.googleapis.com/css?family=Karma);
66

77
h1.ui.header,
88
.ui.huge.header {

assets/stylesheets/semantic_ui/themes/chubby/elements/button.overrides

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
Overrides
33
*******************************/
44

5-
@import url(http://fonts.googleapis.com/css?family=Source+Sans+Pro);
5+
@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro);
66

77
.ui.labeled.icon.buttons > .button > .icon,
88
.ui.labeled.icon.button > .icon {

assets/stylesheets/semantic_ui/themes/chubby/elements/header.overrides

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
Overrides
33
*******************************/
44

5-
@import url(http://fonts.googleapis.com/css?family=Source+Sans+Pro);
5+
@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro);

assets/stylesheets/semantic_ui/themes/default/elements/header.variables

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
/* Icon */
4141
@iconOpacity: 1;
4242
@iconSize: 1.5em;
43-
@iconOffset: @lineHeightOffset;
43+
@iconOffset: 0em;
4444
@iconMargin: 0.75rem;
4545
@iconAlignment: middle;
4646

0 commit comments

Comments
 (0)