Skip to content

Allow registered applications to hide Kibana chrome - #49795

Merged
eliperelman merged 8 commits into
elastic:masterfrom
eliperelman:feature/49100
Nov 13, 2019
Merged

eliperelman merged 8 commits into
elastic:masterfrom
eliperelman:feature/49100

Conversation

@eliperelman

@eliperelman eliperelman commented Oct 30, 2019 •

Copy link
Copy Markdown
Contributor

Summary

When registering an application, you can now use the chromeless option to hide the Kibana chrome UI when the application is mounted.

Fixes #49100.

Checklist

Use strikethroughs to remove checklist items you don't feel are applicable to this PR.

For maintainers

Dev Docs

When registering an application, you can now use the chromeless option to hide the Kibana chrome UI when the application is mounted.

application.register({
  id: 'my-app',
  chromeless: true,
  async mount(context, params) {
    /* ... */
  },
});

@eliperelman eliperelman added Team:Core Platform Core services: plugins, logging, config, saved objects, http, ES client, i18n, etc t// Feature:New Platform release_note:plugin_api_changes Contains a Plugin API changes section for the breaking plugin API changes section. v8.0.0 v7.6.0 labels Oct 30, 2019
@eliperelman
eliperelman requested a review from a team October 30, 2019 20:28
@eliperelman eliperelman self-assigned this Oct 30, 2019
@elasticmachine

Copy link
Copy Markdown
Contributor

Pinging @elastic/kibana-platform (Team:Platform)

@elasticmachine

Copy link
Copy Markdown
Contributor

💔 Build Failed

@joshdover

Copy link
Copy Markdown
Contributor

ack: reviewing now

Comment thread src/core/public/chrome/chrome_service.tsx Outdated
Comment thread src/core/public/chrome/chrome_service.tsx Outdated
Comment thread src/core/public/chrome/chrome_service.test.ts Outdated
@elasticmachine

Copy link
Copy Markdown
Contributor

💚 Build Succeeded

@pgayvallet

pgayvallet commented Nov 1, 2019 •

Copy link
Copy Markdown
Contributor

Do we know already how this is going to interact with the next point of #41981 (No icon in the left navbar)? Is an application with chromeHidden going to always be considered a standalone app (aka respect point 2 and 3 of #41981), or are we going to add specific API to register these new standalone apps ?

@eliperelman

Copy link
Copy Markdown
Contributor Author

@pgayvallet the answer to that is unknown still, but I hope to have an answer for you in the next 2 PRs. 😃

@elasticmachine

Copy link
Copy Markdown
Contributor

💚 Build Succeeded

@eliperelman

Copy link
Copy Markdown
Contributor Author

In a face-to-face meeting with @joshdover and @pgayvallet, we decided that a single chromeless flag with hide both the UI chrome and disable showing an app icon in the left navbar.

@elasticmachine

Copy link
Copy Markdown
Contributor

💚 Build Succeeded

@elasticmachine

Copy link
Copy Markdown
Contributor

💚 Build Succeeded

Comment thread src/core/public/chrome/chrome_service.tsx Outdated

@joshdover joshdover left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great!

Since this behavior is a bit interwoven with a couple mechanisms, I think we should have a pair of functional tests in our plugin_functional suite. There's prior art there you should be able to steal from.

Comment thread src/core/public/chrome/chrome_service.tsx Outdated
Comment thread src/core/public/chrome/chrome_service.tsx Outdated
Comment thread src/core/public/chrome/chrome_service.test.ts Outdated
Comment thread src/core/public/chrome/chrome_service.tsx Outdated
@eliperelman
eliperelman requested a review from a team November 12, 2019 19:44
@elasticmachine

Copy link
Copy Markdown
Contributor

💔 Build Failed

Comment thread test/plugin_functional/test_suites/core_plugins/applications.ts Outdated
Comment thread src/core/public/chrome/chrome_service.tsx Outdated
Comment thread src/core/public/chrome/chrome_service.tsx Outdated
@elasticmachine

Copy link
Copy Markdown
Contributor

💚 Build Succeeded

@elasticmachine

Copy link
Copy Markdown
Contributor

💔 Build Failed

@elasticmachine

Copy link
Copy Markdown
Contributor

💔 Build Failed

@elasticmachine

Copy link
Copy Markdown
Contributor

💚 Build Succeeded

@eliperelman
eliperelman merged commit 6955593 into elastic:master Nov 13, 2019
eliperelman added a commit to eliperelman/kibana that referenced this pull request Nov 13, 2019
* Allow registered applications to hide Kibana chrome

* Fix bug in flipped value of application chromeHidden

* Add additional test for app chrome hidden versus chrome visibility

* Rename chromeHidden to chromeless

* Default chrome service app hidden observable to same value as force hidden

* Consolidate force hiding in chrome, add functional tests

* Move chromeless flag to App interface to prevent legacy applications from specifying

* Address review nits to improve separation
eliperelman added a commit that referenced this pull request Nov 13, 2019
* Allow registered applications to hide Kibana chrome

* Fix bug in flipped value of application chromeHidden

* Add additional test for app chrome hidden versus chrome visibility

* Rename chromeHidden to chromeless

* Default chrome service app hidden observable to same value as force hidden

* Consolidate force hiding in chrome, add functional tests

* Move chromeless flag to App interface to prevent legacy applications from specifying

* Address review nits to improve separation
jloleysens added a commit to jloleysens/kibana that referenced this pull request Nov 14, 2019
* 'master' of github.com:elastic/kibana: (27 commits)
  [Rollup] Fix for clone job workflow (elastic#50501)
  Empty message "No data available" for Labels and User metadata sections missing (elastic#49846)
  [APM] Duration by Country map doesn't take `transactionName` into account (elastic#50315)
  Remove react references from core `Notifications` apis (elastic#49573)
  Updated APM Indices endpoints to use the SavedObjectsClient from the legacy request context, and set the apm-indices schema object to be namspace-agnostic
  [Metrics UI] Calculate interval based on the dataset's period (elastic#50194)
  chore(NA): add new platform discovered plugins as entry points to check for dependencies on clean dll tasks (elastic#50610)
  [Telemetry] change of optin status telemetry (elastic#50158)
  [SIEM][Detection Engine] REST API Additions (elastic#50514)
  [DOCS] Removes dashboard-only mode doc (elastic#50441)
  [Filters] Fix operator overflowing out popover (elastic#50030)
  Change telemetry optIn to default to true (elastic#50490)
  [Maps] make grid rectangles the default symbolization for geo grid source (elastic#50169)
  Allow registered applications to hide Kibana chrome (elastic#49795)
  Upgrade EUI to v14.9.0 (elastic#49678)
  [Metrics UI] Convert layouts to use React components (elastic#49134)
  [Search service] Add support for ES request preference (elastic#49424)
  [Newsfeed/Lint] fix chained fn lint (elastic#50515)
  [Monitoring] Fix logstash pipelines page in multi-cluster environment (elastic#50166)
  [SIEM] Events viewer fixes (elastic#50175)
  ...
@elasticmachine

Copy link
Copy Markdown
Contributor

💚 Build Succeeded

patrykkopycinski pushed a commit to patrykkopycinski/kibana that referenced this pull request May 6, 2026
* Allow registered applications to hide Kibana chrome

* Fix bug in flipped value of application chromeHidden

* Add additional test for app chrome hidden versus chrome visibility

* Rename chromeHidden to chromeless

* Default chrome service app hidden observable to same value as force hidden

* Consolidate force hiding in chrome, add functional tests

* Move chromeless flag to App interface to prevent legacy applications from specifying

* Address review nits to improve separation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Feature:New Platform release_note:plugin_api_changes Contains a Plugin API changes section for the breaking plugin API changes section. Team:Core Platform Core services: plugins, logging, config, saved objects, http, ES client, i18n, etc t// v7.6.0 v8.0.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Allow registered applications to hide Kibana chrome

5 participants