Coder Social home page Coder Social logo

brium-app's People

Contributors

ysbaddaden avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

brium-app's Issues

Grab focus when pushing the application

Follow up to #11 presenting the application isn't always enough. The window is unminimized, put above other applications, and so on, but the window doesn't necessarily grab the focus.

For example, while writing this issue, the Brium window behind Firefox will be put over the Firefox Window, but Firefox will keep the focus. I must Alt+Tab to switch to the Brium app.

People off today

It would be nice to have a view with people off today.

The API doesn't provide this specific query, but allows to list all holidays/time off from some date, from which we could determine who's off today: https://brium.me/api/holidays.json

Autocomplete keywords

It would be nice to have keyword autocompletion when typing a message, with autocorrection of typos (e.g. levenshtein distance), and a warning when a keyword doesn't exist.

Notify that a brium request is running

There should be a mechanism to notify the user that a request is running, for example when sending a log to brium and we're waiting for a reply.

It might be a status widget, a spinner, or a styled temporary message in the chat box (to be replaced with the actual response).

Keep some chat history

The chat history is lost each time we restart the Brium app. It would be nice to keep some history, for example of the last few days.

Race condition while submitting a log entry?

When submitting a log from the chat entry, and quickly continue to type ? followed by Enter again, then that second ? won't be sent. It feels like there is a race-condition between pressing the Enter key, the activate signal being sent and processed and the eventual clear of the chat entry that goes like this:

  • Type a log;
  • Press Enter;
  • (activate signal handler is dispatched);
  • Type ?;
  • (the signal handler clears the entry);
  • Press Enter (does nothing: the entry is empty)

Build on Windows

Gtk3 is available for Windows.

The problem is figuring out how to install Gtk3 dev and gintrospection, then get to a point where the gobject shard is running (you can compile and run samples).

Once Crystal and Gtk3 are setup, you should be able to build an executable for Windows?

Validate access token

We should verify that the access token is valid, for example by accessing /api/me/worker, when we save settings from the popover. The popover shouldn't close until the access token is proved valid, or reopen when the access token is invalid.

Build on macOS

It shouldn't be harder than installing Gtk3 dev and gintrospection packages on macOS, which should install all its dependencies (Gdk, GLib, ...), and to install Crystal. They all seem to be available in homebrew for example.

Once installed, it's a mere make build CRFLAGS=--release to build a ready-to-use executable.

Starting a second instance crashes the first instance

Gtk tries to keep unique applications by default. When starting a new instance it will actually send a message to the currently running instance, and immediately exit the new instance.

This is currently not supported by the app, and is leading to a crash:

At a minimum, the app shouldn't crash. Ideally, it should be un-minimized (if needed), moved to the current screen (if possible) and put above any existing windows on that screen.

Daily entries (summary)

It would be nice to have a view with today's entries. The list is accessible on https://brium.me/api/worker/summary

Ideally we could edit those entries just like we can on the main dashboard page, but that's not implemented by the API. We could just use /refresh.json (as used by the dashboard) but that wouldn't be very proper (and has potential for breaking).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.