updates from master
This commit is contained in:
commit
387ed21f94
9 changed files with 95 additions and 8 deletions
44
Jenkinsfile
vendored
Normal file
44
Jenkinsfile
vendored
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
pipeline {
|
||||||
|
agent none
|
||||||
|
stages {
|
||||||
|
stage('Build') {
|
||||||
|
parallel {
|
||||||
|
stage('electron-osx-x64') {
|
||||||
|
agent {
|
||||||
|
label 'osx'
|
||||||
|
}
|
||||||
|
steps {
|
||||||
|
sh 'script/bootstrap.py --target_arch=x64 --dev'
|
||||||
|
sh 'npm run lint'
|
||||||
|
sh 'script/build.py -c D'
|
||||||
|
sh 'script/test.py --ci --rebuild_native_modules'
|
||||||
|
}
|
||||||
|
post {
|
||||||
|
always {
|
||||||
|
cleanWs()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
stage('electron-mas-x64') {
|
||||||
|
agent {
|
||||||
|
label 'osx'
|
||||||
|
}
|
||||||
|
environment {
|
||||||
|
MAS_BUILD = '1'
|
||||||
|
}
|
||||||
|
steps {
|
||||||
|
sh 'script/bootstrap.py --target_arch=x64 --dev'
|
||||||
|
sh 'npm run lint'
|
||||||
|
sh 'script/build.py -c D'
|
||||||
|
sh 'script/test.py --ci --rebuild_native_modules'
|
||||||
|
}
|
||||||
|
post {
|
||||||
|
always {
|
||||||
|
cleanWs()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -105,7 +105,6 @@ forums
|
||||||
- [`Atom`](http://atom-slack.herokuapp.com/) channel on Slack
|
- [`Atom`](http://atom-slack.herokuapp.com/) channel on Slack
|
||||||
- [`electron-ru`](https://telegram.me/electron_ru) *(Russian)*
|
- [`electron-ru`](https://telegram.me/electron_ru) *(Russian)*
|
||||||
- [`electron-br`](https://electron-br.slack.com) *(Brazilian Portuguese)*
|
- [`electron-br`](https://electron-br.slack.com) *(Brazilian Portuguese)*
|
||||||
- [`electron-kr`](http://www.meetup.com/electron-kr/) *(Korean)*
|
|
||||||
- [`electron-jp`](https://electron-jp.slack.com) *(Japanese)*
|
- [`electron-jp`](https://electron-jp.slack.com) *(Japanese)*
|
||||||
- [`electron-tr`](http://electron-tr.herokuapp.com) *(Turkish)*
|
- [`electron-tr`](http://electron-tr.herokuapp.com) *(Turkish)*
|
||||||
- [`electron-id`](https://electron-id.slack.com) *(Indonesia)*
|
- [`electron-id`](https://electron-id.slack.com) *(Indonesia)*
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
#include "native_mate/constructor.h"
|
#include "native_mate/constructor.h"
|
||||||
#include "native_mate/persistent_dictionary.h"
|
#include "native_mate/persistent_dictionary.h"
|
||||||
|
|
||||||
@interface AtomTouchBar : NSObject<NSScrubberDelegate, NSScrubberDataSource> {
|
@interface AtomTouchBar : NSObject<NSScrubberDelegate, NSScrubberDataSource, NSScrubberFlowLayoutDelegate> {
|
||||||
@protected
|
@protected
|
||||||
std::vector<mate::PersistentDictionary> ordered_settings_;
|
std::vector<mate::PersistentDictionary> ordered_settings_;
|
||||||
std::map<std::string, mate::PersistentDictionary> settings_;
|
std::map<std::string, mate::PersistentDictionary> settings_;
|
||||||
|
|
|
@ -667,4 +667,40 @@ static NSString* const ImageScrubberItemIdentifier = @"scrubber.image.item";
|
||||||
return itemView;
|
return itemView;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (NSSize)scrubber:(NSScrubber *)scrubber layout:(NSScrubberFlowLayout *)layout sizeForItemAtIndex:(NSInteger)itemIndex
|
||||||
|
{
|
||||||
|
NSInteger width = 50;
|
||||||
|
NSInteger height = 30;
|
||||||
|
NSInteger margin = 15;
|
||||||
|
NSSize defaultSize = NSMakeSize(width, height);
|
||||||
|
|
||||||
|
std::string s_id([[scrubber identifier] UTF8String]);
|
||||||
|
if (![self hasItemWithID:s_id]) return defaultSize;
|
||||||
|
|
||||||
|
mate::PersistentDictionary settings = settings_[s_id];
|
||||||
|
std::vector<mate::PersistentDictionary> items;
|
||||||
|
if (!settings.Get("items", &items)) return defaultSize;
|
||||||
|
|
||||||
|
if (itemIndex >= static_cast<NSInteger>(items.size())) return defaultSize;
|
||||||
|
|
||||||
|
mate::PersistentDictionary item = items[itemIndex];
|
||||||
|
std::string title;
|
||||||
|
|
||||||
|
if (item.Get("label", &title)) {
|
||||||
|
NSSize size = NSMakeSize(CGFLOAT_MAX, CGFLOAT_MAX);
|
||||||
|
NSRect textRect = [base::SysUTF8ToNSString(title) boundingRectWithSize:size
|
||||||
|
options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading
|
||||||
|
attributes:@{ NSFontAttributeName: [NSFont systemFontOfSize:0]}];
|
||||||
|
|
||||||
|
width = textRect.size.width + margin;
|
||||||
|
} else {
|
||||||
|
gfx::Image image;
|
||||||
|
if (item.Get("icon", &image)) {
|
||||||
|
width = image.AsNSImage().size.width;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return NSMakeSize(width, height);
|
||||||
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
|
|
||||||
@class NSTouchBar, NSTouchBarItem;
|
@class NSTouchBar, NSTouchBarItem;
|
||||||
@class NSScrubber, NSScrubberItemView, NSScrubberArrangedView, NSScrubberTextItemView, NSScrubberImageItemView, NSScrubberSelectionStyle;
|
@class NSScrubber, NSScrubberItemView, NSScrubberArrangedView, NSScrubberTextItemView, NSScrubberImageItemView, NSScrubberSelectionStyle;
|
||||||
@protocol NSTouchBarDelegate, NSScrubberDelegate, NSScrubberDataSource;
|
@protocol NSTouchBarDelegate, NSScrubberDelegate, NSScrubberDataSource, NSScrubberFlowLayoutDelegate, NSScrubberFlowLayout;
|
||||||
|
|
||||||
typedef float NSTouchBarItemPriority;
|
typedef float NSTouchBarItemPriority;
|
||||||
static const NSTouchBarItemPriority NSTouchBarItemPriorityHigh = 1000;
|
static const NSTouchBarItemPriority NSTouchBarItemPriorityHigh = 1000;
|
||||||
|
@ -149,6 +149,9 @@ static const NSTouchBarItemIdentifier NSTouchBarItemIdentifierOtherItemsProxy =
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
@interface NSScrubberFlowLayout: NSObject
|
||||||
|
@end
|
||||||
|
|
||||||
@interface NSScrubberSelectionStyle : NSObject<NSCoding>
|
@interface NSScrubberSelectionStyle : NSObject<NSCoding>
|
||||||
|
|
||||||
@property(class, strong, readonly) NSScrubberSelectionStyle* outlineOverlayStyle;
|
@property(class, strong, readonly) NSScrubberSelectionStyle* outlineOverlayStyle;
|
||||||
|
@ -229,6 +232,12 @@ static const NSTouchBarItemIdentifier NSTouchBarItemIdentifierOtherItemsProxy =
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
@protocol NSScrubberFlowLayoutDelegate<NSObject>
|
||||||
|
|
||||||
|
- (NSSize)scrubber:(NSScrubber *)scrubber layout:(NSScrubberFlowLayout *)layout sizeForItemAtIndex:(NSInteger)itemIndex;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
#pragma clang assume_nonnull end
|
#pragma clang assume_nonnull end
|
||||||
|
|
||||||
#elif MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_12_1
|
#elif MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_12_1
|
||||||
|
|
|
@ -322,7 +322,7 @@ It creates a new `BrowserWindow` with native properties as set by the `options`.
|
||||||
* `defaultEncoding` String (optional) - Defaults to `ISO-8859-1`.
|
* `defaultEncoding` String (optional) - Defaults to `ISO-8859-1`.
|
||||||
* `backgroundThrottling` Boolean (optional) - Whether to throttle animations and timers
|
* `backgroundThrottling` Boolean (optional) - Whether to throttle animations and timers
|
||||||
when the page becomes background. This also affects the
|
when the page becomes background. This also affects the
|
||||||
[Page Visibility API][#page-visibility]. Defaults to `true`.
|
[Page Visibility API](#page-visibility). Defaults to `true`.
|
||||||
* `offscreen` Boolean (optional) - Whether to enable offscreen rendering for the browser
|
* `offscreen` Boolean (optional) - Whether to enable offscreen rendering for the browser
|
||||||
window. Defaults to `false`. See the
|
window. Defaults to `false`. See the
|
||||||
[offscreen rendering tutorial](../tutorial/offscreen-rendering.md) for
|
[offscreen rendering tutorial](../tutorial/offscreen-rendering.md) for
|
||||||
|
|
|
@ -87,3 +87,4 @@ Specification][notification-spec], including Cinnamon, Enlightenment, Unity,
|
||||||
GNOME, KDE.
|
GNOME, KDE.
|
||||||
|
|
||||||
[notification-spec]: https://developer.gnome.org/notification-spec/
|
[notification-spec]: https://developer.gnome.org/notification-spec/
|
||||||
|
[app-user-model-id]: https://msdn.microsoft.com/en-us/library/windows/desktop/dd378459(v=vs.85).aspx
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
"dugite": "^1.45.0",
|
"dugite": "^1.45.0",
|
||||||
"electabul": "~0.0.4",
|
"electabul": "~0.0.4",
|
||||||
"electron-docs-linter": "^2.3.3",
|
"electron-docs-linter": "^2.3.3",
|
||||||
"electron-typescript-definitions": "^1.2.7",
|
"electron-typescript-definitions": "^1.2.10",
|
||||||
"github": "^9.2.0",
|
"github": "^9.2.0",
|
||||||
"husky": "^0.14.3",
|
"husky": "^0.14.3",
|
||||||
"minimist": "^1.2.0",
|
"minimist": "^1.2.0",
|
||||||
|
|
|
@ -1528,9 +1528,7 @@ describe('BrowserWindow module', () => {
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
// FIXME(alexeykuzmin): Temporary disabled to unblock master.
|
describe('document.visibilityState/hidden', () => {
|
||||||
// https://github.com/electron/electron/issues/10988
|
|
||||||
xdescribe('document.visibilityState/hidden', () => {
|
|
||||||
beforeEach(() => { w.destroy() })
|
beforeEach(() => { w.destroy() })
|
||||||
|
|
||||||
function onVisibilityChange (callback) {
|
function onVisibilityChange (callback) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue